diff --git a/ports/bde/fix-bdlar-target.patch b/ports/bde/fix-bdlar-target.patch new file mode 100644 index 0000000000..96253f6e7c --- /dev/null +++ b/ports/bde/fix-bdlar-target.patch @@ -0,0 +1,11 @@ +diff --git a/groups/CMakeLists.txt b/groups/CMakeLists.txt +index 7ee0b81..5346c7b 100644 +--- a/groups/CMakeLists.txt ++++ b/groups/CMakeLists.txt +@@ -1,3 +1,6 @@ ++if(MSVC) ++ add_compile_options(/bigobj) ++endif() + add_subdirectory(bsl) + add_subdirectory(bdl) + add_subdirectory(bal) diff --git a/ports/bde/portfile.cmake b/ports/bde/portfile.cmake index 939161b922..42fce0b4c8 100644 --- a/ports/bde/portfile.cmake +++ b/ports/bde/portfile.cmake @@ -5,12 +5,12 @@ vcpkg_find_acquire_program(PYTHON3) get_filename_component(PYTHON3_EXE_PATH ${PYTHON3} DIRECTORY) # Acquire BDE Tools and add them to PATH -set (BDE_TOOLS_VER 4.13.0.0) +set (BDE_TOOLS_VER "${VERSION}") vcpkg_from_github( OUT_SOURCE_PATH TOOLS_PATH REPO "bloomberg/bde-tools" REF "${BDE_TOOLS_VER}" - SHA512 6a0eec25889a33fb0302af735ed2fcce38afa5ad2be9202d2589d76509f9fd85f9ddc0a73147df1b6471543f51df3b5b40e8c08d378ab1335d2703d89b5921e6 + SHA512 c1ec488c6cd4e4859e916aab52d809a3cb292e933dbf3e8cf662d60617956c44eceec1853b2d310d587dcb0fe70eba74271ca2d2a2d06e06393852acae9311ab HEAD_REF main ) @@ -23,8 +23,9 @@ vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO "bloomberg/bde" REF "${VERSION}" - SHA512 d6d7e453cf22f6e28f3513b818ab3f4b597db3e1d109587e0e0a8957338483c475494f55d953dfe86de507a6c292d1492d9cbb3c8be359044ef368fe80595448 + SHA512 f9d7433fc3a7ebf1e2a1fddab850b6f10f7ced78aec0e1f1e86c152187fcf2434846102cfb95621e95a22d8977f5d8af46deeef0400b8debba3511c6e6552882 HEAD_REF main + PATCHES fix-bdlar-target.patch use-vcpkg-pcre2.patch ) vcpkg_cmake_configure( @@ -35,6 +36,7 @@ vcpkg_cmake_configure( -DCMAKE_CXX_STANDARD_REQUIRED=ON -DCMAKE_CXX_EXTENSIONS=OFF -DBBS_BUILD_SYSTEM=1 + -DBDE_USE_EXTERNAL_PCRE2=1 "-DBdeBuildSystem_DIR:PATH=${TOOLS_PATH}/BdeBuildSystem" OPTIONS_RELEASE -DBDE_BUILD_TARGET_OPT=1 @@ -48,7 +50,7 @@ vcpkg_cmake_build() # Install release vcpkg_cmake_install() file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include") -list(APPEND SUBPACKAGES "ryu" "inteldfp" "pcre2" "s_baltst" "bsl" "bdl" "bal") +list(APPEND SUBPACKAGES "inteldfp" "s_baltst" "bsl" "bbryu" "bdl" "bbl" "bal") include(GNUInstallDirs) # needed for CMAKE_INSTALL_LIBDIR foreach(subpackage IN LISTS SUBPACKAGES) vcpkg_cmake_config_fixup(PACKAGE_NAME ${subpackage} CONFIG_PATH /${CMAKE_INSTALL_LIBDIR}/cmake/${subpackage} DO_NOT_DELETE_PARENT_CONFIG_PATH) diff --git a/ports/bde/use-vcpkg-pcre2.patch b/ports/bde/use-vcpkg-pcre2.patch new file mode 100644 index 0000000000..9ffb24e2cd --- /dev/null +++ b/ports/bde/use-vcpkg-pcre2.patch @@ -0,0 +1,40 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 07c22f5e6..df2761843 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -9,6 +9,12 @@ if(NOT BBS_BUILD_SYSTEM) + bbs_build_tests_with_all() + endif() + ++if (BDE_USE_EXTERNAL_PCRE2) ++ find_package(pcre2 CONFIG REQUIRED) ++ get_target_property(_pcre2_alias_target PCRE2::8BIT ALIASED_TARGET) ++ add_library(libpcre2-8 ALIAS "${_pcre2_alias_target}") ++endif() ++ + add_subdirectory(thirdparty) + add_subdirectory(groups) + add_subdirectory(standalones) +diff --git a/groups/bdl/bdlpcre/bdlpcre_regex.h b/groups/bdl/bdlpcre/bdlpcre_regex.h +index cd1c4a350..e67841c95 100644 +--- a/groups/bdl/bdlpcre/bdlpcre_regex.h ++++ b/groups/bdl/bdlpcre/bdlpcre_regex.h +@@ -660,7 +660,7 @@ BSLS_IDENT("$Id$ $CSID$") + #ifndef _PCRE2_H + #define PCRE2_CODE_UNIT_WIDTH 8 + #define PCRE2_STATIC +-#include ++#include + #endif + + #ifndef BDE_DONT_ALLOW_TRANSITIVE_INCLUDES +diff --git a/groups/bdl/group/bdl.dep b/groups/bdl/group/bdl.dep +index 91ec53004..c4e3d0e8a 100644 +--- a/groups/bdl/group/bdl.dep ++++ b/groups/bdl/group/bdl.dep +@@ -1,4 +1,4 @@ + bsl + # third-party + inteldfp +-pcre2 ++libpcre2-8 diff --git a/ports/bde/vcpkg.json b/ports/bde/vcpkg.json index 5d337a199d..796f4d9c95 100644 --- a/ports/bde/vcpkg.json +++ b/ports/bde/vcpkg.json @@ -1,13 +1,14 @@ { "$schema": "https://raw.githubusercontent.com/microsoft/vcpkg-tool/main/docs/vcpkg.schema.json", "name": "bde", - "version": "4.18.0.0", + "version": "4.36.0.0", "description": "Basic Development Environment - a set of foundational C++ libraries used at Bloomberg.", "homepage": "https://techatbloomberg.com/", "documentation": "https://bloomberg.github.io/bde/", "license": "Apache-2.0", "supports": "!android & !(arm64 & windows) & !uwp", "dependencies": [ + "pcre2", { "name": "vcpkg-cmake", "host": true diff --git a/versions/b-/bde.json b/versions/b-/bde.json index cb67d87ff5..e81bd2740e 100644 --- a/versions/b-/bde.json +++ b/versions/b-/bde.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "3bd5bb14040cc6181f1e2abeb2aca8aeaf967bca", + "version": "4.36.0.0", + "port-version": 0 + }, { "git-tree": "34499e736823b1b6b2fe34a37d9162ecab8e187c", "version": "4.18.0.0", diff --git a/versions/baseline.json b/versions/baseline.json index cf3e6a582e..5f884abd6c 100644 --- a/versions/baseline.json +++ b/versions/baseline.json @@ -661,7 +661,7 @@ "port-version": 0 }, "bde": { - "baseline": "4.18.0.0", + "baseline": "4.36.0.0", "port-version": 0 }, "bdwgc": {