summaryrefslogtreecommitdiff
path: root/ci
diff options
context:
space:
mode:
Diffstat (limited to 'ci')
-rw-r--r--ci/absl_alternate_options.h28
-rwxr-xr-xci/cmake_install_test.sh3
-rwxr-xr-xci/linux_clang-latest_libcxx_asan_bazel.sh81
-rwxr-xr-xci/linux_clang-latest_libcxx_bazel.sh65
-rwxr-xr-xci/linux_clang-latest_libcxx_tsan_bazel.sh70
-rwxr-xr-xci/linux_clang-latest_libstdcxx_bazel.sh57
-rwxr-xr-xci/linux_gcc-4.9_libstdcxx_bazel.sh53
-rwxr-xr-xci/linux_gcc-latest_libstdcxx_bazel.sh59
-rwxr-xr-xci/linux_gcc-latest_libstdcxx_cmake.sh2
-rwxr-xr-xci/linux_gcc_alpine_cmake.sh (renamed from ci/linux_gcc-4.8_libstdcxx_cmake.sh)10
-rwxr-xr-xci/macos_xcode_bazel.sh19
-rwxr-xr-xci/macos_xcode_cmake.sh1
12 files changed, 267 insertions, 181 deletions
diff --git a/ci/absl_alternate_options.h b/ci/absl_alternate_options.h
new file mode 100644
index 00000000..f0c21fea
--- /dev/null
+++ b/ci/absl_alternate_options.h
@@ -0,0 +1,28 @@
+#ifndef ABSL_BASE_OPTIONS_H_
+#define ABSL_BASE_OPTIONS_H_
+
+// Copyright 2019 The Abseil Authors.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// https://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+// Alternate options.h file, used in continuous integration testing to exercise
+// option settings not used by default.
+
+#define ABSL_OPTION_USE_STD_ANY 0
+#define ABSL_OPTION_USE_STD_OPTIONAL 0
+#define ABSL_OPTION_USE_STD_STRING_VIEW 0
+#define ABSL_OPTION_USE_STD_VARIANT 0
+#define ABSL_OPTION_USE_INLINE_NAMESPACE 1
+#define ABSL_OPTION_INLINE_NAMESPACE_NAME ns
+
+#endif // ABSL_BASE_OPTIONS_H_
diff --git a/ci/cmake_install_test.sh b/ci/cmake_install_test.sh
index 03eb0432..55fb4f12 100755
--- a/ci/cmake_install_test.sh
+++ b/ci/cmake_install_test.sh
@@ -28,6 +28,5 @@ time docker run \
--rm \
-e CFLAGS="-Werror" \
-e CXXFLAGS="-Werror" \
- gcr.io/google.com/absl-177019/linux_gcc-latest:20190703 \
+ gcr.io/google.com/absl-177019/linux_gcc-latest:20200106 \
/bin/bash CMake/install_test_project/test.sh $@
-
diff --git a/ci/linux_clang-latest_libcxx_asan_bazel.sh b/ci/linux_clang-latest_libcxx_asan_bazel.sh
index 07af64d0..24efe3b7 100755
--- a/ci/linux_clang-latest_libcxx_asan_bazel.sh
+++ b/ci/linux_clang-latest_libcxx_asan_bazel.sh
@@ -32,7 +32,11 @@ if [ -z ${COMPILATION_MODE:-} ]; then
COMPILATION_MODE="fastbuild opt"
fi
-readonly DOCKER_CONTAINER="gcr.io/google.com/absl-177019/linux_clang-latest:20190701"
+if [ -z ${EXCEPTIONS_MODE:-} ]; then
+ EXCEPTIONS_MODE="-fno-exceptions -fexceptions"
+fi
+
+readonly DOCKER_CONTAINER="gcr.io/google.com/absl-177019/linux_clang-latest:20200102"
# USE_BAZEL_CACHE=1 only works on Kokoro.
# Without access to the credentials this won't work.
@@ -48,42 +52,43 @@ fi
for std in ${STD}; do
for compilation_mode in ${COMPILATION_MODE}; do
- echo "--------------------------------------------------------------------"
- echo "Testing with --compilation_mode=${compilation_mode} and --std=${std}"
-
- time docker run \
- --volume="${ABSEIL_ROOT}:/abseil-cpp:ro" \
- --workdir=/abseil-cpp \
- --cap-add=SYS_PTRACE \
- --rm \
- -e CC="/opt/llvm/clang/bin/clang" \
- -e BAZEL_COMPILER="llvm" \
- -e BAZEL_CXXOPTS="-std=${std}:-nostdinc++" \
- -e BAZEL_LINKOPTS="-L/opt/llvm/libcxx/lib:-lc++:-lc++abi:-lm:-Wl,-rpath=/opt/llvm/libcxx/lib" \
- -e CPLUS_INCLUDE_PATH="/opt/llvm/libcxx/include/c++/v1" \
- ${DOCKER_EXTRA_ARGS:-} \
- ${DOCKER_CONTAINER} \
- /usr/local/bin/bazel test ... \
- --compilation_mode=${compilation_mode} \
- --copt="-DDYNAMIC_ANNOTATIONS_ENABLED=1" \
- --copt="-DADDRESS_SANITIZER" \
- --copt="-DUNDEFINED_BEHAVIOR_SANITIZER" \
- --copt="-fsanitize=address" \
- --copt="-fsanitize=float-divide-by-zero" \
- --copt="-fsanitize=nullability" \
- --copt="-fsanitize=undefined" \
- --copt="-fno-sanitize=vptr" \
- --copt=-Werror \
- --keep_going \
- --linkopt="-fsanitize=address" \
- --linkopt="-fsanitize-link-c++-runtime" \
- --show_timestamps \
- --test_env="ASAN_SYMBOLIZER_PATH=/opt/llvm/clang/bin/llvm-symbolizer" \
- --test_env="TZDIR=/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo" \
- --test_env="UBSAN_OPTIONS=print_stacktrace=1" \
- --test_env="UBSAN_SYMBOLIZER_PATH=/opt/llvm/clang/bin/llvm-symbolizer" \
- --test_output=errors \
- --test_tag_filters="-benchmark,-noasan" \
- ${BAZEL_EXTRA_ARGS:-}
+ for exceptions_mode in ${EXCEPTIONS_MODE}; do
+ echo "--------------------------------------------------------------------"
+ time docker run \
+ --volume="${ABSEIL_ROOT}:/abseil-cpp:ro" \
+ --workdir=/abseil-cpp \
+ --cap-add=SYS_PTRACE \
+ --rm \
+ -e CC="/opt/llvm/clang/bin/clang" \
+ -e BAZEL_COMPILER="llvm" \
+ -e BAZEL_CXXOPTS="-std=${std}:-nostdinc++" \
+ -e BAZEL_LINKOPTS="-L/opt/llvm/libcxx/lib:-lc++:-lc++abi:-lm:-Wl,-rpath=/opt/llvm/libcxx/lib" \
+ -e CPLUS_INCLUDE_PATH="/opt/llvm/libcxx/include/c++/v1" \
+ ${DOCKER_EXTRA_ARGS:-} \
+ ${DOCKER_CONTAINER} \
+ /usr/local/bin/bazel test ... \
+ --compilation_mode="${compilation_mode}" \
+ --copt="${exceptions_mode}" \
+ --copt="-DDYNAMIC_ANNOTATIONS_ENABLED=1" \
+ --copt="-DADDRESS_SANITIZER" \
+ --copt="-DUNDEFINED_BEHAVIOR_SANITIZER" \
+ --copt="-fsanitize=address" \
+ --copt="-fsanitize=float-divide-by-zero" \
+ --copt="-fsanitize=nullability" \
+ --copt="-fsanitize=undefined" \
+ --copt="-fno-sanitize-blacklist" \
+ --copt=-Werror \
+ --keep_going \
+ --linkopt="-fsanitize=address" \
+ --linkopt="-fsanitize-link-c++-runtime" \
+ --show_timestamps \
+ --test_env="ASAN_SYMBOLIZER_PATH=/opt/llvm/clang/bin/llvm-symbolizer" \
+ --test_env="TZDIR=/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo" \
+ --test_env="UBSAN_OPTIONS=print_stacktrace=1" \
+ --test_env="UBSAN_SYMBOLIZER_PATH=/opt/llvm/clang/bin/llvm-symbolizer" \
+ --test_output=errors \
+ --test_tag_filters="-benchmark,-noasan" \
+ ${BAZEL_EXTRA_ARGS:-}
+ done
done
done
diff --git a/ci/linux_clang-latest_libcxx_bazel.sh b/ci/linux_clang-latest_libcxx_bazel.sh
index 1197369a..127e7bc7 100755
--- a/ci/linux_clang-latest_libcxx_bazel.sh
+++ b/ci/linux_clang-latest_libcxx_bazel.sh
@@ -32,7 +32,11 @@ if [ -z ${COMPILATION_MODE:-} ]; then
COMPILATION_MODE="fastbuild opt"
fi
-readonly DOCKER_CONTAINER="gcr.io/google.com/absl-177019/linux_clang-latest:20190701"
+if [ -z ${EXCEPTIONS_MODE:-} ]; then
+ EXCEPTIONS_MODE="-fno-exceptions -fexceptions"
+fi
+
+readonly DOCKER_CONTAINER="gcr.io/google.com/absl-177019/linux_clang-latest:20200102"
# USE_BAZEL_CACHE=1 only works on Kokoro.
# Without access to the credentials this won't work.
@@ -48,31 +52,38 @@ fi
for std in ${STD}; do
for compilation_mode in ${COMPILATION_MODE}; do
- echo "--------------------------------------------------------------------"
- echo "Testing with --compilation_mode=${compilation_mode} and --std=${std}"
-
- time docker run \
- --volume="${ABSEIL_ROOT}:/abseil-cpp:ro" \
- --workdir=/abseil-cpp \
- --cap-add=SYS_PTRACE \
- --rm \
- -e CC="/opt/llvm/clang/bin/clang" \
- -e BAZEL_COMPILER="llvm" \
- -e BAZEL_CXXOPTS="-std=${std}:-nostdinc++" \
- -e BAZEL_LINKOPTS="-L/opt/llvm/libcxx/lib:-lc++:-lc++abi:-lm:-Wl,-rpath=/opt/llvm/libcxx/lib" \
- -e CPLUS_INCLUDE_PATH="/opt/llvm/libcxx/include/c++/v1" \
- ${DOCKER_EXTRA_ARGS:-} \
- ${DOCKER_CONTAINER} \
- /usr/local/bin/bazel test ... \
- --compilation_mode=${compilation_mode} \
- --copt=-Werror \
- --define="absl=1" \
- --keep_going \
- --show_timestamps \
- --test_env="GTEST_INSTALL_FAILURE_SIGNAL_HANDLER=1" \
- --test_env="TZDIR=/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo" \
- --test_output=errors \
- --test_tag_filters=-benchmark \
- ${BAZEL_EXTRA_ARGS:-}
+ for exceptions_mode in ${EXCEPTIONS_MODE}; do
+ echo "--------------------------------------------------------------------"
+ time docker run \
+ --volume="${ABSEIL_ROOT}:/abseil-cpp-ro:ro" \
+ --tmpfs=/abseil-cpp \
+ --workdir=/abseil-cpp \
+ --cap-add=SYS_PTRACE \
+ --rm \
+ -e CC="/opt/llvm/clang/bin/clang" \
+ -e BAZEL_COMPILER="llvm" \
+ -e BAZEL_CXXOPTS="-std=${std}:-nostdinc++" \
+ -e BAZEL_LINKOPTS="-L/opt/llvm/libcxx/lib:-lc++:-lc++abi:-lm:-Wl,-rpath=/opt/llvm/libcxx/lib" \
+ -e CPLUS_INCLUDE_PATH="/opt/llvm/libcxx/include/c++/v1" \
+ ${DOCKER_EXTRA_ARGS:-} \
+ ${DOCKER_CONTAINER} \
+ /bin/sh -c "
+ cp -r /abseil-cpp-ro/* /abseil-cpp/
+ if [ -n \"${ALTERNATE_OPTIONS:-}\" ]; then
+ cp ${ALTERNATE_OPTIONS:-} absl/base/options.h || exit 1
+ fi
+ /usr/local/bin/bazel test ... \
+ --compilation_mode=\"${compilation_mode}\" \
+ --copt=\"${exceptions_mode}\" \
+ --copt=-Werror \
+ --define=\"absl=1\" \
+ --keep_going \
+ --show_timestamps \
+ --test_env=\"GTEST_INSTALL_FAILURE_SIGNAL_HANDLER=1\" \
+ --test_env=\"TZDIR=/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo\" \
+ --test_output=errors \
+ --test_tag_filters=-benchmark \
+ ${BAZEL_EXTRA_ARGS:-}"
+ done
done
done
diff --git a/ci/linux_clang-latest_libcxx_tsan_bazel.sh b/ci/linux_clang-latest_libcxx_tsan_bazel.sh
index 04171df8..00257b36 100755
--- a/ci/linux_clang-latest_libcxx_tsan_bazel.sh
+++ b/ci/linux_clang-latest_libcxx_tsan_bazel.sh
@@ -32,7 +32,11 @@ if [ -z ${COMPILATION_MODE:-} ]; then
COMPILATION_MODE="fastbuild opt"
fi
-readonly DOCKER_CONTAINER="gcr.io/google.com/absl-177019/linux_clang-latest:20190701"
+if [ -z ${EXCEPTIONS_MODE:-} ]; then
+ EXCEPTIONS_MODE="-fno-exceptions -fexceptions"
+fi
+
+readonly DOCKER_CONTAINER="gcr.io/google.com/absl-177019/linux_clang-latest:20200102"
# USE_BAZEL_CACHE=1 only works on Kokoro.
# Without access to the credentials this won't work.
@@ -48,36 +52,38 @@ fi
for std in ${STD}; do
for compilation_mode in ${COMPILATION_MODE}; do
- echo "--------------------------------------------------------------------"
- echo "Testing with --compilation_mode=${compilation_mode} and --std=${std}"
-
- time docker run \
- --volume="${ABSEIL_ROOT}:/abseil-cpp:ro" \
- --workdir=/abseil-cpp \
- --cap-add=SYS_PTRACE \
- --rm \
- -e CC="/opt/llvm/clang/bin/clang" \
- -e BAZEL_COMPILER="llvm" \
- -e BAZEL_CXXOPTS="-std=${std}:-nostdinc++" \
- -e BAZEL_LINKOPTS="-L/opt/llvm/libcxx-tsan/lib:-lc++:-lc++abi:-lm:-Wl,-rpath=/opt/llvm/libcxx-tsan/lib" \
- -e CPLUS_INCLUDE_PATH="/opt/llvm/libcxx-tsan/include/c++/v1" \
- ${DOCKER_EXTRA_ARGS:-} \
- ${DOCKER_CONTAINER} \
- /usr/local/bin/bazel test ... \
- --build_tag_filters="-notsan" \
- --compilation_mode=${compilation_mode} \
- --copt="-DDYNAMIC_ANNOTATIONS_ENABLED=1" \
- --copt="-DTHREAD_SANITIZER" \
- --copt="-fsanitize=thread" \
- --copt=-Werror \
- --keep_going \
- --linkopt="-fsanitize=thread" \
- --show_timestamps \
- --test_env="TSAN_OPTIONS=report_atomic_races=0" \
- --test_env="TSAN_SYMBOLIZER_PATH=/opt/llvm/clang/bin/llvm-symbolizer" \
- --test_env="TZDIR=/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo" \
- --test_output=errors \
- --test_tag_filters="-benchmark,-notsan" \
- ${BAZEL_EXTRA_ARGS:-}
+ for exceptions_mode in ${EXCEPTIONS_MODE}; do
+ echo "--------------------------------------------------------------------"
+ time docker run \
+ --volume="${ABSEIL_ROOT}:/abseil-cpp:ro" \
+ --workdir=/abseil-cpp \
+ --cap-add=SYS_PTRACE \
+ --rm \
+ -e CC="/opt/llvm/clang/bin/clang" \
+ -e BAZEL_COMPILER="llvm" \
+ -e BAZEL_CXXOPTS="-std=${std}:-nostdinc++" \
+ -e BAZEL_LINKOPTS="-L/opt/llvm/libcxx-tsan/lib:-lc++:-lc++abi:-lm:-Wl,-rpath=/opt/llvm/libcxx-tsan/lib" \
+ -e CPLUS_INCLUDE_PATH="/opt/llvm/libcxx-tsan/include/c++/v1" \
+ ${DOCKER_EXTRA_ARGS:-} \
+ ${DOCKER_CONTAINER} \
+ /usr/local/bin/bazel test ... \
+ --build_tag_filters="-notsan" \
+ --compilation_mode="${compilation_mode}" \
+ --copt="${exceptions_mode}" \
+ --copt="-DDYNAMIC_ANNOTATIONS_ENABLED=1" \
+ --copt="-DTHREAD_SANITIZER" \
+ --copt="-fsanitize=thread" \
+ --copt="-fno-sanitize-blacklist" \
+ --copt=-Werror \
+ --keep_going \
+ --linkopt="-fsanitize=thread" \
+ --show_timestamps \
+ --test_env="TSAN_OPTIONS=report_atomic_races=0" \
+ --test_env="TSAN_SYMBOLIZER_PATH=/opt/llvm/clang/bin/llvm-symbolizer" \
+ --test_env="TZDIR=/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo" \
+ --test_output=errors \
+ --test_tag_filters="-benchmark,-notsan" \
+ ${BAZEL_EXTRA_ARGS:-}
+ done
done
done
diff --git a/ci/linux_clang-latest_libstdcxx_bazel.sh b/ci/linux_clang-latest_libstdcxx_bazel.sh
index c2217a07..9fe71d37 100755
--- a/ci/linux_clang-latest_libstdcxx_bazel.sh
+++ b/ci/linux_clang-latest_libstdcxx_bazel.sh
@@ -32,7 +32,11 @@ if [ -z ${COMPILATION_MODE:-} ]; then
COMPILATION_MODE="fastbuild opt"
fi
-readonly DOCKER_CONTAINER="gcr.io/google.com/absl-177019/linux_clang-latest:20190701"
+if [ -z ${EXCEPTIONS_MODE:-} ]; then
+ EXCEPTIONS_MODE="-fno-exceptions -fexceptions"
+fi
+
+readonly DOCKER_CONTAINER="gcr.io/google.com/absl-177019/linux_clang-latest:20200102"
# USE_BAZEL_CACHE=1 only works on Kokoro.
# Without access to the credentials this won't work.
@@ -48,30 +52,31 @@ fi
for std in ${STD}; do
for compilation_mode in ${COMPILATION_MODE}; do
- echo "--------------------------------------------------------------------"
- echo "Testing with --compilation_mode=${compilation_mode} and --std=${std}"
-
- time docker run \
- --volume="${ABSEIL_ROOT}:/abseil-cpp:ro" \
- --workdir=/abseil-cpp \
- --cap-add=SYS_PTRACE \
- --rm \
- -e CC="/opt/llvm/clang/bin/clang" \
- -e BAZEL_COMPILER="llvm" \
- -e BAZEL_CXXOPTS="-std=${std}" \
- -e CPLUS_INCLUDE_PATH="/usr/include/c++/6" \
- ${DOCKER_EXTRA_ARGS:-} \
- ${DOCKER_CONTAINER} \
- /usr/local/bin/bazel test ... \
- --compilation_mode=${compilation_mode} \
- --copt=-Werror \
- --define="absl=1" \
- --keep_going \
- --show_timestamps \
- --test_env="GTEST_INSTALL_FAILURE_SIGNAL_HANDLER=1" \
- --test_env="TZDIR=/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo" \
- --test_output=errors \
- --test_tag_filters=-benchmark \
- ${BAZEL_EXTRA_ARGS:-}
+ for exceptions_mode in ${EXCEPTIONS_MODE}; do
+ echo "--------------------------------------------------------------------"
+ time docker run \
+ --volume="${ABSEIL_ROOT}:/abseil-cpp:ro" \
+ --workdir=/abseil-cpp \
+ --cap-add=SYS_PTRACE \
+ --rm \
+ -e CC="/opt/llvm/clang/bin/clang" \
+ -e BAZEL_COMPILER="llvm" \
+ -e BAZEL_CXXOPTS="-std=${std}" \
+ -e CPLUS_INCLUDE_PATH="/usr/include/c++/6" \
+ ${DOCKER_EXTRA_ARGS:-} \
+ ${DOCKER_CONTAINER} \
+ /usr/local/bin/bazel test ... \
+ --compilation_mode="${compilation_mode}" \
+ --copt="${exceptions_mode}" \
+ --copt=-Werror \
+ --define="absl=1" \
+ --keep_going \
+ --show_timestamps \
+ --test_env="GTEST_INSTALL_FAILURE_SIGNAL_HANDLER=1" \
+ --test_env="TZDIR=/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo" \
+ --test_output=errors \
+ --test_tag_filters=-benchmark \
+ ${BAZEL_EXTRA_ARGS:-}
+ done
done
done
diff --git a/ci/linux_gcc-4.9_libstdcxx_bazel.sh b/ci/linux_gcc-4.9_libstdcxx_bazel.sh
index bdd3e468..f8102cc0 100755
--- a/ci/linux_gcc-4.9_libstdcxx_bazel.sh
+++ b/ci/linux_gcc-4.9_libstdcxx_bazel.sh
@@ -32,7 +32,11 @@ if [ -z ${COMPILATION_MODE:-} ]; then
COMPILATION_MODE="fastbuild opt"
fi
-readonly DOCKER_CONTAINER="gcr.io/google.com/absl-177019/linux_gcc-4.9:20190702"
+if [ -z ${EXCEPTIONS_MODE:-} ]; then
+ EXCEPTIONS_MODE="-fno-exceptions -fexceptions"
+fi
+
+readonly DOCKER_CONTAINER="gcr.io/google.com/absl-177019/linux_gcc-4.9:20191018"
# USE_BAZEL_CACHE=1 only works on Kokoro.
# Without access to the credentials this won't work.
@@ -48,28 +52,29 @@ fi
for std in ${STD}; do
for compilation_mode in ${COMPILATION_MODE}; do
- echo "--------------------------------------------------------------------"
- echo "Testing with --compilation_mode=${compilation_mode} and --std=${std}"
-
- time docker run \
- --volume="${ABSEIL_ROOT}:/abseil-cpp:ro" \
- --workdir=/abseil-cpp \
- --cap-add=SYS_PTRACE \
- --rm \
- -e CC="/usr/bin/gcc-4.9" \
- -e BAZEL_CXXOPTS="-std=${std}" \
- ${DOCKER_EXTRA_ARGS:-} \
- ${DOCKER_CONTAINER} \
- /usr/local/bin/bazel test ... \
- --compilation_mode=${compilation_mode} \
- --copt=-Werror \
- --define="absl=1" \
- --keep_going \
- --show_timestamps \
- --test_env="GTEST_INSTALL_FAILURE_SIGNAL_HANDLER=1" \
- --test_env="TZDIR=/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo" \
- --test_output=errors \
- --test_tag_filters=-benchmark \
- ${BAZEL_EXTRA_ARGS:-}
+ for exceptions_mode in ${EXCEPTIONS_MODE}; do
+ echo "--------------------------------------------------------------------"
+ time docker run \
+ --volume="${ABSEIL_ROOT}:/abseil-cpp:ro" \
+ --workdir=/abseil-cpp \
+ --cap-add=SYS_PTRACE \
+ --rm \
+ -e CC="/usr/bin/gcc-4.9" \
+ -e BAZEL_CXXOPTS="-std=${std}" \
+ ${DOCKER_EXTRA_ARGS:-} \
+ ${DOCKER_CONTAINER} \
+ /usr/local/bin/bazel test ... \
+ --compilation_mode="${compilation_mode}" \
+ --copt="${exceptions_mode}" \
+ --copt=-Werror \
+ --define="absl=1" \
+ --keep_going \
+ --show_timestamps \
+ --test_env="GTEST_INSTALL_FAILURE_SIGNAL_HANDLER=1" \
+ --test_env="TZDIR=/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo" \
+ --test_output=errors \
+ --test_tag_filters=-benchmark \
+ ${BAZEL_EXTRA_ARGS:-}
+ done
done
done
diff --git a/ci/linux_gcc-latest_libstdcxx_bazel.sh b/ci/linux_gcc-latest_libstdcxx_bazel.sh
index 92933e3a..59647031 100755
--- a/ci/linux_gcc-latest_libstdcxx_bazel.sh
+++ b/ci/linux_gcc-latest_libstdcxx_bazel.sh
@@ -32,7 +32,11 @@ if [ -z ${COMPILATION_MODE:-} ]; then
COMPILATION_MODE="fastbuild opt"
fi
-readonly DOCKER_CONTAINER="gcr.io/google.com/absl-177019/linux_gcc-latest:20190703"
+if [ -z ${EXCEPTIONS_MODE:-} ]; then
+ EXCEPTIONS_MODE="-fno-exceptions -fexceptions"
+fi
+
+readonly DOCKER_CONTAINER="gcr.io/google.com/absl-177019/linux_gcc-latest:20200106"
# USE_BAZEL_CACHE=1 only works on Kokoro.
# Without access to the credentials this won't work.
@@ -48,28 +52,35 @@ fi
for std in ${STD}; do
for compilation_mode in ${COMPILATION_MODE}; do
- echo "--------------------------------------------------------------------"
- echo "Testing with --compilation_mode=${compilation_mode} and --std=${std}"
-
- time docker run \
- --volume="${ABSEIL_ROOT}:/abseil-cpp:ro" \
- --workdir=/abseil-cpp \
- --cap-add=SYS_PTRACE \
- --rm \
- -e CC="/usr/local/bin/gcc" \
- -e BAZEL_CXXOPTS="-std=${std}" \
- ${DOCKER_EXTRA_ARGS:-} \
- ${DOCKER_CONTAINER} \
- /usr/local/bin/bazel test ... \
- --compilation_mode=${compilation_mode} \
- --copt=-Werror \
- --define="absl=1" \
- --keep_going \
- --show_timestamps \
- --test_env="GTEST_INSTALL_FAILURE_SIGNAL_HANDLER=1" \
- --test_env="TZDIR=/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo" \
- --test_output=errors \
- --test_tag_filters=-benchmark \
- ${BAZEL_EXTRA_ARGS:-}
+ for exceptions_mode in ${EXCEPTIONS_MODE}; do
+ echo "--------------------------------------------------------------------"
+ time docker run \
+ --volume="${ABSEIL_ROOT}:/abseil-cpp-ro:ro" \
+ --tmpfs=/abseil-cpp \
+ --workdir=/abseil-cpp \
+ --cap-add=SYS_PTRACE \
+ --rm \
+ -e CC="/usr/local/bin/gcc" \
+ -e BAZEL_CXXOPTS="-std=${std}" \
+ ${DOCKER_EXTRA_ARGS:-} \
+ ${DOCKER_CONTAINER} \
+ /bin/sh -c "
+ cp -r /abseil-cpp-ro/* /abseil-cpp/
+ if [ -n \"${ALTERNATE_OPTIONS:-}\" ]; then
+ cp ${ALTERNATE_OPTIONS:-} absl/base/options.h || exit 1
+ fi
+ /usr/local/bin/bazel test ... \
+ --compilation_mode=\"${compilation_mode}\" \
+ --copt=\"${exceptions_mode}\" \
+ --copt=-Werror \
+ --define=\"absl=1\" \
+ --keep_going \
+ --show_timestamps \
+ --test_env=\"GTEST_INSTALL_FAILURE_SIGNAL_HANDLER=1\" \
+ --test_env=\"TZDIR=/abseil-cpp/absl/time/internal/cctz/testdata/zoneinfo\" \
+ --test_output=errors \
+ --test_tag_filters=-benchmark \
+ ${BAZEL_EXTRA_ARGS:-}"
+ done
done
done
diff --git a/ci/linux_gcc-latest_libstdcxx_cmake.sh b/ci/linux_gcc-latest_libstdcxx_cmake.sh
index 3e831c14..38ad99f7 100755
--- a/ci/linux_gcc-latest_libstdcxx_cmake.sh
+++ b/ci/linux_gcc-latest_libstdcxx_cmake.sh
@@ -47,7 +47,7 @@ for std in ${ABSL_CMAKE_CXX_STANDARDS}; do
--rm \
-e CFLAGS="-Werror" \
-e CXXFLAGS="-Werror" \
- gcr.io/google.com/absl-177019/linux_gcc-latest:20190703 \
+ gcr.io/google.com/absl-177019/linux_gcc-latest:20200106 \
/bin/bash -c "
cd /buildfs && \
cmake /abseil-cpp \
diff --git a/ci/linux_gcc-4.8_libstdcxx_cmake.sh b/ci/linux_gcc_alpine_cmake.sh
index 4f964e2b..830a1360 100755
--- a/ci/linux_gcc-4.8_libstdcxx_cmake.sh
+++ b/ci/linux_gcc_alpine_cmake.sh
@@ -27,13 +27,15 @@ if [ -z ${ABSEIL_ROOT:-} ]; then
fi
if [ -z ${ABSL_CMAKE_CXX_STANDARDS:-} ]; then
- ABSL_CMAKE_CXX_STANDARDS="11 14"
+ ABSL_CMAKE_CXX_STANDARDS="11 14 17"
fi
if [ -z ${ABSL_CMAKE_BUILD_TYPES:-} ]; then
ABSL_CMAKE_BUILD_TYPES="Debug Release"
fi
+readonly DOCKER_CONTAINER="gcr.io/google.com/absl-177019/alpine:20191016"
+
for std in ${ABSL_CMAKE_CXX_STANDARDS}; do
for compilation_mode in ${ABSL_CMAKE_BUILD_TYPES}; do
echo "--------------------------------------------------------------------"
@@ -47,15 +49,15 @@ for std in ${ABSL_CMAKE_CXX_STANDARDS}; do
--rm \
-e CFLAGS="-Werror" \
-e CXXFLAGS="-Werror" \
- gcr.io/google.com/absl-177019/linux_gcc-4.8:20190316 \
- /bin/bash -c "
+ "${DOCKER_CONTAINER}" \
+ /bin/sh -c "
cd /buildfs && \
cmake /abseil-cpp \
-DABSL_USE_GOOGLETEST_HEAD=ON \
-DABSL_RUN_TESTS=ON \
-DCMAKE_BUILD_TYPE=${compilation_mode} \
-DCMAKE_CXX_STANDARD=${std} && \
- make -j$(nproc) VERBOSE=1 && \
+ make -j$(nproc) && \
ctest -j$(nproc) --output-on-failure"
done
done
diff --git a/ci/macos_xcode_bazel.sh b/ci/macos_xcode_bazel.sh
index f0f14280..f5f2d759 100755
--- a/ci/macos_xcode_bazel.sh
+++ b/ci/macos_xcode_bazel.sh
@@ -23,16 +23,29 @@ if [ -z ${ABSEIL_ROOT:-} ]; then
ABSEIL_ROOT="$(realpath $(dirname ${0})/..)"
fi
-# Print the default compiler and Bazel versions.
+# If we are running on Kokoro, check for a versioned Bazel binary.
+KOKORO_GFILE_BAZEL_BIN="bazel-2.0.0-darwin-x86_64"
+if [ ${KOKORO_GFILE_DIR:-} ] && [ -f ${KOKORO_GFILE_DIR}/${KOKORO_GFILE_BAZEL_BIN} ]; then
+ BAZEL_BIN="${KOKORO_GFILE_DIR}/${KOKORO_GFILE_BAZEL_BIN}"
+ chmod +x ${BAZEL_BIN}
+else
+ BAZEL_BIN="bazel"
+fi
+
+# Print the compiler and Bazel versions.
echo "---------------"
gcc -v
echo "---------------"
-bazel version
+${BAZEL_BIN} version
echo "---------------"
cd ${ABSEIL_ROOT}
-bazel test ... \
+if [ -n "${ALTERNATE_OPTIONS:-}" ]; then
+ cp ${ALTERNATE_OPTIONS:-} absl/base/options.h || exit 1
+fi
+
+${BAZEL_BIN} test ... \
--copt=-Werror \
--keep_going \
--show_timestamps \
diff --git a/ci/macos_xcode_cmake.sh b/ci/macos_xcode_cmake.sh
index 75b0f2d1..a1f4a857 100755
--- a/ci/macos_xcode_cmake.sh
+++ b/ci/macos_xcode_cmake.sh
@@ -36,6 +36,7 @@ for compilation_mode in ${ABSL_CMAKE_BUILD_TYPES}; do
time cmake ${ABSEIL_ROOT} \
-GXcode \
-DCMAKE_BUILD_TYPE=${compilation_mode} \
+ -DCMAKE_CXX_STANDARD=11 \
-DABSL_USE_GOOGLETEST_HEAD=ON \
-DABSL_RUN_TESTS=ON
time cmake --build .