[Buildroot] [git commit] package/cups-filters: improve cups-browsed init integration
Thomas Petazzoni
thomas.petazzoni at bootlin.com
Mon Jun 29 21:00:51 UTC 2020
commit: https://git.buildroot.net/buildroot/commit/?id=2fe54a4536c87a757c75b3bd4dfe0f11b819bdc4
branch: https://git.buildroot.net/buildroot/commit/?id=refs/heads/master
cups-browsed service is compiled and installed by the package,
but the corresponding services file were not installed for
systemv and systemd.
Specifying --without-rcdir allows to not install the init script
provided with cups-filters, and we provide our own,
Buildroot-compatible init script.
For systemd, we install the upstream-provided service file.
Signed-off-by: Angelo Compagnucci <angelo at amarulasolutions.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni at bootlin.com>
---
package/cups-filters/S82cups-browsed | 48 ++++++++++++++++++++++++++++++++++++
package/cups-filters/cups-filters.mk | 13 +++++++++-
2 files changed, 60 insertions(+), 1 deletion(-)
diff --git a/package/cups-filters/S82cups-browsed b/package/cups-filters/S82cups-browsed
new file mode 100644
index 0000000000..08909c7f98
--- /dev/null
+++ b/package/cups-filters/S82cups-browsed
@@ -0,0 +1,48 @@
+#!/bin/sh
+
+DAEMON="cups-browsed"
+PIDFILE="/var/run/$DAEMON.pid"
+
+start() {
+ printf 'Starting %s: ' "$DAEMON"
+ # shellcheck disable=SC2086 # we need the word splitting
+ start-stop-daemon -b -m -S -q -p "$PIDFILE" -x "/sbin/$DAEMON" \
+ -- -c /etc/cups/cups-browsed.conf
+ status=$?
+ if [ "$status" -eq 0 ]; then
+ echo "OK"
+ else
+ echo "FAIL"
+ fi
+ return "$status"
+}
+
+stop() {
+ printf 'Stopping %s: ' "$DAEMON"
+ start-stop-daemon -K -q -p "$PIDFILE"
+ status=$?
+ if [ "$status" -eq 0 ]; then
+ rm -f "$PIDFILE"
+ echo "OK"
+ else
+ echo "FAIL"
+ fi
+ return "$status"
+}
+
+restart() {
+ stop
+ sleep 1
+ start
+}
+
+case "$1" in
+ start|stop|restart)
+ "$1";;
+ reload)
+ # Restart, since there is no true "reload" feature.
+ restart;;
+ *)
+ echo "Usage: $0 {start|stop|restart|reload}"
+ exit 1
+esac
diff --git a/package/cups-filters/cups-filters.mk b/package/cups-filters/cups-filters.mk
index 1f17018bc5..ffd1fd8945 100644
--- a/package/cups-filters/cups-filters.mk
+++ b/package/cups-filters/cups-filters.mk
@@ -19,7 +19,8 @@ CUPS_FILTERS_CONF_OPTS = \
--with-cups-config=$(STAGING_DIR)/usr/bin/cups-config \
--with-sysroot=$(STAGING_DIR) \
--with-pdftops=pdftops \
- --with-jpeg
+ --with-jpeg \
+ --without-rcdir
ifeq ($(BR2_PACKAGE_LIBPNG),y)
CUPS_FILTERS_CONF_OPTS += --with-png
@@ -71,4 +72,14 @@ else
CUPS_FILTERS_CONF_OPTS += --disable-poppler
endif
+define CUPS_FILTERS_INSTALL_INIT_SYSV
+ $(INSTALL) -D -m 0755 package/cups-filters/S82cups-browsed \
+ $(TARGET_DIR)/etc/init.d/S82cups-browsed
+endef
+
+define CUPS_FILTERS_INSTALL_INIT_SYSTEMD
+ $(INSTALL) -D -m 0755 $(@D)/utils/cups-browsed.service \
+ $(TARGET_DIR)/usr/lib/systemd/system/cups-browsed.service
+endef
+
$(eval $(autotools-package))
More information about the buildroot
mailing list