From f44cc3dada4f8d30b0d92ed1bde4dbd239528e33 Mon Sep 17 00:00:00 2001 From: Jerome Duval Date: Sat, 15 Jul 2017 13:54:17 +0200 Subject: [PATCH] apr: add recipe for version 1.6.2. --- dev-libs/apr/apr-1.6.2.recipe | 106 ++++++++++++++++++++++++ dev-libs/apr/patches/apr-1.6.2.patchset | 61 ++++++++++++++ 2 files changed, 167 insertions(+) create mode 100644 dev-libs/apr/apr-1.6.2.recipe create mode 100644 dev-libs/apr/patches/apr-1.6.2.patchset diff --git a/dev-libs/apr/apr-1.6.2.recipe b/dev-libs/apr/apr-1.6.2.recipe new file mode 100644 index 000000000..2d4399086 --- /dev/null +++ b/dev-libs/apr/apr-1.6.2.recipe @@ -0,0 +1,106 @@ +SUMMARY="Apache Portable Runtime Library" +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.)" +HOMEPAGE="http://apr.apache.org/" +COPYRIGHT="2012 The Apache Software Foundation" +LICENSE="Apache v2" +REVISION="1" +SOURCE_URI="http://archive.apache.org/dist/apr/apr-$portVersion.tar.gz" +CHECKSUM_SHA256="4fc24506c968c5faf57614f5d0aebe0e9d0b90afa47a883e1a1ca94f15f4a42e" +PATCHES="apr-$portVersion.patchset" + +ARCHITECTURES="?x86_gcc2 ?x86 x86_64" +SECONDARY_ARCHITECTURES="?x86" + +PROVIDES=" + apr$secondaryArchSuffix = $portVersion + lib:libapr_1$secondaryArchSuffix = 0.6.2 compat >= 0 + " +REQUIRES=" + haiku$secondaryArchSuffix + " + +PROVIDES_devel=" + apr${secondaryArchSuffix}_devel = portVersion + cmd:apr_1_config$secondaryArchSuffix = portVersion compat >= 1 + devel:libapr_1$secondaryArchSuffix = 0.6.2 compat >= 0 + " +REQUIRES_devel=" + apr$secondaryArchSuffix == $portVersion base + " + +BUILD_REQUIRES=" + haiku${secondaryArchSuffix}_devel + " +BUILD_PREREQUIRES=" + cmd:aclocal + cmd:autoconf + cmd:gcc$secondaryArchSuffix + cmd:ld$secondaryArchSuffix + cmd:libtoolize$secondaryArchSuffix + cmd:make + " + +BUILD() +{ + libtoolize -fci + touch libtool.m4 + aclocal -I build + autoconf + runConfigure ./configure \ + --with-installbuilddir=$prefix/data/apr CFLAGS=-D_BSD_SOURCE + + # TODO: fix this hack (by finding out why top_builddir seems to be unset)! + ln -sfn $sourceDir/libtool /libtool + + make $jobArgs +} + +INSTALL() +{ + make install + + # remove libtool library file + rm $libDir/libapr-1.la + + # 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 +} diff --git a/dev-libs/apr/patches/apr-1.6.2.patchset b/dev-libs/apr/patches/apr-1.6.2.patchset new file mode 100644 index 000000000..3c82529ad --- /dev/null +++ b/dev-libs/apr/patches/apr-1.6.2.patchset @@ -0,0 +1,61 @@ +From 6face34a456517470d0d06ec1870dfd66b7342d2 Mon Sep 17 00:00:00 2001 +From: Jerome Duval +Date: Sat, 15 Jul 2017 13:50:02 +0200 +Subject: apply 1.5.2 patch. + + +diff --git a/config.layout b/config.layout +index 0f42e84..2e29914 100644 +--- a/config.layout ++++ b/config.layout +@@ -60,6 +60,23 @@ + runtimedir: ${localstatedir}/run + + ++# Haiku Layout making use of finddir ++ ++ 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 ++ ++ + # Mac OS X Server (Rhapsody) + + prefix: /Local/Library/WebServer +diff --git a/configure.in b/configure.in +index 927e1e6..606ed16 100644 +--- a/configure.in ++++ b/configure.in +@@ -203,7 +203,7 @@ AC_PROG_MAKE_SET + 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) +@@ -718,9 +718,9 @@ case $host in + 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) +-- +2.12.2 +