void-packages/srcpkgs/nginx/template

110 lines
3.1 KiB
Bash

# Template file for 'nginx'
pkgname=nginx
version=1.18.0
revision=4
build_style=gnu-makefile
hostmakedepends="openssl-devel pcre-devel $(vopt_if geoip geoip-devel)"
makedepends="${hostmakedepends}"
short_desc="High performance web and reverse proxy server"
maintainer="Orphaned <orphan@voidlinux.org>"
license="BSD-2-Clause"
homepage="https://nginx.org"
distfiles="https://nginx.org/download/nginx-${version}.tar.gz"
checksum=4c373e7ab5bf91d34a4f11a0c9496561061ba5eee6020db272a17a7228d35f99
# NOTE:
# On update, the pregenerated header file for ARM may need synchronization.
# See srcpkgs/nginx/files/ngx_auto_config.h.armv6l.patch for more information.
conf_files="/etc/nginx/fastcgi.conf
/etc/nginx/fastcgi_params
/etc/nginx/koi-win
/etc/nginx/koi-utf
/etc/nginx/mime.types
/etc/nginx/nginx.conf
/etc/nginx/scgi_params
/etc/nginx/uwsgi_params
/etc/nginx/win-utf"
system_accounts="nginx"
nginx_homedir="/var/tmp/nginx"
make_dirs="/var/log/nginx 0750 root root
/var/tmp 1777 root root
/var/tmp/nginx 0750 nginx root"
build_options="geoip stream slice"
desc_option_stream="Enable support for stream proxies"
desc_option_slice="Enable support for slice filters"
build_options_default="geoip stream slice"
do_configure() {
local cfgdir=/etc/nginx
local tmpdir=/var/tmp/nginx
if [ "$CROSS_BUILD" ]; then
# fake configure run on host
unset CC CPP LD CFLAGS CPPFLAGS LDFLAGS
fi
local stream_modules="\
--with-stream \
--with-stream_realip_module \
--with-stream_ssl_module \
--with-stream_ssl_preread_module \
$(vopt_if geoip --with-stream_geoip_module) \
"
./configure --prefix=${cfgdir} \
--conf-path=${cfgdir}/nginx.conf \
--sbin-path=/usr/bin/nginx \
--pid-path=/run/nginx.pid \
--lock-path=/var/lock/nginx.lock \
--user=nginx --group=nginx \
--http-log-path=/var/log/nginx/access.log \
--error-log-path=/var/log/nginx/error.log \
--http-client-body-temp-path=${tmpdir}/client-body \
--http-proxy-temp-path=${tmpdir}/proxy \
--http-fastcgi-temp-path=${tmpdir}/fastcgi \
--http-scgi-temp-path=${tmpdir}/scgi \
--http-uwsgi-temp-path=${tmpdir}/uwsgi \
--with-mail --with-mail_ssl_module \
--with-pcre-jit --with-file-aio \
--with-http_gunzip_module \
--with-http_v2_module \
--with-http_dav_module \
--with-http_gzip_static_module \
--with-http_realip_module \
--with-http_ssl_module \
--with-http_stub_status_module \
--with-http_sub_module \
$(vopt_if geoip --with-http_geoip_module) \
$(vopt_if stream "$stream_modules") \
$(vopt_if slice --with-http_slice_module)
}
pre_build() {
if [ "$CROSS_BUILD" ]; then
case "$XBPS_TARGET_MACHINE" in
arm*|aarch64*) cp "${FILESDIR}/ngx_auto_config.h.armv6l" objs/ngx_auto_config.h;;
esac
fi
sed -i 's/-lcrypt/$(LDFLAGS) &/' objs/Makefile
}
post_install() {
sed -e 's|\<user\s\+\w\+;|user html;|g' \
-e '44s|html|/usr/share/nginx/html|' \
-e '54s|html|/usr/share/nginx/html|' \
-i "$DESTDIR/etc/nginx/nginx.conf"
rm -- "$DESTDIR"/etc/nginx/*.default
vmkdir usr/share/nginx
mv "$DESTDIR/etc/nginx/html" "$DESTDIR/usr/share/nginx"
vman man/nginx.8
vlicense LICENSE
vsv nginx
}