diff --git a/utils/smartmontools/Makefile b/utils/smartmontools/Makefile new file mode 100644 index 000000000..7b446cb3a --- /dev/null +++ b/utils/smartmontools/Makefile @@ -0,0 +1,95 @@ +# +# Copyright (C) 2006-2012 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk +include $(INCLUDE_DIR)/uclibc++.mk + +PKG_NAME:=smartmontools +PKG_VERSION:=6.2 +PKG_RELEASE:=1 + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=@SF/smartmontools +PKG_MD5SUM:=d44f84081a12cef79cd17f78044351fc +PKG_MAINTAINER:=Maxim Storchak + +include $(INCLUDE_DIR)/package.mk + +define Package/smartmontools/Default + SECTION:=utils + CATEGORY:=Utilities + DEPENDS:=$(CXX_DEPENDS) + TITLE:=S.M.A.R.T Monitoring + URL:=http://smartmontools.sourceforge.net/ +endef + +define Package/smartmontools + $(call Package/smartmontools/Default) + TITLE+= Tool +endef + +define Package/smartmontools/description + smartmontools contains utility programs (smartctl) 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. +endef + +define Package/smartd + $(call Package/smartmontools/Default) + DEPENDS+= +rsync + TITLE+= Daemon +endef + +define Package/smartd/description + smartmontools contains utility programs (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. +endef + +# uses GNU configure + +CONFIGURE_VARS += \ + CXXFLAGS="$$$$CXXFLAGS -fno-builtin -fno-rtti -nostdinc++" \ + CPPFLAGS="$$$$CPPFLAGS -I$(STAGING_DIR)/usr/include/uClibc++ -I$(LINUX_DIR)/include" \ + LDFLAGS="$$$$LDFLAGS" \ + LIBS="-nodefaultlibs -lc -luClibc++ -lm $(LIBGCC_S) -lc" \ + +define Build/Configure + (cd $(PKG_BUILD_DIR); rm -rf config.{cache,status} ; \ + ./autogen.sh \ + ); + $(call Build/Configure/Default) +endef + +define Build/Compile + $(MAKE) -C $(PKG_BUILD_DIR) \ + BUILD_INFO='"(localbuild)"' \ + LD="$(TARGET_CXX)" +endef + +define Package/smartmontools/install + $(INSTALL_DIR) $(1)/usr/sbin + $(INSTALL_BIN) $(PKG_BUILD_DIR)/smartctl $(1)/usr/sbin/ +endef + +define Package/smartd/install + $(INSTALL_DIR) $(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_BIN) ./files/smartd.init $(1)/etc/init.d/smartd +endef + +define Package/smartd/conffiles +/etc/smartd.conf +endef + +$(eval $(call BuildPackage,smartmontools)) +$(eval $(call BuildPackage,smartd)) diff --git a/utils/smartmontools/files/smartd.conf b/utils/smartmontools/files/smartd.conf new file mode 100644 index 000000000..0740fcf91 --- /dev/null +++ b/utils/smartmontools/files/smartd.conf @@ -0,0 +1 @@ +/dev/hdb -H diff --git a/utils/smartmontools/files/smartd.init b/utils/smartmontools/files/smartd.init new file mode 100644 index 000000000..f1453f257 --- /dev/null +++ b/utils/smartmontools/files/smartd.init @@ -0,0 +1,16 @@ +#!/bin/sh /etc/rc.common +# Copyright (C) 2006-2011 OpenWrt.org + +START=95 + +start() { + service_start /usr/sbin/smartd -q never +} + +stop() { + service_stop /usr/sbin/smartd +} + +reload() { + service_reload /usr/sbin/smartd +}