2 # Copyright (C) 2006-2015 OpenWrt.org
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
8 include $(TOPDIR
)/rules.mk
14 PKG_SOURCE
:=$(PKG_NAME
)-$(PKG_VERSION
).
tar.gz
15 PKG_SOURCE_URL
:=https
://cdn.zabbix.com
/zabbix
/sources
/stable
/$(basename $(PKG_VERSION
))/ \
16 https
://cdn.zabbix.com
/zabbix
/sources
/oldstable
/$(basename $(PKG_VERSION
))/
17 PKG_HASH
:=6b4e81f07de4c82c7994871bea51be4d6427683fa9a7fbe112fd7559b3670e49
19 PKG_MAINTAINER
:=Etienne CHAMPETIER
<champetier.etienne@gmail.com
>
21 PKG_LICENSE_FILES
:=COPYING
22 PKG_CPE_ID
:=cpe
:/a
:zabbix
:zabbix
27 PKG_CONFIG_DEPENDS
:= \
29 CONFIG_ZABBIX_POSTGRESQL \
32 include $(INCLUDE_DIR
)/package.mk
33 include $(INCLUDE_DIR
)/nls.mk
35 define Package
/zabbix-proxy
/config
36 comment
"Database Software"
39 prompt
"Selected Database Software"
40 default ZABBIX_POSTGRESQL
45 config ZABBIX_POSTGRESQL
53 define Package
/zabbix
/Default
55 CATEGORY
:=Administration
58 URL
:=https
://www.zabbix.com
/
59 USERID
:=zabbix
=53:zabbix
=53
60 DEPENDS
+=$(ICONV_DEPENDS
) +libpcre2
+zlib
63 define Package
/zabbix-agentd
64 $(call Package
/zabbix
/Default
)
66 PROVIDES
:=zabbix-agentd
71 define Package
/zabbix-agentd-openssl
72 $(call Package
/zabbix
/Default
)
73 TITLE
+= agentd
(with OpenSSL
)
75 PROVIDES
:=zabbix-agentd
79 define Package
/zabbix-agentd-gnutls
80 $(call Package
/zabbix
/Default
)
81 TITLE
+= agentd
(with GnuTLS
)
83 PROVIDES
:=zabbix-agentd
87 define Package
/zabbix-extra-mac80211
88 $(call Package
/zabbix
/Default
)
89 TITLE
+= discovery
/userparameters for mac80211
90 DEPENDS
= +zabbix-agentd @PACKAGE_MAC80211_DEBUGFS @KERNEL_DEBUG_FS
93 define Package
/zabbix-extra-network
94 $(call Package
/zabbix
/Default
)
95 TITLE
+= discovery
/userparameters for network
96 DEPENDS
= +zabbix-agentd
+libubus-lua
+lua
99 define Package
/zabbix-extra-wifi
100 $(call Package
/zabbix
/Default
)
101 TITLE
+= discovery
/userparameters for wifi
102 DEPENDS
= +zabbix-agentd
+libiwinfo-lua
+libubus-lua
+lua
105 define Package
/zabbix-sender
106 $(call Package
/zabbix
/Default
)
108 PROVIDES
:=zabbix-sender
113 define Package
/zabbix-sender-openssl
114 $(call Package
/zabbix
/Default
)
115 TITLE
+= sender
(with OpenSSL
)
116 DEPENDS
+= +libopenssl
117 PROVIDES
:=zabbix-sender
121 define Package
/zabbix-sender-gnutls
122 $(call Package
/zabbix
/Default
)
123 TITLE
+= sender
(with GnuTLS
)
125 PROVIDES
:=zabbix-sender
129 define Package
/zabbix-get
130 $(call Package
/zabbix
/Default
)
137 define Package
/zabbix-get-openssl
138 $(call Package
/zabbix
/Default
)
139 TITLE
+= get (with OpenSSL
)
140 DEPENDS
+= +libopenssl
145 define Package
/zabbix-get-gnutls
146 $(call Package
/zabbix
/Default
)
147 TITLE
+= get (with GnuTLS
)
153 define Package
/zabbix-server
/Default
154 $(call Package
/zabbix
/Default
)
156 DEPENDS
+= +ZABBIX_POSTGRESQL
:libpq \
157 +ZABBIX_MYSQL
:libmariadbclient \
160 +libevent2-pthreads \
164 define Package
/zabbix-server
165 $(call Package
/zabbix-server
/Default
)
166 PROVIDES
:=zabbix-server
171 define Package
/zabbix-server-openssl
172 $(call Package
/zabbix-server
/Default
)
173 TITLE
+= (with OpenSSL
)
174 PROVIDES
:=zabbix-server
175 DEPENDS
+= +libopenssl
179 define Package
/zabbix-server-gnutls
180 $(call Package
/zabbix-server
/Default
)
181 TITLE
+= (with GnuTLS
)
182 PROVIDES
:=zabbix-server
187 define Package
/zabbix-server-frontend
188 $(call Package
/zabbix
/Default
)
189 TITLE
+= server-frontend
195 +php8-mod-xmlreader \
196 +php8-mod-xmlwriter \
201 +ZABBIX_POSTGRESQL
:php8-mod-pgsql \
202 +ZABBIX_MYSQL
:php8-mod-mysqli \
206 define Package
/zabbix-proxy
/Default
207 $(call Package
/zabbix
/Default
)
209 DEPENDS
+= +ZABBIX_POSTGRESQL
:libpq \
210 +ZABBIX_MYSQL
:libmariadbclient \
211 +ZABBIX_SQLITE
:libsqlite3 \
213 +libevent2-pthreads \
217 define Package
/zabbix-proxy
218 $(call Package
/zabbix-proxy
/Default
)
219 PROVIDES
:=zabbix-proxy
224 define Package
/zabbix-proxy-openssl
225 $(call Package
/zabbix-proxy
/Default
)
226 TITLE
+= (with OpenSSL
)
227 PROVIDES
:=zabbix-proxy
228 DEPENDS
+= +libopenssl
232 define Package
/zabbix-proxy-gnutls
233 $(call Package
/zabbix-proxy
/Default
)
234 TITLE
+= (with GnuTLS
)
235 PROVIDES
:=zabbix-proxy
240 define Package
/zabbix-extra-mac80211
/description
241 An extra package for zabbix-agentd that adds a discovery rule for mac80211 wifi phy and many userparameters.
242 It contains an suid helper to allow zabbix-agentd to still run
as zabbix user and not
as root.
243 See https
://openwrt.org
/docs
/guide-user
/services
/network_monitoring
/zabbix for ready to use zabbix templates.
246 define Package
/zabbix-extra-network
/description
247 An extra package for zabbix-agentd that adds a discovery rule for openwrt network interfaces.
248 The idea here is to discover only interfaces listed in
/etc
/config
/network
(discover br-lan and not eth0.1 and wlan0
)
249 See https
://openwrt.org
/docs
/guide-user
/services
/network_monitoring
/zabbix for ready to use zabbix templates.
252 define Package
/zabbix-extra-wifi
/description
253 An extra package for zabbix-agentd that adds a discovery rule for wifi interfaces and many userparameters.
254 As it uses libiwinfo
, it works with
all wifi devices supported by openwrt.
255 See https
://openwrt.org
/docs
/guide-user
/services
/network_monitoring
/zabbix for ready to use zabbix templates.
260 $(if
$(CONFIG_ZABBIX_SQLITE
),--disable-server
,--enable-server
) \
262 $(call autoconf_bool
,CONFIG_IPV6
,ipv6
) \
264 $(if
$(CONFIG_ZABBIX_MYSQL
),--with-mysql
) \
265 $(if
$(CONFIG_ZABBIX_POSTGRESQL
),--with-postgresql
) \
266 $(if
$(CONFIG_ZABBIX_SQLITE
),--with-sqlite3
=$(STAGING_DIR
)/usr
) \
267 --with-libevent
=$(STAGING_DIR
)/usr
/include \
268 --with-libpcre2
=$(STAGING_DIR
)/usr
/include \
269 --with-zlib
=$(STAGING_DIR
)/usr
/include
271 ifeq ($(BUILD_VARIANT
),openssl
)
272 CONFIGURE_ARGS
+= --with-openssl
="$(STAGING_DIR)/usr"
275 ifeq ($(BUILD_VARIANT
),gnutls
)
276 CONFIGURE_ARGS
+= --with-gnutls
="$(STAGING_DIR)/usr"
280 ac_cv_header_sys_sysinfo_h
=no
282 MAKE_FLAGS
+= ARCH
="linux"
284 define Package
/zabbix
/install/sbin
289 $(PKG_INSTALL_DIR
)/usr
/sbin
/zabbix_
$(2) \
293 define Package
/zabbix
/install/bin
298 $(PKG_INSTALL_DIR
)/usr
/bin
/zabbix_
$(2) \
302 define Package
/zabbix
/install/etc
307 $(PKG_INSTALL_DIR
)/etc
/zabbix_
$(2).conf \
311 define Package
/zabbix
/install/init.d
316 .
/files
/zabbix_
$(2).init \
317 $(1)/etc
/init.d
/zabbix_
$(2)
320 define Package
/zabbix
/install/zabbix.conf.d
322 $(1)/etc
/zabbix_agentd.conf.d
326 $(1)/etc
/zabbix_agentd.conf.d
/$(2)
329 define Package
/zabbix-agentd
/conffiles
330 /etc
/zabbix_agentd.conf
332 Package
/zabbix-agentd-openssl
/conffiles
= $(Package
/zabbix-agentd
/conffiles
)
333 Package
/zabbix-agentd-gnutls
/conffiles
= $(Package
/zabbix-agentd
/conffiles
)
335 define Package
/zabbix-server
/conffiles
336 /etc
/zabbix_server.conf
338 Package
/zabbix-server-openssl
/conffiles
= $(Package
/zabbix-server
/conffiles
)
339 Package
/zabbix-server-gnutls
/conffiles
= $(Package
/zabbix-server
/conffiles
)
341 define Package
/zabbix-proxy
/conffiles
342 /etc
/zabbix_proxy.conf
344 Package
/zabbix-proxy-openssl
/conffiles
= $(Package
/zabbix-proxy
/conffiles
)
345 Package
/zabbix-proxy-gnutls
/conffiles
= $(Package
/zabbix-proxy
/conffiles
)
347 ifdef CONFIG_PACKAGE_zabbix-extra-mac80211
348 define Build
/Prepare
/zabbix-extra-mac80211
349 mkdir
-p
$(PKG_BUILD_DIR
)/zabbix-extra-mac80211
350 $(CP
) .
/files
/zabbix_helper_mac80211.c
$(PKG_BUILD_DIR
)/zabbix-extra-mac80211
/
353 define Build
/Compile
/zabbix-extra-mac80211
354 $(TARGET_CC
) $(TARGET_CFLAGS
) $(PKG_BUILD_DIR
)/zabbix-extra-mac80211
/zabbix_helper_mac80211.c
-o
$(PKG_BUILD_DIR
)/zabbix-extra-mac80211
/zabbix_helper_mac80211
359 $(call Build
/Prepare
/Default
)
360 $(call Build
/Prepare
/zabbix-extra-mac80211
)
364 $(call Build
/Compile
/Default
)
365 $(call Build
/Compile
/zabbix-extra-mac80211
)
368 define Package
/zabbix-agentd
/install
369 $(INSTALL_DIR
) $(1)/etc
/zabbix_agentd.conf.d
370 $(call Package
/zabbix
/install/sbin
,$(1),agentd
)
371 $(call Package
/zabbix
/install/etc
,$(1),agentd
)
372 $(call Package
/zabbix
/install/init.d
,$(1),agentd
)
374 Package
/zabbix-agentd-openssl
/install = $(Package
/zabbix-agentd
/install)
375 Package
/zabbix-agentd-gnutls
/install = $(Package
/zabbix-agentd
/install)
377 define Package
/zabbix-extra-mac80211
/install
378 $(call Package
/zabbix
/install/zabbix.conf.d
,$(1),mac80211
)
379 $(INSTALL_DIR
) $(1)/usr
/bin
380 $(INSTALL_BIN
) $(PKG_BUILD_DIR
)/zabbix-extra-mac80211
/zabbix_helper_mac80211
$(1)/usr
/bin
/
381 chmod
4755 $(1)/usr
/bin
/zabbix_helper_mac80211
384 define Package
/zabbix-extra-network
/install
385 $(call Package
/zabbix
/install/zabbix.conf.d
,$(1),network
)
386 $(INSTALL_DIR
) $(1)/usr
/share
/acl.d
387 $(INSTALL_DATA
) .
/files
/zabbix-network-ubus-acl.json
$(1)/usr
/share
/acl.d
/zabbix-network.json
390 define Package
/zabbix-extra-network
/postinst
392 if
[ -z
"$${IPKG_INSTROOT}" ]; then
397 define Package
/zabbix-extra-wifi
/install
398 $(call Package
/zabbix
/install/zabbix.conf.d
,$(1),wifi
)
399 $(INSTALL_DIR
) $(1)/usr
/share
/acl.d
400 $(INSTALL_DATA
) .
/files
/zabbix-wifi-ubus-acl.json
$(1)/usr
/share
/acl.d
/zabbix-wifi.json
403 define Package
/zabbix-extra-wifi
/postinst
405 if
[ -z
"$${IPKG_INSTROOT}" ]; then
410 define Package
/zabbix-sender
/install
411 $(call Package
/zabbix
/install/bin
,$(1),sender
)
413 Package
/zabbix-sender-openssl
/install = $(Package
/zabbix-sender
/install)
414 Package
/zabbix-sender-gnutls
/install = $(Package
/zabbix-sender
/install)
416 define Package
/zabbix-get
/install
417 $(call Package
/zabbix
/install/bin
,$(1),get)
419 Package
/zabbix-get-openssl
/install = $(Package
/zabbix-get
/install)
420 Package
/zabbix-get-gnutls
/install = $(Package
/zabbix-get
/install)
422 define Package
/zabbix-server
/install
423 $(call Package
/zabbix
/install/sbin
,$(1),server
)
424 $(call Package
/zabbix
/install/etc
,$(1),server
)
426 Package
/zabbix-server-openssl
/install = $(Package
/zabbix-server
/install)
427 Package
/zabbix-server-gnutls
/install = $(Package
/zabbix-server
/install)
429 define Package
/zabbix-server-frontend
/install
430 $(INSTALL_DIR
) $(1)/www
/zabbix
431 $(CP
) $(PKG_BUILD_DIR
)/ui
/* $(1)/www
/zabbix
434 define Package
/zabbix-proxy
/install
435 $(call Package
/zabbix
/install/sbin
,$(1),proxy
)
436 $(call Package
/zabbix
/install/etc
,$(1),proxy
)
438 Package
/zabbix-proxy-openssl
/install = $(Package
/zabbix-proxy
/install)
439 Package
/zabbix-proxy-gnutls
/install = $(Package
/zabbix-proxy
/install)
441 $(eval
$(call BuildPackage
,zabbix-agentd
))
442 $(eval
$(call BuildPackage
,zabbix-agentd-openssl
))
443 $(eval
$(call BuildPackage
,zabbix-agentd-gnutls
))
444 $(eval
$(call BuildPackage
,zabbix-extra-mac80211
))
445 $(eval
$(call BuildPackage
,zabbix-extra-network
))
446 $(eval
$(call BuildPackage
,zabbix-extra-wifi
))
447 $(eval
$(call BuildPackage
,zabbix-sender
))
448 $(eval
$(call BuildPackage
,zabbix-sender-openssl
))
449 $(eval
$(call BuildPackage
,zabbix-sender-gnutls
))
450 $(eval
$(call BuildPackage
,zabbix-server
))
451 $(eval
$(call BuildPackage
,zabbix-server-openssl
))
452 $(eval
$(call BuildPackage
,zabbix-server-gnutls
))
453 $(eval
$(call BuildPackage
,zabbix-server-frontend
))
454 $(eval
$(call BuildPackage
,zabbix-proxy
))
455 $(eval
$(call BuildPackage
,zabbix-proxy-openssl
))
456 $(eval
$(call BuildPackage
,zabbix-proxy-gnutls
))
457 $(eval
$(call BuildPackage
,zabbix-get
))
458 $(eval
$(call BuildPackage
,zabbix-get-openssl
))
459 $(eval
$(call BuildPackage
,zabbix-get-gnutls
))