# Contributor: Sergei Lukin <sergej.lukin@gmail.com>
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
setvar pkgname = 'pcre'
setvar pkgver = '8.41'
setvar pkgrel = '1'
setvar pkgdesc = ""Perl-compatible regular expression library""
setvar url = ""http://pcre.sourceforge.net""
setvar arch = ""all""
setvar license = ""BSD""
setvar depends = ''
setvar makedepends = """"
setvar checkdepends = ""paxmark""
setvar subpackages = ""$pkgname-dev $pkgname-doc $pkgname-tools
	libpcrecpp libpcre16 libpcre32""
setvar source = ""ftp://ftp.csx.cam.ac.uk/pub/software/programming/$pkgname/$pkgname-$pkgver.tar.bz2
	""

# secfixes:
#   8.40-r2:
#   - CVE-2017-7186
#   7.8-r0:
#   - CVE-2017-11164

setvar builddir = ""$srcdir/$pkgname-$pkgver""

proc build {
	cd $builddir
	test $CARCH = "s390x" && setvar _enable_jit = """" || setvar _enable_jit = ""--enable-jit""
	./configure \
		--build=$CBUILD \
		--host=$CHOST \
		--prefix=/usr \
		$_enable_jit \
		--enable-utf8 \
		--enable-unicode-properties \
		--enable-pcre8 \
		--enable-pcre16 \
		--enable-pcre32 \
		--with-match-limit-recursion=8192 \
		--htmldir=/usr/share/doc/$pkgname-$pkgver/html \
		--docdir=/usr/share/doc/$pkgname-$pkgver

	make
}

proc package {
	cd $builddir
	make DESTDIR="$pkgdir" install
}

proc check {
	cd $builddir

	# paxmark tests requiring JIT
	for fn in pcre_jit_test pcretest {
		./$fn &>/dev/null < /dev/null || true
		test -x .libs/lt-$fn && paxmark -m .libs/lt-$fn
	}

	# skip locale specific tests
	sed -i -e 's/do3=yes//g' RunTest

	make check
}

proc libpcrecpp {
	setvar pkgdesc = ""C++ bindings for PCRE""
	mkdir -p "$subpkgdir"/usr/lib
	mv "$pkgdir"/usr/lib/libpcrecpp.so* "$subpkgdir"/usr/lib/
}

proc libpcre16 {
	setvar pkgdesc = ""PCRE with 16 bit character support""
	mkdir -p "$subpkgdir"/usr/lib
	mv "$pkgdir"/usr/lib/libpcre16.so* "$subpkgdir"/usr/lib/
}

proc libpcre32 {
	setvar pkgdesc = ""PCRE with 32 bit character support""
	mkdir -p "$subpkgdir"/usr/lib
	mv "$pkgdir"/usr/lib/libpcre32.so* "$subpkgdir"/usr/lib/
}

proc tools {
	setvar pkgdesc = ""Auxiliary utilities for PCRE""
	mkdir -p "$subpkgdir"/usr/
	mv "$pkgdir"/usr/bin "$subpkgdir"/usr/
}

setvar sha512sums = ""cc9cdbeb98c010fe4f093a019bebfb91965dae4c6a48f8e49c38ec8df7d9da7f0d32c12fc58f22c51f1c2f010e72b65bcbf8bbf180060e93edf464fa9a7c3551  pcre-8.41.tar.bz2""