update apr and apr_util

This commit is contained in:
Julien Lepiller
2014-04-18 23:06:06 +02:00
parent c8f624c1d1
commit 4933be3cc8
4 changed files with 331 additions and 0 deletions

View File

@@ -0,0 +1,108 @@
SUMMARY="Apache Portable Runtime Library"
HOMEPAGE="http://apr.apache.org/"
SRC_URI="http://archive.apache.org/dist/apr/apr-1.5.0.tar.gz"
COPYRIGHT="2012 The Apache Software Foundation."
LICENSE="Apache v2"
CHECKSUM_MD5="6419a8f7e89ad51b5bad7b0c84cc818c"
REVISION="1"
ARCHITECTURES="x86_gcc2 x86 ?x86_64"
PATCHES="apr-1.5.0.patch"
PROVIDES="
apr = $portVersion compat >= 1
lib:libapr_1 = 0.5.0 compat >= 0
"
REQUIRES="
haiku >= $haikuVersion
"
BUILD_REQUIRES="
"
BUILD_PREREQUIRES="
haiku_devel >= $haikuVersion
cmd:aclocal
cmd:autoconf
cmd:gcc
cmd:ld
cmd:libtoolize
cmd:make
"
BUILD()
{
libtoolize -fci
touch libtool.m4
aclocal -I build
autoconf
runConfigure ./configure \
--with-installbuilddir=$prefix/data/apr
# TODO: fix this hack (by finding out why top_builddir seems to be unset)!
ln -sfn $sourceDir/libtool /libtool
make $jobArgs
}
INSTALL()
{
make install
# prepare develop/lib
prepareInstalledDevelLibs libapr-1
fixPkgconfig
# fix apr-1-config
fixDevelopLibDirReferences $binDir/apr-1-config
# remove superfluous .exp file
rm $libDir/apr.exp
# devel package
packageEntries devel \
$binDir \
$dataDir \
$developDir
}
TEST()
{
make test
}
# ----- description ----------------------------------------------------------
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_devel = portVersion compat >= 1
cmd:apr_1_config = portVersion compat >= 1
devel:libapr_1 = 0.5.0 compat >= 0
"
REQUIRES_devel="
apr == $portVersion base
"

View File

@@ -0,0 +1,50 @@
diff -urN apr-1.4.6/config.layout apr-1.4.6-haiku/config.layout
--- apr-1.4.6/config.layout 2004-11-24 22:51:51.056360960 +0000
+++ apr-1.4.6-haiku/config.layout 2011-07-12 10:34:27.155189248 +0000
@@ -60,6 +60,23 @@
runtimedir: ${localstatedir}/run
</Layout>
+# Haiku Layout making use of finddir
+<Layout haiku>
+ prefix: /boot/system
+ exec_prefix: /boot/system
+ bindir: /boot/system/bin
+ sbindir: /boot/system/servers
+ libdir: /boot/system/lib
+ libexecdir: /boot/system/servers
+ mandir: /boot/system/documentation/man
+ sysconfdir: /boot/system/settings
+ datadir: /boot/system/data
+ installbuilddir: /boot/develop/build
+ includedir: /boot/system/include
+ localstatedir: /boot/system/var
+ runtimedir: ${localstatedir}/log
+</Layout>
+
# Mac OS X Server (Rhapsody)
<Layout Mac OS X Server>
prefix: /Local/Library/WebServer
diff -urN apr-1.4.6/configure.in apr-1.4.6-haiku/configure.in
--- apr-1.4.6/configure.in 2011-04-11 12:58:38.043253760 -0700
+++ apr-1.4.6-haiku/configure.in 2011-08-02 12:49:33.801112064 -0700
@@ -203,7 +203,7 @@
AC_PROG_CPP
AC_PROG_AWK
AC_PROG_LN_S
-AC_PROG_RANLIB
+AC_PROG_LIBTOOL
AC_PROG_INSTALL
AC_CHECK_PROG(RM, rm, rm)
AC_CHECK_PROG(AS, as, as)
@@ -672,9 +672,9 @@
ac_cv_func_CreateFileMapping=yes
;;
*)
+ AC_SEARCH_LIBS(socket, socket network)
AC_SEARCH_LIBS(gethostbyname, nsl)
AC_SEARCH_LIBS(gethostname, nsl)
- AC_SEARCH_LIBS(socket, socket)
AC_SEARCH_LIBS(crypt, crypt ufc)
AC_CHECK_LIB(truerand, main)
AC_SEARCH_LIBS(modf, m)

