summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Deutschmann <whissi@gentoo.org>2021-02-19 01:45:56 +0100
committerThomas Deutschmann <whissi@gentoo.org>2021-02-19 01:48:10 +0100
commit6398d91b7792348b1b903fcb4c4567ed93ae0f9d (patch)
tree1ab185aaa81f8c2ba767f9087ed3fdb38e571b49 /dev-libs
parentapp-text/dblatex: restore dropped ~hppa (diff)
downloadgentoo-6398d91b7792348b1b903fcb4c4567ed93ae0f9d.tar.gz
gentoo-6398d91b7792348b1b903fcb4c4567ed93ae0f9d.tar.bz2
gentoo-6398d91b7792348b1b903fcb4c4567ed93ae0f9d.zip
dev-libs/libpcre2: fix performance regression
Bug: https://bugs.exim.org/show_bug.cgi?id=2698 Package-Manager: Portage-3.0.14, Repoman-3.0.2 Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
Diffstat (limited to 'dev-libs')
-rw-r--r--dev-libs/libpcre2/Manifest1
-rw-r--r--dev-libs/libpcre2/libpcre2-10.36-r1.ebuild91
2 files changed, 92 insertions, 0 deletions
diff --git a/dev-libs/libpcre2/Manifest b/dev-libs/libpcre2/Manifest
index 1e61e8faa749..d21cbbc6362e 100644
--- a/dev-libs/libpcre2/Manifest
+++ b/dev-libs/libpcre2/Manifest
@@ -1,3 +1,4 @@
DIST libpcre2-10.34-patchset-01.tar.xz 1208 BLAKE2B 615b7eff085bd52bb3aed30c90ec5b8cec406f96c58bdfb0304dd59311517662067e68f85bc9930ed6f749820ecfe3c483e261616187bc1077ebb053670d4950 SHA512 d881665701bc330f237d19ee48491a81dc8b952b0b8e529eb83c3ffdf14710f68eb934f872ed76ef6b0bee1864261453e7e71e60e14217c004e4e12c6baa499f
+DIST libpcre2-10.36-patchset-01.tar.xz 1364 BLAKE2B bfef3c876a092e06972107b44794c23b758a030181f3040c8b722db166789eac794783169b468fc71334fd660bc2f1c31422a8cb8e5bdc18a69b72654b1b59b2 SHA512 04324d1efa6d155fa3ffbc328638e4674bea305fef7f57d4369ab4a6399a0f489b4c0ecfb49643feff310d91872e1673e965c48a5c60f1bf54a319f0d275c306
DIST pcre2-10.35.tar.bz2 1725214 BLAKE2B f97412258f0d2c09dc18c5973156e616730ae301713a0172fb2f467e5d2857bf64c6d02ac247e797ce4c96e2fb9b122888f71aede3f5eb3540731f6c3c254ed4 SHA512 ecfb8d48e219daff02874783b7b436fe7d70d8471e44eb66e1e29abb7b0aa67547e6b5fba7058b074ac90eef265ece7d12728f80afdda45b6b8124435f4561fd
DIST pcre2-10.36.tar.bz2 1722310 BLAKE2B 5c70b7b1b0644edbcc29d3486fc0f3e2d0cb4822f4f3f3e7df603b4f4e27656a2e7f71389628ceb9bd7acc746ce4b626cd2a128d894840b22796841d1269765f SHA512 fc2a920562c80c3d31cedd94028fab55314ae0fb168cac7178f286c344a11fc514939edc3b83b8e0b57c872db4e595fd5530fd1d4b8c779be629553e9ec965a3
diff --git a/dev-libs/libpcre2/libpcre2-10.36-r1.ebuild b/dev-libs/libpcre2/libpcre2-10.36-r1.ebuild
new file mode 100644
index 000000000000..b4562da19092
--- /dev/null
+++ b/dev-libs/libpcre2/libpcre2-10.36-r1.ebuild
@@ -0,0 +1,91 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit flag-o-matic libtool multilib-minimal toolchain-funcs usr-ldscript
+
+PATCH_SET="${PN}-10.36-patchset-01.tar.xz"
+
+DESCRIPTION="Perl-compatible regular expression library"
+HOMEPAGE="https://www.pcre.org/"
+MY_P="pcre2-${PV/_rc/-RC}"
+if [[ ${PV} != *_rc* ]] ; then
+ # Only the final releases are available here.
+ SRC_URI="mirror://sourceforge/pcre/${MY_P}.tar.bz2
+ https://ftp.pcre.org/pub/pcre/${MY_P}.tar.bz2"
+else
+ SRC_URI="https://ftp.pcre.org/pub/pcre/Testing/${MY_P}.tar.bz2"
+fi
+
+if [[ -n "${PATCH_SET}" ]] ; then
+ SRC_URI+=" https://dev.gentoo.org/~whissi/dist/${PN}/${PATCH_SET}
+ https://dev.gentoo.org/~polynomial-c/dist/${PATCH_SET}"
+fi
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="bzip2 +jit libedit pcre16 pcre32 +readline +recursion-limit static-libs unicode zlib"
+REQUIRED_USE="?? ( libedit readline )"
+
+BDEPEND="
+ virtual/pkgconfig
+ userland_GNU? ( >=sys-apps/findutils-4.4.0 )
+"
+RDEPEND="
+ bzip2? ( app-arch/bzip2 )
+ libedit? ( dev-libs/libedit )
+ readline? ( sys-libs/readline:0= )
+ zlib? ( sys-libs/zlib )
+"
+DEPEND="${RDEPEND}"
+
+S="${WORKDIR}/${MY_P}"
+
+MULTILIB_CHOST_TOOLS=(
+ /usr/bin/pcre2-config
+)
+
+src_prepare() {
+ [[ -d "${WORKDIR}/patches" ]] && eapply "${WORKDIR}"/patches
+
+ default
+
+ elibtoolize
+}
+
+multilib_src_configure() {
+ local myeconfargs=(
+ --enable-pcre2-8
+ --enable-shared
+ --with-match-limit-depth=$(usex recursion-limit 8192 MATCH_LIMIT)
+ $(multilib_native_use_enable bzip2 pcre2grep-libbz2)
+ $(multilib_native_use_enable libedit pcre2test-libedit)
+ $(multilib_native_use_enable readline pcre2test-libreadline)
+ $(multilib_native_use_enable zlib pcre2grep-libz)
+ $(use_enable jit)
+ $(use_enable jit pcre2grep-jit)
+ $(use_enable pcre16 pcre2-16)
+ $(use_enable pcre32 pcre2-32)
+ $(use_enable static-libs static)
+ $(use_enable unicode)
+ )
+ ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
+}
+
+multilib_src_compile() {
+ emake V=1 $(multilib_is_native_abi || echo "bin_PROGRAMS=")
+}
+
+multilib_src_install() {
+ emake \
+ DESTDIR="${D}" \
+ $(multilib_is_native_abi || echo "bin_PROGRAMS= dist_html_DATA=") \
+ install
+ multilib_is_native_abi && gen_usr_ldscript -a pcre2-posix
+}
+
+multilib_src_install_all() {
+ find "${ED}" -type f -name "*.la" -delete || die
+}