<?xml version="1.0" encoding="UTF-8"?>
<project name="Zabbix backend" default="build" basedir="." xmlns:if="ant:if" xmlns:unless="ant:unless">
<taskdef resource="net/sf/antcontrib/antlib.xml" />
<property name="COMP_FLAGS_ORACLE" value="-g -std=gnu99 -pedantic -Wall -Wextra -Wunused -Wshadow -Wdeclaration-after-statement -Wpointer-arith -Wno-maybe-uninitialized -Wformat -Wmissing-prototypes -Wunreachable-code -Wformat-extra-args -Wno-missing-field-initializers -Wno-missing-field-initializers -Wincompatible-pointer-types"/>
<property name="COMP_FLAGS" value="-Wstrict-prototypes ${COMP_FLAGS_ORACLE}"/>
<property name="ZBX_BASE_FLAGS" value="--enable-server --enable-agent --enable-proxy --with-libxml2 --with-unixodbc --with-net-snmp --with-ssh2 --with-libevent --with-ldap --with-libcurl"/>
<switch value="${DBTYPE}" caseinsensitive="true">
<case value="POSTGRESQL">
<property name="with.db" value="--with-postgresql"/>
<property name="with.postgresql" value="true"/>
<property name="with.db" value="--with-oracle"/>
<property name="with.oracle" value="true"/>
<property name="with.db" value="--with-mysql"/>
<property name="with.mysql" value="true"/>
<target name="init-conf-options">
<property name="conf1" value="--enable-agent"/>
<property name="conf2" value="--enable-server ${with.db}"/>
<property name="conf3" value="--enable-proxy ${with.db}"/>
<property name="conf4" value="--enable-server --enable-agent --enable-proxy ${with.db}"/>
<property name="conf6" value="${ZBX_BASE_FLAGS} ${with.db} --with-openipmi --with-openssl"/>
<property name="conf7" value="${ZBX_BASE_FLAGS} ${with.db} --with-openipmi --with-gnutls"/>
<target name="init-conf-options-2">
<property name="conf8" value="--enable-agent2"/>
<property name="conf9" value="--enable-server --enable-agent --enable-proxy ${with.db} --with-ssh"/>
<property name="conf10" value="--enable-agent --with-libmodbus"/>
<target name="cppcheck-static-analyzer">
<exec executable="./bootstrap.sh" failonerror="on"/>
<exec executable="scan-build" failonerror="on">
<arg line="./configure"/>
<arg line="${ZBX_BASE_FLAGS} --with-mysql"/>
<exec executable="cppcheck" error="${SCANFILE}" failonerror="on">
<arg line="--enable=all"/>
<arg line="-I/usr/include"/>
<arg line="-I/usr/local/include"/>
<arg line="-I./include/common"/>
<arg line="-I./include"/>
<arg line="-isrc/libs/zbxembed/duk_config.h"/>
<arg line="-isrc/libs/zbxembed/duktape.c"/>
<arg line="-isrc/libs/zbxembed/duktape.h"/>
<arg line="--suppress=variableScope:*"/>
<arg line="--suppress=ConfigurationNotChecked:*"/>
<arg line="--inconclusive"/>
<arg line="--xml-version=2"/>
<arg line="--cppcheck-build-dir=${CPPCHECK_BUILD_DIR}"/>
<target name="clang-static-analyzer" depends="init-conf-options">
<delete dir="clang-scan-build-reports"/>
<exec executable="./bootstrap.sh" failonerror="on"/>
<propertyselector property="conf.list" delimiter="," match="conf(\d+)"/>
<sortlist property="conf.list" delimiter="," value="${conf.list}" override="true"/>
<for list="${conf.list}" param="name" delimiter=",">
<exec executable="scan-build" failonerror="on">
<arg line="./configure"/>
<exec executable="scan-build" failonerror="on">
<arg line="-plist-html"/>