git: make expat and curl into PACKAGECONFIG items

It can be useful to use git on target (e.g. with some wrapper like
etckeeper for keeping track of changes to /etc), and for such cases,
it is likely one has no need for pulling from/pushing to http[s]
repositories. From the INSTALL file:

    - "libcurl" library ... If you do not use http:// or https://
      repositories, and do not want to put patches into an IMAP
      mailbox, you do not have to have them (use NO_CURL).

    - "expat" library; git-http-push uses it for remote lock
      management over DAV.  Similar to "curl" above, this is
      optional (with NO_EXPAT).

Setting --without-expat and --without-curl reduces the size of the
installed "git" package from 18M to 12M, in addition to avoiding
pulling those libraries into the rootfs.

(From OE-Core rev: 49f81198c5d233a9a2612c3b8366681dd85bea59)

Signed-off-by: Rasmus Villemoes <rasmus.villemoes@prevas.dk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Rasmus Villemoes
2022-03-30 12:46:15 +02:00
committed by Richard Purdie
parent 65c43b6894
commit 767a6fb133

View File

@@ -3,7 +3,7 @@ HOMEPAGE = "http://git-scm.com"
DESCRIPTION = "Git is a free and open source distributed version control system designed to handle everything from small to very large projects with speed and efficiency."
SECTION = "console/utils"
LICENSE = "GPL-2.0-only"
DEPENDS = "openssl curl zlib expat"
DEPENDS = "openssl zlib"
PROVIDES:append:class-native = " git-replacement-native"
@@ -18,10 +18,12 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=7c0d7ef03a7eb04ce795b0f60e68e7e1"
CVE_PRODUCT = "git-scm:git"
PACKAGECONFIG ??= ""
PACKAGECONFIG ??= "expat curl"
PACKAGECONFIG[cvsserver] = ""
PACKAGECONFIG[svn] = ""
PACKAGECONFIG[manpages] = ",,asciidoc-native xmlto-native"
PACKAGECONFIG[curl] = "--with-curl,--without-curl,curl"
PACKAGECONFIG[expat] = "--with-expat,--without-expat,expat"
EXTRA_OECONF = "--with-perl=${STAGING_BINDIR_NATIVE}/perl-native/perl \
--without-tcltk \