aports/main/apache2/APKBUILD
Andy Postnikov 57ba71e078 main/apache2: upgrade to 2.4.25
Security release http://www.apache.org/dist/httpd/CHANGES_2.4.25
Also it includes previous patch for httpoxy
2016-12-27 09:35:24 +02:00

355 lines
14 KiB
Plaintext

# Maintainer: Kaarle Ritvanen <kaarle.ritvanen@datakunkku.fi>
# Contributor: Valery Kartel <valery.kartel@gmail.com>
pkgname=apache2
_pkgreal=httpd
pkgver=2.4.25
pkgrel=0
pkgdesc="A high performance Unix-based HTTP server"
url="http://httpd.apache.org/"
arch="all"
license="ASL 2.0"
depends=""
install="$pkgname.pre-install $pkgname.pre-upgrade"
pkgusers="apache"
pkggroups="apache"
makedepends="apr-dev apr-util-dev autoconf automake libxml2-dev lua-dev
nghttp2-dev libressl-dev pcre-dev sed zlib-dev"
subpackages="$pkgname-dev
$pkgname-doc
$pkgname-error:_error:noarch
$pkgname-http2
$pkgname-icons::noarch
$pkgname-ldap
$pkgname-lua:_lua
$pkgname-proxy-html:proxy_html
$pkgname-proxy
$pkgname-ssl
$pkgname-utils
$pkgname-webdav"
source="http://archive.apache.org/dist/$_pkgreal/$_pkgreal-$pkgver.tar.bz2
apache2.confd
apache2.logrotate
apache2.initd
alpine.layout
conf/0001-httpd.conf-ServerRoot.patch
conf/0002-httpd.conf-ServerTokens.patch
conf/0003-httpd.conf-ServerSignature.patch
conf/0004-httpd.conf-User-Group.patch
conf/0005-httpd.conf-ErrorLog-CustomLog-TransferLog.patch
conf/0006-httpd-dav.conf-DavLockDB.patch
conf/0007-httpd-ssl.conf-SSLSessionCache.patch
conf/0008-httpd-ssl.conf-SSLRandomSeed.patch
conf/0009-httpd-ssl.conf-SSL-File.patch
conf/0010-httpd-ssl.conf-SSL-CipherSuite.patch
conf/0011-httpd.conf-IncludeOptional.patch
conf/0012-httpd.conf-MIMEMagicFile.patch
conf/0013-httpd-.conf-IfModule.patch
conf/0014-httpd-.conf-LoadModule.patch
"
options="suid"
builddir="$srcdir"/$_pkgreal-$pkgver
prepare() {
cd "$builddir"
for i in $source; do
case $i in
*.patch) msg $i; patch -p1 -i "$srcdir"/$(basename $i) || return 1;;
esac
done
cat "$srcdir/alpine.layout" >> config.layout
}
build() {
cd "$builddir"
./configure \
--prefix=/usr \
--enable-layout=Alpine \
--enable-so \
--enable-suexec \
--with-suexec-caller=apache \
--with-suexec-docroot=/var/www \
--with-suexec-logfile=/var/log/apache2/suexec.log \
--with-suexec-bin=/usr/sbin/suexec \
--with-suexec-uidmin=99 \
--with-suexec-gidmin=99 \
--with-apr=/usr/bin/apr-1-config \
--with-apr-util=/usr/bin/apu-1-config \
--with-pcre=/usr \
--enable-mods-shared=all \
--enable-mpms-shared=all \
--with-mpm=prefork \
--enable-ssl \
--with-ssl \
--enable-proxy \
--enable-cache \
--enable-disk-cache \
--enable-mem-cache \
--enable-file-cache \
--enable-ldap \
--enable-authnz-ldap \
--enable-cgid \
--enable-cgi \
--enable-authn-anon \
--enable-authn-alias \
--disable-imagemap \
--enable-proxy-connect \
--enable-proxy-http \
--enable-proxy-ftp \
--enable-deflate \
--enable-dbd \
--enable-exception-hook \
--enable-dav \
--enable-dav-fs \
--enable-dav-lock \
|| return 1
make || return 1
}
package() {
cd "$builddir"
make -j1 DESTDIR="$pkgdir" install || return 1
# config
rm -r "$pkgdir"/etc/apache2/extra/httpd-vhosts.conf \
"$pkgdir"/etc/apache2/original || return 1
mv "$pkgdir"/etc/apache2/extra "$pkgdir"/etc/apache2/conf.d || return 1
for file in "$pkgdir"/etc/apache2/conf.d/httpd-*; do
mv "$file" \
"$(dirname $file)/${file#$pkgdir/etc/apache2/conf.d/httpd-}" || \
return 1
done
sed -Ei \
's:^(\t?#?LoadModule .+ )lib/apache2/:\1modules/:;ta;b;:a;s/^#?LoadModule (dav.*|lbmethod_.+|.*ldap|lua|proxy.*|ssl|xml2enc)_module //;tb;b;:b;d' \
"$pkgdir"/etc/apache2/httpd.conf
# init scripts and logrotate
install -D -m755 "$srcdir"/apache2.initd \
"$pkgdir"/etc/init.d/apache2 || return 1
install -D -m644 "$srcdir"/apache2.logrotate \
"$pkgdir"/etc/logrotate.d/apache2 || return 1
install -D -m644 "$srcdir"/apache2.confd \
"$pkgdir"/etc/conf.d/apache2 || return 1
install -d "$pkgdir"/var/www || return 1
install -d -m 2750 -g wheel "$pkgdir"/var/log/apache2 || return 1
ln -fs /var/log/apache2 "$pkgdir"/var/www/logs
ln -fs /run/apache2 "$pkgdir"/var/www/run
ln -fs /usr/lib/apache2 "$pkgdir"/var/www/modules
rm -fr "$pkgdir"/run
# verify all MPMs are built
# ref #2866
for i in prefork event worker; do
if ! [ -e "$pkgdir"/usr/lib/apache2/mod_mpm_$i.so ]; then
error "$i MPM was not built"
return 1
fi
done
}
_make_conf_dir() {
_conf_dir=$subpkgdir/etc/apache2/conf.d
install -d "$_conf_dir"
}
_mv_conf() {
_make_conf_dir && mv "$pkgdir"/etc/apache2/conf.d/$1.conf "$_conf_dir"
}
_load_mod() {
_make_conf_dir
echo "LoadModule $1_module modules/mod_$1.so" >> \
"$_conf_dir"/${subpkgname#$pkgname-}.conf
}
_load_mods() {
local path mod
for path in "$subpkgdir"/usr/lib/apache2/mod_*.so; do
mod=${path##/*mod_}
_load_mod ${mod%.so}
done
}
# include the builddir and apxs in -dev package
dev() {
local _mpm
local _file
default_dev
depends="$depends perl apr-util-dev"
# install apxs utility
install -d "$subpkgdir"/usr/bin
mv "$pkgdir"/usr/bin/apxs \
"$subpkgdir"/usr/bin/apxs || return 1
install -d "$subpkgdir"/usr/share/apache2
mv "$pkgdir"/usr/share/apache2/build \
"$subpkgdir"/usr/share/apache2/ || return 1
}
doc() {
default_doc && _mv_conf manual
}
_error() {
pkgdesc="Apache Multi Language Custom Error Documents"
install -d "$subpkgdir"/usr/share/apache2
mv "$pkgdir"/usr/share/apache2/error \
"$subpkgdir"/usr/share/apache2/ || return 1
_mv_conf multilang-errordoc
}
http2() {
pkgdesc="HTTP/2 transport layer for the Apache HTTP Server"
install -d "$subpkgdir"/usr/lib/apache2
mv "$pkgdir"/usr/lib/apache2/mod_http2.so \
"$subpkgdir"/usr/lib/apache2 || return 1
_load_mods
}
icons() {
pkgdesc="Apache Public Domain Icons"
install -d "$subpkgdir"/usr/share/apache2
mv "$pkgdir"/usr/share/apache2/icons \
"$subpkgdir"/usr/share/apache2/ || return 1
_mv_conf autoindex
}
utils() {
local _bin
pkgdesc="Apache utility programs for webservers"
depends=lynx
install -d "$subpkgdir"/usr/sbin || return 1
mv "$pkgdir"/usr/bin "$subpkgdir"/usr/
for i in checkgid htcacheclean rotatelogs apachectl envvars*; do
mv "$pkgdir"/usr/sbin/$i "$subpkgdir"/usr/sbin/ || return 1
done
}
ssl() {
pkgdesc="SSL/TLS module for the Apache HTTP Server"
install="apache2-ssl.post-install"
depends="apache2 libressl"
install -d "$subpkgdir"/usr/lib/apache2 || return 1
mv "$pkgdir"/usr/lib/apache2/mod_ssl.so \
"$subpkgdir"/usr/lib/apache2/mod_ssl.so || return 1
_mv_conf ssl || return 1
install -d "$subpkgdir"/etc/ssl/apache2 || return 1
}
ldap() {
pkgdesc="LDAP authentication/authorization module for the Apache HTTP Server"
url="http://httpd.apache.org/docs/2.4/mod/mod_authnz_ldap.html"
depends="apache2 apr-util-ldap"
install -d "$subpkgdir"/usr/lib/apache2 || return 1
mv "$pkgdir"/usr/lib/apache2/mod_*ldap.so \
"$subpkgdir"/usr/lib/apache2/ || return 1
_load_mods
}
webdav() {
pkgdesc="WebDAV support for the Apache HTTP Server"
depends="apache2"
replaces="apache2"
install -d "$subpkgdir"/usr/lib/apache2 || return 1
mv "$pkgdir"/usr/lib/apache2/mod_dav*.so \
"$subpkgdir"/usr/lib/apache2/ || return 1
_mv_conf dav
}
proxy_html() {
pkgdesc="HTML and XML content filters for the Apache HTTP Server"
depends="apache2"
install -d "$subpkgdir"/usr/lib/apache2 || return 1
mv "$pkgdir"/usr/lib/apache2/mod_proxy_html.so \
"$pkgdir"/usr/lib/apache2/mod_xml2enc.so \
"$subpkgdir"/usr/lib/apache2/ || return 1
_mv_conf proxy-html
}
proxy() {
pkgdesc="Proxy modules for the Apache HTTP Server"
depends="apache2"
install -d "$subpkgdir"/usr/lib/apache2 || return 1
mv "$pkgdir"/usr/lib/apache2/mod_proxy*.so \
"$pkgdir"/usr/lib/apache2/mod_lbmethod_*.so \
"$subpkgdir"/usr/lib/apache2/ || return 1
_load_mod watchdog
_load_mods
}
_lua() {
pkgdesc="Lua support for the Apache HTTP server"
depends="apache2"
install -d "$subpkgdir"/usr/lib/apache2 || return 1
mv "$pkgdir"/usr/lib/apache2/mod_lua.so \
"$subpkgdir"/usr/lib/apache2/ || return 1
_load_mods
}
md5sums="2826f49619112ad5813c0be5afcc7ddb httpd-2.4.25.tar.bz2
257d2572921dd4506b0464441f88fab4 apache2.confd
8519af87c57b50441866ad4216e4d663 apache2.logrotate
11b2718d7a0550498aaddf41e940ad04 apache2.initd
699aec01d2f7c5a67c10d0fe280780b7 alpine.layout
56bbe9e4e83bbea1366dc107471ab64e 0001-httpd.conf-ServerRoot.patch
3bd91de3d0063eafa0a07a950fb9041d 0002-httpd.conf-ServerTokens.patch
29a501f82c81c00cd51cc8de91eee988 0003-httpd.conf-ServerSignature.patch
968d320d0dead0eeb10a425e0c9e2e59 0004-httpd.conf-User-Group.patch
88f9a51476a813b97510d2bdb4b2ccd4 0005-httpd.conf-ErrorLog-CustomLog-TransferLog.patch
592ed15071a0d1b47315a06e395b03e2 0006-httpd-dav.conf-DavLockDB.patch
0c3a6b8826876098fee8ccae5f732758 0007-httpd-ssl.conf-SSLSessionCache.patch
42d0ebb0d5cdf66611eb45316d27bb44 0008-httpd-ssl.conf-SSLRandomSeed.patch
52513e71652fc180458d367f4d8b866b 0009-httpd-ssl.conf-SSL-File.patch
794a51cec6712b6c0a1359d1812d2c7c 0010-httpd-ssl.conf-SSL-CipherSuite.patch
aa73ec65c4c67819f297e48da8d3fb8e 0011-httpd.conf-IncludeOptional.patch
605536ff208f88ea97331b6b5d03278f 0012-httpd.conf-MIMEMagicFile.patch
78f648c86a895107a9381374d5497f51 0013-httpd-.conf-IfModule.patch
3c873b99a197a7fa1792bc7fa5b05233 0014-httpd-.conf-LoadModule.patch"
sha256sums="f87ec2df1c9fee3e6bfde3c8b855a3ddb7ca1ab20ca877bd0e2b6bf3f05c80b2 httpd-2.4.25.tar.bz2
6ca904ad65c1a4122d8ea4a3303ea8184429a4a4d7fb81defc30f3e184258c0a apache2.confd
8e2a8870d51796cf04cc7d8985c43e36afe9ae79e2d6765050a0e72c0de8dce7 apache2.logrotate
8761faa68c2db7114b3f463f3b8ef1aec8f8373da9908d943cc765765914ab36 apache2.initd
c40668ae8384d0555488660b68eda16ad8ccb11fde16a8197d33bed739fed1e8 alpine.layout
2e078ca7c99d78b0bf1d7eaa471d257f98af0aeb3d442e761552749981c8f503 0001-httpd.conf-ServerRoot.patch
f9ad9b6fbdb6dd77b77e39410f061e4d155e83ac7943d4f3c8e783b75c4bca78 0002-httpd.conf-ServerTokens.patch
8e38e5b285b5d7aabe3c03ce8d99555888de4a193f6ee52e725a40fc9380b42b 0003-httpd.conf-ServerSignature.patch
6787eb526fe550c4bf4a507a23c33453e5e24731a88d662f230566f221c44cda 0004-httpd.conf-User-Group.patch
262cab44115d07f0ee2397efd7a9ff8100ef9cbf6a94d856bee7de3831536a24 0005-httpd.conf-ErrorLog-CustomLog-TransferLog.patch
0395f58e5f1d13e8ee8f88ea40862f54d1e94d361e43831337478af3ff39034d 0006-httpd-dav.conf-DavLockDB.patch
38c27c17b9ed1b0440a69e594e5f45b52f59db193e03bbc9697bc784a9c5e308 0007-httpd-ssl.conf-SSLSessionCache.patch
908c6a3f360e268caaf87f6d581443e7e0e3356b9a7be204d3b30423904dde81 0008-httpd-ssl.conf-SSLRandomSeed.patch
d5129c7bd958a9a801527a3a07ad45a390fb23bc1754edf9274dbf32e68568ee 0009-httpd-ssl.conf-SSL-File.patch
f22abd948065649d9972be320a1feb855b5807ca9f45af3ad354b9560cb257d1 0010-httpd-ssl.conf-SSL-CipherSuite.patch
9ecd79e4a084d876c56000ccc2fa88463fb57617b575fe4f8104c099715c691b 0011-httpd.conf-IncludeOptional.patch
5bad32417abc9fdf3e430aabd1ac8d13d90304911d6bd76515896df0aaa3e8d7 0012-httpd.conf-MIMEMagicFile.patch
9603bf79c7eab05e635ee7c9b2ecc67c49146f955b59852a88f2c618bd489a78 0013-httpd-.conf-IfModule.patch
34d0202635660c961ee5186a4950e2af714b27bbd4aef23901c1f05a5e6c6fcd 0014-httpd-.conf-LoadModule.patch"
sha512sums="6ba4ce1dcef71416cf1c0de2468c002767b5637a75744daf5beb0edd045749a751b3826c4132f594c48e4b33ca8e1b25ebfb63ac4c8b759ca066a89d3261fb22 httpd-2.4.25.tar.bz2
8e62b101f90c67babe864bcb74f711656180b011df3fd4b541dc766b980b72aa409e86debf3559a55be359471c1cad81b8779ef3a55add8d368229fc7e9544fc apache2.confd
18e8859c7d99c4483792a5fd20127873aad8fa396cafbdb6f2c4253451ffe7a1093a3859ce719375e0769739c93704c88897bd087c63e1ef585e26dcc1f5dd9b apache2.logrotate
81a2d2a297d8049ba1b021b879ec863767149e056d9bdb2ac8acf63572b254935ec96c2e1580eba86639ea56433eec5c41341e4f1501f9072745dccdb3602701 apache2.initd
177c58d049fc4476fd9b9b36b67725145777c84cf81948105c9314cb09312dff6c1931fe21aaa243597abaefded6c6dfd80d83839e45a23950b50de615d73b06 alpine.layout
b55051f1358fb957cb24ea5d7cf6106822935c5fe3d1f4bb071d4caff5daa46c31c4fc81ec1f2ce0335a634e8b7545f2265c3d28bea3b0799b9ff589ba36c24a 0001-httpd.conf-ServerRoot.patch
948299dd3b5b004276394a4ce94005a011cfe14e032e7cdce060bf0f6123835020419226cc0fe78cbefba996c0c2eebd1b8d713d2f1b424e0e6f58b1e589bc3f 0002-httpd.conf-ServerTokens.patch
360d67fae5882f460509bfe3a295055602480902aa135f914cfd3c6d16c43fa92e77ef5de0360b2eab11ca0d0ad6bd46bf093a156a64718696635a6c3d328ad3 0003-httpd.conf-ServerSignature.patch
2bf81ded68ccca5d893233bede8cd002d05b7e26fe1a6d341c41a5e439e16c816ffdcb03fd093b45ff0ea1b905f423420e45b07b9da91181ac73fb533e1b68c1 0004-httpd.conf-User-Group.patch
9aa4bc57702c2b4adb91885558504318ebc5d4129aea259bff08d19d8350c82e308c801db77f1dadbbeae4bf284a7939c2f16a8fd26798b71e8510985540c1e4 0005-httpd.conf-ErrorLog-CustomLog-TransferLog.patch
238f6b3572f6a39ed778aab33b7adc5023fb8d82cbea1af21b16587aac2c9056d025608c20232e3017531513b4b49e4272ab59c82a7a39b17291c93256037387 0006-httpd-dav.conf-DavLockDB.patch
5c32f20f883055f47e796b9fd5dcea5e794c7a5375712e384a7093ca38629259beda376d0ba2c78c44329f75e2c75fda987bc38ff22669a8421a7825bdef78b7 0007-httpd-ssl.conf-SSLSessionCache.patch
9eca9eca008af801adc067eb0ecfe19cff7e77e7e675cd005d3ac1d551c638bb6ea5dd9b30a019db9c650fba53ab6ce88202118361e53f018283f6794d3f09d3 0008-httpd-ssl.conf-SSLRandomSeed.patch
377c89510dc165dfb88922aeaf923aa1efd69e7cfd10cb6f8b1e1f015865187f287c0a5090f31f76137de8b9973fcbf5bd17f7003fc275c87a6bf3cf32758c33 0009-httpd-ssl.conf-SSL-File.patch
e151a8ebb23b1a3a92ea9a8b83b6bf64c950ec8ded8d514df8f16f074c5f712de7c44cb42190ca15a2010bac2c4ff57f26947e87625d40f7791ec1e77cf88cc7 0010-httpd-ssl.conf-SSL-CipherSuite.patch
fc3352b50bee11e7560594398948a1af0279d339e891915e38766c9c0f930cc01f207e438afe9a43329b6d23fe438939666309e8ad77938dbe8dc784aaae4113 0011-httpd.conf-IncludeOptional.patch
da3a99ccf54c8d4adc633cceb3e520e48b47e868e8f1be33c81027ce3173401c8b9b79af4f75c73c94f77a50452219a4d23774b03a74f6271a677ec271396ada 0012-httpd.conf-MIMEMagicFile.patch
564866cadebd957eb9b23624286deb8cadb0ebeda0e3e80ec2cd8912731c8273f5ef5fa9f2d8295accb304da40c850772a854eb0c76c3aa08bb93b059c730882 0013-httpd-.conf-IfModule.patch
3742b8ed06cfd081a02c171b5ddf42652d2848fd520e0ff1a4799fce90300e70ab8edbbecc7111a1083133077a57703a631879143777565e6918099a873d4aa0 0014-httpd-.conf-LoadModule.patch"