mirror of
https://github.com/microsoft/vcpkg.git
synced 2024-12-28 19:25:27 +08:00
added libodb-pgsql support
This commit is contained in:
parent
de9728cfe1
commit
bbf853d007
43
ports/libodb-pgsql/CMakeLists.txt
Normal file
43
ports/libodb-pgsql/CMakeLists.txt
Normal file
@ -0,0 +1,43 @@
|
||||
cmake_minimum_required(VERSION 3.0)
|
||||
project(libodb-pgsql VERSION 2.4.0 LANGUAGES CXX)
|
||||
find_package(odb 2.4.0 REQUIRED COMPONENTS libodb)
|
||||
find_package(PostgreSQL REQUIRED)
|
||||
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)
|
4
ports/libodb-pgsql/CONTROL
Normal file
4
ports/libodb-pgsql/CONTROL
Normal file
@ -0,0 +1,4 @@
|
||||
Source: libodb-pgsql
|
||||
Version: 2.4.0
|
||||
Description: Description: PostgreSQL support for the ODB ORM library
|
||||
Build-Depends: libodb, libpq
|
25
ports/libodb-pgsql/portfile.cmake
Normal file
25
ports/libodb-pgsql/portfile.cmake
Normal file
@ -0,0 +1,25 @@
|
||||
include(vcpkg_common_functions)
|
||||
set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/libodb-pgsql-2.4.0)
|
||||
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(${ARCHIVE})
|
||||
|
||||
file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH})
|
||||
vcpkg_configure_cmake(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
OPTIONS_DEBUG
|
||||
-DLIBODB_INSTALL_HEADERS=OFF
|
||||
)
|
||||
vcpkg_build_cmake()
|
||||
vcpkg_install_cmake()
|
||||
|
||||
file(READ ${CURRENT_PACKAGES_DIR}/debug/share/odb/odb_pgsqlConfig-debug.cmake LIBODB_DEBUG_TARGETS)
|
||||
string(REPLACE "\${_IMPORT_PREFIX}" "\${_IMPORT_PREFIX}/debug" LIBODB_DEBUG_TARGETS "${LIBODB_DEBUG_TARGETS}")
|
||||
file(WRITE ${CURRENT_PACKAGES_DIR}/share/odb/odb_pgsqlConfig-debug.cmake "${LIBODB_DEBUG_TARGETS}")
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share)
|
||||
file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/libodb-pgsql)
|
||||
file(RENAME ${CURRENT_PACKAGES_DIR}/share/libodb-pgsql/LICENSE ${CURRENT_PACKAGES_DIR}/share/libodb-pgsql/copyright)
|
||||
vcpkg_copy_pdbs()
|
@ -1,4 +1,4 @@
|
||||
set(_supported_components libodb sqlite)
|
||||
set(_supported_components libodb sqlite pgsql)
|
||||
|
||||
foreach(_comp ${odb_FIND_COMPONENTS})
|
||||
if(NOT ";${_supported_components};" MATCHES _comp)
|
||||
|
Loading…
x
Reference in New Issue
Block a user