Blame configure.ac

Packit 51d0f7
dnl #
Packit 51d0f7
dnl # NetLabel Tools
Packit 51d0f7
dnl #
Packit 51d0f7
dnl # Author: Paul Moore <paul@paul-moore.com>
Packit 51d0f7
dnl #
Packit 51d0f7
Packit 51d0f7
dnl #
Packit 51d0f7
dnl # This program is free software: you can redistribute it and/or modify
Packit 51d0f7
dnl # it under the terms of version 2 of the GNU General Public License as
Packit 51d0f7
dnl # published by the Free Software Foundation.
Packit 51d0f7
dnl #
Packit 51d0f7
dnl # This program is distributed in the hope that it will be useful,
Packit 51d0f7
dnl # but WITHOUT ANY WARRANTY; without even the implied warranty of
Packit 51d0f7
dnl # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
Packit 51d0f7
dnl # GNU General Public License for more details.
Packit 51d0f7
dnl #
Packit 51d0f7
dnl # You should have received a copy of the GNU General Public License
Packit 51d0f7
dnl # along with this program.  If not, see <http://www.gnu.org/licenses/>.
Packit 51d0f7
dnl #
Packit 51d0f7
Packit 51d0f7
dnl ####
Packit 51d0f7
dnl netlabel_tools defines
Packit 51d0f7
dnl ####
Packit 51d0f7
AC_INIT([netlabel_tools], [0.30.0])
Packit 51d0f7
Packit 51d0f7
dnl ####
Packit 51d0f7
dnl autoconf configuration
Packit 51d0f7
dnl ####
Packit 51d0f7
AC_CONFIG_AUX_DIR([build-aux])
Packit 51d0f7
AC_CONFIG_HEADERS([configure.h])
Packit 51d0f7
AC_CONFIG_MACRO_DIR([m4])
Packit 51d0f7
Packit 51d0f7
dnl ####
Packit 51d0f7
dnl automake configuration
Packit 51d0f7
dnl ####
Packit 51d0f7
dnl NOTE: Automake < 1.12 didn't have serial-tests and gives an error if it
Packit 51d0f7
dnl sees this, but for automake >= 1.13 serial-tests is required so we have to
Packit 51d0f7
dnl include it.  Solution is to test for the version of automake (by running
Packit 51d0f7
dnl an external command) and provide it if necessary.  Note we have to do this
Packit 51d0f7
dnl entirely using m4 macros since automake queries this macro by running
Packit 51d0f7
dnl 'autoconf --trace ...'.
Packit 51d0f7
m4_define([serial_tests], [
Packit 51d0f7
    m4_esyscmd([automake --version |
Packit 51d0f7
                head -1 |
Packit 51d0f7
                awk '{split ($NF,a,"."); if (a[1] == 1 && a[2] >= 12) { print "serial-tests" }}'
Packit 51d0f7
    ])
Packit 51d0f7
])
Packit 51d0f7
dnl # NOTE: do not [quote] this parameter
Packit 51d0f7
AM_INIT_AUTOMAKE(-Wall foreign subdir-objects tar-pax serial_tests)
Packit 51d0f7
Packit 51d0f7
dnl ####
Packit 51d0f7
dnl build tools
Packit 51d0f7
dnl ####
Packit 51d0f7
AC_PROG_CC
Packit 51d0f7
AM_PROG_CC_C_O
Packit 51d0f7
m4_ifdef([AM_PROG_AR], [AM_PROG_AR])
Packit 51d0f7
Packit 51d0f7
dnl ####
Packit 51d0f7
dnl pkg-config configuration
Packit 51d0f7
dnl ####
Packit 51d0f7
PKG_PROG_PKG_CONFIG
Packit 51d0f7
Packit 51d0f7
dnl ####
Packit 51d0f7
dnl libtool configuration
Packit 51d0f7
dnl ####
Packit 51d0f7
LT_INIT([shared pic-only])
Packit 51d0f7
Packit 51d0f7
dnl ####
Packit 51d0f7
dnl enable silent builds by default
Packit 51d0f7
dnl ####
Packit 51d0f7
m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
Packit 51d0f7
Packit 51d0f7
dnl ####
Packit 51d0f7
dnl build flags
Packit 51d0f7
dnl ####
Packit 51d0f7
AM_CPPFLAGS="-I\${top_srcdir}/include"
Packit 51d0f7
AM_CFLAGS="-Wall"
Packit 51d0f7
AM_LDFLAGS="-Wl,-z -Wl,relro"
Packit 51d0f7
AC_SUBST([AM_CPPFLAGS])
Packit 51d0f7
AC_SUBST([AM_CFLAGS])
Packit 51d0f7
AC_SUBST([AM_LDFLAGS])
Packit 51d0f7
Packit 51d0f7
dnl ####
Packit 51d0f7
dnl version information
Packit 51d0f7
dnl ####
Packit 51d0f7
VERSION_MAJOR=$(echo ${VERSION} | cut -d'.' -f 1)
Packit 51d0f7
VERSION_MINOR=$(echo ${VERSION} | cut -d'.' -f 2)
Packit 51d0f7
VERSION_MICRO=$(echo ${VERSION} | cut -d'.' -f 3)
Packit 51d0f7
VERSION_STRING=$(echo ${VERSION})
Packit 51d0f7
AC_SUBST([VERSION_MAJOR])
Packit 51d0f7
AC_SUBST([VERSION_MINOR])
Packit 51d0f7
AC_SUBST([VERSION_MICRO])
Packit 51d0f7
AC_SUBST([VERSION_STRING])
Packit 51d0f7
Packit 51d0f7
dnl ####
Packit 51d0f7
dnl libnl checks
Packit 51d0f7
dnl  -> http://www.infradead.org/~tgr/libnl
Packit 51d0f7
dnl ####
Packit 51d0f7
PKG_CHECK_MODULES(LIBNL3, libnl-3.0 >= 3.0, [have_libnl3=yes], [have_libnl3=no])
Packit 51d0f7
if (test "${have_libnl3}" = "yes"); then
Packit 51d0f7
	CFLAGS+=" $LIBNL3_CFLAGS"
