<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/meta-clang.git/classes/clang.bbclass, branch walnascar</title>
<subtitle>Mirror of github.com/kraj/meta-clang.git</subtitle>
<id>https://git.enea.com/cgit/linux/meta-clang.git/atom?h=walnascar</id>
<link rel='self' href='https://git.enea.com/cgit/linux/meta-clang.git/atom?h=walnascar'/>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/meta-clang.git/'/>
<updated>2026-02-11T04:58:48+00:00</updated>
<entry>
<title>clang.bbclass: Allow overriding LTO:toolchain-clang</title>
<updated>2026-02-11T04:58:48+00:00</updated>
<author>
<name>mark.yang</name>
<email>mark.yang@lge.com</email>
</author>
<published>2026-02-11T02:06:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/meta-clang.git/commit/?id=5945abf78de6c4b0269c4496fb63227344f79df7'/>
<id>urn:sha1:5945abf78de6c4b0269c4496fb63227344f79df7</id>
<content type='text'>
Currently, LTO:toolchain-clang is defined using the immediate assignment
operator (=). This forces the variable to the default value defined in
the class, preventing users from overriding LTO flags for the clang
toolchain via distro configuration or local.conf.

Change the assignment to use the conditional assignment operator (?=).
This ensures that if LTO:toolchain-clang is already set (e.g., in a
distro include file), the custom value is preserved and not overwritten
by the default.

Signed-off-by: mark.yang &lt;mark.yang@lge.com&gt;
</content>
</entry>
<entry>
<title>clang.bbclass,compiler-rt: Do not set -target for native clang</title>
<updated>2025-03-22T04:30:56+00:00</updated>
<author>
<name>Khem Raj</name>
<email>raj.khem@gmail.com</email>
</author>
<published>2025-03-10T20:19:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/meta-clang.git/commit/?id=6da0abaa33b458a37b97f42e3755245e3220bf27'/>
<id>urn:sha1:6da0abaa33b458a37b97f42e3755245e3220bf27</id>
<content type='text'>
When building native recipes using clang as native compiler e.g.
compiler-rt-native, setting -target can be out of sync with the
underlying distro's understanding of gcc tuple e.g. aarch64-linux
or aarch64-linux-gnu, which is used by distros to house the gcc
runtime e.g. on ubuntu

/usr/lib/gcc/aarch64-linux-gnu/11
/usr/lib/gcc/aarch64-linux-gnu/9

if we provide -target its not able to deduce it from the build host
which is required for native packages

try with
recipe-sysroot-native/usr/bin/clang -xc /dev/null -rtlib=libgcc --unwindlib=libgcc -stdlib=libstdc++ -v

or

recipe-sysroot-native/usr/bin/clang -xc /dev/null -rtlib=libgcc --unwindlib=libgcc -stdlib=libstdc++ -target aarch64-linux -v

to see the difference

Signed-off-by: Khem Raj &lt;raj.khem@gmail.com&gt;
</content>
</entry>
<entry>
<title>recipes: Update to match OE-Core virtual/cross-* changes</title>
<updated>2025-01-22T04:14:14+00:00</updated>
<author>
<name>Richard Purdie</name>
<email>richard.purdie@linuxfoundation.org</email>
</author>
<published>2025-01-21T22:08:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/meta-clang.git/commit/?id=0ea2df0462edc0c01e787b6ee6c0e20cd6a42fc7'/>
<id>urn:sha1:0ea2df0462edc0c01e787b6ee6c0e20cd6a42fc7</id>
<content type='text'>
Update meta-clang to match OE-Core changes to use recipe specific virtual
providers (without yet switching to the new switching mechanism).

Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>clang.bbclass: Use ld.lld as default for LD with ld-is-lld</title>
<updated>2024-10-10T21:33:41+00:00</updated>
<author>
<name>Khem Raj</name>
<email>raj.khem@gmail.com</email>
</author>
<published>2024-10-10T01:19:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/meta-clang.git/commit/?id=835896fc6b2b8862d358f65d8cf229537acdbe1a'/>
<id>urn:sha1:835896fc6b2b8862d358f65d8cf229537acdbe1a</id>
<content type='text'>
When ld-is-lld is in DISTRO_FEATURE, user wants to use lld as system
linker, therefore honor the setting for bare linker as well, for compiler
its being taken care by clang itself using -fuse-ld=lld

Signed-off-by: Khem Raj &lt;raj.khem@gmail.com&gt;
</content>
</entry>
<entry>
<title>clang: Do not override default ld with ld.lld</title>
<updated>2024-10-10T21:33:41+00:00</updated>
<author>
<name>Khem Raj</name>
<email>raj.khem@gmail.com</email>
</author>
<published>2024-10-08T14:52:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/meta-clang.git/commit/?id=95e84ca147b9a9e05b3056b4ac3b06ac268368ef'/>
<id>urn:sha1:95e84ca147b9a9e05b3056b4ac3b06ac268368ef</id>
<content type='text'>
This creates a problem when swapping linkers, it
does not work without cleaning the recipe first,
in anycase if we want to use lld as default in clang
then it should be done during clang compile

