configure: Fix systemd detection
[collecty.git] / configure.ac
1 ###############################################################################
2 #                                                                             #
3 # collecty - The IPFire statictics collection daemon                          #
4 # Copyright (C) 2015 collecty development team                                #
5 #                                                                             #
6 # This program is free software: you can redistribute it and/or modify        #
7 # it under the terms of the GNU General Public License as published by        #
8 # the Free Software Foundation, either version 3 of the License, or           #
9 # (at your option) any later version.                                         #
10 #                                                                             #
11 # This program is distributed in the hope that it will be useful,             #
12 # but WITHOUT ANY WARRANTY; without even the implied warranty of              #
13 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the               #
14 # GNU General Public License for more details.                                #
15 #                                                                             #
16 # You should have received a copy of the GNU General Public License           #
17 # along with this program.  If not, see <http://www.gnu.org/licenses/>.       #
18 #                                                                             #
19 ###############################################################################
20
21 AC_PREREQ([2.64])
22
23 AC_INIT([collecty],
24         [002],
25         [info@ipfire.org],
26         [collecty],
27         [http://git.ipfire.org/?p=oddments/collecty.git;a=summary])
28
29 AC_CONFIG_MACRO_DIR([m4])
30 AC_CONFIG_AUX_DIR([build-aux])
31
32 AC_PREFIX_DEFAULT([/usr])
33
34 AM_INIT_AUTOMAKE([
35         foreign
36         1.11
37         -Wall
38         -Wno-portability
39         silent-rules
40         tar-pax
41         subdir-objects
42 ])
43 AM_SILENT_RULES([yes])
44 LT_PREREQ(2.2)
45 LT_INIT([disable-static])
46
47 IT_PROG_INTLTOOL([0.40.0])
48
49 GETTEXT_PACKAGE=collecty
50 AC_SUBST(GETTEXT_PACKAGE)
51
52 AC_PROG_LN_S
53 AC_PROG_MKDIR_P
54 AC_PROG_SED
55
56 # C Compiler
57 AC_PROG_CC
58 AC_PROG_CC_C99
59 AC_PROG_CC_C_O
60 AC_PROG_GCC_TRADITIONAL
61
62 AC_PATH_PROG([XSLTPROC], [xsltproc])
63
64 # Python
65 AM_PATH_PYTHON([2.7])
66 PKG_CHECK_MODULES([PYTHON_DEVEL], [python-${PYTHON_VERSION}])
67
68 # libatasmart
69 PKG_CHECK_MODULES([LIBATASMART], [libatasmart >= 0.19])
70
71 save_LIBS="$LIBS"
72
73 # pkg-config
74 PKG_PROG_PKG_CONFIG
75 # This makes sure pkg.m4 is available.
76 m4_pattern_forbid([^_?PKG_[A-Z_]+$],[*** pkg.m4 missing, please install pkg-config])
77
78 # ------------------------------------------------------------------------------
79 have_manpages=no
80 AC_ARG_ENABLE(manpages, AS_HELP_STRING([--disable-man-pages],
81         [do not install man pages]))
82 AS_IF([test "x$enable_manpages" != xno], [have_manpages=yes])
83 AM_CONDITIONAL(ENABLE_MANPAGES, [test "x$have_manpages" = "xyes"])
84
85 # ------------------------------------------------------------------------------
86
87 AC_ARG_WITH([systemd],
88         AS_HELP_STRING([--with-systemd], [Enable systemd support.])
89 )
90
91 AC_ARG_WITH([dbuspolicydir],
92         AS_HELP_STRING([--with-dbuspolicydir=DIR], [D-Bus policy directory]),
93         [],
94         [with_dbuspolicydir=${sysconfdir}/dbus-1/system.d]
95 )
96
97 AC_ARG_WITH([dbussystemservicedir],
98         AS_HELP_STRING([--with-dbussystemservicedir=DIR], [D-Bus system service directory]),
99         [],
100         [with_dbussystemservicedir=${datadir}/dbus-1/system-services]
101 )
102
103 AS_IF([test "x$with_systemd" != "xno"],
104       [PKG_CHECK_MODULES(systemd, [libsystemd],
105       [have_systemd=yes], [have_systemd=no])],
106       [have_systemd=no]
107 )
108
109 AS_IF([test "x$have_systemd" = "xyes"],
110       [AC_MSG_CHECKING([for systemd system unit directory])
111         AC_ARG_WITH([systemdsystemunitdir],
112                 AS_HELP_STRING([--with-systemdsystemunitdir=DIR], [Directory for systemd service files]),
113                 [], [with_systemdsystemunitdir=$($PKG_CONFIG --variable=systemdsystemunitdir systemd)]
114         )
115
116         AC_SUBST([systemdsystemunitdir], [$with_systemdsystemunitdir])
117
118         if test -n "$systemdsystemunitdir" -a "x$systemdsystemunitdir" != xno; then
119                 AC_MSG_RESULT([$systemdsystemunitdir])
120         else
121                 AC_MSG_ERROR([not found (try --with-systemdsystemunitdir)])
122         fi
123       ],
124       [AS_IF([test "x$with_systemd" = "xyes"],
125              [AC_MSG_ERROR([Systemd support is enabled but no systemd has been found.])
126       ])
127 ])
128
129 AM_CONDITIONAL(HAVE_SYSTEMD, [test "x$have_systemd" = "xyes"])
130
131 AC_SUBST([dbuspolicydir], [$with_dbuspolicydir])
132 AC_SUBST([dbussystemservicedir], [$with_dbussystemservicedir])
133
134 # ------------------------------------------------------------------------------
135
136 AC_CONFIG_FILES([
137         Makefile
138         po/Makefile.in
139 ])
140
141 AC_OUTPUT
142 AC_MSG_RESULT([
143         ${PACKAGE_NAME} ${VERSION}
144
145         prefix:                 ${prefix}
146         D-Bus policy dir:       ${with_dbuspolicydir}
147         D-Bus system dir:       ${with_dbussystemservicedir}
148
149         Systemd support         ${have_systemd}
150         Generate man-pages:     ${have_manpages}
151 ])