[oe] [meta-initramfs][PATCH] klcc_cross: move in target sysroot as crosscript
Richard Purdie
richard.purdie at linuxfoundation.org
Fri May 2 08:21:13 UTC 2014
On Fri, 2014-05-02 at 01:13 +0200, Andrea Adami wrote:
> Klcc-cross is properly a crosscript so avoid to
> inherit cross.bbclass and stage it in target sysroot
> under usr/bin/crossscripts.
> Minor adjustment is necessary for INSTALLDIR.
>
> Finally some optional magic mangling is added to better match the perl syntax:
> let it commented for future reference.
Why is this commented? Its not optional and the recipe will not work
properly without that change.
Cheers,
Richard
> Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>
> Signed-off-by: Andrea Adami <andrea.adami at gmail.com>
> ---
> .../recipes-devtools/klibc/klcc-cross_2.0.3.bb | 40 +++++++++++++---------
> 1 file changed, 23 insertions(+), 17 deletions(-)
>
> diff --git a/meta-initramfs/recipes-devtools/klibc/klcc-cross_2.0.3.bb b/meta-initramfs/recipes-devtools/klibc/klcc-cross_2.0.3.bb
> index 7ff9c2e..5e767c1 100644
> --- a/meta-initramfs/recipes-devtools/klibc/klcc-cross_2.0.3.bb
> +++ b/meta-initramfs/recipes-devtools/klibc/klcc-cross_2.0.3.bb
> @@ -7,28 +7,34 @@ FILESPATH =. "${FILE_DIRNAME}/klibc-${PV}:"
>
> SRC_URI += "file://use-env-for-perl.patch"
>
> -inherit cross
> -
> # disable task already run in klibc recipe
> do_configure[noexec] = "1"
> +
> do_compile() {
> - oe_runmake 'INSTALLDIR=${STAGING_DIR_TARGET}${target_libdir}/klibc' klcc
> + oe_runmake 'INSTALLDIR=${STAGING_DIR_TARGET}${libdir}/klibc' klcc
> }
> -# The linux-libc-headers and klibc custom headers are not machine-specific
> -# but are installed into machine sysroot.
> -# Klcc wrapper is hardcoding some of these paths thus, to keep the recipe
> -# arch-specific, we force the rebuild of klcc-cross for each machine.
> -do_compile[vardeps] += "MACHINE"
> +
> do_install() {
> - install -d ${D}${bindir}
> - install -m 0755 klcc/klcc ${D}${bindir}/${TARGET_PREFIX}klcc
> + install -d ${D}${bindir_crossscripts}/
> + install -m 0755 klcc/klcc ${D}${bindir_crossscripts}/${TARGET_PREFIX}klcc
> + # Insert an unencoded path as a comment to trigger the sstate renaming functions
> + sed -i '2i #${STAGING_DIR_TARGET}' ${D}${bindir_crossscripts}/${TARGET_PREFIX}klcc
> +}
> +
> +SYSROOT_PREPROCESS_FUNCS += "klcc_sysroot_preprocess"
> +
> +klcc_sysroot_preprocess () {
> + sysroot_stage_dir ${D}${bindir_crossscripts} ${SYSROOT_DESTDIR}${bindir_crossscripts}
> }
>
> +deltask do_package
> +deltask do_packagedata
> +deltask do_package_write_ipk
> +deltask do_package_write_rpm
> +deltask do_package_write_deb
> +deltask do_package_write_tar
>
> -# disable unneeded tasks
> -do_package[noexec] = "1"
> -do_packagedata[noexec] = "1"
> -do_package_write_ipk[noexec] = "1"
> -do_package_write_rpm[noexec] = "1"
> -do_package_write_deb[noexec] = "1"
> -do_package_write_tar[noexec] = "1"
> +SSTATE_SCAN_FILES = "*"
> +#EXTRA_STAGING_FIXMES = "MANGLEDSTAGINGDIRTARGET MANGLEDSTAGINGDIR"
> +#MANGLEDSTAGINGDIR = "${@d.getVar("STAGING_DIR", True).replace("/", "\\\\/").replace("-", "\\-")}"
> +#MANGLEDSTAGINGDIRTARGET = "${@d.getVar("STAGING_DIR_TARGET", True).replace("/", "\\\\/").replace("-", "\\-")}"
More information about the Openembedded-devel
mailing list