Add packageconfig to let clang defualt

Signed-off-by: Khem Raj &lt;raj.khem@gmail.com&gt;
</content>
</entry>
<entry>
<title>clang.bbclass: remove mcpu option with qualifiers for the octeontx2 core</title>
<updated>2024-07-04T18:08:55+00:00</updated>
<author>
<name>Ruiqiang Hao</name>
<email>Ruiqiang.Hao@windriver.com</email>
</author>
<published>2024-07-04T04:36:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/meta-clang.git/commit/?id=4717122ea12a0fe5b6f963c092979e653188ff7f'/>
<id>urn:sha1:4717122ea12a0fe5b6f963c092979e653188ff7f</id>
<content type='text'>
Currently, only the '-mcpu=octeontx2' option is removed, and any
-mcpu parameters with qualifiers (such as +crc+crypto) are not
removed, e.g., '-mcpu=octeontx2+crypto'. Remove these mcpu parameters
with qualifiers by using '-mcpu=octeontx2${TUNE_CCARGS_MARCH_OPTS}'.

Signed-off-by: Ruiqiang Hao &lt;Ruiqiang.Hao@windriver.com&gt;
</content>
</entry>
<entry>
<title>clang.bbclass: Do not lose TUNE_CCARGS_MARCH_OPTS when rewriting big.LITTLE mcpu</title>
<updated>2024-03-19T16:52:16+00:00</updated>
<author>
<name>Khem Raj</name>
<email>raj.khem@gmail.com</email>
</author>
<published>2024-03-19T06:01:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/meta-clang.git/commit/?id=2c1ac866f5338d7e4b085e5f6c7a2ab353ed3015'/>
<id>urn:sha1:2c1ac866f5338d7e4b085e5f6c7a2ab353ed3015</id>
<content type='text'>
Currently, clang options lose the qualifiers like +crc+crypto which are in TUNE_CCARGS_MARCH_OPTS
when options like -mcpu=big.little are transformed to -mcpu=little as clang
does not understand -mcpu=big.little while gcc does. Here we append TUNE_CCARGS_MARCH_OPTS
after the rewrite

Signed-off-by: Khem Raj &lt;raj.khem@gmail.com&gt;
</content>
</entry>
<entry>
<title>clang: Use +nocrypto with -mcpu for rpi3/rpi4</title>
<updated>2024-03-19T16:52:16+00:00</updated>
<author>
<name>Khem Raj</name>
<email>raj.khem@gmail.com</email>
</author>
<published>2024-03-18T21:18:44+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/meta-clang.git/commit/?id=606a21be6318950021ae2143ae6349a09124222a'/>
<id>urn:sha1:606a21be6318950021ae2143ae6349a09124222a</id>
<content type='text'>
This avoids qtwebengine crashes on rpi4/rpi3

Signed-off-by: Khem Raj &lt;raj.khem@gmail.com&gt;
</content>
</entry>
<entry>
<title>clang.bbclass: Stage along with gcc toolchain</title>
<updated>2023-11-12T22:59:28+00:00</updated>
<author>
<name>Khem Raj</name>
<email>raj.khem@gmail.com</email>
</author>
<published>2023-11-12T03:18:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/meta-clang.git/commit/?id=6eef6ed66097e404f826c038ff213f4dba461e1a'/>
<id>urn:sha1:6eef6ed66097e404f826c038ff213f4dba461e1a</id>
<content type='text'>
So far when using toolchain = clang would punt gcc from native-sysroot
but its beneficial to keep both compilers since they can co-exist its
not a big problem to have both in sysroot. This helps in debugging
issues as well.

Signed-off-by: Khem Raj &lt;raj.khem@gmail.com&gt;
</content>
</entry>
<entry>
<title>clang.bbclass: fix a typo</title>
<updated>2023-10-31T05:49:58+00:00</updated>
<author>
<name>Ming Liu</name>
<email>liu.ming50@gmail.com</email>
</author>
<published>2023-10-29T09:05:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/meta-clang.git/commit/?id=183f6e908151991ff2adfc2e8831f371522dcaee'/>
<id>urn:sha1:183f6e908151991ff2adfc2e8831f371522dcaee</id>
<content type='text'>
A pair of '[]' is missing, add them in.

Signed-off-by: Ming Liu &lt;liu.ming50@gmail.com&gt;
</content>
</entry>
</feed>
