Commit Graph

3 Commits

Author SHA1 Message Date
Ross Burton
ff83c5de2e clang: globally disable build-time RPATHs for reproducibility
Various bits of the LLVM project set the build RPATH in a way that means
we have non-deterministic binaries even though we should always be using
relative paths.

This clearly is not working as some of the binaries get rewritten on
install and have large string paddings that correlate with erased build
paths.

So that we don't have to disable RPATHs in every recipe, just do it once
in the common include file and remove the existing recipe-specific
assignments that are now not needed.

(From OE-Core rev: acc8c5c89c0f1bff3413d2301a65afd89bd0d9ff)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2025-10-09 10:58:07 +01:00
Ross Burton
9ece218efa clang: use EXTRA_OECMAKE +=
Don't assign EXTRA_OECMAKE so that the include files can set defaults.

(From OE-Core rev: 5ad8d6ddf7a1ada37ad1070a3d3347c7f6d57148)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2025-10-02 11:28:03 +01:00
Ross Burton
844e2ebbfc clang: split lld into a separate lld recipe
The lld linker is a standalone project under the LLVM umbrella that just
depends on libLLVM and nothing else, such as clang.

To reduce the build time of clang if lld is not being used, split it out
into a separate recipe.

To ensure that lld is present if needed, the clang-cross recipe will
depend on lld-native if ld-is-lld is enable.

(From OE-Core rev: 5212b69f892af8c9b080fee2c21533a2bbdd2755)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2025-08-04 18:04:04 +01:00