summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKhem Raj <raj.khem@gmail.com>2021-05-18 22:27:41 -0700
committerKhem Raj <raj.khem@gmail.com>2021-05-19 23:58:12 -0700
commitcda2283e4cf3c90ea42b43dbc3a2268be6655670 (patch)
treeaa19c76565cef75c48270c4a6832c98d1f91dcab
parentd797409435d3b0e9f2859992439989ff1d81e66d (diff)
downloadmeta-clang-cda2283e4cf3c90ea42b43dbc3a2268be6655670.tar.gz
Replace --stdlibc=libc++ with -stdlibc=libc++
This ensures that it matches with CMake's understanding of this option and when its removed then it silently removes -stdlibc=libc++ but leaves the spurious '-' in the commandline which confuses the compiler as it them expects input from stdin Signed-off-by: Khem Raj <raj.khem@gmail.com>
-rw-r--r--README.md4
-rw-r--r--classes/clang.bbclass4
2 files changed, 4 insertions, 4 deletions
diff --git a/README.md b/README.md
index 826b8b3..3aa42da 100644
--- a/README.md
+++ b/README.md
@@ -76,14 +76,14 @@ if needed to by modifying `LIBCPLUSPLUS` variable, usually defaults used by `RUN
76best fit. e.g. below we select LLVM C++ as default C++ runtime. 76best fit. e.g. below we select LLVM C++ as default C++ runtime.
77 77
78```shell 78```shell
79LIBCPLUSPLUS = "--stdlib=libc++" 79LIBCPLUSPLUS = "-stdlib=libc++"
80``` 80```
81 81
82in `local.conf`. 82in `local.conf`.
83You can select libstdc++ per package too by writing bbappends for them containing 83You can select libstdc++ per package too by writing bbappends for them containing
84 84
85```shell 85```shell
86LIBCPLUSPLUS_toolchain-clang_pn-<recipe> = "--stdlibc=libc++" 86LIBCPLUSPLUS_toolchain-clang_pn-<recipe> = "-stdlibc=libc++"
87``` 87```
88Defaults are chosen to be GNU for maximum compatibility with existing GNU systems. Its always 88Defaults are chosen to be GNU for maximum compatibility with existing GNU systems. Its always
89good to use single runtime on a system, mixing runtimes can cause complications during 89good to use single runtime on a system, mixing runtimes can cause complications during
diff --git a/classes/clang.bbclass b/classes/clang.bbclass
index b684ac5..d6a7fe8 100644
--- a/classes/clang.bbclass
+++ b/classes/clang.bbclass
@@ -22,7 +22,7 @@ UNWINDLIB_riscv32 = "--unwindlib=libgcc"
22UNWINDLIB_powerpc = "--unwindlib=libgcc" 22UNWINDLIB_powerpc = "--unwindlib=libgcc"
23UNWINDLIB_armeb = "--unwindlib=libgcc" 23UNWINDLIB_armeb = "--unwindlib=libgcc"
24 24
25LIBCPLUSPLUS ??= "${@bb.utils.contains("RUNTIME", "llvm", "--stdlib=libc++", "", d)}" 25LIBCPLUSPLUS ??= "${@bb.utils.contains("RUNTIME", "llvm", "-stdlib=libc++", "", d)}"
26 26
27TARGET_CXXFLAGS_append_toolchain-clang = " ${LIBCPLUSPLUS}" 27TARGET_CXXFLAGS_append_toolchain-clang = " ${LIBCPLUSPLUS}"
28TUNE_CCARGS_append_toolchain-clang = " ${COMPILER_RT} ${LIBCPLUSPLUS}" 28TUNE_CCARGS_append_toolchain-clang = " ${COMPILER_RT} ${LIBCPLUSPLUS}"
@@ -95,7 +95,7 @@ def clang_base_deps(d):
95 ret += " libgcc " 95 ret += " libgcc "
96 if (d.getVar('COMPILER_RT').find('--unwindlib=libunwind') != -1): 96 if (d.getVar('COMPILER_RT').find('--unwindlib=libunwind') != -1):
97 ret += " libcxx " 97 ret += " libcxx "
98 if (d.getVar('LIBCPLUSPLUS').find('--stdlib=libc++') != -1): 98 if (d.getVar('LIBCPLUSPLUS').find('-stdlib=libc++') != -1):
99 ret += " libcxx " 99 ret += " libcxx "
100 else: 100 else:
101 ret += " virtual/${TARGET_PREFIX}compilerlibs " 101 ret += " virtual/${TARGET_PREFIX}compilerlibs "