xref: /OK3568_Linux_fs/yocto/meta-openembedded/meta-oe/recipes-connectivity/zabbix/zabbix_5.4.12.bb (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593SmuzhiyunSUMMARY = "Open-source monitoring solution for your IT infrastructure"
2*4882a593SmuzhiyunDESCRIPTION = "\
3*4882a593SmuzhiyunZABBIX is software that monitors numerous parameters of a network and the \
4*4882a593Smuzhiyunhealth and integrity of servers. ZABBIX uses a flexible notification \
5*4882a593Smuzhiyunmechanism that allows users to configure e-mail based alerts for virtually \
6*4882a593Smuzhiyunany event. This allows a fast reaction to server problems. ZABBIX offers \
7*4882a593Smuzhiyunexcellent reporting and data visualisation features based on the stored \
8*4882a593Smuzhiyundata. This makes ZABBIX ideal for capacity planning. \
9*4882a593Smuzhiyun\
10*4882a593SmuzhiyunZABBIX supports both polling and trapping. All ZABBIX reports and \
11*4882a593Smuzhiyunstatistics, as well as configuration parameters are accessed through a \
12*4882a593Smuzhiyunweb-based front end. A web-based front end ensures that the status of \
13*4882a593Smuzhiyunyour network and the health of your servers can be assessed from any \
14*4882a593Smuzhiyunlocation. Properly configured, ZABBIX can play an important role in \
15*4882a593Smuzhiyunmonitoring IT infrastructure. This is equally true for small \
16*4882a593Smuzhiyunorganisations with a few servers and for large companies with a \
17*4882a593Smuzhiyunmultitude of servers."
18*4882a593SmuzhiyunHOMEPAGE = "http://www.zabbix.com/"
19*4882a593SmuzhiyunSECTION = "Applications/Internet"
20*4882a593SmuzhiyunLICENSE = "GPL-2.0-or-later"
21*4882a593SmuzhiyunLIC_FILES_CHKSUM = "file://COPYING;md5=300e938ad303147fede2294ed78fe02e"
22*4882a593SmuzhiyunDEPENDS  = "libevent libpcre openldap virtual/libiconv zlib"
23*4882a593Smuzhiyun
24*4882a593SmuzhiyunPACKAGE_ARCH = "${MACHINE_ARCH}"
25*4882a593Smuzhiyun
26*4882a593SmuzhiyunSRC_URI = "https://cdn.zabbix.com/zabbix/sources/stable/5.4/${BPN}-${PV}.tar.gz \
27*4882a593Smuzhiyun    file://0001-Fix-configure.ac.patch \
28*4882a593Smuzhiyun    file://zabbix-agent.service \
29*4882a593Smuzhiyun    file://CVE-2022-43515.patch \
30*4882a593Smuzhiyun    file://CVE-2022-46768.patch \
31*4882a593Smuzhiyun"
32*4882a593Smuzhiyun
33*4882a593SmuzhiyunSRC_URI[md5sum] = "f295fd2df86143d72f6ff26e47d9e39e"
34*4882a593SmuzhiyunSRC_URI[sha256sum] = "d60d5515807c30c05d0900b83a7e6ef6479929aef7d6f248fba481c4816bacf4"
35*4882a593Smuzhiyun
36*4882a593Smuzhiyuninherit autotools-brokensep linux-kernel-base pkgconfig systemd useradd
37*4882a593Smuzhiyun
38*4882a593SmuzhiyunSYSTEMD_PACKAGES = "${PN}"
39*4882a593SmuzhiyunSYSTEMD_SERVICE:${PN} = "zabbix-agent.service"
40*4882a593SmuzhiyunSYSTEMD_AUTO_ENABLE = "enable"
41*4882a593Smuzhiyun
42*4882a593SmuzhiyunUSERADD_PACKAGES = "${PN}"
43*4882a593SmuzhiyunGROUPADD_PARAM:${PN} = "-r zabbix"
44*4882a593SmuzhiyunUSERADD_PARAM:${PN} = "-r -g zabbix -d /var/lib/zabbix \
45*4882a593Smuzhiyun    -s /sbin/nologin -c \"Zabbix Monitoring System\" zabbix \
46*4882a593Smuzhiyun"
47*4882a593Smuzhiyun
48*4882a593SmuzhiyunKERNEL_VERSION = "${@get_kernelversion_headers('${STAGING_KERNEL_DIR}')}"
49*4882a593Smuzhiyun
50*4882a593SmuzhiyunEXTRA_OECONF = " \
51*4882a593Smuzhiyun    --enable-dependency-tracking \
52*4882a593Smuzhiyun    --enable-agent \
53*4882a593Smuzhiyun    --enable-ipv6 \
54*4882a593Smuzhiyun    --with-net-snmp \
55*4882a593Smuzhiyun    --with-ldap=${STAGING_EXECPREFIXDIR} \
56*4882a593Smuzhiyun    --with-unixodbc \
57*4882a593Smuzhiyun    --with-ssh2 \
58*4882a593Smuzhiyun    --with-sqlite3 \
59*4882a593Smuzhiyun    --with-zlib \
60*4882a593Smuzhiyun    --with-libpthread \
61*4882a593Smuzhiyun    --with-libevent \
62*4882a593Smuzhiyun    --with-libpcre=${STAGING_EXECPREFIXDIR} \
63*4882a593Smuzhiyun    --with-iconv=${STAGING_EXECPREFIXDIR} \
64*4882a593Smuzhiyun"
65*4882a593SmuzhiyunCFLAGS:append = " -lldap -llber -pthread"
66*4882a593Smuzhiyun
67*4882a593Smuzhiyundo_configure:prepend() {
68*4882a593Smuzhiyun    export KERNEL_VERSION="${KERNEL_VERSION}"
69*4882a593Smuzhiyun}
70*4882a593Smuzhiyun
71*4882a593Smuzhiyundo_install:append() {
72*4882a593Smuzhiyun    if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then
73*4882a593Smuzhiyun        install -d ${D}${systemd_unitdir}/system
74*4882a593Smuzhiyun        install -m 0644 ${WORKDIR}/zabbix-agent.service ${D}${systemd_unitdir}/system/
75*4882a593Smuzhiyun        sed -i -e 's#@SBINDIR@#${sbindir}#g' ${D}${systemd_unitdir}/system/zabbix-agent.service
76*4882a593Smuzhiyun    fi
77*4882a593Smuzhiyun}
78*4882a593Smuzhiyun
79*4882a593SmuzhiyunFILES:${PN} += "${libdir}"
80*4882a593Smuzhiyun
81*4882a593SmuzhiyunRDEPENDS:${PN} = "logrotate"
82