FindSQLite3 для CMake < 3.14
This commit is contained in:
parent
a00b620cb2
commit
587cf90790
45
FindSQLite3.cmake
Normal file
45
FindSQLite3.cmake
Normal file
@ -0,0 +1,45 @@
|
|||||||
|
if(${CMAKE_VERSION} VERSION_GREATER "3.13.99")
|
||||||
|
return()
|
||||||
|
endif()
|
||||||
|
|
||||||
|
# Compatibility mode
|
||||||
|
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 UNKNOWN IMPORTED)
|
||||||
|
set_target_properties(SQLite::SQLite3 PROPERTIES
|
||||||
|
INTERFACE_INCLUDE_DIRECTORIES "${SQLite3_INCLUDE_DIR}"
|
||||||
|
INTERFACE_LINK_LIBRARIES "${SQLite3_LIBRARIES}"
|
||||||
|
IMPORTED_LOCATION "${SQLite3_LIBRARY}"
|
||||||
|
)
|
||||||
|
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()
|
||||||
|
|
Loading…
Reference in New Issue
Block a user