summaryrefslogtreecommitdiffstats
path: root/meta-openembedded/meta-webserver/recipes-httpd/sthttpd
diff options
context:
space:
mode:
Diffstat (limited to 'meta-openembedded/meta-webserver/recipes-httpd/sthttpd')
-rw-r--r--meta-openembedded/meta-webserver/recipes-httpd/sthttpd/sthttpd/init52
-rw-r--r--meta-openembedded/meta-webserver/recipes-httpd/sthttpd/sthttpd/thttpd.conf1
-rw-r--r--meta-openembedded/meta-webserver/recipes-httpd/sthttpd/sthttpd/thttpd.service10
-rw-r--r--meta-openembedded/meta-webserver/recipes-httpd/sthttpd/sthttpd_2.27.1.bb56
4 files changed, 119 insertions, 0 deletions
diff --git a/meta-openembedded/meta-webserver/recipes-httpd/sthttpd/sthttpd/init b/meta-openembedded/meta-webserver/recipes-httpd/sthttpd/sthttpd/init
new file mode 100644
index 000000000..f5f7b0124
--- /dev/null
+++ b/meta-openembedded/meta-webserver/recipes-httpd/sthttpd/sthttpd/init
@@ -0,0 +1,52 @@
+#!/bin/sh
+
+### BEGIN INIT INFO
+# Provides: thttpd
+# Required-Start: $remote_fs $syslog
+# Required-Stop: $remote_fs $syslog
+# Default-Start: 2 3 4 5
+# Default-Stop: 0 1 6
+# Short-Description: Small http server
+# Description: thttpd is a simple, small, portable, fast, and secure HTTP server.
+### END INIT INFO
+
+
+thttpd=/usr/sbin/thttpd
+test -x "$thttpd" || exit 0
+
+
+case "$1" in
+ start)
+ echo -n "Starting thttpd"
+ start-stop-daemon --start --quiet --exec $thttpd -- -C @@CONFFILE
+ echo "."
+ ;;
+ stop)
+ echo -n "Stopping thttpd"
+ start-stop-daemon --stop --quiet --exec $thttpd
+ echo "."
+ ;;
+ reload|force-reload)
+ start-stop-daemon --stop --quiet --signal 1 --exec $thttpd
+ ;;
+ restart)
+ echo -n "Stopping thttpd"
+ start-stop-daemon --stop --quiet --exec $thttpd -- -C @@CONFFILE
+ echo "."
+ echo -n "Waiting for thttpd to die off"
+ for i in 1 2 3 ;
+ do
+ sleep 1
+ echo -n "."
+ done
+ echo ""
+ echo -n "Starting thttpd"
+ start-stop-daemon --start --quiet --exec $thttpd -- -C @@CONFFILE
+ echo "."
+ ;;
+ *)
+ echo "Usage: /etc/init.d/thttpd {start|stop|reload|restart|force-reload}"
+ exit 1
+esac
+
+exit 0
diff --git a/meta-openembedded/meta-webserver/recipes-httpd/sthttpd/sthttpd/thttpd.conf b/meta-openembedded/meta-webserver/recipes-httpd/sthttpd/sthttpd/thttpd.conf
new file mode 100644
index 000000000..397984f36
--- /dev/null
+++ b/meta-openembedded/meta-webserver/recipes-httpd/sthttpd/sthttpd/thttpd.conf
@@ -0,0 +1 @@
+dir=@@SRVDIR
diff --git a/meta-openembedded/meta-webserver/recipes-httpd/sthttpd/sthttpd/thttpd.service b/meta-openembedded/meta-webserver/recipes-httpd/sthttpd/sthttpd/thttpd.service
new file mode 100644
index 000000000..f1095007c
--- /dev/null
+++ b/meta-openembedded/meta-webserver/recipes-httpd/sthttpd/sthttpd/thttpd.service
@@ -0,0 +1,10 @@
+[Unit]
+Description=Tiny/Turbo/Throttling Web Server
+
+[Service]
+Type=forking
+ExecStart=/usr/sbin/thttpd -C @@CONFFILE -c cgi-bin/* -i /var/run/thttpd.pid
+PIDFile=/var/run/thttpd.pid
+
+[Install]
+WantedBy=multi-user.target
diff --git a/meta-openembedded/meta-webserver/recipes-httpd/sthttpd/sthttpd_2.27.1.bb b/meta-openembedded/meta-webserver/recipes-httpd/sthttpd/sthttpd_2.27.1.bb
new file mode 100644
index 000000000..37bd7537d
--- /dev/null
+++ b/meta-openembedded/meta-webserver/recipes-httpd/sthttpd/sthttpd_2.27.1.bb
@@ -0,0 +1,56 @@
+SUMMARY = "A simple, small, portable, fast, and secure HTTP server"
+DESCRIPTION = "A simple, small, portable, fast, and secure HTTP server (supported fork of thttpd)."
+HOMEPAGE = "http://opensource.dyc.edu/sthttpd"
+LICENSE = "BSD-2-Clause"
+LIC_FILES_CHKSUM = "file://src/thttpd.c;beginline=1;endline=26;md5=0c5762c2c34dcbe9eb18815516502872"
+
+DEPENDS += "base-passwd"
+
+SRC_URI = "https://github.com/blueness/${BPN}/archive/v${PV}.tar.gz;downloadfilename=${BP}.tar.gz \
+ file://thttpd.service \
+ file://thttpd.conf \
+ file://init"
+
+SRC_URI[md5sum] = "3cda1b6c8c8542b1510eadb8e540d8b6"
+SRC_URI[sha256sum] = "a1ee2806432eaf5b5dd267a0523701f9f1fa00fefd499d5bec42165a41e05846"
+
+UPSTREAM_CHECK_URI = "https://github.com/blueness/sthttpd/releases/"
+UPSTREAM_CHECK_REGEX = "v(?P<pver>\d+(\.\d+)+).tar.gz"
+
+S = "${WORKDIR}/sthttpd-${PV}"
+
+inherit autotools update-rc.d systemd
+
+SRV_DIR ?= "${servicedir}/www"
+
+# Note that `${sbindir}/makeweb' is installed setgid to this group,
+# but ${SRV_DIR} is not installed chgrp'd to the group by default.
+WEBGROUP ?= "www-data"
+
+do_configure_prepend () {
+ export WEBDIR=${SRV_DIR}
+ export WEBGROUP=${WEBGROUP}
+}
+
+do_install_append () {
+ install -d ${D}${sysconfdir}/init.d
+ install -c -m 755 ${WORKDIR}/init ${D}${sysconfdir}/init.d/thttpd
+ install -c -m 755 ${WORKDIR}/thttpd.conf ${D}${sysconfdir}
+ sed -i -e 's,@@CONFFILE,${sysconfdir}/thttpd.conf,g' ${D}${sysconfdir}/init.d/thttpd
+ sed -i -e 's,@@SRVDIR,${SRV_DIR},g' ${D}${sysconfdir}/thttpd.conf
+ sed -i 's!/usr/sbin/!${sbindir}/!g' ${D}${sysconfdir}/init.d/thttpd
+
+ install -d ${D}${systemd_unitdir}/system
+ install -m 0644 ${WORKDIR}/thttpd.service ${D}${systemd_unitdir}/system
+ sed -i 's!/usr/sbin/!${sbindir}/!g' ${D}${systemd_unitdir}/system/thttpd.service
+ sed -i 's!/var/!${localstatedir}/!g' ${D}${systemd_unitdir}/system/thttpd.service
+ sed -i -e 's,@@CONFFILE,${sysconfdir}/thttpd.conf,g' ${D}${systemd_unitdir}/system/thttpd.service
+}
+
+INITSCRIPT_NAME = "thttpd"
+INITSCRIPT_PARAMS = "defaults"
+
+SYSTEMD_SERVICE_${PN} = "thttpd.service"
+
+FILES_${PN} += "${SRV_DIR}"
+FILES_${PN}-dbg += "${SRV_DIR}/cgi-bin/.debug"
OpenPOWER on IntegriCloud