Add Dbus to build-system
[lxde/lxappearance.git] / configure.ac
1 #                                               -*- Autoconf -*-
2 # Process this file with autoconf to produce a configure script.
3
4 prog_name = lxappearance
5
6 AC_PREREQ([2.63])
7 AC_INIT([lxappearance], [0.5.1], [http://lxde.org/])
8 AM_INIT_AUTOMAKE([1.11 -Wall -Werror foreign])
9 # Support silent build rules. Disable by either passing --disable-silent-rules
10 # to configure or passing V=1 to make
11 AM_SILENT_RULES([yes])
12
13 AM_MAINTAINER_MODE
14
15 AC_CONFIG_HEADERS([config.h])
16
17 # Checks for programs.
18 AC_PROG_CC
19 # AM_PROG_LIBTOOL
20
21 # Checks for libraries.
22
23 # Checks for header files.
24 AC_HEADER_STDC
25
26 # Checks for typedefs, structures, and compiler characteristics.
27
28 # Checks for library functions.
29
30 # intltool
31 IT_PROG_INTLTOOL([0.40.0])
32
33 AC_ARG_ENABLE(man,
34 AC_HELP_STRING([--enable-man],[regenerate roff man pages from Docbook @<:@default=yes@:>@]),
35 [case "${enableval}" in
36   yes)  enable_man=yes ;;
37   no)   enable_man=no ;;
38   *) AC_MSG_ERROR([bad value "${enableval}" for --enable-man, use "yes" (default) or "no".]) ;;
39 esac],[])
40
41 AC_ARG_ENABLE(more_warnings,
42        [AC_HELP_STRING([--enable-more-warnings],
43                [Add more warnings @<:@default=no@:>@])],
44        [enable_more_warnings="${enableval}"],
45        [enable_more_warnings=no]
46 )
47
48 AC_ARG_ENABLE(gtk3,
49 AC_HELP_STRING([--enable-gtk3],[enable to use gtk-3.0 instead of gtk-2.0]),
50 [case "${enableval}" in
51   yes)  enable_gtk3=yes ;;
52   no)   enable_gtk3=no ;;
53   *) AC_MSG_ERROR([bad value "${enableval}" for --enable-gtk3, use "yes" (default) or "no".]) ;;
54 esac],[])
55
56 PKG_CHECK_MODULES(XLIB, "x11")
57 AC_SUBST(XLIB_CFLAGS)
58 AC_SUBST(XLIB_LIBS)
59
60 if test "x$enable_gtk3" = "xyes" ; then
61   CFLAGS="$CFLAGS -DENABLE_GTK3"
62   gtk_modules="gtk+-3.0 >= 3.0.0"
63 else
64   gtk_modules="gtk+-2.0 >= 2.12.0 gthread-2.0"
65 fi
66
67 PKG_CHECK_MODULES(GTK, [$gtk_modules])
68 AC_SUBST(GTK_CFLAGS)
69 AC_SUBST(GTK_LIBS)
70
71 PKG_CHECK_MODULES(DBUS, [dbus-1 >= 0.95 dbus-glib-1 >= 0.70])
72 AC_SUBST(DBUS_CFLAGS)
73 AC_SUBST(DBUS_LIBS)
74
75 gmodule_modules="gmodule-export-2.0"
76 PKG_CHECK_MODULES(GMODULE, [$gmodule_modules])
77 AC_SUBST(GMODULE_CFLAGS)
78 AC_SUBST(GMODULE_LIBS)
79
80 # gio_modules="gthread-2.0 gio-unix-2.0 glib-2.0 >= 2.18.0"
81 # PKG_CHECK_MODULES(GIO, [$gio_modules])
82 # AC_SUBST(GIO_CFLAGS)
83 # AC_SUBST(GIO_LIBS)
84
85 # menu_modules="libmenu-cache >= 0.3.2"
86 # PKG_CHECK_MODULES(MENU_CACHE, [$menu_modules])
87 # AC_SUBST(MENU_CACHE_CFLAGS)
88 # AC_SUBST(MENU_CACHE_LIBS)
89
90 if test x"$enable_more_warnings" = x"yes"; then
91   ADDITIONAL_FLAGS="-Wall -Werror=all -Werror=format -Werror=implicit-function-declaration -Werror=implicit-int -Werror=missing-braces -Werror=parentheses -Werror=return-type -Werror=strict-aliasing -Werror=switch -Wuninitialized -Werror=unused-label -Werror=unused-value -Wextra -Wno-missing-field-initializers -Wno-unused-parameter -Werror=missing-declarations -Wredundant-decls -Wmissing-noreturn -Wpointer-arith -Wcast-align -Wwrite-strings -Werror=inline -Werror=format-nonliteral -Wformat-nonliteral -Werror=format-security -Wformat-security -Winit-self -Werror=missing-include-dirs -Werror=undef -Werror=aggregate-return -Wmissing-format-attribute -Werror=nested-externs -fno-strict-aliasing -fmessage-length=0 -Wp,-D_FORTIFY_SOURCE=2 -DG_DISABLE_DEPRECATED -DG_DISABLE_SINGLE_INCLUDES -DGDK_DISABLE_DEPRECATED -DGDK_PIXBUF_DISABLE_DEPRECATED -DGDK_PIXBUF_DISABLE_SINGLE_INCLUDES -DGTK_DISABLE_DEPRECATED -DGTK_DISABLE_SINGLE_INCLUDES"
92 fi
93 AC_SUBST(ADDITIONAL_FLAGS)
94
95 AC_ARG_ENABLE(man,
96        [AC_HELP_STRING([--enable-man],
97                [regenerate roff man pages from Docbook @<:@default=no@:>@])],
98        [enable_man="${enableval}"],
99        [enable_man=no]
100 )
101
102 if test "$enable_debug" = "yes"; then
103     # turn on debug and disable optimization
104     CPPFLAGS="$CPPFLAGS -DG_ENABLE_DEBUG -O0 -g"
105 else
106     # turn off glib debug checks
107     CPPFLAGS="$CPPFLAGS -DG_DISABLE_ASSERT -DG_DISABLE_CHECKS -DG_DISABLE_CAST_CHECKS"
108 fi
109
110 # Generate po/LINGUAS on the fly rather than relying on translators
111 # to maintain it manually. This also overcome the problem that Transifex
112 # cannot add a language to po/LINGUAS if a new po file is submitted.
113 rm -f $srcdir/po/LINGUAS
114 for po_file in `ls $srcdir/po/*.po | sort`;
115 do
116     lang=`echo "$po_file" | sed "s|.*/po/\(.*\)\.po|\1|g"`
117     echo $lang >> $srcdir/po/LINGUAS
118 done
119
120 GETTEXT_PACKAGE=lxappearance
121 AC_SUBST(GETTEXT_PACKAGE)
122 AM_GLIB_GNU_GETTEXT
123 AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE,"$GETTEXT_PACKAGE", [Gettext package.])
124
125 if test x"$enable_man" = x"yes"; then
126         AC_PATH_PROG([XSLTPROC], [xsltproc])
127         if test -z "$XSLTPROC"; then
128                 enable_man=no
129         fi
130
131         dnl check for DocBook DTD and stylesheets in the local catalog.
132         JH_CHECK_XML_CATALOG([-//OASIS//DTD DocBook XML V4.1.2//EN],
133                 [DocBook XML DTD V4.1.2], [], enable_man=no)
134         JH_CHECK_XML_CATALOG([http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl],
135                 [DocBook XSL Stylesheets >= 1.70.1], [], enable_man=no)
136 fi
137
138 AM_CONDITIONAL(ENABLE_MAN, test "x$enable_man" != "xno")
139
140 AC_CONFIG_FILES([
141     Makefile
142     src/Makefile
143     data/Makefile
144     data/ui/Makefile
145     data/ui/about.ui
146     data/lxappearance.pc
147     man/Makefile
148     po/Makefile.in
149 ])
150
151 AC_OUTPUT
152
153 if test x"$sysconfdir" != x'/etc'; then
154     echo
155     echo
156     echo 'Error: sysconfdir is not /etc.'
157     echo 'Please consider passing --sysconfdir=/etc to configure.';
158     echo 'Otherwise default config files will be installed to wrong place.'
159     echo
160     echo
161 else
162     echo
163     echo lxappearance....................... : Version $VERSION
164     echo
165     echo Enable debug....................: "$enable_debug"
166     echo Prefix..........................: $prefix
167     echo
168     echo The binary will be installed in $prefix/bin
169     echo
170     echo http://lxde.org/
171     echo
172     echo "Ready to make lxappearance. Type 'make' to continue."
173     echo
174 fi