[libcxx-commits] [libcxx] c1d49ce - [libc++][CI] Moves modules build to C++23.
Mark de Wever via libcxx-commits
libcxx-commits at lists.llvm.org
Tue Aug 22 11:19:53 PDT 2023
Author: Mark de Wever
Date: 2023-08-22T20:19:48+02:00
New Revision: c1d49ce67a3ff3c0678ae3e39d846312c9a5633a
URL: https://github.com/llvm/llvm-project/commit/c1d49ce67a3ff3c0678ae3e39d846312c9a5633a
DIFF: https://github.com/llvm/llvm-project/commit/c1d49ce67a3ff3c0678ae3e39d846312c9a5633a.diff
LOG: [libc++][CI] Moves modules build to C++23.
The std module can be tested in the generic C++23 build. This removes the
special module build.
Note it is possible to enable modules automatically in CMake, but that
would fail in the "parts disabled" builds; they have not been properly
been converted to modules yet.
Depends on D157625
Reviewed By: #libc, ldionne
Differential Revision: https://reviews.llvm.org/D157744
Added:
Modified:
libcxx/utils/ci/buildkite-pipeline.yml
libcxx/utils/ci/run-buildbot
Removed:
libcxx/cmake/caches/Generic-module-std-cxx23.cmake
################################################################################
diff --git a/libcxx/cmake/caches/Generic-module-std-cxx23.cmake b/libcxx/cmake/caches/Generic-module-std-cxx23.cmake
deleted file mode 100644
index ffff55381e955b..00000000000000
--- a/libcxx/cmake/caches/Generic-module-std-cxx23.cmake
+++ /dev/null
@@ -1,4 +0,0 @@
-set(LIBCXX_ENABLE_STD_MODULES ON CACHE BOOL "")
-set(LIBCXX_TEST_PARAMS "std=c++23" CACHE STRING "")
-set(LIBCXXABI_TEST_PARAMS "std=c++23" CACHE STRING "")
-
diff --git a/libcxx/utils/ci/buildkite-pipeline.yml b/libcxx/utils/ci/buildkite-pipeline.yml
index 19f3703ad9841c..dcdf30b8690f2d 100644
--- a/libcxx/utils/ci/buildkite-pipeline.yml
+++ b/libcxx/utils/ci/buildkite-pipeline.yml
@@ -149,27 +149,6 @@ steps:
limit: 2
timeout_in_minutes: 120
- - label: "C++23 Module std"
- command: "libcxx/utils/ci/run-buildbot generic-module-std-cxx23"
- artifact_paths:
- - "**/test-results.xml"
- - "**/*.abilist"
- env:
- # Note modules require and absolute path for clang-scan-deps
- # https://github.com/llvm/llvm-project/issues/61006
- CC: "/usr/lib/llvm-${LLVM_HEAD_VERSION}/bin/clang"
- CXX: "/usr/lib/llvm-${LLVM_HEAD_VERSION}/bin/clang++"
- CMAKE: "/opt/bin/cmake"
- ENABLE_CLANG_TIDY: "On"
- agents:
- queue: "libcxx-builders"
- os: "linux"
- retry:
- automatic:
- - exit_status: -1 # Agent was lost
- limit: 2
- timeout_in_minutes: 120
-
- label: "C++11"
command: "libcxx/utils/ci/run-buildbot generic-cxx11"
artifact_paths:
@@ -217,9 +196,13 @@ steps:
- "**/test-results.xml"
- "**/*.abilist"
env:
- CC: "clang-${LLVM_HEAD_VERSION}"
- CXX: "clang++-${LLVM_HEAD_VERSION}"
+ # Note: Modules require and absolute path for clang-scan-deps
+ # https://github.com/llvm/llvm-project/issues/61006
+ CC: "/usr/lib/llvm-${LLVM_HEAD_VERSION}/bin/clang"
+ CXX: "/usr/lib/llvm-${LLVM_HEAD_VERSION}/bin/clang++"
+ CMAKE: "/opt/bin/cmake"
ENABLE_CLANG_TIDY: "On"
+ ENABLE_STD_MODULES: "On"
agents:
queue: "libcxx-builders"
os: "linux"
@@ -311,6 +294,7 @@ steps:
CC: "clang-15"
CXX: "clang++-15"
ENABLE_CLANG_TIDY: "On"
+ ENABLE_STD_MODULES: "Off"
agents:
queue: "libcxx-builders"
os: "linux"
@@ -329,6 +313,7 @@ steps:
CC: "clang-16"
CXX: "clang++-16"
ENABLE_CLANG_TIDY: "On"
+ ENABLE_STD_MODULES: "Off"
agents:
queue: "libcxx-builders"
os: "linux"
@@ -344,8 +329,11 @@ steps:
- "**/test-results.xml"
- "**/*.abilist"
env:
- CC: "clang-17"
- CXX: "clang++-17"
+ # Note: Modules require and absolute path for clang-scan-deps
+ # https://github.com/llvm/llvm-project/issues/61006
+ CC: "/usr/lib/llvm-17/bin/clang"
+ CXX: "/usr/lib/llvm-17/bin/clang++"
+ CMAKE: "/opt/bin/cmake"
ENABLE_CLANG_TIDY: "On"
agents:
queue: "libcxx-builders"
@@ -1124,6 +1112,7 @@ steps:
env:
CC: "clang15"
CXX: "clang++15"
+ ENABLE_STD_MODULES: "Off"
agents:
queue: "libcxx-builders"
os: "freebsd"
diff --git a/libcxx/utils/ci/run-buildbot b/libcxx/utils/ci/run-buildbot
index 1fa7f880b6c915..7c93b07dc3abf1 100755
--- a/libcxx/utils/ci/run-buildbot
+++ b/libcxx/utils/ci/run-buildbot
@@ -51,6 +51,12 @@ GIT_CLANG_FORMAT The git-clang-format binary to use in the 'format' builder.
ENABLE_CLANG_TIDY Whether to compile and run clang-tidy checks. This variable
is optional.
+
+ENABLE_STD_MODULES Whether to enable or disable building the C++23 std
+ modules. This variable is optional.
+ TODO MODULES remove when all supported compilers support
+ modules.
+
EOF
}
@@ -119,6 +125,10 @@ if [ -z "${ENABLE_CLANG_TIDY}" ]; then
ENABLE_CLANG_TIDY=Off
fi
+if [ -n "${ENABLE_STD_MODULES}" ]; then
+ ENABLE_STD_MODULES="-DLIBCXX_ENABLE_STD_MODULES=${ENABLE_STD_MODULES}"
+fi
+
function generate-cmake-base() {
echo "--- Generating CMake"
${CMAKE} \
@@ -131,6 +141,7 @@ function generate-cmake-base() {
-DLIBCXXABI_ENABLE_WERROR=YES \
-DLIBUNWIND_ENABLE_WERROR=YES \
-DLIBCXX_ENABLE_CLANG_TIDY=${ENABLE_CLANG_TIDY} \
+ ${ENABLE_STD_MODULES} \
-DLLVM_LIT_ARGS="-sv --show-unsupported --xunit-xml-output test-results.xml --timeout=1500 --time-tests" \
"${@}"
}
@@ -414,12 +425,6 @@ generic-modules-lsv)
check-runtimes
check-abi-list
;;
-generic-module-std-cxx23)
- clean
- generate-cmake -C "${MONOREPO_ROOT}/libcxx/cmake/caches/Generic-module-std-cxx23.cmake"
- check-runtimes
- check-abi-list
-;;
#
# Parts removed
#
More information about the libcxx-commits
mailing list