# - initscript for zabbix-server, zabbix-proxy and zabbix-java
#
# Conditional build:
-%bcond_with agent2 # build Zabbix Agent 2
+%bcond_without agent2 # build Zabbix Agent 2
%bcond_without pgsql # enable PostgreSQL support
%bcond_without sqlite3 # enable sqlite3 support
%bcond_without mysql # enable MySQL support
%define _noautoreq 'pear(.*\.php)'
-%define php_min_version 5.4.0
+%define php_min_version 7.2.5
+
+%ifnarch %{go_arches}
+%undefine with_agent2
+%endif
+
+%{?with_java:%{?use_default_jdk}}
+
Summary: Zabbix - network monitoring software
Summary(pl.UTF-8): Zabbix - oprogramowanie do monitorowania sieci
Name: zabbix
Source3: %{name}_server.init
Source4: %{name}_proxy.init
Source5: %{name}_agent2.init
+Source6: %{name}_agent2.sysconfig
Patch0: tld.patch
Patch1: sqlite3_dbname.patch
Patch2: always_compile_ipc.patch
+Patch3: agent2.patch
+Patch4: go.patch
URL: https://www.zabbix.com/
BuildRequires: OpenIPMI-devel
BuildRequires: autoconf
BuildRequires: automake >= 1:1.15
BuildRequires: curl-devel
-%{?with_agent2:BuildRequires: golang}
-%{?with_java:BuildRequires: jdk}
+%{?with_agent2:BuildRequires: golang >= 1.13}
+%{?with_java:%buildrequires_jdk}
BuildRequires: libevent-devel
BuildRequires: libssh2-devel
BuildRequires: libtool
BuildRequires: pcre-devel
%{?with_pgsql:BuildRequires: postgresql-devel}
BuildRequires: rpmbuild(macros) >= 1.671
+%{?with_java:BuildRequires: rpm-tld-macros-javaprov}
%{?with_sqlite3:BuildRequires: sqlite3-devel}
BuildRequires: unixODBC-devel
BuildRequires: zlib-devel
%patch0 -p1
%patch1 -p1
%patch2 -p1
+%patch3 -p1
+%patch4 -p1
%build
%{__libtoolize}
configure() {
%configure \
+ %{?with_java:ac_cv_prog_JAVAC=%{java_home}/bin/javac} \
+ %{?with_java:ac_cv_prog_JAR=%{java_home}/bin/jar} \
--enable-agent \
%{__enable_disable agent2} \
--enable-ipv6 \
%{__enable_disable java} \
- --with-jabber \
--with-ldap \
--with-libcurl \
+ --with-libevent \
+ --with-libpcre2 \
--with-libxml2 \
--with-net-snmp \
--with-openipmi \
%install
rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT{%{_sysconfdir},/etc/rc.d/init.d,/etc/webapps/%{_webapp},%{_appdir}} \
+install -d $RPM_BUILD_ROOT{%{_sysconfdir},/etc/{rc.d/init.d,sysconfig},/etc/webapps/%{_webapp},%{_appdir}} \
$RPM_BUILD_ROOT{/var/run/zabbix,/var/log/zabbix}
%{__make} install \
DESTDIR=$RPM_BUILD_ROOT \
- GOBIN=$RPM_BUILD_ROOT%{_sbindir} \
ZJG_DEST=$RPM_BUILD_ROOT%{_datadir}/zabbix_java
for database in %{databases} ; do
install %{SOURCE3} $RPM_BUILD_ROOT/etc/rc.d/init.d/zabbix_server
install %{SOURCE4} $RPM_BUILD_ROOT/etc/rc.d/init.d/zabbix_proxy
install %{SOURCE5} $RPM_BUILD_ROOT/etc/rc.d/init.d/zabbix_agent2
+install %{SOURCE6} $RPM_BUILD_ROOT/etc/sysconfig/zabbix_agent2
mv $RPM_BUILD_ROOT%{_appdir}/ui/conf $RPM_BUILD_ROOT%{_sysconfdir}/web
ln -s %{_sysconfdir}/web $RPM_BUILD_ROOT%{_appdir}/ui/conf
%attr(640,root,zabbix) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/zabbix_agent2.d/plugins.d/redis.conf
%attr(640,root,zabbix) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/zabbix_agent2.d/plugins.d/smart.conf
%attr(754,root,root) /etc/rc.d/init.d/zabbix_agent2
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/zabbix_agent2
%attr(755,root,root) %{_sbindir}/zabbix_agent2
%{_mandir}/man8/zabbix_agent2*
%endif