[oe] [PATCH] xfconfig: use sysroot and target perl

Ash Charles ashcharles at gmail.com
Sun Dec 8 09:54:47 UTC 2013


Hi,

Thanks Ulf.

I just tried this on my dora branch instead of my disable-perl
bbappend and it worked for me.

Tested-by: Ash Charles <ashcharles at gmail.com>

--Ash

On Sat, Dec 7, 2013 at 11:29 PM, Ulf Samuelsson <ulf at emagii.com> wrote:
> xfconf-4.10.0 does not use OE sysroot as is.
> --with-sysroot=yes
> will make configure run CC --print-sysroot
> and use that.
>
> When searching the PATH for perl, no target perl is found,
> since PATH does not contain any reference.
> Instead native perl is found, and if certain perl packages
> are installed on the host machine, the xfconf perl support
> is enabled which may cause the build to fail on 64 bit hosts.
> If the perl packages are not installed on the host, then
> perl support in xfconf is disabled, and the xfconf build
> will succeed, even on 64 bit hosts.
>
> If native perl is found, and the perl packages are available
> on the host, the perl support is enabled.
>
> Since native perl is used, the native linker is used to link the
> resulting *target* code.
>
> The perl support requires some libraries, which are built for the target.
> If the host is 64 bit (x86_64) and the target is 32 bit (ARM?),
> there is a mismatch which is detected by the linker,
> and the libraries found are rejected.
>
> If the host does not have the correct libraries,
> then the xfconf build fails.
> If the host has the correct libraries, then the linker will try
> to link host libraries with the target application.
>
> The patch will define PERL as the target perl.
> This means that configure will look for the required perl
> packages in the target sysroot, instead of in the native filesystem.
>
> The patch has been tested in Angstrom master, which does not
> build the required perl packages, and thus perl support
> in xfconf is disabled, and the build succeeds.
>
> A simpler way to do this, proposed by Charles Ash <ashcharles at gmail.com>
> is to simply disable the perl-support in xfconf.
> This patch will be better, if ever the support for the needed
> perl packages is added to the OpenEmbedded/Angstrom build.
>
>
> Signed-off-by: Ulf Samuelsson <ulf at emagii.com>
> ---
>  meta-xfce/recipes-xfce/xfconf/xfconf_4.10.0.bb |    6 +++++-
>  1 file changed, 5 insertions(+), 1 deletion(-)
>
> diff --git a/meta-xfce/recipes-xfce/xfconf/xfconf_4.10.0.bb b/meta-xfce/recipes-xfce/xfconf/xfconf_4.10.0.bb
> index 4ea2b88..6d5bf57 100644
> --- a/meta-xfce/recipes-xfce/xfconf/xfconf_4.10.0.bb
> +++ b/meta-xfce/recipes-xfce/xfconf/xfconf_4.10.0.bb
> @@ -2,10 +2,14 @@ DESCRIPTION = "Xfce configuration daemon and utilities"
>  SECTION = "x11/wm"
>  LICENSE = "GPLv2"
>  LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
> -DEPENDS = "dbus-glib libxfce4util perl-native"
> +DEPENDS = "dbus-glib libxfce4util perl"
> +PR="r1"
>
>  inherit xfce
>
> +EXTRA_OECONF += "PERL=${STAGING_DIR_TARGET}/usr/bin/perl"
> +EXTRA_OECONF += "--with-sysroot=yes"
> +
>  SRC_URI += "file://0001-Simplify-checks.patch"
>  SRC_URI[md5sum] = "4ed48150a03fb5f42b455494307b7f28"
>  SRC_URI[sha256sum] = "175219a441cc7d0f210bbd1a3b0abba41598627cd9db27235811400c3e100576"
> --
> 1.7.9.5
>
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel at lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-devel



More information about the Openembedded-devel mailing list