[all-commits] [llvm/llvm-project] 2512a8: [clang] Adding Platform/Architecture Specific Reso...
David Tenty via All-commits
all-commits at lists.llvm.org
Tue Apr 19 07:10:46 PDT 2022
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 2512a875ccac158bc9b654b09e3347db167e33df
https://github.com/llvm/llvm-project/commit/2512a875ccac158bc9b654b09e3347db167e33df
Author: Qiongsi Wu <qwu at ibm.com>
Date: 2022-04-19 (Tue, 19 Apr 2022)
Changed paths:
M clang/lib/Headers/CMakeLists.txt
Log Message:
-----------
[clang] Adding Platform/Architecture Specific Resource Header Installation Targets
The goal of this patch is to improve distribution build's flexibility to include only applicable header files.
Currently, the clang-resource-headers target contains nearly all the files in clang/lib/Headers. Most of these files are platform specific (e.g. immintrin.h is x86 specific). A distribution build will have to either include all the headers for all the platforms, or not include any headers. For example, if a distribution build for powerpc includes the clang-resource-headers target, it will include all the x86 specific headers, even-though the x86 specific headers cannot be used.
This patch breaks up the clang-resource-headers list to a core list and platform specific lists. With the patch, a distribution build can now include the ppc-resource-headers to include the headers applicable to the powerpc platform.
Specifically, one can now have
cmake ... LLVM_DISTRIBUTION_COMPONENTS="clang;ppc-resource-headers" ... ../llvm
ninja install-distribution then installs the powerpc headers.
Similarly, one can do
cmake ... LLVM_DISTRIBUTION_COMPONENTS="clang;x86-resource-headers" ... ../llvm
to include headers applicable to the x86 platform in a distribution installation.
To implement this behaviour, the patch does two things:
* It breaks up the long files header file list to a core list and platform specific lists.
* It adds numerous platform specific installation targets.
Differential Revision: https://reviews.llvm.org/D123498
More information about the All-commits
mailing list