diff options
Diffstat (limited to 'vcpkg/ports/libodb-pgsql')
| -rw-r--r-- | vcpkg/ports/libodb-pgsql/CMakeLists.txt | 47 | ||||
| -rw-r--r-- | vcpkg/ports/libodb-pgsql/config.unix.h.in | 14 | ||||
| -rw-r--r-- | vcpkg/ports/libodb-pgsql/portfile.cmake | 30 | ||||
| -rw-r--r-- | vcpkg/ports/libodb-pgsql/vcpkg.json | 19 |
4 files changed, 110 insertions, 0 deletions
diff --git a/vcpkg/ports/libodb-pgsql/CMakeLists.txt b/vcpkg/ports/libodb-pgsql/CMakeLists.txt new file mode 100644 index 0000000..13d50c0 --- /dev/null +++ b/vcpkg/ports/libodb-pgsql/CMakeLists.txt @@ -0,0 +1,47 @@ +cmake_minimum_required(VERSION 3.0) +project(libodb-pgsql VERSION 2.4.0 LANGUAGES CXX) +set(CMAKE_CXX_STANDARD 11) # 17 removes 'auto_ptr' +find_package(odb 2.4.0 REQUIRED COMPONENTS libodb) +find_package(PostgreSQL REQUIRED) +configure_file(config.unix.h.in + ${CMAKE_CURRENT_SOURCE_DIR}/odb/pgsql/details/config.h COPYONLY) + +set(LIBODB_INSTALL_HEADERS ON CACHE BOOL "Install the header files (a debug install)") +file(GLOB_RECURSE libodb_src LIST_DIRECTORIES False + RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} + *.cxx) +list(FILTER libodb_src EXCLUDE REGEX /posix/.*) +add_library(libodb-pgsql ${libodb_src}) +target_include_directories(libodb-pgsql + PUBLIC + $<INSTALL_INTERFACE:include> + $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}> + +) + +target_link_libraries(libodb-pgsql PRIVATE odb::libodb ${PostgreSQL_LIBRARY}) +if(BUILD_SHARED_LIBS) + target_compile_definitions(libodb-pgsql PRIVATE + -DLIBODB_PGSQL_DYNAMIC_LIB) +else() + target_compile_definitions(libodb-pgsql PRIVATE + -DLIBODB_PGSQL_STATIC_LIB) +endif() +install(TARGETS libodb-pgsql EXPORT odb_pgsqlConfig + COMPONENT pgsql + ARCHIVE DESTINATION lib + LIBRARY DESTINATION lib + RUNTIME DESTINATION bin +) +if(LIBODB_INSTALL_HEADERS) +install(DIRECTORY odb DESTINATION include/ + COMPONENT sqlite + FILES_MATCHING + PATTERN "*.h" + PATTERN "*.hxx" + PATTERN "*.ixx" + PATTERN "*.txx" +) +endif() +install(EXPORT odb_pgsqlConfig NAMESPACE odb:: COMPONENT pgsql DESTINATION share/odb) +export(TARGETS libodb-pgsql NAMESPACE odb:: FILE odb_pgsqlConfig.cmake)
\ No newline at end of file diff --git a/vcpkg/ports/libodb-pgsql/config.unix.h.in b/vcpkg/ports/libodb-pgsql/config.unix.h.in new file mode 100644 index 0000000..cdced9e --- /dev/null +++ b/vcpkg/ports/libodb-pgsql/config.unix.h.in @@ -0,0 +1,14 @@ +/* odb/pgsql/details/config.h. Generated from config.h.in by configure. */ +/* file : odb/pgsql/details/config.h.in + * copyright : Copyright (c) 2009-2015 Code Synthesis Tools CC + * license : GNU GPL v2; see accompanying LICENSE file + */ + +/* This file is automatically processed by configure. */ + +#ifndef ODB_PGSQL_DETAILS_CONFIG_H +#define ODB_PGSQL_DETAILS_CONFIG_H + +/* #undef LIBODB_PGSQL_STATIC_LIB */ + +#endif /* ODB_PGSQL_DETAILS_CONFIG_H */ diff --git a/vcpkg/ports/libodb-pgsql/portfile.cmake b/vcpkg/ports/libodb-pgsql/portfile.cmake new file mode 100644 index 0000000..284fb69 --- /dev/null +++ b/vcpkg/ports/libodb-pgsql/portfile.cmake @@ -0,0 +1,30 @@ +vcpkg_download_distfile(ARCHIVE + URLS "http://www.codesynthesis.com/download/odb/2.4/libodb-pgsql-2.4.0.tar.gz" + FILENAME "libodb-pgsql-2.4.0.tar.gz" + SHA512 535515356233b815f144c0098940174f7a530e7fa4e930c0a9ebdc255fdb8bac8cdcceac31f25be4864105323e00bfe50808efa648e7c8ffb5a944e52f514b69 +) + +vcpkg_extract_source_archive( + SOURCE_PATH + ARCHIVE "${ARCHIVE}" +) +file(REMOVE "${SOURCE_PATH}/version") + +file(COPY + "${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt" + "${CMAKE_CURRENT_LIST_DIR}/config.unix.h.in" + DESTINATION "${SOURCE_PATH}") + +vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}" + DISABLE_PARALLEL_CONFIGURE + OPTIONS_DEBUG + -DLIBODB_INSTALL_HEADERS=OFF +) + +vcpkg_cmake_install() +vcpkg_cmake_config_fixup(PACKAGE_NAME odb) +vcpkg_copy_pdbs() + +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/share") +file(INSTALL "${SOURCE_PATH}/LICENSE" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) diff --git a/vcpkg/ports/libodb-pgsql/vcpkg.json b/vcpkg/ports/libodb-pgsql/vcpkg.json new file mode 100644 index 0000000..59e2d48 --- /dev/null +++ b/vcpkg/ports/libodb-pgsql/vcpkg.json @@ -0,0 +1,19 @@ +{ + "name": "libodb-pgsql", + "version": "2.4.0", + "port-version": 8, + "description": "Description: PostgreSQL support for the ODB ORM library", + "homepage": "https://www.codesynthesis.com/products/odb/", + "dependencies": [ + "libodb", + "libpq", + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + } + ] +} |