<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/meta-clang.git/classes, branch wrynose</title>
<subtitle>Mirror of github.com/kraj/meta-clang.git</subtitle>
<id>https://git.enea.com/cgit/linux/meta-clang.git/atom?h=wrynose</id>
<link rel='self' href='https://git.enea.com/cgit/linux/meta-clang.git/atom?h=wrynose'/>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/meta-clang.git/'/>
<updated>2025-12-07T05:21:34+00:00</updated>
<entry>
<title>clang-legacy.bbclass: Remove -fuse-ld=lld from SELECTED_OPTIMIZATION when using LTO.</title>
<updated>2025-12-07T05:21:34+00:00</updated>
<author>
<name>mark.yang</name>
<email>mark.yang@lge.com</email>
</author>
<published>2025-11-07T04:40:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/meta-clang.git/commit/?id=bf7ba60c794d0f670b502678660a313792243566'/>
<id>urn:sha1:bf7ba60c794d0f670b502678660a313792243566</id>
<content type='text'>
Referring to lto.inc in openembedded-core, when using lto, the LTO variable is added to SELECTED_OPTIMIZATION.
In this case, with the clang toolchain, -fuse-ld=lld is added when using -flto,
but the -fuse-ld=lld option is sufficient as a linker flag.

If -fuse-ld=lld is present in CFLAGS, an unused-command-line-argument warning occurs.
In recipes that treat this warning as an error, the build fails.
aarch64-yoe-linux-clang: error: argument unused during compilation: '-fuse-ld=lld' [-Werror,-Wunused-command-line-argument]

See more details https://errors.yoctoproject.org/Errors/Details/886599

Signed-off-by: mark.yang &lt;mark.yang@lge.com&gt;
</content>
</entry>
<entry>
<title>clang-legacy: Add -ffat-lto-objects to LTO settings</title>
<updated>2025-12-07T05:21:34+00:00</updated>
<author>
<name>mark.yang</name>
<email>mark.yang@lge.com</email>
</author>
<published>2025-11-07T02:46:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/meta-clang.git/commit/?id=8959e1255311d10a19e13cc5967951bde3f0e343'/>
<id>urn:sha1:8959e1255311d10a19e13cc5967951bde3f0e343</id>
<content type='text'>
When enabling LTO in the clang toolchain, .o files are generated in LLVM IR bitcode format instead of ELF format.
In this case, dwarfsrcfiles fails in do_package.
See more details at: https://errors.yoctoproject.org/Errors/Details/886597
```
dwarfsrcfiles: TOPDIR/build/tmp/work/cortexa72-yoe-linux/libcxx/21.1.4/package/usr/lib/libc++experimental.a: not a valid ELF file
```

As already discussed on the mailing list https://www.mail-archive.com/yocto@lists.yoctoproject.org/msg15501.html,
setting `INHIBIT_PACKAGE_DEBUG_SPLIT = "1"` disables debug splitting.
It is not desirable to disable debug splitting just to avoid the dwarfsrcfiles error.

A simple solution, as Khem Raj suggested in the lto.inc file of openembedded-core,
is to add the `-ffat-lto-objects` flag to the LTO settings.
This keeps both IR bitcode and ELF format, preventing the error.

Signed-off-by: mark.yang &lt;mark.yang@lge.com&gt;
</content>
</entry>
<entry>
<title>Do not set YOCTO_ALTERNATE_EXE_PATH and OCTO_ALTERNATE_LIBDIR</title>
<updated>2025-08-06T16:28:18+00:00</updated>
<author>
<name>Khem Raj</name>
<email>raj.khem@gmail.com</email>
</author>
<published>2025-08-01T05:09:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/meta-clang.git/commit/?id=006349d85aeb8ac71585a9939b9a6590e788a341'/>
<id>urn:sha1:006349d85aeb8ac71585a9939b9a6590e788a341</id>
<content type='text'>
Signed-off-by: Khem Raj &lt;raj.khem@gmail.com&gt;
</content>
</entry>
<entry>
<title>clang-legacy: Remove COMPILER_RT/UNWINDLIB/LIBCPLUSPLUS</title>
<updated>2025-08-06T16:28:18+00:00</updated>
<author>
<name>Khem Raj</name>
<email>raj.khem@gmail.com</email>
</author>
<published>2025-08-01T05:07:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/meta-clang.git/commit/?id=e37110b647b4bff062b59ce4c249022ab729c200'/>
<id>urn:sha1:e37110b647b4bff062b59ce4c249022ab729c200</id>
<content type='text'>
clang runtime recipe set them rightly in core

