chiark / gitweb /
debianutils: Update from 4.8.3 to 4.8.4
[termux-packages] / packages / apache2 / build.sh
1 TERMUX_PKG_HOMEPAGE=https://httpd.apache.org
2 TERMUX_PKG_DESCRIPTION="Apache Web Server"
3 TERMUX_PKG_VERSION=2.4.33
4 TERMUX_PKG_SHA256=de02511859b00d17845b9abdd1f975d5ccb5d0b280c567da5bf2ad4b70846f05
5 TERMUX_PKG_SRCURL=https://www.apache.org/dist/httpd/httpd-$TERMUX_PKG_VERSION.tar.bz2
6 TERMUX_PKG_DEPENDS="apr, apr-util, pcre, openssl, libcrypt, libandroid-support, libnghttp2, libexpat"
7 TERMUX_PKG_CONFFILES="
8 etc/apache2/httpd.conf
9 etc/apache2/extra/httpd-autoindex.conf
10 etc/apache2/extra/httpd-dav.conf
11 etc/apache2/extra/httpd-default.conf
12 etc/apache2/extra/httpd-info.conf
13 etc/apache2/extra/httpd-languages.conf
14 etc/apache2/extra/httpd-manual.conf
15 etc/apache2/extra/httpd-mpm.conf
16 etc/apache2/extra/httpd-multilang-errordoc.conf
17 etc/apache2/extra/httpd-ssl.conf
18 etc/apache2/extra/httpd-userdir.conf
19 etc/apache2/extra/httpd-vhosts.conf
20 etc/apache2/extra/proxy-html.conf
21 etc/apache2/mime.types
22 etc/apache2/magic
23 "
24 TERMUX_PKG_MAINTAINER="Vishal Biswas @vishalbiswas"
25 # providing manual paths to libs because it picks up host libs on some systems
26 TERMUX_PKG_EXTRA_CONFIGURE_ARGS="
27 --with-apr=$TERMUX_PREFIX
28 --with-apr-util=$TERMUX_PREFIX
29 --with-pcre=$TERMUX_PREFIX
30 --enable-suexec
31 --enable-layout=Termux
32 --enable-so
33 --enable-authnz-fcgi
34 --enable-cache
35 --enable-disk-cache
36 --enable-mem-cache
37 --enable-file-cache
38 --enable-ssl
39 --with-ssl
40 --enable-deflate
41 --enable-cgi
42 --enable-cgid
43 --enable-proxy
44 --enable-proxy-connect
45 --enable-proxy-http
46 --enable-proxy-ftp
47 --enable-dbd
48 --enable-imagemap
49 --enable-ident
50 --enable-cern-meta
51 --enable-http2
52 --enable-mpms-shared=all
53 --enable-modules=all
54 --enable-mods-shared=all
55 --disable-mods-static
56 --disable-md
57 --with-port=8080
58 --with-sslport=8443
59 --enable-unixd
60 --without-libxml2
61 --libexecdir=$TERMUX_PREFIX/libexec/apache2
62 ac_cv_func_getpwnam=yes
63 ac_cv_have_threadsafe_pollset=no
64 "
65 TERMUX_PKG_BUILD_IN_SRC=true
66 TERMUX_PKG_RM_AFTER_INSTALL="share/apache2/manual etc/apache2/original share/man/man8/suexec.8 libexec/httpd.exp"
67 TERMUX_PKG_INCLUDE_IN_DEVPACKAGE="share/apache2/build"
68 TERMUX_PKG_EXTRA_MAKE_ARGS="-s"
69
70 termux_step_pre_configure () {
71         # remove old files
72         rm -rf "$TERMUX_PREFIX"/{libexec,share,etc}/apache2
73         rm -rf "$TERMUX_PREFIX"/lib/cgi-bin
74
75         if [ $TERMUX_ARCH_BITS -eq 32 ]; then
76                 export ap_cv_void_ptr_lt_long=4
77         else
78                 export ap_cv_void_ptr_lt_long=8
79         fi
80
81         LDFLAGS="$LDFLAGS -llog -lapr-1 -laprutil-1"
82
83         # use custom layout
84         cat $TERMUX_PKG_BUILDER_DIR/Termux.layout > $TERMUX_PKG_SRCDIR/config.layout
85 }
86
87 termux_step_post_configure () {
88         # thanks to @JetBalsa
89         gcc -O2 -DCROSS_COMPILE $TERMUX_PKG_SRCDIR/server/gen_test_char.c -o $TERMUX_PKG_BUILDDIR/server/gen_test_char
90         touch -d "1 hour" $TERMUX_PKG_BUILDDIR/server/gen_test_char
91 }
92
93 termux_step_post_make_install () {
94         sed -e "s#/$TERMUX_PREFIX/libexec/apache2/#modules/#" \
95                 -e 's|#\(LoadModule negotiation_module \)|\1|' \
96                 -e 's|#\(LoadModule include_module \)|\1|' \
97                 -e 's|#\(LoadModule userdir_module \)|\1|' \
98                 -e 's|#\(LoadModule slotmem_shm_module \)|\1|' \
99                 -e 's|#\(Include extra/httpd-multilang-errordoc.conf\)|\1|' \
100                 -e 's|#\(Include extra/httpd-autoindex.conf\)|\1|' \
101                 -e 's|#\(Include extra/httpd-languages.conf\)|\1|' \
102                 -e 's|#\(Include extra/httpd-userdir.conf\)|\1|' \
103                 -e 's|#\(Include extra/httpd-default.conf\)|\1|' \
104                 -e 's|#\(Include extra/httpd-mpm.conf\)|\1|' \
105                 -e 's|User daemon|#User daemon|' \
106                 -e 's|Group daemon|#Group daemon|' \
107                 -i "$TERMUX_PREFIX/etc/apache2/httpd.conf"
108 }
109
110 termux_step_post_massage () {
111         # sometimes it creates a $TERMUX_PREFIX/bin/sh -> /bin/sh
112         rm ${TERMUX_PKG_MASSAGEDIR}${TERMUX_PREFIX}/bin/sh || true
113
114         mkdir -p ${TERMUX_PKG_MASSAGEDIR}${TERMUX_PREFIX}/var/run/apache2
115         mkdir -p ${TERMUX_PKG_MASSAGEDIR}${TERMUX_PREFIX}/var/log/apache2
116 }