Use `--enable_platform_specific_config` in `.bazelrc`. This magically applies the `linux`, `macos` or `windows` configuration depending on the OS. Apart from simplifying things for us, this should hopefully also unbreak the RE2 build that Bazel folks run in their CI. Fixes #428. Change-Id: I2f4192dd728661558a8c4c4c8dd68a720af3ff71 Reviewed-on: https://code-review.googlesource.com/c/re2/+/61370 Reviewed-by: Perry Lorier <perryl@google.com> Reviewed-by: Paul Wankadia <junyer@google.com>
diff --git a/.bazelrc b/.bazelrc index a102ac0..8141639 100644 --- a/.bazelrc +++ b/.bazelrc
@@ -7,6 +7,7 @@ # `BAZEL_USE_CPP_ONLY_TOOLCHAIN` since Bazel wouldn't respect the former without # the latter. However, the latter stopped Bazel from using Xcode and `-framework # Foundation`, which CCTZ (vendored into Abseil) requires. +build --enable_platform_specific_config build:linux --cxxopt=-std=c++14 build:macos --cxxopt=-std=c++14 build:windows --cxxopt=/std:c++14
diff --git a/.github/bazel.sh b/.github/bazel.sh index 2268b57..7295ec6 100755 --- a/.github/bazel.sh +++ b/.github/bazel.sh
@@ -1,12 +1,9 @@ #!/bin/bash set -eux -# macOS has GNU bash 3.x, so ${RUNNER_OS,,} isn't supported. -config=--config=$(echo ${RUNNER_OS} | tr '[:upper:]' '[:lower:]') - bazel clean -bazel build ${config} --compilation_mode=dbg -- //:all -bazel test ${config} --compilation_mode=dbg -- //:all \ +bazel build --compilation_mode=dbg -- //:all +bazel test --compilation_mode=dbg -- //:all \ -//:dfa_test \ -//:exhaustive1_test \ -//:exhaustive2_test \ @@ -15,8 +12,8 @@ -//:random_test bazel clean -bazel build ${config} --compilation_mode=opt -- //:all -bazel test ${config} --compilation_mode=opt -- //:all \ +bazel build --compilation_mode=opt -- //:all +bazel test --compilation_mode=opt -- //:all \ -//:dfa_test \ -//:exhaustive1_test \ -//:exhaustive2_test \
diff --git a/app/build.sh b/app/build.sh index c8c9837..c272bf5 100755 --- a/app/build.sh +++ b/app/build.sh
@@ -23,7 +23,7 @@ # Emscripten doesn't support `-fstack-protector`. AR=emar CC=emcc \ ${BAZEL} build --compilation_mode=opt \ - --config=linux --copt=-fno-stack-protector \ + --copt=-fno-stack-protector \ -- :all # Bazel doesn't retain the `_re2.wasm` artifact; # we have to redo the link command to obtain it.
diff --git a/python/setup.py b/python/setup.py index 16d8e69..b0cbd5b 100644 --- a/python/setup.py +++ b/python/setup.py
@@ -45,7 +45,7 @@ class BuildExt(setuptools.command.build_ext.build_ext): def build_extension(self, ext): - if 'RUNNER_OS' not in os.environ: + if 'GITHUB_ACTIONS' not in os.environ: return super().build_extension(ext) # For @pybind11_bazel's `python_configure()`. @@ -55,7 +55,6 @@ self.spawn(cmd) cmd = ['bazel', 'build'] - cmd.append(f'--config={os.environ["RUNNER_OS"].lower()}') if 'BAZEL_CPU' in os.environ: cmd.append(f'--cpu={os.environ["BAZEL_CPU"].lower()}') cmd += ['--compilation_mode=opt', '--', ':all']