Add smartmontools (#1066)

git-svn-id: svn://svn.openwrt.org/openwrt/packages@5907 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
florian 2006-12-27 19:08:15 +00:00
parent fd5b296f72
commit 4b2601d406
4 changed files with 118 additions and 0 deletions

View File

@ -0,0 +1,60 @@
#
# Copyright (C) 2006 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
# $Id: $
include $(TOPDIR)/rules.mk
PKG_NAME:=smartmontools
PKG_VERSION:=5.36
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=@SF/smartmontools
PKG_MD5SUM:=2e424f2d35efa38a29ebca419c1dbe3c
PKG_CAT:=zcat
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
include $(INCLUDE_DIR)/package.mk
define Package/smartmontools
SECTION:=utils
CATEGORY:=Utilities
TITLE:=S.M.A.R.T Monitoring Tool
DESCRIPTION:=\
smartmontools contains utility programs (smartctl, smartd) to \\\
control/monitor storage systems using the Self-Monitoring, Analysis \\\
and Reporting Technology System (S.M.A.R.T.) built into most modern \\\
ATA and SCSI disks. It is derived from smartsuite.
URL:=http://smartmontools.sourceforge.net/
endef
# uses GNU configure
define Build/Configure
(cd $(PKG_BUILD_DIR); ./autogen.sh );
$(call Build/Configure/Default,, \
ac_libc_have_working_snprintf=yes \
)
endef
define Build/Compile
$(MAKE) -C $(PKG_BUILD_DIR) \
CC="$(TARGET_CC)"
endef
define Package/smartmontools/install
$(INSTALL_DIR) $(1)/usr/sbin
$(INSTALL_BIN) $(PKG_BUILD_DIR)/smartctl $(1)/usr/sbin/
$(INSTALL_BIN) $(PKG_BUILD_DIR)/smartd $(1)/usr/sbin/
$(INSTALL_DIR) $(1)/etc
$(INSTALL_DATA) ./files/smartd.conf $(1)/etc
$(INSTALL_DIR) $(1)/etc/init.d
$(INSTALL_DATA) ./files/smartd.init $(1)/etc/init.d/smartd
endef
$(eval $(call BuildPackage,smartmontools))

View File

@ -0,0 +1 @@
/dev/hdb -H

View File

@ -0,0 +1,28 @@
#!/bin/sh /etc/rc.common
# Copyright (C) 2006 OpenWrt.org
START=95
start() {
[ -f /etc/smartd.conf ] || {
echo "/etc/smartd.conf does not exist !";
exit 0;
};
[ -d /var/run ] || mkdir -p /var/run
[ -x /usr/sbin/smartd ] && /usr/sbin/smartd -q never -p /var/run/smartd.pid
}
stop() {
killall smartd
}
restart() {
stop
sleep 1
start
}
reload() {
kill -HUP `cat /var/run/smartd.pid` &>/dev/null
}

View File

@ -0,0 +1,29 @@
--- smartmontools-5.36/configure.in.orig 2006-12-17 03:01:38.000000000 +0100
+++ smartmontools-5.36/configure.in 2006-12-17 03:00:35.000000000 +0100
@@ -74,16 +74,16 @@
AC_CHECK_FUNCS([uname])
# Check whether snprintf appends null char and returns expected length on overflow
-AH_TEMPLATE(HAVE_WORKING_SNPRINTF, [Define to 1 if the `snprintf' function is sane])
-AC_MSG_CHECKING([for working snprintf])
-AC_RUN_IFELSE([AC_LANG_PROGRAM([[#include <stdio.h>]], [[ char buf[]="ABCDEFGHI";
- int i=snprintf(buf,8,"12345678"); return !(!buf[7] && i==8); ]])],
- [libc_have_working_snprintf=yes], [libc_have_working_snprintf=no])
-AC_SUBST(libc_have_working_snprintf)
-if test "$libc_have_working_snprintf" = "yes"; then
- AC_DEFINE(HAVE_WORKING_SNPRINTF)
-fi
-AC_MSG_RESULT([$libc_have_working_snprintf])
+#AH_TEMPLATE(HAVE_WORKING_SNPRINTF, [Define to 1 if the `snprintf' function is sane])
+#AC_MSG_CHECKING([for working snprintf])
+#AC_RUN_IFELSE([AC_LANG_PROGRAM([[#include <stdio.h>]], [[ char buf[]="ABCDEFGHI";
+# int i=snprintf(buf,8,"12345678"); return !(!buf[7] && i==8); ]])],
+# [libc_have_working_snprintf=yes], [libc_have_working_snprintf=no])
+#AC_SUBST(libc_have_working_snprintf)
+#if test "$libc_have_working_snprintf" = "yes"; then
+# AC_DEFINE(HAVE_WORKING_SNPRINTF)
+#fi
+#AC_MSG_RESULT([$libc_have_working_snprintf])
# check for __attribute__((packed))
AH_TEMPLATE(HAVE_ATTR_PACKED, [Define to 1 if C compiler supports __attribute__((packed))])