Skip to content

Commit 887b8bd

Browse files
committed
[llvm] Remove libcxx, libcxxabi and libunwind from supported LLVM_ENABLE_PROJECTS
This is a breaking change. If you were passing one of those three runtimes in LLVM_ENABLE_PROJECTS, you need to start passing them in LLVM_ENABLE_RUNTIMES instead. The runtimes in LLVM_ENABLE_RUNTIMES will start being built using the "bootstrapping build" instead, which means that they will be built using the just-built Clang. This is usually what you wanted anyway. If you were using LLVM_ENABLE_PROJECTS=all with the explicit goal of building these three runtimes, you can now use LLVM_ENABLE_RUNTIMES=all and these runtimes will be built using the bootstrapping build. Differential Revision: https://reviews.llvm.org/D132480
1 parent 403d72c commit 887b8bd

File tree

4 files changed

+4
-40
lines changed

4 files changed

+4
-40
lines changed

libcxx/docs/ReleaseNotes.rst

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -96,3 +96,5 @@ ABI Affecting Changes
9696

9797
Build System Changes
9898
--------------------
99+
- Support for ``libcxx``, ``libcxxabi`` and ``libunwind`` in ``LLVM_ENABLE_PROJECTS`` has officially
100+
been removed. Instead, please build according to :ref:`these instructions <build instructions>`.

libcxx/utils/ci/buildkite-pipeline.yml

Lines changed: 0 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -386,23 +386,6 @@ steps:
386386
limit: 2
387387
timeout_in_minutes: 120
388388

389-
- label: "Legacy LLVM_ENABLE_PROJECTS build"
390-
command: "libcxx/utils/ci/run-buildbot legacy-project-build"
391-
artifact_paths:
392-
- "**/test-results.xml"
393-
- "**/*.abilist"
394-
env:
395-
CC: "clang-${LLVM_HEAD_VERSION}"
396-
CXX: "clang++-${LLVM_HEAD_VERSION}"
397-
agents:
398-
queue: "libcxx-builders"
399-
os: "linux"
400-
retry:
401-
automatic:
402-
- exit_status: -1 # Agent was lost
403-
limit: 2
404-
timeout_in_minutes: 120
405-
406389
# Tests with various build configurations.
407390
- label: "Static libraries"
408391
command: "libcxx/utils/ci/run-buildbot generic-static"

libcxx/utils/ci/run-buildbot

Lines changed: 0 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -502,21 +502,6 @@ legacy-test-config)
502502
-DLIBUNWIND_TEST_CONFIG="${MONOREPO_ROOT}/libunwind/test/lit.site.cfg.in"
503503
check-runtimes
504504
;;
505-
legacy-project-build)
506-
clean
507-
508-
echo "--- Generating CMake"
509-
${CMAKE} \
510-
-S "${MONOREPO_ROOT}/llvm" \
511-
-B "${BUILD_DIR}" \
512-
-DLLVM_ENABLE_PROJECTS="libcxx;libunwind;libcxxabi" \
513-
-GNinja -DCMAKE_MAKE_PROGRAM="${NINJA}" \
514-
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
515-
-DCMAKE_INSTALL_PREFIX="${INSTALL_DIR}" \
516-
-DLLVM_LIT_ARGS="-sv --show-unsupported --xunit-xml-output test-results.xml --timeout=1500" \
517-
-DLIBCXX_CXX_ABI=libcxxabi
518-
check-runtimes
519-
;;
520505
aarch64)
521506
clean
522507
generate-cmake -C "${MONOREPO_ROOT}/libcxx/cmake/caches/AArch64.cmake"

llvm/CMakeLists.txt

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -109,7 +109,7 @@ endif()
109109
# LLVM_EXTERNAL_${project}_SOURCE_DIR using LLVM_ALL_PROJECTS
110110
# This allows an easy way of setting up a build directory for llvm and another
111111
# one for llvm+clang+... using the same sources.
112-
set(LLVM_ALL_PROJECTS "bolt;clang;clang-tools-extra;compiler-rt;cross-project-tests;libc;libclc;libcxx;libcxxabi;libunwind;lld;lldb;mlir;openmp;polly;pstl")
112+
set(LLVM_ALL_PROJECTS "bolt;clang;clang-tools-extra;compiler-rt;cross-project-tests;libc;libclc;lld;lldb;mlir;openmp;polly;pstl")
113113
# The flang project is not yet part of "all" projects (see C++ requirements)
114114
set(LLVM_EXTRA_PROJECTS "flang")
115115
# List of all known projects in the mono repo
@@ -122,13 +122,7 @@ if( LLVM_ENABLE_PROJECTS STREQUAL "all" )
122122
endif()
123123
foreach(proj ${LLVM_ENABLE_PROJECTS})
124124
if (NOT proj STREQUAL "llvm" AND NOT "${proj}" IN_LIST LLVM_KNOWN_PROJECTS)
125-
MESSAGE(FATAL_ERROR "${proj} isn't a known project: ${LLVM_KNOWN_PROJECTS}")
126-
endif()
127-
endforeach()
128-
foreach(proj "libcxx" "libcxxabi" "libunwind")
129-
if (${proj} IN_LIST LLVM_ENABLE_PROJECTS)
130-
message(WARNING "Using LLVM_ENABLE_PROJECTS=${proj} is deprecated now, please use -DLLVM_ENABLE_RUNTIMES=${proj} or "
131-
"see the instructions at https://libcxx.llvm.org/BuildingLibcxx.html for building the runtimes.")
125+
MESSAGE(FATAL_ERROR "${proj} isn't a known project: ${LLVM_KNOWN_PROJECTS}. Did you mean to enable it as a runtime in LLVM_ENABLE_RUNTIMES?")
132126
endif()
133127
endforeach()
134128

0 commit comments

Comments
 (0)