[boringssl] Update port to 2023-09-25 (#34021)

* [boringssl] Update port to 2023-04-20

* [boringssl] Update port to 2023-09-25

---------

Co-authored-by: Monica <liuyumei01@beyondsoft.com>
This commit is contained in:
Henrik Gaßmann 2023-09-29 08:21:24 +02:00 committed by GitHub
parent a80cd259bb
commit 0ec1f2cf88
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
8 changed files with 108 additions and 88 deletions

View File

@ -0,0 +1,12 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -479,7 +479,7 @@ endif()
# Add minimal googletest targets. The provided one has many side-effects, and
# googletest has a very straightforward build.
add_library(
- boringssl_gtest
+ boringssl_gtest STATIC
third_party/googletest/googlemock/src/gmock-all.cc
third_party/googletest/googletest/src/gtest-all.cc
)

View File

@ -1,32 +0,0 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 893bca7..83ff477 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -562,7 +562,7 @@ endif()
# Add minimal googletest targets. The provided one has many side-effects, and
# googletest has a very straightforward build.
-add_library(boringssl_gtest third_party/googletest/src/gtest-all.cc)
+add_library(boringssl_gtest STATIC third_party/googletest/src/gtest-all.cc)
target_include_directories(boringssl_gtest PRIVATE third_party/googletest)
include_directories(third_party/googletest/include)
@@ -649,3 +649,18 @@ add_custom_target(
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
DEPENDS all_tests bssl_shim handshaker fips_specific_tests_if_any
USES_TERMINAL)
+
+install(TARGETS crypto ssl
+ RUNTIME DESTINATION bin
+ LIBRARY DESTINATION lib
+ ARCHIVE DESTINATION lib)
+
+option(INSTALL_HEADERS "Install headers" ON)
+if(INSTALL_HEADERS)
+ install(DIRECTORY include/ DESTINATION include)
+endif()
+
+option(INSTALL_TOOLS "Install bssl executable" OFF)
+if(INSTALL_TOOLS)
+ install(TARGETS bssl DESTINATION tools/boringssl)
+endif()

View File

@ -1,24 +1,23 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 83ff477..3008c2a 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -117,7 +117,7 @@ endif()
if(CMAKE_COMPILER_IS_GNUCXX OR CLANG)
# Note clang-cl is odd and sets both CLANG and MSVC. We base our configuration
# primarily on our normal Clang one.
- set(C_CXX_FLAGS "-Werror -Wformat=2 -Wsign-compare -Wmissing-field-initializers -Wwrite-strings -Wvla")
+ set(C_CXX_FLAGS "-Wformat=2 -Wsign-compare -Wmissing-field-initializers -Wwrite-strings -Wvla")
if(MSVC)
# clang-cl sets different default warnings than clang. It also treats -Wall
# as -Weverything, to match MSVC. Instead -W3 is the alias for -Wall.
@@ -238,8 +238,8 @@ elseif(MSVC)
${MSVC_DISABLED_WARNINGS_LIST})
string(REPLACE "C" " -w4" MSVC_LEVEL4_WARNINGS_STR
${MSVC_LEVEL4_WARNINGS_LIST})
- set(CMAKE_C_FLAGS "-utf-8 -Wall -WX ${MSVC_DISABLED_WARNINGS_STR} ${MSVC_LEVEL4_WARNINGS_STR}")
- set(CMAKE_CXX_FLAGS "-utf-8 -Wall -WX ${MSVC_DISABLED_WARNINGS_STR} ${MSVC_LEVEL4_WARNINGS_STR}")
+ set(CMAKE_C_FLAGS "-utf-8 -Wall ${MSVC_DISABLED_WARNINGS_STR} ${MSVC_LEVEL4_WARNINGS_STR}")
+ set(CMAKE_CXX_FLAGS "-utf-8 -Wall ${MSVC_DISABLED_WARNINGS_STR} ${MSVC_LEVEL4_WARNINGS_STR}")
endif()
if(WIN32)
diff --git a/CMakeLists.txt b/CMakeLists.txt
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -140,7 +140,7 @@ if(CMAKE_COMPILER_IS_GNUCXX OR CLANG)
# Note clang-cl is odd and sets both CLANG and MSVC. We base our configuration
# primarily on our normal Clang one.
# TODO(bbe) took out -Wmissing-field-initializers for pki - fix and put back or disable only for pki
- set(C_CXX_FLAGS "-Werror -Wformat=2 -Wsign-compare -Wwrite-strings -Wvla -Wshadow -Wtype-limits")
+ set(C_CXX_FLAGS "-Wformat=2 -Wsign-compare -Wwrite-strings -Wvla -Wshadow -Wtype-limits")
if(MSVC)
# clang-cl sets different default warnings than clang. It also treats -Wall
# as -Weverything, to match MSVC. Instead -W3 is the alias for -Wall.
@@ -211,8 +211,8 @@ elseif(MSVC)
)
string(REPLACE "C" " -wd" MSVC_DISABLED_WARNINGS_STR
${MSVC_DISABLED_WARNINGS_LIST})
- set(CMAKE_C_FLAGS "-utf-8 -W4 -WX ${MSVC_DISABLED_WARNINGS_STR}")
- set(CMAKE_CXX_FLAGS "-utf-8 -W4 -WX ${MSVC_DISABLED_WARNINGS_STR}")
+ set(CMAKE_C_FLAGS "-utf-8 -W4 ${MSVC_DISABLED_WARNINGS_STR}")
+ set(CMAKE_CXX_FLAGS "-utf-8 -W4 ${MSVC_DISABLED_WARNINGS_STR}")
endif()
if(WIN32)

