[v2] libxml-parser-perl_2.41.bb: fix MakeMaker issues with using wrong CC/LD/etc

Submitted by Matthew McClintock on July 5, 2012, 7:18 p.m. | Patch ID: 31293


Message ID 1341515915-28529-1-git-send-email-msm@freescale.com
State Accepted
Commit 2c3629a698e537c69c71039bc6172b3c0e617ff1
Headers show

Commit Message

Matthew McClintock July 5, 2012, 7:18 p.m.
MakeMaker has a bug where it does not propagate CC/LD/etc information
down to subproject it generates Makefiles for... this recipe has has an
Expat subproject which has issues building if we are using sstate-cache
and it will reference the old sysroots and be unable to build properly.
There is an upstream MakeMaker bug for this issue but we can work around
it by fixing up the Makefiles for now


Signed-off-by: Matthew McClintock <msm@freescale.com>
v2: -add '-i' to second sed argument that was missed
    -change sed delimeter to : instead of / to avoid escaping
     the bash variables

 meta/recipes-devtools/perl/libxml-parser-perl_2.41.bb |   11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)

Patch hide | download patch | download mbox

diff --git a/meta/recipes-devtools/perl/libxml-parser-perl_2.41.bb b/meta/recipes-devtools/perl/libxml-parser-perl_2.41.bb
index be41578..33b4d83 100644
--- a/meta/recipes-devtools/perl/libxml-parser-perl_2.41.bb
+++ b/meta/recipes-devtools/perl/libxml-parser-perl_2.41.bb
@@ -5,7 +5,7 @@  LIC_FILES_CHKSUM = "file://README;beginline=2;endline=6;md5=c8767d7516229f07b26e
 DEPENDS += "expat expat-native"
-PR = "r2"
+PR = "r3"
 SRC_URI = "http://www.cpan.org/modules/by-module/XML/XML-Parser-${PV}.tar.gz"
 SRC_URI[md5sum] = "c320d2ffa459e6cdc6f9f59c1185855e"
@@ -13,10 +13,17 @@  SRC_URI[sha256sum] = "b48197cd2265a26c5f016489f11a7b450d8833cb8b3d6a46ee15975740
 S = "${WORKDIR}/XML-Parser-${PV}"
 inherit cpan
+# fix up sub MakeMaker project as arguments don't get propagated though
+# see https://rt.cpan.org/Public/Bug/Display.html?id=28632
+do_configure_append() {
+	sed 's:--sysroot=.*\(\s\|$\):--sysroot=${STAGING_DIR_TARGET} :g' -i Makefile Expat/Makefile
+	sed 's:^FULL_AR = .*:FULL_AR = ${AR}:g' -i Expat/Makefile
 do_compile() {
 	export LIBC="$(find ${STAGING_DIR_TARGET}/${base_libdir}/ -name 'libc-*.so')"