Changes

Summary

  1. [ORC-RT] Update WrapperFunctionCall for 089acf25223. (details)
  2. [ORC-RT] Remove some stale comments. (details)
  3. [cmake] Use `GNUInstallDirs` to support custom installation dirs. (details)
  4. Revert "[cmake] Use `GNUInstallDirs` to support custom installation dirs." (details)
Commit 0ede1b906d4dc949b297d4f5d94ae9f4fc84a2b3 by Lang Hames
[ORC-RT] Update WrapperFunctionCall for 089acf25223.

089acf25223 updated WrapperFunctionCall to carry arbitrary argument payloads
(rather than plain address ranges). This commit implements the corresponding
update for the ORC runtime.
The file was modifiedcompiler-rt/lib/orc/macho_platform.cpp
The file was modifiedcompiler-rt/lib/orc/unittests/wrapper_function_utils_test.cpp
The file was modifiedcompiler-rt/lib/orc/wrapper_function_utils.h
Commit 1088c78c3b054f73f7d107addd50ee0669bb31be by Lang Hames
[ORC-RT] Remove some stale comments.

We switched to SPS serialization for these functions in 089acf25223d2.
The file was modifiedcompiler-rt/lib/orc/macho_platform.cpp
Commit 4a678f8072004eff9214c1a4e1836a14abb69535 by John.Ericson
[cmake] Use `GNUInstallDirs` to support custom installation dirs.

This is the original patch in my GNUInstallDirs series, now last to merge as the final piece!

It arose as a new draft of D28234. I initially did the unorthodox thing of pushing to that when I wasn't the original author, but since I ended up

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

- Converting all the packages, not just LLVM, effecting many more projects than LLVM itself.

I figured it was time to make a new revision.

I have used this patch series (and many back-ports) as the basis of https://github.com/NixOS/nixpkgs/pull/111487 for my distro (NixOS), which was merged last spring (2021). 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. Variables like `COMPILER_RT_INSTALL_PATH` have already been dealt with. Variables like `LLVM_LIBDIR_SUFFIX` however, will require further work, so that we may use `CMAKE_INSTALL_LIBDIR`.

These remaining items will be addressed in further patches. What is here is now rote and so we should get it out of the way before dealing more intricately with the remainder.

Reviewed By: #libunwind, #libc, #libc_abi, compnerd

Differential Revision: https://reviews.llvm.org/D99484
The file was modifiedclang/tools/c-index-test/CMakeLists.txt
The file was modifiedclang/tools/libclang/CMakeLists.txt
The file was modifiedclang/cmake/modules/AddClang.cmake
The file was modifiedclang/tools/clang-rename/CMakeLists.txt
The file was modifiedopenmp/runtime/cmake/LibompCheckLinkerFlag.cmake
The file was modifiedclang/tools/clang-nvlink-wrapper/CMakeLists.txt
The file was modifiedpolly/CMakeLists.txt
The file was modifiedopenmp/tools/multiplex/CMakeLists.txt
The file was modifiedclang-tools-extra/clang-doc/tool/CMakeLists.txt
The file was modifiedclang/tools/clang-format/CMakeLists.txt
The file was modifiedopenmp/CMakeLists.txt
The file was modifiedcompiler-rt/cmake/base-config-ix.cmake
The file was modifiedmlir/cmake/modules/AddMLIR.cmake
The file was modifiedclang-tools-extra/clang-tidy/CMakeLists.txt
The file was modifiedpolly/lib/External/CMakeLists.txt
The file was modifiedlibcxxabi/CMakeLists.txt
The file was modifiedllvm/cmake/modules/LLVMInstallSymlink.cmake
The file was modifiedpstl/CMakeLists.txt
The file was modifiedopenmp/runtime/src/CMakeLists.txt
The file was modifiedclang/CMakeLists.txt
The file was modifiedopenmp/libompd/src/CMakeLists.txt
The file was modifiedmlir/CMakeLists.txt
The file was modifiedclang/tools/scan-build-py/CMakeLists.txt
The file was modifiedlibunwind/CMakeLists.txt
The file was modifiedclang-tools-extra/clang-include-fixer/find-all-symbols/tool/CMakeLists.txt
The file was modifiedpolly/cmake/CMakeLists.txt
The file was modifiedlibc/CMakeLists.txt
The file was modifiedclang-tools-extra/modularize/CMakeLists.txt
The file was modifiedclang/utils/hmaptool/CMakeLists.txt
The file was modifiedclang-tools-extra/CMakeLists.txt
The file was modifiedclang-tools-extra/clang-include-fixer/tool/CMakeLists.txt
The file was modifiedlibcxx/CMakeLists.txt
The file was modifiedlibcxx/cmake/Modules/HandleLibCXXABI.cmake
The file was modifiedclang-tools-extra/clang-tidy/tool/CMakeLists.txt
The file was modifiedclang/tools/scan-build/CMakeLists.txt
The file was modifiedclang/tools/scan-view/CMakeLists.txt
Commit da77db58d7629a3bfea1a0053aa9c29764b0bc2b by John.Ericson
Revert "[cmake] Use `GNUInstallDirs` to support custom installation dirs."

