Fixup usage of create_wrapper
cover Fixup usage of create_wrapper
Richard,
I found these following the buildtools-tarball change, also a couple of other changes, one to clean up the suprious warning, and other a DEPENDS fix.
Sau!
Saul Wold (5):
sanity: remove warn debug message
createrepo: Fix usage of create_wrapper
dpkg: Fix usage of create_wrapper
gnome-doc-utils: Fix usage of create_wrapper
librsvg: configure needs a native gdk-pixbuf binary
meta/classes/sanity.bbclass | 1 - meta/recipes-devtools/dpkg/dpkg.inc | 2 +- meta/recipes-gnome/gnome/gnome-doc-utils.inc | 2 +- meta/recipes-gnome/librsvg/librsvg_2.32.1.bb | 1 + meta/recipes-support/createrepo/createrepo_0.4.11.bb | 2 +- 5 files changed, 4 insertions(+), 4 deletions(-)
Signature · 1 line
1.8.1.4
PATCH 1/5 sanity: remove warn debug message
--- meta/classes/sanity.bbclass | 1 - 1 file changed, 1 deletion(-)
meta/classes/sanity.bbclass +0 -1
@@ -353,7 +353,6 @@ def check_git_version(sanity_data, loosever): if status != 0: return "Unable to execute git --version, exit code %s\n" % status version = result.split()[2] - bb.warn(version) if loosever(version) < loosever("1.7.5"): return "Your version of git is older than 1.7.5 and has bugs which will break builds. Please install a newer version of git.\n" return None
Signature · 1 line
1.8.1.4
PATCH 2/5 createrepo: Fix usage of create_wrapper
In reply to Saul Woldcreate_wrapper changed recently and behaves differently now. It does not directly exec the , but exports them, so the first parameter needs to be an environemnt variable like a PATH, not a executable.
--- meta/recipes-support/createrepo/createrepo_0.4.11.bb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
meta/recipes-support/createrepo/createrepo_0.4.11.bb +1 -1
@@ -35,7 +35,7 @@ do_install_append_class-native () { for i in ${D}${datadir}/createrepo/genpkgmetadata.py \ ${D}${datadir}/createrepo/modifyrepo.py \ ${D}${bindir}/rpm-createsolvedb.py ; do - create_wrapper $i ${STAGING_BINDIR_NATIVE}/python-native/python + create_wrapper $i PATH=${STAGING_BINDIR_NATIVE}/python-native:\$PATH done create_wrapper ${D}/${bindir}/createrepo \
Signature · 1 line
1.8.1.4
PATCH 3/5 dpkg: Fix usage of create_wrapper
In reply to Saul Woldcreate_wrapper changed recently and behaves differently now. It does not directly exec the , but exports them, so the first parameter needs to be an environemnt variable like a PATH, not a executable.
--- meta/recipes-devtools/dpkg/dpkg.inc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
meta/recipes-devtools/dpkg/dpkg.inc +1 -1
@@ -56,7 +56,7 @@ do_install_append () { do_install_append_class-native () { tmp=`find ${D}${bindir} -type f -exec grep -m 1 -l '#!/.*/perl-native/perl' {} \;` for i in $tmp; do - create_wrapper $i ${STAGING_BINDIR_NATIVE}/perl-native/perl + create_wrapper $i PATH=${STAGING_BINDIR_NATIVE}/perl-native:\$PATH done }
Signature · 1 line
1.8.1.4
Burton, Ross
NAKRe: [PATCH 3/5] dpkg: Fix usage of create_wrapper
Quoted 14 lines · Saul Wold
create_wrapperchanged recently and behaves differently now. It does not directly exec the , but exports them, so the first parameter needs to be an environemnt variable like a PATH, not a executable.Signed-off-by Saul Wold <[email protected]>--- meta/recipes-devtools/dpkg/dpkg.inc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)meta/recipes-devtools/dpkg/dpkg.inc +0
-0
meta/recipes-devtools/dpkg/dpkg.inc do_install_append () { · line 59
Quoted 5 lines
meta/recipes-devtools/dpkg/dpkg.inc +1
-1@@ -56,7 +56,7 @@ do_install_append () { do_install_append_class-native () { tmp=`find ${D}${bindir} -type f -exec grep -m 1 -l '#!/.*/perl-native/perl' {} \;` for i in $tmp; do - create_wrapper $i ${STAGING_BINDIR_NATIVE}/perl-native/perl + create_wrapper $i PATH=${STAGING_BINDIR_NATIVE}/perl-native:\$PATH
NACK.
The message isn't entirely accurate - the changes to the wrapper scripts were consistent with the documentation of the function which clearly says the arguments are NAME=VALUE pairs, but recipes such as this were using "insider" knowledge that the wrapper was implemented with "env" to effectively inject perl-native so that is the binary executed, not the real script itself. This avoids the stupidly small buffer in binfmt_script that parses the #! lines (128 bytes), which is what the comment above this block refers to.
Setting the path won't perform this workaround, so this patch (and similar) re-introduces the problem with deeply nested work directories.
I guess the real question is why do we wrap scripts one by one instead of doing some wrapping centrally when writing to the native sysroot itself? At the moment we're playing whack-a-mole where sufficient scripts have been wrapped that a specific build appears to work.
Ross
PATCH 4/5 gnome-doc-utils: Fix usage of create_wrapper
In reply to Saul Woldcreate_wrapper changed recently and behaves differently now. It does not directly exec the , but exports them, so the first parameter needs to be an environemnt variable like a PATH, not a executable.
--- meta/recipes-gnome/gnome/gnome-doc-utils.inc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
meta/recipes-gnome/gnome/gnome-doc-utils.inc +1 -1
@@ -20,7 +20,7 @@ do_install_append() { } do_install_append_class-native () { - create_wrapper ${D}${bindir}/xml2po ${STAGING_BINDIR_NATIVE}/python-native/python + create_wrapper ${D}${bindir}/xml2po PATH=${STAGING_BINDIR_NATIVE}/python-native:\$PATH } FILES_${PN} += "${datadir}/xml* ${PYTHON_SITEPACKAGES_DIR}/*"
Signature · 1 line
1.8.1.4
PATCH 5/5 librsvg: configure needs a native gdk-pixbuf binary
In reply to Saul WoldBuild failure was seen on the autobuilder, so add gdk-pixbuf-native to depends list
--- meta/recipes-gnome/librsvg/librsvg_2.32.1.bb | 1 + 1 file changed, 1 insertion(+)
meta/recipes-gnome/librsvg/librsvg_2.32.1.bb +1 -0
@@ -8,6 +8,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \ SECTION = "x11/utils" DEPENDS = "cairo glib-2.0 gdk-pixbuf fontconfig freetype libxml2 pango" +DEPENDS += "gdk-pixbuf-native" BBCLASSEXTEND = "native" PR = "r12"
Signature · 1 line
1.8.1.4