]> code.ossystems Code Review - openembedded-core.git/commitdiff
git: add Git perl module to perltools package
authorPeter A. Bigot <pab@pabigot.com>
Thu, 25 Sep 2014 13:28:29 +0000 (08:28 -0500)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Mon, 29 Sep 2014 11:12:34 +0000 (12:12 +0100)
Git perl tools such as add--interactive load the Git module at runtime.
A previous patch to eliminate a QA error by deleting it instead of
packaging it was incorrect.

    beaglebone[62]$ git add -i
    Can't locate Git.pm in @INC (you may need to install the Git module) (@INC contains: /usr/lib/perl/5.20.0 /prj/pab/Utils/lib/perl5/linux-arm/5.020000 /prj/pab/Utils/lib/perl5/ /prj/pab/Utils/lib/perl5/site_perl/linux-arm /prj/pab/Utils/lib/perl5/site_perl /etc/perl /usr/lib/perl/site_perl/5.20.0/ /usr/lib/perl/site_perl/5.20.0 /usr/lib/perl/vendor_perl/5.20.0/ /usr/lib/perl/vendor_perl/5.20.0 /usr/lib/perl/5.20.0/ /usr/local/lib/site_perl .) at /usr/lib/git/git-core/git-add--interactive line 7.
    BEGIN failed--compilation aborted at /usr/lib/git/git-core/git-add--interactive line 7.

[YOCTO#3780]

Signed-off-by: Peter A. Bigot <pab@pabigot.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
meta/recipes-devtools/git/git.inc

index 7633577f673f30348da9bb816077302516be72b2..25158330b62005b8c876ab2dc941ef249b2992ae 100644 (file)
@@ -30,24 +30,21 @@ do_install () {
        oe_runmake install DESTDIR="${D}" bindir=${bindir} \
                template_dir=${datadir}/git-core/templates \
                GIT_PYTHON_DIR=${D}${datadir}/git-core/python
-
-       # ${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 = " \
+perl_native_fixup () {
        sed -i -e 's#${STAGING_BINDIR_NATIVE}/perl-native/#${bindir}/#' \
               -e 's#${libdir}/perl-native/#${libdir}/#' \
-           ${@d.getVar("PERLTOOLS", True).replace(' /',d.getVar('D', True) + '/')} \
-"
+           ${@d.getVar("PERLTOOLS", True).replace(' /',d.getVar('D', True) + '/')}
+       mv ${D}${libdir}/perl-native/perl ${D}${libdir}
+       rmdir ${D}${libdir}/perl-native || true
+}
 
 REL_GIT_EXEC_PATH = "${@os.path.relpath(libexecdir, bindir)}/git-core"
 REL_GIT_TEMPLATE_DIR = "${@os.path.relpath(datadir, bindir)}/git-core/templates"
 
 do_install_append_class-target () {
-       ${PERLSEDFIXUP}
+       perl_native_fixup
 }
 
 do_install_append_class-native() {
@@ -60,7 +57,7 @@ do_install_append_class-nativesdk() {
        create_wrapper ${D}${bindir}/git \
                GIT_EXEC_PATH='`dirname $''realpath`'/${REL_GIT_EXEC_PATH} \
                GIT_TEMPLATE_DIR='`dirname $''realpath`'/${REL_GIT_TEMPLATE_DIR}
-       ${PERLSEDFIXUP}
+       perl_native_fixup
 }
 
 FILES_${PN} += "${datadir}/git-core ${libexecdir}/git-core/"
@@ -90,6 +87,7 @@ PERLTOOLS = " \
 PACKAGES =+ "${PN}-perltools"
 FILES_${PN}-perltools += " \
     ${PERLTOOLS} \
+    ${libdir}/perl \
     ${datadir}/perl \
 "
 RDEPENDS_${PN}-perltools = "${PN} perl perl-module-file-path findutils"