0b1c03ab3f3d2f0c0b9b184ba3137aa9fe3a7cbc
[hildon] / configure.ac
1 AC_INIT([Hildon gtk widgets], [1.0.0], [michael.kostrzewa@nokia.com], [hildon])
2 AC_CANONICAL_SYSTEM
3
4 AM_CONFIG_HEADER(config.h)
5 AC_CONFIG_SRCDIR([src/hildon-window.h])
6 AC_CONFIG_MACRO_DIR([m4])
7 AM_MAINTAINER_MODE
8
9 # define PACKAGE_VERSION_* variables
10 AS_VERSION
11
12 # set the libtool versioning
13 AS_LIBTOOL(HILDON, 0, 0, 0)
14 AM_INIT_AUTOMAKE
15
16 AC_PROG_CC
17 AM_PROG_LIBTOOL
18 AC_PROG_INSTALL
19 AC_PROG_AWK
20
21 AC_HEADER_STDC
22
23 GTK_VERSION=2.10
24
25 PKG_CHECK_MODULES(GTK, gtk+-2.0 >= 2.10)
26 AC_SUBST(GTK_LIBS)
27 AC_SUBST(GTK_CFLAGS)
28 AC_SUBST(GTK_VERSION)
29
30 # ESD is needed for the hildon-note sounds.
31
32 PKG_CHECK_MODULES(ESD, esound)
33 AC_SUBST(ESD_LIBS)
34 AC_SUBST(ESD_CFLAGS)
35
36 PKG_CHECK_MODULES(GCONF, gconf-2.0 >= 2.6)
37 AC_SUBST(GCONF_CFLAGS)
38 AC_SUBST(GCONF_LIBS)
39
40 ALL_LINGUAS="en_GB"
41 AC_SUBST(ALL_LINGUAS) 
42 AM_GLIB_GNU_GETTEXT
43
44 GTK_DOC_CHECK([1.3])
45
46 localedir=${datadir}/locale
47
48 AC_SUBST(localedir)
49
50 # Disable rebuild of glib-mkenum -generated source code:
51 AC_ARG_ENABLE(rebuilds, [  --disable-rebuilds      disable all source autogeneration rules],,enable_rebuilds=yes)
52
53 # define a MAINT-like variable REBUILD which is set if Perl
54 # is found, so autogenerated sources can be rebuilt
55 AC_CHECK_PROGS(PERL, perl5 perl)
56
57 REBUILD=\#
58 if test "x$enable_rebuilds" = "xyes" && \
59      test -n "$PERL" && \
60      $PERL -e 'exit !($] >= 5.002)' > /dev/null 2>&1 ; then
61   REBUILD=
62 fi
63 AC_SUBST(REBUILD)
64
65 # build examples (or not)
66 AC_ARG_WITH(examples, 
67     AC_HELP_STRING([--with-examples], [Build the examples]),
68     [
69      case "${withval}" in
70          yes) BUILD_EXAMPLES=yes ;;
71          no)  BUILD_EXAMPLES=no ;;
72          *)   AC_MSG_ERROR(bad value ${withval} for --with-examples) ;;
73      esac],
74      [BUILD_EXAMPLES=no])
75
76 AM_CONDITIONAL(BUILD_EXAMPLES, test "x$BUILD_EXAMPLES" = "xyes")
77
78 # just print out our status
79 if test x$BUILD_EXAMPLES = xyes; then
80     AC_MSG_NOTICE(Will locally build example programs)
81 else
82     AC_MSG_NOTICE(Will not build examples )
83 fi
84
85 # use maemo gtk+ specific api (or not)
86 AC_ARG_WITH(maemo-gtk, 
87     AC_HELP_STRING([--with-maemo-gtk], [Use Maemo GTK+ API]),
88     [
89      case "${withval}" in
90          yes) USE_MAEMO_GTK=yes ;;
91          no)  USE_MAEMO_GTK=no ;;
92          *)   AC_MSG_ERROR(bad value ${withval} for --with-maemo-gtk) ;;
93      esac],
94      [USE_MAEMO_GTK=yes])
95
96 AM_CONDITIONAL(USE_MAEMO_GTK, test "x$USE_MAEMO_GTK" = "xyes")
97
98 # just print out our status
99 if test x$USE_MAEMO_GTK = xyes; then
100     AC_MSG_NOTICE(Will use Maemo GTK+ specific API)
101     AC_DEFINE(MAEMO_GTK, [], [Whether to use Maemo GTK+ specific API])
102 else
103     AC_MSG_NOTICE(Will not use Maemo GTK+ specific API)
104 fi
105
106 # build with assertion checks (or not)
107 AC_ARG_WITH(asserts, 
108     AC_HELP_STRING([--with-asserts], [Build with the assertion checks]),
109     [
110      case "${withval}" in
111          yes) BUILD_WITH_ASSERTS=yes ;;
112          no)  BUILD_WITH_ASSERTS=no ;;
113          *)   AC_MSG_ERROR(bad value ${withval} for --with-asserts) ;;
114      esac],
115      [BUILD_WITH_ASSERTS=no])
116
117 # just print out our status
118 if test x$BUILD_WITH_ASSERTS = xyes; then
119     AC_MSG_NOTICE(Will build with assertion checks)
120     ASSERT_CFLAGS=""
121 else
122     AC_MSG_NOTICE(Will not build with assertion checks)
123     ASSERT_CFLAGS="-DG_DISABLE_ASSERT"
124 fi
125
126 # Check support (c unit test)
127 PKG_CHECK_MODULES(CHECK, check , [BUILD_TESTS="yes"], [BUILD_TESTS="no"])
128 AM_CONDITIONAL(BUILD_TESTS, test "x$BUILD_TESTS" = "xyes")
129
130 CFLAGS="$CFLAGS ${ASSERT_CFLAGS} -Wall -Wmissing-prototypes -Wmissing-declarations -Werror -Wno-format"
131 # -Wno-format due to way translation string are done
132
133 ### enable MAEMO platform extensions
134 CFLAGS="$CFLAGS -DMAEMO_CHANGES"
135
136 # HILDON_OBJ_*
137 # default vars for the examples
138 # includes all the low-level flags
139 # FIXME Add esd and gconf flags
140 HILDON_OBJ_CFLAGS="\$(CFLAGS) \$(GTK_CFLAGS) \$(CHECK_CFLAGS) \$(GCONF_CFLAGS) -I\$(top_builddir)/src/"
141 HILDON_OBJ_LIBS="\$(top_builddir)/src/libhildon-\$(PACKAGE_VERSION_MAJOR).la \$(GTK_LIBS) \$(GCONF_LIBS) \$(CHECK_LIBS) `pkg-config --libs gthread-2.0`"
142 AC_SUBST(HILDON_OBJ_CFLAGS)
143 AC_SUBST(HILDON_OBJ_LIBS)
144
145 AC_CONFIG_FILES([Makefile src/Makefile  \
146                  pkgconfig/Makefile     \
147                  examples/Makefile      \
148                  pkgconfig/hildon.pc    \
149                  tests/Makefile         \
150                  doc/Makefile           \
151                  po/POTFILES            \
152                  po/porules.mk          \
153                  po/Makefile])
154
155 AC_OUTPUT
156
157 echo "
158
159 Configuration:
160
161 - Package:...........: ${PACKAGE}
162 - Version............: ${VERSION}
163 - Api................: ${PACKAGE}-${PACKAGE_VERSION_MAJOR}
164 - Compiler...........: ${CC}
165 - gtk-doc support....: ${enable_gtk_doc}
166 - Build examples.....: ${BUILD_EXAMPLES}
167 - Build with asserts.: ${BUILD_WITH_ASSERTS}
168 - Build unit tests...: ${BUILD_TESTS}
169
170 "