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