SUMMARY="Perl5 Compatible Regular Expressions"
DESCRIPTION="The PCRE library is a set of functions that implement regular \
expression pattern matching using the same syntax and semantics as Perl 5. \
PCRE has its own native API, as well as a set of wrapper functions that \
correspond to the POSIX regular expression API. The PCRE library is free, even \
for building proprietary software.
This package contains the native API."
COPYRIGHT="1997-2017 University of Cambridge
	2007-2012, Google Inc. All rights reserved."
HOMEPAGE="http://www.pcre.org/"
LICENSE="PCRE"
REVISION="1"
SOURCE_URI="https://downloads.sf.net/pcre/pcre-$portVersion.tar.bz2"
CHECKSUM_SHA256="e62c7eac5ae7c0e7286db61ff82912e1c0b7a0c13706616e94a7dd729321b530"
SOURCE_DIR="pcre-$portVersion"

ARCHITECTURES="all"
SECONDARY_ARCHITECTURES="x86_gcc2 x86"

PROVIDES="
	libpcre$secondaryArchSuffix = $portVersion
	lib:libpcre$secondaryArchSuffix = 1.2.9 compat >= 1
	lib:libpcrecpp$secondaryArchSuffix = 0.0.1 compat >= 0
	lib:libpcreposix$secondaryArchSuffix = 0.0.5 compat >= 0
	"
if [ -z "$secondaryArchSuffix" ];then
	PROVIDES="$PROVIDES
		cmd:pcregrep = $portVersion compat >= 8
		cmd:pcretest = $portVersion compat >= 8
		"
fi

REQUIRES="
	haiku$secondaryArchSuffix
	"

PROVIDES_devel="
	libpcre${secondaryArchSuffix}_devel = $portVersion
	cmd:pcre_config$secondaryArchSuffix = $portVersion compat >= 8
	devel:libpcre$secondaryArchSuffix = 1.2.9 compat >= 1
	devel:libpcrecpp$secondaryArchSuffix = 0.0.1 compat >= 0
	devel:libpcreposix$secondaryArchSuffix = 0.0.5 compat >= 0
	"
REQUIRES_devel="
	libpcre$secondaryArchSuffix == $portVersion base
	"

BUILD_REQUIRES="
	haiku${secondaryArchSuffix}_devel
	"
BUILD_PREREQUIRES="
	cmd:aclocal
	cmd:autoconf
	cmd:automake
	cmd:gcc$secondaryArchSuffix
	cmd:make
	cmd:ld$secondaryArchSuffix
	cmd:libtoolize$secondaryArchSuffix
	"

BUILD()
{
	libtoolize --force --copy --install
	aclocal
	autoconf
	automake --add-missing
	runConfigure ./configure \
		--enable-utf8 \
		--enable-unicode-properties \
		--with-pic
	make $jobArgs
}

INSTALL()
{
	make install

	rm $libDir/libpcre*.la

	# prepare develop/lib
	prepareInstalledDevelLibs libpcre libpcrecpp libpcreposix
	fixPkgconfig

	# fix pcre-config
	fixDevelopLibDirReferences $binDir/pcre-config

	if [ -n "$secondaryArchSuffix" ]; then
		maybe_manDir_man1_pcre_config=
		maybe_manDir_man3=
	 	rm -rf $documentationDir
	else
		maybe_manDir_man1_pcre_config=$manDir/man1/pcre-config.1
		maybe_manDir_man3=$manDir/man3
	fi

	# devel package
	packageEntries devel \
		$binDir/pcre-config \
		$developDir \
		$maybe_manDir_man1_pcre_config \
		$maybe_manDir_man3

	if [ -n "$secondaryArchSuffix" ]; then
	 	rm -rf $binDir
	fi
}

TEST()
{
	make check
}
