[libcxx-commits] [libcxx] c7f244b - [libc++] Properly pick up the Ninja from Xcode in the CI script
Louis Dionne via libcxx-commits
libcxx-commits at lists.llvm.org
Thu Mar 4 13:03:45 PST 2021
Author: Louis Dionne
Date: 2021-03-04T16:03:39-05:00
New Revision: c7f244b8971470c930bd75e0e65b065edd00bd21
URL: https://github.com/llvm/llvm-project/commit/c7f244b8971470c930bd75e0e65b065edd00bd21
DIFF: https://github.com/llvm/llvm-project/commit/c7f244b8971470c930bd75e0e65b065edd00bd21.diff
LOG: [libc++] Properly pick up the Ninja from Xcode in the CI script
Added:
Modified:
libcxx/utils/ci/run-buildbot
Removed:
################################################################################
diff --git a/libcxx/utils/ci/run-buildbot b/libcxx/utils/ci/run-buildbot
index fb23df532201..22ef608df308 100755
--- a/libcxx/utils/ci/run-buildbot
+++ b/libcxx/utils/ci/run-buildbot
@@ -61,19 +61,22 @@ MONOREPO_ROOT="${MONOREPO_ROOT:="$(git rev-parse --show-toplevel)"}"
BUILD_DIR="${BUILD_DIR:=${MONOREPO_ROOT}/build/${BUILDER}}"
INSTALL_DIR="${BUILD_DIR}/install"
+# On macOS, fall back to using the Ninja provided with Xcode if no other Ninja can be found.
+if which ninja &>/dev/null; then
+ NINJA="$(which ninja)"
+else
+ NINJA="$(xcrun --find ninja)"
+fi
+
function clean() {
rm -rf "${BUILD_DIR}"
}
function generate-cmake() {
echo "--- Generating CMake"
- # On macOS, fall back to using the Ninja provided with Xcode if no other
- # Ninja can be found.
- if which ninja &>/dev/null; then ninja_path="$(which ninja)"; else ninja_path="$(xcrun --find ninja)"; fi
cmake -S "${MONOREPO_ROOT}/llvm" \
-B "${BUILD_DIR}" \
- -GNinja \
- -DCMAKE_MAKE_PROGRAM="${ninja_path}" \
+ -GNinja -DCMAKE_MAKE_PROGRAM="${NINJA}" \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DCMAKE_INSTALL_PREFIX="${INSTALL_DIR}" \
-DLLVM_ENABLE_PROJECTS="libcxx;libunwind;libcxxabi" \
@@ -84,29 +87,29 @@ function generate-cmake() {
function check-cxx-cxxabi() {
echo "+++ Running the libc++ tests"
- ninja -C "${BUILD_DIR}" check-cxx
+ ${NINJA} -C "${BUILD_DIR}" check-cxx
echo "+++ Running the libc++abi tests"
- ninja -C "${BUILD_DIR}" check-cxxabi
+ ${NINJA} -C "${BUILD_DIR}" check-cxxabi
echo "--- Installing libc++ and libc++abi to a fake location"
- ninja -C "${BUILD_DIR}" install-cxx install-cxxabi
+ ${NINJA} -C "${BUILD_DIR}" install-cxx install-cxxabi
}
# TODO: The goal is to test this against all configurations. We should also move
# this to the Lit test suite instead of being a separate CMake target.
function check-abi-list() {
echo "+++ Running the libc++ ABI list test"
- ninja -C "${BUILD_DIR}" check-cxx-abilist || (
+ ${NINJA} -C "${BUILD_DIR}" check-cxx-abilist || (
echo "+++ Generating the libc++ ABI list after failed check"
- ninja -C "${BUILD_DIR}" generate-cxx-abilist
+ ${NINJA} -C "${BUILD_DIR}" generate-cxx-abilist
false
)
}
function check-cxx-benchmarks() {
echo "--- Running the benchmarks"
- ninja -C "${BUILD_DIR}" check-cxx-benchmarks
+ ${NINJA} -C "${BUILD_DIR}" check-cxx-benchmarks
}
case "${BUILDER}" in
@@ -327,7 +330,7 @@ documentation)
generate-cmake -DLLVM_ENABLE_SPHINX=ON
echo "+++ Generating documentation"
- ninja -C "${BUILD_DIR}" docs-libcxx-html
+ ${NINJA} -C "${BUILD_DIR}" docs-libcxx-html
;;
unified-standalone)
export CC=clang
@@ -338,7 +341,7 @@ unified-standalone)
echo "--- Generating CMake"
cmake -S "${MONOREPO_ROOT}/libcxx/utils/ci/runtimes" \
-B "${BUILD_DIR}" \
- -GNinja \
+ -GNinja -DCMAKE_MAKE_PROGRAM="${NINJA}" \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DCMAKE_INSTALL_PREFIX="${INSTALL_DIR}" \
-DLLVM_ENABLE_PROJECTS="libcxx;libcxxabi;libunwind"
@@ -354,7 +357,7 @@ legacy-standalone)
echo "--- Generating CMake"
cmake -S "${MONOREPO_ROOT}/libcxx" \
-B "${BUILD_DIR}/libcxx" \
- -GNinja \
+ -GNinja -DCMAKE_MAKE_PROGRAM="${NINJA}" \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DCMAKE_INSTALL_PREFIX="${INSTALL_DIR}" \
-DLLVM_PATH="${MONOREPO_ROOT}/llvm" \
@@ -364,7 +367,7 @@ legacy-standalone)
cmake -S "${MONOREPO_ROOT}/libcxxabi" \
-B "${BUILD_DIR}/libcxxabi" \
- -GNinja \
+ -GNinja -DCMAKE_MAKE_PROGRAM="${NINJA}" \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DCMAKE_INSTALL_PREFIX="${INSTALL_DIR}" \
-DLLVM_PATH="${MONOREPO_ROOT}/llvm" \
@@ -373,16 +376,16 @@ legacy-standalone)
-DLIBCXXABI_LIBCXX_LIBRARY_PATH="${BUILD_DIR}/libcxx/lib"
echo "+++ Building libc++abi"
- ninja -C "${BUILD_DIR}/libcxxabi" cxxabi
+ ${NINJA} -C "${BUILD_DIR}/libcxxabi" cxxabi
echo "+++ Building libc++"
- ninja -C "${BUILD_DIR}/libcxx" cxx
+ ${NINJA} -C "${BUILD_DIR}/libcxx" cxx
echo "+++ Running the libc++ tests"
- ninja -C "${BUILD_DIR}/libcxx" check-cxx
+ ${NINJA} -C "${BUILD_DIR}/libcxx" check-cxx
echo "+++ Running the libc++abi tests"
- ninja -C "${BUILD_DIR}/libcxxabi" check-cxxabi
+ ${NINJA} -C "${BUILD_DIR}/libcxxabi" check-cxxabi
;;
aarch64)
clean
More information about the libcxx-commits
mailing list