From 6cd8230920dd644691a232836de84fa7de66b9e4 Mon Sep 17 00:00:00 2001 From: Oleg Subbotin Date: Thu, 30 Mar 2023 16:22:45 -0400 Subject: [PATCH 1/7] Update bde port Disable windows and arm, at least for now It'd be great to enable arm64-osx (macos?) soon --- ports/bde/portfile.cmake | 128 +++++++++++---------------------------- ports/bde/vcpkg.json | 21 ++++++- versions/b-/bde.json | 31 +--------- versions/baseline.json | 4 +- 4 files changed, 60 insertions(+), 124 deletions(-) diff --git a/ports/bde/portfile.cmake b/ports/bde/portfile.cmake index 63d4a8422529cb..b1da6aee470557 100644 --- a/ports/bde/portfile.cmake +++ b/ports/bde/portfile.cmake @@ -1,31 +1,31 @@ vcpkg_check_linkage(ONLY_STATIC_LIBRARY) -set(CONFIGURE_COMMON_ARGS ${CONFIGURE_COMMON_ARGS} --library-type=static) -set(BDE_VERSION 3.2.0.0) -set(BDE_TOOLS_VERSION 1.x) +set(BDE_VERSION 3.117.0.0) +set(BDE_TOOLS_VERSION 3.117.0.0) # Paths used in build set(SOURCE_PATH_DEBUG ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/bde-${BDE_VERSION}) set(SOURCE_PATH_RELEASE ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/bde-${BDE_VERSION}) -# Acquire Python 2 and add it to PATH -vcpkg_find_acquire_program(PYTHON2) -get_filename_component(PYTHON2_EXE_PATH ${PYTHON2} DIRECTORY) +# Acquire Python and add it to PATH +vcpkg_find_acquire_program(PYTHON3) +get_filename_component(PYTHON3_EXE_PATH ${PYTHON3} DIRECTORY) # Acquire BDE Tools and add them to PATH vcpkg_from_github( OUT_SOURCE_PATH TOOLS_PATH REPO "bloomberg/bde-tools" - REF d4b1a7670829228f4ec81ecdccc598ce03ae8e80 - SHA512 80af734c080adb225d5369157301ae0af18e02b1912351e34d23f5f2ba4e19f9ae2b5a367923f036330c9f9afd11a90cdf12680eb3e59b4297a312a1b713f17f - HEAD_REF master + REF 3.117.0.0 + SHA512 3c39da8d1ea40459e36e11ada93cc2821ae1b16a831f93cccab463996394a400cc08bb1654642eae1aa5187f139d7fb80c4729e464051eee182133eb8a74158d + HEAD_REF 3.117.0.0 ) + message(STATUS "Configure bde-tools-v${BDE_TOOLS_VERSION}") if(VCPKG_CMAKE_SYSTEM_NAME) - set(ENV{PATH} "$ENV{PATH}:${PYTHON2_EXE_PATH}") + set(ENV{PATH} "$ENV{PATH}:${PYTHON3_EXE_PATH}") set(ENV{PATH} "$ENV{PATH}:${TOOLS_PATH}/bin") else() - set(ENV{PATH} "$ENV{PATH};${PYTHON2_EXE_PATH}") + set(ENV{PATH} "$ENV{PATH};${PYTHON3_EXE_PATH}") set(ENV{PATH} "$ENV{PATH};${TOOLS_PATH}/bin") endif() @@ -33,101 +33,47 @@ endif() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO "bloomberg/bde" - REF 3720d132d0879f19b9084cca62ebc75f1f24e1a3 - SHA512 234ebb71997f5b7d3951584235ead10f977689cef323ae1c198629a6b1995b1481d8a1515d827c46df10209bdc66e1f3cc7780dafee9ca0ff4172be47c460d78 - HEAD_REF master + REF 3.117.0.0 + SHA512 810b4a06a08739dcd990751dd543aa7dc58355f9d64a7c96ef0cf45c81501946434db42ad5bcf5d16110d5a463586b587ce09a446136e824298f39a8a871b490 + HEAD_REF 3.117.0.0 ) # Clean up previous builds file(REMOVE_RECURSE ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg) -# Identify waf executable and calculate configure args -if(VCPKG_CMAKE_SYSTEM_NAME) - set(WAF_COMMAND waf) -else() - set(WAF_COMMAND waf.bat) -endif() -set(CONFIGURE_COMMON_ARGS ${CONFIGURE_COMMON_ARGS} --use-flat-include-dir) -if(VCPKG_TARGET_ARCHITECTURE STREQUAL "x86") - set(CONFIGURE_COMMON_ARGS ${CONFIGURE_COMMON_ARGS} --abi-bits=32) -elseif(VCPKG_TARGET_ARCHITECTURE STREQUAL "x64") - set(CONFIGURE_COMMON_ARGS ${CONFIGURE_COMMON_ARGS} --abi-bits=64) -else() - message(FATAL_ERROR "Unsupported target architecture: ${VCPKG_TARGET_ARCHITECTURE}") -endif() -if(VCPKG_TARGET_IS_WINDOWS) - set(CONFIGURE_COMMON_ARGS ${CONFIGURE_COMMON_ARGS} --msvc-runtime-type=static) -else() - set(ENV{CFLAGS} "$ENV{CFLAGS} -Wno-error=implicit-function-declaration") -endif() - -# Configure debug -message(STATUS "Configuring ${TARGET_TRIPLET}-dbg") -vcpkg_execute_required_process( - COMMAND ${WAF_COMMAND} configure ${CONFIGURE_COMMON_ARGS} - --prefix=${CURRENT_PACKAGES_DIR}/debug --out=${SOURCE_PATH_DEBUG} - --build-type=debug - WORKING_DIRECTORY ${SOURCE_PATH} - LOGNAME configure-${TARGET_TRIPLET}--dbg +vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS + FEATURES + cxx17 BDE_USE_CXX17 ) -message(STATUS "Configuring ${TARGET_TRIPLET}-dbg done") -# Build debug -message(STATUS "Building ${TARGET_TRIPLET}-dbg") -vcpkg_execute_required_process( - COMMAND ${WAF_COMMAND} build - WORKING_DIRECTORY ${SOURCE_PATH} - LOGNAME build-${TARGET_TRIPLET}--dbg -) -message(STATUS "Building ${TARGET_TRIPLET}-dbg done") - -# Install debug -message(STATUS "Installing ${TARGET_TRIPLET}-dbg") -vcpkg_execute_required_process( - COMMAND ${WAF_COMMAND} install - WORKING_DIRECTORY ${SOURCE_PATH} - LOGNAME install-${TARGET_TRIPLET}--dbg -) -# Include files should not be duplicated -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) -# pkg-config files should point to correct include directory -file(GLOB PC_FILES "${CURRENT_PACKAGES_DIR}/debug/lib/pkgconfig/*.pc") -foreach(PC_FILE_NAME ${PC_FILES}) - file(READ "${PC_FILE_NAME}" _contents) - string(REPLACE "includedir=\${prefix}/include" "includedir=\${prefix}/../include" _contents "${_contents}") - file(WRITE "${PC_FILE_NAME}" "${_contents}") -endforeach() -message(STATUS "Installing ${TARGET_TRIPLET}-dbg done") +if (BDE_USE_CXX17) + set(BDE_OPTIONS "-DBDE_BUILD_TARGET_CPP17=ON" "-DCMAKE_CXX_STANDARD=17" "-DCMAKE_CXX_STANDARD_REQUIRED=ON" "-DCMAKE_CXX_EXTENSIONS=OFF") +endif () # Configure release -message(STATUS "Configuring ${TARGET_TRIPLET}-rel") -vcpkg_execute_required_process( - COMMAND ${WAF_COMMAND} configure ${CONFIGURE_COMMON_ARGS} - --prefix=${CURRENT_PACKAGES_DIR} --out=${SOURCE_PATH_RELEASE} - --build-type=release - WORKING_DIRECTORY ${SOURCE_PATH} - LOGNAME configure-${TARGET_TRIPLET}--rel +if (NOT VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release") + list(APPEND BDE_OPTIONS "-DBDE_BUILD_TARGET_OPT=1") +else() + list(APPEND BDE_OPTIONS "-DBDE_BUILD_TARGET_DBG=1") +endif() + +vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}" + WINDOWS_USE_MSBUILD + OPTIONS + ${BDE_OPTIONS} + -DBBS_BUILD_SYSTEM=1 + -DBdeBuildSystem_DIR:PATH=${TOOLS_PATH}/BdeBuildSystem ) -message(STATUS "Configuring ${TARGET_TRIPLET}-rel done") # Build release -message(STATUS "Building ${TARGET_TRIPLET}-rel") -vcpkg_execute_required_process( - COMMAND ${WAF_COMMAND} build - WORKING_DIRECTORY ${SOURCE_PATH} - LOGNAME build-${TARGET_TRIPLET}--rel -) -message(STATUS "Building ${TARGET_TRIPLET}-rel done") +vcpkg_cmake_build() # Install release -message(STATUS "Installing ${TARGET_TRIPLET}-rel") -vcpkg_execute_required_process( - COMMAND ${WAF_COMMAND} install - WORKING_DIRECTORY ${SOURCE_PATH} - LOGNAME install-${TARGET_TRIPLET}--rel -) -message(STATUS "Installing ${TARGET_TRIPLET}-rel done") +vcpkg_cmake_install() +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include") +vcpkg_cmake_config_fixup(CONFIG_PATH lib/cmake/) # Handle copyright file(INSTALL ${SOURCE_PATH}/LICENSE diff --git a/ports/bde/vcpkg.json b/ports/bde/vcpkg.json index b4e77488fd083c..7fff93b8ab9e30 100644 --- a/ports/bde/vcpkg.json +++ b/ports/bde/vcpkg.json @@ -1,7 +1,22 @@ { "name": "bde", - "version": "3.2.0.0", - "port-version": 5, + "version": "3.117.0.0", + "port-version": 7, "description": "Basic Development Environment - a set of foundational C++ libraries used at Bloomberg.", - "supports": "!windows & !arm" + "supports": "!windows & !arm", + "dependencies": [ + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + } + ], + "features": { + "cxx17": { + "description": "Enable compiler C++17." + } + } } diff --git a/versions/b-/bde.json b/versions/b-/bde.json index 5d27e439a963b9..323c78833bf964 100644 --- a/versions/b-/bde.json +++ b/versions/b-/bde.json @@ -1,34 +1,9 @@ { "versions": [ { - "git-tree": "7ce72f2854f44eee806e6e5f3e97d29897549787", - "version": "3.2.0.0", - "port-version": 5 - }, - { - "git-tree": "60082ad73e5c9fb9828041183b026fc15e453218", - "version-string": "3.2.0.0", - "port-version": 4 - }, - { - "git-tree": "b940e98efec0d1f48f2edfe2027d2bce251ec7a8", - "version-string": "3.2.0.0", - "port-version": 3 - }, - { - "git-tree": "b1182a3ba7b24edd58e7471796c1f157c9ff402c", - "version-string": "3.2.0.0", - "port-version": 2 - }, - { - "git-tree": "d25bfe5e576d146569520871134a5c6fecb16a96", - "version-string": "3.2.0.0-1", - "port-version": 0 - }, - { - "git-tree": "0ee2aa4b9efbf8de1fc277f0064e6022fbfac778", - "version-string": "3.2.0.0", - "port-version": 0 + "version": "3.117.0.0", + "port-version": 7, + "git-tree": "a0f1c365cbd5416461e4ce0d5fcae7b30177a9c0" } ] } diff --git a/versions/baseline.json b/versions/baseline.json index 0692e59f36d3bc..becd0fa11a64d1 100644 --- a/versions/baseline.json +++ b/versions/baseline.json @@ -493,8 +493,8 @@ "port-version": 0 }, "bde": { - "baseline": "3.2.0.0", - "port-version": 5 + "baseline": "3.117.0.0", + "port-version": 7 }, "bdwgc": { "baseline": "8.2.2", From f8a6675fbed5fb886300e6bd2e13a7bfafa0f94c Mon Sep 17 00:00:00 2001 From: Adam Casey Date: Fri, 26 May 2023 12:49:14 +0100 Subject: [PATCH 2/7] Update version in bde.json --- versions/b-/bde.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/versions/b-/bde.json b/versions/b-/bde.json index 323c78833bf964..fe8467cbd115e9 100644 --- a/versions/b-/bde.json +++ b/versions/b-/bde.json @@ -1,9 +1,9 @@ { "versions": [ { + "git-tree": "2f927afdb589cbdf4e2886eb046feef153f3dfeb", "version": "3.117.0.0", - "port-version": 7, - "git-tree": "a0f1c365cbd5416461e4ce0d5fcae7b30177a9c0" + "port-version": 7 } ] } From 3f357f8336e1293b01d4059f2a28f1dd01ed0ae2 Mon Sep 17 00:00:00 2001 From: Billy Robert O'Neal III Date: Fri, 26 May 2023 10:28:27 -0700 Subject: [PATCH 3/7] Remove ci.baseline.txt skip. --- scripts/ci.baseline.txt | 3 --- 1 file changed, 3 deletions(-) diff --git a/scripts/ci.baseline.txt b/scripts/ci.baseline.txt index 26398672777a09..b26b354e50c043 100644 --- a/scripts/ci.baseline.txt +++ b/scripts/ci.baseline.txt @@ -71,9 +71,6 @@ azure-identity-cpp:x64-android=fail backward-cpp:arm-neon-android=fail backward-cpp:arm64-android=fail backward-cpp:x64-android=fail -bde:x64-android=fail -# broken when `python` is python3, https://github.com/microsoft/vcpkg/issues/18937 -bde:x64-linux=fail bento4:arm-neon-android=fail berkeleydb:arm-neon-android=fail berkeleydb:arm64-android=fail From 742d743485efde340f6d49192cd8c9be02c64284 Mon Sep 17 00:00:00 2001 From: Billy Robert O'Neal III Date: Fri, 26 May 2023 10:29:30 -0700 Subject: [PATCH 4/7] Fix version database. --- versions/b-/bde.json | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/versions/b-/bde.json b/versions/b-/bde.json index fe8467cbd115e9..b741c5c0230d43 100644 --- a/versions/b-/bde.json +++ b/versions/b-/bde.json @@ -4,6 +4,36 @@ "git-tree": "2f927afdb589cbdf4e2886eb046feef153f3dfeb", "version": "3.117.0.0", "port-version": 7 + }, + { + "git-tree": "7ce72f2854f44eee806e6e5f3e97d29897549787", + "version": "3.2.0.0", + "port-version": 5 + }, + { + "git-tree": "60082ad73e5c9fb9828041183b026fc15e453218", + "version-string": "3.2.0.0", + "port-version": 4 + }, + { + "git-tree": "b940e98efec0d1f48f2edfe2027d2bce251ec7a8", + "version-string": "3.2.0.0", + "port-version": 3 + }, + { + "git-tree": "b1182a3ba7b24edd58e7471796c1f157c9ff402c", + "version-string": "3.2.0.0", + "port-version": 2 + }, + { + "git-tree": "d25bfe5e576d146569520871134a5c6fecb16a96", + "version-string": "3.2.0.0-1", + "port-version": 0 + }, + { + "git-tree": "0ee2aa4b9efbf8de1fc277f0064e6022fbfac778", + "version-string": "3.2.0.0", + "port-version": 0 } ] } From 5a9ac9c01a78ab9568838b3e7bb3cec1c2cf00e5 Mon Sep 17 00:00:00 2001 From: Billy Robert O'Neal III Date: Fri, 26 May 2023 10:30:17 -0700 Subject: [PATCH 5/7] fix port-version --- ports/bde/vcpkg.json | 1 - versions/b-/bde.json | 4 ++-- versions/baseline.json | 2 +- 3 files changed, 3 insertions(+), 4 deletions(-) diff --git a/ports/bde/vcpkg.json b/ports/bde/vcpkg.json index 7fff93b8ab9e30..eb725e6e55b02b 100644 --- a/ports/bde/vcpkg.json +++ b/ports/bde/vcpkg.json @@ -1,7 +1,6 @@ { "name": "bde", "version": "3.117.0.0", - "port-version": 7, "description": "Basic Development Environment - a set of foundational C++ libraries used at Bloomberg.", "supports": "!windows & !arm", "dependencies": [ diff --git a/versions/b-/bde.json b/versions/b-/bde.json index b741c5c0230d43..47ae6c77d7de8c 100644 --- a/versions/b-/bde.json +++ b/versions/b-/bde.json @@ -1,9 +1,9 @@ { "versions": [ { - "git-tree": "2f927afdb589cbdf4e2886eb046feef153f3dfeb", + "git-tree": "d1d4edb4c8f1d945cc02063d71f336f4a4ccd568", "version": "3.117.0.0", - "port-version": 7 + "port-version": 0 }, { "git-tree": "7ce72f2854f44eee806e6e5f3e97d29897549787", diff --git a/versions/baseline.json b/versions/baseline.json index becd0fa11a64d1..74864fcd1ebbca 100644 --- a/versions/baseline.json +++ b/versions/baseline.json @@ -494,7 +494,7 @@ }, "bde": { "baseline": "3.117.0.0", - "port-version": 7 + "port-version": 0 }, "bdwgc": { "baseline": "8.2.2", From 42c9919f9ff5e16fc466b7f72968ab798aa000fa Mon Sep 17 00:00:00 2001 From: Adam Casey Date: Tue, 30 May 2023 11:16:31 +0100 Subject: [PATCH 6/7] Stop building for android I don't specifically know why this wouldn't work, but let's fix that another time --- ports/bde/vcpkg.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ports/bde/vcpkg.json b/ports/bde/vcpkg.json index eb725e6e55b02b..b7e054d17939e7 100644 --- a/ports/bde/vcpkg.json +++ b/ports/bde/vcpkg.json @@ -2,7 +2,7 @@ "name": "bde", "version": "3.117.0.0", "description": "Basic Development Environment - a set of foundational C++ libraries used at Bloomberg.", - "supports": "!windows & !arm", + "supports": "!windows & !arm & !android", "dependencies": [ { "name": "vcpkg-cmake", From 6ff3dc46e725dd374fad450266106ed69fbd7b10 Mon Sep 17 00:00:00 2001 From: Adam Casey Date: Tue, 30 May 2023 11:17:04 +0100 Subject: [PATCH 7/7] Update version --- versions/b-/bde.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/versions/b-/bde.json b/versions/b-/bde.json index 47ae6c77d7de8c..af6774f831e942 100644 --- a/versions/b-/bde.json +++ b/versions/b-/bde.json @@ -1,7 +1,7 @@ { "versions": [ { - "git-tree": "d1d4edb4c8f1d945cc02063d71f336f4a4ccd568", + "git-tree": "4e2c03aa72390fcf5365824064f5276c855a3787", "version": "3.117.0.0", "port-version": 0 },