Files
haikuports/dev-libs/apr_util/apr_util-1.4.1.recipe
2013-10-13 10:03:39 -07:00

131 lines
2.9 KiB
Plaintext

SUMMARY="Apache Portable Runtime Utility Library"
HOMEPAGE="http://apr.apache.org/"
SRC_URI="http://archive.apache.org/dist/apr/apr-util-1.4.1.tar.gz"
LICENSE="Apache v2"
COPYRIGHT="2011 The Apache Software Foundation."
CHECKSUM_MD5="666a5d56098a9debf998510e304c8095"
REVISION="4"
ARCHITECTURES="x86_gcc2 x86 x86_64"
PATCHES="apr_util-1.4.1.patch"
PROVIDES="
apr_util = $portVersion compat >= 1
lib:libaprutil_1 = 0.4.1 compat >= 0
"
REQUIRES="
haiku >= $haikuVersion
lib:libapr_1
lib:libexpat
lib:libiconv
"
BUILD_REQUIRES="
devel:libapr_1 >= 0.4.6
devel:libexpat >= 1.5.2
devel:libiconv
"
BUILD_PREREQUIRES="
haiku_devel >= $haikuVersion
cmd:aclocal
cmd:autoconf
cmd:autoheader
cmd:gcc
cmd:ld
cmd:libtoolize
cmd:make
"
SOURCE_DIR="apr-util-$portVersion"
PATCH()
{
echo 'AM_INIT_AUTOMAKE' >> xml/expat/configure.in
}
BUILD()
{
aprInstallDir=$portPackageLinksDir/lib~libapr_1
expatInstallDir=$portPackageLinksDir/lib~libexpat
rm -rf aclocal.m4
mkdir -p m4
libtoolize -fci
aclocal --install -I m4
autoconf -f
cd xml/expat
mkdir -p m4
libtoolize -fci
aclocal --install -I m4
autoconf --force
autoheader
touch libtool.m4
cd ../..
# TODO: fix this hack!
cp /boot/system/bin/libtool .
ln -sfn $sourceDir/libtool /libtool
runConfigure ./configure \
--with-apr=$aprInstallDir \
--with-expat=$expatInstallDir
make $jobArgs
}
INSTALL()
{
make install
# prepare develop/lib
prepareInstalledDevelLibs libaprutil-1
fixPkgconfig
# fix apu-1-config
fixDevelopLibDirReferences $binDir/apu-1-config
# remove superfluous .exp file
rm $libDir/aprutil.exp
# devel package
packageEntries devel \
$binDir \
$developDir
}
DESCRIPTION="
The mission of the Apache Portable Runtime (APR) project is to create
and maintain software libraries that provide a predictable and consistent
interface to underlying platform-specific implementations. The primary
goal is to provide an API to which software developers may code and be
assured of predictable if not identical behaviour regardless of the
platform on which their software is built, relieving them of the need to
code special-case conditions to work around or take advantage of
platform-specific deficiencies or features.
To give a brief overview, the primary core subsystems of APR 1.x include
the following:
- atomic operations
- dynamic Shared Object loading
- file I/O
- locks (mutexes, condition variables, etc)
- memory management (high performance allocators)
- memory-mapped files
- multicast Sockets
- network I/O
- shared memory
- thread and Process management
- various data structures (tables, hashes, priority queues, etc)
"
# ----- devel package -------------------------------------------------------
PROVIDES_devel="
apr_util_devel = portVersion compat >= 1
cmd:apu_1_config = $portVersion compat >= 1
devel:libaprutil_1 = 0.4.1 compat >= 0
"
REQUIRES_devel="
apr_util == $portVersion base
"