From 6398d91b7792348b1b903fcb4c4567ed93ae0f9d Mon Sep 17 00:00:00 2001 From: Thomas Deutschmann Date: Fri, 19 Feb 2021 01:45:56 +0100 Subject: 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 --- dev-libs/libpcre2/Manifest | 1 + dev-libs/libpcre2/libpcre2-10.36-r1.ebuild | 91 ++++++++++++++++++++++++++++++ 2 files changed, 92 insertions(+) create mode 100644 dev-libs/libpcre2/libpcre2-10.36-r1.ebuild 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 +} -- cgit v1.2.3-65-gdbad