On 17-03-08 13:56:12, Martin Kelly wrote: > On 03/08/2017 01:46 PM, Khem Raj wrote: > > On 17-03-07 16:43:47, Martin Kelly wrote: > > > Hi, > > > > > > While debugging an issue with a package that uses llvm-config to compile > > > with clang, I started hitting [rpaths] QA warnings because some output > > > executables contained absolute rpaths pointing into my build directory. > > > After tracing through the issue, I determined the rpaths to eventually be > > > originating from the setting of BUILD_LDFLAGS in meta/conf/bitbake.conf. > > > The > > > rpath part of this was added in commit 35759f97 to the poky repo. > > > > thats for native packages alone. > > > > You're right, it is for native packages only. That means this issue is > really specific to clang or other toolchains with similar issues rather than > being a general issue, which is good. > > In this case, because llvm-config is built natively (as it needs to be run > on the build host), and because llvm-config populates its --ldflags argument > with the contents of BUILD_LDFLAGS, then the target build ends up inheriting > all these flags. > > > > > > > In case you're curious about the background of the issue, my project is > > > using the output of llvm-config --ldflags to set its linker flags. > > > llvm-config is populating the output --ldflags with whatever it is given > > > for > > > CXX_LINK_FLAGS. CXX_LINK_FLAGS is being populated by the generic cmake > > > logic > > > in cmake.bbclass, which is getting its flags from BUILD_LDFLAGS in > > > meta/conf/bitbake.conf. > > > > I think we shoud not need rpaths for target recipes. We should see if we > > can just remove it atleast for /lib /usr/lib > > > > I agree we should not need them. Of course I can run a sed line to remove > the rpaths from LLVM_LDFLAGS from tools/llvm-config/BuildVariables.inc (and > this works just fine). However, I think there's a deeper issue here: All the > build-time flags that llvm-config spits out (--cppflags, --cflags, > --cxxflags) probably need to be replaced with target versions of those > variables.
Its fine to sed it out, we are trying to use llvm-confing in a cross env and this seems to be less treaded path for it, it assumes you would use it for building packages natively generally. > > Do you agree with replacing all of those, or do you think we should replace > only the rpaths? yes please -- _______________________________________________ Openembedded-core mailing list [email protected] http://lists.openembedded.org/mailman/listinfo/openembedded-core
