set(SQLite3_PREFIX "" CACHE PATH "The path to the prefix of SQLite3 installation") find_path(SQLite3_INCLUDE_DIR NAMES sqlite3.h PATHS ${SQLite3_PREFIX}/include /opt/local/include /usr/include /usr/local/include ) find_library(SQLite3_LIBRARIES NAMES sqlite3 PATHS ${SQLite3_PREFIX}/lib /opt/local/lib /usr/lib /usr/local/lib ) if(SQLite3_INCLUDE_DIR AND SQLite3_LIBRARIES AND NOT TARGET SQLite::SQlite3) get_filename_component(SQLite3_LIBRARY_DIR ${SQLite3_LIBRARIES} PATH) set(SQLite3_FOUND TRUE) set(SQLite3_INCLUDE_DIRS ${SQLite3_INCLUDE_DIR}) add_library(SQLite::SQLite3 INTERFACE IMPORTED) set_target_properties(SQLite::SQLite3 PROPERTIES INTERFACE_INCLUDE_DIRECTORIES "${SQLite3_INCLUDE_DIR}" INTERFACE_LINK_LIBRARIES "${SQLite3_LIBRARIES}" ) endif() # Extract version information from the header file if(SQLite3_FOUND) file(STRINGS ${SQLite3_INCLUDE_DIR}/sqlite3.h _ver_line REGEX "^#define SQLITE_VERSION *\"[0-9]+\\.[0-9]+\\.[0-9]+\"" LIMIT_COUNT 1) string(REGEX MATCH "[0-9]+\\.[0-9]+\\.[0-9]+" SQLite3_VERSION "${_ver_line}") unset(_ver_line) endif()