Signed-off-by: Khem Raj &lt;raj.khem@gmail.com&gt;
</content>
</entry>
<entry>
<title>clang-legacy: Drop octeon kludge</title>
<updated>2025-08-06T16:28:18+00:00</updated>
<author>
<name>Khem Raj</name>
<email>raj.khem@gmail.com</email>
</author>
<published>2025-08-01T05:04:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/meta-clang.git/commit/?id=f512c378408742a9446b72d8d29da35dd40f02dd'/>
<id>urn:sha1:f512c378408742a9446b72d8d29da35dd40f02dd</id>
<content type='text'>
Signed-off-by: Khem Raj &lt;raj.khem@gmail.com&gt;
</content>
</entry>
<entry>
<title>clang-legacy: Remove runtime-&lt;RUNTIME&gt; override</title>
<updated>2025-08-06T16:28:18+00:00</updated>
<author>
<name>Khem Raj</name>
<email>raj.khem@gmail.com</email>
</author>
<published>2025-07-29T18:16:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/meta-clang.git/commit/?id=a13b00b3646c4f63443f51ca6f9f99931e42f271'/>
<id>urn:sha1:a13b00b3646c4f63443f51ca6f9f99931e42f271</id>
<content type='text'>
This is better fixed in recipes if needed now that
clang is a core recipe.

Signed-off-by: Khem Raj &lt;raj.khem@gmail.com&gt;
</content>
</entry>
<entry>
<title>clang-legacy: Drop CCACHE_COMPILERCHECK</title>
<updated>2025-07-30T18:15:32+00:00</updated>
<author>
<name>Khem Raj</name>
<email>raj.khem@gmail.com</email>
</author>
<published>2025-07-29T18:06:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/meta-clang.git/commit/?id=3a073612b94f8ba3636b040faca1d12fc1788599'/>
<id>urn:sha1:3a073612b94f8ba3636b040faca1d12fc1788599</id>
<content type='text'>
This is gone from OE-core so good riddance

Signed-off-by: Khem Raj &lt;raj.khem@gmail.com&gt;
</content>
</entry>
<entry>
<title>classes/clang-legacy: Remove rewrite of big.LITTLE -mcpu args</title>
<updated>2025-07-28T15:23:37+00:00</updated>
<author>
<name>Khem Raj</name>
<email>raj.khem@gmail.com</email>
</author>
<published>2025-07-23T00:19:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/meta-clang.git/commit/?id=b2933c6e6e9c1245ca1d83c7c49fa81a18dcef51'/>
<id>urn:sha1:b2933c6e6e9c1245ca1d83c7c49fa81a18dcef51</id>
<content type='text'>
These are not supported by clang, but now they are handled in core
tune files.

Signed-off-by: Khem Raj &lt;raj.khem@gmail.com&gt;
</content>
</entry>
<entry>
<title>clang-legacy.bbclass: Unbolt rpi3/rpi4 workaround</title>
<updated>2025-07-28T15:23:37+00:00</updated>
<author>
<name>Khem Raj</name>
<email>raj.khem@gmail.com</email>
</author>
<published>2025-07-20T23:33:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/meta-clang.git/commit/?id=f48f0f70e9d9db6396c244e764ab18e9483ea985'/>
<id>urn:sha1:f48f0f70e9d9db6396c244e764ab18e9483ea985</id>
<content type='text'>
This should be part of default tune infra in core

Signed-off-by: Khem Raj &lt;raj.khem@gmail.com&gt;
</content>
</entry>
<entry>
<title>clang-legacy: Remove klibc specific pins</title>
<updated>2025-07-28T15:23:37+00:00</updated>
<author>
<name>Khem Raj</name>
<email>raj.khem@gmail.com</email>
</author>
<published>2025-07-19T04:48:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/meta-clang.git/commit/?id=8912317f11ed15d48f91d3b184c155a32821a6f0'/>
<id>urn:sha1:8912317f11ed15d48f91d3b184c155a32821a6f0</id>
<content type='text'>
Its moved into klibc.bbclass in meta-initramfs

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