0
0
mirror of https://github.com/termux/termux-packages.git synced 2024-12-04 18:45:52 +00:00
Robert Kirkman dc477b4791 fix(main/lighttpd): link with libandroid-spawn
Progress on https://github.com/termux/termux-packages/issues/21130

Fixes this error during build:

```
ld.lld: error: undefined symbol: posix_spawn_file_actions_init
>>> referenced by fdevent.c:495 (../src/src/fdevent.c:495)
>>>               src/test_mod.p/fdevent.c.o:(fdevent_fork_execve)
```

I successfully tested this by using the docker container to
cross-compile this package, then copying the .deb file to
my aarch64 Android 10 device. I was able to successfully test the
resulting program as a functioning web server
at runtime after installing the .deb file by
typing these commands:

```bash
mkdir -p $PREFIX/var/log/lighttpd
mkdir -p $PREFIX/var/www/htdocs
echo 'hello lighttpd' > $PREFIX/var/www/htdocs/index.html
lighttpd -f $PREFIX/etc/lighttpd/lighttpd.conf
```

My Android 10 device's WiFi LAN local IP address is 192.168.120.74, so
then I used a separate computer's web browser to go to this address:
http://192.168.120.74:8080/index.html, where I am able to see the text I
wrote into the `index.html` file, "hello lighttpd"
2024-10-30 09:59:55 +02:00

45 lines
1.7 KiB
Bash

TERMUX_PKG_HOMEPAGE=https://www.lighttpd.net
TERMUX_PKG_DESCRIPTION="Fast webserver with minimal memory footprint"
TERMUX_PKG_LICENSE="BSD 3-Clause"
TERMUX_PKG_MAINTAINER="@termux"
TERMUX_PKG_VERSION="1.4.76"
TERMUX_PKG_REVISION=1
TERMUX_PKG_SRCURL=https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-${TERMUX_PKG_VERSION}.tar.xz
TERMUX_PKG_SHA256=8cbf4296e373cfd0cedfe9d978760b5b05c58fdc4048b4e2bcaf0a61ac8f5011
TERMUX_PKG_DEPENDS="libandroid-glob, libandroid-spawn, libbz2, libcrypt, openssl, pcre2, zlib"
TERMUX_PKG_AUTO_UPDATE=true
TERMUX_PKG_EXTRA_CONFIGURE_ARGS="
-Dwith_bzip=enabled
-Dwith_openssl=true
-Dwith_zlib=enabled
"
TERMUX_PKG_RM_AFTER_INSTALL="bin/lighttpd-angel"
TERMUX_PKG_SERVICE_SCRIPT=("lighttpd" "if [ -f \"$TERMUX_ANDROID_HOME/.lighttpd/lighttpd.conf\" ]; then CONFIG=\"$TERMUX_ANDROID_HOME/.lighttpd/lighttpd.conf\"; else CONFIG=\"$TERMUX_PREFIX/etc/lighttpd/lighttpd.conf\"; fi\nexec lighttpd -D -f \$CONFIG 2>&1")
TERMUX_PKG_CONFFILES="
etc/lighttpd/lighttpd.conf
etc/lighttpd/modules.conf
"
termux_step_post_get_source() {
mv CMakeLists.txt{,.unused}
}
termux_step_pre_configure() {
LDFLAGS+=" -landroid-glob -landroid-spawn"
}
termux_step_post_make_install() {
# Install example config file
install -Dm600 -t $TERMUX_PREFIX/etc/lighttpd/ \
$TERMUX_PKG_SRCDIR/doc/config/lighttpd.conf \
$TERMUX_PKG_SRCDIR/doc/config/modules.conf
install -Dm600 -t $TERMUX_PREFIX/etc/lighttpd/conf.d \
$TERMUX_PKG_SRCDIR/doc/config/conf.d/*.conf
install -Dm600 -t $TERMUX_PREFIX/etc/lighttpd/vhosts.d \
$TERMUX_PKG_SRCDIR/doc/config/vhosts.d/vhosts.template
cd $TERMUX_PKG_SRCDIR/doc/config
TERMUX_PKG_CONFFILES+="$(find conf.d -type f -iname "*.conf" | sed -E 's/(.*)/etc\/lighttpd\/\1/g')"
}