summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xpackage/owfs/S25owserver31
-rwxr-xr-xpackage/owfs/S30owfs33
-rw-r--r--package/owfs/owfs.mk14
3 files changed, 78 insertions, 0 deletions
diff --git a/package/owfs/S25owserver b/package/owfs/S25owserver
new file mode 100755
index 0000000000..b8da768e96
--- /dev/null
+++ b/package/owfs/S25owserver
@@ -0,0 +1,31 @@
+NAME="owserver"
+DAEMON="/usr/bin/${NAME}"
+PID_F="/run/${NAME}.pid"
+
+OWSERVER_ARGS=
+[ -r /etc/default/${NAME} ] && . /etc/default/${NAME}
+
+case "$1" in
+start)
+ printf "Starting ${NAME}: "
+ if [ -z "${OWSERVER_ARGS}" ]; then
+ echo "OWSERVER_ARGS must be set in defaults file" 1>&2
+ exit 1
+ fi
+ start-stop-daemon -S -x ${DAEMON} -- \
+ --pid_file ${PID_F} ${OWSERVER_ARGS}
+ [ $? -eq 0 ] && echo "OK" || echo "FAIL"
+ ;;
+stop)
+ printf "Stopping ${NAME}: "
+ start-stop-daemon -K -p ${PID_F}
+ [ $? -eq 0 ] && echo "OK" || echo "FAIL"
+ ;;
+restart|reload)
+ $0 stop
+ $0 start
+ ;;
+*)
+ echo "Usage: $0 {start|stop|restart|reload}"
+ exit 1
+esac
diff --git a/package/owfs/S30owfs b/package/owfs/S30owfs
new file mode 100755
index 0000000000..feed676f8a
--- /dev/null
+++ b/package/owfs/S30owfs
@@ -0,0 +1,33 @@
+NAME="owfs"
+DAEMON="/usr/bin/${NAME}"
+PID_F="/run/${NAME}.pid"
+OWFS_MOUNTPOINT="/dev/1wire"
+OWFS_DEVICES="-s localhost:4304"
+OWFS_ARGS=""
+
+[ -r /etc/default/${NAME} ] && . /etc/default/${NAME}
+
+case "$1" in
+start)
+ printf "Starting ${NAME}: "
+ # Fuse may be in a module, so try to load it
+ modprobe -q fuse && printf "[fuse] "
+ mkdir -p ${OWFS_MOUNTPOINT}
+ start-stop-daemon -S -x ${DAEMON} -- \
+ --pid_file ${PID_F} -m ${OWFS_MOUNTPOINT} ${OWFS_DEVICES} \
+ ${OWFS_ARGS}
+ [ $? -eq 0 ] && echo "OK" || echo "FAIL"
+ ;;
+stop)
+ printf "Stopping ${NAME}: "
+ start-stop-daemon -K -p ${PID_F}
+ [ $? -eq 0 ] && echo "OK" || echo "FAIL"
+ ;;
+restart|reload)
+ $0 stop
+ $0 start
+ ;;
+*)
+ echo "Usage: $0 {start|stop|restart|reload}"
+ exit 1
+esac
diff --git a/package/owfs/owfs.mk b/package/owfs/owfs.mk
index 083939afc6..0092603fbf 100644
--- a/package/owfs/owfs.mk
+++ b/package/owfs/owfs.mk
@@ -23,6 +23,14 @@ OWFS_CONF_OPTS += \
--enable-owfs \
--with-fuseinclude=$(STAGING_DIR)/usr/include \
--with-fuselib=$(STAGING_DIR)/usr/lib
+define OWFS_INSTALL_FUSE_INIT_SYSV
+ $(INSTALL) -D -m 0755 $(OWFS_PKGDIR)S30owfs \
+ $(TARGET_DIR)/etc/init.d/S30owfs
+endef
+define OWFS_CREATE_MOUNTPOINT
+ mkdir -p $(TARGET_DIR)/dev/1wire
+endef
+OWFS_POST_INSTALL_TARGET_HOOKS += OWFS_CREATE_MOUNTPOINT
else
OWFS_CONF_OPTS += --disable-owfs
endif
@@ -70,4 +78,10 @@ ifeq ($(BR2_STATIC_LIBS),y)
OWFS_CONF_OPTS += --disable-zero
endif
+define OWFS_INSTALL_INIT_SYSV
+ $(INSTALL) -D -m 0755 $(OWFS_PKGDIR)S25owserver \
+ $(TARGET_DIR)/etc/init.d/S25owserver
+ $(OWFS_INSTALL_FUSE_INIT_SYSV)
+endef
+
$(eval $(autotools-package))
OpenPOWER on IntegriCloud