diff options
author | Michael Davis <michael.davis@essvote.com> | 2019-12-03 10:31:02 -0600 |
---|---|---|
committer | Khem Raj <raj.khem@gmail.com> | 2019-12-06 08:30:03 -0800 |
commit | 1598cc45795cbcab831270e4286aef113faa1325 (patch) | |
tree | 3f2ca876ef336f36973cfef5a683773aae861226 | |
parent | 5ffaf60c7b7c555d19e6ea8dcb99b32f1b2ea59f (diff) | |
download | meta-clang-1598cc45795cbcab831270e4286aef113faa1325.tar.gz |
clang: Fix cmake exports not finding native binaries Issue #230
Signed-off-by: Michael Davis <michael.davis@essvote.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
-rw-r--r-- | recipes-devtools/clang/clang_git.bb | 13 | ||||
-rw-r--r-- | recipes-devtools/clang/llvm-common/llvm-config | 5 |
2 files changed, 18 insertions, 0 deletions
diff --git a/recipes-devtools/clang/clang_git.bb b/recipes-devtools/clang/clang_git.bb index 2ac2d39..a5009e5 100644 --- a/recipes-devtools/clang/clang_git.bb +++ b/recipes-devtools/clang/clang_git.bb | |||
@@ -163,6 +163,19 @@ do_install() { | |||
163 | DESTDIR=${D} ninja ${PARALLEL_MAKE} ${INSTALLTARGET} | 163 | DESTDIR=${D} ninja ${PARALLEL_MAKE} ${INSTALLTARGET} |
164 | } | 164 | } |
165 | 165 | ||
166 | do_install_append_class-target () { | ||
167 | # Allow bin path to change based on YOCTO_ALTERNATE_EXE_PATH | ||
168 | sed -i 's;${_IMPORT_PREFIX}/bin;${_IMPORT_PREFIX_BIN};g' ${D}${libdir}/cmake/llvm/LLVMExports-release.cmake | ||
169 | |||
170 | # Insert function to populate Import Variables | ||
171 | sed -i "4i\ | ||
172 | if(DEFINED ENV{YOCTO_ALTERNATE_EXE_PATH})\n\ | ||
173 | execute_process(COMMAND \"llvm-config\" \"--bindir\" OUTPUT_VARIABLE _IMPORT_PREFIX_BIN OUTPUT_STRIP_TRAILING_WHITESPACE)\n\ | ||
174 | else()\n\ | ||
175 | set(_IMPORT_PREFIX_BINARY \"\${_IMPORT_PREFIX}/bin\")\n\ | ||
176 | endif()\n" ${D}${libdir}/cmake/llvm/LLVMExports-release.cmake | ||
177 | } | ||
178 | |||
166 | do_install_append_class-native () { | 179 | do_install_append_class-native () { |
167 | install -Dm 0755 ${B}/bin/clang-tblgen ${D}${bindir}/clang-tblgen | 180 | install -Dm 0755 ${B}/bin/clang-tblgen ${D}${bindir}/clang-tblgen |
168 | for f in `find ${D}${bindir} -executable -type f -not -type l`; do | 181 | for f in `find ${D}${bindir} -executable -type f -not -type l`; do |
diff --git a/recipes-devtools/clang/llvm-common/llvm-config b/recipes-devtools/clang/llvm-common/llvm-config index 4462896..a139514 100644 --- a/recipes-devtools/clang/llvm-common/llvm-config +++ b/recipes-devtools/clang/llvm-common/llvm-config | |||
@@ -18,6 +18,11 @@ if [[ $1 == "--libs" ]]; then | |||
18 | exec "$NEXT_LLVM_CONFIG" $@ | 18 | exec "$NEXT_LLVM_CONFIG" $@ |
19 | fi | 19 | fi |
20 | 20 | ||
21 | if [[ $1 == "--bindir" ]]; then | ||
22 | unset YOCTO_ALTERNATE_EXE_PATH | ||
23 | exec "$NEXT_LLVM_CONFIG" $@ | ||
24 | fi | ||
25 | |||
21 | for arg in "$@"; do | 26 | for arg in "$@"; do |
22 | case "$arg" in | 27 | case "$arg" in |
23 | --cppflags) | 28 | --cppflags) |