From eb72830fcf40b195e72fad06ca7e470565c21d8b Mon Sep 17 00:00:00 2001 From: Richard Purdie Date: Wed, 7 Jan 2009 17:22:15 +0000 Subject: Add apr, apt-util and subversion based on recipes from OE with tweaks from Josh/me --- meta/packages/apr/apr-util/configure_fixes.patch | 27 +++++++++ .../apr/apr-util/configure_fixes.patch.old | 25 ++++++++ meta/packages/apr/apr-util_1.3.4.bb | 26 +++++++++ meta/packages/apr/apr/configure_fixes.patch | 66 ++++++++++++++++++++++ meta/packages/apr/apr_1.3.3.bb | 30 ++++++++++ .../files/disable-revision-install.patch | 22 ++++++++ meta/packages/subversion/files/libtool2.patch | 17 ++++++ .../packages/subversion/files/neon-detection.patch | 36 ++++++++++++ meta/packages/subversion/subversion_1.4.5.bb | 29 ++++++++++ 9 files changed, 278 insertions(+) create mode 100644 meta/packages/apr/apr-util/configure_fixes.patch create mode 100644 meta/packages/apr/apr-util/configure_fixes.patch.old create mode 100644 meta/packages/apr/apr-util_1.3.4.bb create mode 100644 meta/packages/apr/apr/configure_fixes.patch create mode 100644 meta/packages/apr/apr_1.3.3.bb create mode 100644 meta/packages/subversion/files/disable-revision-install.patch create mode 100644 meta/packages/subversion/files/libtool2.patch create mode 100644 meta/packages/subversion/files/neon-detection.patch create mode 100644 meta/packages/subversion/subversion_1.4.5.bb diff --git a/meta/packages/apr/apr-util/configure_fixes.patch b/meta/packages/apr/apr-util/configure_fixes.patch new file mode 100644 index 000000000..0b2a0903e --- /dev/null +++ b/meta/packages/apr/apr-util/configure_fixes.patch @@ -0,0 +1,27 @@ +Index: apr-util-1.3.4/configure.in +=================================================================== +--- apr-util-1.3.4.orig/configure.in ++++ apr-util-1.3.4/configure.in +@@ -8,14 +8,14 @@ AC_INIT(export_vars.sh.in) + AC_CONFIG_HEADER(include/private/apu_config.h) + AC_CONFIG_AUX_DIR(build) + +-sinclude(build/apu-conf.m4) +-sinclude(build/apu-iconv.m4) +-sinclude(build/apu-hints.m4) +-sinclude(build/apr_common.m4) +-sinclude(build/find_apr.m4) +-sinclude(build/dbm.m4) +-sinclude(build/dbd.m4) +-sinclude(build/dso.m4) ++#sinclude(build/apu-conf.m4) ++#sinclude(build/apu-iconv.m4) ++#sinclude(build/apu-hints.m4) ++#sinclude(build/apr_common.m4) ++#sinclude(build/find_apr.m4) ++#sinclude(build/dbm.m4) ++#sinclude(build/dbd.m4) ++#sinclude(build/dso.m4) + + dnl Generate ./config.nice for reproducing runs of configure + dnl diff --git a/meta/packages/apr/apr-util/configure_fixes.patch.old b/meta/packages/apr/apr-util/configure_fixes.patch.old new file mode 100644 index 000000000..16f88b3bb --- /dev/null +++ b/meta/packages/apr/apr-util/configure_fixes.patch.old @@ -0,0 +1,25 @@ +Index: apr-util-1.2.12/configure.in +=================================================================== +--- apr-util-1.2.12.orig/configure.in 2008-03-08 19:15:00.000000000 +0000 ++++ apr-util-1.2.12/configure.in 2008-03-08 19:15:13.000000000 +0000 +@@ -8,13 +8,13 @@ + AC_CONFIG_HEADER(include/private/apu_config.h) + AC_CONFIG_AUX_DIR(build) + +-sinclude(build/apu-conf.m4) +-sinclude(build/apu-iconv.m4) +-sinclude(build/apu-hints.m4) +-sinclude(build/apr_common.m4) +-sinclude(build/find_apr.m4) +-sinclude(build/dbm.m4) +-sinclude(build/dbd.m4) ++#sinclude(build/apu-conf.m4) ++#sinclude(build/apu-iconv.m4) ++#sinclude(build/apu-hints.m4) ++#sinclude(build/apr_common.m4) ++#sinclude(build/find_apr.m4) ++#sinclude(build/dbm.m4) ++#sinclude(build/dbd.m4) + + dnl Generate ./config.nice for reproducing runs of configure + dnl diff --git a/meta/packages/apr/apr-util_1.3.4.bb b/meta/packages/apr/apr-util_1.3.4.bb new file mode 100644 index 000000000..590c22e88 --- /dev/null +++ b/meta/packages/apr/apr-util_1.3.4.bb @@ -0,0 +1,26 @@ +DESCRIPTION = "Apache Portable Runtime (APR) companion library" +SECTION = "libs" +DEPENDS = "apr expat gdbm" +LICENSE = "Apache License, Version 2.0" + +PR = "r2" + +SRC_URI = "${APACHE_MIRROR}/apr/${P}.tar.gz \ + file://configure_fixes.patch;patch=1" + +EXTRA_OECONF = "--with-apr=${STAGING_BINDIR_CROSS}/apr-1-config \ + --with-dbm=gdbm \ + --with-gdbm=${STAGING_DIR_HOST}${layout_prefix} \ + --without-sqlite2 \ + --without-sqlite3 \ + --with-expat=${STAGING_DIR_HOST}${layout_prefix}" + + +inherit autotools_stage lib_package binconfig + +OE_BINCONFIG_EXTRA_MANGLE = " -e 's:location=source:location=installed:'" + +do_configure_prepend() { + cp ${STAGING_DATADIR}/apr/apr_rules.mk ${S}/build/rules.mk +} + diff --git a/meta/packages/apr/apr/configure_fixes.patch b/meta/packages/apr/apr/configure_fixes.patch new file mode 100644 index 000000000..86ceb8cf0 --- /dev/null +++ b/meta/packages/apr/apr/configure_fixes.patch @@ -0,0 +1,66 @@ +Index: apr-1.3.3/configure.in +=================================================================== +--- apr-1.3.3.orig/configure.in ++++ apr-1.3.3/configure.in +@@ -794,39 +794,6 @@ AC_CHECK_FUNCS([mmap munmap shm_open shm + create_area]) + + APR_CHECK_DEFINE(MAP_ANON, sys/mman.h) +-AC_CHECK_FILE(/dev/zero) +- +-# Not all systems can mmap /dev/zero (such as HP-UX). Check for that. +-if test "$ac_cv_func_mmap" = "yes" && +- test "$ac_cv_file__dev_zero" = "yes"; then +- AC_MSG_CHECKING(for mmap that can map /dev/zero) +- AC_TRY_RUN([ +-#include +-#include +-#include +-#ifdef HAVE_SYS_MMAN_H +-#include +-#endif +- int main() +- { +- int fd; +- void *m; +- fd = open("/dev/zero", O_RDWR); +- if (fd < 0) { +- return 1; +- } +- m = mmap(0, sizeof(void*), PROT_READ|PROT_WRITE, MAP_SHARED, fd, 0); +- if (m == (void *)-1) { /* aka MAP_FAILED */ +- return 2; +- } +- if (munmap(m, sizeof(void*)) < 0) { +- return 3; +- } +- return 0; +- }], [], [ac_cv_file__dev_zero=no], [ac_cv_file__dev_zero=no]) +- +- AC_MSG_RESULT($ac_cv_file__dev_zero) +-fi + + # Now we determine which one is our anonymous shmem preference. + haveshmgetanon="0" +@@ -1518,13 +1485,14 @@ else + bigendian=0 + fi + +-APR_CHECK_SIZEOF_EXTENDED([#include +-#include ],struct iovec,0) +-if test "$ac_cv_sizeof_struct_iovec" = "0"; then +- have_iovec=0 +-else +- have_iovec=1 +-fi ++#APR_CHECK_SIZEOF_EXTENDED([#include ++##include ],struct iovec,0) ++#if test "$ac_cv_sizeof_struct_iovec" = "0"; then ++# have_iovec=0 ++#else ++# have_iovec=1 ++#fi ++have_iovec=1 + + AC_SUBST(voidp_size) + AC_SUBST(short_value) diff --git a/meta/packages/apr/apr_1.3.3.bb b/meta/packages/apr/apr_1.3.3.bb new file mode 100644 index 000000000..3e23bcd87 --- /dev/null +++ b/meta/packages/apr/apr_1.3.3.bb @@ -0,0 +1,30 @@ +DESCRIPTION = "Apache Portable Runtime (APR) library" +SECTION = "libs" +LICENSE = "Apache License, Version 2.0" + +PR = "r0" + +SRC_URI = "${APACHE_MIRROR}/apr/${P}.tar.bz2 \ + file://configure_fixes.patch;patch=1" + +inherit autotools lib_package binconfig + +OE_BINCONFIG_EXTRA_MANGLE = " -e 's:location=source:location=installed:'" + +do_configure_prepend() { + cd ${S} + ./buildconf +} + +do_stage() { + autotools_stage_all + install -d ${STAGING_DATADIR}/apr + cp ${S}/build/apr_rules.mk ${STAGING_DATADIR}/apr/ + sed -i s,apr_builddir=.*,apr_builddir=,g ${STAGING_DATADIR}/apr/apr_rules.mk + sed -i s,apr_builders=.*,apr_builders=,g ${STAGING_DATADIR}/apr/apr_rules.mk + sed -i s,LIBTOOL=.*,LIBTOOL=\$\(SHELL\)\ ${TARGET_PREFIX}libtool,g ${STAGING_DATADIR}/apr/apr_rules.mk + sed -i s,\$\(apr_builders\),${STAGING_DATADIR}/apr/,g ${STAGING_DATADIR}/apr/apr_rules.mk + cp ${S}/build/mkdir.sh ${STAGING_DATADIR}/apr/ + cp ${S}/build/make_exports.awk ${STAGING_DATADIR}/apr/ + cp ${S}/build/make_var_export.awk ${STAGING_DATADIR}/apr/ +} diff --git a/meta/packages/subversion/files/disable-revision-install.patch b/meta/packages/subversion/files/disable-revision-install.patch new file mode 100644 index 000000000..a1c60654c --- /dev/null +++ b/meta/packages/subversion/files/disable-revision-install.patch @@ -0,0 +1,22 @@ +--- subversion-1.2.0-r0/Makefile.in.old 2005-07-17 22:28:21.898728312 +0200 ++++ subversion-1.2.0-r0/Makefile.in 2005-07-17 22:30:05.361999504 +0200 +@@ -260,7 +260,7 @@ + clean: external-clean local-clean + distclean: external-distclean local-distclean + extraclean: external-extraclean local-extraclean +-install: external-install local-install revision-install ++install: external-install local-install #revision-install + + @INCLUDE_OUTPUTS@ + +@@ -320,8 +320,8 @@ + local-install: @INSTALL_RULES@ + + ### HACK!! Find a better way to do this +-revision-install: +- subversion/svnversion/svnversion $(top_srcdir) /repos/svn/trunk > $(DESTDIR)$(includedir)/subversion-1/svn-revision.txt ++#revision-install: ++# subversion/svnversion/svnversion $(top_srcdir) /repos/svn/trunk > $(DESTDIR)$(includedir)/subversion-1/svn-revision.txt + + install-static: @INSTALL_STATIC_RULES@ + diff --git a/meta/packages/subversion/files/libtool2.patch b/meta/packages/subversion/files/libtool2.patch new file mode 100644 index 000000000..a0163fd7f --- /dev/null +++ b/meta/packages/subversion/files/libtool2.patch @@ -0,0 +1,17 @@ +Index: subversion-1.4.5/configure.in +=================================================================== +--- subversion-1.4.5.orig/configure.in 2009-01-07 17:10:41.000000000 +0000 ++++ subversion-1.4.5/configure.in 2009-01-07 17:13:32.000000000 +0000 +@@ -138,10 +138,10 @@ + echo "using APR's libtool" + sh_libtool="`$apr_config --apr-libtool`" + LIBTOOL="$sh_libtool" + SVN_LIBTOOL="$sh_libtool" + else +- sh_libtool="$abs_builddir/libtool" +- SVN_LIBTOOL="\$(SHELL) $sh_libtool" ++ sh_libtool="$abs_builddir/$host_alias-libtool" ++ SVN_LIBTOOL="\$(abs_builddir)/$host_alias-libtool" + dnl libtoolize requires that the following line not be indented + AC_PROG_LIBTOOL + fi diff --git a/meta/packages/subversion/files/neon-detection.patch b/meta/packages/subversion/files/neon-detection.patch new file mode 100644 index 000000000..b567d5c05 --- /dev/null +++ b/meta/packages/subversion/files/neon-detection.patch @@ -0,0 +1,36 @@ +diff --git a/build/ac-macros/neon.m4 b/build/ac-macros/neon.m4 +index 9fcf859..8d964f3 100644 +--- a/build/ac-macros/neon.m4 ++++ b/build/ac-macros/neon.m4 +@@ -38,7 +38,7 @@ AC_DEFUN(SVN_LIB_NEON, + if test "$withval" = "yes" ; then + AC_MSG_ERROR([--with-neon requires an argument.]) + else +- neon_config="$withval/bin/neon-config" ++ neon_config="env env PKG_CONFIG_PATH=${withval}:${PKG_CONFIG_PATH} pkg-config neon" + fi + + SVN_NEON_CONFIG() +@@ -117,10 +117,10 @@ dnl SVN_NEON_CONFIG() + dnl neon-config found, gather relevant information from it + AC_DEFUN(SVN_NEON_CONFIG, + [ +- if test -f "$neon_config"; then +- if test "$neon_config" != ""; then ++ if true; then ++ if true; then + AC_MSG_CHECKING([neon library version]) +- NEON_VERSION=`$neon_config --version | sed -e 's/^neon //'` ++ NEON_VERSION=`$neon_config --modversion | sed -e 's/^neon //'` + AC_MSG_RESULT([$NEON_VERSION]) + + if test -n "`echo \"$NEON_VERSION\" | grep '^0\.25\.'`" ; then +@@ -133,7 +133,7 @@ AC_DEFUN(SVN_NEON_CONFIG, + test "$svn_allowed_neon" = "any"; then + svn_allowed_neon_on_system="yes" + SVN_NEON_INCLUDES=[`$neon_config --cflags | sed -e 's/-D[^ ]*//g'`] +- NEON_LIBS=`$neon_config --la-file` ++ NEON_LIBS=`$neon_config --libs` + CFLAGS=["$CFLAGS `$neon_config --cflags | sed -e 's/-I[^ ]*//g'`"] + svn_lib_neon="yes" + break diff --git a/meta/packages/subversion/subversion_1.4.5.bb b/meta/packages/subversion/subversion_1.4.5.bb new file mode 100644 index 000000000..40ba53e81 --- /dev/null +++ b/meta/packages/subversion/subversion_1.4.5.bb @@ -0,0 +1,29 @@ +DESCRIPTION = "The Subversion (svn) client" +SECTION = "console/network" +DEPENDS = "apr-util neon" +RDEPENDS = "neon" +LICENSE = "Apache BSD" +HOMEPAGE = "http://subversion.tigris.org" + +PR = "r1" + +SRC_URI = "http://subversion.tigris.org/downloads/${P}.tar.bz2 \ + file://disable-revision-install.patch;patch=1 \ + file://neon-detection.patch;patch=1 \ + file://libtool2.patch;patch=1" + +EXTRA_OECONF = "--with-neon=${STAGING_EXECPREFIXDIR} \ + --without-berkeley-db --without-apxs --without-apache \ + --without-swig --with-apr=${STAGING_BINDIR_CROSS} \ + --with-apr-util=${STAGING_BINDIR_CROSS}" + +inherit autotools_stage + +export LDFLAGS += " -L${STAGING_LIBDIR} " + +acpaths = "-I build/ -I build/ac-macros/" + +do_configure_prepend () { + rm -f ${S}/libtool + rm -f ${S}/build/libtool.m4 +} -- cgit v1.2.3