Message ID | 1397725659-9004-1-git-send-email-koen.kooi@linaro.org |
---|---|
State | New |
Headers | show |
On 04/17/2014 02:07 AM, Koen Kooi wrote: > Git.pm wasn't ending up in the package because do_install removed it > with a misleading comment about multilib. Fix the problem at the source > so that Git.pm ends up in the correct dir *and* doesn't get deleted. > > The perl.mak file gets updated during the regular do_install, so add an > extra make install step to install the *.pm files to the correct > directory. > > This is the first step in making git-perltools actually work. > > Signed-off-by: Koen Kooi <koen.kooi@linaro.org> > --- > meta/recipes-devtools/git/git.inc | 9 ++++++++- > 1 file changed, 8 insertions(+), 1 deletion(-) > > diff --git a/meta/recipes-devtools/git/git.inc b/meta/recipes-devtools/git/git.inc > index f5013f1..888b2a5 100644 > --- a/meta/recipes-devtools/git/git.inc > +++ b/meta/recipes-devtools/git/git.inc > @@ -28,10 +28,16 @@ do_install () { > template_dir=${datadir}/git-core/templates \ > GIT_PYTHON_DIR=${D}${datadir}/git-core/python > > + sed -i -e 's#${STAGING_BINDIR_NATIVE}/perl-native/#${bindir}/#' \ > + -e 's#${STAGING_LIBDIR_NATIVE}/#${libdir}/#' \ > + -e 's#/lib/perl-native#/lib#g' \ > + ${S}/perl/perl.mak > + > + cd ${S}/perl && oe_runmake install DESTDIR="${D}" bindir=${bindir} > + Koen, This still seems to have a problem, and yes I have all 3 patches > | NOTE: make -j 16 NO_PYTHON=1 RUNTIME_PREFIX=1 NO_GETTEXT=1 install DESTDIR=/srv/hdd/builds/world/tmp/work/ppc7400-poky-linux/git/1.9.0-r0/image bindir=/usr/bin > | make[1]: Entering directory `/srv/hdd/builds/world/tmp/work/ppc7400-poky-linux/git/1.9.0-r0/git-1.9.0/perl' > | make[1]: *** No rule to make target `/usr/lib/perl/5.14.3/Config.pm', needed by `perl.mak'. Stop. > | make[1]: Leaving directory `/srv/hdd/builds/world/tmp/work/ppc7400-poky-linux/git/1.9.0-r0/git-1.9.0/perl' > | make: *** [install] Error 2 > | ERROR: oe_runmake failed Sau! > # ${libdir} is not applicable here, perl-native files are always > # installed to /usr/lib on both 32/64 bits targets. > rm -rf ${D}${exec_prefix}/lib/perl-native > - rmdir ${D}${exec_prefix}/lib || true > } > > PERLSEDFIXUP = " \ > @@ -75,6 +81,7 @@ PERLTOOLS = " \ > PACKAGES =+ "${PN}-perltools" > FILES_${PN}-perltools += " \ > ${PERLTOOLS} \ > + ${prefix}/lib/perl \ > ${datadir}/perl \ > " > RDEPENDS_${PN}-perltools = "${PN} perl perl-module-file-path findutils" >
Op 18 apr. 2014, om 22:25 heeft Saul Wold <sgw@linux.intel.com> het volgende geschreven: > On 04/17/2014 02:07 AM, Koen Kooi wrote: >> Git.pm wasn't ending up in the package because do_install removed it >> with a misleading comment about multilib. Fix the problem at the source >> so that Git.pm ends up in the correct dir *and* doesn't get deleted. >> >> The perl.mak file gets updated during the regular do_install, so add an >> extra make install step to install the *.pm files to the correct >> directory. >> >> This is the first step in making git-perltools actually work. >> >> Signed-off-by: Koen Kooi <koen.kooi@linaro.org> >> --- >> meta/recipes-devtools/git/git.inc | 9 ++++++++- >> 1 file changed, 8 insertions(+), 1 deletion(-) >> >> diff --git a/meta/recipes-devtools/git/git.inc b/meta/recipes-devtools/git/git.inc >> index f5013f1..888b2a5 100644 >> --- a/meta/recipes-devtools/git/git.inc >> +++ b/meta/recipes-devtools/git/git.inc >> @@ -28,10 +28,16 @@ do_install () { >> template_dir=${datadir}/git-core/templates \ >> GIT_PYTHON_DIR=${D}${datadir}/git-core/python >> >> + sed -i -e 's#${STAGING_BINDIR_NATIVE}/perl-native/#${bindir}/#' \ >> + -e 's#${STAGING_LIBDIR_NATIVE}/#${libdir}/#' \ >> + -e 's#/lib/perl-native#/lib#g' \ >> + ${S}/perl/perl.mak >> + >> + cd ${S}/perl && oe_runmake install DESTDIR="${D}" bindir=${bindir} >> + > > Koen, > > This still seems to have a problem, and yes I have all 3 patches > >> | NOTE: make -j 16 NO_PYTHON=1 RUNTIME_PREFIX=1 NO_GETTEXT=1 install DESTDIR=/srv/hdd/builds/world/tmp/work/ppc7400-poky-linux/git/1.9.0-r0/image bindir=/usr/bin >> | make[1]: Entering directory `/srv/hdd/builds/world/tmp/work/ppc7400-poky-linux/git/1.9.0-r0/git-1.9.0/perl' >> | make[1]: *** No rule to make target `/usr/lib/perl/5.14.3/Config.pm', needed by `perl.mak'. Stop. >> | make[1]: Leaving directory `/srv/hdd/builds/world/tmp/work/ppc7400-poky-linux/git/1.9.0-r0/git-1.9.0/perl' >> | make: *** [install] Error 2 >> | ERROR: oe_runmake failed I've seen that pop up as well, but I couldn't reproduce that with 'bitbake -c clean git ; bitbake git'. I only tested with -j4, I'll retest with -j16. Are you seeing this on all builds or only some of them? regards, Koen > > > Sau! > > > >> # ${libdir} is not applicable here, perl-native files are always >> # installed to /usr/lib on both 32/64 bits targets. >> rm -rf ${D}${exec_prefix}/lib/perl-native >> - rmdir ${D}${exec_prefix}/lib || true >> } >> >> PERLSEDFIXUP = " \ >> @@ -75,6 +81,7 @@ PERLTOOLS = " \ >> PACKAGES =+ "${PN}-perltools" >> FILES_${PN}-perltools += " \ >> ${PERLTOOLS} \ >> + ${prefix}/lib/perl \ >> ${datadir}/perl \ >> " >> RDEPENDS_${PN}-perltools = "${PN} perl perl-module-file-path findutils" >> > -- > _______________________________________________ > Openembedded-core mailing list > Openembedded-core@lists.openembedded.org > http://lists.openembedded.org/mailman/listinfo/openembedded-core
On 04/19/2014 12:24 AM, Koen Kooi wrote: > > Op 18 apr. 2014, om 22:25 heeft Saul Wold <sgw@linux.intel.com> het volgende geschreven: > >> On 04/17/2014 02:07 AM, Koen Kooi wrote: >>> Git.pm wasn't ending up in the package because do_install removed it >>> with a misleading comment about multilib. Fix the problem at the source >>> so that Git.pm ends up in the correct dir *and* doesn't get deleted. >>> >>> The perl.mak file gets updated during the regular do_install, so add an >>> extra make install step to install the *.pm files to the correct >>> directory. >>> >>> This is the first step in making git-perltools actually work. >>> >>> Signed-off-by: Koen Kooi <koen.kooi@linaro.org> >>> --- >>> meta/recipes-devtools/git/git.inc | 9 ++++++++- >>> 1 file changed, 8 insertions(+), 1 deletion(-) >>> >>> diff --git a/meta/recipes-devtools/git/git.inc b/meta/recipes-devtools/git/git.inc >>> index f5013f1..888b2a5 100644 >>> --- a/meta/recipes-devtools/git/git.inc >>> +++ b/meta/recipes-devtools/git/git.inc >>> @@ -28,10 +28,16 @@ do_install () { >>> template_dir=${datadir}/git-core/templates \ >>> GIT_PYTHON_DIR=${D}${datadir}/git-core/python >>> >>> + sed -i -e 's#${STAGING_BINDIR_NATIVE}/perl-native/#${bindir}/#' \ >>> + -e 's#${STAGING_LIBDIR_NATIVE}/#${libdir}/#' \ >>> + -e 's#/lib/perl-native#/lib#g' \ >>> + ${S}/perl/perl.mak >>> + >>> + cd ${S}/perl && oe_runmake install DESTDIR="${D}" bindir=${bindir} >>> + >> >> Koen, >> >> This still seems to have a problem, and yes I have all 3 patches >> >>> | NOTE: make -j 16 NO_PYTHON=1 RUNTIME_PREFIX=1 NO_GETTEXT=1 install DESTDIR=/srv/hdd/builds/world/tmp/work/ppc7400-poky-linux/git/1.9.0-r0/image bindir=/usr/bin >>> | make[1]: Entering directory `/srv/hdd/builds/world/tmp/work/ppc7400-poky-linux/git/1.9.0-r0/git-1.9.0/perl' >>> | make[1]: *** No rule to make target `/usr/lib/perl/5.14.3/Config.pm', needed by `perl.mak'. Stop. >>> | make[1]: Leaving directory `/srv/hdd/builds/world/tmp/work/ppc7400-poky-linux/git/1.9.0-r0/git-1.9.0/perl' >>> | make: *** [install] Error 2 >>> | ERROR: oe_runmake failed > > I've seen that pop up as well, but I couldn't reproduce that with 'bitbake -c clean git ; bitbake git'. I only tested with -j4, I'll retest with -j16. Are you seeing this on all builds or only some of them? > I can reproduce this on my local build server at -j 16 everytime. Sau! > regards, > > Koen > > > >> >> >> Sau! >> >> >> >>> # ${libdir} is not applicable here, perl-native files are always >>> # installed to /usr/lib on both 32/64 bits targets. >>> rm -rf ${D}${exec_prefix}/lib/perl-native >>> - rmdir ${D}${exec_prefix}/lib || true >>> } >>> >>> PERLSEDFIXUP = " \ >>> @@ -75,6 +81,7 @@ PERLTOOLS = " \ >>> PACKAGES =+ "${PN}-perltools" >>> FILES_${PN}-perltools += " \ >>> ${PERLTOOLS} \ >>> + ${prefix}/lib/perl \ >>> ${datadir}/perl \ >>> " >>> RDEPENDS_${PN}-perltools = "${PN} perl perl-module-file-path findutils" >>> >> -- >> _______________________________________________ >> Openembedded-core mailing list >> Openembedded-core@lists.openembedded.org >> http://lists.openembedded.org/mailman/listinfo/openembedded-core > > >
Op 19 apr. 2014, om 17:47 heeft Saul Wold <sgw@linux.intel.com> het volgende geschreven: > On 04/19/2014 12:24 AM, Koen Kooi wrote: >> >> Op 18 apr. 2014, om 22:25 heeft Saul Wold <sgw@linux.intel.com> het volgende geschreven: >> >>> On 04/17/2014 02:07 AM, Koen Kooi wrote: >>>> Git.pm wasn't ending up in the package because do_install removed it >>>> with a misleading comment about multilib. Fix the problem at the source >>>> so that Git.pm ends up in the correct dir *and* doesn't get deleted. >>>> >>>> The perl.mak file gets updated during the regular do_install, so add an >>>> extra make install step to install the *.pm files to the correct >>>> directory. >>>> >>>> This is the first step in making git-perltools actually work. >>>> >>>> Signed-off-by: Koen Kooi <koen.kooi@linaro.org> >>>> --- >>>> meta/recipes-devtools/git/git.inc | 9 ++++++++- >>>> 1 file changed, 8 insertions(+), 1 deletion(-) >>>> >>>> diff --git a/meta/recipes-devtools/git/git.inc b/meta/recipes-devtools/git/git.inc >>>> index f5013f1..888b2a5 100644 >>>> --- a/meta/recipes-devtools/git/git.inc >>>> +++ b/meta/recipes-devtools/git/git.inc >>>> @@ -28,10 +28,16 @@ do_install () { >>>> template_dir=${datadir}/git-core/templates \ >>>> GIT_PYTHON_DIR=${D}${datadir}/git-core/python >>>> >>>> + sed -i -e 's#${STAGING_BINDIR_NATIVE}/perl-native/#${bindir}/#' \ >>>> + -e 's#${STAGING_LIBDIR_NATIVE}/#${libdir}/#' \ >>>> + -e 's#/lib/perl-native#/lib#g' \ >>>> + ${S}/perl/perl.mak >>>> + >>>> + cd ${S}/perl && oe_runmake install DESTDIR="${D}" bindir=${bindir} >>>> + >>> >>> Koen, >>> >>> This still seems to have a problem, and yes I have all 3 patches >>> >>>> | NOTE: make -j 16 NO_PYTHON=1 RUNTIME_PREFIX=1 NO_GETTEXT=1 install DESTDIR=/srv/hdd/builds/world/tmp/work/ppc7400-poky-linux/git/1.9.0-r0/image bindir=/usr/bin >>>> | make[1]: Entering directory `/srv/hdd/builds/world/tmp/work/ppc7400-poky-linux/git/1.9.0-r0/git-1.9.0/perl' >>>> | make[1]: *** No rule to make target `/usr/lib/perl/5.14.3/Config.pm', needed by `perl.mak'. Stop. >>>> | make[1]: Leaving directory `/srv/hdd/builds/world/tmp/work/ppc7400-poky-linux/git/1.9.0-r0/git-1.9.0/perl' >>>> | make: *** [install] Error 2 >>>> | ERROR: oe_runmake failed >> >> I've seen that pop up as well, but I couldn't reproduce that with 'bitbake -c clean git ; bitbake git'. I only tested with -j4, I'll retest with -j16. Are you seeing this on all builds or only some of them? >> > > I can reproduce this on my local build server at -j 16 everytime. -j16 instead of -j4 triggers an selinux error on my laptop, so this patch needs rethinking. I'll have a look at this when I get back to work on tuesday. regards, Koen > > Sau! > >> regards, >> >> Koen >> >> >> >>> >>> >>> Sau! >>> >>> >>> >>>> # ${libdir} is not applicable here, perl-native files are always >>>> # installed to /usr/lib on both 32/64 bits targets. >>>> rm -rf ${D}${exec_prefix}/lib/perl-native >>>> - rmdir ${D}${exec_prefix}/lib || true >>>> } >>>> >>>> PERLSEDFIXUP = " \ >>>> @@ -75,6 +81,7 @@ PERLTOOLS = " \ >>>> PACKAGES =+ "${PN}-perltools" >>>> FILES_${PN}-perltools += " \ >>>> ${PERLTOOLS} \ >>>> + ${prefix}/lib/perl \ >>>> ${datadir}/perl \ >>>> " >>>> RDEPENDS_${PN}-perltools = "${PN} perl perl-module-file-path findutils" >>>> >>> -- >>> _______________________________________________ >>> Openembedded-core mailing list >>> Openembedded-core@lists.openembedded.org >>> http://lists.openembedded.org/mailman/listinfo/openembedded-core
Op 20 apr. 2014, om 10:02 heeft Koen Kooi <koen@dominion.thruhere.net> het volgende geschreven: > > Op 19 apr. 2014, om 17:47 heeft Saul Wold <sgw@linux.intel.com> het volgende geschreven: > >> On 04/19/2014 12:24 AM, Koen Kooi wrote: >>> >>> Op 18 apr. 2014, om 22:25 heeft Saul Wold <sgw@linux.intel.com> het volgende geschreven: >>> >>>> On 04/17/2014 02:07 AM, Koen Kooi wrote: >>>>> Git.pm wasn't ending up in the package because do_install removed it >>>>> with a misleading comment about multilib. Fix the problem at the source >>>>> so that Git.pm ends up in the correct dir *and* doesn't get deleted. >>>>> >>>>> The perl.mak file gets updated during the regular do_install, so add an >>>>> extra make install step to install the *.pm files to the correct >>>>> directory. >>>>> >>>>> This is the first step in making git-perltools actually work. >>>>> >>>>> Signed-off-by: Koen Kooi <koen.kooi@linaro.org> >>>>> --- >>>>> meta/recipes-devtools/git/git.inc | 9 ++++++++- >>>>> 1 file changed, 8 insertions(+), 1 deletion(-) >>>>> >>>>> diff --git a/meta/recipes-devtools/git/git.inc b/meta/recipes-devtools/git/git.inc >>>>> index f5013f1..888b2a5 100644 >>>>> --- a/meta/recipes-devtools/git/git.inc >>>>> +++ b/meta/recipes-devtools/git/git.inc >>>>> @@ -28,10 +28,16 @@ do_install () { >>>>> template_dir=${datadir}/git-core/templates \ >>>>> GIT_PYTHON_DIR=${D}${datadir}/git-core/python >>>>> >>>>> + sed -i -e 's#${STAGING_BINDIR_NATIVE}/perl-native/#${bindir}/#' \ >>>>> + -e 's#${STAGING_LIBDIR_NATIVE}/#${libdir}/#' \ >>>>> + -e 's#/lib/perl-native#/lib#g' \ >>>>> + ${S}/perl/perl.mak >>>>> + >>>>> + cd ${S}/perl && oe_runmake install DESTDIR="${D}" bindir=${bindir} >>>>> + >>>> >>>> Koen, >>>> >>>> This still seems to have a problem, and yes I have all 3 patches >>>> >>>>> | NOTE: make -j 16 NO_PYTHON=1 RUNTIME_PREFIX=1 NO_GETTEXT=1 install DESTDIR=/srv/hdd/builds/world/tmp/work/ppc7400-poky-linux/git/1.9.0-r0/image bindir=/usr/bin >>>>> | make[1]: Entering directory `/srv/hdd/builds/world/tmp/work/ppc7400-poky-linux/git/1.9.0-r0/git-1.9.0/perl' >>>>> | make[1]: *** No rule to make target `/usr/lib/perl/5.14.3/Config.pm', needed by `perl.mak'. Stop. >>>>> | make[1]: Leaving directory `/srv/hdd/builds/world/tmp/work/ppc7400-poky-linux/git/1.9.0-r0/git-1.9.0/perl' >>>>> | make: *** [install] Error 2 >>>>> | ERROR: oe_runmake failed >>> >>> I've seen that pop up as well, but I couldn't reproduce that with 'bitbake -c clean git ; bitbake git'. I only tested with -j4, I'll retest with -j16. Are you seeing this on all builds or only some of them? >>> >> >> I can reproduce this on my local build server at -j 16 everytime. > > -j16 instead of -j4 triggers an selinux error on my laptop, so this patch needs rethinking. I'll have a look at this when I get back to work on tuesday. Still haven't fixed the selinux error, but I'll send a patch with PARALLEL_MAKEINST="" today or tomorrow to run through the autobuilder. > > regards, > > Koen > > >> >> Sau! >> >>> regards, >>> >>> Koen >>> >>> >>> >>>> >>>> >>>> Sau! >>>> >>>> >>>> >>>>> # ${libdir} is not applicable here, perl-native files are always >>>>> # installed to /usr/lib on both 32/64 bits targets. >>>>> rm -rf ${D}${exec_prefix}/lib/perl-native >>>>> - rmdir ${D}${exec_prefix}/lib || true >>>>> } >>>>> >>>>> PERLSEDFIXUP = " \ >>>>> @@ -75,6 +81,7 @@ PERLTOOLS = " \ >>>>> PACKAGES =+ "${PN}-perltools" >>>>> FILES_${PN}-perltools += " \ >>>>> ${PERLTOOLS} \ >>>>> + ${prefix}/lib/perl \ >>>>> ${datadir}/perl \ >>>>> " >>>>> RDEPENDS_${PN}-perltools = "${PN} perl perl-module-file-path findutils" >>>>> >>>> -- >>>> _______________________________________________ >>>> Openembedded-core mailing list >>>> Openembedded-core@lists.openembedded.org >>>> http://lists.openembedded.org/mailman/listinfo/openembedded-core
diff --git a/meta/recipes-devtools/git/git.inc b/meta/recipes-devtools/git/git.inc index f5013f1..888b2a5 100644 --- a/meta/recipes-devtools/git/git.inc +++ b/meta/recipes-devtools/git/git.inc @@ -28,10 +28,16 @@ do_install () { template_dir=${datadir}/git-core/templates \ GIT_PYTHON_DIR=${D}${datadir}/git-core/python + sed -i -e 's#${STAGING_BINDIR_NATIVE}/perl-native/#${bindir}/#' \ + -e 's#${STAGING_LIBDIR_NATIVE}/#${libdir}/#' \ + -e 's#/lib/perl-native#/lib#g' \ + ${S}/perl/perl.mak + + cd ${S}/perl && oe_runmake install DESTDIR="${D}" bindir=${bindir} + # ${libdir} is not applicable here, perl-native files are always # installed to /usr/lib on both 32/64 bits targets. rm -rf ${D}${exec_prefix}/lib/perl-native - rmdir ${D}${exec_prefix}/lib || true } PERLSEDFIXUP = " \ @@ -75,6 +81,7 @@ PERLTOOLS = " \ PACKAGES =+ "${PN}-perltools" FILES_${PN}-perltools += " \ ${PERLTOOLS} \ + ${prefix}/lib/perl \ ${datadir}/perl \ " RDEPENDS_${PN}-perltools = "${PN} perl perl-module-file-path findutils"
Git.pm wasn't ending up in the package because do_install removed it with a misleading comment about multilib. Fix the problem at the source so that Git.pm ends up in the correct dir *and* doesn't get deleted. The perl.mak file gets updated during the regular do_install, so add an extra make install step to install the *.pm files to the correct directory. This is the first step in making git-perltools actually work. Signed-off-by: Koen Kooi <koen.kooi@linaro.org> --- meta/recipes-devtools/git/git.inc | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-)