View File

@ -0,0 +1,43 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -252,8 +252,6 @@ if(FUZZ)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fsanitize=address,fuzzer-no-link -fsanitize-coverage=edge,indirect-calls")
endif()
-add_definitions(-DBORINGSSL_IMPLEMENTATION)
-
if(BUILD_SHARED_LIBS)
add_definitions(-DBORINGSSL_SHARED_LIBRARY)
# Enable position-independent code globally. This is needed because
@@ -563,7 +561,7 @@ if(APPLE)
endif()
add_library(pki ${PKI_SOURCES})
-target_compile_definitions(pki PRIVATE _BORINGSSL_LIBPKI_)
+target_compile_definitions(pki PRIVATE _BORINGSSL_LIBPKI_ BORINGSSL_IMPLEMENTATION)
target_link_libraries(pki crypto)
add_executable(pki_test ${PKI_TEST_SOURCES})
diff --git a/crypto/CMakeLists.txt b/crypto/CMakeLists.txt
--- a/crypto/CMakeLists.txt
+++ b/crypto/CMakeLists.txt
@@ -294,6 +294,7 @@ add_library(
$<TARGET_OBJECTS:fipsmodule>
${CRYPTO_FIPS_OBJECTS}
)
+target_compile_definitions(crypto PRIVATE BORINGSSL_IMPLEMENTATION)
if(OPENSSL_ASM)
target_sources(crypto PRIVATE ${CRYPTO_SOURCES_ASM})
endif()
diff --git a/ssl/CMakeLists.txt b/ssl/CMakeLists.txt
--- a/ssl/CMakeLists.txt
+++ b/ssl/CMakeLists.txt
@@ -39,6 +39,7 @@ add_library(
tls13_enc.cc
tls13_server.cc
)
+target_compile_definitions(ssl PRIVATE BORINGSSL_IMPLEMENTATION)
# Although libssl also provides headers that require an include directory, the
# flag is already specified by libcrypto, so we omit target_include_directories
# here.

View File

