X-Git-Url: http://git.archive.openwrt.org/?a=blobdiff_plain;f=admin%2Fzabbix%2FMakefile;h=5ee8425ac39f1f98a62af61a0011fa8706b1f534;hb=25ba3549fca381c4b5c624f51194ade7b595123b;hp=9d54795b7512c921afe6fcd1ac832db0f1bb6d3e;hpb=0a5cafe97cc606a6d35817bf4335110575e78d68;p=packages.git diff --git a/admin/zabbix/Makefile b/admin/zabbix/Makefile index 9d54795b7..5ee8425ac 100644 --- a/admin/zabbix/Makefile +++ b/admin/zabbix/Makefile @@ -1,24 +1,26 @@ -# -# Copyright (C) 2006 OpenWrt.org +# +# Copyright (C) 2006-2013 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:=zabbix -PKG_VERSION:=1.3.2 +PKG_VERSION:=2.0.8 PKG_RELEASE:=1 -PKG_MD5SUM:=698a07f4e53820e44ef4a72c7c191e92 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=@SF/zabbix +PKG_MD5SUM:=8fef9e6f499295211dd9b2a9db96464b + +PKG_INSTALL:=1 -PKG_BUILD_DEPENDS:=libsqlite3 +PKG_FIXUP:=autoreconf include $(INCLUDE_DIR)/package.mk +include $(INCLUDE_DIR)/nls.mk define Package/zabbix/Default SECTION:=admin @@ -26,6 +28,7 @@ define Package/zabbix/Default TITLE:=Zabbix URL:=http://www.zabbix.com/ SUBMENU:=zabbix + MAINTAINER:=Mirko Vogt endef define Package/zabbix-agent @@ -33,72 +36,213 @@ define Package/zabbix-agent TITLE+= agent endef +define Package/zabbix-agentd + $(call Package/zabbix/Default) + TITLE+= agentd +endef + +define Package/zabbix-extra-mac80211 + $(call Package/zabbix/Default) + TITLE+= discovery/userparameters for mac80211 + DEPENDS += +zabbix-agentd @PACKAGE_MAC80211_DEBUGFS @KERNEL_DEBUG_FS +endef + +define Package/zabbix-extra-network + $(call Package/zabbix/Default) + TITLE+= discovery/userparameters for network + DEPENDS += +zabbix-agentd +libuci-lua +lua +endef + +define Package/zabbix-extra-wifi + $(call Package/zabbix/Default) + TITLE+= discovery/userparameters for wifi + DEPENDS += +zabbix-agentd +libiwinfo-lua +libuci-lua +lua +endef + define Package/zabbix-sender $(call Package/zabbix/Default) TITLE+= sender endef +define Package/zabbix-get + $(call Package/zabbix/Default) + TITLE+= get +endef + define Package/zabbix-server $(call Package/zabbix/Default) TITLE+= server - DEPENDS:=+libsqlite3 + DEPENDS += +libsqlite3 endef +define Package/zabbix-proxy + $(call Package/zabbix/Default) + TITLE+= proxy + DEPENDS += +libsqlite3 +endef -ifneq ($(SDK),) -CONFIG_PACKAGE_zabbix-server:=m -endif +define Package/zabbix-extra-mac80211/description +An extra package for zabbix-agentd that adds a discovery rule for mac80211 wifi phy and many userparameters. +It contains an suid helper to allow zabbix-agentd to still run as zabbix user and not as root. +See http://wiki.openwrt.org/doc/howto/zabbix for ready to use zabbix templates. +endef + +define Package/zabbix-extra-network/description +An extra package for zabbix-agentd that adds a discovery rule for openwrt network interfaces. +The idea here is to discover only interfaces listed in /etc/config/network (discover br-lan and not eth0.1 and wlan0) +See http://wiki.openwrt.org/doc/howto/zabbix for ready to use zabbix templates. +endef + +define Package/zabbix-extra-wifi/description +An extra package for zabbix-agentd that adds a discovery rule for wifi interfaces and many userparameters. +As it uses libiwinfo, it works with all wifi devices supported by openwrt. +See http://wiki.openwrt.org/doc/howto/zabbix for ready to use zabbix templates. +endef -PKG_CONFIGURE_OPTIONS:= \ - --bindir="/usr/sbin" \ - --enable-agent -ifneq ($(CONFIG_PACKAGE_zabbix-server),) -PKG_CONFIGURE_OPTIONS+= \ +define Package/zabbix-agentd/config + select BUSYBOX_CONFIG_HOSTNAME if !PACKAGE_net-tools-hostname + select BUSYBOX_CONFIG_UNAME if !PACKAGE_coreutils-uname +endef + +CONFIGURE_ARGS+= \ + --enable-agent \ --enable-server \ + --enable-proxy \ + --disable-java \ --with-sqlite3="$(STAGING_DIR)/usr" -endif -define Build/Configure - $(call Build/Configure/Default, \ - $(PKG_CONFIGURE_OPTIONS) \ - ) +MAKE_FLAGS += ARCH="linux" + +define Package/zabbix/install/sbin + $(INSTALL_DIR) \ + $(1)/usr/sbin + + $(INSTALL_BIN) \ + $(PKG_INSTALL_DIR)/usr/sbin/zabbix_$(2) \ + $(1)/usr/sbin/ endef -define Build/Compile - $(MAKE) -C $(PKG_BUILD_DIR) \ - DESTDIR="$(PKG_INSTALL_DIR)" \ - all install +define Package/zabbix/install/bin + $(INSTALL_DIR) \ + $(1)/usr/bin + + $(INSTALL_BIN) \ + $(PKG_INSTALL_DIR)/usr/bin/zabbix_$(2) \ + $(1)/usr/bin/ +endef + +define Package/zabbix/install/etc + $(INSTALL_DIR) \ + $(1)/etc + + $(INSTALL_CONF) \ + $(PKG_INSTALL_DIR)/etc/zabbix_$(2).conf \ + $(1)/etc/ +endef + +define Package/zabbix/install/init.d + $(INSTALL_DIR) \ + $(1)/etc/init.d + + $(INSTALL_BIN) \ + ./files/zabbix_$(2).init \ + $(1)/etc/init.d/zabbix_$(2) +endef + +define Package/zabbix/install/zabbix.conf.d + $(INSTALL_DIR) \ + $(1)/etc/zabbix_$(2).conf.d + + $(INSTALL_BIN) \ + ./files/$(3) \ + $(1)/etc/zabbix_$(2).conf.d/$(3) endef define Package/zabbix-agent/conffiles -/etc/zabbix/zabbix_agentd.conf +/etc/zabbix_agent.conf +endef +define Package/zabbix-agentd/conffiles +/etc/zabbix_agentd.conf +endef +define Package/zabbix-server/conffiles +/etc/zabbix_server.conf +endef +define Package/zabbix-proxy/conffiles +/etc/zabbix_proxy.conf +endef + +ifdef CONFIG_PACKAGE_zabbix-extra-mac80211 +define Build/Prepare/zabbix-extra-mac80211 + mkdir -p $(PKG_BUILD_DIR)/zabbix-extra-mac80211 + $(CP) ./files/zabbix_helper_mac80211.c $(PKG_BUILD_DIR)/zabbix-extra-mac80211/ +endef + +define Build/Compile/zabbix-extra-mac80211 + $(TARGET_CC) $(TARGET_CFLAGS) $(PKG_BUILD_DIR)/zabbix-extra-mac80211/zabbix_helper_mac80211.c -o $(PKG_BUILD_DIR)/zabbix-extra-mac80211/zabbix_helper_mac80211 +endef +endif + +define Build/Prepare + $(call Build/Prepare/Default) + $(call Build/Prepare/zabbix-extra-mac80211) +endef + +define Build/Compile + $(call Build/Compile/Default) + $(call Build/Compile/zabbix-extra-mac80211) endef define Package/zabbix-agent/install - $(INSTALL_DIR) $(1)/usr/sbin - $(CP) $(PKG_INSTALL_DIR)/usr/sbin/zabbix_agentd $(1)/usr/sbin/ - $(INSTALL_DIR) $(1)/etc/zabbix - $(INSTALL_CONF) $(PKG_BUILD_DIR)/misc/conf/zabbix_agentd.conf $(1)/etc/zabbix/ + $(call Package/zabbix/install/sbin,$(1),agent) + $(call Package/zabbix/install/etc,$(1),agent) +endef + +define Package/zabbix-agentd/install + $(call Package/zabbix/install/sbin,$(1),agentd) + $(call Package/zabbix/install/etc,$(1),agentd) + $(call Package/zabbix/install/init.d,$(1),agentd) +endef + +define Package/zabbix-extra-mac80211/install + $(call Package/zabbix/install/zabbix.conf.d,$(1),agentd,mac80211) + $(INSTALL_DIR) $(1)/usr/bin + $(INSTALL_BIN) $(PKG_BUILD_DIR)/zabbix-extra-mac80211/zabbix_helper_mac80211 $(1)/usr/bin/ + chmod 4755 $(1)/usr/bin/zabbix_helper_mac80211 +endef + +define Package/zabbix-extra-network/install + $(call Package/zabbix/install/zabbix.conf.d,$(1),agentd,network) +endef + +define Package/zabbix-extra-wifi/install + $(call Package/zabbix/install/zabbix.conf.d,$(1),agentd,wifi) endef define Package/zabbix-sender/install - $(INSTALL_DIR) $(1)/usr/sbin - $(CP) $(PKG_INSTALL_DIR)/usr/sbin/zabbix_sender $(1)/usr/sbin/ - $(INSTALL_DIR) $(1)/etc/zabbix + $(call Package/zabbix/install/bin,$(1),sender) endef -define Package/zabbix-server/conffiles -/etc/zabbix/zabbix_server.conf +define Package/zabbix-get/install + $(call Package/zabbix/install/bin,$(1),get) endef define Package/zabbix-server/install - $(INSTALL_DIR) $(1)/usr/sbin - $(CP) $(PKG_INSTALL_DIR)/usr/sbin/zabbix_server $(1)/usr/sbin/ - $(INSTALL_DIR) $(1)/etc/zabbix - $(INSTALL_CONF) $(PKG_BUILD_DIR)/misc/conf/zabbix_server.conf $(1)/etc/zabbix/ + $(call Package/zabbix/install/sbin,$(1),server) + $(call Package/zabbix/install/etc,$(1),server) +endef + +define Package/zabbix-proxy/install + $(call Package/zabbix/install/sbin,$(1),proxy) + $(call Package/zabbix/install/etc,$(1),proxy) endef $(eval $(call BuildPackage,zabbix-agent)) +$(eval $(call BuildPackage,zabbix-agentd)) +$(eval $(call BuildPackage,zabbix-extra-mac80211)) +$(eval $(call BuildPackage,zabbix-extra-network)) +$(eval $(call BuildPackage,zabbix-extra-wifi)) $(eval $(call BuildPackage,zabbix-sender)) $(eval $(call BuildPackage,zabbix-server)) +$(eval $(call BuildPackage,zabbix-proxy)) +$(eval $(call BuildPackage,zabbix-get))