vcpkg/ports/drogon/portfile.cmake
Greisberger Christophe 8af28e0dab
[drogon] Added database support features (#18711)
* [drogon] Added database access features

* Replaced CONTROL with vcpkg.json manifest file

* Patched finding brotli libraries for static triplets (brotlicommon-static.lib and co.)

* Added features for database access, disabled by default.

* [drogon] Fixed vcpkg.json version

* update vcpkg.json format

* update version

* Added new feature redis

* update vcpkg.json format

* update version

* delete redis dependence

* update version

* fix request feature

* update version

Co-authored-by: Jonliu1993 <13720414433@163.com>
2021-07-26 10:54:38 -07:00

60 lines
1.5 KiB
CMake

vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO an-tao/drogon
REF v1.7.1
SHA512 8a7cb8aa87cc48b130a5b47558b3c9e2a0af13cd8b76681e42d14a366dac75c88e389f2e2fe03b4f0f1e0e31971a47eee2bf5df8fcb4b79f8ed00d2a592315b6
HEAD_REF master
PATCHES
vcpkg.patch
resolv.patch
drogon_config.patch
static-brotli.patch
)
vcpkg_check_features(
OUT_FEATURE_OPTIONS FEATURE_OPTIONS
FEATURES
ctl BUILD_CTL
mysql BUILD_MYSQL
orm BUILD_ORM
postgres BUILD_POSTGRESQL
postgres LIBPQ_BATCH_MODE
redis BUILD_REDIS
sqlite3 BUILD_SQLITE
)
vcpkg_configure_cmake(
SOURCE_PATH ${SOURCE_PATH}
PREFER_NINJA
OPTIONS
-DBUILD_EXAMPLES=OFF
-DCMAKE_DISABLE_FIND_PACKAGE_Boost=ON
${FEATURE_OPTIONS}
)
vcpkg_install_cmake()
# Fix CMake files
vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/Drogon)
vcpkg_fixup_pkgconfig()
# Copy drogon_ctl
if("ctl" IN_LIST FEATURES)
message("copying tools")
vcpkg_copy_tools(TOOL_NAMES drogon_ctl
AUTO_CLEAN)
endif()
# # Remove includes in debug
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include")
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/share")
if(VCPKG_LIBRARY_LINKAGE STREQUAL "static")
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/bin" "${CURRENT_PACKAGES_DIR}/debug/bin")
endif()
# Handle copyright
file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)
# Copy pdb files
vcpkg_copy_pdbs()