[demo] Added --help and --version to adg-demo
[adg.git] / configure.ac
blob11ba08f49d4ddaf494b3fa5487f1e6c48dc386c5
1 m4_define([adg_version],[0.5.5])
2 m4_define([adg_api_version],[1.0])
4 m4_define([gtkdoc_prereq],[1.9])
5 m4_define([gobject_prereq],[2.4.0])
6 m4_define([cairo_prereq],[1.7.4])
7 m4_define([gtk_prereq],[2.12.0])
10 # Initialization
12 AC_PREREQ([2.59])
13 AC_INIT([Automatic Drawing Generation],m4_expand([adg_version]),
14         [http://dev.entidi.com/p/adg/],[adg],[http://adg.entidi.com/])
15 AC_CONFIG_SRCDIR([configure.ac])
16 AC_CONFIG_HEADERS([config.h])
17 AC_CONFIG_MACRO_DIR([m4])
18 AM_INIT_AUTOMAKE([1.6 gnits no-dist-gzip dist-bzip2 -Wall])
21 # Check for programs
23 AC_PROG_CC
24 PKG_PROG_PKG_CONFIG
25 AC_PATH_PROG([XSLTPROC],[xsltproc],[/usr/bin/xsltproc])
26 AC_PATH_PROG([GLIB_MKENUMS],[glib-mkenums],[/usr/bin/glib-mkenums])
27 AC_PATH_PROG([GLIB_GENMARSHAL],[glib-genmarshal],[/usr/bin/glib-genmarshal])
29 m4_ifdef([LT_INIT],
30          [LT_INIT([disable-static])],
31          [AC_DISABLE_STATIC
32           AC_PROG_LIBTOOL])
35 # Check for functions
37 dnl Alloca is required by cpml, so it should be removed
38 dnl in case the adg and cpml libraries will be splitted
39 AC_FUNC_ALLOCA
42 # I18n
44 AC_SUBST([GETTEXT_PACKAGE],[adg-adg_api_version])
45 AC_DEFINE([GETTEXT_PACKAGE],[["]AC_PACKAGE_TARNAME-adg_api_version["]],
46                    [Define to the domain used by gettext.])
47 ALL_LINGUAS=""
48 AM_GLIB_GNU_GETTEXT
49 GLIB_DEFINE_LOCALEDIR([LOCALEDIR])
50 AC_OUTPUT_COMMANDS([case "${CONFIG_FILES}" in *po-properties/Makefile.in*)
51         sed -e "/POTFILES =/r po-properties/POTFILES" po-properties/Makefile.in > po-properties/Makefile
52       esac])
55 # Check for required packages
57 GTK_DOC_CHECK([gtkdoc_prereq])
58 PKG_CHECK_MODULES([GOBJECT2],[gobject-2.0 >= gobject_prereq])
59 PKG_CHECK_MODULES([CAIRO],[cairo >= cairo_prereq])
62 # Check for optional GTK+2 support
64 AC_ARG_ENABLE([gtk2],
65               [AS_HELP_STRING([--enable-gtk2],
66                               [include GKT+2 specific widgets @<:@default=check@:>@])],
67               [],[enable_gtk2=check])
68 AS_IF([test "x${enable_gtk2}" != "xno"],
69       [PKG_CHECK_MODULES([GTK2],[gtk+-2.0 >= gtk_prereq],
70                          [enable_gtk2=yes],
71                          [AS_IF([test "x${enable_gtk2}" = "xyes"],
72                                 [AC_MSG_ERROR([$GTK2_PKG_ERRORS and GTK+2 support requested])],
73                                 [enable_gtk2=no])])])
74 AM_CONDITIONAL([HAVE_GTK2],[test "x${enable_gtk2}" = "xyes"])
77 # Check for optional GLib test framework
79 AC_ARG_ENABLE([test_framework],
80               [AS_HELP_STRING([--enable-test-framework],
81                               [enable GLib test framework @<:@default=check@:>@])],
82               [],[enable_test_framework=check])
83 AS_IF([test "x${enable_test_framework}" != "xno"],
84       [PKG_CHECK_EXISTS([glib-2.0 >= 2.16.0],
85                         [enable_test_framework=yes],
86                         [AS_IF([test "x${enable_test_framework}" = "xyes"],
87                                [AC_MSG_ERROR([The test framework needs glib2-2.16.0 or later])],
88                                [enable_test_framework=no])])])
89 AM_CONDITIONAL([HAVE_TEST_FRAMEWORK],[test "x${enable_test_framework}" = "xyes"])
92 # Final step
94 CPML_REQUIRES='cairo >= cairo_prereq'
95 CPML_CFLAGS="${CAIRO_CFLAGS}"
96 CPML_LIBS="${CAIRO_LIBS}"
97 AS_IF([test "x${enable_gtk2}" = "xyes"],
98       [ADG_REQUIRES='gtk+-2.0 >= gtk_prereq'
99        ADG_CFLAGS="${GTK2_CFLAGS}"
100        ADG_LIBS="${GTK2_LIBS}"],
101       [ADG_REQUIRES='gobject-2.0 >= gobject_prereq'
102        ADG_CFLAGS="${GOBJECT2_CFLAGS} ${CAIRO_CFLAGS}"
103        ADG_LIBS="${GOBJECT2_LIBS} ${CAIRO_LIBS}"])
104 AC_SUBST([CPML_REQUIRES])
105 AC_SUBST([CPML_CFLAGS])
106 AC_SUBST([CPML_LIBS])
107 AC_SUBST([ADG_REQUIRES])
108 AC_SUBST([ADG_CFLAGS])
109 AC_SUBST([ADG_LIBS])
111 SHAVE_INIT([],[enable])
112 AC_CONFIG_FILES([shave
113                  shave-libtool
114                  cpml.pc
115                  adg.pc
116                  Makefile
117                  cpml/Makefile
118                  adg/Makefile
119                  demo/Makefile
120                  po/Makefile.in
121                  po-properties/Makefile.in
122                  tests/Makefile
123                  docs/Makefile
124                  docs/cpml/Makefile
125                  docs/cpml/bookinfo.xml
126                  docs/adg/Makefile
127                  docs/adg/bookinfo.xml])
128 AC_OUTPUT
131 # Report
133 echo ""
134 echo 'ADG canvas adg_version will be built with the following options:'
135 echo "----------------------------------------------------------"
136 echo '                  API compatibility: adg_api_version'
137 echo '                CPML library to use: internal (cpml-adg_version)'
138 echo " AdgWidget support (requires GTK+2): ${enable_gtk2}"
139 echo "                Build API reference: ${enable_gtk_doc}"
140 echo "             Test framework support: ${enable_test_framework}"
141 echo ""