mirror of
https://github.com/polserver/polserver
synced 2026-08-13 08:23:08 -04:00
66 lines
2.3 KiB
CMake
66 lines
2.3 KiB
CMake
message("* libsqlitecpp")
|
|
|
|
set (SQLITECPP_REPOSITORY "https://github.com/SRombauts/SQLiteCpp.git")
|
|
set (SQLITECPP_VERSION_REF "3.3.1")
|
|
|
|
set (SQLITECPP_SOURCE_DIR "${POL_EXT_LIB_DIR}/SQLiteCpp-${SQLITECPP_VERSION_REF}")
|
|
set (SQLITECPP_INSTALL_DIR "${SQLITECPP_SOURCE_DIR}/build")
|
|
|
|
if (${windows})
|
|
set (SQLITECPP_LIB_1 "${SQLITECPP_INSTALL_DIR}/lib/SQLiteCpp.lib" )
|
|
set (SQLITECPP_LIB_2 "${SQLITECPP_INSTALL_DIR}/lib/sqlite3.lib" )
|
|
else()
|
|
set (SQLITECPP_LIB_1 "${SQLITECPP_INSTALL_DIR}/lib/libSQLiteCpp.a" )
|
|
set (SQLITECPP_LIB_2 "${SQLITECPP_INSTALL_DIR}/lib/libsqlite3.a" )
|
|
endif()
|
|
|
|
if (${windows})
|
|
set(SQLITECPP_FLAGS -DCMAKE_CXX_FLAGS_RELEASE="/MT" -DCMAKE_C_FLAGS_RELEASE="/MT")
|
|
endif()
|
|
|
|
set(SQLITECPP_ARGS ${SQLITECPP_FLAGS}
|
|
-DCMAKE_INSTALL_PREFIX=${SQLITECPP_INSTALL_DIR}
|
|
-DCMAKE_BUILD_TYPE=Release
|
|
-DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER}
|
|
-DCMAKE_C_COMPILER=${CMAKE_C_COMPILER}
|
|
-DCMAKE_OSX_ARCHITECTURES=${PIPED_OSX_ARCHITECTURES}
|
|
-DSQLITECPP_INTERNAL_SQLITE=ON
|
|
)
|
|
|
|
if(NOT EXISTS ${SQLITECPP_LIB_1} OR NOT EXISTS ${SQLITECPP_LIB_2})
|
|
ExternalProject_Add(libsqlitecpp_ext
|
|
GIT_REPOSITORY ${SQLITECPP_REPOSITORY}
|
|
GIT_TAG ${SQLITECPP_VERSION_REF}
|
|
GIT_SHALLOW TRUE
|
|
GIT_CONFIG core.autocrlf=false
|
|
PREFIX SQLiteCpp
|
|
LIST_SEPARATOR |
|
|
CMAKE_ARGS ${SQLITECPP_ARGS}
|
|
SOURCE_DIR "${SQLITECPP_SOURCE_DIR}"
|
|
BUILD_IN_SOURCE 1
|
|
INSTALL_COMMAND ${CMAKE_COMMAND} --build . --config Release --target install
|
|
BUILD_BYPRODUCTS ${SQLITECPP_LIB_1} ${SQLITECPP_LIB_2}
|
|
EXCLUDE_FROM_ALL 1
|
|
)
|
|
else()
|
|
message(" - already built")
|
|
endif()
|
|
|
|
add_library(libsqlitecpp1 STATIC IMPORTED)
|
|
set_target_properties(libsqlitecpp1 PROPERTIES
|
|
IMPORTED_LOCATION ${SQLITECPP_LIB_1}
|
|
IMPORTED_IMPLIB ${SQLITECPP_LIB_1}
|
|
INTERFACE_INCLUDE_DIRECTORIES ${SQLITECPP_INSTALL_DIR}/include
|
|
FOLDER 3rdParty
|
|
)
|
|
add_library(libsqlitecpp2 STATIC IMPORTED)
|
|
set_target_properties(libsqlitecpp2 PROPERTIES
|
|
IMPORTED_LOCATION ${SQLITECPP_LIB_2}
|
|
IMPORTED_IMPLIB ${SQLITECPP_LIB_2}
|
|
FOLDER 3rdParty
|
|
)
|
|
if(NOT EXISTS ${SQLITECPP_LIB_1})
|
|
file(MAKE_DIRECTORY ${SQLITECPP_INSTALL_DIR}/include) #directory has to exist during configure
|
|
add_dependencies(libsqlitecpp1 libsqlitecpp_ext)
|
|
add_dependencies(libsqlitecpp2 libsqlitecpp_ext)
|
|
endif()
|