[OE-core] [PATCH 1/3] git: fix perl binding installation
Koen Kooi
koen at dominion.thruhere.net
Tue Apr 22 12:50:01 UTC 2014
Op 20 apr. 2014, om 10:02 heeft Koen Kooi <koen at dominion.thruhere.net> het volgende geschreven:
>
> Op 19 apr. 2014, om 17:47 heeft Saul Wold <sgw at 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 at 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 at 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 at lists.openembedded.org
>>>> http://lists.openembedded.org/mailman/listinfo/openembedded-core
More information about the Openembedded-core
mailing list