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
/6.2/
16 PKG_HASH
:=2be7e57fb33a55fee71480598e317ffa6a8ee5a39639a7e1b42b2ea6872107b5
18 PKG_MAINTAINER
:=Etienne CHAMPETIER
<champetier.etienne@gmail.com
>
20 PKG_LICENSE_FILES
:=COPYING
21 PKG_CPE_ID
:=cpe
:/a
:zabbix
:zabbix
26 PKG_CONFIG_DEPENDS
:= \
28 CONFIG_ZABBIX_POSTGRESQL \
31 include $(INCLUDE_DIR
)/package.mk
32 include $(INCLUDE_DIR
)/nls.mk
34 define Package
/zabbix-proxy
/config
35 comment
"Database Software"
38 prompt
"Selected Database Software"
39 default ZABBIX_POSTGRESQL
44 config ZABBIX_POSTGRESQL
52 define Package
/zabbix
/Default
54 CATEGORY
:=Administration
57 URL
:=https
://www.zabbix.com
/
58 USERID
:=zabbix
=53:zabbix
=53
59 DEPENDS
+=$(ICONV_DEPENDS
) +libpcre
+zlib
62 define Package
/zabbix-agentd
63 $(call Package
/zabbix
/Default
)
65 PROVIDES
:=zabbix-agentd
70 define Package
/zabbix-agentd-openssl
71 $(call Package
/zabbix
/Default
)
72 TITLE
+= agentd
(with OpenSSL
)
74 PROVIDES
:=zabbix-agentd
78 define Package
/zabbix-agentd-gnutls
79 $(call Package
/zabbix
/Default
)
80 TITLE
+= agentd
(with GnuTLS
)
82 PROVIDES
:=zabbix-agentd
86 define Package
/zabbix-extra-mac80211
87 $(call Package
/zabbix
/Default
)
88 TITLE
+= discovery
/userparameters for mac80211
89 DEPENDS
= +zabbix-agentd @PACKAGE_MAC80211_DEBUGFS @KERNEL_DEBUG_FS
92 define Package
/zabbix-extra-network
93 $(call Package
/zabbix
/Default
)
94 TITLE
+= discovery
/userparameters for network
95 DEPENDS
= +zabbix-agentd
+libubus-lua
+lua
98 define Package
/zabbix-extra-wifi
99 $(call Package
/zabbix
/Default
)
100 TITLE
+= discovery
/userparameters for wifi
101 DEPENDS
= +zabbix-agentd
+libiwinfo-lua
+libubus-lua
+lua
104 define Package
/zabbix-sender
105 $(call Package
/zabbix
/Default
)
107 PROVIDES
:=zabbix-sender
112 define Package
/zabbix-sender-openssl
113 $(call Package
/zabbix
/Default
)
114 TITLE
+= sender
(with OpenSSL
)
115 DEPENDS
+= +libopenssl
116 PROVIDES
:=zabbix-sender
120 define Package
/zabbix-sender-gnutls
121 $(call Package
/zabbix
/Default
)
122 TITLE
+= sender
(with GnuTLS
)
124 PROVIDES
:=zabbix-sender
128 define Package
/zabbix-get
129 $(call Package
/zabbix
/Default
)
136 define Package
/zabbix-get-openssl
137 $(call Package
/zabbix
/Default
)
138 TITLE
+= get (with OpenSSL
)
139 DEPENDS
+= +libopenssl
144 define Package
/zabbix-get-gnutls
145 $(call Package
/zabbix
/Default
)
146 TITLE
+= get (with GnuTLS
)
152 define Package
/zabbix-server
/Default
153 $(call Package
/zabbix
/Default
)
155 DEPENDS
+= +ZABBIX_POSTGRESQL
:libpq \
156 +ZABBIX_MYSQL
:libmariadbclient \
162 define Package
/zabbix-server
163 $(call Package
/zabbix-server
/Default
)
164 PROVIDES
:=zabbix-server
169 define Package
/zabbix-server-openssl
170 $(call Package
/zabbix-server
/Default
)
171 TITLE
+= (with OpenSSL
)
172 PROVIDES
:=zabbix-server
173 DEPENDS
+= +libopenssl
177 define Package
/zabbix-server-gnutls
178 $(call Package
/zabbix-server
/Default
)
179 TITLE
+= (with GnuTLS
)
180 PROVIDES
:=zabbix-server
185 define Package
/zabbix-server-frontend
186 $(call Package
/zabbix
/Default
)
187 TITLE
+= server-frontend
193 +php8-mod-xmlreader \
194 +php8-mod-xmlwriter \
199 +ZABBIX_POSTGRESQL
:php8-mod-pgsql \
200 +ZABBIX_MYSQL
:php8-mod-mysqli \
204 define Package
/zabbix-proxy
/Default
205 $(call Package
/zabbix
/Default
)
207 DEPENDS
+= +ZABBIX_POSTGRESQL
:libpq \
208 +ZABBIX_MYSQL
:libmariadbclient \
209 +ZABBIX_SQLITE
:libsqlite3 \
214 define Package
/zabbix-proxy
215 $(call Package
/zabbix-proxy
/Default
)
216 PROVIDES
:=zabbix-proxy
221 define Package
/zabbix-proxy-openssl
222 $(call Package
/zabbix-proxy
/Default
)
223 TITLE
+= (with OpenSSL
)
224 PROVIDES
:=zabbix-proxy
225 DEPENDS
+= +libopenssl
229 define Package
/zabbix-proxy-gnutls
230 $(call Package
/zabbix-proxy
/Default
)
231 TITLE
+= (with GnuTLS
)
232 PROVIDES
:=zabbix-proxy
237 define Package
/zabbix-extra-mac80211
/description
238 An extra package for zabbix-agentd that adds a discovery rule for mac80211 wifi phy and many userparameters.
239 It contains an suid helper to allow zabbix-agentd to still run
as zabbix user and not
as root.
240 See https
://openwrt.org
/docs
/guide-user
/services
/network_monitoring
/zabbix for ready to use zabbix templates.
243 define Package
/zabbix-extra-network
/description
244 An extra package for zabbix-agentd that adds a discovery rule for openwrt network interfaces.
245 The idea here is to discover only interfaces listed in
/etc
/config
/network
(discover br-lan and not eth0.1 and wlan0
)
246 See https
://openwrt.org
/docs
/guide-user
/services
/network_monitoring
/zabbix for ready to use zabbix templates.
249 define Package
/zabbix-extra-wifi
/description
250 An extra package for zabbix-agentd that adds a discovery rule for wifi interfaces and many userparameters.
251 As it uses libiwinfo
, it works with
all wifi devices supported by openwrt.
252 See https
://openwrt.org
/docs
/guide-user
/services
/network_monitoring
/zabbix for ready to use zabbix templates.
257 $(if
$(CONFIG_ZABBIX_SQLITE
),--disable-server
,--enable-server
) \
259 $(call autoconf_bool
,CONFIG_IPV6
,ipv6
) \
261 $(if
$(CONFIG_ZABBIX_MYSQL
),--with-mysql
) \
262 $(if
$(CONFIG_ZABBIX_POSTGRESQL
),--with-postgresql
) \
263 $(if
$(CONFIG_ZABBIX_SQLITE
),--with-sqlite3
=$(STAGING_DIR
)/usr
) \
264 --with-libevent
=$(STAGING_DIR
)/usr
/include/libevent \
265 --with-libpcre
=$(STAGING_DIR
)/usr
/include \
266 --with-zlib
=$(STAGING_DIR
)/usr
/include
268 ifeq ($(BUILD_VARIANT
),openssl
)
269 CONFIGURE_ARGS
+= --with-openssl
="$(STAGING_DIR)/usr"
272 ifeq ($(BUILD_VARIANT
),gnutls
)
273 CONFIGURE_ARGS
+= --with-gnutls
="$(STAGING_DIR)/usr"
277 ac_cv_header_sys_sysinfo_h
=no
279 MAKE_FLAGS
+= ARCH
="linux"
281 define Package
/zabbix
/install/sbin
286 $(PKG_INSTALL_DIR
)/usr
/sbin
/zabbix_
$(2) \
290 define Package
/zabbix
/install/bin
295 $(PKG_INSTALL_DIR
)/usr
/bin
/zabbix_
$(2) \
299 define Package
/zabbix
/install/etc
304 $(PKG_INSTALL_DIR
)/etc
/zabbix_
$(2).conf \
308 define Package
/zabbix
/install/init.d
313 .
/files
/zabbix_
$(2).init \
314 $(1)/etc
/init.d
/zabbix_
$(2)
317 define Package
/zabbix
/install/zabbix.conf.d
319 $(1)/etc
/zabbix_agentd.conf.d
323 $(1)/etc
/zabbix_agentd.conf.d
/$(2)
326 define Package
/zabbix-agentd
/conffiles
327 /etc
/zabbix_agentd.conf
329 Package
/zabbix-agentd-openssl
/conffiles
= $(Package
/zabbix-agentd
/conffiles
)
330 Package
/zabbix-agentd-gnutls
/conffiles
= $(Package
/zabbix-agentd
/conffiles
)
332 define Package
/zabbix-server
/conffiles
333 /etc
/zabbix_server.conf
335 Package
/zabbix-server-openssl
/conffiles
= $(Package
/zabbix-server
/conffiles
)
336 Package
/zabbix-server-gnutls
/conffiles
= $(Package
/zabbix-server
/conffiles
)
338 define Package
/zabbix-proxy
/conffiles
339 /etc
/zabbix_proxy.conf
341 Package
/zabbix-proxy-openssl
/conffiles
= $(Package
/zabbix-proxy
/conffiles
)
342 Package
/zabbix-proxy-gnutls
/conffiles
= $(Package
/zabbix-proxy
/conffiles
)
344 ifdef CONFIG_PACKAGE_zabbix-extra-mac80211
345 define Build
/Prepare
/zabbix-extra-mac80211
346 mkdir
-p
$(PKG_BUILD_DIR
)/zabbix-extra-mac80211
347 $(CP
) .
/files
/zabbix_helper_mac80211.c
$(PKG_BUILD_DIR
)/zabbix-extra-mac80211
/
350 define Build
/Compile
/zabbix-extra-mac80211
351 $(TARGET_CC
) $(TARGET_CFLAGS
) $(PKG_BUILD_DIR
)/zabbix-extra-mac80211
/zabbix_helper_mac80211.c
-o
$(PKG_BUILD_DIR
)/zabbix-extra-mac80211
/zabbix_helper_mac80211
356 $(call Build
/Prepare
/Default
)
357 $(call Build
/Prepare
/zabbix-extra-mac80211
)
361 $(call Build
/Compile
/Default
)
362 $(call Build
/Compile
/zabbix-extra-mac80211
)
365 define Package
/zabbix-agentd
/install
366 $(INSTALL_DIR
) $(1)/etc
/zabbix_agentd.conf.d
367 $(call Package
/zabbix
/install/sbin
,$(1),agentd
)
368 $(call Package
/zabbix
/install/etc
,$(1),agentd
)
369 $(call Package
/zabbix
/install/init.d
,$(1),agentd
)
371 Package
/zabbix-agentd-openssl
/install = $(Package
/zabbix-agentd
/install)
372 Package
/zabbix-agentd-gnutls
/install = $(Package
/zabbix-agentd
/install)
374 define Package
/zabbix-extra-mac80211
/install
375 $(call Package
/zabbix
/install/zabbix.conf.d
,$(1),mac80211
)
376 $(INSTALL_DIR
) $(1)/usr
/bin
377 $(INSTALL_BIN
) $(PKG_BUILD_DIR
)/zabbix-extra-mac80211
/zabbix_helper_mac80211
$(1)/usr
/bin
/
378 chmod
4755 $(1)/usr
/bin
/zabbix_helper_mac80211
381 define Package
/zabbix-extra-network
/install
382 $(call Package
/zabbix
/install/zabbix.conf.d
,$(1),network
)
383 $(INSTALL_DIR
) $(1)/usr
/share
/acl.d
384 $(INSTALL_DATA
) .
/files
/zabbix-network-ubus-acl.json
$(1)/usr
/share
/acl.d
/zabbix-network.json
387 define Package
/zabbix-extra-network
/postinst
389 if
[ -z
"$${IPKG_INSTROOT}" ]; then
394 define Package
/zabbix-extra-wifi
/install
395 $(call Package
/zabbix
/install/zabbix.conf.d
,$(1),wifi
)
396 $(INSTALL_DIR
) $(1)/usr
/share
/acl.d
397 $(INSTALL_DATA
) .
/files
/zabbix-wifi-ubus-acl.json
$(1)/usr
/share
/acl.d
/zabbix-wifi.json
400 define Package
/zabbix-extra-wifi
/postinst
402 if
[ -z
"$${IPKG_INSTROOT}" ]; then
407 define Package
/zabbix-sender
/install
408 $(call Package
/zabbix
/install/bin
,$(1),sender
)
410 Package
/zabbix-sender-openssl
/install = $(Package
/zabbix-sender
/install)
411 Package
/zabbix-sender-gnutls
/install = $(Package
/zabbix-sender
/install)
413 define Package
/zabbix-get
/install
414 $(call Package
/zabbix
/install/bin
,$(1),get)
416 Package
/zabbix-get-openssl
/install = $(Package
/zabbix-get
/install)
417 Package
/zabbix-get-gnutls
/install = $(Package
/zabbix-get
/install)
419 define Package
/zabbix-server
/install
420 $(call Package
/zabbix
/install/sbin
,$(1),server
)
421 $(call Package
/zabbix
/install/etc
,$(1),server
)
423 Package
/zabbix-server-openssl
/install = $(Package
/zabbix-server
/install)
424 Package
/zabbix-server-gnutls
/install = $(Package
/zabbix-server
/install)
426 define Package
/zabbix-server-frontend
/install
427 $(INSTALL_DIR
) $(1)/www
/zabbix
428 $(CP
) $(PKG_BUILD_DIR
)/ui
/* $(1)/www
/zabbix
431 define Package
/zabbix-proxy
/install
432 $(call Package
/zabbix
/install/sbin
,$(1),proxy
)
433 $(call Package
/zabbix
/install/etc
,$(1),proxy
)
435 Package
/zabbix-proxy-openssl
/install = $(Package
/zabbix-proxy
/install)
436 Package
/zabbix-proxy-gnutls
/install = $(Package
/zabbix-proxy
/install)
438 $(eval
$(call BuildPackage
,zabbix-agentd
))
439 $(eval
$(call BuildPackage
,zabbix-agentd-openssl
))
440 $(eval
$(call BuildPackage
,zabbix-agentd-gnutls
))
441 $(eval
$(call BuildPackage
,zabbix-extra-mac80211
))
442 $(eval
$(call BuildPackage
,zabbix-extra-network
))
443 $(eval
$(call BuildPackage
,zabbix-extra-wifi
))
444 $(eval
$(call BuildPackage
,zabbix-sender
))
445 $(eval
$(call BuildPackage
,zabbix-sender-openssl
))
446 $(eval
$(call BuildPackage
,zabbix-sender-gnutls
))
447 $(eval
$(call BuildPackage
,zabbix-server
))
448 $(eval
$(call BuildPackage
,zabbix-server-openssl
))
449 $(eval
$(call BuildPackage
,zabbix-server-gnutls
))
450 $(eval
$(call BuildPackage
,zabbix-server-frontend
))
451 $(eval
$(call BuildPackage
,zabbix-proxy
))
452 $(eval
$(call BuildPackage
,zabbix-proxy-openssl
))
453 $(eval
$(call BuildPackage
,zabbix-proxy-gnutls
))
454 $(eval
$(call BuildPackage
,zabbix-get
))
455 $(eval
$(call BuildPackage
,zabbix-get-openssl
))
456 $(eval
$(call BuildPackage
,zabbix-get-gnutls
))