packages/smartmontools: use new service functions
[openwrt/svn-archive/archive.git] / utils / smartmontools / Makefile
index f6cdf29a5eadf9cba3e451b553f9d8418763f1d2..4f909612c86fb0b7764c0ad9eb9506ccea98fa45 100644 (file)
@@ -1,60 +1,88 @@
-# 
-# Copyright (C) 2006 OpenWrt.org
+#
+# Copyright (C) 2006-2011 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.37
-PKG_RELEASE:=1
+PKG_VERSION:=5.40
+PKG_RELEASE:=2
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
 PKG_SOURCE_URL:=@SF/smartmontools
-PKG_MD5SUM:=4ab3668b7d1362ce923f64a211e0e568
-PKG_CAT:=zcat
-
-PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
+PKG_MD5SUM:=0f0be0239914ad87830a4fff594bda5b
 
 include $(INCLUDE_DIR)/package.mk
 
-define Package/smartmontools
+define Package/smartmontools/Default
   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.
+  DEPENDS:=+uclibcxx
+  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
 
-define Build/Configure 
-       (cd $(PKG_BUILD_DIR); ./autogen.sh );
-       $(call Build/Configure/Default,, \
-       ac_libc_have_working_snprintf=yes \
-       )
+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 -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) \
-               CC="$(TARGET_CC)"
+               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_DATA) ./files/smartd.conf $(1)/etc/
        $(INSTALL_DIR) $(1)/etc/init.d
-       $(INSTALL_DATA) ./files/smartd.init $(1)/etc/init.d/smartd
+       $(INSTALL_BIN) ./files/smartd.init $(1)/etc/init.d/smartd
 endef
 
 $(eval $(call BuildPackage,smartmontools))
+$(eval $(call BuildPackage,smartd))