# # Platform Packages for Chakra, part of chakra-project.org # # maintainer : abveritas[at]chakra-project[dog]org> # maintainer : Manuel Tortosa pkgname=apache pkgver=2.4.3 pkgrel=3 pkgdesc='A high performance Unix-based HTTP server' arch=('x86_64') options=('!libtool') url='http://www.apache.org/dist/httpd' license=('Apache') backup=(etc/conf.d/apache 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/logrotate.d/httpd) depends=('openssl' 'zlib' 'apr-util' 'pcre' 'systemd>=189') optdepends=('lynx: apachectl status') install=${pkgname}.install source=("http://www.apache.org/dist/httpd/httpd-${pkgver}.tar.bz2" "http://www.apache.org/dist/httpd/httpd-${pkgver}.tar.bz2.asc" "http://mpm-itk.sesse.net/apache2.4-mpm-itk-2.4.2-01.patch" 'apache.conf.d' 'httpd.logrotate' 'chakra.layout' 'httpd.service' 'httpd-tmpfile.conf') md5sums=('87aaf7bc7e8715f0455997bb8c6791aa' 'c65a2229a7d15bc6f0e9730fc929a5c7' '7b5fb06ba65d80d40f19e32f95426486' '08b3c875f6260644f2f52b4056d656b0' '6382331e9700ed9e8cc78ea51887b537' '9404bc261cffce7ad88850f0569e9067' '4af19522704050f98ba13e40d3eaca0b' '110a056408252de4356be7f53872b11d') build() { cd "${srcdir}/httpd-${pkgver}" # apply the monolithic ITK patch # see http://mpm-itk.sesse.net/ patch -p1 -i "${srcdir}/apache2.4-mpm-itk-2.4.2-01.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}/chakra.layout" >> config.layout for mpm in prefork worker itk; do if [ "${mpm}" = 'itk' ]; then 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 autoconf fi mkdir -p "build-${mpm}" pushd "build-${mpm}" "${srcdir}/httpd-${pkgver}/configure" \ --enable-layout=Chakra \ --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/sbin/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 >/dev/null done } package() { cd "${srcdir}/httpd-${pkgver}" for mpm in prefork worker itk; do pushd "build-${mpm}" >/dev/null if [ "${mpm}" = 'prefork' ]; then make DESTDIR="${pkgdir}" install else install -m755 httpd "${pkgdir}/usr/sbin/httpd.${mpm}" fi popd >/dev/null done install -D -m644 "${srcdir}/httpd.logrotate" \ "${pkgdir}/etc/logrotate.d/httpd" install -D -m644 "${srcdir}/apache.conf.d" \ "${pkgdir}/etc/conf.d/apache" # systemd install -D -m644 "${srcdir}/httpd-tmpfile.conf" \ "${pkgdir}/usr/lib/tmpfiles.d/httpd.conf" install -d "${pkgdir}"/usr/lib/systemd/system install -D -m644 "${srcdir}/httpd.service" \ "${pkgdir}/usr/lib/systemd/system/" # symlinks for /etc/httpd ln -fs /var/log/httpd "${pkgdir}/etc/httpd/logs" ln -fs /var/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|' \ -e 's|#\(LoadModule negotiation_module modules/mod_negotiation.so\)|\1|' \ -e 's|#\(LoadModule userdir_module modules/mod_userdir.so\)|\1|' \ -e 's|#\(LoadModule slotmem_shm_module modules/mod_slotmem_shm.so\)|\1|' \ -i "${pkgdir}/etc/httpd/conf/httpd.conf" }