@ -3,52 +3,47 @@ if(EXISTS "${CURRENT_INSTALLED_DIR}/include/openssl/ssl.h")
endif()
vcpkg_find_acquire_program(PERL)
get_filename_component(PERL_EXE_PATH ${PERL} DIRECTORY)
vcpkg_add_to_path(${PERL_EXE_PATH})
get_filename_component(PERL_EXE_PATH "${PERL}" DIRECTORY)
vcpkg_add_to_path("${PERL_EXE_PATH}")
vcpkg_find_acquire_program(NASM)
get_filename_component(NASM_EXE_PATH ${NASM} DIRECTORY)
vcpkg_add_to_path(${NASM_EXE_PATH})
get_filename_component(NASM_EXE_PATH "${NASM}" DIRECTORY)
vcpkg_add_to_path("${NASM_EXE_PATH}")
vcpkg_find_acquire_program(GO)
get_filename_component(GO_EXE_PATH ${GO} DIRECTORY)
vcpkg_add_to_path(${GO_EXE_PATH})
vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
FEATURES
tools INSTALL_TOOLS
)
get_filename_component(GO_EXE_PATH "${GO}" DIRECTORY)
vcpkg_add_to_path("${GO_EXE_PATH}")
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO google/boringssl
REF 479adf98d54a21c1d154aac59b2ce120e1d1a6d6
SHA512 74b5d001c0f5c1846b8818e9e668fa35de5171fc21a8f713d241f57b3e8abe42426fdc66b085cca1853b904def6f4bea573dfed40b8b1422894cca85b0b1a44a
REF cfcb954901e264edb9915e501de64a81732c5edd
SHA512 6fc7fff24c85ed580fb362f788b216ef04ca16976656c68c75d3fd72c84e28ed39a3ab8fcb064b7c7061f93a4d37d5426e36d259e1714fa62d90b99659a3ddc2
HEAD_REF master
PATCHES
0001-vcpkg.patch
0001-static-gtest.patch
0002-remove-WX-Werror.patch
0003-fix-shared-symbol-visibility.patch
)
vcpkg_cmake_configure(
SOURCE_PATH "${SOURCE_PATH}"
OPTIONS
${FEATURE_OPTIONS}
OPTIONS_DEBUG
-DINSTALL_HEADERS=OFF
-DINSTALL_TOOLS=OFF
# the FindOpenSSL.cmake script differentiates debug and release binaries using this suffix.
-DCMAKE_DEBUG_POSTFIX=d
)
vcpkg_cmake_install()
vcpkg_copy_pdbs()
vcpkg_cmake_config_fixup(PACKAGE_NAME OpenSSL CONFIG_PATH lib/cmake/OpenSSL)
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include")
vcpkg_copy_tools(TOOL_NAMES bssl AUTO_CLEAN)
if(VCPKG_LIBRARY_LINKAGE STREQUAL "static")
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/bin" "${CURRENT_PACKAGES_DIR}/debug/bin")
endif()
include("${CMAKE_CURRENT_LIST_DIR}/install-pc-files.cmake")
if(IS_DIRECTORY "${CURRENT_PACKAGES_DIR}/tools/boringssl")
vcpkg_copy_tool_dependencies("${CURRENT_PACKAGES_DIR}/tools/boringssl")
endif()
file(INSTALL "${CMAKE_CURRENT_LIST_DIR}/usage" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}")
vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/LICENSE")

View File

@ -1,7 +1,6 @@
{
"name": "boringssl",
"version-date": "2021-06-23",
"port-version": 4,
"version-date": "2023-09-25",
"description": "BoringSSL is a fork of OpenSSL developed by Google",
"homepage": "https://boringssl.googlesource.com/boringssl",
"supports": "!uwp",
@ -9,11 +8,10 @@
{
"name": "vcpkg-cmake",
"host": true
},
{
"name": "vcpkg-cmake-config",
"host": true
}
],
"features": {
"tools": {
"description": "Build bssl executable"
}
}
]
}

View File

@ -1,5 +1,10 @@
{
"versions": [
{
"git-tree": "5f833bab8ecfc28f45a9034291e79f8cd126ad01",
"version-date": "2023-09-25",
"port-version": 0
},
{
"git-tree": "01164d48fa5667c3e6885d010cb110b84b6f2e78",
"version-date": "2021-06-23",

View File

@ -1273,8 +1273,8 @@
"port-version": 0
},
"boringssl": {
"baseline": "2021-06-23",
"port-version": 4
"baseline": "2023-09-25",
"port-version": 0
},
"botan": {
"baseline": "2.19.3",