]> rtime.felk.cvut.cz Git - sojka/lightdm.git/blob - configure.ac
65a3627cb6845278fcd5f490c26439037aaef0ee
[sojka/lightdm.git] / configure.ac
1 dnl Process this file with autoconf to produce a configure script.
2
3 AC_INIT(lightdm, 0.9.2)
4 AC_CONFIG_MACRO_DIR(m4)
5 AC_CONFIG_HEADER(config.h)
6 AM_INIT_AUTOMAKE
7 LT_INIT
8 AM_PROG_CC_C_O
9 AC_PROG_CXX
10 AC_PROG_LIBTOOL
11 AM_MAINTAINER_MODE
12 m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES(yes)])
13
14 GOBJECT_INTROSPECTION_CHECK(0.9.5)
15
16 AC_PATH_PROG([VALA_API_GEN], [vapigen])
17
18 GNOME_COMPILE_WARNINGS(maximum)
19
20 dnl ###########################################################################
21 dnl Dependencies
22 dnl ###########################################################################
23
24 AC_CHECK_HEADERS(security/pam_appl.h, [], AC_MSG_ERROR(PAM not found))
25
26 PKG_CHECK_MODULES(LIGHTDM, [
27     glib-2.0
28     gio-2.0 >= 2.26
29     gio-unix-2.0
30     xdmcp
31     xcb
32 ])
33
34 PKG_CHECK_MODULES(GLIB, [
35     glib-2.0
36 ])
37
38 PKG_CHECK_MODULES(GIO, [
39     gio-2.0
40 ])
41
42 PKG_CHECK_MODULES(GIO_UNIX, [
43     gio-unix-2.0
44 ])
45
46 PKG_CHECK_MODULES(GOBJECT, [
47     gobject-2.0
48 ])
49
50 PKG_CHECK_MODULES(XCB, [
51     xcb
52 ])    
53
54 AC_ARG_ENABLE(liblightdm-gobject,
55         AS_HELP_STRING([--enable-liblightdm-gobject],[Enable LightDM client gobject libraries [[default=yes]]]),
56         [enable_liblightdm_gobject=$enableval],
57         [enable_liblightdm_gobject="yes"])
58 compile_liblightdm_gobject=no
59 if test x"$enable_liblightdm_gobject" = "xauto"; then
60     PKG_CHECK_MODULES(LIBLIGHTDM_GOBJECT, [
61         glib-2.0
62         gio-2.0 >= 2.26
63         gio-unix-2.0
64         gobject-2.0
65         libxklavier
66         x11
67     ], compile_liblightdm_gobject=yes, compile_liblightdm_gobject=no)
68 elif test x"$enable_liblightdm_gobject" = "xyes"; then
69     PKG_CHECK_MODULES(LIBLIGHTDM_GOBJECT, [
70         glib-2.0
71         gio-2.0 >= 2.26
72         gio-unix-2.0
73         gobject-2.0
74         libxklavier
75         x11
76     ])
77     compile_liblightdm_gobject=yes
78 fi
79 AM_CONDITIONAL(COMPILE_LIBLIGHTDM_GOBJECT, test x"$compile_liblightdm_gobject" != "xno")
80
81 AC_ARG_ENABLE(liblightdm-qt,
82         AS_HELP_STRING([--enable-liblightdm-qt],[Enable LightDM client QT libraries [[default=auto]]]),
83         [enable_liblightdm_qt=$enableval],
84         [enable_liblightdm_qt="auto"])
85 compile_liblightdm_qt=no
86 if test x"$enable_liblightdm_qt" = "xauto"; then
87     PKG_CHECK_MODULES(LIBLIGHTDM_QT, [
88         QtCore
89         QtDBus
90         QtNetwork
91     ], compile_liblightdm_qt=yes, compile_liblightdm_qt=no)
92 elif test x"$enable_liblightdm_qt" = "xyes"; then
93     PKG_CHECK_MODULES(LIBLIGHTDM_QT, [
94         QtCore
95         QtDBus
96         QtNetwork
97     ])
98     compile_liblightdm_qt=yes
99 fi
100 AM_CONDITIONAL(COMPILE_LIBLIGHTDM_QT, test x"$compile_liblightdm_qt" != "xno")
101
102 have_qt=no
103 if test x"$compile_liblightdm_qt" = "xyes"; then
104     PKG_CHECK_MODULES(LIGHTDM_QT_GREETER, [
105         QtCore
106         QtGui
107     ], have_qt=yes, have_qt=no)
108 fi
109 AM_CONDITIONAL(HAVE_QT_GREETER, test $have_qt = yes)
110
111 PKG_CHECK_MODULES(LIGHTDM_GTK_GREETER, [
112     gtk+-3.0
113     gmodule-export-2.0
114 ], have_gtk=yes, have_gtk=no)
115 AM_CONDITIONAL(HAVE_GTK_GREETER, test $have_gtk = yes)
116
117 AC_PATH_PROG(GLIB_GENMARSHAL, glib-genmarshal)
118 AC_PATH_PROG(DBUSBINDINGTOOL, dbus-binding-tool)
119 AC_SUBST(DBUSBINDINGTOOL)
120
121 dnl ###########################################################################
122 dnl Configurable values
123 dnl ###########################################################################
124
125 USER_SESSION=default
126 AC_ARG_WITH(user-session,
127             AS_HELP_STRING(--with-user-session=<name>,
128                            Session to use for user accounts),
129     if test x$withval != x; then
130         USER_SESSION="$withval"
131     fi
132 )
133 AC_SUBST(USER_SESSION)
134 AC_DEFINE_UNQUOTED(USER_SESSION, "$USER_SESSION", User session)
135
136 if test $have_gtk = yes; then
137 GREETER_SESSION=lightdm-gtk-greeter
138 elif test $have_qt = yes; then
139 GREETER_SESSION=lightdm-qt-greeter
140 else
141 GREETER_SESSION=
142 fi
143 AC_ARG_WITH(greeter-session,
144             AS_HELP_STRING(--with-greeter-session=<session>,
145                            Greeter session),
146     if test x$withval != x; then
147         GREETER_SESSION="$withval"
148     fi
149 )
150 AC_SUBST(GREETER_SESSION)
151 AC_DEFINE_UNQUOTED(GREETER_SESSION, "$GREETER_SESSION", Greeter session)
152
153 GREETER_USER=lightdm
154 AC_ARG_WITH(greeter-user,
155             AS_HELP_STRING(--with-greeter-user=<username>,
156                            User to run greeter as),
157     if test x$withval != x; then
158         GREETER_USER="$withval"
159     fi
160 )
161 AC_SUBST(GREETER_USER)
162 AC_DEFINE_UNQUOTED(GREETER_USER, "$GREETER_USER", User to run greeter as)
163
164 dnl ###########################################################################
165 dnl Documentation
166 dnl ###########################################################################
167
168 GTK_DOC_CHECK
169
170 dnl ###########################################################################
171 dnl Internationalization
172 dnl ###########################################################################
173
174 IT_PROG_INTLTOOL(0.35.0)
175 AC_SUBST(GETTEXT_PACKAGE, lightdm)
176 AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE, "$GETTEXT_PACKAGE", Gettext package)
177
178 dnl ###########################################################################
179 dnl Files to generate
180 dnl ###########################################################################
181
182 AC_CONFIG_FILES([
183 Makefile
184 data/Makefile
185 data/init/Makefile
186 doc/Makefile
187 greeters/Makefile
188 greeters/gtk/Makefile
189 greeters/qt/Makefile
190 liblightdm-gobject/liblightdm-gobject-1.pc
191 liblightdm-gobject/Makefile
192 liblightdm-qt/Makefile
193 liblightdm-qt/liblightdm-qt-1.pc
194 po/Makefile.in
195 src/Makefile
196 tests/Makefile
197 tests/src/Makefile
198 ])
199 AC_OUTPUT
200
201 dnl ###########################################################################
202 dnl Summary
203 dnl ###########################################################################
204
205 echo "
206                     Light Display Manager $VERSION
207                     ===========================
208
209         prefix:                   $prefix
210         Greeter session:          $GREETER_SESSION
211         Greeter user:             $GREETER_USER
212         User session:             $USER_SESSION
213         liblightdm-gobject:       $compile_liblightdm_gobject
214         GObject introspection:    $found_introspection
215         liblightdm-qt:            $compile_liblightdm_qt
216         GTK+ Greeter:             $have_gtk
217         Qt Greeter:               $have_qt
218 "