summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Wilcox <andy@protium.com>2006-12-07 19:36:49 +0000
committerAndrew Wilcox <andy@protium.com>2006-12-07 19:36:49 +0000
commitaa5a787f25f567632f53decbaee305315e6d1c58 (patch)
tree7a92c63bd7c99d5c8957487aead9465ec0275da0
parent21f0d4357067e495f29a752e529ee6f55a14f3d2 (diff)
apache2: native and cross compile patches and BB files
-rw-r--r--packages/apache2/.mtn2git_empty0
-rw-r--r--packages/apache2/apache2-2.2.3/.mtn2git_empty0
-rw-r--r--packages/apache2/apache2-2.2.3/apr-sockets-patch10
-rw-r--r--packages/apache2/apache2-2.2.3/configure-patch52
-rw-r--r--packages/apache2/apache2-2.2.3/dftables-makefile-patch10
-rw-r--r--packages/apache2/apache2-2.2.3/server-makefile-patch11
-rw-r--r--packages/apache2/apache2-native_2.2.3.bb44
-rw-r--r--packages/apache2/apache2_2.2.3.bb106
-rw-r--r--packages/apache2/files/.mtn2git_empty0
-rwxr-xr-xpackages/apache2/files/init70
10 files changed, 303 insertions, 0 deletions
diff --git a/packages/apache2/.mtn2git_empty b/packages/apache2/.mtn2git_empty
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/apache2/.mtn2git_empty
diff --git a/packages/apache2/apache2-2.2.3/.mtn2git_empty b/packages/apache2/apache2-2.2.3/.mtn2git_empty
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/apache2/apache2-2.2.3/.mtn2git_empty
diff --git a/packages/apache2/apache2-2.2.3/apr-sockets-patch b/packages/apache2/apache2-2.2.3/apr-sockets-patch
new file mode 100644
index 0000000000..5e974820b3
--- /dev/null
+++ b/packages/apache2/apache2-2.2.3/apr-sockets-patch
@@ -0,0 +1,10 @@
+--- httpd-2.2.3/srclib/apr/network_io/unix/sockets.c.orig
++++ httpd-2.2.3/srclib/apr/network_io/unix/sockets.c
+@@ -231,6 +231,7 @@
+ #if APR_O_NONBLOCK_INHERITED
+ if (apr_is_option_set(sock, APR_SO_NONBLOCK) == 1) {
+ apr_set_option(*new, APR_SO_NONBLOCK, 1);
++ apr_socket_opt_set(*new, APR_SO_NONBLOCK, 0);
+ }
+ #endif /* APR_O_NONBLOCK_INHERITED */
+
diff --git a/packages/apache2/apache2-2.2.3/configure-patch b/packages/apache2/apache2-2.2.3/configure-patch
new file mode 100644
index 0000000000..d173681fd5
--- /dev/null
+++ b/packages/apache2/apache2-2.2.3/configure-patch
@@ -0,0 +1,52 @@
+--- httpd-2.2.3/configure-orig 2006-08-11 11:00:11.000000000 -0700
++++ httpd-2.2.3/configure 2006-08-11 10:59:44.000000000 -0700
+@@ -2643,24 +2643,6 @@
+
+ else
+
+- if test -n "1" && test "1" = "1"; then
+- for apr_temp_apr_config_file in $apr_temp_acceptable_apr_config
+- do
+- if $apr_temp_apr_config_file --help > /dev/null 2>&1 ; then
+- apr_found="yes"
+- apr_config="$apr_temp_apr_config_file"
+- break
+- else
+- for lookdir in /usr /usr/local /usr/local/apr /opt/apr /usr/local/apache2; do
+- if $TEST_X "$lookdir/bin/$apr_temp_apr_config_file"; then
+- apr_found="yes"
+- apr_config="$lookdir/bin/$apr_temp_apr_config_file"
+- break 2
+- fi
+- done
+- fi
+- done
+- fi
+ if test "$apr_found" = "no" && test -d ""$srcdir/srclib/apr""; then
+ apr_temp_abs_srcdir="`cd "$srcdir/srclib/apr" && pwd`"
+ apr_found="reconfig"
+@@ -2979,24 +2961,6 @@
+
+ else
+
+- if test -n "1" && test "1" = "1"; then
+- for apu_temp_apu_config_file in $apu_temp_acceptable_apu_config
+- do
+- if $apu_temp_apu_config_file --help > /dev/null 2>&1 ; then
+- apu_found="yes"
+- apu_config="$apu_temp_apu_config_file"
+- break
+- else
+- for lookdir in /usr /usr/local /usr/local/apr /opt/apr /usr/local/apache2 ; do
+- if $TEST_X "$lookdir/bin/$apu_temp_apu_config_file"; then
+- apu_found="yes"
+- apu_config="$lookdir/bin/$apu_temp_apu_config_file"
+- break 2
+- fi
+- done
+- fi
+- done
+- fi
+ if test "$apu_found" = "no" && test -d ""$srcdir/srclib/apr-util""; then
+ apu_temp_abs_srcdir="`cd "$srcdir/srclib/apr-util" && pwd`"
+ apu_found="reconfig"
diff --git a/packages/apache2/apache2-2.2.3/dftables-makefile-patch b/packages/apache2/apache2-2.2.3/dftables-makefile-patch
new file mode 100644
index 0000000000..ac966db282
--- /dev/null
+++ b/packages/apache2/apache2-2.2.3/dftables-makefile-patch
@@ -0,0 +1,10 @@
+--- http-2.2.3/srclib/pcre/Makefile.in-orig
++++ http-2.2.3/srclib/pcre/Makefile.in 2005-12-20 13:12:03.000000000 -0500
+@@ -15,6 +15,6 @@
+ $(LINK) $(EXTRA_LDFLAGS) dftables.lo $(EXTRA_LIBS)
+
+ $(srcdir)/chartables.c: dftables
+- ./dftables $@
++ dftables $@
+
+ pcre.lo: $(srcdir)/chartables.c
diff --git a/packages/apache2/apache2-2.2.3/server-makefile-patch b/packages/apache2/apache2-2.2.3/server-makefile-patch
new file mode 100644
index 0000000000..f1349cb6a4
--- /dev/null
+++ b/packages/apache2/apache2-2.2.3/server-makefile-patch
@@ -0,0 +1,11 @@
+--- http-2.0.54/server/Makefile.in-old 2005-12-20 13:26:56.000000000 -0500
++++ http-2.0.54/server/Makefile.in 2005-12-20 13:27:22.000000000 -0500
+@@ -27,7 +27,7 @@
+ $(LINK) $(EXTRA_LDFLAGS) $(gen_test_char_OBJECTS) $(EXTRA_LIBS)
+
+ test_char.h: gen_test_char
+- ./gen_test_char > test_char.h
++ gen_test_char > test_char.h
+
+ util.lo: test_char.h
+
diff --git a/packages/apache2/apache2-native_2.2.3.bb b/packages/apache2/apache2-native_2.2.3.bb
new file mode 100644
index 0000000000..9e4d42e254
--- /dev/null
+++ b/packages/apache2/apache2-native_2.2.3.bb
@@ -0,0 +1,44 @@
+SECTION = "net"
+DEPENDS = "expat pcre"
+
+inherit native
+
+PR="r4"
+SRC_URI = "http://www.apache.org/dist/httpd/httpd-${PV}.tar.bz2"
+
+S = "${WORKDIR}/httpd-${PV}"
+
+do_configure () {
+ ./configure --prefix=${prefix}
+}
+
+do_populate_staging () {
+ cp srclib/pcre/dftables ../../../staging/i686-linux/bin/
+ cp server/gen_test_char ../../../staging/i686-linux/bin/
+ cp srclib/apr/apr-1-config ../../../staging/i686-linux/bin/
+ cp srclib/apr-util/apu-1-config ../../../staging/i686-linux/bin/
+ cp support/apxs ../../../staging/i686-linux/bin/
+ chmod 755 ../../../staging/i686-linux/bin/apxs
+ mkdir -p ../../../staging/build
+ cp build/*.mk ../../../staging/build
+ cat build/config_vars.mk | \
+ sed -e '/^prefix/s,staging,staging/i686-linux,' | \
+ sed -e '/^includedir/s,/include,/include/apache2,' | \
+ sed -e 's,staging/bin,staging/i686-linux/bin,' > \
+ ../../../staging/build/config_vars.mk
+ cp build/instdso.sh ../../../staging/build
+ cp .libs/httpd ../../../staging/i686-linux/bin
+
+ (cd srclib/apr/.libs; tar -cf - libapr-*.so* ) |
+ (cd ../../../staging/i686-linux/lib; tar -xf - )
+ (cd srclib/apr-util/.libs; tar -cf - libaprutil-*.so* ) |
+ (cd ../../../staging/i686-linux/lib; tar -xf - )
+
+ mkdir -p ../../../staging/i686-linux/include/apache2
+ cp include/* ../../../staging/i686-linux/include/apache2
+ cp os/unix/os.h ../../../staging/i686-linux/include/apache2
+ cp os/unix/unixd.h ../../../staging/i686-linux/include/apache2
+
+ cp support/envvars-std ../../../staging/i686-linux/bin/envvars
+ chmod 755 ../../../staging/i686-linux/bin/envvars
+}
diff --git a/packages/apache2/apache2_2.2.3.bb b/packages/apache2/apache2_2.2.3.bb
new file mode 100644
index 0000000000..4c95a25477
--- /dev/null
+++ b/packages/apache2/apache2_2.2.3.bb
@@ -0,0 +1,106 @@
+SECTION = "net"
+DESCRIPTION = "The apache v2 web server"
+DEPENDS = "apache2-native openssl expat pcre"
+RDEPENDS += "openssl"
+
+PR = "r4"
+
+SRC_URI = "http://apache.mirrors.tds.net/httpd/httpd-2.2.3.tar.bz2 \
+ file://dftables-makefile-patch;patch=1 \
+ file://apr-sockets-patch;patch=1 \
+ file://configure-patch;patch=1 \
+ file://server-makefile-patch;patch=1"
+
+#
+# over-ride needed since apache unpacks into httpd
+#
+S = "${WORKDIR}/httpd-${PV}"
+
+#
+# implications - autotools defines suitable do_configure, do_install, etc.
+# update-rc.d adds hooks for rc-update.
+#
+#
+inherit autotools update-rc.d
+
+#
+# implications - used by update-rc.d scripts
+#
+INITSCRIPT_NAME = "apache2"
+INITSCRIPT_PARAMS = "defaults 91 20"
+LEAD_SONAME = "libapr-1.so.0"
+
+CONFFILES_${PN} = "${sysconfdir}/${PN}/httpd.conf \
+ ${sysconfdir}/${PN}/magic \
+ ${sysconfdir}/${PN}/mime.types \
+ ${sysconfdir}/init.d/${PN} "
+
+#
+PACKAGES = "${PN}-doc ${PN}-dev ${PN}-dbg ${PN}"
+
+# we override here rather than append so that .so links are
+# included in the runtime package rather than here (-dev)
+# and to get build, icons, error into the -dev package
+FILES_${PN}-dev = "${datadir}/${PN}/build \
+ ${datadir}/${PN}/icons \
+ ${datadir}/${PN}/error \
+ ${bindir}/apr-config ${bindir}/apu-config \
+ ${libdir}/apr*.exp \
+ ${includedir}/${PN} \
+ ${libdir}/*.la \
+ ${libdir}/*.a"
+
+# manual to manual
+FILES_${PN}-doc += " ${datadir}/${PN}/manual"
+
+#
+# override this too - here is the default, less datadir
+#
+FILES_${PN} = "${bindir} ${sbindir} ${libexecdir} ${libdir}/lib*.so.* ${sysconfdir} \
+ ${sharedstatedir} ${localstatedir} /bin /sbin /lib/*.so* \
+ ${libdir}/${PN}"
+
+# we want htdocs and cgi-bin to go with the binary
+FILES_${PN} += "${datadir}/${PN}/htdocs ${datadir}/${PN}/cgi-bin"
+
+#make sure the lone .so links also get wrapped in the base package
+FILES_${PN} += " ${libdir}/lib*.so ${libdir}/pkgconfig/*"
+
+CFLAGS_append = " -DPATH_MAX=4096"
+CFLAGS_prepend = "-I${STAGING_INCDIR}/openssl "
+EXTRA_OECONF = "--enable-ssl \
+ --with-ssl=${STAGING_LIBDIR}/.. \
+ --with-expat=${STAGING_LIBDIR}/.. \
+ --enable-info \
+ --enable-rewrite \
+ --with-dbm=sdbm \
+ --with-berkeley-db=no \
+ --localstatedir=/var/${PN} \
+ --with-gdbm=no \
+ --with-ndbm=no \
+ --includedir=${includedir}/${PN} \
+ --datadir=${datadir}/${PN} \
+ --sysconfdir=${sysconfdir}/${PN} \
+ "
+
+#
+# here we over-ride the autotools provided do_configure.
+#
+do_configure() {
+ oe_runconf
+}
+
+do_install_append() {
+ install -d ${D}/${sysconfdir}/init.d
+ cat ${FILESDIR}/../files/init | \
+ sed -e 's,/usr/sbin/,${sbindir}/,g' \
+ -e 's,/usr/bin/,${bindir}/,g' \
+ -e 's,/usr/lib,${libdir}/,g' \
+ -e 's,/etc/,${sysconfdir}/,g' \
+ -e 's,/usr/,${prefix}/,g' > ${D}/${sysconfdir}/init.d/${PN}
+ chmod 755 ${D}/${sysconfdir}/init.d/${PN}
+# remove the goofy original files...
+ rm -rf ${D}/${sysconfdir}/${PN}/original
+# Expat should be found in the staging area via DEPENDS...
+ rm -f ${D}/${libdir}/libexpat.*
+}
diff --git a/packages/apache2/files/.mtn2git_empty b/packages/apache2/files/.mtn2git_empty
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/apache2/files/.mtn2git_empty
diff --git a/packages/apache2/files/init b/packages/apache2/files/init
new file mode 100755
index 0000000000..eb57f6686c
--- /dev/null
+++ b/packages/apache2/files/init
@@ -0,0 +1,70 @@
+#!/bin/sh
+ARGS="-D SSL -k start"
+NAME=apache2
+PATH=/bin:/usr/bin:/sbin:/usr/sbin
+DAEMON=/usr/sbin/httpd
+SUEXEC=/usr/lib/apache/suexec
+PIDFILE=/var/run/$NAME.pid
+CONF=/etc/apache2/httpd.conf
+APACHECTL=/usr/sbin/apachectl
+
+trap "" 1
+export LANG=C
+export PATH
+
+test -f $DAEMON || exit 0
+test -f $APACHECTL || exit 0
+
+# ensure we don't leak environment vars into apachectl
+APACHECTL="env -i LANG=${LANG} PATH=${PATH} $APACHECTL"
+
+if egrep -q -i "^[[:space:]]*ServerType[[:space:]]+inet" $CONF
+then
+ exit 0
+fi
+
+case "$1" in
+ start)
+ echo -n "Starting web server: $NAME"
+ start-stop-daemon --start --quiet --background --exec $DAEMON -- $ARGS
+ ;;
+
+ stop)
+ echo -n "Stopping web server: $NAME"
+ start-stop-daemon --stop --signal 3 --quiet --exec $DAEMON
+ ;;
+
+ reload)
+ echo -n "Reloading $NAME configuration"
+ start-stop-daemon --stop --signal 1 --quiet --exec $DAEMON
+ ;;
+
+ reload-modules)
+ echo -n "Reloading $NAME modules"
+ $0 stop
+ $0 start
+ ;;
+
+ restart)
+ $0 reload-modules
+ exit $?
+ ;;
+
+ force-reload)
+ $0 reload-modules
+ exit $?
+ ;;
+
+ *)
+ echo "Usage: /etc/init.d/$NAME {start|stop|reload|reload-modules|force-reload|restart}"
+ exit 1
+ ;;
+esac
+
+if [ $? = 0 ]; then
+ echo .
+ exit 0
+else
+ echo failed
+ exit 1
+fi