]> rtime.felk.cvut.cz Git - sojka/lightdm.git/blob - configure.ac
Define LOGIND_RUNNING from the configure script
[sojka/lightdm.git] / configure.ac
1 dnl Process this file with autoconf to produce a configure script.
2
3 AC_INIT(lightdm, 1.6.0)
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 GOBJECT_INTROSPECTION_CHECK(0.9.5)
15
16 dnl ###########################################################################
17 dnl Dependencies
18 dnl ###########################################################################
19
20 AC_CHECK_HEADERS(security/pam_appl.h, [], AC_MSG_ERROR(PAM not found))
21
22 AC_CHECK_FUNCS(setresgid setresuid clearenv)
23
24 PKG_CHECK_MODULES(LIGHTDM, [
25     glib-2.0 >= 2.24
26     gio-2.0 >= 2.26
27     gio-unix-2.0
28     xdmcp
29     xcb
30 ])
31
32 PKG_CHECK_MODULES(GLIB, [
33     glib-2.0
34 ])
35
36 PKG_CHECK_MODULES(GIO, [
37     gio-2.0
38 ])
39
40 PKG_CHECK_MODULES(GIO_UNIX, [
41     gio-unix-2.0
42 ])
43
44 PKG_CHECK_MODULES(GOBJECT, [
45     gobject-2.0
46 ])
47
48 PKG_CHECK_MODULES(XCB, [
49     xcb
50 ])    
51
52 AC_ARG_ENABLE(liblightdm-gobject,
53         AS_HELP_STRING([--enable-liblightdm-gobject],[Enable LightDM client gobject libraries [[default=auto]]]),
54         [enable_liblightdm_gobject=$enableval],
55         [enable_liblightdm_gobject="auto"])
56 compile_liblightdm_gobject=no
57 if test x"$enable_liblightdm_gobject" = "xauto"; then
58     PKG_CHECK_MODULES(LIBLIGHTDM_GOBJECT, [
59         glib-2.0
60         gio-2.0 >= 2.26
61         gio-unix-2.0
62         gobject-2.0
63         libxklavier
64         x11
65     ], compile_liblightdm_gobject=yes, compile_liblightdm_gobject=no)
66 elif test x"$enable_liblightdm_gobject" = "xyes"; then
67     PKG_CHECK_MODULES(LIBLIGHTDM_GOBJECT, [
68         glib-2.0
69         gio-2.0 >= 2.26
70         gio-unix-2.0
71         gobject-2.0
72         libxklavier
73         x11
74     ])
75     compile_liblightdm_gobject=yes
76 fi
77 AM_CONDITIONAL(COMPILE_LIBLIGHTDM_GOBJECT, test x"$compile_liblightdm_gobject" != "xno")
78
79 AC_ARG_ENABLE(liblightdm-qt,
80         AS_HELP_STRING([--enable-liblightdm-qt],[Enable LightDM client Qt4 libraries [[default=auto]]]),
81         [enable_liblightdm_qt4=$enableval],
82         [enable_liblightdm_qt4="auto"])
83 compile_liblightdm_qt4=no
84 if test x"$enable_liblightdm_qt4" != "xno"; then
85     PKG_CHECK_MODULES(LIBLIGHTDM_QT4, [
86         QtCore
87         QtDBus
88         QtGui
89     ],
90     [compile_liblightdm_qt4=yes
91      AC_CHECK_TOOLS(MOC4, [moc-qt4 moc])
92      if test x"$(readlink $(which $MOC4))" = xqtchooser; then
93          MOC4="$MOC4 --qt=qt4"
94      fi
95     ],
96     [if test "x$enable_liblightdm_qt4" != xauto; then
97         AC_MSG_FAILURE(
98           [--enable-liblightdm-qt was given, but test for Qt4 failed])
99       fi
100     ])
101 fi
102 AM_CONDITIONAL(COMPILE_LIBLIGHTDM_QT4, test x"$compile_liblightdm_qt4" != "xno")
103
104 AC_ARG_ENABLE(liblightdm-qt5,
105         AS_HELP_STRING([--enable-liblightdm-qt5],[Enable LightDM client Qt5 libraries [[default=auto]]]),
106         [enable_liblightdm_qt5=$enableval],
107         [enable_liblightdm_qt5="auto"])
108 compile_liblightdm_qt5=no
109 if test x"$enable_liblightdm_qt5" != "xno"; then
110     PKG_CHECK_MODULES(LIBLIGHTDM_QT5, [
111         Qt5Core
112         Qt5DBus
113         Qt5Gui
114     ],
115     [compile_liblightdm_qt5=yes
116      AC_CHECK_TOOLS(MOC5, [moc])
117      if test x"$(readlink $(which $MOC5))" = xqtchooser; then
118          MOC5="$MOC5 --qt=qt5"
119      fi
120     ],
121     [if test "x$enable_liblightdm_qt5" != xauto; then
122         AC_MSG_FAILURE(
123           [--enable-liblightdm-qt5 was given, but test for Qt5 failed])
124       fi
125     ])
126 fi
127 AM_CONDITIONAL(COMPILE_LIBLIGHTDM_QT5, test x"$compile_liblightdm_qt5" != "xno")
128
129 AC_MSG_CHECKING(whether to build tests)
130 AC_ARG_ENABLE(tests,
131         AS_HELP_STRING([--disable-tests], [Disable tests building]),
132         [], [enable_tests="yes"])
133 AM_CONDITIONAL(COMPILE_TESTS, test x"$enable_tests" != "xno")
134
135 AC_PATH_PROG(GLIB_GENMARSHAL, glib-genmarshal)
136
137 dnl ###########################################################################
138 dnl Configurable values
139 dnl ###########################################################################
140
141 USER_SESSION=default
142 AC_ARG_WITH(user-session,
143             AS_HELP_STRING(--with-user-session=<name>,
144                            Session to use for user accounts),
145     if test x$withval != x; then
146         USER_SESSION="$withval"
147     fi
148 )
149 AC_SUBST(USER_SESSION)
150 AC_DEFINE_UNQUOTED(USER_SESSION, "$USER_SESSION", User session)
151
152 GREETER_SESSION=default
153 AC_ARG_WITH(greeter-session,
154             AS_HELP_STRING(--with-greeter-session=<session>,
155                            Greeter session),
156     if test x$withval != x; then
157         GREETER_SESSION="$withval"
158     fi
159 )
160 AC_SUBST(GREETER_SESSION)
161 AC_DEFINE_UNQUOTED(GREETER_SESSION, "$GREETER_SESSION", Greeter session)
162
163 GREETER_USER=lightdm
164 AC_ARG_WITH(greeter-user,
165             AS_HELP_STRING(--with-greeter-user=<username>,
166                            User to run greeter as),
167     if test x$withval != x; then
168         GREETER_USER="$withval"
169     fi
170 )
171 AC_SUBST(GREETER_USER)
172 AC_DEFINE_UNQUOTED(GREETER_USER, "$GREETER_USER", User to run greeter as)
173
174 AC_ARG_ENABLE(consolekit,
175               AS_HELP_STRING([--enable-consolekit],
176                                 [Build with ConsoleKit support @<:@default=yes@:>@]),,
177                  enable_consolekit=yes)
178 AM_CONDITIONAL(ENABLE_CONSOLEKIT, test x$enable_consolekit = xyes)
179
180 if test x$enable_consolekit = xyes; then
181   AC_DEFINE(WITH_CONSOLEKIT, 1, [Define if ConsoleKit support is enabled])
182   AC_DEFINE(LOGIND_RUNNING(), 0,
183                       [Define to a check for whether the system is running logind])
184 fi
185
186 AC_ARG_ENABLE(logind,
187               AS_HELP_STRING([--enable-logind],
188                                 [Build with systemd logind support @<:@default=no@:>@]),,
189                  enable_logind=no)
190 AM_CONDITIONAL(ENABLE_LOGIND, test x$enable_logind = xyes)
191
192 if test x$enable_logind = xyes; then
193   AC_DEFINE(WITH_LOGIND, 1, [Define if systemd logind support is enabled])
194   AC_DEFINE(LOGIND_RUNNING(), (access("/run/systemd/seats/", F_OK) >= 0),
195                       [Define to a check for whether the system is running logind])
196 fi
197
198 if test x$enable_consolekit = xno -a x$enable_logind = xno; then
199    AC_MSG_ERROR(one of --enable-consolekit or --enable-logind must be supplied)
200 fi
201
202 dnl ###########################################################################
203 dnl Documentation
204 dnl ###########################################################################
205
206 GTK_DOC_CHECK
207 YELP_HELP_INIT
208
209 dnl ###########################################################################
210 dnl Internationalization
211 dnl ###########################################################################
212
213 IT_PROG_INTLTOOL(0.35.0)
214 AC_SUBST(GETTEXT_PACKAGE, lightdm)
215 AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE, "$GETTEXT_PACKAGE", Gettext package)
216
217 dnl ###########################################################################
218 dnl Files to generate
219 dnl ###########################################################################
220
221 AC_CONFIG_FILES([
222 Makefile
223 data/Makefile
224 data/init/Makefile
225 doc/Makefile
226 help/Makefile
227 liblightdm-gobject/liblightdm-gobject-1.pc
228 liblightdm-gobject/Makefile
229 liblightdm-qt/Makefile
230 liblightdm-qt/liblightdm-qt-2.pc
231 liblightdm-qt/liblightdm-qt5-2.pc
232 po/Makefile.in
233 src/Makefile
234 tests/Makefile
235 tests/src/Makefile
236 utils/Makefile
237 ])
238 AC_OUTPUT
239
240 dnl ###########################################################################
241 dnl Summary
242 dnl ###########################################################################
243
244 echo "
245                     Light Display Manager $VERSION
246                     ===========================
247
248         prefix:                   $prefix
249         Greeter session:          $GREETER_SESSION
250         Greeter user:             $GREETER_USER
251         User session:             $USER_SESSION
252         liblightdm-gobject:       $compile_liblightdm_gobject
253         GObject introspection:    $found_introspection
254         liblightdm-qt:            $compile_liblightdm_qt4
255         liblightdm-qt5:           $compile_liblightdm_qt5
256         Enable tests:             $enable_tests
257         ConsoleKit support:       $enable_consolekit
258         logind support:           $enable_logind
259 "