Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[libc++] -DLIBCXX_CXX_ABI=system-libcxxabi not usable? #104672

Open
h-vetinari opened this issue Aug 17, 2024 · 1 comment
Open

[libc++] -DLIBCXX_CXX_ABI=system-libcxxabi not usable? #104672

h-vetinari opened this issue Aug 17, 2024 · 1 comment
Labels
libc++abi libc++abi C++ Runtime Library. Not libc++. libc++ libc++ C++ Standard Library. Not GNU libstdc++. Not libc++abi.

Comments

@h-vetinari
Copy link
Contributor

h-vetinari commented Aug 17, 2024

I recently noticed ba4f1e4, which is exactly the kind of build we need to do for our distribution for various reasons. I've tried this with LLVM 18.1.8 and 19.1.0-rc2, but in both cases, I get

-- Configuring done (25.4s)
CMake Error at $SRC_DIR/libcxx/cmake/Modules/HandleLibCXXABI.cmake:59 (add_library):
  No SOURCES given to target: libcxx-abi-headers-generate-private-headers
Call Stack (most recent call first):
  $SRC_DIR/libcxx/cmake/Modules/HandleLibCXXABI.cmake:135 (import_private_headers)
  $SRC_DIR/libcxx/CMakeLists.txt:511 (include)

Our build invocation roughly boils down to the following (removed some uninteresting things, but happy to elaborate);

cmake -G Ninja -B build -S runtimes \
    -DLLVM_ENABLE_RUNTIMES=libcxx;libcxxabi;libunwind \
    -DCMAKE_INSTALL_PREFIX=$PREFIX \
    -DCMAKE_BUILD_TYPE=Release \
    -DLIBCXX_ENABLE_TIME_ZONE_DATABASE=ON \
    -DLIBCXX_INCLUDE_BENCHMARKS=OFF \
    -DLIBCXX_INCLUDE_DOCS=OFF \
    -DLIBCXX_INCLUDE_TESTS=OFF \
    -DLIBCXX_HARDENING_MODE=none \
    -DLIBCXXABI_USE_LLVM_UNWINDER=OFF \
    -DLLVM_ENABLE_PER_TARGET_RUNTIME_DIR=OFF \
    -DCMAKE_OSX_DEPLOYMENT_TARGET=10.13 \
    -DLIBCXX_ENABLE_VENDOR_AVAILABILITY_ANNOTATIONS=ON \
    -DLIBCXX_CXX_ABI=system-libcxxabi

ninja -C build cxx cxxabi unwind

I've tried removing libcxxabi from -DLLVM_ENABLE_RUNTIMES= (and the build invocation) though the result stays the same.

CC @ldionne @mgorny

@github-actions github-actions bot added libc++ libc++ C++ Standard Library. Not GNU libstdc++. Not libc++abi. libc++abi libc++abi C++ Runtime Library. Not libc++. labels Aug 17, 2024
@h-vetinari
Copy link
Contributor Author

Gentle ping @ldionne

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
libc++abi libc++abi C++ Runtime Library. Not libc++. libc++ libc++ C++ Standard Library. Not GNU libstdc++. Not libc++abi.
Projects
None yet
Development

No branches or pull requests

1 participant