# Contributor: Jakub Jirutka # Maintainer: Jakub Jirutka setvar pkgname = 'pcre2' setvar pkgver = '10.30' setvar pkgrel = '0' setvar pkgdesc = ""Perl-compatible regular expression library"" setvar url = ""http://pcre.sourceforge.net/"" setvar arch = ""all"" setvar license = ""BSD"" setvar depends = """" setvar depends_dev = ""libedit-dev zlib-dev"" setvar makedepends = ""$depends_dev paxmark"" setvar subpackages = ""$pkgname-dev $pkgname-doc $pkgname-tools libpcre2-16:_libpcre libpcre2-32:_libpcre"" setvar source = ""ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/$pkgname-$pkgver.tar.gz"" setvar builddir = ""$srcdir/$pkgname-$pkgver"" case (CARCH) { s390x { setvar _enable_jit = """"} * { setvar _enable_jit = ""--enable-jit""} } proc build { cd $builddir # Note: Forced -O3 is recommended (needed?) for Julia. ./configure \ CFLAGS="$CFLAGS -O3" \ --build=$CBUILD \ --host=$CHOST \ --prefix=/usr \ --docdir=/usr/share/doc/$pkgname-$pkgver \ --htmldir=/usr/share/doc/$pkgname-$pkgver/html \ --enable-pcre2-16 \ --enable-pcre2-32 \ --enable-pcre2grep-libz \ --enable-pcre2test-libedit \ --with-match-limit-recursion=8192 \ $_enable_jit make } # Note: RunTest and pcre2_jit_test generates some binaries in .libs that needs # to disable MPROTECT on grsecurity kernel. That's why it's so complicated... proc check { cd $builddir local is_pax=$(grep -q PaX /proc/$$/status && echo 'yes' || echo 'no') if test $is_pax = yes { timeout -t 1 -s KILL ./RunTest 2>/dev/null || true find .libs -type f ! -name 'lib*' | xargs paxmark m } ./RunTest if test -n $_enable_jit { if test $is_pax = yes { timeout -t 1 -s KILL ./pcre2_jit_test >/dev/null || true find .libs -type f ! -name 'lib*' | xargs paxmark m } ./pcre2_jit_test } } proc package { cd $builddir make DESTDIR="$pkgdir" install } proc _libpcre { local bits="${subpkgname##*-}" setvar pkgdesc = ""PCRE2 with $bits bit character support"" mkdir -p "$subpkgdir"/usr/lib mv "$pkgdir"/usr/lib/libpcre2-$bits.so* "$subpkgdir"/usr/lib/ } proc tools { setvar pkgdesc = ""Auxiliary utilities for PCRE2"" mkdir -p "$subpkgdir"/usr/ mv "$pkgdir"/usr/bin "$subpkgdir"/usr/ } setvar sha512sums = ""af6c7cd8e25ec1ed538c89808b144a508ee6f5ca08134f04119e4786d69643bea99bec3c9527d201cec47ba52032d55ad7692b448b4696d68fd4ed1081dbaa62 pcre2-10.30.tar.gz""