]> rtime.felk.cvut.cz Git - sojka/lightdm.git/blob - configure.ac
Some more warnings, apparently we already meet them
[sojka/lightdm.git] / configure.ac
1 dnl Process this file with autoconf to produce a configure script.
2
3 AC_INIT(lightdm, 1.7.6)
4 AC_CONFIG_MACRO_DIR(m4)
5 AC_CONFIG_HEADER(config.h)
6 AM_INIT_AUTOMAKE([1.11 no-dist-gzip dist-xz foreign])
7 AM_SILENT_RULES(yes)
8 LT_INIT
9 AM_PROG_CC_C_O
10 AC_PROG_CXX
11 AC_PROG_LIBTOOL
12 AM_MAINTAINER_MODE
13
14 dnl Enable compile warnings
15 WARN_CFLAGS="-Wall \
16             -Wstrict-prototypes \
17             -Wnested-externs \
18             -Werror=missing-prototypes \
19             -Werror=implicit-function-declaration \
20             -Werror=pointer-arith \
21             -Werror=init-self \
22             -Werror=format-security \
23             -Werror=format=2 \
24             -Werror=missing-include-dirs"
25 AC_SUBST(WARN_CFLAGS)
26
27 GOBJECT_INTROSPECTION_CHECK(0.9.5)
28
29 dnl ###########################################################################
30 dnl Dependencies
31 dnl ###########################################################################
32
33 AC_CHECK_HEADERS(security/pam_appl.h, [], AC_MSG_ERROR(PAM not found))
34
35 AC_CHECK_FUNCS(setresgid setresuid clearenv)
36
37 PKG_CHECK_MODULES(LIGHTDM, [
38     glib-2.0 >= 2.30
39     gio-2.0 >= 2.26
40     gio-unix-2.0
41     xdmcp
42     xcb
43 ])
44
45 PKG_CHECK_MODULES(GLIB, [
46     glib-2.0
47 ])
48
49 PKG_CHECK_MODULES(GIO, [
50     gio-2.0
51 ])
52
53 PKG_CHECK_MODULES(GIO_UNIX, [
54     gio-unix-2.0
55 ])
56
57 PKG_CHECK_MODULES(GOBJECT, [
58     gobject-2.0
59 ])
60
61 PKG_CHECK_MODULES(XCB, [
62     xcb
63 ])    
64
65 AC_ARG_ENABLE(liblightdm-gobject,
66         AS_HELP_STRING([--enable-liblightdm-gobject],[Enable LightDM client gobject libraries [[default=auto]]]),
67         [enable_liblightdm_gobject=$enableval],
68         [enable_liblightdm_gobject="auto"])
69 compile_liblightdm_gobject=no
70 if test x"$enable_liblightdm_gobject" = "xauto"; then
71     PKG_CHECK_MODULES(LIBLIGHTDM_GOBJECT, [
72         glib-2.0
73         gio-2.0 >= 2.26
74         gio-unix-2.0
75         gobject-2.0
76         libxklavier
77         x11
78     ], compile_liblightdm_gobject=yes, compile_liblightdm_gobject=no)
79 elif test x"$enable_liblightdm_gobject" = "xyes"; then
80     PKG_CHECK_MODULES(LIBLIGHTDM_GOBJECT, [
81         glib-2.0
82         gio-2.0 >= 2.26
83         gio-unix-2.0
84         gobject-2.0
85         libxklavier
86         x11
87     ])
88     compile_liblightdm_gobject=yes
89 fi
90 AM_CONDITIONAL(COMPILE_LIBLIGHTDM_GOBJECT, test x"$compile_liblightdm_gobject" != "xno")
91
92 AC_ARG_ENABLE(liblightdm-qt,
93         AS_HELP_STRING([--enable-liblightdm-qt],[Enable LightDM client Qt4 libraries [[default=auto]]]),
94         [enable_liblightdm_qt4=$enableval],
95         [enable_liblightdm_qt4="auto"])
96 compile_liblightdm_qt4=no
97 if test x"$enable_liblightdm_qt4" != "xno"; then
98     PKG_CHECK_MODULES(LIBLIGHTDM_QT4, [
99         QtCore
100         QtDBus
101         QtGui
102     ],
103     [compile_liblightdm_qt4=yes
104      AC_CHECK_TOOLS(MOC4, [moc-qt4 moc])
105      if test x"$(readlink $(which $MOC4))" = xqtchooser; then
106          MOC4="$MOC4 --qt=qt4"
107      fi
108     ],
109     [if test "x$enable_liblightdm_qt4" != xauto; then
110         AC_MSG_FAILURE(
111           [--enable-liblightdm-qt was given, but test for Qt4 failed])
112       fi
113     ])
114 fi
115 AM_CONDITIONAL(COMPILE_LIBLIGHTDM_QT4, test x"$compile_liblightdm_qt4" != "xno")
116
117 AC_ARG_ENABLE(liblightdm-qt5,
118         AS_HELP_STRING([--enable-liblightdm-qt5],[Enable LightDM client Qt5 libraries [[default=auto]]]),
119         [enable_liblightdm_qt5=$enableval],
120         [enable_liblightdm_qt5="auto"])
121 compile_liblightdm_qt5=no
122 if test x"$enable_liblightdm_qt5" != "xno"; then
123     PKG_CHECK_MODULES(LIBLIGHTDM_QT5, [
124         Qt5Core
125         Qt5DBus
126         Qt5Gui
127     ],
128     [compile_liblightdm_qt5=yes
129      AC_CHECK_TOOLS(MOC5, [moc])
130      if test x"$(readlink $(which $MOC5))" = xqtchooser; then
131          MOC5="$MOC5 --qt=qt5"
132      fi
133     ],
134     [if test "x$enable_liblightdm_qt5" != xauto; then
135         AC_MSG_FAILURE(
136           [--enable-liblightdm-qt5 was given, but test for Qt5 failed])
137       fi
138     ])
139 fi
140 AM_CONDITIONAL(COMPILE_LIBLIGHTDM_QT5, test x"$compile_liblightdm_qt5" != "xno")
141
142 AC_MSG_CHECKING(whether to build tests)
143 AC_ARG_ENABLE(tests,
144         AS_HELP_STRING([--disable-tests], [Disable tests building]),
145         [], [enable_tests="yes"])
146 AM_CONDITIONAL(COMPILE_TESTS, test x"$enable_tests" != "xno")
147
148 dnl ###########################################################################
149 dnl Configurable values
150 dnl ###########################################################################
151
152 USER_SESSION=default
153 AC_ARG_WITH(user-session,
154             AS_HELP_STRING(--with-user-session=<name>,
155                            Session to use for user accounts),
156     if test x$withval != x; then
157         USER_SESSION="$withval"
158     fi
159 )
160 AC_SUBST(USER_SESSION)
161 AC_DEFINE_UNQUOTED(USER_SESSION, "$USER_SESSION", User session)
162
163 GREETER_SESSION=default
164 AC_ARG_WITH(greeter-session,
165             AS_HELP_STRING(--with-greeter-session=<session>,
166                            Greeter session),
167     if test x$withval != x; then
168         GREETER_SESSION="$withval"
169     fi
170 )
171 AC_SUBST(GREETER_SESSION)
172 AC_DEFINE_UNQUOTED(GREETER_SESSION, "$GREETER_SESSION", Greeter session)
173
174 GREETER_USER=lightdm
175 AC_ARG_WITH(greeter-user,
176             AS_HELP_STRING(--with-greeter-user=<username>,
177                            User to run greeter as),
178     if test x$withval != x; then
179         GREETER_USER="$withval"
180     fi
181 )
182 AC_SUBST(GREETER_USER)
183 AC_DEFINE_UNQUOTED(GREETER_USER, "$GREETER_USER", User to run greeter as)
184
185 dnl ###########################################################################
186 dnl Documentation
187 dnl ###########################################################################
188
189 GTK_DOC_CHECK
190 YELP_HELP_INIT
191
192 dnl ###########################################################################
193 dnl Internationalization
194 dnl ###########################################################################
195
196 IT_PROG_INTLTOOL(0.35.0)
197 AC_SUBST(GETTEXT_PACKAGE, lightdm)
198 AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE, "$GETTEXT_PACKAGE", Gettext package)
199
200 dnl ###########################################################################
201 dnl Files to generate
202 dnl ###########################################################################
203
204 AC_CONFIG_FILES([
205 Makefile
206 data/Makefile
207 doc/Makefile
208 help/Makefile
209 liblightdm-gobject/liblightdm-gobject-1.pc
210 liblightdm-gobject/Makefile
211 liblightdm-qt/Makefile
212 liblightdm-qt/liblightdm-qt-3.pc
213 liblightdm-qt/liblightdm-qt5-3.pc
214 po/Makefile.in
215 src/Makefile
216 tests/Makefile
217 tests/src/Makefile
218 utils/Makefile
219 ])
220 AC_OUTPUT
221
222 dnl ###########################################################################
223 dnl Summary
224 dnl ###########################################################################
225
226 echo "
227                     Light Display Manager $VERSION
228                     ===========================
229
230         prefix:                   $prefix
231         Greeter session:          $GREETER_SESSION
232         Greeter user:             $GREETER_USER
233         User session:             $USER_SESSION
234         liblightdm-gobject:       $compile_liblightdm_gobject
235         GObject introspection:    $found_introspection
236         liblightdm-qt:            $compile_liblightdm_qt4
237         liblightdm-qt5:           $compile_liblightdm_qt5
238         Enable tests:             $enable_tests
239 "