summarylogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.SRCINFO70
-rw-r--r--PKGBUILD170
-rw-r--r--apache.conf.d15
-rw-r--r--apache.install7
-rw-r--r--apache.tmpfiles.conf1
-rw-r--r--apachectl-confd.patch15
-rw-r--r--arch.layout22
-rw-r--r--httpd.logrotate6
-rw-r--r--httpd.service15
9 files changed, 321 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..b4eeeed03c96
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,70 @@
+# Generated by makepkg 4.2.1
+# Tue Jun 30 14:14:47 UTC 2015
+pkgbase = apache22
+ pkgdesc = A high performance Unix-based HTTP server
+ pkgver = 2.2.29
+ pkgrel = 1
+ url = http://www.apache.org/dist/httpd
+ install = apache.install
+ arch = i686
+ arch = x86_64
+ license = APACHE
+ depends = openssl
+ depends = zlib
+ depends = apr-util
+ depends = pcre
+ depends = systemd
+ optdepends = lynx: apachectl status
+ provides = apache=2.2.29
+ conflicts = apache
+ backup = etc/httpd/conf/httpd.conf
+ backup = etc/httpd/conf/extra/httpd-autoindex.conf
+ backup = etc/httpd/conf/extra/httpd-dav.conf
+ backup = etc/httpd/conf/extra/httpd-default.conf
+ backup = etc/httpd/conf/extra/httpd-info.conf
+ backup = etc/httpd/conf/extra/httpd-languages.conf
+ backup = etc/httpd/conf/extra/httpd-manual.conf
+ backup = etc/httpd/conf/extra/httpd-mpm.conf
+ backup = etc/httpd/conf/extra/httpd-multilang-errordoc.conf
+ backup = etc/httpd/conf/extra/httpd-ssl.conf
+ backup = etc/httpd/conf/extra/httpd-userdir.conf
+ backup = etc/httpd/conf/extra/httpd-vhosts.conf
+ backup = etc/conf.d/apache
+ backup = etc/logrotate.d/httpd
+ source = http://www.apache.org/dist/httpd/httpd-2.2.29.tar.bz2
+ source = http://mpm-itk.sesse.net/apache2.2-mpm-itk-2.2.17-01/02-rename-prefork-to-itk.patch
+ source = http://mpm-itk.sesse.net/apache2.2-mpm-itk-2.2.17-01/03-add-mpm-to-build-system.patch
+ source = http://mpm-itk.sesse.net/apache2.2-mpm-itk-2.2.17-01/04-correct-output-makefile-location.patch
+ source = http://mpm-itk.sesse.net/apache2.2-mpm-itk-2.2.17-01/05-add-copyright.patch
+ source = http://mpm-itk.sesse.net/apache2.2-mpm-itk-2.2.17-01/06-hook-just-after-merging-perdir-config.patch
+ source = http://mpm-itk.sesse.net/apache2.2-mpm-itk-2.2.17-01/07-base-functionality.patch
+ source = http://mpm-itk.sesse.net/apache2.2-mpm-itk-2.2.17-01/08-max-clients-per-vhost.patch
+ source = http://mpm-itk.sesse.net/apache2.2-mpm-itk-2.2.17-01/09-capabilities.patch
+ source = http://mpm-itk.sesse.net/apache2.2-mpm-itk-2.2.17-01/10-nice.patch
+ source = http://mpm-itk.sesse.net/apache2.2-mpm-itk-2.2.17-01/11-fix-htaccess-reads-for-persistent-connections.patch
+ source = apachectl-confd.patch
+ source = apache.conf.d
+ source = apache.tmpfiles.conf
+ source = httpd.logrotate
+ source = httpd.service
+ source = arch.layout
+ md5sums = 579342fdeaa7b8b68d17fee91f8fab6e
+ md5sums = f1d9d41360908ceb2374da55ae99197a
+ md5sums = cdfa04985a0efa850976aef01c2a0c40
+ md5sums = 0930d2d0612eb0a53a0d00aea7e8687f
+ md5sums = 3a0c29bb91442c33ea73ebbe072af922
+ md5sums = 0ef4729a6f1ffc848ad0e9b440a66f66
+ md5sums = 940944caa948340b11ddae56adaef89b
+ md5sums = ce09a987523884de8838f73dc8ec0d19
+ md5sums = e75b7dd8d8afcd299ba4ab2ab81c11e4
+ md5sums = ce1ccc21f3ad8625169c8f62913450ac
+ md5sums = 1e5b222edcfbf99a3edc56fcb2074fbe
+ md5sums = 4ac64df6e019edbe137017cba1ff2f51
+ md5sums = 08b3c875f6260644f2f52b4056d656b0
+ md5sums = 82068753dab92fe86312b1010a2904d7
+ md5sums = 13dbaaf949c5bc36cfcf5718b95cb020
+ md5sums = a823bb355c136fd0e2b3fb820e2d903c
+ md5sums = 6b7122245a67597230a3b3f317eaf34e
+
+pkgname = apache22
+
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..7a039048bec4
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,170 @@
+# Maintainer: Igor Lakic aka trzalica <trzalica87 at gmail dot com>
+# Contributor: Rob McCathie <archaur at rmcc dot com dot au>
+# Contributor: Jan de Groot <jgc@archlinux.org>
+# Contributor: Andrea Scarpino <andrea@archlinux.org>
+# Contributor: Pierre Schmitz <pierre@archlinux.de>
+
+_name=apache
+pkgname=apache22
+pkgver=2.2.29
+pkgrel=1
+pkgdesc='A high performance Unix-based HTTP server'
+arch=('i686' 'x86_64')
+url='http://www.apache.org/dist/httpd'
+license=('APACHE')
+backup=(etc/httpd/conf/httpd.conf
+ etc/httpd/conf/extra/httpd-{autoindex,dav,default,info,languages}.conf
+ etc/httpd/conf/extra/httpd-{manual,mpm,multilang-errordoc}.conf
+ etc/httpd/conf/extra/httpd-{ssl,userdir,vhosts}.conf
+ etc/conf.d/apache
+ etc/logrotate.d/httpd)
+depends=('openssl' 'zlib' 'apr-util' 'pcre' 'systemd')
+optdepends=('lynx: apachectl status')
+provides=("$_name=$pkgver")
+conflicts=("$_name")
+install=apache.install
+_itkurl=http://mpm-itk.sesse.net/apache2.2-mpm-itk-2.2.17-01
+source=(http://www.apache.org/dist/httpd/httpd-${pkgver}.tar.bz2
+ ${_itkurl}/02-rename-prefork-to-itk.patch
+ ${_itkurl}/03-add-mpm-to-build-system.patch
+ ${_itkurl}/04-correct-output-makefile-location.patch
+ ${_itkurl}/05-add-copyright.patch
+ ${_itkurl}/06-hook-just-after-merging-perdir-config.patch
+ ${_itkurl}/07-base-functionality.patch
+ ${_itkurl}/08-max-clients-per-vhost.patch
+ ${_itkurl}/09-capabilities.patch
+ ${_itkurl}/10-nice.patch
+ ${_itkurl}/11-fix-htaccess-reads-for-persistent-connections.patch
+ apachectl-confd.patch
+ apache.conf.d
+ apache.tmpfiles.conf
+ httpd.logrotate
+ httpd.service
+ arch.layout)
+md5sums=('579342fdeaa7b8b68d17fee91f8fab6e'
+ 'f1d9d41360908ceb2374da55ae99197a'
+ 'cdfa04985a0efa850976aef01c2a0c40'
+ '0930d2d0612eb0a53a0d00aea7e8687f'
+ '3a0c29bb91442c33ea73ebbe072af922'
+ '0ef4729a6f1ffc848ad0e9b440a66f66'
+ '940944caa948340b11ddae56adaef89b'
+ 'ce09a987523884de8838f73dc8ec0d19'
+ 'e75b7dd8d8afcd299ba4ab2ab81c11e4'
+ 'ce1ccc21f3ad8625169c8f62913450ac'
+ '1e5b222edcfbf99a3edc56fcb2074fbe'
+ '4ac64df6e019edbe137017cba1ff2f51'
+ '08b3c875f6260644f2f52b4056d656b0'
+ '82068753dab92fe86312b1010a2904d7'
+ '13dbaaf949c5bc36cfcf5718b95cb020'
+ 'a823bb355c136fd0e2b3fb820e2d903c'
+ '6b7122245a67597230a3b3f317eaf34e')
+
+build() {
+ cd "${srcdir}/httpd-${pkgver}"
+
+ patch -Np0 -i "${srcdir}/apachectl-confd.patch"
+
+ # set default user
+ sed -e 's#User daemon#User http#' \
+ -e 's#Group daemon#Group http#' \
+ -i docs/conf/httpd.conf.in
+
+ cat "${srcdir}/arch.layout" >> config.layout
+
+ cd ..
+ cp -r httpd-${pkgver} httpd-itk-${pkgver}
+
+ cd httpd-itk-${pkgver}
+
+ # Fix patch to apply with latest Apache version
+ sed -i -e 's/mpmt_os2}/mpmt_os2|winnt}/g' "${srcdir}/03-add-mpm-to-build-system.patch"
+
+ mkdir -p server/mpm/experimental/itk
+ cp -r server/mpm/prefork/* server/mpm/experimental/itk/
+ mv server/mpm/experimental/itk/prefork.c server/mpm/experimental/itk/itk.c
+
+ patch -Np1 -i "${srcdir}/02-rename-prefork-to-itk.patch"
+ patch -Np1 -i "${srcdir}/03-add-mpm-to-build-system.patch"
+ patch -Np1 -i "${srcdir}/04-correct-output-makefile-location.patch"
+ patch -Np1 -i "${srcdir}/05-add-copyright.patch"
+ patch -Np1 -i "${srcdir}/06-hook-just-after-merging-perdir-config.patch"
+ patch -Np1 -i "${srcdir}/07-base-functionality.patch"
+ patch -Np1 -i "${srcdir}/08-max-clients-per-vhost.patch"
+ patch -Np1 -i "${srcdir}/09-capabilities.patch"
+ patch -Np1 -i "${srcdir}/10-nice.patch"
+ patch -Np1 -i "${srcdir}/11-fix-htaccess-reads-for-persistent-connections.patch"
+
+ autoconf
+ cd ..
+ for mpm in prefork worker itk; do
+ if [ "${mpm}" = "itk" ]; then
+ CONFIGURE=../httpd-itk-${pkgver}/configure
+ else
+ CONFIGURE=../httpd-${pkgver}/configure
+ fi
+
+ mkdir build-${mpm}
+ pushd build-${mpm}
+ $CONFIGURE --enable-layout=Arch \
+ --enable-modules=all \
+ --enable-mods-shared=all \
+ --enable-so \
+ --enable-suexec \
+ --with-suexec-caller=http \
+ --with-suexec-docroot=/srv/http \
+ --with-suexec-logfile=/var/log/httpd/suexec.log \
+ --with-suexec-bin=/usr/bin/suexec \
+ --with-suexec-uidmin=99 --with-suexec-gidmin=99 \
+ --enable-ldap --enable-authnz-ldap \
+ --enable-cache --enable-disk-cache --enable-mem-cache --enable-file-cache \
+ --enable-ssl --with-ssl \
+ --enable-deflate --enable-cgid \
+ --enable-proxy --enable-proxy-connect \
+ --enable-proxy-http --enable-proxy-ftp \
+ --enable-dbd \
+ --with-apr=/usr/bin/apr-1-config \
+ --with-apr-util=/usr/bin/apu-1-config \
+ --with-pcre=/usr \
+ --with-mpm=${mpm}
+ make
+ popd
+ done
+}
+
+package() {
+ cd "${srcdir}"
+ cd build-prefork
+ make DESTDIR="${pkgdir}" install
+ cd ..
+
+ install -m755 build-worker/httpd "${pkgdir}/usr/bin/httpd.worker"
+ install -m755 build-itk/httpd "${pkgdir}/usr/bin/httpd.itk"
+
+ install -D -m644 "${srcdir}/httpd.logrotate" "${pkgdir}/etc/logrotate.d/httpd"
+ install -D -m644 "${srcdir}/apache.conf.d" "${pkgdir}/etc/conf.d/apache"
+ install -D -m644 "${srcdir}/apache.tmpfiles.conf" "${pkgdir}/usr/lib/tmpfiles.d/apache.conf"
+
+ # symlinks for /etc/httpd
+ ln -fs /var/log/httpd "${pkgdir}/etc/httpd/logs"
+ ln -fs /run/httpd "${pkgdir}/etc/httpd/run"
+ ln -fs /usr/lib/httpd/modules "${pkgdir}/etc/httpd/modules"
+ ln -fs /usr/lib/httpd/build "${pkgdir}/etc/httpd/build"
+
+ # set sane defaults
+ sed -e 's#/usr/lib/httpd/modules/#modules/#' \
+ -e 's|#\(Include conf/extra/httpd-multilang-errordoc.conf\)|\1|' \
+ -e 's|#\(Include conf/extra/httpd-autoindex.conf\)|\1|' \
+ -e 's|#\(Include conf/extra/httpd-languages.conf\)|\1|' \
+ -e 's|#\(Include conf/extra/httpd-userdir.conf\)|\1|' \
+ -e 's|#\(Include conf/extra/httpd-default.conf\)|\1|' \
+ -i "${pkgdir}/etc/httpd/conf/httpd.conf"
+
+ # cleanup
+ rm -rf "${pkgdir}/usr/share/httpd/manual"
+ rm -rf "${pkgdir}/etc/httpd/conf/original"
+ rm -rf "${pkgdir}/srv/"
+ rm -rf "${pkgdir}/run"
+
+ install -m755 -d "${pkgdir}/usr/lib/systemd/system"
+ install -m644 "${srcdir}/httpd.service" "${pkgdir}/usr/lib/systemd/system/"
+}
diff --git a/apache.conf.d b/apache.conf.d
new file mode 100644
index 000000000000..c6d0ebf52d7f
--- /dev/null
+++ b/apache.conf.d
@@ -0,0 +1,15 @@
+# Configuration file for the httpd service.
+
+#
+# The default processing model (MPM) is the process-based
+# 'prefork' model. A thread-based model, 'worker', is also
+# available, but does not work with some modules (such as PHP).
+# The service must be stopped before changing this variable.
+#
+#HTTPD=/usr/sbin/httpd.worker
+
+#
+# To pass additional options (for instance, -D definitions) to the
+# httpd binary at startup, set OPTIONS here.
+#
+#OPTIONS=
diff --git a/apache.install b/apache.install
new file mode 100644
index 000000000000..e7b72b74f4d2
--- /dev/null
+++ b/apache.install
@@ -0,0 +1,7 @@
+post_install() {
+ systemd-tmpfiles --create apache.conf
+}
+
+post_upgrade() {
+ systemd-tmpfiles --create apache.conf
+}
diff --git a/apache.tmpfiles.conf b/apache.tmpfiles.conf
new file mode 100644
index 000000000000..744775282cb9
--- /dev/null
+++ b/apache.tmpfiles.conf
@@ -0,0 +1 @@
+d /run/httpd 0755 root root -
diff --git a/apachectl-confd.patch b/apachectl-confd.patch
new file mode 100644
index 000000000000..d0f4b699e932
--- /dev/null
+++ b/apachectl-confd.patch
@@ -0,0 +1,15 @@
+--- support/apachectl.in.orig 2010-03-06 18:09:11.000000000 +0100
++++ support/apachectl.in 2010-03-06 18:12:31.000000000 +0100
+@@ -56,6 +56,12 @@
+ # the URL to your server's mod_status status page. If you do not
+ # have one, then status and fullstatus will not work.
+ STATUSURL="http://localhost:@PORT@/server-status"
++
++# Source /etc/conf.d/apache for $HTTPD setting, etc.
++if [ -r /etc/conf.d/apache ]; then
++ . /etc/conf.d/apache
++fi
++
+ #
+ # Set this variable to a command that increases the maximum
+ # number of file descriptors allowed per child process. This is
diff --git a/arch.layout b/arch.layout
new file mode 100644
index 000000000000..d5d2e8a08f84
--- /dev/null
+++ b/arch.layout
@@ -0,0 +1,22 @@
+<Layout Arch>
+ prefix: /etc/httpd
+ exec_prefix: /usr
+ bindir: /usr/bin
+ sbindir: /usr/bin
+ libdir: /usr/lib/httpd
+ libexecdir: /usr/lib/httpd/modules
+ mandir: /usr/share/man
+ sysconfdir: /etc/httpd/conf
+ datadir: /usr/share/httpd
+ installbuilddir: /usr/lib/httpd/build
+ errordir: /usr/share/httpd/error
+ iconsdir: /usr/share/httpd/icons
+ htdocsdir: /srv/http
+ manualdir: /usr/share/httpd/manual
+ cgidir: /srv/http/cgi-bin
+ includedir: /usr/include/httpd
+ localstatedir: /var
+ runtimedir: /run/httpd
+ logfiledir: /var/log/httpd
+ proxycachedir: /var/cache/httpd
+</Layout> \ No newline at end of file
diff --git a/httpd.logrotate b/httpd.logrotate
new file mode 100644
index 000000000000..c9755de149e0
--- /dev/null
+++ b/httpd.logrotate
@@ -0,0 +1,6 @@
+/var/log/httpd/*log {
+ missingok
+ postrotate
+ /bin/kill -HUP `cat /run/httpd/httpd.pid 2>/dev/null` 2> /dev/null || true
+ endscript
+}
diff --git a/httpd.service b/httpd.service
new file mode 100644
index 000000000000..247e28fba9fb
--- /dev/null
+++ b/httpd.service
@@ -0,0 +1,15 @@
+[Unit]
+Description=Apache Web Server
+After=network.target remote-fs.target nss-lookup.target
+
+[Service]
+Type=forking
+PIDFile=/run/httpd/httpd.pid
+ExecStart=/usr/bin/apachectl start
+ExecStop=/usr/bin/apachectl graceful-stop
+ExecReload=/usr/bin/apachectl graceful
+PrivateTmp=true
+LimitNOFILE=infinity
+
+[Install]
+WantedBy=multi-user.target