diff --git a/.ci_support/linux_64_.yaml b/.ci_support/linux_64_.yaml index 150512c7..b8f7b513 100644 --- a/.ci_support/linux_64_.yaml +++ b/.ci_support/linux_64_.yaml @@ -10,10 +10,6 @@ c_stdlib_version: - '2.17' channel_sources: - conda-forge -- conda-forge -- conda-forge -- conda-forge -- conda-forge,conda-forge/label/python_rc channel_targets: - conda-forge main cxx_compiler: @@ -47,7 +43,5 @@ target_platform: zip_keys: - - c_compiler_version - cxx_compiler_version -- - python - - channel_sources zlib: - '1' diff --git a/.ci_support/linux_aarch64_.yaml b/.ci_support/linux_aarch64_.yaml index 2da1f3c2..2abe475e 100644 --- a/.ci_support/linux_aarch64_.yaml +++ b/.ci_support/linux_aarch64_.yaml @@ -10,10 +10,6 @@ c_stdlib_version: - '2.17' channel_sources: - conda-forge -- conda-forge -- conda-forge -- conda-forge -- conda-forge,conda-forge/label/python_rc channel_targets: - conda-forge main cxx_compiler: @@ -47,7 +43,5 @@ target_platform: zip_keys: - - c_compiler_version - cxx_compiler_version -- - python - - channel_sources zlib: - '1' diff --git a/.ci_support/linux_ppc64le_.yaml b/.ci_support/linux_ppc64le_.yaml index 35cc6b77..a85d65a1 100644 --- a/.ci_support/linux_ppc64le_.yaml +++ b/.ci_support/linux_ppc64le_.yaml @@ -10,10 +10,6 @@ c_stdlib_version: - '2.17' channel_sources: - conda-forge -- conda-forge -- conda-forge -- conda-forge -- conda-forge,conda-forge/label/python_rc channel_targets: - conda-forge main cxx_compiler: @@ -47,7 +43,5 @@ target_platform: zip_keys: - - c_compiler_version - cxx_compiler_version -- - python - - channel_sources zlib: - '1' diff --git a/.ci_support/osx_64_.yaml b/.ci_support/osx_64_.yaml index e4c4295e..e68455e8 100644 --- a/.ci_support/osx_64_.yaml +++ b/.ci_support/osx_64_.yaml @@ -14,10 +14,6 @@ c_stdlib_version: - '11.0' channel_sources: - conda-forge -- conda-forge -- conda-forge -- conda-forge -- conda-forge,conda-forge/label/python_rc channel_targets: - conda-forge main cxx_compiler: @@ -51,7 +47,5 @@ target_platform: zip_keys: - - c_compiler_version - cxx_compiler_version -- - python - - channel_sources zlib: - '1' diff --git a/.ci_support/osx_arm64_.yaml b/.ci_support/osx_arm64_.yaml index 0fa6ef90..ee606164 100644 --- a/.ci_support/osx_arm64_.yaml +++ b/.ci_support/osx_arm64_.yaml @@ -14,10 +14,6 @@ c_stdlib_version: - '11.0' channel_sources: - conda-forge -- conda-forge -- conda-forge -- conda-forge -- conda-forge,conda-forge/label/python_rc channel_targets: - conda-forge main cxx_compiler: @@ -51,7 +47,5 @@ target_platform: zip_keys: - - c_compiler_version - cxx_compiler_version -- - python - - channel_sources zlib: - '1' diff --git a/.ci_support/win_64_.yaml b/.ci_support/win_64_.yaml index 6cdeb8b4..ac3e29fc 100644 --- a/.ci_support/win_64_.yaml +++ b/.ci_support/win_64_.yaml @@ -6,10 +6,6 @@ c_stdlib: - vs channel_sources: - conda-forge -- conda-forge -- conda-forge -- conda-forge -- conda-forge,conda-forge/label/python_rc channel_targets: - conda-forge main cxx_compiler: @@ -36,8 +32,5 @@ re2: - 2025.08.12 target_platform: - win-64 -zip_keys: -- - python - - channel_sources zlib: - '1' diff --git a/recipe/meta.yaml b/recipe/meta.yaml index 9d7db11a..e156b185 100644 --- a/recipe/meta.yaml +++ b/recipe/meta.yaml @@ -1,4 +1,4 @@ -{% set version = "1.74.1" %} +{% set version = "1.75.1" %} # core package & vendored libs use different version scheme than CPP libs, see # top of https://github.com/grpc/grpc/blob/v{{ version }}/CMakeLists.txt @@ -19,7 +19,7 @@ package: source: - url: https://github.com/grpc/grpc/archive/v{{ version.replace(".pre", "-pre") }}.tar.gz - sha256: 7bf97c11cf3808d650a3a025bbf9c5f922c844a590826285067765dfd055d228 + sha256: 486d5e32b3627926476a9a472f9792e4d7fe4e89c962473f1296183f76c6b032 patches: - patches/0001-windows-ssl-lib-names.patch - patches/0002-fix-win-setup-cmds.patch @@ -193,6 +193,7 @@ outputs: run: - python - {{ pin_subpackage('libgrpc', exact=True) }} + - typing-extensions >=4.12,<5 test: source_files: - examples/python/helloworld/ diff --git a/recipe/patches/0001-windows-ssl-lib-names.patch b/recipe/patches/0001-windows-ssl-lib-names.patch index 3b9bd887..6a129c2e 100644 --- a/recipe/patches/0001-windows-ssl-lib-names.patch +++ b/recipe/patches/0001-windows-ssl-lib-names.patch @@ -1,4 +1,4 @@ -From d5ed2615f402d4b60de392d7faa49ce7e8fa6513 Mon Sep 17 00:00:00 2001 +From d31df2e44c72e00b4eed156e9b56838c2ce4d409 Mon Sep 17 00:00:00 2001 From: Jonathan Helmus Date: Mon, 17 Feb 2020 15:45:06 -0600 Subject: [PATCH 01/14] windows ssl lib names @@ -11,10 +11,10 @@ Co-Authored-By: Marius van Niekerk 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/setup.py b/setup.py -index 39ca17e824..3a879f037b 100644 +index 503cc2b4fa..152645b1df 100644 --- a/setup.py +++ b/setup.py -@@ -367,10 +367,10 @@ if "win32" in sys.platform: +@@ -369,10 +369,10 @@ if "win32" in sys.platform: "ws2_32", ) if BUILD_WITH_SYSTEM_OPENSSL: diff --git a/recipe/patches/0002-fix-win-setup-cmds.patch b/recipe/patches/0002-fix-win-setup-cmds.patch index e41c404d..d67655c0 100644 --- a/recipe/patches/0002-fix-win-setup-cmds.patch +++ b/recipe/patches/0002-fix-win-setup-cmds.patch @@ -1,4 +1,4 @@ -From f50311e7ac7f652ac5692f88d92dc0fb9fa6e3c1 Mon Sep 17 00:00:00 2001 +From f10a11f6412dfa21e547dc72d9e01f8bba5cabb3 Mon Sep 17 00:00:00 2001 From: Mike Sarahan Date: Tue, 18 Feb 2020 13:53:05 -0600 Subject: [PATCH 02/14] fix win setup cmds @@ -12,10 +12,10 @@ Co-Authored-By: H. Vetinari 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/setup.py b/setup.py -index 3a879f037b..adfec063fd 100644 +index 152645b1df..a73cc24346 100644 --- a/setup.py +++ b/setup.py -@@ -209,6 +209,9 @@ ENABLE_DOCUMENTATION_BUILD = _env_bool_value( +@@ -211,6 +211,9 @@ ENABLE_DOCUMENTATION_BUILD = _env_bool_value( def check_linker_need_libatomic(): @@ -25,7 +25,7 @@ index 3a879f037b..adfec063fd 100644 """Test if linker on system needs libatomic.""" code_test = ( b"#include \n" -@@ -266,9 +269,6 @@ if EXTRA_ENV_COMPILE_ARGS is None: +@@ -268,9 +271,6 @@ if EXTRA_ENV_COMPILE_ARGS is None: # MSVC by defaults uses C++14 and C89 so both needs to be configured. EXTRA_ENV_COMPILE_ARGS += " /std:c++17" EXTRA_ENV_COMPILE_ARGS += " /std:c11" diff --git a/recipe/patches/0003-Link-against-grpc-and-abseil.patch b/recipe/patches/0003-Link-against-grpc-and-abseil.patch index 4ca37dc3..8be12c63 100644 --- a/recipe/patches/0003-Link-against-grpc-and-abseil.patch +++ b/recipe/patches/0003-Link-against-grpc-and-abseil.patch @@ -1,4 +1,4 @@ -From 41f565b1cc5a805928c9d7a6542f1e6802a4bfa4 Mon Sep 17 00:00:00 2001 +From 906c60346084305e436287fb06da86c6debd0216 Mon Sep 17 00:00:00 2001 From: Marius van Niekerk Date: Mon, 13 Jun 2022 17:13:07 -0400 Subject: [PATCH 03/14] Link against grpc and abseil @@ -9,10 +9,10 @@ Co-Authored-By: H. Vetinari 1 file changed, 19 insertions(+), 4 deletions(-) diff --git a/setup.py b/setup.py -index adfec063fd..266a690474 100644 +index a73cc24346..824d8aa016 100644 --- a/setup.py +++ b/setup.py -@@ -180,6 +180,8 @@ BUILD_WITH_STATIC_LIBSTDCXX = _env_bool_value( +@@ -182,6 +182,8 @@ BUILD_WITH_STATIC_LIBSTDCXX = _env_bool_value( "GRPC_PYTHON_BUILD_WITH_STATIC_LIBSTDCXX", "False" ) @@ -21,7 +21,7 @@ index adfec063fd..266a690474 100644 # For local development use only: This skips building gRPC Core and its # dependencies, including protobuf and boringssl. This allows "incremental" # compilation by first building gRPC Core using make, then building only the -@@ -378,10 +380,20 @@ if BUILD_WITH_SYSTEM_CARES: +@@ -380,10 +382,20 @@ if BUILD_WITH_SYSTEM_CARES: if BUILD_WITH_SYSTEM_RE2: EXTENSION_LIBRARIES += ("re2",) if BUILD_WITH_SYSTEM_ABSL: @@ -46,7 +46,7 @@ index adfec063fd..266a690474 100644 DEFINE_MACROS = (("_WIN32_WINNT", 0x600),) asm_files = [] -@@ -493,6 +505,9 @@ def cython_extensions_and_necessity(): +@@ -495,6 +507,9 @@ def cython_extensions_and_necessity(): prefix + "libgrpc.a", ] core_c_files = [] diff --git a/recipe/patches/0004-force-protoc-executable.patch b/recipe/patches/0004-force-protoc-executable.patch index 223ec197..3dbf7280 100644 --- a/recipe/patches/0004-force-protoc-executable.patch +++ b/recipe/patches/0004-force-protoc-executable.patch @@ -1,4 +1,4 @@ -From 29ede911ee9d4f9096f5719d20103e180271e1cc Mon Sep 17 00:00:00 2001 +From 1e09c50f603babd53c47fe68c55ded23744cf4e0 Mon Sep 17 00:00:00 2001 From: "Uwe L. Korn" Date: Fri, 11 Sep 2020 14:20:04 +0200 Subject: [PATCH 04/14] force protoc executable diff --git a/recipe/patches/0005-mark-linkages-of-grpc-_unsecure-as-private.patch b/recipe/patches/0005-mark-linkages-of-grpc-_unsecure-as-private.patch index cb185dce..a3e61b77 100644 --- a/recipe/patches/0005-mark-linkages-of-grpc-_unsecure-as-private.patch +++ b/recipe/patches/0005-mark-linkages-of-grpc-_unsecure-as-private.patch @@ -1,4 +1,4 @@ -From 5cad386388ee72810dfcbf0afc88ded797f5e840 Mon Sep 17 00:00:00 2001 +From 19f402ca8c02c116a3865fd376f2b4d90b96bfeb Mon Sep 17 00:00:00 2001 From: "H. Vetinari" Date: Tue, 23 Aug 2022 11:45:20 +0200 Subject: [PATCH 05/14] mark linkages of grpc{,_unsecure} as private @@ -13,10 +13,10 @@ Co-Authored-By: Mark Harfouche 1 file changed, 60 insertions(+), 50 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt -index f652a4055c..2fae60378f 100644 +index 67f7511a4e..45badf99e6 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt -@@ -3069,35 +3069,40 @@ target_include_directories(grpc +@@ -3097,35 +3097,40 @@ target_include_directories(grpc ${_gRPC_ZLIB_INCLUDE_DIR} ) target_link_libraries(grpc @@ -84,7 +84,7 @@ index f652a4055c..2fae60378f 100644 endif() foreach(_hdr -@@ -3791,32 +3796,37 @@ target_include_directories(grpc_unsecure +@@ -3824,32 +3829,37 @@ target_include_directories(grpc_unsecure ${_gRPC_ZLIB_INCLUDE_DIR} ) target_link_libraries(grpc_unsecure diff --git a/recipe/patches/0006-for-main-targets-set-_DLL_EXPORTS-when-building-and-.patch b/recipe/patches/0006-for-main-targets-set-_DLL_EXPORTS-when-building-and-.patch index 52f60805..2ac9ee00 100644 --- a/recipe/patches/0006-for-main-targets-set-_DLL_EXPORTS-when-building-and-.patch +++ b/recipe/patches/0006-for-main-targets-set-_DLL_EXPORTS-when-building-and-.patch @@ -1,4 +1,4 @@ -From 7ee05652cf15c9d23b634bfe9fc18028d62e32c1 Mon Sep 17 00:00:00 2001 +From fd5fcee8d84cf4b1a2370ce6230eb3bf77487925 Mon Sep 17 00:00:00 2001 From: "H. Vetinari" Date: Thu, 29 Feb 2024 20:31:21 +1100 Subject: [PATCH 06/14] for main targets, set *_DLL_EXPORTS when building and @@ -9,10 +9,10 @@ Subject: [PATCH 06/14] for main targets, set *_DLL_EXPORTS when building and 1 file changed, 10 insertions(+), 26 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt -index 2fae60378f..66be39ef73 100644 +index 45badf99e6..73e4150f76 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt -@@ -2063,10 +2063,8 @@ if(WIN32 AND MSVC) +@@ -2080,10 +2080,8 @@ if(WIN32 AND MSVC) COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}" ) if(BUILD_SHARED_LIBS) @@ -25,7 +25,7 @@ index 2fae60378f..66be39ef73 100644 endif() if(gRPC_INSTALL) install(FILES ${CMAKE_CURRENT_BINARY_DIR}/gpr.pdb -@@ -3042,11 +3040,8 @@ if(WIN32 AND MSVC) +@@ -3070,11 +3068,8 @@ if(WIN32 AND MSVC) COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}" ) if(BUILD_SHARED_LIBS) @@ -39,7 +39,7 @@ index 2fae60378f..66be39ef73 100644 endif() if(gRPC_INSTALL) install(FILES ${CMAKE_CURRENT_BINARY_DIR}/grpc.pdb -@@ -3769,11 +3764,8 @@ if(WIN32 AND MSVC) +@@ -3802,11 +3797,8 @@ if(WIN32 AND MSVC) COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}" ) if(BUILD_SHARED_LIBS) @@ -53,7 +53,7 @@ index 2fae60378f..66be39ef73 100644 endif() if(gRPC_INSTALL) install(FILES ${CMAKE_CURRENT_BINARY_DIR}/grpc_unsecure.pdb -@@ -4791,12 +4783,8 @@ if(WIN32 AND MSVC) +@@ -4824,12 +4816,8 @@ if(WIN32 AND MSVC) COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}" ) if(BUILD_SHARED_LIBS) @@ -68,7 +68,7 @@ index 2fae60378f..66be39ef73 100644 endif() if(gRPC_INSTALL) install(FILES ${CMAKE_CURRENT_BINARY_DIR}/grpc++.pdb -@@ -5531,12 +5519,8 @@ if(WIN32 AND MSVC) +@@ -5568,12 +5556,8 @@ if(WIN32 AND MSVC) COMPILE_PDB_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}" ) if(BUILD_SHARED_LIBS) diff --git a/recipe/patches/0007-add-missing-linkages-for-gRPC_BUILD_TESTS-ON.patch b/recipe/patches/0007-add-missing-linkages-for-gRPC_BUILD_TESTS-ON.patch index 27c5e629..254956f8 100644 --- a/recipe/patches/0007-add-missing-linkages-for-gRPC_BUILD_TESTS-ON.patch +++ b/recipe/patches/0007-add-missing-linkages-for-gRPC_BUILD_TESTS-ON.patch @@ -1,4 +1,4 @@ -From 318a6ce6b4237af2c46a10d42dec5d292909ac3e Mon Sep 17 00:00:00 2001 +From 64aeaa9d104aa3c1415f1f406d56edf40db8115d Mon Sep 17 00:00:00 2001 From: "H. Vetinari" Date: Tue, 26 Sep 2023 18:25:54 +1100 Subject: [PATCH 07/14] add missing linkages for gRPC_BUILD_TESTS=ON @@ -14,10 +14,10 @@ For some tests, re2 and c-ares have just been forgotten as dependencies. 1 file changed, 11 insertions(+) diff --git a/CMakeLists.txt b/CMakeLists.txt -index 66be39ef73..b0f134790e 100644 +index 73e4150f76..42ce6b2d80 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt -@@ -3229,6 +3229,7 @@ target_link_libraries(grpc_test_util +@@ -3257,6 +3257,7 @@ target_link_libraries(grpc_test_util ${_gRPC_ALLTARGETS_LIBRARIES} absl::failure_signal_handler absl::stacktrace @@ -25,7 +25,7 @@ index 66be39ef73..b0f134790e 100644 absl::symbolize absl::log_initialize grpc -@@ -3304,6 +3305,7 @@ target_link_libraries(grpc_test_util_unsecure +@@ -3332,6 +3333,7 @@ target_link_libraries(grpc_test_util_unsecure ${_gRPC_ALLTARGETS_LIBRARIES} absl::failure_signal_handler absl::stacktrace @@ -33,7 +33,7 @@ index 66be39ef73..b0f134790e 100644 absl::symbolize absl::log_initialize grpc_unsecure -@@ -8335,6 +8337,7 @@ target_include_directories(authorization_matchers_test +@@ -8378,6 +8380,7 @@ target_include_directories(authorization_matchers_test ) target_link_libraries(authorization_matchers_test @@ -41,7 +41,7 @@ index 66be39ef73..b0f134790e 100644 ${_gRPC_ALLTARGETS_LIBRARIES} gtest grpc_test_util -@@ -17316,6 +17319,7 @@ target_include_directories(grpc_authorization_engine_test +@@ -17794,6 +17797,7 @@ target_include_directories(grpc_authorization_engine_test ) target_link_libraries(grpc_authorization_engine_test @@ -49,7 +49,7 @@ index 66be39ef73..b0f134790e 100644 ${_gRPC_ALLTARGETS_LIBRARIES} gtest grpc_test_util -@@ -19776,6 +19780,7 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) +@@ -20267,6 +20271,7 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) ) target_link_libraries(httpcli_test @@ -57,7 +57,7 @@ index 66be39ef73..b0f134790e 100644 ${_gRPC_ALLTARGETS_LIBRARIES} gtest grpc++_test_util -@@ -21869,6 +21874,7 @@ target_include_directories(matchers_test +@@ -22569,6 +22574,7 @@ target_include_directories(matchers_test ) target_link_libraries(matchers_test @@ -65,7 +65,7 @@ index 66be39ef73..b0f134790e 100644 ${_gRPC_ALLTARGETS_LIBRARIES} gtest grpc_test_util -@@ -26804,6 +26810,7 @@ target_include_directories(resolve_address_using_ares_resolver_test +@@ -27550,6 +27556,7 @@ target_include_directories(resolve_address_using_ares_resolver_test ) target_link_libraries(resolve_address_using_ares_resolver_test @@ -73,7 +73,7 @@ index 66be39ef73..b0f134790e 100644 ${_gRPC_ALLTARGETS_LIBRARIES} gtest grpc_test_util -@@ -26892,6 +26899,7 @@ target_include_directories(resolve_address_using_native_resolver_test +@@ -27638,6 +27645,7 @@ target_include_directories(resolve_address_using_native_resolver_test ) target_link_libraries(resolve_address_using_native_resolver_test @@ -81,7 +81,7 @@ index 66be39ef73..b0f134790e 100644 ${_gRPC_ALLTARGETS_LIBRARIES} gtest grpc_test_util -@@ -35879,6 +35887,7 @@ target_include_directories(xds_common_types_test +@@ -36847,6 +36855,7 @@ target_include_directories(xds_common_types_test ) target_link_libraries(xds_common_types_test @@ -89,7 +89,7 @@ index 66be39ef73..b0f134790e 100644 ${_gRPC_ALLTARGETS_LIBRARIES} gtest grpc++ -@@ -36530,6 +36539,7 @@ target_include_directories(xds_credentials_test +@@ -37498,6 +37507,7 @@ target_include_directories(xds_credentials_test ) target_link_libraries(xds_credentials_test @@ -97,7 +97,7 @@ index 66be39ef73..b0f134790e 100644 ${_gRPC_ALLTARGETS_LIBRARIES} gtest grpc_test_util -@@ -41495,6 +41505,7 @@ target_include_directories(xds_listener_resource_type_test +@@ -42463,6 +42473,7 @@ target_include_directories(xds_listener_resource_type_test ) target_link_libraries(xds_listener_resource_type_test diff --git a/recipe/patches/0008-add-enable_testing-so-tests-get-run.patch b/recipe/patches/0008-add-enable_testing-so-tests-get-run.patch index ee50c5cf..4cf446d8 100644 --- a/recipe/patches/0008-add-enable_testing-so-tests-get-run.patch +++ b/recipe/patches/0008-add-enable_testing-so-tests-get-run.patch @@ -1,4 +1,4 @@ -From b63cd1c2f85a9550f71f78034a639674232d328e Mon Sep 17 00:00:00 2001 +From 8d16666ba1df8932f696d81fea79d6767f64659a Mon Sep 17 00:00:00 2001 From: "H. Vetinari" Date: Fri, 28 Feb 2025 22:07:19 +1100 Subject: [PATCH 08/14] add enable_testing so tests get run @@ -8,7 +8,7 @@ Subject: [PATCH 08/14] add enable_testing so tests get run 1 file changed, 4 insertions(+) diff --git a/CMakeLists.txt b/CMakeLists.txt -index b0f134790e..e87b7b557d 100644 +index 42ce6b2d80..0716a5d02a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -51,6 +51,10 @@ option(gRPC_BUILD_TESTS "Build tests" OFF) diff --git a/recipe/patches/0009-unvendor-upb-and-utf8_range-use-protobuf-s-version.patch b/recipe/patches/0009-unvendor-upb-and-utf8_range-use-protobuf-s-version.patch index c69a406b..8ece21a7 100644 --- a/recipe/patches/0009-unvendor-upb-and-utf8_range-use-protobuf-s-version.patch +++ b/recipe/patches/0009-unvendor-upb-and-utf8_range-use-protobuf-s-version.patch @@ -1,4 +1,4 @@ -From e4ad20aa04bc1eeadd7119b24ed2856e650ccf75 Mon Sep 17 00:00:00 2001 +From ae9f54d90a40865079020371084082a6803ae376 Mon Sep 17 00:00:00 2001 From: "H. Vetinari" Date: Fri, 28 Feb 2025 15:09:41 +1100 Subject: [PATCH 09/14] unvendor upb and utf8_range, use protobuf's version @@ -9,7 +9,7 @@ Subject: [PATCH 09/14] unvendor upb and utf8_range, use protobuf's version 2 files changed, 16 insertions(+), 684 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt -index e87b7b557d..c0d1f6f363 100644 +index 0716a5d02a..a4c4bd0b0f 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -352,11 +352,15 @@ else() @@ -29,7 +29,7 @@ index e87b7b557d..c0d1f6f363 100644 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_POSIX) find_library(LIBRT rt) if(LIBRT) -@@ -3072,8 +3076,6 @@ target_link_libraries(grpc +@@ -3100,8 +3104,6 @@ target_link_libraries(grpc PRIVATE ${_gRPC_ALLTARGETS_LIBRARIES} # vendored libs PRIVATE ${_gRPC_ADDRESS_SORTING_LIBRARIES} @@ -38,7 +38,7 @@ index e87b7b557d..c0d1f6f363 100644 # external dependencies used within grpc PRIVATE ${_gRPC_CARES_LIBRARIES} PRIVATE ${_gRPC_RE2_LIBRARIES} -@@ -3798,7 +3800,6 @@ target_link_libraries(grpc_unsecure +@@ -3831,7 +3833,6 @@ target_link_libraries(grpc_unsecure PRIVATE ${_gRPC_ALLTARGETS_LIBRARIES} # vendored libs PRIVATE ${_gRPC_ADDRESS_SORTING_LIBRARIES} @@ -46,7 +46,7 @@ index e87b7b557d..c0d1f6f363 100644 # external dependencies used within grpc PRIVATE ${_gRPC_ZLIB_LIBRARIES} PRIVATE ${_gRPC_CARES_LIBRARIES} -@@ -3964,672 +3965,6 @@ target_link_libraries(gtest +@@ -3997,672 +3998,6 @@ target_link_libraries(gtest endif() @@ -719,7 +719,7 @@ index e87b7b557d..c0d1f6f363 100644 if(gRPC_BUILD_TESTS) -@@ -6118,7 +5453,6 @@ target_include_directories(grpc_authorization_provider +@@ -6158,7 +5493,6 @@ target_include_directories(grpc_authorization_provider ) target_link_libraries(grpc_authorization_provider ${_gRPC_ALLTARGETS_LIBRARIES} @@ -727,7 +727,7 @@ index e87b7b557d..c0d1f6f363 100644 ${_gRPC_RE2_LIBRARIES} ${_gRPC_ZLIB_LIBRARIES} absl::config -@@ -47339,8 +46673,8 @@ generate_pkgconfig( +@@ -48863,8 +48197,8 @@ generate_pkgconfig( "${gRPC_CORE_VERSION}" "absl_algorithm_container absl_any_invocable absl_base absl_bind_front absl_bits absl_btree absl_check absl_cleanup absl_config absl_cord absl_core_headers absl_flags absl_flags_marshalling absl_flat_hash_map absl_flat_hash_set absl_function_ref absl_hash absl_inlined_vector absl_log absl_log_globals absl_log_severity absl_memory absl_no_destructor absl_optional absl_random_bit_gen_ref absl_random_distributions absl_random_random absl_span absl_status absl_statusor absl_str_format absl_string_view absl_strings absl_synchronization absl_time absl_type_traits absl_utility gpr" "libcares openssl re2 zlib" @@ -738,7 +738,7 @@ index e87b7b557d..c0d1f6f363 100644 "grpc.pc") # grpc_unsecure .pc file -@@ -47350,8 +46684,8 @@ generate_pkgconfig( +@@ -48874,8 +48208,8 @@ generate_pkgconfig( "${gRPC_CORE_VERSION}" "absl_algorithm_container absl_any_invocable absl_base absl_bind_front absl_bits absl_btree absl_check absl_cleanup absl_config absl_cord absl_core_headers absl_flags absl_flags_marshalling absl_flat_hash_map absl_flat_hash_set absl_function_ref absl_hash absl_inlined_vector absl_log absl_log_globals absl_log_severity absl_memory absl_no_destructor absl_optional absl_random_bit_gen_ref absl_random_distributions absl_random_random absl_span absl_status absl_statusor absl_str_format absl_string_view absl_strings absl_synchronization absl_time absl_type_traits absl_utility gpr" "libcares zlib" @@ -749,9 +749,9 @@ index e87b7b557d..c0d1f6f363 100644 "grpc_unsecure.pc") # grpc++ .pc file -@@ -47361,8 +46695,8 @@ generate_pkgconfig( +@@ -48885,8 +48219,8 @@ generate_pkgconfig( "${gRPC_CPP_VERSION}" - "absl_absl_check absl_absl_log absl_algorithm_container absl_any_invocable absl_base absl_bind_front absl_bits absl_btree absl_check absl_cleanup absl_config absl_cord absl_core_headers absl_flags absl_flags_marshalling absl_flat_hash_map absl_flat_hash_set absl_function_ref absl_hash absl_inlined_vector absl_log absl_log_globals absl_log_severity absl_memory absl_no_destructor absl_optional absl_random_bit_gen_ref absl_random_distributions absl_random_random absl_span absl_status absl_statusor absl_str_format absl_string_view absl_strings absl_synchronization absl_time absl_type_traits absl_utility gpr grpc" + "absl_absl_check absl_absl_log absl_algorithm_container absl_any_invocable absl_base absl_bind_front absl_bits absl_btree absl_check absl_cleanup absl_config absl_cord absl_core_headers absl_dynamic_annotations absl_flags absl_flags_marshalling absl_flat_hash_map absl_flat_hash_set absl_function_ref absl_hash absl_inlined_vector absl_layout absl_log absl_log_globals absl_log_severity absl_memory absl_no_destructor absl_optional absl_prefetch absl_random_bit_gen_ref absl_random_distributions absl_random_random absl_span absl_status absl_statusor absl_str_format absl_string_view absl_strings absl_strings_internal absl_synchronization absl_time absl_type_traits absl_utility gpr grpc" "libcares openssl re2 zlib" - "-lgrpc++" - "-laddress_sorting -lupb_textformat_lib -lupb_json_lib -lupb_reflection_lib -lupb_wire_lib -lupb_message_lib -lutf8_range_lib -lupb_mini_descriptor_lib -lupb_mini_table_lib -lupb_hash_lib -lupb_mem_lib -lupb_base_lib -lupb_lex_lib" @@ -760,7 +760,7 @@ index e87b7b557d..c0d1f6f363 100644 "grpc++.pc") # grpc++_unsecure .pc file -@@ -47372,8 +46706,8 @@ generate_pkgconfig( +@@ -48896,8 +48230,8 @@ generate_pkgconfig( "${gRPC_CPP_VERSION}" "absl_absl_check absl_absl_log absl_algorithm_container absl_any_invocable absl_base absl_bind_front absl_bits absl_btree absl_check absl_cleanup absl_config absl_cord absl_core_headers absl_flags absl_flags_marshalling absl_flat_hash_map absl_flat_hash_set absl_function_ref absl_hash absl_inlined_vector absl_log absl_log_globals absl_log_severity absl_memory absl_no_destructor absl_optional absl_random_bit_gen_ref absl_random_distributions absl_random_random absl_span absl_status absl_statusor absl_str_format absl_string_view absl_strings absl_synchronization absl_time absl_type_traits absl_utility gpr grpc_unsecure" "libcares zlib" @@ -771,9 +771,9 @@ index e87b7b557d..c0d1f6f363 100644 "grpc++_unsecure.pc") # grpcpp_otel_plugin .pc file -@@ -47383,6 +46717,6 @@ generate_pkgconfig( +@@ -48907,6 +48241,6 @@ generate_pkgconfig( "${gRPC_CPP_VERSION}" - "absl_absl_check absl_absl_log absl_algorithm_container absl_any_invocable absl_base absl_bind_front absl_bits absl_btree absl_check absl_cleanup absl_config absl_cord absl_core_headers absl_flags absl_flags_marshalling absl_flat_hash_map absl_flat_hash_set absl_function_ref absl_hash absl_inlined_vector absl_log absl_log_globals absl_log_severity absl_memory absl_no_destructor absl_optional absl_random_bit_gen_ref absl_random_distributions absl_random_random absl_span absl_status absl_statusor absl_str_format absl_string_view absl_strings absl_synchronization absl_time absl_type_traits absl_utility gpr grpc grpc++ opentelemetry_api" + "absl_absl_check absl_absl_log absl_algorithm_container absl_any_invocable absl_base absl_bind_front absl_bits absl_btree absl_check absl_cleanup absl_config absl_cord absl_core_headers absl_dynamic_annotations absl_flags absl_flags_marshalling absl_flat_hash_map absl_flat_hash_set absl_function_ref absl_hash absl_inlined_vector absl_layout absl_log absl_log_globals absl_log_severity absl_memory absl_no_destructor absl_optional absl_prefetch absl_random_bit_gen_ref absl_random_distributions absl_random_random absl_span absl_status absl_statusor absl_str_format absl_string_view absl_strings absl_strings_internal absl_synchronization absl_time absl_type_traits absl_utility gpr grpc grpc++ opentelemetry_api" "libcares openssl re2 zlib" - "-lgrpcpp_otel_plugin" - "-laddress_sorting -lupb_textformat_lib -lupb_json_lib -lupb_reflection_lib -lupb_wire_lib -lupb_message_lib -lutf8_range_lib -lupb_mini_descriptor_lib -lupb_mini_table_lib -lupb_hash_lib -lupb_mem_lib -lupb_base_lib -lupb_lex_lib" diff --git a/recipe/patches/0010-reduce-buildtests_cxx-target-to-end2end-tests.patch b/recipe/patches/0010-reduce-buildtests_cxx-target-to-end2end-tests.patch index 1c3eaa3e..6781d030 100644 --- a/recipe/patches/0010-reduce-buildtests_cxx-target-to-end2end-tests.patch +++ b/recipe/patches/0010-reduce-buildtests_cxx-target-to-end2end-tests.patch @@ -1,4 +1,4 @@ -From 0f1d5f1c06deefb09a3a2a6e7e000bd1b5b4f50b Mon Sep 17 00:00:00 2001 +From 96d0cbeacecb1e572e24a6c3ee75ebf0f62128b0 Mon Sep 17 00:00:00 2001 From: "H. Vetinari" Date: Sun, 2 Mar 2025 08:22:39 +1100 Subject: [PATCH 10/14] reduce buildtests_cxx target to end2end tests @@ -77,11 +77,11 @@ to compile, compare with the timings below. 2025-08-08T11:22:34.6749979Z [7901/8027] Creating library symlink third_party/benchmark/src/libbenchmark_main.so.1 third_party/benchmark/src/libbenchmark_main.so ``` --- - CMakeLists.txt | 717 +++---------------------------------------------- - 1 file changed, 41 insertions(+), 676 deletions(-) + CMakeLists.txt | 730 +++---------------------------------------------- + 1 file changed, 42 insertions(+), 688 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt -index c0d1f6f363..b44b6fe124 100644 +index a4c4bd0b0f..3feaac57b8 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -47,11 +47,12 @@ set(gRPC_INSTALL_SHAREDIR "share/grpc" CACHE STRING "Installation directory for @@ -98,7 +98,7 @@ index c0d1f6f363..b44b6fe124 100644 enable_testing() endif() -@@ -739,7 +740,7 @@ protobuf_generate_grpc_cpp_with_import_path_correction( +@@ -742,7 +743,7 @@ protobuf_generate_grpc_cpp_with_import_path_correction( # This enables CMake to build the project without requiring submodules # in the third_party directory as long as test builds are disabled. @@ -107,7 +107,7 @@ index c0d1f6f363..b44b6fe124 100644 protobuf_generate_grpc_cpp_with_import_path_correction( src/proto/grpc/testing/benchmark_service.proto src/proto/grpc/testing/benchmark_service.proto ) -@@ -1278,167 +1279,16 @@ endif() +@@ -1281,167 +1282,16 @@ endif() if(gRPC_BUILD_TESTS) add_custom_target(buildtests_c) @@ -275,7 +275,7 @@ index c0d1f6f363..b44b6fe124 100644 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) add_dependencies(buildtests_cxx end2end_chaotic_good_no_logging_test) endif() -@@ -1454,508 +1304,23 @@ if(gRPC_BUILD_TESTS) +@@ -1459,520 +1309,24 @@ if(gRPC_BUILD_TESTS) add_dependencies(buildtests_cxx end2end_posix_no_logging_test) add_dependencies(buildtests_cxx end2end_posix_test) add_dependencies(buildtests_cxx end2end_test) @@ -395,6 +395,7 @@ index c0d1f6f363..b44b6fe124 100644 - add_dependencies(buildtests_cxx initial_settings_frame_bad_client_test) - add_dependencies(buildtests_cxx insecure_credentials_test) - add_dependencies(buildtests_cxx insecure_security_connector_test) +- add_dependencies(buildtests_cxx instrument_test) - add_dependencies(buildtests_cxx inter_activity_latch_test) - add_dependencies(buildtests_cxx inter_activity_mutex_test) - add_dependencies(buildtests_cxx inter_activity_pipe_test) @@ -415,6 +416,8 @@ index c0d1f6f363..b44b6fe124 100644 - add_dependencies(buildtests_cxx jwt_verifier_test) - add_dependencies(buildtests_cxx lame_client_test) - add_dependencies(buildtests_cxx latch_test) +- add_dependencies(buildtests_cxx latent_see_service_test) +- add_dependencies(buildtests_cxx latent_see_test) - add_dependencies(buildtests_cxx layout_test) - add_dependencies(buildtests_cxx lb_get_cpu_stats_test) - add_dependencies(buildtests_cxx lb_load_data_store_test) @@ -593,6 +596,10 @@ index c0d1f6f363..b44b6fe124 100644 - add_dependencies(buildtests_cxx socket_utils_test) - endif() - add_dependencies(buildtests_cxx sorted_pack_test) + add_dependencies(buildtests_cxx spiffe_bundle_map_end2end_test) +- if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) +- add_dependencies(buildtests_cxx spiffe_ssl_transport_security_test) +- endif() - add_dependencies(buildtests_cxx spiffe_utils_test) - add_dependencies(buildtests_cxx spinlock_test) - if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) @@ -610,6 +617,7 @@ index c0d1f6f363..b44b6fe124 100644 - add_dependencies(buildtests_cxx status_flag_test) - add_dependencies(buildtests_cxx status_helper_test) - add_dependencies(buildtests_cxx status_util_test) +- add_dependencies(buildtests_cxx stream_data_queue_test) - add_dependencies(buildtests_cxx stream_leak_with_queued_flow_control_update_test) - if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) - add_dependencies(buildtests_cxx streaming_throughput_test) @@ -706,6 +714,7 @@ index c0d1f6f363..b44b6fe124 100644 - if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) - add_dependencies(buildtests_cxx work_serializer_test) - endif() +- add_dependencies(buildtests_cxx writable_streams_test) - add_dependencies(buildtests_cxx write_size_policy_test) - if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) - add_dependencies(buildtests_cxx writes_per_rpc_test) @@ -774,6 +783,9 @@ index c0d1f6f363..b44b6fe124 100644 - if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) - add_dependencies(buildtests_cxx xds_security_end2end_test) - endif() +- if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) +- add_dependencies(buildtests_cxx xds_security_spiffe_end2end_test) +- endif() - add_dependencies(buildtests_cxx xds_stats_watcher_test) - if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) - add_dependencies(buildtests_cxx xds_wrr_end2end_test) @@ -784,7 +796,7 @@ index c0d1f6f363..b44b6fe124 100644 add_custom_target(buildtests DEPENDS buildtests_c buildtests_cxx) -@@ -3169,7 +2534,7 @@ if(gRPC_INSTALL) +@@ -3197,7 +2551,7 @@ if(gRPC_INSTALL) ) endif() @@ -793,7 +805,7 @@ index c0d1f6f363..b44b6fe124 100644 add_library(grpc_test_util test/core/event_engine/test_init.cc -@@ -3891,7 +3256,7 @@ if(gRPC_INSTALL) +@@ -3924,7 +3278,7 @@ if(gRPC_INSTALL) ) endif() @@ -802,7 +814,7 @@ index c0d1f6f363..b44b6fe124 100644 add_library(gtest third_party/googletest/googlemock/src/gmock-cardinalities.cc -@@ -4613,7 +3978,7 @@ if(gRPC_INSTALL) +@@ -4650,7 +4004,7 @@ if(gRPC_INSTALL) endif() endif() @@ -811,7 +823,7 @@ index c0d1f6f363..b44b6fe124 100644 add_library(grpc++_test src/cpp/client/channel_test_peer.cc -@@ -4686,7 +4051,7 @@ foreach(_hdr +@@ -4723,7 +4077,7 @@ foreach(_hdr endforeach() endif() @@ -820,7 +832,7 @@ index c0d1f6f363..b44b6fe124 100644 add_library(grpc++_test_config test/cpp/util/test_config_cc.cc -@@ -4738,7 +4103,7 @@ target_link_libraries(grpc++_test_config +@@ -4775,7 +4129,7 @@ target_link_libraries(grpc++_test_config endif() @@ -829,7 +841,7 @@ index c0d1f6f363..b44b6fe124 100644 add_library(grpc++_test_util src/core/util/subprocess_posix.cc -@@ -6056,7 +5421,7 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) +@@ -6099,7 +5453,7 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) endif() endif() @@ -838,7 +850,7 @@ index c0d1f6f363..b44b6fe124 100644 add_executable(admin_services_end2end_test ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/xds/v3/csds.pb.cc -@@ -7472,7 +6837,7 @@ target_link_libraries(arena_test +@@ -7515,7 +6869,7 @@ target_link_libraries(arena_test endif() @@ -847,7 +859,7 @@ index c0d1f6f363..b44b6fe124 100644 add_executable(async_end2end_test ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/health/v1/health.pb.cc -@@ -10727,7 +10092,7 @@ target_link_libraries(client_authority_filter_test +@@ -10847,7 +10201,7 @@ target_link_libraries(client_authority_filter_test endif() @@ -856,7 +868,7 @@ index c0d1f6f363..b44b6fe124 100644 add_executable(client_callback_end2end_test ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.pb.cc -@@ -10972,7 +10337,7 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) +@@ -11092,7 +10446,7 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) endif() endif() @@ -865,7 +877,7 @@ index c0d1f6f363..b44b6fe124 100644 add_executable(client_interceptors_end2end_test ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.pb.cc -@@ -11049,7 +10414,7 @@ target_link_libraries(client_interceptors_end2end_test +@@ -11169,7 +10523,7 @@ target_link_libraries(client_interceptors_end2end_test endif() @@ -874,7 +886,7 @@ index c0d1f6f363..b44b6fe124 100644 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) add_executable(client_lb_end2end_test -@@ -11743,7 +11108,7 @@ target_link_libraries(connectivity_state_test +@@ -11863,7 +11217,7 @@ target_link_libraries(connectivity_state_test endif() @@ -883,7 +895,7 @@ index c0d1f6f363..b44b6fe124 100644 add_executable(context_allocator_end2end_test ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.pb.cc -@@ -12599,7 +11964,7 @@ target_link_libraries(duplicate_header_bad_client_test +@@ -12719,7 +12073,7 @@ target_link_libraries(duplicate_header_bad_client_test endif() @@ -892,7 +904,7 @@ index c0d1f6f363..b44b6fe124 100644 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) add_executable(end2end_chaotic_good_no_logging_test -@@ -12703,7 +12068,7 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) +@@ -12823,7 +12177,7 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) endif() endif() @@ -901,7 +913,7 @@ index c0d1f6f363..b44b6fe124 100644 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) add_executable(end2end_chaotic_good_test -@@ -12895,7 +12260,7 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) +@@ -13015,7 +12369,7 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) endif() endif() @@ -910,7 +922,7 @@ index c0d1f6f363..b44b6fe124 100644 add_executable(end2end_http2_no_logging_test ${_gRPC_PROTO_GENS_DIR}/src/core/ext/transport/chaotic_good/chaotic_good_frame.pb.cc -@@ -12997,7 +12362,7 @@ target_link_libraries(end2end_http2_no_logging_test +@@ -13117,7 +12471,7 @@ target_link_libraries(end2end_http2_no_logging_test endif() @@ -919,7 +931,7 @@ index c0d1f6f363..b44b6fe124 100644 add_executable(end2end_http2_security_no_logging_test ${_gRPC_PROTO_GENS_DIR}/src/core/ext/transport/chaotic_good/chaotic_good_frame.pb.cc -@@ -13099,7 +12464,7 @@ target_link_libraries(end2end_http2_security_no_logging_test +@@ -13219,7 +12573,7 @@ target_link_libraries(end2end_http2_security_no_logging_test endif() @@ -928,7 +940,7 @@ index c0d1f6f363..b44b6fe124 100644 add_executable(end2end_http2_security_test ${_gRPC_PROTO_GENS_DIR}/src/core/ext/transport/chaotic_good/chaotic_good_frame.pb.cc -@@ -13289,7 +12654,7 @@ target_link_libraries(end2end_http2_security_test +@@ -13409,7 +12763,7 @@ target_link_libraries(end2end_http2_security_test endif() @@ -937,7 +949,7 @@ index c0d1f6f363..b44b6fe124 100644 add_executable(end2end_http2_test ${_gRPC_PROTO_GENS_DIR}/src/core/ext/transport/chaotic_good/chaotic_good_frame.pb.cc -@@ -13479,7 +12844,7 @@ target_link_libraries(end2end_http2_test +@@ -13599,7 +12953,7 @@ target_link_libraries(end2end_http2_test endif() @@ -946,7 +958,7 @@ index c0d1f6f363..b44b6fe124 100644 add_executable(end2end_inproc_no_logging_test ${_gRPC_PROTO_GENS_DIR}/src/core/ext/transport/chaotic_good/chaotic_good_frame.pb.cc -@@ -13581,7 +12946,7 @@ target_link_libraries(end2end_inproc_no_logging_test +@@ -13701,7 +13055,7 @@ target_link_libraries(end2end_inproc_no_logging_test endif() @@ -955,16 +967,16 @@ index c0d1f6f363..b44b6fe124 100644 add_executable(end2end_inproc_test ${_gRPC_PROTO_GENS_DIR}/src/core/ext/transport/chaotic_good/chaotic_good_frame.pb.cc -@@ -13771,7 +13136,7 @@ target_link_libraries(end2end_inproc_test +@@ -13891,7 +13245,7 @@ target_link_libraries(end2end_inproc_test endif() -if(gRPC_BUILD_TESTS) +if(gRPC_CF_TESTS) - add_executable(end2end_posix_no_logging_test + add_executable(end2end_ph2_no_logging_test ${_gRPC_PROTO_GENS_DIR}/src/core/ext/transport/chaotic_good/chaotic_good_frame.pb.cc -@@ -13873,7 +13238,7 @@ target_link_libraries(end2end_posix_no_logging_test +@@ -14285,7 +13639,7 @@ target_link_libraries(end2end_posix_no_logging_test endif() @@ -973,7 +985,7 @@ index c0d1f6f363..b44b6fe124 100644 add_executable(end2end_posix_test ${_gRPC_PROTO_GENS_DIR}/src/core/ext/transport/chaotic_good/chaotic_good_frame.pb.cc -@@ -14063,7 +13428,7 @@ target_link_libraries(end2end_posix_test +@@ -14475,7 +13829,7 @@ target_link_libraries(end2end_posix_test endif() @@ -982,7 +994,7 @@ index c0d1f6f363..b44b6fe124 100644 add_executable(end2end_test ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/duplicate/echo_duplicate.pb.cc -@@ -16201,7 +15566,7 @@ target_link_libraries(gcp_authentication_filter_test +@@ -16679,7 +16033,7 @@ target_link_libraries(gcp_authentication_filter_test endif() @@ -991,7 +1003,7 @@ index c0d1f6f363..b44b6fe124 100644 add_executable(generic_end2end_test ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/duplicate/echo_duplicate.pb.cc -@@ -16708,7 +16073,7 @@ target_link_libraries(grpc_authorization_policy_provider_test +@@ -17186,7 +16540,7 @@ target_link_libraries(grpc_authorization_policy_provider_test endif() @@ -1000,7 +1012,7 @@ index c0d1f6f363..b44b6fe124 100644 add_executable(grpc_authz_end2end_test ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.pb.cc -@@ -17722,7 +17087,7 @@ target_link_libraries(grpclb_api_test +@@ -18200,7 +17554,7 @@ target_link_libraries(grpclb_api_test endif() @@ -1009,7 +1021,7 @@ index c0d1f6f363..b44b6fe124 100644 if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) add_executable(grpclb_end2end_test -@@ -18493,7 +17858,7 @@ target_link_libraries(headers_bad_client_test +@@ -18974,7 +18328,7 @@ target_link_libraries(headers_bad_client_test endif() @@ -1018,7 +1030,7 @@ index c0d1f6f363..b44b6fe124 100644 add_executable(health_service_end2end_test ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/health/v1/health.pb.cc -@@ -19174,7 +18539,7 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) +@@ -19665,7 +19019,7 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) endif() endif() @@ -1027,7 +1039,7 @@ index c0d1f6f363..b44b6fe124 100644 add_executable(hybrid_end2end_test ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/duplicate/echo_duplicate.pb.cc -@@ -21306,7 +20671,7 @@ target_link_libraries(memory_quota_test +@@ -22006,7 +21360,7 @@ target_link_libraries(memory_quota_test endif() @@ -1036,7 +1048,7 @@ index c0d1f6f363..b44b6fe124 100644 add_executable(memory_usage_test src/core/util/time.cc -@@ -22314,7 +21679,7 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) +@@ -23043,7 +22397,7 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) endif() endif() @@ -1045,7 +1057,7 @@ index c0d1f6f363..b44b6fe124 100644 add_executable(orca_service_end2end_test ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/xds/v3/orca_service.pb.cc -@@ -23717,7 +23082,7 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) +@@ -24448,7 +23802,7 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) endif() endif() @@ -1054,7 +1066,7 @@ index c0d1f6f363..b44b6fe124 100644 add_executable(port_sharing_end2end_test ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.pb.cc -@@ -25644,7 +25009,7 @@ target_link_libraries(random_early_detection_test +@@ -26389,7 +25743,7 @@ target_link_libraries(random_early_detection_test endif() @@ -1063,7 +1075,7 @@ index c0d1f6f363..b44b6fe124 100644 add_executable(raw_end2end_test ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/duplicate/echo_duplicate.pb.cc -@@ -26246,7 +25611,7 @@ target_link_libraries(resolve_address_using_native_resolver_test +@@ -26992,7 +26346,7 @@ target_link_libraries(resolve_address_using_native_resolver_test endif() @@ -1072,7 +1084,7 @@ index c0d1f6f363..b44b6fe124 100644 add_executable(resource_quota_end2end_stress_test ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.pb.cc -@@ -26528,7 +25893,7 @@ target_link_libraries(ring_hash_test +@@ -27274,7 +26628,7 @@ target_link_libraries(ring_hash_test endif() @@ -1081,7 +1093,7 @@ index c0d1f6f363..b44b6fe124 100644 add_executable(rls_end2end_test ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/lookup/v1/rls.pb.cc -@@ -27467,7 +26832,7 @@ target_link_libraries(server_early_return_test +@@ -28213,7 +27567,7 @@ target_link_libraries(server_early_return_test endif() @@ -1090,7 +1102,7 @@ index c0d1f6f363..b44b6fe124 100644 add_executable(server_interceptors_end2end_test ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.pb.cc -@@ -27753,7 +27118,7 @@ target_link_libraries(server_test +@@ -28499,7 +27853,7 @@ target_link_libraries(server_test endif() @@ -1099,7 +1111,16 @@ index c0d1f6f363..b44b6fe124 100644 add_executable(service_config_end2end_test ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/duplicate/echo_duplicate.pb.cc -@@ -29609,7 +28974,7 @@ target_link_libraries(test_core_credentials_transport_ssl_ssl_credentials_test +@@ -29115,7 +28469,7 @@ target_link_libraries(sorted_pack_test + + + endif() +-if(gRPC_BUILD_TESTS) ++if(gRPC_BUILD_TESTS OR gRPC_CF_TESTS) + + add_executable(spiffe_bundle_map_end2end_test + ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.pb.cc +@@ -30524,7 +29878,7 @@ target_link_libraries(test_core_credentials_transport_ssl_ssl_credentials_test endif() @@ -1108,7 +1129,7 @@ index c0d1f6f363..b44b6fe124 100644 add_executable(test_core_credentials_transport_tls_tls_credentials_test test/core/credentials/transport/tls/tls_credentials_test.cc -@@ -29971,7 +29336,7 @@ target_link_libraries(test_cpp_client_credentials_test +@@ -30886,7 +30240,7 @@ target_link_libraries(test_cpp_client_credentials_test endif() @@ -1117,7 +1138,7 @@ index c0d1f6f363..b44b6fe124 100644 add_executable(test_cpp_end2end_ssl_credentials_test ${_gRPC_PROTO_GENS_DIR}/src/proto/grpc/testing/echo.pb.cc -@@ -30047,7 +29412,7 @@ target_link_libraries(test_cpp_end2end_ssl_credentials_test +@@ -30962,7 +30316,7 @@ target_link_libraries(test_cpp_end2end_ssl_credentials_test endif() diff --git a/recipe/patches/0011-build-grpcio-tools-from-source.patch b/recipe/patches/0011-build-grpcio-tools-from-source.patch index 7de9f136..4eafba85 100644 --- a/recipe/patches/0011-build-grpcio-tools-from-source.patch +++ b/recipe/patches/0011-build-grpcio-tools-from-source.patch @@ -1,4 +1,4 @@ -From 503b3c33580670b772bb321dc44a4b1f1e3b1f03 Mon Sep 17 00:00:00 2001 +From bf8b63f2b038cc659a4bc4f53f9fb7d99010724f Mon Sep 17 00:00:00 2001 From: "H. Vetinari" Date: Tue, 4 Mar 2025 08:53:30 +1100 Subject: [PATCH 11/14] build grpcio-tools from source @@ -8,7 +8,7 @@ Subject: [PATCH 11/14] build grpcio-tools from source 1 file changed, 31 insertions(+), 12 deletions(-) diff --git a/tools/distrib/python/grpcio_tools/setup.py b/tools/distrib/python/grpcio_tools/setup.py -index c70bf65192..c005ea6ec0 100644 +index 6d65e831b8..4e7b83ad46 100644 --- a/tools/distrib/python/grpcio_tools/setup.py +++ b/tools/distrib/python/grpcio_tools/setup.py @@ -15,6 +15,7 @@ @@ -19,7 +19,7 @@ index c70bf65192..c005ea6ec0 100644 import platform import re import shlex -@@ -177,12 +178,9 @@ EXTRA_ENV_LINK_ARGS = os.environ.get("GRPC_PYTHON_LDFLAGS", None) +@@ -181,12 +182,9 @@ EXTRA_ENV_LINK_ARGS = os.environ.get("GRPC_PYTHON_LDFLAGS", None) if EXTRA_ENV_COMPILE_ARGS is None: EXTRA_ENV_COMPILE_ARGS = "" if "win32" in sys.platform: @@ -34,7 +34,7 @@ index c70bf65192..c005ea6ec0 100644 elif "linux" in sys.platform: # GCC by defaults uses C17 so only C++17 needs to be specified. EXTRA_ENV_COMPILE_ARGS += " -std=c++17" -@@ -241,14 +239,16 @@ EXTRA_LINK_ARGS = shlex.split(EXTRA_ENV_LINK_ARGS) +@@ -245,14 +243,16 @@ EXTRA_LINK_ARGS = shlex.split(EXTRA_ENV_LINK_ARGS) if BUILD_WITH_STATIC_LIBSTDCXX: EXTRA_LINK_ARGS.append("-static-libstdc++") @@ -54,7 +54,7 @@ index c70bf65192..c005ea6ec0 100644 GRPC_PYTHON_TOOLS_PACKAGE = "grpc_tools" GRPC_PYTHON_PROTO_RESOURCES_NAME = "_proto" -@@ -290,16 +290,34 @@ def package_data(): +@@ -294,16 +294,34 @@ def package_data(): return {GRPC_PYTHON_TOOLS_PACKAGE: proto_files} @@ -91,7 +91,7 @@ index c70bf65192..c005ea6ec0 100644 ] + CC_FILES plugin_ext = Extension( -@@ -307,10 +325,11 @@ def extension_modules(): +@@ -311,10 +329,11 @@ def extension_modules(): sources=plugin_sources, include_dirs=[ ".", diff --git a/recipe/patches/0012-add-linkage-to-openssl-to-grpc_unsecure.patch b/recipe/patches/0012-add-linkage-to-openssl-to-grpc_unsecure.patch index f7562ebe..ee602058 100644 --- a/recipe/patches/0012-add-linkage-to-openssl-to-grpc_unsecure.patch +++ b/recipe/patches/0012-add-linkage-to-openssl-to-grpc_unsecure.patch @@ -1,4 +1,4 @@ -From b7eff64d6949288fa94a9d06fca6d222b381d6f4 Mon Sep 17 00:00:00 2001 +From 3f2d2ab204fcca6b7f23248c73f5b9a620fbbcd3 Mon Sep 17 00:00:00 2001 From: "H. Vetinari" Date: Sat, 1 Mar 2025 08:06:28 +1100 Subject: [PATCH 12/14] add linkage to openssl to grpc_unsecure @@ -12,10 +12,10 @@ https://github.com/grpc/grpc/blob/v1.69.0/src/core/tsi/ssl_transport_security_ut 1 file changed, 2 insertions(+) diff --git a/CMakeLists.txt b/CMakeLists.txt -index b44b6fe124..b28c5a7318 100644 +index 3feaac57b8..fd9922887b 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt -@@ -3091,6 +3091,7 @@ add_library(grpc_unsecure +@@ -3113,6 +3113,7 @@ add_library(grpc_unsecure src/core/tsi/alts/handshaker/transport_security_common_api.cc src/core/tsi/fake_transport_security.cc src/core/tsi/local_transport_security.cc @@ -23,7 +23,7 @@ index b44b6fe124..b28c5a7318 100644 src/core/tsi/transport_security.cc src/core/tsi/transport_security_grpc.cc src/core/util/backoff.cc -@@ -3169,6 +3170,7 @@ target_link_libraries(grpc_unsecure +@@ -3191,6 +3192,7 @@ target_link_libraries(grpc_unsecure PRIVATE ${_gRPC_ZLIB_LIBRARIES} PRIVATE ${_gRPC_CARES_LIBRARIES} # external dependencies that need to available at runtime diff --git a/recipe/patches/0013-reduce-grpc-symbol-explosion-with-autogenerated-expo.patch b/recipe/patches/0013-reduce-grpc-symbol-explosion-with-autogenerated-expo.patch index 5d3c8c95..bba62e26 100644 --- a/recipe/patches/0013-reduce-grpc-symbol-explosion-with-autogenerated-expo.patch +++ b/recipe/patches/0013-reduce-grpc-symbol-explosion-with-autogenerated-expo.patch @@ -1,4 +1,4 @@ -From bd740a3a220b8a5cf8482fb5de10d48d2a44d8db Mon Sep 17 00:00:00 2001 +From b1fdcac4453db4b104e61d630a527fe06f3d53ef Mon Sep 17 00:00:00 2001 From: "H. Vetinari" Date: Wed, 5 Mar 2025 13:21:01 +1100 Subject: [PATCH 13/14] reduce grpc symbol explosion with autogenerated export @@ -38,10 +38,10 @@ other consumers end up linking to them. 1 file changed, 24 insertions(+) diff --git a/CMakeLists.txt b/CMakeLists.txt -index b28c5a7318..53133fe185 100644 +index fd9922887b..a6d018ecd3 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt -@@ -2401,6 +2401,30 @@ add_library(grpc +@@ -2418,6 +2418,30 @@ add_library(grpc src/core/xds/xds_client/xds_client.cc ) diff --git a/recipe/patches/0014-update-GRPC_DLL-instances-where-necessary.patch b/recipe/patches/0014-update-GRPC_DLL-instances-where-necessary.patch index 3026ff49..02646e18 100644 --- a/recipe/patches/0014-update-GRPC_DLL-instances-where-necessary.patch +++ b/recipe/patches/0014-update-GRPC_DLL-instances-where-necessary.patch @@ -1,4 +1,4 @@ -From c7b24ac6a94629e400844e29759af2edb974008a Mon Sep 17 00:00:00 2001 +From 5ccdc8b9ea6765b1c6d8744642732d870e0ee0b9 Mon Sep 17 00:00:00 2001 From: "H. Vetinari" Date: Sun, 2 Mar 2025 07:16:19 +1100 Subject: [PATCH 14/14] update GRPC_DLL instances where necessary @@ -8,22 +8,25 @@ Subject: [PATCH 14/14] update GRPC_DLL instances where necessary src/core/config/core_configuration.h | 2 +- src/core/credentials/call/json_util.h | 2 +- .../transport/tls/grpc_tls_certificate_provider.h | 2 +- + src/core/credentials/transport/tls/spiffe_utils.h | 4 ++-- src/core/ext/transport/chttp2/server/chttp2_server.h | 2 +- src/core/ext/transport/inproc/inproc_transport.h | 2 +- src/core/lib/channel/channel_args.h | 4 ++-- src/core/lib/debug/trace_flags.h | 2 +- src/core/lib/experiments/config.h | 4 ++-- src/core/lib/iomgr/iomgr.h | 2 +- + src/core/lib/iomgr/socket_mutator.h | 2 +- src/core/lib/promise/activity.h | 2 +- src/core/lib/resource_quota/thread_quota.h | 2 +- src/core/lib/surface/call.h | 4 ++-- src/core/lib/surface/completion_queue.h | 8 ++++---- src/core/transport/auth_context.h | 2 +- + src/core/tsi/ssl_transport_security.h | 2 +- src/core/util/json/json_reader.cc | 2 +- src/core/util/json/json_reader.h | 2 +- src/core/util/load_file.h | 2 +- src/core/util/time.h | 4 ++-- - 19 files changed, 26 insertions(+), 26 deletions(-) + 22 files changed, 30 insertions(+), 30 deletions(-) diff --git a/include/grpc/event_engine/event_engine.h b/include/grpc/event_engine/event_engine.h index d2c91ca596..1abaa7ac6f 100644 @@ -39,10 +42,10 @@ index d2c91ca596..1abaa7ac6f 100644 /// Thin wrapper around a platform-specific sockaddr type. A sockaddr struct /// exists on all platforms that gRPC supports. diff --git a/src/core/config/core_configuration.h b/src/core/config/core_configuration.h -index b3522d9294..c71eec8655 100644 +index e6b779bc96..0803899034 100644 --- a/src/core/config/core_configuration.h +++ b/src/core/config/core_configuration.h -@@ -39,7 +39,7 @@ namespace grpc_core { +@@ -40,7 +40,7 @@ namespace grpc_core { // Global singleton that stores library configuration - factories, etc... // that plugins might choose to extend. @@ -65,10 +68,10 @@ index da7ff0a771..d1f6a52fdf 100644 grpc_error_handle* error); diff --git a/src/core/credentials/transport/tls/grpc_tls_certificate_provider.h b/src/core/credentials/transport/tls/grpc_tls_certificate_provider.h -index d69aa6e7d5..9514cf6275 100644 +index b3d38f6155..91084b9e3a 100644 --- a/src/core/credentials/transport/tls/grpc_tls_certificate_provider.h +++ b/src/core/credentials/transport/tls/grpc_tls_certificate_provider.h -@@ -106,7 +106,7 @@ class StaticDataCertificateProvider final +@@ -107,7 +107,7 @@ class StaticDataCertificateProvider final UniqueTypeName type() const override; @@ -77,6 +80,28 @@ index d69aa6e7d5..9514cf6275 100644 private: struct WatcherInfo { +diff --git a/src/core/credentials/transport/tls/spiffe_utils.h b/src/core/credentials/transport/tls/spiffe_utils.h +index 1c4f011e47..274e6f5b15 100644 +--- a/src/core/credentials/transport/tls/spiffe_utils.h ++++ b/src/core/credentials/transport/tls/spiffe_utils.h +@@ -86,7 +86,7 @@ class SpiffeBundle final { + // SpiffeBundles should be used by loading a SpiffeBundleMap via + // SpiffeBundleMap::FromFile + SpiffeBundle() = default; +- ~SpiffeBundle(); ++ GRPC_DLL ~SpiffeBundle(); + SpiffeBundle(const SpiffeBundle& other); + SpiffeBundle& operator=(const SpiffeBundle& other); + +@@ -136,7 +136,7 @@ class SpiffeBundleMap final { + // returned value represents a valid and SPIFFE Bundle Map. + // The only supported use is configuring X509 roots for a given trust domain - + // no other SPIFFE Bundle configurations are supported. +- static absl::StatusOr FromFile(absl::string_view file_path); ++ GRPC_DLL static absl::StatusOr FromFile(absl::string_view file_path); + + // Returns the roots for a given trust domain in the SPIFFE Bundle Map. + absl::StatusOr> GetRoots( diff --git a/src/core/ext/transport/chttp2/server/chttp2_server.h b/src/core/ext/transport/chttp2/server/chttp2_server.h index 14d62cb513..90f2fb2252 100644 --- a/src/core/ext/transport/chttp2/server/chttp2_server.h @@ -166,8 +191,21 @@ index 280471fae8..506c6e3682 100644 /// Returns true if the caller is a worker thread for any background poller. bool grpc_iomgr_is_any_background_poller_thread(); +diff --git a/src/core/lib/iomgr/socket_mutator.h b/src/core/lib/iomgr/socket_mutator.h +index 9ce180b345..17f484660c 100644 +--- a/src/core/lib/iomgr/socket_mutator.h ++++ b/src/core/lib/iomgr/socket_mutator.h +@@ -67,7 +67,7 @@ void grpc_socket_mutator_init(grpc_socket_mutator* mutator, + const grpc_socket_mutator_vtable* vtable); + + /// Wrap \a mutator as a grpc_arg +-grpc_arg grpc_socket_mutator_to_arg(grpc_socket_mutator* mutator); ++GRPC_DLL grpc_arg grpc_socket_mutator_to_arg(grpc_socket_mutator* mutator); + + /// Perform the file descriptor mutation operation of \a mutator on \a fd + bool grpc_socket_mutator_mutate_fd(grpc_socket_mutator* mutator, int fd, diff --git a/src/core/lib/promise/activity.h b/src/core/lib/promise/activity.h -index f3aa85925a..673a5beca2 100644 +index b77013b8e0..a95c6af554 100644 --- a/src/core/lib/promise/activity.h +++ b/src/core/lib/promise/activity.h @@ -75,7 +75,7 @@ struct Unwakeable final : public Wakeable { @@ -193,10 +231,10 @@ index 18a6e13e7f..83594ba83b 100644 private: Mutex mu_; diff --git a/src/core/lib/surface/call.h b/src/core/lib/surface/call.h -index bc7220ac60..baec12c33c 100644 +index 9dd89db733..91908e1651 100644 --- a/src/core/lib/surface/call.h +++ b/src/core/lib/surface/call.h -@@ -302,9 +302,9 @@ grpc_compression_algorithm grpc_call_compression_for_level( +@@ -303,9 +303,9 @@ grpc_compression_algorithm grpc_call_compression_for_level( // Did this client call receive a trailers-only response // TODO(markdroth): This is currently available only to the C++ API. // Move to surface API if requested by other languages. @@ -238,7 +276,7 @@ index d99c7a248c..d68ce75f8c 100644 void (*done)(void* done_arg, grpc_cq_completion* storage), void* done_arg, grpc_cq_completion* storage, diff --git a/src/core/transport/auth_context.h b/src/core/transport/auth_context.h -index e603660042..2b0ba4cc07 100644 +index dbadba9744..e113226990 100644 --- a/src/core/transport/auth_context.h +++ b/src/core/transport/auth_context.h @@ -49,7 +49,7 @@ struct grpc_auth_property_array { @@ -250,6 +288,18 @@ index e603660042..2b0ba4cc07 100644 #define GRPC_AUTH_CONTEXT_ARG "grpc.auth_context" +diff --git a/src/core/tsi/ssl_transport_security.h b/src/core/tsi/ssl_transport_security.h +index 820d562d05..60524c7ecb 100644 +--- a/src/core/tsi/ssl_transport_security.h ++++ b/src/core/tsi/ssl_transport_security.h +@@ -448,6 +448,6 @@ tsi_result tsi_ssl_extract_x509_subject_names_from_pem_cert( + tsi_result tsi_ssl_get_cert_chain_contents(STACK_OF(X509) * peer_chain, + tsi_peer_property* property); + +-bool IsRootCertInfoEmpty(const RootCertInfo* root_cert_info); ++GRPC_DLL bool IsRootCertInfoEmpty(const RootCertInfo* root_cert_info); + + #endif // GRPC_SRC_CORE_TSI_SSL_TRANSPORT_SECURITY_H diff --git a/src/core/util/json/json_reader.cc b/src/core/util/json/json_reader.cc index 5b437af925..d9c2a609c6 100644 --- a/src/core/util/json/json_reader.cc