aboutsummaryrefslogtreecommitdiff
path: root/ports/poco/portfile.cmake
diff options
context:
space:
mode:
authorJack·Boos·Yu <47264268+JackBoosY@users.noreply.github.com>2020-11-13 13:35:03 -0800
committerGitHub <noreply@github.com>2020-11-13 13:35:03 -0800
commit132ca47d69e1aaa9fca15167bf7da95d6ea04ca7 (patch)
tree325c73fb62a6edbc9f5309ce038ff80697bb35c9 /ports/poco/portfile.cmake
parent783763162901f32e6d6270aede22519844b8e9ce (diff)
downloadvcpkg-132ca47d69e1aaa9fca15167bf7da95d6ea04ca7.tar.gz
vcpkg-132ca47d69e1aaa9fca15167bf7da95d6ea04ca7.zip
[poco] Fix dependency, add features (#14305)
* [poco] Fix dependency, add features * [poco] Update libmysql related code * [poco] Drop uwp support, fix cmake path
Diffstat (limited to 'ports/poco/portfile.cmake')
-rw-r--r--ports/poco/portfile.cmake90
1 files changed, 25 insertions, 65 deletions
diff --git a/ports/poco/portfile.cmake b/ports/poco/portfile.cmake
index 5a25b98e2..27187cf08 100644
--- a/ports/poco/portfile.cmake
+++ b/ports/poco/portfile.cmake
@@ -1,3 +1,5 @@
+vcpkg_fail_port_install(ON_TARGET "UWP")
+
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO pocoproject/poco
@@ -5,12 +7,8 @@ vcpkg_from_github(
SHA512 4c53a24a2ab9c57f4bf94e233da65cbb144c101b7d8d422d7e687d6c90ce0b53cb7bcfae63205ff30cade0fd07319e44a32035c1b15637ea2958986efc4ad5df
HEAD_REF master
PATCHES
- # Add include path to public interface for static build
- include_pcre.patch
# Fix embedded copy of pcre in static linking mode
static_pcre.patch
- # Use vcpkg installed libharu for feature pdf
- use-vcpkg-libharu.patch
# Add the support of arm64-windows
arm64_pcre.patch
fix_dependency.patch
@@ -20,36 +18,32 @@ file(REMOVE "${SOURCE_PATH}/Foundation/src/pcre.h")
file(REMOVE "${SOURCE_PATH}/cmake/V39/FindEXPAT.cmake")
file(REMOVE "${SOURCE_PATH}/cmake/V313/FindSQLite3.cmake")
file(REMOVE "${SOURCE_PATH}/cmake/FindPCRE.cmake")
+file(REMOVE "${SOURCE_PATH}/cmake/FindMySQL.cmake")
# define Poco linkage type
string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "static" POCO_STATIC)
string(COMPARE EQUAL "${VCPKG_CRT_LINKAGE}" "static" POCO_MT)
vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
- pdf ENABLE_PDF
+ pdf ENABLE_PDF
+ netssl ENABLE_NETSSL
+ netssl ENABLE_NETSSL_WIN
+ netssl ENABLE_CRYPTO
+ sqlite3 ENABLE_DATA_SQLITE
+ postgresql ENABLE_DATA_POSTGRESQL
)
-# MySQL / MariaDDB feature
-if("mysql" IN_LIST FEATURES OR "mariadb" IN_LIST FEATURES)
- if("mysql" IN_LIST FEATURES)
- # enabling MySQL support
- set(MYSQL_INCLUDE_DIR "${CURRENT_INSTALLED_DIR}/include/mysql")
- set(MYSQL_LIBRARY "${CURRENT_INSTALLED_DIR}/lib/libmysql.lib")
- set(MYSQL_LIBRARY_DEBUG "${CURRENT_INSTALLED_DIR}/debug/lib/libmysql.lib")
- endif()
- if("mariadb" IN_LIST FEATURES)
- # enabling MariaDB support
- set(MYSQL_INCLUDE_DIR "${CURRENT_INSTALLED_DIR}/include/mysql")
- set(MYSQL_LIBRARY "${CURRENT_INSTALLED_DIR}/lib/libmariadb.lib")
- set(MYSQL_LIBRARY_DEBUG "${CURRENT_INSTALLED_DIR}/debug/lib/libmariadb.lib")
- endif()
+if ("mysql" IN_LIST FEATURES OR "mariadb" IN_LIST FEATURES)
+ set(POCO_USE_MYSQL ON)
+else()
+ set(POCO_USE_MYSQL OFF)
endif()
vcpkg_configure_cmake(
SOURCE_PATH ${SOURCE_PATH}
- #PREFER_NINJA
+ PREFER_NINJA
OPTIONS ${FEATURE_OPTIONS}
- # Set to OFF|ON (default is OFF) to control linking dependencies as external
+ # force to use dependencies as external
-DPOCO_UNBUNDLED=ON
# Define linking feature
-DPOCO_STATIC=${POCO_STATIC}
@@ -74,16 +68,18 @@ vcpkg_configure_cmake(
-DENABLE_POCODOC=ON
-DENABLE_PAGECOMPILER=ON
-DENABLE_PAGECOMPILER_FILE2PAGE=ON
- #
- -DMYSQL_INCLUDE_DIR=${MYSQL_INCLUDE_DIR}
- OPTIONS_RELEASE
- -DMYSQL_LIB=${MYSQL_LIBRARY}
- OPTIONS_DEBUG
- -DMYSQL_LIB=${MYSQL_LIBRARY_DEBUG}
+ -DPOCO_DISABLE_INTERNAL_OPENSSL=ON
+ -DENABLE_APACHECONNECTOR=OFF
+ -DENABLE_DATA_MYSQL=${POCO_USE_MYSQL}
)
vcpkg_install_cmake()
+vcpkg_copy_pdbs()
+
+# Move apps to the tools folder
+vcpkg_copy_tools(TOOL_NAMES cpspc f2cpsp PocoDoc tec AUTO_CLEAN)
+
# Copy additional include files not part of any libraries
if(EXISTS "${CURRENT_PACKAGES_DIR}/include/Poco/SQL")
file(COPY ${SOURCE_PATH}/Data/include DESTINATION ${CURRENT_PACKAGES_DIR})
@@ -102,48 +98,12 @@ if(EXISTS "${CURRENT_PACKAGES_DIR}/include/Poco/SQL/SQLite")
file(COPY ${SOURCE_PATH}/Data/SQLite/include DESTINATION ${CURRENT_PACKAGES_DIR})
endif()
-# Move apps to the tools folder
-file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/tools)
-if(EXISTS "${CURRENT_PACKAGES_DIR}/bin/cpspc.exe")
- file(RENAME ${CURRENT_PACKAGES_DIR}/bin/cpspc.exe ${CURRENT_PACKAGES_DIR}/tools/cpspc.exe)
- file(RENAME ${CURRENT_PACKAGES_DIR}/bin/f2cpsp.exe ${CURRENT_PACKAGES_DIR}/tools/f2cpsp.exe)
- file(RENAME ${CURRENT_PACKAGES_DIR}/bin/PocoDoc.exe ${CURRENT_PACKAGES_DIR}/tools/PocoDoc.exe)
- file(RENAME ${CURRENT_PACKAGES_DIR}/bin/tec.exe ${CURRENT_PACKAGES_DIR}/tools/tec.exe)
-else()
- file(RENAME ${CURRENT_PACKAGES_DIR}/bin/cpspc ${CURRENT_PACKAGES_DIR}/tools/cpspc)
- file(RENAME ${CURRENT_PACKAGES_DIR}/bin/f2cpsp ${CURRENT_PACKAGES_DIR}/tools/f2cpsp)
- file(RENAME ${CURRENT_PACKAGES_DIR}/bin/PocoDoc ${CURRENT_PACKAGES_DIR}/tools/PocoDoc)
- file(RENAME ${CURRENT_PACKAGES_DIR}/bin/tec ${CURRENT_PACKAGES_DIR}/tools/tec)
-endif()
-
-if (VCPKG_LIBRARY_LINKAGE STREQUAL static OR VCPKG_TARGET_IS_LINUX OR VCPKG_TARGET_IS_OSX)
- file(REMOVE_RECURSE
- ${CURRENT_PACKAGES_DIR}/bin
- ${CURRENT_PACKAGES_DIR}/debug/bin)
-else()
- file(REMOVE
- ${CURRENT_PACKAGES_DIR}/bin/cpspc.pdb
- ${CURRENT_PACKAGES_DIR}/bin/f2cpsp.pdb
- ${CURRENT_PACKAGES_DIR}/bin/PocoDoc.pdb
- ${CURRENT_PACKAGES_DIR}/bin/tec.pdb
- ${CURRENT_PACKAGES_DIR}/debug/bin/cpspc.exe
- ${CURRENT_PACKAGES_DIR}/debug/bin/cpspc.pdb
- ${CURRENT_PACKAGES_DIR}/debug/bin/f2cpsp.exe
- ${CURRENT_PACKAGES_DIR}/debug/bin/f2cpsp.pdb
- ${CURRENT_PACKAGES_DIR}/debug/bin/PocoDoc.exe
- ${CURRENT_PACKAGES_DIR}/debug/bin/PocoDoc.pdb
- ${CURRENT_PACKAGES_DIR}/debug/bin/tec.exe
- ${CURRENT_PACKAGES_DIR}/debug/bin/tec.pdb)
-endif()
-
-if(EXISTS "${CURRENT_PACKAGES_DIR}/cmake")
+if(VCPKG_TARGET_IS_WINDOWS)
vcpkg_fixup_cmake_targets(CONFIG_PATH cmake)
-elseif(EXISTS "${CURRENT_PACKAGES_DIR}/lib/cmake/Poco")
+else()
vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/Poco)
endif()
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share)
-
-vcpkg_copy_pdbs()
file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)