aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStephen Webb <swebb2066@gmail.com>2020-05-07 06:20:49 +1000
committerGitHub <noreply@github.com>2020-05-06 13:20:49 -0700
commit9614c6a9624020b86168a58b1517b5ff24843903 (patch)
treea78737358a169a0b01961a16ad82cd2b4a6820be
parent411929e664f7736b4b52113cd48b7560a4e4842b (diff)
downloadvcpkg-9614c6a9624020b86168a58b1517b5ff24843903.tar.gz
vcpkg-9614c6a9624020b86168a58b1517b5ff24843903.zip
[apr apr-util] Apr and apr-util for non windows systems (#8579)
* Allow the apr port to be used on non-windows systems * Allow the apr-util port to be used on non-windows systems * Allow the apr-util port to be used on non-windows systems * Allow the apr-util port to be used on non-windows systems * [log4cxx] add new port * Add aarch64 cross compilation support * Allow apr and apr-util ports to used with a cross compiling tool chain * @PhoebeHui requested changes * Remove files that leaked from 'add-log4cxx-port' branch * @PhoebeHui requested changes * Move apr-util-unix and apr-util-windows portfile.cmake content back into apr-util/portfile.cmake * Use the same released archive for unix and windows * Use the same released archive for unix and windows (1.6.1) * Update APR version to the latest * Prevent unrelated CI failures * Prevent CI failure for arm64 on x86 CI machine * Prevent CI failure for arm64 on x86 CI machine * Use vcpkg_configure_make and vcpkg_install_make instead of vcpkg_execute_required_process * Remove shared libraries if a static build * Revert "Remove shared libraries if a static build" This reverts commit 540e158e1fbfe53b889bef8b928bc8feb62775c2. * Prevent CI failures due to static build installing apr-1-config into bin * @PhoebeHui requested changes Co-authored-by: Stephen Webb <stephen.webb@sabreautonomous.com.au>
-rw-r--r--ports/apr-util/CONTROL2
-rw-r--r--ports/apr-util/portfile.cmake110
-rw-r--r--ports/apr-util/use-vcpkg-expat.patch102
-rw-r--r--ports/apr/CONTROL2
-rw-r--r--ports/apr/portfile.cmake97
-rw-r--r--scripts/ci.baseline.txt12
6 files changed, 191 insertions, 134 deletions
diff --git a/ports/apr-util/CONTROL b/ports/apr-util/CONTROL
index 206837328..c20e232bb 100644
--- a/ports/apr-util/CONTROL
+++ b/ports/apr-util/CONTROL
@@ -1,5 +1,5 @@
Source: apr-util
-Version: 1.6.0-5
+Version: 1.6.1
Homepage: https://apr.apache.org/
Description: Apache Portable Runtime (APR) project mission is to create and maintain software libraries that provide a predictable and consistent interface to underlying platform-specific implementation
Build-Depends: expat, apr, openssl
diff --git a/ports/apr-util/portfile.cmake b/ports/apr-util/portfile.cmake
index 94a5ee053..15b74d363 100644
--- a/ports/apr-util/portfile.cmake
+++ b/ports/apr-util/portfile.cmake
@@ -1,46 +1,86 @@
-include(vcpkg_common_functions)
vcpkg_download_distfile(ARCHIVE
- URLS "https://archive.apache.org/dist/apr/apr-util-1.6.0-win32-src.zip"
- FILENAME "apr-util-1.6.0-win32-src.zip"
- SHA512 98679ea181d3132020713481703bbefa0c174e0b2a0df65dfdd176e9771935e1f9455c4242bac19dded9414abe2b9d293fcc674ab16f96d8987bcf26346fce3a
-)
+ URLS "http://archive.apache.org/dist/apr/apr-util-1.6.1.tar.bz2"
+ FILENAME "apr-util-1.6.1.tar.bz2"
+ SHA512 40eff8a37c0634f7fdddd6ca5e596b38de15fd10767a34c30bbe49c632816e8f3e1e230678034f578dd5816a94f246fb5dfdf48d644829af13bf28de3225205d
-vcpkg_extract_source_archive_ex(
- OUT_SOURCE_PATH SOURCE_PATH
- ARCHIVE ${ARCHIVE}
- PATCHES
- use-vcpkg-expat.patch
- apr.patch
)
-if(VCPKG_LIBRARY_LINKAGE STREQUAL dynamic)
- set(APU_DECLARE_EXPORT ON)
- set(APU_DECLARE_STATIC OFF)
-else()
- set(APU_DECLARE_EXPORT OFF)
- set(APU_DECLARE_STATIC ON)
-endif()
+if(VCPKG_TARGET_IS_WINDOWS)
-vcpkg_configure_cmake(
- SOURCE_PATH ${SOURCE_PATH}
- PREFER_NINJA
- OPTIONS
- -DAPU_DECLARE_EXPORT=${APU_DECLARE_EXPORT}
- -DAPU_DECLARE_STATIC=${APU_DECLARE_STATIC}
- OPTIONS_DEBUG
- -DDISABLE_INSTALL_HEADERS=ON
-)
+ vcpkg_extract_source_archive_ex(
+ OUT_SOURCE_PATH SOURCE_PATH
+ ARCHIVE ${ARCHIVE}
+ PATCHES
+ use-vcpkg-expat.patch
+ apr.patch
+ )
+
+ if(VCPKG_LIBRARY_LINKAGE STREQUAL dynamic)
+ set(APU_DECLARE_EXPORT ON)
+ set(APU_DECLARE_STATIC OFF)
+ else()
+ set(APU_DECLARE_EXPORT OFF)
+ set(APU_DECLARE_STATIC ON)
+ endif()
+
+ vcpkg_configure_cmake(
+ SOURCE_PATH ${SOURCE_PATH}
+ PREFER_NINJA
+ OPTIONS
+ -DAPU_DECLARE_EXPORT=${APU_DECLARE_EXPORT}
+ -DAPU_DECLARE_STATIC=${APU_DECLARE_STATIC}
+ OPTIONS_DEBUG
+ -DDISABLE_INSTALL_HEADERS=ON
+ )
+
+ vcpkg_install_cmake()
+ vcpkg_copy_pdbs()
+
+ file(READ ${CURRENT_PACKAGES_DIR}/include/apu.h APU_H)
+ if(VCPKG_LIBRARY_LINKAGE STREQUAL dynamic)
+ string(REPLACE "defined(APU_DECLARE_EXPORT)" "1" APU_H "${APU_H}")
+ else()
+ string(REPLACE "defined(APU_DECLARE_STATIC)" "1" APU_H "${APU_H}")
+ endif()
+ file(WRITE ${CURRENT_PACKAGES_DIR}/include/apu.h "${APU_H}")
+
+else(VCPKG_TARGET_IS_WINDOWS)
+
+ vcpkg_extract_source_archive_ex(
+ OUT_SOURCE_PATH SOURCE_PATH
+ ARCHIVE ${ARCHIVE}
+ )
+
+ # To cross-compile you will need a triplet file that locates the tool chain and sets --host and --cache parameters of "./configure".
+ # The ${VCPKG_PLATFORM_TOOLSET}.cache file must have been generated on the targeted host using "./configure -C".
+ # For example, to target aarch64-linux-gnu, triplets/aarch64-linux-gnu.cmake should contain (beyond the standard content):
+ # set(VCPKG_PLATFORM_TOOLSET aarch64-linux-gnu)
+ # set(VCPKG_CHAINLOAD_TOOLCHAIN_FILE ${MY_CROSS_DIR}/cmake/Toolchain-${VCPKG_PLATFORM_TOOLSET}.cmake)
+ # set(CONFIGURE_PARAMETER_1 --host=${VCPKG_PLATFORM_TOOLSET})
+ # set(CONFIGURE_PARAMETER_2 --cache-file=${MY_CROSS_DIR}/autoconf/${VCPKG_PLATFORM_TOOLSET}.cache)
+ if(CONFIGURE_PARAMETER_1)
+ message(STATUS "Configuring apr-util with ${CONFIGURE_PARAMETER_1} ${CONFIGURE_PARAMETER_2} ${CONFIGURE_PARAMETER_3}")
+ else()
+ message(STATUS "Configuring apr-util")
+ endif()
+
+ vcpkg_configure_make(
+ SOURCE_PATH "${SOURCE_PATH}"
+ NO_DEBUG
+ OPTIONS
+ "--prefix=${CURRENT_INSTALLED_DIR}"
+ "--with-apr=${CURRENT_INSTALLED_DIR}"
+ "--with-openssl=${CURRENT_INSTALLED_DIR}"
+ "-with-expat=${CURRENT_INSTALLED_DIR}"
+ "${CONFIGURE_PARAMETER_1}"
+ "${CONFIGURE_PARAMETER_2}"
+ "${CONFIGURE_PARAMETER_3}"
+ )
-vcpkg_install_cmake()
-vcpkg_copy_pdbs()
+ vcpkg_install_make()
-file(READ ${CURRENT_PACKAGES_DIR}/include/apu.h APU_H)
-if(VCPKG_LIBRARY_LINKAGE STREQUAL dynamic)
- string(REPLACE "defined(APU_DECLARE_EXPORT)" "1" APU_H "${APU_H}")
-else()
- string(REPLACE "defined(APU_DECLARE_STATIC)" "1" APU_H "${APU_H}")
endif()
-file(WRITE ${CURRENT_PACKAGES_DIR}/include/apu.h "${APU_H}")
+# Handle copyright
file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)
diff --git a/ports/apr-util/use-vcpkg-expat.patch b/ports/apr-util/use-vcpkg-expat.patch
index 8bfe3e24e..28bcb51dc 100644
--- a/ports/apr-util/use-vcpkg-expat.patch
+++ b/ports/apr-util/use-vcpkg-expat.patch
@@ -1,8 +1,8 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 43fdf49..56424c3 100644
+index 9ae90b19..b0e86e2c 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
-@@ -27,8 +27,9 @@ OPTION(APR_HAS_LDAP "LDAP support" ON)
+@@ -29,8 +29,9 @@ OPTION(APR_HAS_LDAP "LDAP support" ON)
OPTION(INSTALL_PDB "Install .pdb files (if generated)" ON)
OPTION(APR_BUILD_TESTAPR "Build the test suite" OFF)
OPTION(TEST_STATIC_LIBS "Test programs use APR static libraries instead of shared libraries?" OFF)
@@ -14,88 +14,76 @@ index 43fdf49..56424c3 100644
IF(NOT EXISTS "${APR_INCLUDE_DIR}/apr.h")
MESSAGE(FATAL_ERROR "APR include directory ${APR_INCLUDE_DIR} is not correct.")
-@@ -75,8 +76,8 @@ CONFIGURE_FILE(include/apu_want.hw
- COPYONLY)
+@@ -65,8 +66,8 @@ IF(NOT EXPAT_FOUND)
+ MESSAGE(FATAL_ERROR "Expat is required, and it wasn't found!")
+ ENDIF()
- # TBD:
--# SET(XMLLIB_INCLUDE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/xml/expat/lib)
--SET(XMLLIB_LIBRARIES libexpat)
+-SET(XMLLIB_INCLUDE_DIR ${EXPAT_INCLUDE_DIRS})
+-SET(XMLLIB_LIBRARIES ${EXPAT_LIBRARIES})
+find_path(XMLLIB_INCLUDE_DIR expat.h)
+find_library(XMLLIB_LIBRARIES NAMES expat)
SET(LDAP_LIBRARIES)
IF(APR_HAS_LDAP)
-@@ -217,11 +218,11 @@ SET(APR_TEST_SOURCES
- test/testxml.c
- )
-
--SET(EXPAT_SOURCES
-- xml/expat/lib/xmlrole.c
-- xml/expat/lib/xmltok.c
-- xml/expat/lib/xmlparse.c
--)
-+# SET(EXPAT_SOURCES
-+# xml/expat/lib/xmlrole.c
-+# xml/expat/lib/xmltok.c
-+# xml/expat/lib/xmlparse.c
-+# )
-
- SET(install_targets)
- SET(install_bin_pdb)
-@@ -230,21 +231,25 @@ SET(dbd_drivers)
+@@ -229,17 +230,21 @@ SET(dbd_drivers)
# Note: The WINNT definition on some targets is used only by libaprutil.rc.
- # static expat (not installed)
--ADD_LIBRARY(libexpat STATIC ${EXPAT_SOURCES})
--SET_TARGET_PROPERTIES(libexpat PROPERTIES COMPILE_DEFINITIONS "XML_STATIC;COMPILED_FROM_DSP")
-+# ADD_LIBRARY(libexpat STATIC ${EXPAT_SOURCES})
-+# SET_TARGET_PROPERTIES(libexpat PROPERTIES COMPILE_DEFINITIONS "XML_STATIC;COMPILED_FROM_DSP")
-
# libaprutil-1 is shared, aprutil-1 is static
+if(BUILD_SHARED_LIBS)
ADD_LIBRARY(libaprutil-1 SHARED ${APR_SOURCES} ${APR_PUBLIC_HEADERS_GENERATED} libaprutil.rc)
SET(install_targets ${install_targets} libaprutil-1)
SET(install_bin_pdb ${install_bin_pdb} ${PROJECT_BINARY_DIR}/libaprutil-1.pdb)
TARGET_LINK_LIBRARIES(libaprutil-1 ${APR_LIBRARIES} ${XMLLIB_LIBRARIES})
- SET_TARGET_PROPERTIES(libaprutil-1 PROPERTIES COMPILE_DEFINITIONS "APU_DECLARE_EXPORT;APR_DECLARE_EXPORT;XML_STATIC;WINNT")
+-SET_TARGET_PROPERTIES(libaprutil-1 PROPERTIES COMPILE_DEFINITIONS "APU_DECLARE_EXPORT;APR_DECLARE_EXPORT;XML_STATIC;WINNT")
++SET_TARGET_PROPERTIES(libaprutil-1 PROPERTIES COMPILE_DEFINITIONS "APU_DECLARE_EXPORT;APR_DECLARE_IMPORT;XML_STATIC;WINNT")
-+else()
++else(BUILD_SHARED_LIBS)
ADD_LIBRARY(aprutil-1 STATIC ${APR_SOURCES} ${APR_PUBLIC_HEADERS_GENERATED})
SET(install_targets ${install_targets} aprutil-1)
TARGET_LINK_LIBRARIES(aprutil-1 ${APR_LIBRARIES} ${XMLLIB_LIBRARIES})
SET_TARGET_PROPERTIES(aprutil-1 PROPERTIES COMPILE_DEFINITIONS "APU_DECLARE_STATIC;APR_DECLARE_STATIC;APU_DSO_MODULE_BUILD;XML_STATIC")
-+endif()
-
+-
++endif(BUILD_SHARED_LIBS)
++
+if(BUILD_SHARED_LIBS)
IF(APU_HAVE_CRYPTO)
IF(NOT OPENSSL_FOUND)
MESSAGE(FATAL_ERROR "Only OpenSSL-based crypto is currently implemented in the cmake build")
-@@ -270,7 +275,7 @@ IF(APU_HAVE_ODBC)
+@@ -249,7 +254,7 @@ IF(APU_HAVE_CRYPTO)
+ SET(install_bin_pdb ${install_bin_pdb} ${PROJECT_BINARY_DIR}/apr_crypto_openssl-1.pdb)
+ SET_TARGET_PROPERTIES(apr_crypto_openssl-1 PROPERTIES INCLUDE_DIRECTORIES "${APR_INCLUDE_DIRECTORIES};${OPENSSL_INCLUDE_DIR}")
+ SET_TARGET_PROPERTIES(apr_crypto_openssl-1 PROPERTIES COMPILE_DEFINITIONS "WINNT")
+- SET_TARGET_PROPERTIES(apr_crypto_openssl-1 PROPERTIES COMPILE_FLAGS "-DAPR_DECLARE_EXPORT=1 -DAPU_DECLARE_EXPORT=1 -DDLL_NAME=apr_crypto_openssl")
++ SET_TARGET_PROPERTIES(apr_crypto_openssl-1 PROPERTIES COMPILE_FLAGS "-DAPR_DECLARE_IMPORT -DAPU_DECLARE_IMPORT -DDLL_NAME=apr_crypto_openssl")
+ TARGET_LINK_LIBRARIES(apr_crypto_openssl-1 libaprutil-1 ${APR_LIBRARIES} ${OPENSSL_LIBRARIES})
+ ENDIF()
+
+@@ -260,8 +265,8 @@ IF(APU_HAVE_ODBC)
+ SET(dbd_drivers ${dbd_drivers} odbc)
+ TARGET_LINK_LIBRARIES(apr_dbd_odbc-1 libaprutil-1 ${APR_LIBRARIES} odbc32 odbccp32)
+ SET_PROPERTY(TARGET apr_dbd_odbc-1 APPEND PROPERTY LINK_FLAGS /export:apr_dbd_odbc_driver)
+- SET_TARGET_PROPERTIES(apr_dbd_odbc-1 PROPERTIES COMPILE_DEFINITIONS "APU_HAVE_ODBC;HAVE_SQL_H;APU_DECLARE_EXPORT;APR_DECLARE_EXPORT;APU_DSO_MODULE_BUILD;WINNT")
+- SET_TARGET_PROPERTIES(apr_dbd_odbc-1 PROPERTIES COMPILE_FLAGS "-DAPR_DECLARE_EXPORT=1 -DAPU_DECLARE_EXPORT=1 -DDLL_NAME=apr_dbd_odbc")
++ SET_TARGET_PROPERTIES(apr_dbd_odbc-1 PROPERTIES COMPILE_DEFINITIONS "APU_HAVE_ODBC;HAVE_SQL_H;APU_DECLARE_IMPORT;APR_DECLARE_IMPORT;APU_DSO_MODULE_BUILD;WINNT")
++ SET_TARGET_PROPERTIES(apr_dbd_odbc-1 PROPERTIES COMPILE_FLAGS "-DAPR_DECLARE_IMPORT -DAPU_DECLARE_IMPORT -DDLL_NAME=apr_dbd_odbc")
ENDIF()
IF(APR_HAS_LDAP)
-- ADD_LIBRARY(apr_ldap-1 SHARED ldap/apr_ldap_init.c ldap/apr_ldap_option.c
-+ ADD_LIBRARY(apr_ldap-1 SHARED ldap/apr_ldap_init.c ldap/apr_ldap_option.c
- ldap/apr_ldap_rebind.c libaprutil.rc)
- SET(install_targets ${install_targets} apr_ldap-1)
+@@ -271,11 +276,12 @@ IF(APR_HAS_LDAP)
SET(install_bin_pdb ${install_bin_pdb} ${PROJECT_BINARY_DIR}/apr_ldap-1.pdb)
-@@ -281,6 +286,7 @@ IF(APR_HAS_LDAP)
+ TARGET_LINK_LIBRARIES(apr_ldap-1 libaprutil-1 ${APR_LIBRARIES} ${LDAP_LIBRARIES})
+ SET_TARGET_PROPERTIES(apr_ldap-1 PROPERTIES COMPILE_DEFINITIONS "WINNT")
+- SET_TARGET_PROPERTIES(apr_ldap-1 PROPERTIES COMPILE_FLAGS "-DAPR_DECLARE_EXPORT=1 -DAPU_DECLARE_EXPORT=1 -DDLL_NAME=apr_ldap")
++ SET_TARGET_PROPERTIES(apr_ldap-1 PROPERTIES COMPILE_FLAGS "-DAPR_DECLARE_IMPORT -DAPU_DECLARE_IMPORT -DDLL_NAME=apr_ldap")
+ SET(apr_ldap_libraries apr_ldap-1)
ELSE()
SET(apr_ldap_libraries)
ENDIF()
-+endif()
++endif(BUILD_SHARED_LIBS)
IF(APR_BUILD_TESTAPR)
ENABLE_TESTING()
-@@ -288,13 +294,13 @@ IF(APR_BUILD_TESTAPR)
- ADD_CUSTOM_TARGET(check COMMAND ${CMAKE_CTEST_COMMAND} --verbose)
-
- # copy data files to build directory so that we can run programs from there
-- EXECUTE_PROCESS(COMMAND ${CMAKE_COMMAND} -E make_directory
-+ EXECUTE_PROCESS(COMMAND ${CMAKE_COMMAND} -E make_directory
- ${PROJECT_BINARY_DIR}/data)
-- EXECUTE_PROCESS(COMMAND ${CMAKE_COMMAND} -E copy_if_different
-+ EXECUTE_PROCESS(COMMAND ${CMAKE_COMMAND} -E copy_if_different
+@@ -289,7 +295,7 @@ IF(APR_BUILD_TESTAPR)
${PROJECT_SOURCE_DIR}/test/data/billion-laughs.xml
${PROJECT_BINARY_DIR}/data/billion-laughs.xml)
@@ -104,7 +92,7 @@ index 43fdf49..56424c3 100644
SET(whichapr aprutil-1)
SET(apiflag "-DAPR_DECLARE_STATIC -DAPU_DECLARE_STATIC")
ELSE()
-@@ -330,13 +336,15 @@ INSTALL(TARGETS ${install_targets}
+@@ -325,13 +331,15 @@ INSTALL(TARGETS ${install_targets}
ARCHIVE DESTINATION lib
)
@@ -113,11 +101,11 @@ index 43fdf49..56424c3 100644
- DESTINATION bin
- CONFIGURATIONS RelWithDebInfo Debug)
-ENDIF()
-+# IF(INSTALL_PDB)
-+# INSTALL(FILES ${install_bin_pdb}
-+# DESTINATION bin
-+# CONFIGURATIONS RelWithDebInfo Debug)
-+# ENDIF()
++#IF(INSTALL_PDB)
++# INSTALL(FILES ${install_bin_pdb}
++# DESTINATION bin
++# CONFIGURATIONS RelWithDebInfo Debug)
++#ENDIF()
-INSTALL(FILES ${APR_PUBLIC_HEADERS_STATIC} ${APR_PUBLIC_HEADERS_GENERATED} DESTINATION include)
+if(NOT DISABLE_INSTALL_HEADERS)
diff --git a/ports/apr/CONTROL b/ports/apr/CONTROL
index 714022691..9786e3d9f 100644
--- a/ports/apr/CONTROL
+++ b/ports/apr/CONTROL
@@ -1,5 +1,5 @@
Source: apr
-Version: 1.6.5-3
+Version: 1.7.0
Homepage: https://apr.apache.org/
Description: The Apache Portable Runtime (APR) is a C library that forms a system portability layer that covers many operating systems.
Supports: !uwp
diff --git a/ports/apr/portfile.cmake b/ports/apr/portfile.cmake
index a1572077b..ede0eb9fc 100644
--- a/ports/apr/portfile.cmake
+++ b/ports/apr/portfile.cmake
@@ -2,14 +2,12 @@ if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore")
message(FATAL_ERROR "${PORT} does not currently support UWP")
endif()
-include(vcpkg_common_functions)
-
-set(VERSION 1.6.5)
+set(VERSION 1.7.0)
vcpkg_download_distfile(ARCHIVE
URLS "https://www.apache.org/dist/apr/apr-${VERSION}.tar.bz2"
FILENAME "apr-${VERSION}.tar.bz2"
- SHA512 d3511e320457b5531f565813e626e7941f6b82864852db6aa03dd298a65dbccdcdc4bd580f5314f8be45d268388edab25efe88cf8340b7d2897a4dbe9d0a41fc
+ SHA512 3dc42d5caf17aab16f5c154080f020d5aed761e22db4c5f6506917f6bfd2bf8becfb40af919042bd4ce1077d5de74aa666f5edfba7f275efba78e8893c115148
)
vcpkg_extract_source_archive_ex(
@@ -17,46 +15,69 @@ vcpkg_extract_source_archive_ex(
ARCHIVE ${ARCHIVE}
)
-if("private-headers" IN_LIST FEATURES)
- set(INSTALL_PRIVATE_H ON)
-else()
- set(INSTALL_PRIVATE_H OFF)
-endif()
+if (VCPKG_TARGET_IS_WINDOWS)
+ vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
+ private-headers INSTALL_PRIVATE_H
+ )
-vcpkg_configure_cmake(
- SOURCE_PATH ${SOURCE_PATH}
- PREFER_NINJA
- OPTIONS
- -DINSTALL_PDB=OFF
- -DMIN_WINDOWS_VER=Windows7
- -DAPR_HAVE_IPV6=ON
- -DAPR_INSTALL_PRIVATE_H=${INSTALL_PRIVATE_H}
- # OPTIONS -DUSE_THIS_IN_ALL_BUILDS=1 -DUSE_THIS_TOO=2
- # OPTIONS_RELEASE -DOPTIMIZE=1
- # OPTIONS_DEBUG -DDEBUGGABLE=1
-)
+ vcpkg_configure_cmake(
+ SOURCE_PATH ${SOURCE_PATH}
+ PREFER_NINJA
+ OPTIONS
+ -DINSTALL_PDB=OFF
+ -DMIN_WINDOWS_VER=Windows7
+ -DAPR_HAVE_IPV6=ON
+ -DAPR_INSTALL_PRIVATE_H=${INSTALL_PRIVATE_H}
+ ${FEATURE_OPTIONS}
+ )
-vcpkg_install_cmake()
+ vcpkg_install_cmake()
-# There is no way to suppress installation of the headers in debug builds.
-file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
+ # There is no way to suppress installation of the headers in debug builds.
+ file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
-# Both dynamic and static are built, so keep only the one needed
-if(VCPKG_LIBRARY_LINKAGE STREQUAL dynamic)
- file(REMOVE ${CURRENT_PACKAGES_DIR}/lib/apr-1.lib
- ${CURRENT_PACKAGES_DIR}/lib/aprapp-1.lib
- ${CURRENT_PACKAGES_DIR}/debug/lib/apr-1.lib
- ${CURRENT_PACKAGES_DIR}/debug/lib/aprapp-1.lib)
+ # Both dynamic and static are built, so keep only the one needed
+ if(VCPKG_LIBRARY_LINKAGE STREQUAL dynamic)
+ file(REMOVE ${CURRENT_PACKAGES_DIR}/lib/apr-1.lib
+ ${CURRENT_PACKAGES_DIR}/lib/aprapp-1.lib
+ ${CURRENT_PACKAGES_DIR}/debug/lib/apr-1.lib
+ ${CURRENT_PACKAGES_DIR}/debug/lib/aprapp-1.lib)
+ else()
+ file(REMOVE ${CURRENT_PACKAGES_DIR}/lib/libapr-1.lib
+ ${CURRENT_PACKAGES_DIR}/lib/libaprapp-1.lib
+ ${CURRENT_PACKAGES_DIR}/debug/lib/libapr-1.lib
+ ${CURRENT_PACKAGES_DIR}/debug/lib/libaprapp-1.lib)
+ file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin)
+ endif()
+
+ vcpkg_copy_pdbs()
else()
- file(REMOVE ${CURRENT_PACKAGES_DIR}/lib/libapr-1.lib
- ${CURRENT_PACKAGES_DIR}/lib/libaprapp-1.lib
- ${CURRENT_PACKAGES_DIR}/debug/lib/libapr-1.lib
- ${CURRENT_PACKAGES_DIR}/debug/lib/libaprapp-1.lib)
- file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin)
+ # To cross-compile you will need a triplet file that locates the tool chain and sets --host and --cache parameters of "./configure".
+ # The ${VCPKG_PLATFORM_TOOLSET}.cache file must have been generated on the targeted host using "./configure -C".
+ # For example, to target aarch64-linux-gnu, triplets/aarch64-linux-gnu.cmake should contain (beyond the standard content):
+ # set(VCPKG_PLATFORM_TOOLSET aarch64-linux-gnu)
+ # set(VCPKG_CHAINLOAD_TOOLCHAIN_FILE ${MY_CROSS_DIR}/cmake/Toolchain-${VCPKG_PLATFORM_TOOLSET}.cmake)
+ # set(CONFIGURE_PARAMETER_1 --host=${VCPKG_PLATFORM_TOOLSET})
+ # set(CONFIGURE_PARAMETER_2 --cache-file=${MY_CROSS_DIR}/autoconf/${VCPKG_PLATFORM_TOOLSET}.cache)
+ if(CONFIGURE_PARAMETER_1)
+ message(STATUS "Configuring apr with ${CONFIGURE_PARAMETER_1} ${CONFIGURE_PARAMETER_2} ${CONFIGURE_PARAMETER_3}")
+ else()
+ message(STATUS "Configuring apr")
+ endif()
+ vcpkg_configure_make(
+ SOURCE_PATH "${SOURCE_PATH}"
+ NO_DEBUG
+ OPTIONS
+ "--prefix=${CURRENT_INSTALLED_DIR}"
+ "${CONFIGURE_PARAMETER_1}"
+ "${CONFIGURE_PARAMETER_2}"
+ "${CONFIGURE_PARAMETER_3}"
+ )
+
+ vcpkg_install_make()
+
endif()
# Handle copyright
-file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/apr)
-file(RENAME ${CURRENT_PACKAGES_DIR}/share/apr/LICENSE ${CURRENT_PACKAGES_DIR}/share/apr/copyright)
+file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)
-vcpkg_copy_pdbs()
diff --git a/scripts/ci.baseline.txt b/scripts/ci.baseline.txt
index b473ec050..de3112d21 100644
--- a/scripts/ci.baseline.txt
+++ b/scripts/ci.baseline.txt
@@ -53,6 +53,8 @@ ace:x64-windows-static=fail
ace:x64-windows=fail
ace:x86-windows=fail
activemq-cpp:x64-windows-static=fail
+activemq-cpp:x64-linux=fail
+activemq-cpp:x64-osx=fail
akali:x64-uwp=fail
akali:arm-uwp=fail
akali:arm64-windows=fail
@@ -60,6 +62,8 @@ alac:arm-uwp=fail
alac:x64-uwp=fail
alembic:x64-osx=fail
alembic:x64-windows-static=fail
+aliyun-oss-c-sdk:x64-linux=fail
+aliyun-oss-c-sdk:x64-osx=fail
ampl-mp:arm64-windows=fail
ampl-mp:arm-uwp=fail
ampl-mp:x64-uwp=fail
@@ -71,11 +75,13 @@ antlr4:x64-uwp=fail
anyrpc:arm-uwp=ignore
anyrpc:x86-windows=ignore
anyrpc:x64-windows-static=ignore
-apr:arm64-windows=fail
apr:arm-uwp=fail
+apr:x64-uwp=fail
+# Static builds fail beacuase apr-1-config is installed in bin
apr:x64-linux=fail
apr:x64-osx=fail
-apr:x64-uwp=fail
+# Cross compiling CI machine cannot run gen_test_char to generate apr_escape_test_char.h
+apr:arm64-windows=fail
argtable2:arm-uwp=fail
argtable2:x64-uwp=fail
arrow:arm64-windows=fail
@@ -1263,6 +1269,8 @@ opengl:arm-uwp=fail
openimageio:x64-linux=ignore
openmama:x64-windows=ignore
openmama:x86-windows=ignore
+openmama:x64-linux=fail
+openmama:x64-osx=fail
openmesh:arm64-windows=fail
openmesh:arm-uwp=fail
openmesh:x64-uwp=fail