Bug 14100

Summary: SDKPATH should not reference SDK_VERSION
Product: [Build System, Metadata & Runtime] OE-Core Reporter: Yann Dirson <ydirson>
Component: oe-core otherAssignee: Richard Purdie <richard.purdie>
Status: RESOLVED FIXED QA Contact:
Severity: normal    
Priority: Medium+ CC: randy.macleod, richard.purdie
Version: unspecified   
Target Milestone: 3.4 M3   
Hardware: x86   
OS: Multiple   
Whiteboard:
OS type for building Yocto: --- Type of Regression: ---
Verified: Documentation change: No (bug/feature does not impact docs)

Description Yann Dirson 2020-10-20 07:16:09 UTC
crosssdk.bbclass sets eg. this:

target_libdir = "${SDKPATHNATIVE}${libdir_nativesdk}"

This causes all crosssdk recipes (starting with binutils-crosssdk) to see their hash change on any DISTRO_VERSION change (be it as minor as a bugfix dot-release).

OTOH, hardcoding this version in packages targetting the SDK does not seem to make sense, as the SDK itself is fully relocatable.

It sounds like we only need the current SDKPATH value as a default path for the sdk relocation step.

At first glance it even looks like the ${DISTRO} part of SDKPATH can also be removed too, as it looks like the only typical reference to it is in conf/distro/ itself, and could help to share sstate between poky and downstream distros.
Comment 1 Richard Purdie 2020-10-22 08:01:36 UTC
I think this is a valid concern. The SDK is relocatable now so we could use a "bland" path and then just use the default install path for the SDK to possibly contain distro and version?