commit: 541e9759ca8143d7e446de7cc353417dd45f5a71 Author: Robin H. Johnson <robbat2 <AT> gentoo <DOT> org> AuthorDate: Sun Aug 6 00:04:59 2017 +0000 Commit: Robin H. Johnson <robbat2 <AT> gentoo <DOT> org> CommitDate: Sun Aug 6 00:12:20 2017 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=541e9759
dev-vcs/git: switch to PCRE2-JIT per upstream. Upstream Git is switching to PCRE2 w/ JIT by default, because of the performance boost. An optional non-JIT PCRE is available in PCRE1 code path, for arches where dev-libs/libpcre2[jit] is not available (alpha, ia64, hppa as of this commit). Closes: https://bugs.gentoo.org/show_bug.cgi?id=627088 Bug: https://bugs.gentoo.org/show_bug.cgi?id=627088 Package-Manager: portage-2.3.6 .../git/{git-2.14.0.ebuild => git-2.14.0-r1.ebuild} | 21 ++++++++++++++++----- dev-vcs/git/git-2.14.0.ebuild | 2 +- dev-vcs/git/git-9999-r1.ebuild | 21 ++++++++++++++++----- dev-vcs/git/git-9999-r2.ebuild | 21 ++++++++++++++++----- dev-vcs/git/git-9999-r3.ebuild | 21 ++++++++++++++++----- dev-vcs/git/git-9999.ebuild | 21 ++++++++++++++++----- dev-vcs/git/metadata.xml | 1 + 7 files changed, 82 insertions(+), 26 deletions(-) diff --git a/dev-vcs/git/git-2.14.0.ebuild b/dev-vcs/git/git-2.14.0-r1.ebuild similarity index 97% copy from dev-vcs/git/git-2.14.0.ebuild copy to dev-vcs/git/git-2.14.0-r1.ebuild index 2b0d92a449d..492ea3ac973 100644 --- a/dev-vcs/git/git-2.14.0.ebuild +++ b/dev-vcs/git/git-2.14.0-r1.ebuild @@ -43,7 +43,7 @@ fi LICENSE="GPL-2" SLOT="0" -IUSE="+blksha1 +curl cgi doc emacs gnome-keyring +gpg highlight +iconv libressl mediawiki mediawiki-experimental +nls +pcre +perl +python ppcsha1 tk +threads +webdav xinetd cvs subversion test" +IUSE="+blksha1 +curl cgi doc emacs gnome-keyring +gpg highlight +iconv libressl mediawiki mediawiki-experimental +nls +pcre +pcre-jit +perl +python ppcsha1 tk +threads +webdav xinetd cvs subversion test" # Common to both DEPEND and RDEPEND CDEPEND=" @@ -51,7 +51,10 @@ CDEPEND=" !libressl? ( dev-libs/openssl:0= ) libressl? ( dev-libs/libressl:= ) sys-libs/zlib - pcre? ( dev-libs/libpcre ) + pcre? ( + pcre-jit? ( dev-libs/libpcre2[jit(+)] ) + !pcre-jit? ( dev-libs/libpcre[-jit(-)] ) + ) perl? ( dev-lang/perl:=[-build(-)] ) tk? ( dev-lang/tk:0= ) curl? ( @@ -108,6 +111,7 @@ REQUIRED_USE=" mediawiki-experimental? ( mediawiki ) subversion? ( perl ) webdav? ( curl ) + pcre-jit? ( pcre ) python? ( ${PYTHON_REQUIRED_USE} ) " @@ -173,9 +177,16 @@ exportmakeopts() { || myopts+=" NO_GETTEXT=YesPlease" use tk \ || myopts+=" NO_TCLTK=YesPlease" - use pcre \ - && myopts+=" USE_LIBPCRE=yes" \ - && extlibs+=" -lpcre" + if use pcre; then + if use pcre-jit; then + myopts+=" USE_LIBPCRE2=YesPlease" + extlibs+=" -lpcre2-8" + else + myopts+=" USE_LIBPCRE1=YesPlease" + myopts+=" NO_LIBPCRE1_JIT=YesPlease" + extlibs+=" -lpcre" + fi + fi use perl \ && myopts+=" INSTALLDIRS=vendor" \ || myopts+=" NO_PERL=YesPlease" diff --git a/dev-vcs/git/git-2.14.0.ebuild b/dev-vcs/git/git-2.14.0.ebuild index 2b0d92a449d..5d492f0abc0 100644 --- a/dev-vcs/git/git-2.14.0.ebuild +++ b/dev-vcs/git/git-2.14.0.ebuild @@ -174,7 +174,7 @@ exportmakeopts() { use tk \ || myopts+=" NO_TCLTK=YesPlease" use pcre \ - && myopts+=" USE_LIBPCRE=yes" \ + && myopts+=" USE_LIBPCRE1=yes" \ && extlibs+=" -lpcre" use perl \ && myopts+=" INSTALLDIRS=vendor" \ diff --git a/dev-vcs/git/git-9999-r1.ebuild b/dev-vcs/git/git-9999-r1.ebuild index e61e4dbc350..d5d419248fd 100644 --- a/dev-vcs/git/git-9999-r1.ebuild +++ b/dev-vcs/git/git-9999-r1.ebuild @@ -43,7 +43,7 @@ fi LICENSE="GPL-2" SLOT="0" -IUSE="+blksha1 +curl cgi doc emacs gnome-keyring +gpg highlight +iconv libressl mediawiki mediawiki-experimental +nls +pcre +perl +python ppcsha1 tk +threads +webdav xinetd cvs subversion test" +IUSE="+blksha1 +curl cgi doc emacs gnome-keyring +gpg highlight +iconv libressl mediawiki mediawiki-experimental +nls +pcre +pcre-jit +perl +python ppcsha1 tk +threads +webdav xinetd cvs subversion test" # Common to both DEPEND and RDEPEND CDEPEND=" @@ -51,7 +51,10 @@ CDEPEND=" !libressl? ( dev-libs/openssl:0= ) libressl? ( dev-libs/libressl:= ) sys-libs/zlib - pcre? ( dev-libs/libpcre ) + pcre? ( + pcre-jit? ( dev-libs/libpcre2[jit(+)] ) + !pcre-jit? ( dev-libs/libpcre[-jit(-)] ) + ) perl? ( dev-lang/perl:=[-build(-)] ) tk? ( dev-lang/tk:0= ) curl? ( @@ -108,6 +111,7 @@ REQUIRED_USE=" mediawiki-experimental? ( mediawiki ) subversion? ( perl ) webdav? ( curl ) + pcre-jit? ( pcre ) python? ( ${PYTHON_REQUIRED_USE} ) " @@ -173,9 +177,16 @@ exportmakeopts() { || myopts+=" NO_GETTEXT=YesPlease" use tk \ || myopts+=" NO_TCLTK=YesPlease" - use pcre \ - && myopts+=" USE_LIBPCRE=yes" \ - && extlibs+=" -lpcre" + if use pcre; then + if use pcre-jit; then + myopts+=" USE_LIBPCRE2=YesPlease" + extlibs+=" -lpcre2-8" + else + myopts+=" USE_LIBPCRE1=YesPlease" + myopts+=" NO_LIBPCRE1_JIT=YesPlease" + extlibs+=" -lpcre" + fi + fi use perl \ && myopts+=" INSTALLDIRS=vendor" \ || myopts+=" NO_PERL=YesPlease" diff --git a/dev-vcs/git/git-9999-r2.ebuild b/dev-vcs/git/git-9999-r2.ebuild index 7c6c767ea6e..d097d9be3f9 100644 --- a/dev-vcs/git/git-9999-r2.ebuild +++ b/dev-vcs/git/git-9999-r2.ebuild @@ -43,7 +43,7 @@ fi LICENSE="GPL-2" SLOT="0" -IUSE="+blksha1 +curl cgi doc emacs gnome-keyring +gpg highlight +iconv libressl mediawiki mediawiki-experimental +nls +pcre +perl +python ppcsha1 tk +threads +webdav xinetd cvs subversion test" +IUSE="+blksha1 +curl cgi doc emacs gnome-keyring +gpg highlight +iconv libressl mediawiki mediawiki-experimental +nls +pcre +pcre-jit +perl +python ppcsha1 tk +threads +webdav xinetd cvs subversion test" # Common to both DEPEND and RDEPEND CDEPEND=" @@ -51,7 +51,10 @@ CDEPEND=" !libressl? ( dev-libs/openssl:0= ) libressl? ( dev-libs/libressl:= ) sys-libs/zlib - pcre? ( dev-libs/libpcre ) + pcre? ( + pcre-jit? ( dev-libs/libpcre2[jit(+)] ) + !pcre-jit? ( dev-libs/libpcre[-jit(-)] ) + ) perl? ( dev-lang/perl:=[-build(-)] ) tk? ( dev-lang/tk:0= ) curl? ( @@ -108,6 +111,7 @@ REQUIRED_USE=" mediawiki-experimental? ( mediawiki ) subversion? ( perl ) webdav? ( curl ) + pcre-jit? ( pcre ) python? ( ${PYTHON_REQUIRED_USE} ) " @@ -173,9 +177,16 @@ exportmakeopts() { || myopts+=" NO_GETTEXT=YesPlease" use tk \ || myopts+=" NO_TCLTK=YesPlease" - use pcre \ - && myopts+=" USE_LIBPCRE=yes" \ - && extlibs+=" -lpcre" + if use pcre; then + if use pcre-jit; then + myopts+=" USE_LIBPCRE2=YesPlease" + extlibs+=" -lpcre2-8" + else + myopts+=" USE_LIBPCRE1=YesPlease" + myopts+=" NO_LIBPCRE1_JIT=YesPlease" + extlibs+=" -lpcre" + fi + fi use perl \ && myopts+=" INSTALLDIRS=vendor" \ || myopts+=" NO_PERL=YesPlease" diff --git a/dev-vcs/git/git-9999-r3.ebuild b/dev-vcs/git/git-9999-r3.ebuild index f2270d9140f..5f87faa86de 100644 --- a/dev-vcs/git/git-9999-r3.ebuild +++ b/dev-vcs/git/git-9999-r3.ebuild @@ -43,7 +43,7 @@ fi LICENSE="GPL-2" SLOT="0" -IUSE="+blksha1 +curl cgi doc emacs gnome-keyring +gpg highlight +iconv libressl mediawiki mediawiki-experimental +nls +pcre +perl +python ppcsha1 tk +threads +webdav xinetd cvs subversion test" +IUSE="+blksha1 +curl cgi doc emacs gnome-keyring +gpg highlight +iconv libressl mediawiki mediawiki-experimental +nls +pcre +pcre-jit +perl +python ppcsha1 tk +threads +webdav xinetd cvs subversion test" # Common to both DEPEND and RDEPEND CDEPEND=" @@ -51,7 +51,10 @@ CDEPEND=" !libressl? ( dev-libs/openssl:0= ) libressl? ( dev-libs/libressl:= ) sys-libs/zlib - pcre? ( dev-libs/libpcre ) + pcre? ( + pcre-jit? ( dev-libs/libpcre2[jit(+)] ) + !pcre-jit? ( dev-libs/libpcre[-jit(-)] ) + ) perl? ( dev-lang/perl:=[-build(-)] ) tk? ( dev-lang/tk:0= ) curl? ( @@ -108,6 +111,7 @@ REQUIRED_USE=" mediawiki-experimental? ( mediawiki ) subversion? ( perl ) webdav? ( curl ) + pcre-jit? ( pcre ) python? ( ${PYTHON_REQUIRED_USE} ) " @@ -173,9 +177,16 @@ exportmakeopts() { || myopts+=" NO_GETTEXT=YesPlease" use tk \ || myopts+=" NO_TCLTK=YesPlease" - use pcre \ - && myopts+=" USE_LIBPCRE=yes" \ - && extlibs+=" -lpcre" + if use pcre; then + if use pcre-jit; then + myopts+=" USE_LIBPCRE2=YesPlease" + extlibs+=" -lpcre2-8" + else + myopts+=" USE_LIBPCRE1=YesPlease" + myopts+=" NO_LIBPCRE1_JIT=YesPlease" + extlibs+=" -lpcre" + fi + fi use perl \ && myopts+=" INSTALLDIRS=vendor" \ || myopts+=" NO_PERL=YesPlease" diff --git a/dev-vcs/git/git-9999.ebuild b/dev-vcs/git/git-9999.ebuild index 1c670f22bcd..4a0448a0496 100644 --- a/dev-vcs/git/git-9999.ebuild +++ b/dev-vcs/git/git-9999.ebuild @@ -43,7 +43,7 @@ fi LICENSE="GPL-2" SLOT="0" -IUSE="+blksha1 +curl cgi doc emacs gnome-keyring +gpg highlight +iconv libressl mediawiki mediawiki-experimental +nls +pcre +perl +python ppcsha1 tk +threads +webdav xinetd cvs subversion test" +IUSE="+blksha1 +curl cgi doc emacs gnome-keyring +gpg highlight +iconv libressl mediawiki mediawiki-experimental +nls +pcre +pcre-jit +perl +python ppcsha1 tk +threads +webdav xinetd cvs subversion test" # Common to both DEPEND and RDEPEND CDEPEND=" @@ -51,7 +51,10 @@ CDEPEND=" !libressl? ( dev-libs/openssl:0= ) libressl? ( dev-libs/libressl:= ) sys-libs/zlib - pcre? ( dev-libs/libpcre ) + pcre? ( + pcre-jit? ( dev-libs/libpcre2[jit(+)] ) + !pcre-jit? ( dev-libs/libpcre[-jit(-)] ) + ) perl? ( dev-lang/perl:=[-build(-)] ) tk? ( dev-lang/tk:0= ) curl? ( @@ -108,6 +111,7 @@ REQUIRED_USE=" mediawiki-experimental? ( mediawiki ) subversion? ( perl ) webdav? ( curl ) + pcre-jit? ( pcre ) python? ( ${PYTHON_REQUIRED_USE} ) " @@ -173,9 +177,16 @@ exportmakeopts() { || myopts+=" NO_GETTEXT=YesPlease" use tk \ || myopts+=" NO_TCLTK=YesPlease" - use pcre \ - && myopts+=" USE_LIBPCRE=yes" \ - && extlibs+=" -lpcre" + if use pcre; then + if use pcre-jit; then + myopts+=" USE_LIBPCRE2=YesPlease" + extlibs+=" -lpcre2-8" + else + myopts+=" USE_LIBPCRE1=YesPlease" + myopts+=" NO_LIBPCRE1_JIT=YesPlease" + extlibs+=" -lpcre" + fi + fi use perl \ && myopts+=" INSTALLDIRS=vendor" \ || myopts+=" NO_PERL=YesPlease" diff --git a/dev-vcs/git/metadata.xml b/dev-vcs/git/metadata.xml index 4a8fe9f2743..f7690883557 100644 --- a/dev-vcs/git/metadata.xml +++ b/dev-vcs/git/metadata.xml @@ -31,6 +31,7 @@ <flag name="highlight">GitWeb support for app-text/highlight</flag> <flag name="mediawiki">Support pulling and pushing from MediaWiki</flag> <flag name="mediawiki-experimental">Add experimental patches for improved MediaWiki support</flag> + <flag name="pcre-jit">Enable JIT for pcre</flag> <flag name="ppcsha1">Make use of a bundled routine that is optimized for the PPC arch</flag> <flag name="subversion">Include git-svn for <pkg>dev-vcs/subversion</pkg> support</flag> <flag name="tk">Include the 'gitk' and 'git gui' tools</flag>
