[oe] what is the expected STAGING_INCDIR for cross packages?
Richard Purdie
rpurdie at rpsys.net
Mon Nov 23 18:32:13 UTC 2009
On Mon, 2009-11-23 at 18:25 +0100, Leon Woestenberg wrote:
> what is the expected STAGING_INCDIR for -cross packages?
>
>
> Our STAGING_INCDIR for -cross packages contains two concatenated absolute paths,
> one based of CROSS_DIR, one based of STAGING_DIR.
>
> Both are absolute, based against TMPDIR.
>
> Is that correct?
Cross recipes are tricky. Half the time variables refer to the "host"
and half the time they refer to the "target". This sounds like a case
where the two have combined in a rather unfortunate way.
Where is this used and what kind of problem is occurring?
> CROSS_DIR = ${TMPDIR}/cross/$BASE_PACKAGE_ARCH
> prefix = ${CROSS_DIR}
> exec_prefix = ${prefix}
> includedir = ${exec_prefix}/include
These all look correct. Cross packages are installed into "/" under
${prefix} which puts them in the correctly place
> STAGING_DIR = ${TMPDIR}/staging
> BASEPKG_HOST_SYS=${HOST_ARCH}${HOST_VENDOR}-${HOST_OS}
> STAGING_DIR_HOST=${STAGIG_DIR}/$BASEPKG_HOST_SYS}
>
> which are then concatenated for -cross packages as:
>
> STAGING_INCDIR = "${STAGING_DIR_HOST}${includedir}"
So I'd guess that cross.bbclass should be setting STAGING_DIR_HOST = "/"
like native.bbclass does and then ${includedir} will map to the correct
place.
I have to wonder what other side effects that would have of course
(although there aren't that may -cross recipes to break comparatively
speaking).
Cheers,
Richard
More information about the Openembedded-devel
mailing list