Packit 51d0f7
	LIBS+=" $LIBNL3_LIBS"
Packit 51d0f7
fi
Packit 51d0f7
PKG_CHECK_MODULES(LIBNLGENL3, libnl-genl-3.0 >= 3.0, [have_libnlgenl3=yes], [have_libnlgenl3=no])
Packit 51d0f7
if (test "${have_libnlgenl3}" = "yes"); then
Packit 51d0f7
	CFLAGS+=" $LIBNLGENL3_CFLAGS"
Packit 51d0f7
	LIBS+=" $LIBNLGENL3_LIBS"
Packit 51d0f7
fi
Packit 51d0f7
Packit 51d0f7
dnl ####
Packit 51d0f7
dnl systemd checks
Packit 51d0f7
dnl  -> http://www.freedesktop.org/software/systemd/man/daemon.html
Packit 51d0f7
dnl ####
Packit 51d0f7
AC_ARG_WITH([systemdsystemunitdir],
Packit 51d0f7
	    [AS_HELP_STRING([--with-systemdsystemunitdir=DIR], [Directory for systemd service files])],,
Packit 51d0f7
	    [with_systemdsystemunitdir=auto])
Packit 51d0f7
AS_IF([test "x$with_systemdsystemunitdir" = "xyes" -o "x$with_systemdsystemunitdir" = "xauto"],
Packit 51d0f7
      [def_systemdsystemunitdir=$($PKG_CONFIG --variable=systemdsystemunitdir systemd)
Packit 51d0f7
       AS_IF([test "x$def_systemdsystemunitdir" = "x"],
Packit 51d0f7
       [AS_IF([test "x$with_systemdsystemunitdir" = "xyes"],
Packit 51d0f7
        [AC_MSG_ERROR([systemd support requested but pkg-config unable to query systemd package])])
Packit 51d0f7
        with_systemdsystemunitdir=no],
Packit 51d0f7
       [with_systemdsystemunitdir="$def_systemdsystemunitdir"])])
Packit 51d0f7
AS_IF([test "x$with_systemdsystemunitdir" != "xno"],
Packit 51d0f7
      [AC_SUBST([systemdsystemunitdir], [$with_systemdsystemunitdir])])
Packit 51d0f7
AM_CONDITIONAL([HAVE_SYSTEMD], [test "x$with_systemdsystemunitdir" != "xno"])
Packit 51d0f7
Packit 51d0f7
dnl ####
Packit 51d0f7
dnl doxygen checks
Packit 51d0f7
dnl ####
Packit 51d0f7
AC_CHECK_PROG(have_doxygen, doxygen, "yes", "no")
Packit 51d0f7
AM_CONDITIONAL(DOXYGEN, test "$have_doxygen" = yes)
Packit 51d0f7
Packit 51d0f7
dnl ####
Packit 51d0f7
dnl coverity checks
Packit 51d0f7
dnl ####
Packit 51d0f7
AC_CHECK_PROG(have_coverity, cov-build, "yes", "no")
Packit 51d0f7
AM_CONDITIONAL(COVERITY, test "$have_coverity" = yes)
Packit 51d0f7
Packit 51d0f7
dnl ####
Packit 51d0f7
dnl makefiles
Packit 51d0f7
dnl ####
Packit 51d0f7
AC_CONFIG_FILES([
Packit 51d0f7
	Makefile
Packit 51d0f7
	include/Makefile
Packit 51d0f7
	libnetlabel/Makefile
Packit 51d0f7
	netlabelctl/Makefile
Packit 51d0f7
	doc/Makefile
Packit 51d0f7
	tests/Makefile
Packit 51d0f7
])
Packit 51d0f7
Packit 51d0f7
dnl ####
Packit 51d0f7
dnl done
Packit 51d0f7
dnl ####
Packit 51d0f7
AC_OUTPUT