<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/meta-clang.git/classes, branch scarthgap</title>
<subtitle>Mirror of github.com/kraj/meta-clang.git</subtitle>
<id>https://git.enea.com/cgit/linux/meta-clang.git/atom?h=scarthgap</id>
<link rel='self' href='https://git.enea.com/cgit/linux/meta-clang.git/atom?h=scarthgap'/>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/meta-clang.git/'/>
<updated>2026-02-11T04:55:33+00:00</updated>
<entry>
<title>clang.bbclass: Allow overriding LTO:toolchain-clang</title>
<updated>2026-02-11T04:55:33+00:00</updated>
<author>
<name>mark.yang</name>
<email>mark.yang@lge.com</email>
</author>
<published>2026-02-11T01:58:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/meta-clang.git/commit/?id=613362523f3bf85ff4862e2f1f00113b8d2028be'/>
<id>urn:sha1:613362523f3bf85ff4862e2f1f00113b8d2028be</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: add clang-native to BASE_DEFAULT_DEPS</title>
<updated>2025-12-12T04:21:48+00:00</updated>
<author>
<name>Martin Jansa</name>
<email>martin.jansa@gmail.com</email>
</author>
<published>2025-11-12T10:12:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/meta-clang.git/commit/?id=5c602337ea1a80fb7217eeda04e396cf90587dca'/>
<id>urn:sha1:5c602337ea1a80fb7217eeda04e396cf90587dca</id>
<content type='text'>
Add it for target builds in:
BASE_DEFAULT_DEPS:append:class-target:toolchain-clang:class-target

because ${MLPREFIX}clang-cross-${TARGET_ARCH} contains a broken symlink
to clang binary provided by clang-native and then in case someone
changes e.g.

TC_CXX_RUNTIME = "llvm"
to
TC_CXX_RUNTIME:class-target = "llvm"

then both clang-native and clang-cross-${TARGET_ARCH} are correctly
rebuilt, but unfortunately the hashequiv output hash of
clang-cross-${TARGET_ARCH} doesn't change (because the broken symlink
is still the same), so e.g. gptfdisk which depends on "equivalent"
clang-cross from BASE_DEFAULT_DEPS doesn't get rebuilt, but then it
still links with libc++.so.1 while in clean build without sstate and
hashequiv it will link with libstdc++.so.6 (because TC_CXX_RUNTIME
affects only clang-native and the override for class-target doesn't
work as one might expect).

This might need some bigger changes in hashequiv to have special
handlink of broken symlinks in the output, if the symlink target is
provided by some dependency, we should include the hash of the symlink
target to make sure the outhash changes even when something deeper
in dependency tree changed the target binary (or error out when there
is no direct dependency of the provider).

clang-cross from oe-core master doesn't have this issue, because it
contains the actual binary from clang-native after:
https://github.com/openembedded/openembedded-core/commit/3b0128fe6421e64674fd250e0b4e6afb1c8ce436
so the outhash is changed when this binary is changed.

Signed-off-by: Martin Jansa &lt;martin.jansa@gmail.com&gt;
</content>
</entry>
<entry>
<title>clang.bbclass: remove mcpu option with qualifiers for the octeontx2 core</title>
<updated>2024-07-04T15:29:53+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=4e0da29d9bca9ab7091abcbb59dd439c09319ca8'/>
<id>urn:sha1:4e0da29d9bca9ab7091abcbb59dd439c09319ca8</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>Revert "cmake-native.bbclass: Add ubfs specific variable to ignore list"</title>
<updated>2023-11-22T16:32:42+00:00</updated>
<author>
<name>Khem Raj</name>
<email>raj.khem@gmail.com</email>
</author>
<published>2023-11-22T16:30:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/meta-clang.git/commit/?id=8aaed8f345683c2fb03a4d90f615f1e93f545a55'/>
<id>urn:sha1:8aaed8f345683c2fb03a4d90f615f1e93f545a55</id>
<content type='text'>
The problem is in BSP layer [1], these variable should not be exported
universally moreover its not needed as well.

[1] https://github.com/varigit/meta-variscite-bsp-imx/pull/36
This reverts commit 288f752445d3783dbaf06a60919a2b35b14e3a62.
</content>
</entry>
<entry>
<title>cmake-native.bbclass: Add ubfs specific variable to ignore list</title>
<updated>2023-11-22T15:01:33+00:00</updated>
<author>
<name>Khem Raj</name>
<email>raj.khem@gmail.com</email>
</author>
<published>2023-11-22T08:10:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/meta-clang.git/commit/?id=288f752445d3783dbaf06a60919a2b35b14e3a62'/>
<id>urn:sha1:288f752445d3783dbaf06a60919a2b35b14e3a62</id>
<content type='text'>
These variables show up as dependencies of native recipes otherwise
can cause clang-native to rebuild without a reason just when defined by
a machine using ubifs.

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>
<entry>
<title>clang.bbclass: Use llvm-strip on all architectures</title>
<updated>2023-10-25T17:20:08+00:00</updated>
<author>
<name>Khem Raj</name>
<email>raj.khem@gmail.com</email>
</author>
<published>2023-10-24T22:17:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/meta-clang.git/commit/?id=9602e574447c3b34227a6c2837fb283773d0ee97'/>
<id>urn:sha1:9602e574447c3b34227a6c2837fb283773d0ee97</id>
<content type='text'>
It was just used for RISCV32/RISCV64 until now.

Signed-off-by: Khem Raj &lt;raj.khem@gmail.com&gt;
</content>
</entry>
</feed>
