void-packages/srcpkgs/pcre/template
Jürgen Buchmüller 6c9b10d0c3 pcre: fix mips* builds
With --disable-stack-for-recursion the mips* builds fail with
some `branch out of range' generated assembler code.
2018-01-19 09:41:00 +01:00

73 lines
1.9 KiB
Bash

# Template file for 'pcre'
pkgname=pcre
version=8.41
revision=2
build_style=gnu-configure
configure_args="--enable-utf8 --enable-unicode-properties --with-pic
--enable-pcregrep-libz --enable-pcregrep-libbz2 --enable-newline-is-anycrlf
--enable-pcretest-libedit --enable-jit --enable-static"
makedepends="zlib-devel bzip2-devel libedit-devel"
short_desc="Perl Compatible Regular Expressions"
maintainer="Juan RP <xtraeme@voidlinux.eu>"
homepage="http://www.pcre.org/"
license="BSD"
#distfiles="${SOURCEFORGE_SITE}/pcre/pcre-$version.tar.gz"
distfiles="ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-${version}.tar.bz2"
checksum=e62c7eac5ae7c0e7286db61ff82912e1c0b7a0c13706616e94a7dd729321b530
case "$XBPS_TARGET_MACHINE" in
mips*) ;; # Without stack for recursion the mips builds fail
*) configure_args+=" --disable-stack-for-recursion" ;;
esac
post_install() {
vlicense LICENCE
}
if [ "$CROSS_BUILD" ]; then
hostmakedepends="automake libtool"
pre_configure() {
# Mips needs a hint if an FPU is available or not
case "$XBPS_TARGET_MACHINE" in
mips-musl|mipsel-musl)
CFLAGS="-DSLJIT_IS_FPU_AVAILABLE=0"
;;
mipshf-musl|mipselhf-musl)
CFLAGS="-DSLJIT_IS_FPU_AVAILABLE=1"
;;
esac
autoreconf -fi
}
fi
libpcrecpp_package() {
short_desc+=" - C++ shared libraries"
pkg_install() {
vmove "usr/lib/libpcrecpp.so.*"
}
}
libpcre_package() {
short_desc+=" - shared libraries"
replaces="pcre<8.11"
pkg_install() {
vmove "usr/lib/libpcre.so.*"
vmove "usr/lib/libpcreposix.so.*"
}
}
pcre-devel_package() {
depends="zlib-devel bzip2-devel libpcre>=${version}_${revision} libpcrecpp>=${version}_${revision}"
short_desc+=" - development files"
pkg_install() {
vmove usr/bin/pcre-config
vmove usr/include
vmove "usr/lib/*.a"
vmove "usr/lib/*.so"
vmove usr/lib/pkgconfig
vmove usr/share/man/man1/pcre-config.1
vmove usr/share/man/man3
vmove usr/share/doc
}
}