gnu-config make sure we use perl-native
cover gnu-config make sure we use perl-native
From: Saul Wold <[email protected]>
During a world build I was getting a perl version mismatch between the perl-native and the host perl. This change ensures that perl-native is used always.
Pull URL: git://git.pokylinux.org/poky-contrib.git
Branch: sgw/gnu-config
Browse: http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=sgw/gnu-config
Thanks,
Saul Wold <[email protected]>
---
Saul Wold (1):
gnu-config: Ensure that we use perl-native to avoid version
mis-matches
.../gnu-config/gnu-config_20080123.bb | 4 +--- 1 files changed, 1 insertions(+), 3 deletions(-)
PATCH 1/1 gnu-config: Ensure that we use perl-native to avoid version mis-matches
From: Saul Wold <[email protected]>
--- .../gnu-config/gnu-config_20080123.bb | 4 +--- 1 files changed, 1 insertions(+), 3 deletions(-)
meta/recipes-devtools/gnu-config/gnu-config_20080123.bb +1 -3
@@ -26,9 +26,7 @@ do_install () { sed -e 's,@gnu-configdir@,${datadir}/gnu-config,g' \ -e 's,@autom4te_perllibdir@,${datadir}/autoconf,g' > ${D}${bindir}/gnu-configize # In the native case we want the system perl as perl-native can't have built yet - if [ "${BUILD_ARCH}" != "${TARGET_ARCH}" ]; then - sed -i -e 's,/usr/bin/perl,${bindir}/perl,g' ${D}${bindir}/gnu-configize - fi + sed -i -e 's,/usr/bin/perl,${bindir}/perl,g' ${D}${bindir}/gnu-configize chmod 755 ${D}${bindir}/gnu-configize install -m 0644 config.guess config.sub ${D}${datadir}/gnu-config/ }
Signature · 1 line
1.7.1
Quoted 6 lines · Saul Wold
From: Saul Wold<[email protected]>
During a world build I was getting a perl version mismatch between the perl-native and the host perl. This change ensures that perl-native is used always.
Never mind this patch, Saul's brain is not functioning well today, I completely missed the comment!
Back to the drawing board on why the miss-match is occuring in Config.pm then.
Sau!
Quoted 16 lines
Pull URL:
git://git.pokylinux.org/poky-contrib.git
Branch: sgw/gnu-config
Browse: http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=sgw/gnu-configThanks,
Saul Wold<[email protected]>
---Saul Wold (1):
gnu-config: Ensure that we use perl-native to avoid version
mis-matches.../gnu-config/gnu-config_20080123.bb | 4 +--- 1 files changed, 1 insertions(+), 3 deletions(-)
Quoted 10 lines · Saul Wold
Quoted 6 lines · Saul Wold
From: Saul Wold<[email protected]>
During a world build I was getting a perl version mismatch between the perl-native and the host perl. This change ensures that perl-native is used always.
Never mind this patch, Saul's brain is not functioning well today, I completely missed the comment!
I discarded my reply :)
Quoted 3 lines
Back to the drawing board on why the miss-match is occuring in Config.pm then.
somewhere there is /usr/bin/perl referred may be a cross recipe ?
Quoted 22 lines
Sau!
Quoted 9 lines
Pull URL:
git://git.pokylinux.org/poky-contrib.git
Branch: sgw/gnu-config
Browse: http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=sgw/gnu-configThanks,
Saul Wold<[email protected]>
---Quoted 7 lines
Saul Wold (1):
gnu-config: Ensure that we use perl-native to avoid version
mis-matches.../gnu-config/gnu-config_20080123.bb | 4 +--- 1 files changed, 1 insertions(+), 3 deletions(-)_______________________________________________
poky mailing list
[email protected]
https://lists.yoctoproject.org/listinfo/poky
Signature · 1 line
-Khem
Quoted 4 lines · On Saturday 12 March 2011 02:31:40 Khem Raj wrote:
Quoted 2 lines
Back to the drawing board on why the miss-match is occuring in Config.pm then.
somewhere there is
/usr/bin/perlreferred may be a cross recipe ?
I've hit this issue this morning, and have filed a bug report:
http://bugzilla.pokylinux.org/show_bug.cgi?id=866
Not sure if it helps but at least it should be easy to reproduce.
Cheers,
Paul
Op 14 mrt 2011, om 12:51 heeft Paul Eggleton het volgende geschreven:
Quoted 11 lines · On Saturday 12 March 2011 02:31:40 Khem Raj wrote:
Quoted 4 lines
Quoted 2 lines
Back to the drawing board on why the miss-match is occuring in Config.pm then.
somewhere there is
/usr/bin/perlreferred may be a cross recipe ?I've hit this issue this morning, and have filed a bug report:
http://bugzilla.pokylinux.org/show_bug.cgi?id=866
Not sure if it helps but at least it should be easy to reproduce.
I haven't checked if the OE .dev and OE core gnu-config are similar, but have a look at:
http://cgit.openembedded.org/cgit.cgi/openembedded/commit/?id=be21179c5321bd0afb9221f020ac12ad75c86a3b
http://cgit.openembedded.org/cgit.cgi/openembedded/commit/?id=edcdefbf6e0675c1bcc1fc4f464f654223380e50
regards,
Koen
Quoted 10 lines · Koen Kooi
Op 14 mrt 2011, om 12:51 heeft Paul Eggleton het volgende geschreven:
Quoted 8 lines · On Saturday 12 March 2011 02:31:40 Khem Raj wrote:
Quoted 4 lines
Quoted 2 lines
Back to the drawing board on why the miss-match is occuring in Config.pm then.
somewhere there is
/usr/bin/perlreferred may be a cross recipe ?I've hit this issue this morning, and have filed a bug report:
Quoted 8 lines
Quoted 3 lines
http://bugzilla.pokylinux.org/show_bug.cgi?id=866
Not sure if it helps but at least it should be easy to reproduce.
I haven't checked if the OE .dev and OE core gnu-config are similar, but have a look at:
http://cgit.openembedded.org/cgit.cgi/openembedded/commit/?id=be21179c5321bd0afb9221f020ac12ad75c86a3b
http://cgit.openembedded.org/cgit.cgi/openembedded/commit/?id=edcdefbf6e0675c1bcc1fc4f464f654223380e50
There are a few related patches to this floating around and I know Tom did some work in OE.dev to make perl-native an early bootstrap dependency.
I've been giving this some thought and given the various goals we have, I think the long term best solution is going to be to place perl into an isolated bin directory in sysroots, then for anything using really using perl-native, add that directory to PATH. This is similar to what we now do with the bootstrap toolchains in OE-Core. This way the dependencies are deterministic and either perl is or isn't required but we don't instantly need to build perl-native or run the risk of nasty loops in the early bootstrap. Anything requiring perl-native would add the directory to PATH, probably using a tiny class file.
The above patches still would make sense of course.
Cheers,
Richard
Quoted 34 lines · Richard Purdie
Quoted 10 lines · Koen Kooi
Op 14 mrt 2011, om 12:51 heeft Paul Eggleton het volgende geschreven:
Quoted 8 lines · On Saturday 12 March 2011 02:31:40 Khem Raj wrote:
Quoted 4 lines
Quoted 2 lines
Back to the drawing board on why the miss-match is occuring in Config.pm then.
somewhere there is
/usr/bin/perlreferred may be a cross recipe ?I've hit this issue this morning, and have filed a bug report:
Quoted 8 lines
Quoted 3 lines
http://bugzilla.pokylinux.org/show_bug.cgi?id=866
Not sure if it helps but at least it should be easy to reproduce.
I haven't checked if the OE .dev and OE core gnu-config are similar, but have a look at:
http://cgit.openembedded.org/cgit.cgi/openembedded/commit/?id=be21179c5321bd0afb9221f020ac12ad75c86a3b
http://cgit.openembedded.org/cgit.cgi/openembedded/commit/?id=edcdefbf6e0675c1bcc1fc4f464f654223380e50There are a few related patches to this floating around and I know Tom did some work in OE.dev to make perl-native an early bootstrap dependency.
I've been giving this some thought and given the various goals we have, I think the long term best solution is going to be to place perl into an isolated bin directory in sysroots, then for anything using really using perl-native, add that directory to PATH. This is similar to what we now do with the bootstrap toolchains in OE-Core. This way the dependencies are deterministic and either perl is or isn't required but we don't instantly need to build perl-native or run the risk of nasty loops in the early bootstrap. Anything requiring perl-native would add the directory to PATH, probably using a tiny class file.
Quoted 1 line
The above patches still would make sense of course.
So, as background, there's a few cases of problems we have to deal with.
The ones Koen pointed out are fall-out from switching to making
perl-native be part of the early bootstrap.
I would encourage someone to look at solving this problem in another way but I ended up finding that honestly, getting perl-native to build before we did almost anything else wasn't as hard as I feared (based on a previous attempt at doing it) and unless we can get things to the point where only perl needs perl-native (which should possibly be perl-cross) you can still hit some nasty corner cases. And yes, doing this would mean changing the libperl-foo-native things into installing with host cpan into the TMPDIR which may or may not be easier said than done.
Signature · 2 lines
Tom Rini Mentor Graphics Corporation
Quoted 10 lines · Koen Kooi
Op 14 mrt 2011, om 12:51 heeft Paul Eggleton het volgende geschreven:
Quoted 8 lines · On Saturday 12 March 2011 02:31:40 Khem Raj wrote:
Quoted 4 lines
Quoted 2 lines
Back to the drawing board on why the miss-match is occuring in Config.pm then.
somewhere there is
/usr/bin/perlreferred may be a cross recipe ?I've hit this issue this morning, and have filed a bug report:
Quoted 9 lines
Quoted 3 lines
http://bugzilla.pokylinux.org/show_bug.cgi?id=866
Not sure if it helps but at least it should be easy to reproduce.
I haven't checked if the OE .dev and OE core gnu-config are similar, but have a look at:
http://cgit.openembedded.org/cgit.cgi/openembedded/commit/?id=be21179c5321bd0afb9221f020ac12ad75c86a3b
http://cgit.openembedded.org/cgit.cgi/openembedded/commit/?id=edcdefbf6e0675c1bcc1fc4f464f654223380e50
I'm going to merge these into OE.core, thanks.
Richard