]> code.ossystems Code Review - openembedded-core.git/commitdiff
git: Do not install git cvsserver and git svn by default
authorPeter Kjellerstedt <pkj@axis.com>
Tue, 15 Aug 2017 21:41:53 +0000 (16:41 -0500)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Tue, 15 Aug 2017 23:11:51 +0000 (00:11 +0100)
These git commands require Perl modules that do not exist in OE-Core.
Add PACKAGECONFIGs to enable them. Be aware though that if you enable
them you must also provide the missing dependencies.

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/recipes-devtools/git/git.inc

index 4390b8d6f5e88c8ccbbd50fb1b1bd7790102268c..9b4c1284d24736fe7012e4beaf3d9addea7bde4f 100644 (file)
@@ -13,6 +13,10 @@ S = "${WORKDIR}/git-${PV}"
 
 LIC_FILES_CHKSUM = "file://COPYING;md5=7c0d7ef03a7eb04ce795b0f60e68e7e1"
 
+PACKAGECONFIG ??= ""
+PACKAGECONFIG[cvsserver] = ""
+PACKAGECONFIG[svn] = ""
+
 EXTRA_OECONF = "--with-perl=${STAGING_BINDIR_NATIVE}/perl-native/perl \
                --without-tcltk \
 "
@@ -54,6 +58,23 @@ perl_native_fixup () {
        mkdir -p ${D}${libdir}
        mv ${D}${exec_prefix}/lib/perl-native/perl ${D}${libdir}
        rmdir -p ${D}${exec_prefix}/lib/perl-native || true
+
+       if [ ! "${@bb.utils.filter('PACKAGECONFIG', 'cvsserver', d)}" ]; then
+               # Only install the git cvsserver command if explicitly requested
+               # as it requires the DBI Perl module, which does not exist in
+               # OE-Core.
+               rm ${D}${libexecdir}/git-core/git-cvsserver \
+                  ${D}${bindir}/git-cvsserver
+       fi
+
+       if [ ! "${@bb.utils.filter('PACKAGECONFIG', 'svn', d)}" ]; then
+               # Only install the git svn command and all Git::SVN Perl modules
+               # if explicitly requested as they require the SVN::Core Perl
+               # module, which does not exist in OE-Core.
+               rm -r ${D}${libexecdir}/git-core/git-svn \
+                     ${D}${libdir}/perl/site_perl/*/Git/SVN*
+               sed -i -e '/SVN/d' ${D}${libdir}/perl/site_perl/*/auto/Git/.packlist
+       fi
 }
 
 REL_GIT_EXEC_PATH = "${@os.path.relpath(libexecdir, bindir)}/git-core"