diff options
| author | Ethan Morgan <ethan@gweithio.com> | 2026-02-14 16:44:06 +0000 |
|---|---|---|
| committer | Ethan Morgan <ethan@gweithio.com> | 2026-02-14 16:44:06 +0000 |
| commit | 54409423f767d8b1cf30cb7d0efca6b4ca138823 (patch) | |
| tree | d915ac7828703ce4b963efdd9728a1777ba18c1e /vcpkg/ports/libodb/CMakeLists.txt | |
Diffstat (limited to 'vcpkg/ports/libodb/CMakeLists.txt')
| -rw-r--r-- | vcpkg/ports/libodb/CMakeLists.txt | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/vcpkg/ports/libodb/CMakeLists.txt b/vcpkg/ports/libodb/CMakeLists.txt new file mode 100644 index 0000000..a49175a --- /dev/null +++ b/vcpkg/ports/libodb/CMakeLists.txt @@ -0,0 +1,47 @@ +cmake_minimum_required(VERSION 3.0) +project(libodb VERSION 2.4.0 LANGUAGES CXX) +set(LIBODB_INSTALL_HEADERS ON CACHE BOOL "Install the header files (a debug install)") +configure_file(config.unix.h.in + ${CMAKE_CURRENT_SOURCE_DIR}/odb/details/config.h COPYONLY) + +file(GLOB_RECURSE libodb_src LIST_DIRECTORIES False + RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} + *.cxx) +if (WIN32) + list(FILTER libodb_src EXCLUDE REGEX /posix/.*) +elseif (UNIX) + list(FILTER libodb_src EXCLUDE REGEX /win32/.*) +endif() + +add_library(libodb ${libodb_src}) +target_include_directories(libodb + PUBLIC + $<INSTALL_INTERFACE:include> + $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}> + +) +if(BUILD_SHARED_LIBS) + target_compile_definitions(libodb PRIVATE + -DLIBODB_DYNAMIC_LIB) +else() + target_compile_definitions(libodb PRIVATE + -DLIBODB_STATIC_LIB) +endif() +install(TARGETS libodb EXPORT odb_libodbConfig + COMPONENT libodb + ARCHIVE DESTINATION lib + LIBRARY DESTINATION lib + RUNTIME DESTINATION bin +) +if(LIBODB_INSTALL_HEADERS) +install(DIRECTORY odb DESTINATION include/ + COMPONENT libodb + FILES_MATCHING + PATTERN "*.h" + PATTERN "*.hxx" + PATTERN "*.ixx" + PATTERN "*.txx" +) +endif() +install(EXPORT odb_libodbConfig NAMESPACE odb:: COMPONENT libodb DESTINATION share/odb) +export(TARGETS libodb NAMESPACE odb:: FILE odb_libodbConfig.cmake) |