]> git.ipfire.org Git - oddments/collecty.git/blob - configure.ac
psi: Add graph template
[oddments/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 [004],
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 # Interpret embedded Python in HTML files
50 XGETTEXT="${XGETTEXT} -L Python --keyword=_:1,2 --keyword=N_:1,2 --no-location"
51
52 GETTEXT_PACKAGE=${PACKAGE_TARNAME}
53 AC_SUBST(GETTEXT_PACKAGE)
54
55 AC_PROG_LN_S
56 AC_PROG_MKDIR_P
57 AC_PROG_SED
58
59 # C Compiler
60 AC_PROG_CC
61 AC_PROG_CC_C99
62 AC_PROG_CC_C_O
63 AC_PROG_GCC_TRADITIONAL
64
65 AC_CHECK_HEADERS_ONCE([
66 errno.h
67 fcntl.h
68 linux/hdreg.h
69 mntent.h
70 stdbool.h
71 string.h
72 sys/ioctl.h
73 time.h
74 ])
75
76 AC_PATH_PROG([XSLTPROC], [xsltproc])
77
78 PKG_CHECK_MODULES([OPING], [liboping])
79
80 # Python
81 AM_PATH_PYTHON([3.2])
82 PKG_CHECK_MODULES([PYTHON], [python-${PYTHON_VERSION}])
83
84 # libatasmart
85 PKG_CHECK_MODULES([LIBATASMART], [libatasmart >= 0.19])
86
87 save_LIBS="$LIBS"
88
89 # lm-sensors
90 AC_CHECK_HEADERS([sensors/sensors.h sensors/errors.h])
91
92 LIBS=
93 AC_CHECK_LIB(sensors, sensors_init, [], [AC_MSG_ERROR([*** sensors library not found])])
94 SENSORS_LIBS="$LIBS"
95 AC_SUBST(SENSORS_LIBS)
96
97 LIBS="$save_LIBS"
98
99 # pkg-config
100 PKG_PROG_PKG_CONFIG
101 # This makes sure pkg.m4 is available.
102 m4_pattern_forbid([^_?PKG_[A-Z_]+$],[*** pkg.m4 missing, please install pkg-config])
103
104 # ------------------------------------------------------------------------------
105 have_manpages=no
106 AC_ARG_ENABLE(manpages, AS_HELP_STRING([--disable-man-pages],
107 [do not install man pages]))
108 AS_IF([test "x$enable_manpages" != xno], [have_manpages=yes])
109 AM_CONDITIONAL(ENABLE_MANPAGES, [test "x$have_manpages" = "xyes"])
110
111 # ------------------------------------------------------------------------------
112
113 AC_ARG_WITH([systemd],
114 AS_HELP_STRING([--with-systemd], [Enable systemd support.])
115 )
116
117 AC_ARG_WITH([dbuspolicydir],
118 AS_HELP_STRING([--with-dbuspolicydir=DIR], [D-Bus policy directory]),
119 [],
120 [with_dbuspolicydir=${sysconfdir}/dbus-1/system.d]
121 )
122
123 AC_ARG_WITH([dbussystemservicedir],
124 AS_HELP_STRING([--with-dbussystemservicedir=DIR], [D-Bus system service directory]),
125 [],
126 [with_dbussystemservicedir=${datadir}/dbus-1/system-services]
127 )
128
129 AS_IF([test "x$with_systemd" != "xno"],
130 [PKG_CHECK_MODULES(systemd, [libsystemd],
131 [have_systemd=yes], [have_systemd=no])],
132 [have_systemd=no]
133 )
134
135 AS_IF([test "x$have_systemd" = "xyes"],
136 [AC_MSG_CHECKING([for systemd system unit directory])
137 AC_ARG_WITH([systemdsystemunitdir],
138 AS_HELP_STRING([--with-systemdsystemunitdir=DIR], [Directory for systemd service files]),
139 [], [with_systemdsystemunitdir=$($PKG_CONFIG --variable=systemdsystemunitdir systemd)]
140 )
141
142 AC_SUBST([systemdsystemunitdir], [$with_systemdsystemunitdir])
143
144 if test -n "$systemdsystemunitdir" -a "x$systemdsystemunitdir" != xno; then
145 AC_MSG_RESULT([$systemdsystemunitdir])
146 else
147 AC_MSG_ERROR([not found (try --with-systemdsystemunitdir)])
148 fi
149 ],
150 [AS_IF([test "x$with_systemd" = "xyes"],
151 [AC_MSG_ERROR([Systemd support is enabled but no systemd has been found.])
152 ])
153 ])
154
155 AM_CONDITIONAL(HAVE_SYSTEMD, [test "x$have_systemd" = "xyes"])
156
157 AC_SUBST([dbuspolicydir], [$with_dbuspolicydir])
158 AC_SUBST([dbussystemservicedir], [$with_dbussystemservicedir])
159
160 # ------------------------------------------------------------------------------
161
162 AC_CONFIG_FILES([
163 Makefile
164 po/Makefile.in
165 src/collecty/__version__.py
166 ])
167
168 AC_OUTPUT
169 AC_MSG_RESULT([
170 ${PACKAGE_NAME} ${VERSION}
171
172 prefix: ${prefix}
173 D-Bus policy dir: ${with_dbuspolicydir}
174 D-Bus system dir: ${with_dbussystemservicedir}
175
176 Systemd support ${have_systemd}
177 Generate man-pages: ${have_manpages}
178 ])