[all-commits] [llvm/llvm-project] 6fd2db: Use `GNUInstallDirs` to support custom installatio...

John Ericson via All-commits all-commits at lists.llvm.org
Tue Nov 2 07:23:44 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 6fd2db04d0f22ea22c5317d98ce2126aa64b6a73
      https://github.com/llvm/llvm-project/commit/6fd2db04d0f22ea22c5317d98ce2126aa64b6a73
  Author: John Ericson <John.Ericson at Obsidian.Systems>
  Date:   2021-11-02 (Tue, 02 Nov 2021)

  Changed paths:
    M clang/tools/scan-build/CMakeLists.txt
    M libclc/CMakeLists.txt
    M lldb/cmake/modules/FindLibEdit.cmake
    M llvm/CMakeLists.txt
    M llvm/cmake/modules/AddLLVM.cmake
    M llvm/cmake/modules/AddSphinxTarget.cmake
    M llvm/cmake/modules/CMakeLists.txt
    M llvm/cmake/modules/LLVMInstallSymlink.cmake
    M llvm/docs/CMake.rst
    M llvm/examples/Bye/CMakeLists.txt
    M llvm/include/llvm/CMakeLists.txt
    M llvm/tools/llvm-config/BuildVariables.inc.in
    M llvm/tools/llvm-config/llvm-config.cpp
    M llvm/tools/lto/CMakeLists.txt
    M llvm/tools/opt-viewer/CMakeLists.txt
    M llvm/tools/remarks-shlib/CMakeLists.txt
    M openmp/runtime/src/CMakeLists.txt

  Log Message:
  -----------
  Use `GNUInstallDirs` to support custom installation dirs. -- LLVM

This is a new draft of D28234. I previously did the unorthodox thing of
pushing to it when I wasn't the original author, but since this version

- Uses `GNUInstallDirs`, rather than mimics it, as the original author
  was hesitant to do but others requested.

- Is much broader, effecting many more projects than LLVM itself.

I figured it was time to make a new revision.

I am using this patch (and many back-ports) as the basis of
https://github.com/NixOS/nixpkgs/pull/111487 for my distro (NixOS). It
looked like people were generally on board in D28234, but I make note of
this here in case extra motivation is useful.

---

As pointed out in the original issue, a central tension is that LLVM
already has some partial support for these sorts of things. For example
`LLVM_LIBDIR_SUFFIX`, or `COMPILER_RT_INSTALL_PATH`. Because it's not
quite clear yet what to do about those, we are holding off on changing
libdirs and `compiler-rt`. for this initial PR.

---

On the advice of @lebedev.ri, I am splitting this up a bit per
subproject, starting with LLVM. To allow it to be more easily reviewed. This and the subsequent patch must be landed together, as this will not build alone. But the rest can be landed on their own.

Reviewed By: compnerd

Differential Revision: https://reviews.llvm.org/D100810




More information about the All-commits mailing list