From da555b66e917b7fe6eb607142471a37ee7b553a2 Mon Sep 17 00:00:00 2001 From: Bertrand Jacquin Date: Mon, 27 May 2013 15:03:18 +0200 Subject: dev-libs/apr{,-util}: add support for crosscompile, still in work https://bugs.gentoo.org/show_bug.cgi?id=385775 --- dev-libs/apr-util/Manifest | 3 + dev-libs/apr-util/apr-util-1.3.11.ebuild | 95 ++++++++++++++ .../apr-util/files/apr-util-1.3.12-bdb-5.2.patch | 139 +++++++++++++++++++++ dev-libs/apr/Manifest | 3 + dev-libs/apr/apr-1.4.4.ebuild | 90 +++++++++++++ dev-libs/apr/files/config.layout.patch | 25 ++++ 6 files changed, 355 insertions(+) create mode 100644 dev-libs/apr-util/Manifest create mode 100644 dev-libs/apr-util/apr-util-1.3.11.ebuild create mode 100644 dev-libs/apr-util/files/apr-util-1.3.12-bdb-5.2.patch create mode 100644 dev-libs/apr/Manifest create mode 100644 dev-libs/apr/apr-1.4.4.ebuild create mode 100644 dev-libs/apr/files/config.layout.patch (limited to 'dev-libs') diff --git a/dev-libs/apr-util/Manifest b/dev-libs/apr-util/Manifest new file mode 100644 index 00000000..59bb1660 --- /dev/null +++ b/dev-libs/apr-util/Manifest @@ -0,0 +1,3 @@ +AUX apr-util-1.3.12-bdb-5.2.patch 5199 RMD160 ec3395485cc4f88b0bb191f9ef2cbeb49159606c SHA1 bb990d5d6e74eff65fef22e110792489e683dc7b SHA256 81339f327727775bb88a4530a620b0fd1f94d3fc4c0e65a810931acb638b7913 +DIST apr-util-1.3.11.tar.bz2 607486 RMD160 5b745baf523b99c8fa0501deab4f00d86ca050e5 SHA1 dc71af7684f76d56f06b4fc8763a8606bd861e84 SHA256 13b8446c5ff96ed32293db77689992db18addb1a76d0f6dae29f132dc96dab59 +EBUILD apr-util-1.3.11.ebuild 2576 RMD160 8171a76df351961d8c95c9c20eca531c6ee19ca0 SHA1 503e7c264c2d04a16774b2fa479225d1ddae9fbf SHA256 495e33d58f0f0b33c73871f1121d183b40ad7d150562c3a48766a42d5ea0c98c diff --git a/dev-libs/apr-util/apr-util-1.3.11.ebuild b/dev-libs/apr-util/apr-util-1.3.11.ebuild new file mode 100644 index 00000000..470c2e5f --- /dev/null +++ b/dev-libs/apr-util/apr-util-1.3.11.ebuild @@ -0,0 +1,95 @@ +# Copyright 1999-2011 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-libs/apr-util/apr-util-1.3.11.ebuild,v 1.6 2011/05/14 20:50:36 armin76 Exp $ + +EAPI="3" + +# Usually apr-util has the same PV as apr, but in case of security fixes, this may change. +# APR_PV="${PV}" +APR_PV="1.4.4" + +inherit autotools db-use eutils libtool multilib + +DESCRIPTION="Apache Portable Runtime Utility Library" +HOMEPAGE="http://apr.apache.org/" +SRC_URI="mirror://apache/apr/${P}.tar.bz2" + +LICENSE="Apache-2.0" +SLOT="1" +KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 s390 sh sparc x86 ~sparc-fbsd ~x86-fbsd" +IUSE="berkdb doc freetds gdbm ldap mysql odbc postgres sqlite sqlite3" +RESTRICT="test" + +RDEPEND="dev-libs/expat + >=dev-libs/apr-${APR_PV}:1 + berkdb? ( >=sys-libs/db-4 ) + freetds? ( dev-db/freetds ) + gdbm? ( sys-libs/gdbm ) + ldap? ( =net-nds/openldap-2* ) + mysql? ( =virtual/mysql-5* ) + odbc? ( dev-db/unixODBC ) + postgres? ( dev-db/postgresql-base ) + sqlite? ( dev-db/sqlite:0 ) + sqlite3? ( dev-db/sqlite:3 )" +DEPEND="${RDEPEND} + doc? ( app-doc/doxygen )" + +src_prepare() { + tc-export CC CPP + + eautoreconf + elibtoolize +} + +src_configure() { + local myconf + + if use berkdb; then + local db_version + db_version="$(db_findver sys-libs/db)" || die "Unable to find Berkeley DB version" + db_version="$(db_ver_to_slot "${db_version}")" + db_version="${db_version/\./}" + myconf+=" --with-dbm=db${db_version} --with-berkeley-db=$(db_includedir 2> /dev/null):/usr/$(get_libdir)" + else + myconf+=" --without-berkeley-db" + fi + + econf --datadir=/usr/share/apr-util-1 \ + --with-apr=/usr \ + --with-expat=/usr \ + $(use_with freetds) \ + $(use_with gdbm) \ + $(use_with ldap) \ + $(use_with mysql) \ + $(use_with odbc) \ + $(use_with postgres pgsql) \ + $(use_with sqlite sqlite2) \ + $(use_with sqlite3) \ + ${myconf} +} + +src_compile() { + emake CPPFLAGS="${CPPFLAGS}" CFLAGS="${CFLAGS}" LDFLAGS="${LDFLAGS}" \ + LIBTOOL="${ROOT}usr/bin/libtool" CC="${CC}" || die "emake failed" + + if use doc; then + emake dox || die "emake dox failed" + fi +} + +src_install() { + emake DESTDIR="${D}" install || die "emake install failed" + + find "${ED}" -name "*.la" -print0 | xargs -0 rm -f + find "${ED}usr/$(get_libdir)/apr-util-${SLOT}" -name "*.a" -print0 | xargs -0 rm -f + + dodoc CHANGES NOTICE README + + if use doc; then + dohtml -r docs/dox/html/* || die "dohtml failed" + fi + + # This file is only used on AIX systems, which Gentoo is not, + # and causes collisions between the SLOTs, so remove it. + rm -f "${D}usr/$(get_libdir)/aprutil.exp" +} diff --git a/dev-libs/apr-util/files/apr-util-1.3.12-bdb-5.2.patch b/dev-libs/apr-util/files/apr-util-1.3.12-bdb-5.2.patch new file mode 100644 index 00000000..5687a8e7 --- /dev/null +++ b/dev-libs/apr-util/files/apr-util-1.3.12-bdb-5.2.patch @@ -0,0 +1,139 @@ +--- build/dbm.m4 ++++ build/dbm.m4 +@@ -579,6 +579,25 @@ + apu_db_version=5 + fi + ]) ++dnl ++dnl APU_CHECK_DB52: is DB5.2 present? ++dnl ++dnl if present: sets apu_db_header, apu_db_lib, and apu_db_version ++dnl ++AC_DEFUN([APU_CHECK_DB52], [ ++ places=$1 ++ if test -z "$places"; then ++ places="std /usr/local/BerkeleyDB.5.2 /boot/home/config" ++ fi ++ APU_CHECK_BERKELEY_DB("5", "2", "-1", ++ "$places", ++ "db52/db.h db5/db.h db.h", ++ "db-5.2 db5-5.2 db52 db5 db" ++ ) ++ if test "$apu_have_db" = "1"; then ++ apu_db_version=5 ++ fi ++]) + + AC_DEFUN([APU_CHECK_DB], [ + requested=$1 +@@ -681,6 +700,12 @@ + AC_MSG_ERROR(Berkeley db5 not found) + fi + ;; ++ db52) ++ APU_CHECK_DB52("$check_places") ++ if test "$apu_db_version" != "5"; then ++ AC_MSG_ERROR(Berkeley db5 not found) ++ fi ++ ;; + default) + APU_CHECK_DB_ALL("$check_places") + ;; +@@ -688,40 +713,43 @@ + ]) + + dnl +-dnl APU_CHECK_DB_ALL: Try all Berkeley DB versions, from 5.1 to 1. ++dnl APU_CHECK_DB_ALL: Try all Berkeley DB versions, from 5.2 to 1. + dnl + AC_DEFUN([APU_CHECK_DB_ALL], [ + all_places=$1 + +- APU_CHECK_DB51("$all_places") ++ APU_CHECK_DB52("$all_places") + if test "$apu_db_version" != "5"; then +- APU_CHECK_DB50("$all_places") ++ APU_CHECK_DB51("$all_places") + if test "$apu_db_version" != "5"; then +- APU_CHECK_DB48("$all_places") +- if test "$apu_db_version" != "4"; then +- APU_CHECK_DB47("$all_places") ++ APU_CHECK_DB50("$all_places") ++ if test "$apu_db_version" != "5"; then ++ APU_CHECK_DB48("$all_places") + if test "$apu_db_version" != "4"; then +- APU_CHECK_DB46("$all_places") ++ APU_CHECK_DB47("$all_places") + if test "$apu_db_version" != "4"; then +- APU_CHECK_DB45("$all_places") ++ APU_CHECK_DB46("$all_places") + if test "$apu_db_version" != "4"; then +- APU_CHECK_DB44("$all_places") ++ APU_CHECK_DB45("$all_places") + if test "$apu_db_version" != "4"; then +- APU_CHECK_DB43("$all_places") ++ APU_CHECK_DB44("$all_places") + if test "$apu_db_version" != "4"; then +- APU_CHECK_DB42("$all_places") ++ APU_CHECK_DB43("$all_places") + if test "$apu_db_version" != "4"; then +- APU_CHECK_DB41("$all_places") ++ APU_CHECK_DB42("$all_places") + if test "$apu_db_version" != "4"; then +- APU_CHECK_DB4("$all_places") ++ APU_CHECK_DB41("$all_places") + if test "$apu_db_version" != "4"; then +- APU_CHECK_DB3("$all_places") +- if test "$apu_db_version" != "3"; then +- APU_CHECK_DB2("$all_places") +- if test "$apu_db_version" != "2"; then +- APU_CHECK_DB1("$all_places") +- if test "$apu_db_version" != "1"; then +- APU_CHECK_DB185("$all_places") ++ APU_CHECK_DB4("$all_places") ++ if test "$apu_db_version" != "4"; then ++ APU_CHECK_DB3("$all_places") ++ if test "$apu_db_version" != "3"; then ++ APU_CHECK_DB2("$all_places") ++ if test "$apu_db_version" != "2"; then ++ APU_CHECK_DB1("$all_places") ++ if test "$apu_db_version" != "1"; then ++ APU_CHECK_DB185("$all_places") ++ fi + fi + fi + fi +@@ -763,11 +791,11 @@ + apu_db_version=0 + + AC_ARG_WITH(dbm, [APR_HELP_STRING([--with-dbm=DBM], [choose the DBM type to use. +- DBM={sdbm,gdbm,ndbm,db,db1,db185,db2,db3,db4,db41,db42,db43,db44,db45,db46,db47,db48,db50,db51}])], ++ DBM={sdbm,gdbm,ndbm,db,db1,db185,db2,db3,db4,db41,db42,db43,db44,db45,db46,db47,db48,db50,db51,db52}])], + [ + if test "$withval" = "yes"; then + AC_MSG_ERROR([--with-dbm needs to specify a DBM type to use. +- One of: sdbm, gdbm, ndbm, db, db1, db185, db2, db3, db4, db41, db42, db43, db44, db45, db46, db47, db48, db50, db51]) ++ One of: sdbm, gdbm, ndbm, db, db1, db185, db2, db3, db4, db41, db42, db43, db44, db45, db46, db47, db48, db50, db51, db52]) + fi + requested="$withval" + ], [ +@@ -978,6 +1006,10 @@ + apu_use_db=1 + apu_default_dbm=db5 + ;; ++ db52) ++ apu_use_db=1 ++ apu_default_dbm=db5 ++ ;; + default) + dnl ### use more sophisticated DBMs for the default? + apu_default_dbm="sdbm (default)" +@@ -985,7 +1017,7 @@ + ;; + *) + AC_MSG_ERROR([--with-dbm=$look_for is an unknown DBM type. +- Use one of: sdbm, gdbm, ndbm, db, db1, db185, db2, db3, db4, db41, db42, db43, db44, db45, db46, db47, db48, db50, db51]) ++ Use one of: sdbm, gdbm, ndbm, db, db1, db185, db2, db3, db4, db41, db42, db43, db44, db45, db46, db47, db48, db50, db51, db52]) + ;; + esac + diff --git a/dev-libs/apr/Manifest b/dev-libs/apr/Manifest new file mode 100644 index 00000000..ae9af1c9 --- /dev/null +++ b/dev-libs/apr/Manifest @@ -0,0 +1,3 @@ +AUX config.layout.patch 818 RMD160 dada232c8b85e6c3c62fbc6caa1d05f36164dc27 SHA1 3822a0ec508165dd189e1b750bdf4e7778b6c21e SHA256 eeacaf654f23084e842bff02b97c083a8da5b5c056fd086166ba2d250edf3181 +DIST apr-1.4.4.tar.bz2 759604 RMD160 3715774150253d024d79fcf3295f39f822229b85 SHA1 d05cd65ec169c06174ca7c8978179289777f8dae SHA256 15372afeb6bba4091c4662600dad8bc51e5e4ff15ce308fac286df8735eb544d +EBUILD apr-1.4.4.ebuild 2071 RMD160 902cca08c42df237d9dc3ab4e5c0c78537abe434 SHA1 99ee159927fce55f85075d7632c24b2b6df15464 SHA256 581672824416b51f3857a4bd4f6d0c1465a575eab5d4c9d1c691dd4123a886e4 diff --git a/dev-libs/apr/apr-1.4.4.ebuild b/dev-libs/apr/apr-1.4.4.ebuild new file mode 100644 index 00000000..c6b29274 --- /dev/null +++ b/dev-libs/apr/apr-1.4.4.ebuild @@ -0,0 +1,90 @@ +# Copyright 1999-2011 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-libs/apr/apr-1.4.4.ebuild,v 1.6 2011/05/14 19:30:43 armin76 Exp $ + +EAPI="3" + +inherit autotools eutils libtool multilib + +DESCRIPTION="Apache Portable Runtime Library" +HOMEPAGE="http://apr.apache.org/" +SRC_URI="mirror://apache/apr/${P}.tar.bz2" + +LICENSE="Apache-2.0" +SLOT="1" +KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 s390 sh sparc x86 ~sparc-fbsd ~x86-fbsd" +IUSE="doc elibc_FreeBSD older-kernels-compatibility +urandom +uuid" +RESTRICT="test" + +RDEPEND="uuid? ( !elibc_FreeBSD? ( >=sys-apps/util-linux-2.16 ) )" +DEPEND="${RDEPEND} + doc? ( app-doc/doxygen )" + +src_prepare() { + AT_M4DIR="build" eautoreconf + elibtoolize + + epatch "${FILESDIR}/config.layout.patch" +} + +src_configure() { + local myconf + + if use older-kernels-compatibility; then + local apr_cv_accept4 apr_cv_dup3 apr_cv_epoll_create1 apr_cv_sock_cloexec + export apr_cv_accept4="no" + export apr_cv_dup3="no" + export apr_cv_epoll_create1="no" + export apr_cv_sock_cloexec="no" + fi + + if use urandom; then + myconf+=" --with-devrandom=/dev/urandom" + else + myconf+=" --with-devrandom=/dev/random" + fi + + if ! use uuid; then + local apr_cv_osuuid + export apr_cv_osuuid="no" + fi + + CONFIG_SHELL="/bin/bash" econf \ + --enable-layout=gentoo \ + --enable-nonportable-atomics \ + --enable-threads \ + ${myconf} + + rm -f libtool +} + +src_compile() { + emake \ + LIBTOOL="${ROOT}usr/bin/libtool" \ + || die "emake failed" + + if use doc; then + emake \ + LIBTOOL="${ROOT}usr/bin/libtool" \ + dox || die "emake dox failed" + fi +} + +src_install() { + emake \ + DESTDIR="${D}" \ + LIBTOOL="${ROOT}usr/bin/libtool" \ + install || die "emake install failed" + + find "${ED}" -name "*.la" -print0 | xargs -0 rm -f + + dodoc CHANGES NOTICE README + + if use doc; then + dohtml -r docs/dox/html/* || die "dohtml failed" + fi + + # This file is only used on AIX systems, which Gentoo is not, + # and causes collisions between the SLOTs, so remove it. + rm -f "${D}usr/$(get_libdir)/apr.exp" +} diff --git a/dev-libs/apr/files/config.layout.patch b/dev-libs/apr/files/config.layout.patch new file mode 100644 index 00000000..66fa868c --- /dev/null +++ b/dev-libs/apr/files/config.layout.patch @@ -0,0 +1,25 @@ +--- config.layout.orig 2006-07-06 21:44:41.000000000 -0700 ++++ config.layout 2006-07-06 21:46:26.000000000 -0700 +@@ -229,3 +229,22 @@ + infodir: ${exec_prefix}/share/info + libsuffix: -${APR_MAJOR_VERSION} + ++ ++# Gentoo layout ++ ++ prefix: /usr ++ exec_prefix: ${prefix} ++ bindir: ${exec_prefix}/bin ++ sbindir: ${exec_prefix}/bin ++ libdir: ${exec_prefix}/lib ++ libexecdir: ${exec_prefix}/modules ++ mandir: ${prefix}/man ++ sysconfdir: ${prefix}/conf ++ datadir: /usr/share/apr-${APR_MAJOR_VERSION} ++ installbuilddir: ${datadir}/build-${APR_MAJOR_VERSION} ++ includedir: ${prefix}/include/apr-${APR_MAJOR_VERSION} ++ localstatedir: ${prefix} ++ libsuffix: -${APR_MAJOR_VERSION} ++ ++ ++ -- cgit v1.2.3