[PATCH] D146918: [CMake] Don't set absolute paths as install runpaths on ELF platforms in llvm_setup_rpath()
    Alex Bradbury via Phabricator via llvm-commits 
    llvm-commits at lists.llvm.org
       
    Wed Apr 19 21:45:10 PDT 2023
    
    
  
asb added a comment.
This commit seems to be breaking my standard build config (at least, an incremental build fails when trying to regenerate ninja, with many errors of the form:
  CMake Error at cmake/modules/AddLLVM.cmake:588 (add_library):
    The install of the LLVMDemangle target requires changing an RPATH from the
    build tree, but this is not supported with the Ninja generator unless on an
    ELF-based or XCOFF-based platform.  The CMAKE_BUILD_WITH_INSTALL_RPATH
    variable may be set to avoid this relinking step.
  Call Stack (most recent call first):
    cmake/modules/AddLLVM.cmake:848 (llvm_add_library)
    cmake/modules/AddLLVM.cmake:825 (add_llvm_library)
    lib/Demangle/CMakeLists.txt:1 (add_llvm_component_library)
and a final error:
  CMake Generate step failed.  Build files cannot be regenerated correctly.
This is with a build config like the following (split dwarf and shared libs are I suppose slightly uncommon):
  cmake -G Ninja -DCMAKE_BUILD_TYPE="Debug" \
    -DLLVM_ENABLE_PROJECTS="clang;lld" \
    -DBUILD_SHARED_LIBS=True -DLLVM_USE_SPLIT_DWARF=True \
    -DLLVM_BUILD_TESTS=True \
    -DLLVM_CCACHE_BUILD=ON \
    -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++ \
    -DLLVM_ENABLE_LLD=True \
    -DLLVM_TARGETS_TO_BUILD="all" \
    -DLLVM_APPEND_VC_REV=False ../../llvm
My usual release config seems ok:
  cmake -G Ninja -DCMAKE_BUILD_TYPE="Release" \
    -DLLVM_ENABLE_PROJECTS="clang;lld" \
    -DLLVM_ENABLE_ASSERTIONS=ON \
    -DLLVM_CCACHE_BUILD=ON \
    -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++ \
    -DLLVM_ENABLE_LLD=True \
    -DLLVM_TARGETS_TO_BUILD="all" \
    -DLLVM_APPEND_VC_REV=False ../../llvm
Repository:
  rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D146918/new/
https://reviews.llvm.org/D146918
    
    
More information about the llvm-commits
mailing list