From 54456a6059c88f254a0829efce60a3698923816b Mon Sep 17 00:00:00 2001
From: regro-cf-autotick-bot
<36490558+regro-cf-autotick-bot@users.noreply.github.com>
Date: Thu, 15 Jun 2023 16:01:34 +0000
Subject: [PATCH 1/9] Rebuild for protobuf423
---
.ci_support/migrations/protobuf423.yaml | 11 +++++++++++
recipe/meta.yaml | 2 +-
2 files changed, 12 insertions(+), 1 deletion(-)
create mode 100644 .ci_support/migrations/protobuf423.yaml
diff --git a/.ci_support/migrations/protobuf423.yaml b/.ci_support/migrations/protobuf423.yaml
new file mode 100644
index 00000000..d3a462bc
--- /dev/null
+++ b/.ci_support/migrations/protobuf423.yaml
@@ -0,0 +1,11 @@
+__migrator:
+ build_number: 1
+ kind: version
+ migration_number: 2
+libgrpc:
+- '1.54'
+- '1.55'
+libprotobuf:
+- '3.21'
+- '4.23.2'
+migrator_ts: 1684932016.2362208
diff --git a/recipe/meta.yaml b/recipe/meta.yaml
index 85ee6af1..e717a3f1 100644
--- a/recipe/meta.yaml
+++ b/recipe/meta.yaml
@@ -18,7 +18,7 @@ source:
- patches/0008-win-Disable-VS-activation-and-make-build-verbose.patch
build:
- number: 0
+ number: 1
ignore_prefix_files: true
binary_relocation: false
From 1e983b8fff37cc58303d0db3a34ad16d98d1d797 Mon Sep 17 00:00:00 2001
From: regro-cf-autotick-bot
<36490558+regro-cf-autotick-bot@users.noreply.github.com>
Date: Thu, 15 Jun 2023 16:01:52 +0000
Subject: [PATCH 2/9] MNT: Re-rendered with conda-build 3.25.0, conda-smithy
3.23.1, and conda-forge-pinning 2023.06.15.14.18.49
---
.azure-pipelines/azure-pipelines-linux.yml | 24 ++++++--
.azure-pipelines/azure-pipelines-osx.yml | 14 +++--
... linux_64_libgrpc1.54libprotobuf3.21.yaml} | 0
...linux_64_libgrpc1.55libprotobuf4.23.2.yaml | 29 ++++++++++
...x_aarch64_libgrpc1.54libprotobuf3.21.yaml} | 0
..._aarch64_libgrpc1.55libprotobuf4.23.2.yaml | 33 +++++++++++
...x_ppc64le_libgrpc1.54libprotobuf3.21.yaml} | 0
..._ppc64le_libgrpc1.55libprotobuf4.23.2.yaml | 29 ++++++++++
...=> osx_64_libgrpc1.54libprotobuf3.21.yaml} | 0
.../osx_64_libgrpc1.55libprotobuf4.23.2.yaml | 29 ++++++++++
...osx_arm64_libgrpc1.54libprotobuf3.21.yaml} | 0
...sx_arm64_libgrpc1.55libprotobuf4.23.2.yaml | 29 ++++++++++
README.md | 55 +++++++++++++++----
13 files changed, 222 insertions(+), 20 deletions(-)
rename .ci_support/{linux_64_.yaml => linux_64_libgrpc1.54libprotobuf3.21.yaml} (100%)
create mode 100644 .ci_support/linux_64_libgrpc1.55libprotobuf4.23.2.yaml
rename .ci_support/{linux_aarch64_.yaml => linux_aarch64_libgrpc1.54libprotobuf3.21.yaml} (100%)
create mode 100644 .ci_support/linux_aarch64_libgrpc1.55libprotobuf4.23.2.yaml
rename .ci_support/{linux_ppc64le_.yaml => linux_ppc64le_libgrpc1.54libprotobuf3.21.yaml} (100%)
create mode 100644 .ci_support/linux_ppc64le_libgrpc1.55libprotobuf4.23.2.yaml
rename .ci_support/{osx_64_.yaml => osx_64_libgrpc1.54libprotobuf3.21.yaml} (100%)
create mode 100644 .ci_support/osx_64_libgrpc1.55libprotobuf4.23.2.yaml
rename .ci_support/{osx_arm64_.yaml => osx_arm64_libgrpc1.54libprotobuf3.21.yaml} (100%)
create mode 100644 .ci_support/osx_arm64_libgrpc1.55libprotobuf4.23.2.yaml
diff --git a/.azure-pipelines/azure-pipelines-linux.yml b/.azure-pipelines/azure-pipelines-linux.yml
index 3b9dee71..ac1a4b09 100755
--- a/.azure-pipelines/azure-pipelines-linux.yml
+++ b/.azure-pipelines/azure-pipelines-linux.yml
@@ -8,16 +8,28 @@ jobs:
vmImage: ubuntu-latest
strategy:
matrix:
- linux_64_:
- CONFIG: linux_64_
+ linux_64_libgrpc1.54libprotobuf3.21:
+ CONFIG: linux_64_libgrpc1.54libprotobuf3.21
UPLOAD_PACKAGES: 'True'
DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-x86_64
- linux_aarch64_:
- CONFIG: linux_aarch64_
+ linux_64_libgrpc1.55libprotobuf4.23.2:
+ CONFIG: linux_64_libgrpc1.55libprotobuf4.23.2
UPLOAD_PACKAGES: 'True'
DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-x86_64
- linux_ppc64le_:
- CONFIG: linux_ppc64le_
+ linux_aarch64_libgrpc1.54libprotobuf3.21:
+ CONFIG: linux_aarch64_libgrpc1.54libprotobuf3.21
+ UPLOAD_PACKAGES: 'True'
+ DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-x86_64
+ linux_aarch64_libgrpc1.55libprotobuf4.23.2:
+ CONFIG: linux_aarch64_libgrpc1.55libprotobuf4.23.2
+ UPLOAD_PACKAGES: 'True'
+ DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-x86_64
+ linux_ppc64le_libgrpc1.54libprotobuf3.21:
+ CONFIG: linux_ppc64le_libgrpc1.54libprotobuf3.21
+ UPLOAD_PACKAGES: 'True'
+ DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-x86_64
+ linux_ppc64le_libgrpc1.55libprotobuf4.23.2:
+ CONFIG: linux_ppc64le_libgrpc1.55libprotobuf4.23.2
UPLOAD_PACKAGES: 'True'
DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-x86_64
timeoutInMinutes: 360
diff --git a/.azure-pipelines/azure-pipelines-osx.yml b/.azure-pipelines/azure-pipelines-osx.yml
index 8032e967..0e09e5da 100755
--- a/.azure-pipelines/azure-pipelines-osx.yml
+++ b/.azure-pipelines/azure-pipelines-osx.yml
@@ -8,11 +8,17 @@ jobs:
vmImage: macOS-11
strategy:
matrix:
- osx_64_:
- CONFIG: osx_64_
+ osx_64_libgrpc1.54libprotobuf3.21:
+ CONFIG: osx_64_libgrpc1.54libprotobuf3.21
UPLOAD_PACKAGES: 'True'
- osx_arm64_:
- CONFIG: osx_arm64_
+ osx_64_libgrpc1.55libprotobuf4.23.2:
+ CONFIG: osx_64_libgrpc1.55libprotobuf4.23.2
+ UPLOAD_PACKAGES: 'True'
+ osx_arm64_libgrpc1.54libprotobuf3.21:
+ CONFIG: osx_arm64_libgrpc1.54libprotobuf3.21
+ UPLOAD_PACKAGES: 'True'
+ osx_arm64_libgrpc1.55libprotobuf4.23.2:
+ CONFIG: osx_arm64_libgrpc1.55libprotobuf4.23.2
UPLOAD_PACKAGES: 'True'
timeoutInMinutes: 360
diff --git a/.ci_support/linux_64_.yaml b/.ci_support/linux_64_libgrpc1.54libprotobuf3.21.yaml
similarity index 100%
rename from .ci_support/linux_64_.yaml
rename to .ci_support/linux_64_libgrpc1.54libprotobuf3.21.yaml
diff --git a/.ci_support/linux_64_libgrpc1.55libprotobuf4.23.2.yaml b/.ci_support/linux_64_libgrpc1.55libprotobuf4.23.2.yaml
new file mode 100644
index 00000000..2ca26e20
--- /dev/null
+++ b/.ci_support/linux_64_libgrpc1.55libprotobuf4.23.2.yaml
@@ -0,0 +1,29 @@
+c_compiler:
+- gcc
+c_compiler_version:
+- '12'
+cdt_name:
+- cos6
+channel_sources:
+- conda-forge
+channel_targets:
+- conda-forge main
+cxx_compiler:
+- gxx
+cxx_compiler_version:
+- '12'
+docker_image:
+- quay.io/condaforge/linux-anvil-cos7-x86_64
+libabseil:
+- '20230125'
+libgrpc:
+- '1.55'
+libprotobuf:
+- 4.23.2
+target_platform:
+- linux-64
+zip_keys:
+- - c_compiler_version
+ - cxx_compiler_version
+- - libgrpc
+ - libprotobuf
diff --git a/.ci_support/linux_aarch64_.yaml b/.ci_support/linux_aarch64_libgrpc1.54libprotobuf3.21.yaml
similarity index 100%
rename from .ci_support/linux_aarch64_.yaml
rename to .ci_support/linux_aarch64_libgrpc1.54libprotobuf3.21.yaml
diff --git a/.ci_support/linux_aarch64_libgrpc1.55libprotobuf4.23.2.yaml b/.ci_support/linux_aarch64_libgrpc1.55libprotobuf4.23.2.yaml
new file mode 100644
index 00000000..862c32ef
--- /dev/null
+++ b/.ci_support/linux_aarch64_libgrpc1.55libprotobuf4.23.2.yaml
@@ -0,0 +1,33 @@
+BUILD:
+- aarch64-conda_cos7-linux-gnu
+c_compiler:
+- gcc
+c_compiler_version:
+- '12'
+cdt_arch:
+- aarch64
+cdt_name:
+- cos7
+channel_sources:
+- conda-forge
+channel_targets:
+- conda-forge main
+cxx_compiler:
+- gxx
+cxx_compiler_version:
+- '12'
+docker_image:
+- quay.io/condaforge/linux-anvil-cos7-x86_64
+libabseil:
+- '20230125'
+libgrpc:
+- '1.55'
+libprotobuf:
+- 4.23.2
+target_platform:
+- linux-aarch64
+zip_keys:
+- - c_compiler_version
+ - cxx_compiler_version
+- - libgrpc
+ - libprotobuf
diff --git a/.ci_support/linux_ppc64le_.yaml b/.ci_support/linux_ppc64le_libgrpc1.54libprotobuf3.21.yaml
similarity index 100%
rename from .ci_support/linux_ppc64le_.yaml
rename to .ci_support/linux_ppc64le_libgrpc1.54libprotobuf3.21.yaml
diff --git a/.ci_support/linux_ppc64le_libgrpc1.55libprotobuf4.23.2.yaml b/.ci_support/linux_ppc64le_libgrpc1.55libprotobuf4.23.2.yaml
new file mode 100644
index 00000000..d2ae2386
--- /dev/null
+++ b/.ci_support/linux_ppc64le_libgrpc1.55libprotobuf4.23.2.yaml
@@ -0,0 +1,29 @@
+c_compiler:
+- gcc
+c_compiler_version:
+- '12'
+cdt_name:
+- cos7
+channel_sources:
+- conda-forge
+channel_targets:
+- conda-forge main
+cxx_compiler:
+- gxx
+cxx_compiler_version:
+- '12'
+docker_image:
+- quay.io/condaforge/linux-anvil-cos7-x86_64
+libabseil:
+- '20230125'
+libgrpc:
+- '1.55'
+libprotobuf:
+- 4.23.2
+target_platform:
+- linux-ppc64le
+zip_keys:
+- - c_compiler_version
+ - cxx_compiler_version
+- - libgrpc
+ - libprotobuf
diff --git a/.ci_support/osx_64_.yaml b/.ci_support/osx_64_libgrpc1.54libprotobuf3.21.yaml
similarity index 100%
rename from .ci_support/osx_64_.yaml
rename to .ci_support/osx_64_libgrpc1.54libprotobuf3.21.yaml
diff --git a/.ci_support/osx_64_libgrpc1.55libprotobuf4.23.2.yaml b/.ci_support/osx_64_libgrpc1.55libprotobuf4.23.2.yaml
new file mode 100644
index 00000000..118fe2a3
--- /dev/null
+++ b/.ci_support/osx_64_libgrpc1.55libprotobuf4.23.2.yaml
@@ -0,0 +1,29 @@
+MACOSX_DEPLOYMENT_TARGET:
+- '10.12'
+c_compiler:
+- clang
+c_compiler_version:
+- '15'
+channel_sources:
+- conda-forge
+channel_targets:
+- conda-forge main
+cxx_compiler:
+- clangxx
+cxx_compiler_version:
+- '15'
+libabseil:
+- '20230125'
+libgrpc:
+- '1.55'
+libprotobuf:
+- 4.23.2
+macos_machine:
+- x86_64-apple-darwin13.4.0
+target_platform:
+- osx-64
+zip_keys:
+- - c_compiler_version
+ - cxx_compiler_version
+- - libgrpc
+ - libprotobuf
diff --git a/.ci_support/osx_arm64_.yaml b/.ci_support/osx_arm64_libgrpc1.54libprotobuf3.21.yaml
similarity index 100%
rename from .ci_support/osx_arm64_.yaml
rename to .ci_support/osx_arm64_libgrpc1.54libprotobuf3.21.yaml
diff --git a/.ci_support/osx_arm64_libgrpc1.55libprotobuf4.23.2.yaml b/.ci_support/osx_arm64_libgrpc1.55libprotobuf4.23.2.yaml
new file mode 100644
index 00000000..e8fff8c9
--- /dev/null
+++ b/.ci_support/osx_arm64_libgrpc1.55libprotobuf4.23.2.yaml
@@ -0,0 +1,29 @@
+MACOSX_DEPLOYMENT_TARGET:
+- '11.0'
+c_compiler:
+- clang
+c_compiler_version:
+- '15'
+channel_sources:
+- conda-forge
+channel_targets:
+- conda-forge main
+cxx_compiler:
+- clangxx
+cxx_compiler_version:
+- '15'
+libabseil:
+- '20230125'
+libgrpc:
+- '1.55'
+libprotobuf:
+- 4.23.2
+macos_machine:
+- arm64-apple-darwin20.0.0
+target_platform:
+- osx-arm64
+zip_keys:
+- - c_compiler_version
+ - cxx_compiler_version
+- - libgrpc
+ - libprotobuf
diff --git a/README.md b/README.md
index 1ab6f551..f4acff1a 100644
--- a/README.md
+++ b/README.md
@@ -29,38 +29,73 @@ Current build status
Variant | Status |
- linux_64 |
+ linux_64_libgrpc1.54libprotobuf3.21 |
-
+
|
- linux_aarch64 |
+ linux_64_libgrpc1.55libprotobuf4.23.2 |
-
+
|
- linux_ppc64le |
+ linux_aarch64_libgrpc1.54libprotobuf3.21 |
-
+
|
- osx_64 |
+ linux_aarch64_libgrpc1.55libprotobuf4.23.2 |
-
+
|
- osx_arm64 |
+ linux_ppc64le_libgrpc1.54libprotobuf3.21 |
-
+
+
+ |
+
+ linux_ppc64le_libgrpc1.55libprotobuf4.23.2 |
+
+
+
+
+ |
+
+ osx_64_libgrpc1.54libprotobuf3.21 |
+
+
+
+
+ |
+
+ osx_64_libgrpc1.55libprotobuf4.23.2 |
+
+
+
+
+ |
+
+ osx_arm64_libgrpc1.54libprotobuf3.21 |
+
+
+
+
+ |
+
+ osx_arm64_libgrpc1.55libprotobuf4.23.2 |
+
+
+
|
From 421dfb3a57fb934dddfc17622f46ec72b2a401a4 Mon Sep 17 00:00:00 2001
From: "H. Vetinari"
Date: Fri, 16 Jun 2023 09:16:33 +1100
Subject: [PATCH 3/9] clean up dependencies
---
recipe/meta.yaml | 17 +++++------------
1 file changed, 5 insertions(+), 12 deletions(-)
diff --git a/recipe/meta.yaml b/recipe/meta.yaml
index e717a3f1..2632d2f0 100644
--- a/recipe/meta.yaml
+++ b/recipe/meta.yaml
@@ -28,13 +28,9 @@ requirements:
- {{ compiler('cxx') }}
- sed # [unix]
- openjdk >=8,<17 # [unix]
- # 2022/05/14
- # Keep libabseil here so that the pinning is maintained between
- # build and host
- - libabseil # [unix]
- - libgrpc # [unix]
+ # we need $BUILD_PREFIX/bin/{grpc_cpp_plugin,grpc_java_plugin,protoc}
- grpc_java_plugin # [unix]
- # - grpc_java_plugin {{ libgrpc }} # [unix]
+ - libgrpc # [unix]
- libprotobuf # [unix]
- ijar {{ version }} # [build_platform != target_platform]
- singlejar {{ version }} # [build_platform != target_platform]
@@ -43,12 +39,9 @@ requirements:
- unzip # [linux]
- python * # [win]
host:
- # note: libabseil's ABI depends on C++ version used to compile it,
- # and we must match that C++ version to compile bazel; the shared
- # libabseil builds currently (20220623.0) use C++17
- - libabseil # [unix]
- - libgrpc # [unix]
- - libprotobuf # [unix]
+ - libabseil # [unix]
+ - libgrpc # [unix]
+ - libprotobuf # [unix]
- openjdk >=8,<17 # [win]
- posix # [win]
run:
From 27a6dc32112ae6a3ecae612ea4f4285e92eb3c78 Mon Sep 17 00:00:00 2001
From: Silvio Traversaro
Date: Sat, 24 Jun 2023 12:19:08 +0200
Subject: [PATCH 4/9] Only parametrize protobuf-version with the protoc
version, hardcoding the major java version
---
recipe/build.sh | 9 +++++++--
recipe/meta.yaml | 7 ++++++-
...RSION.patch => 0003-Parametrize-PROTOC_VERSION.patch} | 6 +++---
3 files changed, 16 insertions(+), 6 deletions(-)
rename recipe/patches/{0003-Parametrize-LIBPROTOBUF_VERSION.patch => 0003-Parametrize-PROTOC_VERSION.patch} (74%)
diff --git a/recipe/build.sh b/recipe/build.sh
index e7b6c819..9df2030f 100644
--- a/recipe/build.sh
+++ b/recipe/build.sh
@@ -18,10 +18,15 @@ fi
# For debugging purposes, you can add
# --logging=6 --subcommands --verbose_failures
# This is though too much log output for Travis CI.
-export LIBPROTOBUF_VERSION=$(conda list -p $PREFIX libprotobuf | grep -v '^#' | tr -s ' ' | cut -f 2 -d ' ')
+# Extract minor.patch from libprotobuf version, that is the protoc version
+# The protobuf-java needs to be manually bumped if necessary
+# See https://protobuf.dev/support/version-support/
+export PROTOC_VERSION=$(conda list -p $PREFIX libprotobuf | grep -v '^#' | tr -s ' ' | cut -f 2 -d ' ' | sed -E 's/^[0-9]+\.([0-9]+\.[0-9]+)$/\1/')
+export PROTOBUF_JAVA_MAJOR_VERSION="3"
export BAZEL_BUILD_OPTS="--crosstool_top=//bazel_toolchain:toolchain --define=PROTOBUF_INCLUDE_PATH=${PREFIX}/include --cpu=${TARGET_CPU}"
export EXTRA_BAZEL_ARGS="--host_javabase=@local_jdk//:jdk"
-sed -ie "s:LIBPROTOBUF_VERSION:${LIBPROTOBUF_VERSION}:" WORKSPACE
+sed -ie "s:PROTOC_VERSION:${PROTOC_VERSION}:" WORKSPACE
+sed -ie "s:PROTOBUF_JAVA_MAJOR_VERSION:${PROTOBUF_JAVA_MAJOR_VERSION}:" WORKSPACE
sed -ie "s:\${INSTALL_NAME_TOOL}:${INSTALL_NAME_TOOL:-install_name_tool}:" src/BUILD
sed -ie "s:\${PREFIX}:${PREFIX}:" src/BUILD
sed -ie "s:\${BUILD_PREFIX}:${BUILD_PREFIX}:" third_party/grpc/BUILD
diff --git a/recipe/meta.yaml b/recipe/meta.yaml
index 2632d2f0..bf484f9f 100644
--- a/recipe/meta.yaml
+++ b/recipe/meta.yaml
@@ -10,7 +10,12 @@ source:
patches:
- patches/0001-allow-args-to-be-passed-to-bazel_build.patch
- patches/0002-Build-with-native-dependencies.patch # [unix]
- - patches/0003-Parametrize-LIBPROTOBUF_VERSION.patch # [unix]
+ # This patch ensures that a protobuf-java version compatible with the libprotobuf version is used
+ # As the protobuf-java major version is not related with the libprotobuf major version, only
+ # the protoc version (i.e. minor.patch) is automatically substituted, while if a new protobuf-java
+ # major version is released, the major version needs to be bumped manually
+ # See https://protobuf.dev/support/version-support/
+ - patches/0003-Parametrize-PROTOC_VERSION.patch # [unix]
- patches/0004-Use-conda-packages-for-build-tools.patch # [build_platform != target_platform]
- patches/0005-grpc-java-plugin-from-build.patch # [unix]
- patches/0006-bazel-bin-loader-path.patch # [osx]
diff --git a/recipe/patches/0003-Parametrize-LIBPROTOBUF_VERSION.patch b/recipe/patches/0003-Parametrize-PROTOC_VERSION.patch
similarity index 74%
rename from recipe/patches/0003-Parametrize-LIBPROTOBUF_VERSION.patch
rename to recipe/patches/0003-Parametrize-PROTOC_VERSION.patch
index ebb89923..7a250889 100644
--- a/recipe/patches/0003-Parametrize-LIBPROTOBUF_VERSION.patch
+++ b/recipe/patches/0003-Parametrize-PROTOC_VERSION.patch
@@ -1,7 +1,7 @@
From ebdf5276ca7a53ba79a754dc451a29c58634169b Mon Sep 17 00:00:00 2001
From: "Uwe L. Korn"
Date: Thu, 28 Oct 2021 11:28:13 +0200
-Subject: [PATCH 3/8] Parametrize LIBPROTOBUF_VERSION
+Subject: [PATCH 3/8] Parametrize PROTOC_VERSION
---
WORKSPACE | 4 ++--
@@ -17,8 +17,8 @@ index 2cf3d945e0..0720d49d99 100644
artifacts = [
- "com.google.protobuf:protobuf-java:3.15.6",
- "com.google.protobuf:protobuf-java-util:3.15.6",
-+ "com.google.protobuf:protobuf-java:LIBPROTOBUF_VERSION",
-+ "com.google.protobuf:protobuf-java-util:LIBPROTOBUF_VERSION",
++ "com.google.protobuf:protobuf-java:PROTOBUF_JAVA_MAJOR_VERSION.PROTOC_VERSION",
++ "com.google.protobuf:protobuf-java-util:PROTOBUF_JAVA_MAJOR_VERSION.PROTOC_VERSION",
],
repositories = [
"https://repo1.maven.org/maven2",
From 52944fde957b9b090ce3648c69e6631e364a78f5 Mon Sep 17 00:00:00 2001
From: Silvio Traversaro
Date: Sat, 24 Jun 2023 13:03:22 +0200
Subject: [PATCH 5/9] Add abseil linkage for protobuf
---
recipe/patches/0002-Build-with-native-dependencies.patch | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/recipe/patches/0002-Build-with-native-dependencies.patch b/recipe/patches/0002-Build-with-native-dependencies.patch
index d58858e7..cab03151 100644
--- a/recipe/patches/0002-Build-with-native-dependencies.patch
+++ b/recipe/patches/0002-Build-with-native-dependencies.patch
@@ -191,13 +191,13 @@ index 0000000000..3e42a1bf31
+
+cc_library(
+ name = "protobuf",
-+ linkopts = ["-lprotobuf"],
++ linkopts = ["-lprotobuf", "-labsl_cord", "-labsl_cord_internal", "-labsl_cordz_functions", "-labsl_cordz_handle", "-labsl_cordz_info", "-labsl_cordz_sample_token", "-labsl_log_entry", "-labsl_log_flags", "-labsl_log_globals", "-labsl_log_initialize", "-labsl_log_internal_check_op", "-labsl_log_internal_conditions", "-labsl_log_internal_format", "-labsl_log_internal_globals", "-labsl_log_internal_log_sink_set", "-labsl_log_internal_message", "-labsl_log_internal_nullguard", "-labsl_log_internal_proto", "-labsl_log_severity", "-labsl_log_sink"],
+ visibility = ["//visibility:public"],
+)
+
+cc_library(
+ name = "protobuf_headers",
-+ linkopts = ["-lprotobuf"],
++ linkopts = ["-lprotobuf", "-labsl_cord", "-labsl_cord_internal", "-labsl_cordz_functions", "-labsl_cordz_handle", "-labsl_cordz_info", "-labsl_cordz_sample_token", "-labsl_log_entry", "-labsl_log_flags", "-labsl_log_globals", "-labsl_log_initialize", "-labsl_log_internal_check_op", "-labsl_log_internal_conditions", "-labsl_log_internal_format", "-labsl_log_internal_globals", "-labsl_log_internal_log_sink_set", "-labsl_log_internal_message", "-labsl_log_internal_nullguard", "-labsl_log_internal_proto", "-labsl_log_severity", "-labsl_log_sink"],
+ visibility = ["//visibility:public"],
+)
+
From fd77e4c73c9f7e51e9794e225e43726efde63ec5 Mon Sep 17 00:00:00 2001
From: Silvio Traversaro
Date: Sat, 24 Jun 2023 14:30:23 +0200
Subject: [PATCH 6/9] Add C++17 to BAZEL_BUILD_OPTS
---
recipe/bld.bat | 2 ++
recipe/build.sh | 2 +-
2 files changed, 3 insertions(+), 1 deletion(-)
diff --git a/recipe/bld.bat b/recipe/bld.bat
index 38de1f33..b633ddc0 100644
--- a/recipe/bld.bat
+++ b/recipe/bld.bat
@@ -63,6 +63,8 @@ set ANT_HOME=
set AZURE_EXTENSION_DIR=
set AZURE_HTTP_USER_AGENT=
+set "BAZEL_BUILD_OPTS=--cxxopt=/std:c++17"
+
bash -lx ./compile.sh
if errorlevel 1 exit 1
diff --git a/recipe/build.sh b/recipe/build.sh
index 9df2030f..357861fb 100644
--- a/recipe/build.sh
+++ b/recipe/build.sh
@@ -23,7 +23,7 @@ fi
# See https://protobuf.dev/support/version-support/
export PROTOC_VERSION=$(conda list -p $PREFIX libprotobuf | grep -v '^#' | tr -s ' ' | cut -f 2 -d ' ' | sed -E 's/^[0-9]+\.([0-9]+\.[0-9]+)$/\1/')
export PROTOBUF_JAVA_MAJOR_VERSION="3"
-export BAZEL_BUILD_OPTS="--crosstool_top=//bazel_toolchain:toolchain --define=PROTOBUF_INCLUDE_PATH=${PREFIX}/include --cpu=${TARGET_CPU}"
+export BAZEL_BUILD_OPTS="--crosstool_top=//bazel_toolchain:toolchain --define=PROTOBUF_INCLUDE_PATH=${PREFIX}/include --cpu=${TARGET_CPU} --cxxopt=-std=c++17"
export EXTRA_BAZEL_ARGS="--host_javabase=@local_jdk//:jdk"
sed -ie "s:PROTOC_VERSION:${PROTOC_VERSION}:" WORKSPACE
sed -ie "s:PROTOBUF_JAVA_MAJOR_VERSION:${PROTOBUF_JAVA_MAJOR_VERSION}:" WORKSPACE
From ea5172eb686c77dc87b1849064e757e2e617d3ad Mon Sep 17 00:00:00 2001
From: Silvio Traversaro
Date: Sat, 24 Jun 2023 14:56:52 +0200
Subject: [PATCH 7/9] Create 0009-backport-pr-18608-fix-vs-activation.patch
---
recipe/meta.yaml | 1 +
...-backport-pr-18608-fix-vs-activation.patch | 96 +++++++++++++++++++
2 files changed, 97 insertions(+)
create mode 100644 recipe/patches/0009-backport-pr-18608-fix-vs-activation.patch
diff --git a/recipe/meta.yaml b/recipe/meta.yaml
index bf484f9f..c0bde00f 100644
--- a/recipe/meta.yaml
+++ b/recipe/meta.yaml
@@ -21,6 +21,7 @@ source:
- patches/0006-bazel-bin-loader-path.patch # [osx]
- patches/0007-Adjust-cross-bazel-resultpath.patch # [build_platform != target_platform]
- patches/0008-win-Disable-VS-activation-and-make-build-verbose.patch
+ - patches/0009-backport-pr-18608-fix-vs-activation.patch
build:
number: 1
diff --git a/recipe/patches/0009-backport-pr-18608-fix-vs-activation.patch b/recipe/patches/0009-backport-pr-18608-fix-vs-activation.patch
new file mode 100644
index 00000000..658cf3d7
--- /dev/null
+++ b/recipe/patches/0009-backport-pr-18608-fix-vs-activation.patch
@@ -0,0 +1,96 @@
+diff --git a/tools/cpp/windows_cc_configure.bzl b/tools/cpp/windows_cc_configure.bzl
+index bd30dc62d911c..2baf68d772afc 100644
+--- a/tools/cpp/windows_cc_configure.bzl
++++ b/tools/cpp/windows_cc_configure.bzl
+@@ -232,15 +232,10 @@ def find_vc_path(repository_ctx):
+ # 5. Check default directories for VC installation
+ auto_configure_warning_maybe(repository_ctx, "Looking for default Visual C++ installation directory")
+ for path in [
+- "Microsoft Visual Studio\\2019\\Preview\\VC",
+- "Microsoft Visual Studio\\2019\\BuildTools\\VC",
+- "Microsoft Visual Studio\\2019\\Community\\VC",
+- "Microsoft Visual Studio\\2019\\Professional\\VC",
+- "Microsoft Visual Studio\\2019\\Enterprise\\VC",
+- "Microsoft Visual Studio\\2017\\BuildTools\\VC",
+- "Microsoft Visual Studio\\2017\\Community\\VC",
+- "Microsoft Visual Studio\\2017\\Professional\\VC",
+- "Microsoft Visual Studio\\2017\\Enterprise\\VC",
++ "Microsoft Visual Studio\\%s\\%s\\VC" % (year, edition)
++ for year in (2022, 2019, 2017)
++ for edition in ("Preview", "BuildTools", "Community", "Professional", "Enterprise")
++ ] + [
+ "Microsoft Visual Studio 14.0\\VC",
+ ]:
+ path = program_files_dir + "\\" + path
+@@ -254,17 +249,19 @@ def find_vc_path(repository_ctx):
+ auto_configure_warning_maybe(repository_ctx, "Visual C++ build tools found at %s" % vc_dir)
+ return vc_dir
+
+-def _is_vs_2017_or_2019(repository_ctx, vc_path):
+- """Check if the installed VS version is Visual Studio 2017 or 2019."""
++def _is_vs_2017_or_newer(repository_ctx, vc_path):
++ """Check if the installed VS version is Visual Studio 2017 or newer."""
+
+- # The layout of VC folder in VS 2017 and 2019 is different from that in VS 2015 and older versions.
+- # In VS 2017 and 2019, it contains only three directories:
++ # The layout of VC folder in VS 2017 and newer versions is different from that in VS 2015 and older versions.
++ # From VS 2017 it contains three directories:
+ # "Auxiliary", "Redist", "Tools"
++ # From VS 2022 17.6, a fourth "vcpkg" directory is also present, but we only check presence of the three
++ # directories above in case other directories pop up in the future
+
+- vc_2017_or_2019_contents = ["auxiliary", "redist", "tools"]
++ vc_2017_or_newer_contents = ["auxiliary", "redist", "tools"]
+ vc_path_contents = [d.basename.lower() for d in repository_ctx.path(vc_path).readdir()]
+- vc_path_contents = sorted(vc_path_contents)
+- return vc_path_contents == vc_2017_or_2019_contents
++ vc_path_contents = sorted([d for d in vc_path_contents if d in vc_2017_or_newer_contents])
++ return vc_path_contents == vc_2017_or_newer_contents
+
+ def _is_msbuildtools(vc_path):
+ """Check if the installed VC version is from MSBuildTools."""
+@@ -275,7 +272,7 @@ def _is_msbuildtools(vc_path):
+
+ def _find_vcvars_bat_script(repository_ctx, vc_path):
+ """Find batch script to set up environment variables for VC. Doesn't %-escape the result."""
+- if _is_vs_2017_or_2019(repository_ctx, vc_path):
++ if _is_vs_2017_or_newer(repository_ctx, vc_path):
+ vcvars_script = vc_path + "\\Auxiliary\\Build\\VCVARSALL.BAT"
+ else:
+ vcvars_script = vc_path + "\\VCVARSALL.BAT"
+@@ -293,7 +290,7 @@ def _is_support_vcvars_ver(vc_full_version):
+
+ def _is_support_winsdk_selection(repository_ctx, vc_path):
+ """Windows SDK selection is supported with VC 2017 / 2019 or with full VS 2015 installation."""
+- if _is_vs_2017_or_2019(repository_ctx, vc_path):
++ if _is_vs_2017_or_newer(repository_ctx, vc_path):
+ return True
+
+ # By checking the source code of VCVARSALL.BAT in VC 2015, we know that
+@@ -319,7 +316,7 @@ def _get_vc_env_vars(repository_ctx, vc_path, msvc_vars_x64, target_arch):
+ dictionary of envvars
+ """
+ env = {}
+- if _is_vs_2017_or_2019(repository_ctx, vc_path):
++ if _is_vs_2017_or_newer(repository_ctx, vc_path):
+ lib = msvc_vars_x64["%{msvc_env_lib_x64}"]
+ full_version = _get_vc_full_version(repository_ctx, vc_path)
+ tools_path = "%s\\Tools\\MSVC\\%s\\bin\\HostX64\\%s" % (vc_path, full_version, target_arch)
+@@ -367,7 +364,7 @@ def setup_vc_env_vars(repository_ctx, vc_path, envvars = [], allow_empty = False
+
+ # Get VC version set by user. Only supports VC 2017 & 2019.
+ vcvars_ver = ""
+- if _is_vs_2017_or_2019(repository_ctx, vc_path):
++ if _is_vs_2017_or_newer(repository_ctx, vc_path):
+ full_version = _get_vc_full_version(repository_ctx, vc_path)
+
+ # Because VCVARSALL.BAT is from the latest VC installed, so we check if the latest
+@@ -448,7 +445,7 @@ def _find_msvc_tools(repository_ctx, vc_path, target_arch = "x64"):
+ def find_msvc_tool(repository_ctx, vc_path, tool, target_arch = "x64"):
+ """Find the exact path of a specific build tool in MSVC. Doesn't %-escape the result."""
+ tool_path = None
+- if _is_vs_2017_or_2019(repository_ctx, vc_path) or _is_msbuildtools(vc_path):
++ if _is_vs_2017_or_newer(repository_ctx, vc_path) or _is_msbuildtools(vc_path):
+ full_version = _get_vc_full_version(repository_ctx, vc_path)
+ if full_version:
+ tool_path = "%s\\Tools\\MSVC\\%s\\bin\\HostX64\\%s\\%s" % (vc_path, full_version, target_arch, tool)
From 89aa719d2f44cbc66bae9e7fb050ed41afc401b4 Mon Sep 17 00:00:00 2001
From: "H. Vetinari"
Date: Sun, 25 Jun 2023 09:57:48 +1100
Subject: [PATCH 8/9] update comment for java version patch & rename that patch
---
recipe/meta.yaml | 12 ++++++------
...0001-allow-args-to-be-passed-to-bazel_build.patch | 7 ++-----
.../0002-Build-with-native-dependencies.patch | 11 ++++-------
...-version-of-protobuf-java-with-libprotobuf.patch} | 9 +++------
.../0004-Use-conda-packages-for-build-tools.patch | 7 ++-----
.../patches/0005-grpc-java-plugin-from-build.patch | 7 ++-----
recipe/patches/0006-bazel-bin-loader-path.patch | 9 +++------
.../patches/0007-Adjust-cross-bazel-resultpath.patch | 7 ++-----
...isable-VS-activation-and-make-build-verbose.patch | 7 ++-----
9 files changed, 26 insertions(+), 50 deletions(-)
rename recipe/patches/{0003-Parametrize-PROTOC_VERSION.patch => 0003-Match-version-of-protobuf-java-with-libprotobuf.patch} (81%)
diff --git a/recipe/meta.yaml b/recipe/meta.yaml
index c0bde00f..7257b1c2 100644
--- a/recipe/meta.yaml
+++ b/recipe/meta.yaml
@@ -10,12 +10,12 @@ source:
patches:
- patches/0001-allow-args-to-be-passed-to-bazel_build.patch
- patches/0002-Build-with-native-dependencies.patch # [unix]
- # This patch ensures that a protobuf-java version compatible with the libprotobuf version is used
- # As the protobuf-java major version is not related with the libprotobuf major version, only
- # the protoc version (i.e. minor.patch) is automatically substituted, while if a new protobuf-java
- # major version is released, the major version needs to be bumped manually
- # See https://protobuf.dev/support/version-support/
- - patches/0003-Parametrize-PROTOC_VERSION.patch # [unix]
+ # This patch ensures that the relevant version of protobuf-java matches libprotobuf.
+ # Note that "relevant" here means minor.patch, where minor is based on the last two
+ # digits of the calendar year. The major version may be different per language, see
+ # https://protobuf.dev/support/version-support/
+ # If the java major version changes, it needs to be bumped manually in build.sh.
+ - patches/0003-Match-version-of-protobuf-java-with-libprotobuf.patch # [unix]
- patches/0004-Use-conda-packages-for-build-tools.patch # [build_platform != target_platform]
- patches/0005-grpc-java-plugin-from-build.patch # [unix]
- patches/0006-bazel-bin-loader-path.patch # [osx]
diff --git a/recipe/patches/0001-allow-args-to-be-passed-to-bazel_build.patch b/recipe/patches/0001-allow-args-to-be-passed-to-bazel_build.patch
index 0c5c0679..ef361dbe 100644
--- a/recipe/patches/0001-allow-args-to-be-passed-to-bazel_build.patch
+++ b/recipe/patches/0001-allow-args-to-be-passed-to-bazel_build.patch
@@ -1,7 +1,7 @@
-From 7ec5a6635447c9e871f2c4297af01115cdc15433 Mon Sep 17 00:00:00 2001
+From a748e3755fd61edbaa916c75699ef94add0b4862 Mon Sep 17 00:00:00 2001
From: Jonathan Helmus
Date: Fri, 16 Mar 2018 12:10:51 -0500
-Subject: [PATCH 1/8] allow args to be passed to bazel_build
+Subject: [PATCH 1/9] allow args to be passed to bazel_build
Allow arguments to be passed to bazel_build via the BAZEL_BUILD_OPTS
environment variable.
@@ -22,6 +22,3 @@ index d91583d277..ce49a1266e 100755
--action_env=PATH \
--host_platform=@local_config_platform//:host \
--platforms=@local_config_platform//:host \
---
-2.38.1.windows.1
-
diff --git a/recipe/patches/0002-Build-with-native-dependencies.patch b/recipe/patches/0002-Build-with-native-dependencies.patch
index cab03151..a782aaf4 100644
--- a/recipe/patches/0002-Build-with-native-dependencies.patch
+++ b/recipe/patches/0002-Build-with-native-dependencies.patch
@@ -1,7 +1,7 @@
-From b2da2beb3f1cf00a57fe2c2d0299209bb13c1d21 Mon Sep 17 00:00:00 2001
+From 46256ac9ad1d615e0cb8d98819028873456eeab1 Mon Sep 17 00:00:00 2001
From: "Uwe L. Korn"
Date: Sun, 21 Mar 2021 21:26:54 +0100
-Subject: [PATCH 2/8] Build with native dependencies
+Subject: [PATCH 2/9] Build with native dependencies
---
WORKSPACE | 37 +-
@@ -16,7 +16,7 @@ Subject: [PATCH 2/8] Build with native dependencies
create mode 100644 third_party/systemlibs/protobuf_deps.bzl
diff --git a/WORKSPACE b/WORKSPACE
-index 0d78fcf027..2cf3d945e0 100644
+index ff47163e72..97e0b73b16 100644
--- a/WORKSPACE
+++ b/WORKSPACE
@@ -90,12 +90,43 @@ bind(
@@ -123,7 +123,7 @@ index 397089d9a5..e6662acc9f 100644
filegroup(
diff --git a/third_party/systemlibs/protobuf.BUILD b/third_party/systemlibs/protobuf.BUILD
new file mode 100644
-index 0000000000..3e42a1bf31
+index 0000000000..b9caa879db
--- /dev/null
+++ b/third_party/systemlibs/protobuf.BUILD
@@ -0,0 +1,141 @@
@@ -718,6 +718,3 @@ index 0000000000..aafd89b0aa
@@ -0,0 +1,2 @@
+def protobuf_deps():
+ pass
---
-2.38.1.windows.1
-
diff --git a/recipe/patches/0003-Parametrize-PROTOC_VERSION.patch b/recipe/patches/0003-Match-version-of-protobuf-java-with-libprotobuf.patch
similarity index 81%
rename from recipe/patches/0003-Parametrize-PROTOC_VERSION.patch
rename to recipe/patches/0003-Match-version-of-protobuf-java-with-libprotobuf.patch
index 7a250889..17344336 100644
--- a/recipe/patches/0003-Parametrize-PROTOC_VERSION.patch
+++ b/recipe/patches/0003-Match-version-of-protobuf-java-with-libprotobuf.patch
@@ -1,14 +1,14 @@
-From ebdf5276ca7a53ba79a754dc451a29c58634169b Mon Sep 17 00:00:00 2001
+From 76025bc65b87b316c1f46ec87747449981392657 Mon Sep 17 00:00:00 2001
From: "Uwe L. Korn"
Date: Thu, 28 Oct 2021 11:28:13 +0200
-Subject: [PATCH 3/8] Parametrize PROTOC_VERSION
+Subject: [PATCH 3/9] Match version of protobuf-java with libprotobuf
---
WORKSPACE | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/WORKSPACE b/WORKSPACE
-index 2cf3d945e0..0720d49d99 100644
+index 97e0b73b16..5ac6d6710d 100644
--- a/WORKSPACE
+++ b/WORKSPACE
@@ -119,8 +119,8 @@ load("@rules_jvm_external//:defs.bzl", "maven_install")
@@ -22,6 +22,3 @@ index 2cf3d945e0..0720d49d99 100644
],
repositories = [
"https://repo1.maven.org/maven2",
---
-2.38.1.windows.1
-
diff --git a/recipe/patches/0004-Use-conda-packages-for-build-tools.patch b/recipe/patches/0004-Use-conda-packages-for-build-tools.patch
index 9c132e7e..c22196d5 100644
--- a/recipe/patches/0004-Use-conda-packages-for-build-tools.patch
+++ b/recipe/patches/0004-Use-conda-packages-for-build-tools.patch
@@ -1,7 +1,7 @@
-From 134179022bd7e204499a2dadc4183890e477c1fd Mon Sep 17 00:00:00 2001
+From a8152a67f7d8a01baf2cbd05367c7fc792df36c3 Mon Sep 17 00:00:00 2001
From: "Uwe L. Korn"
Date: Sat, 12 Feb 2022 22:04:35 +0100
-Subject: [PATCH 4/8] Use conda packages for build tools
+Subject: [PATCH 4/9] Use conda packages for build tools
---
src/tools/singlejar/BUILD | 44 +++++++++------------------------------
@@ -127,6 +127,3 @@ index 0b8ce85dab..3fc4fee98b 100644
)
alias(
---
-2.38.1.windows.1
-
diff --git a/recipe/patches/0005-grpc-java-plugin-from-build.patch b/recipe/patches/0005-grpc-java-plugin-from-build.patch
index 3d8e3361..d8228aba 100644
--- a/recipe/patches/0005-grpc-java-plugin-from-build.patch
+++ b/recipe/patches/0005-grpc-java-plugin-from-build.patch
@@ -1,7 +1,7 @@
-From 919747b3c859f096e8d6298010bcad8069ca6baf Mon Sep 17 00:00:00 2001
+From 26f301459417fa0a809c78a49a58493e4184153d Mon Sep 17 00:00:00 2001
From: "Uwe L. Korn"
Date: Sat, 12 Feb 2022 22:05:55 +0100
-Subject: [PATCH 5/8] grpc-java-plugin from build
+Subject: [PATCH 5/9] grpc-java-plugin from build
---
third_party/grpc-java/BUILD | 14 +++++---------
@@ -31,6 +31,3 @@ index 34cb26c0d1..37b3b077f5 100644
+ executable = 1,
+ visibility = ["//visibility:public"],
)
---
-2.38.1.windows.1
-
diff --git a/recipe/patches/0006-bazel-bin-loader-path.patch b/recipe/patches/0006-bazel-bin-loader-path.patch
index a0134510..f6dbce36 100644
--- a/recipe/patches/0006-bazel-bin-loader-path.patch
+++ b/recipe/patches/0006-bazel-bin-loader-path.patch
@@ -1,14 +1,14 @@
-From def525b7191e1e73458bed2398bf834bbe97e3a4 Mon Sep 17 00:00:00 2001
+From f3c75d9e682f75b2e5d4a679a95394703fc7c538 Mon Sep 17 00:00:00 2001
From: "Uwe L. Korn"
Date: Sat, 12 Feb 2022 22:08:16 +0100
-Subject: [PATCH 6/8] bazel bin loader path
+Subject: [PATCH 6/9] bazel bin loader path
---
src/BUILD | 29 +++++++++++++++++++++++++++--
1 file changed, 27 insertions(+), 2 deletions(-)
diff --git a/src/BUILD b/src/BUILD
-index 4bf0179a24..6125979dae 100644
+index b8e62240ae..703b7cb704 100644
--- a/src/BUILD
+++ b/src/BUILD
@@ -364,16 +364,41 @@ genrule(
@@ -55,6 +55,3 @@ index 4bf0179a24..6125979dae 100644
executable = 1,
output_to_bindir = 1,
visibility = [
---
-2.38.1.windows.1
-
diff --git a/recipe/patches/0007-Adjust-cross-bazel-resultpath.patch b/recipe/patches/0007-Adjust-cross-bazel-resultpath.patch
index f366d50f..0b054357 100644
--- a/recipe/patches/0007-Adjust-cross-bazel-resultpath.patch
+++ b/recipe/patches/0007-Adjust-cross-bazel-resultpath.patch
@@ -1,7 +1,7 @@
-From 9632391cc472987525d28264c12910e4780d7f9b Mon Sep 17 00:00:00 2001
+From 35b6615e5f3a4884fb9ebb319354135d812f80fb Mon Sep 17 00:00:00 2001
From: "Uwe L. Korn"
Date: Sat, 12 Feb 2022 22:10:21 +0100
-Subject: [PATCH 7/8] Adjust cross bazel resultpath
+Subject: [PATCH 7/9] Adjust cross bazel resultpath
---
compile.sh | 1 +
@@ -19,6 +19,3 @@ index ce49a1266e..e830fc13b7 100755
[ -e "$bazel_bin_path" ] \
|| fail "Could not find freshly built Bazel binary at '$bazel_bin_path'"
cp -f "$bazel_bin_path" "output/bazel${EXE_EXT}" \
---
-2.38.1.windows.1
-
diff --git a/recipe/patches/0008-win-Disable-VS-activation-and-make-build-verbose.patch b/recipe/patches/0008-win-Disable-VS-activation-and-make-build-verbose.patch
index 7d3cc0aa..a051d8c4 100644
--- a/recipe/patches/0008-win-Disable-VS-activation-and-make-build-verbose.patch
+++ b/recipe/patches/0008-win-Disable-VS-activation-and-make-build-verbose.patch
@@ -1,7 +1,7 @@
-From 92f01bd7255ab157453b812f681ff80e6a24cd10 Mon Sep 17 00:00:00 2001
+From 84d8844c48276b5131e6895d3c098d86ba1fe9eb Mon Sep 17 00:00:00 2001
From: "Uwe L. Korn"
Date: Mon, 7 Feb 2022 21:43:56 +0100
-Subject: [PATCH 8/8] win: Disable VS activation and make build verbose
+Subject: [PATCH 8/9] win: Disable VS activation and make build verbose
---
src/main/native/windows/build_windows_jni.sh | 13 +++++++------
@@ -38,6 +38,3 @@ index 5d38ffd2a7..5850fc0b11 100644
EOF
# Invoke the file and hopefully generate the .DLL .
---
-2.38.1.windows.1
-
From b0e1156823ef39230d6bb7d10e60f73a51a0d5e5 Mon Sep 17 00:00:00 2001
From: "H. Vetinari"
Date: Sun, 25 Jun 2023 10:04:48 +1100
Subject: [PATCH 9/9] add attribution & information about backported patch
---
recipe/meta.yaml | 3 ++-
...-detection-code-to-account-for-new-.patch} | 23 ++++++++++++++++++-
2 files changed, 24 insertions(+), 2 deletions(-)
rename recipe/patches/{0009-backport-pr-18608-fix-vs-activation.patch => 0009-Update-windows-VS-detection-code-to-account-for-new-.patch} (85%)
diff --git a/recipe/meta.yaml b/recipe/meta.yaml
index 7257b1c2..8426519c 100644
--- a/recipe/meta.yaml
+++ b/recipe/meta.yaml
@@ -21,7 +21,8 @@ source:
- patches/0006-bazel-bin-loader-path.patch # [osx]
- patches/0007-Adjust-cross-bazel-resultpath.patch # [build_platform != target_platform]
- patches/0008-win-Disable-VS-activation-and-make-build-verbose.patch
- - patches/0009-backport-pr-18608-fix-vs-activation.patch
+ # backport https://github.com/bazelbuild/bazel/pull/18608 (squashed; as of 2023-06-24)
+ - patches/0009-Update-windows-VS-detection-code-to-account-for-new-.patch
build:
number: 1
diff --git a/recipe/patches/0009-backport-pr-18608-fix-vs-activation.patch b/recipe/patches/0009-Update-windows-VS-detection-code-to-account-for-new-.patch
similarity index 85%
rename from recipe/patches/0009-backport-pr-18608-fix-vs-activation.patch
rename to recipe/patches/0009-Update-windows-VS-detection-code-to-account-for-new-.patch
index 658cf3d7..806d7c53 100644
--- a/recipe/patches/0009-backport-pr-18608-fix-vs-activation.patch
+++ b/recipe/patches/0009-Update-windows-VS-detection-code-to-account-for-new-.patch
@@ -1,5 +1,26 @@
+From 76ba68d32acd77aa418de7ef5dde6e0b021ca1e7 Mon Sep 17 00:00:00 2001
+From: Paolo Tranquilli
+Date: Wed, 7 Jun 2023 17:56:13 +0200
+Subject: [PATCH 9/9] Update windows VS detection code to account for new
+ directory
+
+Windows VS 2022 version 17.6 introduced a new `vspkg` directory
+underneath `VC` that is throwing off the toolchain autodetection code.
+
+The checks now got renamed to a more approriate `_is_vs_2017_or_newer`
+and takes into account the possible presence of this `vspkg` directory.
+
+* Update windows VS detection code hard-coded paths with the 2022 version
+
+* Reorder VS hardcoded paths for autodetection and add 2022 Preview
+
+* make VS version check more future-proof
+---
+ tools/cpp/windows_cc_configure.bzl | 39 ++++++++++++++----------------
+ 1 file changed, 18 insertions(+), 21 deletions(-)
+
diff --git a/tools/cpp/windows_cc_configure.bzl b/tools/cpp/windows_cc_configure.bzl
-index bd30dc62d911c..2baf68d772afc 100644
+index bd30dc62d9..2baf68d772 100644
--- a/tools/cpp/windows_cc_configure.bzl
+++ b/tools/cpp/windows_cc_configure.bzl
@@ -232,15 +232,10 @@ def find_vc_path(repository_ctx):