https://lab.llvm.org/buildbot/#/builders/46/builds/21146 Still have
this odd error, not sure how to reproduce, so I will just try breaking
up my patch.

This reverts commit 4a678f8072004eff9214c1a4e1836a14abb69535.
The file was modifiedclang-tools-extra/CMakeLists.txt
The file was modifiedclang/tools/libclang/CMakeLists.txt
The file was modifiedclang/tools/scan-build-py/CMakeLists.txt
The file was modifiedpstl/CMakeLists.txt
The file was modifiedopenmp/runtime/cmake/LibompCheckLinkerFlag.cmake
The file was modifiedmlir/cmake/modules/AddMLIR.cmake
The file was modifiedclang-tools-extra/clang-include-fixer/tool/CMakeLists.txt
The file was modifiedclang-tools-extra/clang-tidy/CMakeLists.txt
The file was modifiedopenmp/libompd/src/CMakeLists.txt
The file was modifiedlibunwind/CMakeLists.txt
The file was modifiedclang-tools-extra/clang-tidy/tool/CMakeLists.txt
The file was modifiedpolly/cmake/CMakeLists.txt
The file was modifiedclang/tools/scan-build/CMakeLists.txt
The file was modifiedpolly/CMakeLists.txt
The file was modifiedclang/tools/clang-format/CMakeLists.txt
The file was modifiedclang/tools/clang-nvlink-wrapper/CMakeLists.txt
The file was modifiedopenmp/runtime/src/CMakeLists.txt
The file was modifiedclang/tools/c-index-test/CMakeLists.txt
The file was modifiedclang/CMakeLists.txt
The file was modifiedpolly/lib/External/CMakeLists.txt
The file was modifiedclang/tools/scan-view/CMakeLists.txt
The file was modifiedclang/utils/hmaptool/CMakeLists.txt
The file was modifiedlibcxx/cmake/Modules/HandleLibCXXABI.cmake
The file was modifiedlibc/CMakeLists.txt
The file was modifiedclang-tools-extra/clang-include-fixer/find-all-symbols/tool/CMakeLists.txt
The file was modifiedopenmp/tools/multiplex/CMakeLists.txt
The file was modifiedllvm/cmake/modules/LLVMInstallSymlink.cmake
The file was modifiedclang-tools-extra/modularize/CMakeLists.txt
The file was modifiedcompiler-rt/cmake/base-config-ix.cmake
The file was modifiedclang/tools/clang-rename/CMakeLists.txt
The file was modifiedlibcxx/CMakeLists.txt
The file was modifiedmlir/CMakeLists.txt
The file was modifiedopenmp/CMakeLists.txt
The file was modifiedclang-tools-extra/clang-doc/tool/CMakeLists.txt
The file was modifiedclang/cmake/modules/AddClang.cmake
The file was modifiedlibcxxabi/CMakeLists.txt