[bde] Updated to 3.117.0 (#31961)

* Update bde port

Disable windows and arm, at least for now

It'd be great to enable arm64-osx (macos?) soon

* Update version in bde.json

* Remove ci.baseline.txt skip.

* Fix version database.

* fix port-version

* Stop building for android, osx

I don't specifically know why these don't work, but linux is the primary platform
so let's fix these another time

Also remove the cxx17 flag for now - we'll need to address this at some point
but for now this should satisfy the feature flag requirements.

* Review comments

* Remove WINDOWS_USE_MSBUILD

* Update versions

---------

Co-authored-by: Oleg Subbotin <osubbotin@bloomberg.net>
Co-authored-by: Billy Robert O'Neal III <bion@microsoft.com>
This commit is contained in:
Adam Casey 2023-07-07 17:25:07 +01:00 committed by GitHub
parent 6a93a1d2af
commit 88f5e897a7
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 49 additions and 116 deletions

View File

@ -1,133 +1,55 @@
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_TOOLS_VERSION "${VERSION}")
# 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 "${BDE_TOOLS_VERSION}"
SHA512 3c39da8d1ea40459e36e11ada93cc2821ae1b16a831f93cccab463996394a400cc08bb1654642eae1aa5187f139d7fb80c4729e464051eee182133eb8a74158d
HEAD_REF main
)
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}:${TOOLS_PATH}/bin")
else()
set(ENV{PATH} "$ENV{PATH};${PYTHON2_EXE_PATH}")
set(ENV{PATH} "$ENV{PATH};${TOOLS_PATH}/bin")
endif()
vcpkg_add_to_path("${PYTHON3_EXE_PATH}")
vcpkg_add_to_path("${TOOLS_PATH}/bin")
# Acquire BDE sources
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO "bloomberg/bde"
REF 3720d132d0879f19b9084cca62ebc75f1f24e1a3
SHA512 234ebb71997f5b7d3951584235ead10f977689cef323ae1c198629a6b1995b1481d8a1515d827c46df10209bdc66e1f3cc7780dafee9ca0ff4172be47c460d78
HEAD_REF master
REF "${VERSION}"
SHA512 810b4a06a08739dcd990751dd543aa7dc58355f9d64a7c96ef0cf45c81501946434db42ad5bcf5d16110d5a463586b587ce09a446136e824298f39a8a871b490
HEAD_REF main
)
# 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_cmake_configure(
SOURCE_PATH "${SOURCE_PATH}"
OPTIONS
-DBDE_BUILD_TARGET_CPP17=ON
-DCMAKE_CXX_STANDARD=17
-DCMAKE_CXX_STANDARD_REQUIRED=ON
-DCMAKE_CXX_EXTENSIONS=OFF
-DBBS_BUILD_SYSTEM=1
"-DBdeBuildSystem_DIR:PATH=${TOOLS_PATH}/BdeBuildSystem"
OPTIONS_RELEASE
-DBDE_BUILD_TARGET_OPT=1
OPTIONS_DEBUG
-DBDE_BUILD_TARGET_DBG=1
)
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")
# 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
)
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

View File

@ -1,7 +1,16 @@
{
"name": "bde",
"version": "3.2.0.0",
"port-version": 5,
"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 & !osx",
"dependencies": [
{
"name": "vcpkg-cmake",
"host": true
},
{
"name": "vcpkg-cmake-config",
"host": true
}
]
}

View File

@ -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

View File

@ -1,5 +1,10 @@
{
"versions": [
{
"git-tree": "a8fc4329574711907399309f06012a486d373c64",
"version": "3.117.0.0",
"port-version": 0
},
{
"git-tree": "7ce72f2854f44eee806e6e5f3e97d29897549787",
"version": "3.2.0.0",

View File

@ -501,8 +501,8 @@
"port-version": 0
},
"bde": {
"baseline": "3.2.0.0",
"port-version": 5
"baseline": "3.117.0.0",
"port-version": 0
},
"bdwgc": {
"baseline": "8.2.4",