summaryrefslogtreecommitdiffstats
path: root/package
diff options
context:
space:
mode:
authornico <nico@3c298f89-4303-0410-b956-a3cf2f4a3e73>2006-01-10 16:47:51 +0000
committernico <nico@3c298f89-4303-0410-b956-a3cf2f4a3e73>2006-01-10 16:47:51 +0000
commita80cf0453eddf8716f148cb0a14580a00bc20594 (patch)
treec9689e9e3162b4db83cb1d03cff963b3c452d2e1 /package
parent6e2d81e9608431c1991f888ac9ea765004343826 (diff)
add watchdog package (thanks to Janos)
git-svn-id: svn://svn.openwrt.org/openwrt/trunk/openwrt@2874 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package')
-rw-r--r--package/Config.in1
-rw-r--r--package/Makefile1
-rw-r--r--package/watchdog/Config.in7
-rw-r--r--package/watchdog/Makefile71
-rw-r--r--package/watchdog/files/watchdog.init18
-rw-r--r--package/watchdog/ipkg/watchdog.conffiles1
-rw-r--r--package/watchdog/ipkg/watchdog.control4
-rw-r--r--package/watchdog/patches/01-fstab-sys_siglist.patch11
8 files changed, 114 insertions, 0 deletions
diff --git a/package/Config.in b/package/Config.in
index 70029dfc2..be7ae9980 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -257,6 +257,7 @@ source "package/pcmcia-cs/Config.in" # pcmcia-utils
source "package/usbutils/Config.in" # lsusb
source "package/strace/Config.in"
source "package/udev/Config.in"
+source "package/watchdog/Config.in"
comment "FileSystems related"
source "package/dosfstools/Config.in"
diff --git a/package/Makefile b/package/Makefile
index 571f10ff8..60081dbf6 100644
--- a/package/Makefile
+++ b/package/Makefile
@@ -230,6 +230,7 @@ package-$(BR2_PACKAGE_VPNC) += vpnc
package-$(BR2_PACKAGE_VRRPD) += vrrpd
package-$(BR2_PACKAGE_VTUN) += vtun
package-$(BR2_PACKAGE_VSFTPD) += vsftpd
+package-$(BR2_PACKAGE_WATCHDOG) += watchdog
package-$(BR2_PACKAGE_WCCPD) += wccpd
package-$(BR2_PACKAGE_WIFICONF) += wificonf
package-$(BR2_PACKAGE_WIFIDOG) += wifidog
diff --git a/package/watchdog/Config.in b/package/watchdog/Config.in
new file mode 100644
index 000000000..5827fda99
--- /dev/null
+++ b/package/watchdog/Config.in
@@ -0,0 +1,7 @@
+config BR2_PACKAGE_WATCHDOG
+ prompt "watchdog.......................... configurable watchdog"
+ tristate
+ default m if CONFIG_DEVEL
+ help
+ watchdog
+
diff --git a/package/watchdog/Makefile b/package/watchdog/Makefile
new file mode 100644
index 000000000..5046c1818
--- /dev/null
+++ b/package/watchdog/Makefile
@@ -0,0 +1,71 @@
+# $Id$
+
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=watchdog
+PKG_VERSION:=5.2.4
+PKG_RELEASE:=1
+PKG_MD5SUM:=c6ac132d92110eb2c4670d4f684105c3
+
+PKG_SOURCE_URL:=http://ftp.debian.org/debian/pool/main/w/watchdog
+PKG_SOURCE:=$(PKG_NAME)_$(PKG_VERSION).orig.tar.gz
+PKG_CAT:=zcat
+
+PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION).orig
+PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-install
+
+include $(TOPDIR)/package/rules.mk
+
+$(eval $(call PKG_template,WATCHDOG,watchdog,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
+
+$(PKG_BUILD_DIR)/.configured:
+ (cd $(PKG_BUILD_DIR); rm -rf config.cache; \
+ $(TARGET_CONFIGURE_OPTS) \
+ CFLAGS="$(TARGET_CFLAGS)" \
+ CPPFLAGS="-I$(STAGING_DIR)/usr/include -I$(STAGING_DIR)/include" \
+ LDFLAGS="-L$(STAGING_DIR)/usr/lib -L$(STAGING_DIR)/lib" \
+ ./configure \
+ --target=$(GNU_TARGET_NAME) \
+ --host=$(GNU_TARGET_NAME) \
+ --build=$(GNU_HOST_NAME) \
+ --program-prefix="" \
+ --program-suffix="" \
+ --prefix=/usr \
+ --exec-prefix=/usr \
+ --bindir=/usr/bin \
+ --datadir=/usr/share \
+ --includedir=/usr/include \
+ --infodir=/usr/share/info \
+ --libdir=/usr/lib \
+ --libexecdir=/usr/lib \
+ --localstatedir=/var \
+ --mandir=/usr/share/man \
+ --sbindir=/usr/sbin \
+ --sysconfdir=/etc \
+ $(DISABLE_NLS) \
+ $(DISABLE_LARGEFILE) \
+ );
+ touch $@
+
+$(PKG_BUILD_DIR)/.built:
+ rm -rf $(PKG_INSTALL_DIR)
+ mkdir -p $(PKG_INSTALL_DIR)
+ $(MAKE) -C $(PKG_BUILD_DIR) \
+ CCOPT="$(TARGET_CFLAGS)" \
+ INCLS="-I. -I$(STAGING_DIR)/usr/include" \
+ LIBS="-L$(STAGING_DIR)/usr/lib" \
+ DESTDIR="$(PKG_INSTALL_DIR)" \
+ all install
+ touch $@
+
+$(IPKG_WATCHDOG):
+ install -d -m0755 $(IDIR_WATCHDOG)/etc
+ cp -fpR $(PKG_INSTALL_DIR)/etc/watchdog.conf $(IDIR_WATCHDOG)/etc/
+ install -d -m0755 $(IDIR_WATCHDOG)/etc/init.d
+ install -m0755 ./files/watchdog.init $(IDIR_WATCHDOG)/etc/init.d/watchdog
+ ln -sf watchdog $(IDIR_WATCHDOG)/etc/init.d/S90watchdog
+ install -d -m0755 $(IDIR_WATCHDOG)/usr/sbin
+ cp -fpR $(PKG_INSTALL_DIR)/usr/sbin/watchdog $(IDIR_WATCHDOG)/usr/sbin/
+ cp -fpR $(PKG_INSTALL_DIR)/usr/sbin/wd_keepalive $(IDIR_WATCHDOG)/usr/sbin/
+ $(RSTRIP) $(IDIR_WATCHDOG)
+ $(IPKG_BUILD) $(IDIR_WATCHDOG) $(PACKAGE_DIR)
diff --git a/package/watchdog/files/watchdog.init b/package/watchdog/files/watchdog.init
new file mode 100644
index 000000000..8a45df92d
--- /dev/null
+++ b/package/watchdog/files/watchdog.init
@@ -0,0 +1,18 @@
+#!/bin/sh
+
+RUN_D=/var/run
+PID_F=$RUN_D/watchdog.pid
+
+case $1 in
+ start)
+ /usr/sbin/watchdog
+ ;;
+ stop)
+ [ -f $PID_F ] && kill $(cat $PID_F) >/dev/null 2>&1
+ ;;
+ *)
+ echo "usage: $0 (start|stop)"
+ exit 1
+esac
+
+exit $?
diff --git a/package/watchdog/ipkg/watchdog.conffiles b/package/watchdog/ipkg/watchdog.conffiles
new file mode 100644
index 000000000..3ef13592a
--- /dev/null
+++ b/package/watchdog/ipkg/watchdog.conffiles
@@ -0,0 +1 @@
+/etc/watchdog.conf
diff --git a/package/watchdog/ipkg/watchdog.control b/package/watchdog/ipkg/watchdog.control
new file mode 100644
index 000000000..1cde1974e
--- /dev/null
+++ b/package/watchdog/ipkg/watchdog.control
@@ -0,0 +1,4 @@
+Package: watchdog
+Priority: opt
+Section: sys
+Description: watchdog
diff --git a/package/watchdog/patches/01-fstab-sys_siglist.patch b/package/watchdog/patches/01-fstab-sys_siglist.patch
new file mode 100644
index 000000000..a71ca5951
--- /dev/null
+++ b/package/watchdog/patches/01-fstab-sys_siglist.patch
@@ -0,0 +1,11 @@
+--- watchdog-5.2.4.orig.orig/src/fstab.c 2003-01-28 07:47:38.000000000 +0100
++++ watchdog-5.2.4.orig/src/fstab.c 2005-12-29 20:05:47.859043112 +0100
+@@ -237,7 +237,7 @@
+ /* Ensure that the lock is released if we are interrupted. */
+ static void
+ handler (int sig) {
+- die (EX_USER, "%s", sys_siglist[sig]);
++ die (EX_USER, "%s", "sys_siglist[sig]");
+ }
+
+ static void