View File

@@ -0,0 +1,128 @@
SUMMARY="Apache Portable Runtime Utility Library"
HOMEPAGE="http://apr.apache.org/"
SRC_URI="http://archive.apache.org/dist/apr/apr-util-1.5.3.tar.gz"
LICENSE="Apache v2"
COPYRIGHT="2011 The Apache Software Foundation."
CHECKSUM_MD5="71a11d037240b292f824ba1eb537b4e3"
REVISION="1"
ARCHITECTURES="x86_gcc2 x86 x86_64"
PATCHES="apr_util-1.5.3.patch"
PROVIDES="
apr_util = $portVersion compat >= 1
lib:libaprutil_1 = 0.5.3 compat >= 0
"
REQUIRES="
haiku >= $haikuVersion
lib:libapr_1
lib:libexpat
lib:libiconv
"
BUILD_REQUIRES="
devel:libapr_1 >= 0.5.0
devel:libexpat
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.5.3 compat >= 0
"
REQUIRES_devel="
apr_util == $portVersion base
"

View File

@@ -0,0 +1,45 @@
diff -ur orig/apr-util-1.5.3/build/apu-conf.m4 apr_util-1.5.3/build/apu-conf.m4
--- orig/apr-util-1.5.3/build/apu-conf.m4 2011-08-08 11:32:27.026738688 +0200
+++ apr_util-1.5.3/build/apu-conf.m4 2013-04-30 21:28:37.100401152 +0200
@@ -145,10 +145,10 @@
else
# Add given path to standard search paths if appropriate:
if test "$withval" != "/usr"; then
- APR_ADDTO(LDFLAGS, [-L$withval/lib])
- APR_ADDTO(CPPFLAGS, [-I$withval/include])
- APR_ADDTO(APRUTIL_INCLUDES, [-I$withval/include])
- APR_ADDTO(APRUTIL_LDFLAGS, [-L$withval/lib])
+ APR_ADDTO(LDFLAGS, [-L$withval/develop/lib])
+ APR_ADDTO(CPPFLAGS, [-I$withval/develop/headers])
+ APR_ADDTO(APRUTIL_INCLUDES, [-I$withval/develop/headers])
+ APR_ADDTO(APRUTIL_LDFLAGS, [-L$withval/develop/lib])
fi
# ...and refuse to fall back on the builtin expat.
apu_try_builtin_expat=0
diff -ur orig/apr-util-1.5.3/config.layout apr_util-1.5.3/config.layout
--- orig/apr-util-1.5.3/config.layout 2005-02-09 13:18:43.064749568 +0100
+++ apr_util-1.5.3/config.layout 2013-04-30 21:27:27.079953920 +0200
@@ -60,6 +60,23 @@
runtimedir: ${localstatedir}/run
</Layout>
+# Haiku Layout making use of finddir
+<Layout haiku>
+ prefix: /boot/system
+ exec_prefix: /boot/system
+ bindir: /boot/system/bin
+ sbindir: /boot/system/servers
+ libdir: /boot/system/lib
+ libexecdir: /boot/system/servers
+ mandir: /boot/system/documentation/man
+ sysconfdir: /boot/system/settings
+ datadir: /boot/system/data
+ installbuilddir: /boot/system/develop/build
+ includedir: /boot/system/include
+ localstatedir: /boot/system/var
+ runtimedir: ${localstatedir}/log
+</Layout>
+
# Mac OS X Server (Rhapsody)
<Layout Mac OS X Server>
prefix: /Local/Library/WebServer