Library for easy work with SQLite 3 database
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
sql3/CMakeLists.txt

70 lines
1.6 KiB

1 month ago
cmake_minimum_required(VERSION 3.15)
project(SqliteCppWrapper LANGUAGES CXX)
# Postavi standard za C++
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
# Dodaj glavnu biblioteku
add_library(sqlitecpp STATIC
src/sqlite3.cpp
)
# Uključi zaglavlja
target_include_directories(sqlitecpp
PUBLIC
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/lib>
$<INSTALL_INTERFACE:include>
)
# Poveži sa SQLite3
find_package(SQLite3 REQUIRED)
target_link_libraries(sqlitecpp PRIVATE SQLite::SQLite3)
# Generiši export fajl za lokalnu upotrebu
export(TARGETS sqlitecpp
FILE ${CMAKE_CURRENT_BINARY_DIR}/sqlitecppTargets.cmake
NAMESPACE sqlitecpp::
)
# Generiši sqlitecppConfig.cmake
include(CMakePackageConfigHelpers)
configure_package_config_file(
${CMAKE_CURRENT_SOURCE_DIR}/cmake/sqlitecppConfig.cmake.in
${CMAKE_CURRENT_BINARY_DIR}/sqlitecppConfig.cmake
INSTALL_DESTINATION lib/cmake/sqlitecpp
)
write_basic_package_version_file(
${CMAKE_CURRENT_BINARY_DIR}/sqlitecppConfigVersion.cmake
VERSION 1.0.0
COMPATIBILITY SameMajorVersion
)
# Instalacija za lokalnu upotrebu
install(TARGETS sqlitecpp
EXPORT sqlitecppTargets
ARCHIVE DESTINATION lib
LIBRARY DESTINATION lib
RUNTIME DESTINATION bin
)
install(EXPORT sqlitecppTargets
FILE sqlitecppTargets.cmake
NAMESPACE sqlitecpp::
DESTINATION lib/cmake/sqlitecpp
)
install(FILES
${CMAKE_CURRENT_BINARY_DIR}/sqlitecppConfig.cmake
${CMAKE_CURRENT_BINARY_DIR}/sqlitecppConfigVersion.cmake
DESTINATION lib/cmake/sqlitecpp
)
# Opcionalno dodaj testove
# enable_testing()
# add_subdirectory(test)
add_subdirectory(test)