[build] Attempt to solve the LT_INIT macro issue
[adg.git] / configure.ac
blob360dd058923009e4ed5e46c55e9bc103abc91649
1 m4_define([adg_version],[0.5.6])
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],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([build])
18 AM_INIT_AUTOMAKE([1.6 gnits no-dist-gzip dist-bzip2 -Wall])
21 # Check for host information
23 AC_CANONICAL_HOST
24 case "${host}" in
25   *-*-linux*)
26     guessed_host=linux
27     ;;
28   *-*-freebsd*)
29     guessed_host=freebsd
30     ;;
31   *-*-mingw*)
32     guessed_host=mingw
33     ;;
34   *-*-solaris*)
35     guessed_host=solaris
36     ;;
37   *-*-darwin*)
38     guessed_host=darwin
39     ;;
40   *-*-beos*)
41     guessed_host=beos
42     ;;
43   *-*-cygwin*)
44     guessed_host=cygwin
45     ;;
46   *-*-minix)
47     guessed_host=minix
48     ;;
49   *-*-aix*)
50     guessed_host=aix
51     ;;
52   *)
53     guessed_host=unknown
54     ;;
55 esac
56 AM_CONDITIONAL([OS_UNIX],[test "${guessed_host}" != "mingw"])
57 AM_CONDITIONAL([OS_WIN32],[test "${guessed_host}" == "mingw" -o "${guessed_host}" == "cygwin"])
60 # Check for programs
62 AC_PROG_CC
63 PKG_PROG_PKG_CONFIG
64 AC_PATH_PROG([XSLTPROC],[xsltproc],[/usr/bin/xsltproc])
65 AC_PATH_PROG([GLIB_MKENUMS],[glib-mkenums],[/usr/bin/glib-mkenums])
66 AC_PATH_PROG([GLIB_GENMARSHAL],[glib-genmarshal],[/usr/bin/glib-genmarshal])
67 AC_PATH_PROG([GTESTER],[gtester],[/usr/bin/gtester])
68 AC_PATH_PROG([GTESTER_REPORT],[gtester-report],[/usr/bin/gtester-report])
70 m4_define([lt_init],LT_INIT)
71 m4_if(LT_INIT,[LT_INIT],m4_undefine([lt_init]))
72 m4_ifdef([lt_init],
73          [lt_init([disable-static]) m4_undefine([lt_init])],
74          [AC_DISABLE_STATIC AC_PROG_LIBTOOL])
77 # I18n
79 AC_SUBST([GETTEXT_PACKAGE],adg-adg_api_version)
80 AC_DEFINE([GETTEXT_PACKAGE],"AC_PACKAGE_TARNAME-adg_api_version",
81           [Define to the domain used by gettext.])
82 ALL_LINGUAS=""
83 AM_GLIB_GNU_GETTEXT
84 GLIB_DEFINE_LOCALEDIR([LOCALEDIR])
85 AC_OUTPUT_COMMANDS([case "${CONFIG_FILES}" in *po-properties/Makefile.in*)
86         sed -e "/POTFILES =/r po-properties/POTFILES" po-properties/Makefile.in > po-properties/Makefile
87       esac])
90 # Check for required packages
92 GTK_DOC_CHECK(gtkdoc_prereq)
93 PKG_CHECK_MODULES([GOBJECT2],[gobject-2.0 >= ]gobject_prereq)
94 PKG_CHECK_MODULES([CAIRO],[cairo >= ]cairo_prereq)
97 # Check for optional GTK+2 support
99 AC_ARG_ENABLE([gtk2],
100               [AS_HELP_STRING([--enable-gtk2],
101                               [include GKT+2 specific widgets @<:@default=check@:>@])],
102               [],[enable_gtk2=check])
103 AS_IF([test "x${enable_gtk2}" != "xno"],
104       [PKG_CHECK_MODULES([GTK2],[gtk+-2.0 >= ]gtk_prereq,
105                          [enable_gtk2=yes],
106                          [AS_IF([test "x${enable_gtk2}" = "xyes"],
107                                 [AC_MSG_ERROR([$GTK2_PKG_ERRORS and GTK+2 support requested])],
108                                 [enable_gtk2=no])])])
109 AM_CONDITIONAL([HAVE_GTK2],[test "x${enable_gtk2}" = "xyes"])
112 # Check for optional GLib test framework
114 AC_ARG_ENABLE([test_framework],
115               [AS_HELP_STRING([--enable-test-framework],
116                               [enable GLib test framework @<:@default=check@:>@])],
117               [],[enable_test_framework=check])
118 AS_IF([test "x${enable_test_framework}" != "xno"],
119       [PKG_CHECK_EXISTS([glib-2.0 >= 2.16.0],
120                         [enable_test_framework=yes],
121                         [AS_IF([test "x${enable_test_framework}" = "xyes"],
122                                [AC_MSG_ERROR([The test framework needs glib2-2.16.0 or later])],
123                                [enable_test_framework=no])])])
124 AM_CONDITIONAL([HAVE_TEST_FRAMEWORK],[test "x${enable_test_framework}" = "xyes"])
127 # Check for compiler characteristics
129 AC_C_CONST
132 # Final step
134 CPML_REQUIRES='cairo >= cairo_prereq'
135 CPML_CFLAGS="${CAIRO_CFLAGS}"
136 CPML_LIBS="${CAIRO_LIBS}"
137 AS_IF([test "x${enable_gtk2}" = "xyes"],
138       [ADG_REQUIRES='gtk+-2.0 >= gtk_prereq'
139        ADG_CFLAGS="${GTK2_CFLAGS}"
140        ADG_LIBS="${GTK2_LIBS}"],
141       [ADG_REQUIRES='gobject-2.0 >= gobject_prereq'
142        ADG_CFLAGS="${GOBJECT2_CFLAGS} ${CAIRO_CFLAGS}"
143        ADG_LIBS="${GOBJECT2_LIBS} ${CAIRO_LIBS}"])
144 AC_SUBST([CPML_REQUIRES])
145 AC_SUBST([CPML_CFLAGS])
146 AC_SUBST([CPML_LIBS])
147 AC_SUBST([ADG_REQUIRES])
148 AC_SUBST([ADG_CFLAGS])
149 AC_SUBST([ADG_LIBS])
151 SHAVE_INIT([build],[enable])
152 AC_CONFIG_FILES([build/shave
153                  build/shave-libtool
154                  Makefile
155                  cpml/cpml.pc
156                  cpml/Makefile
157                  adg/adg.pc
158                  adg/Makefile
159                  adg/tests/Makefile
160                  demo/Makefile
161                  po/Makefile.in
162                  po-properties/Makefile.in
163                  docs/Makefile
164                  docs/cpml/Makefile
165                  docs/cpml/bookinfo.xml
166                  docs/adg/Makefile
167                  docs/adg/bookinfo.xml])
168 AC_OUTPUT
171 # Report
173 echo ""
174 echo 'ADG canvas adg_version will be built with the following options:'
175 echo "----------------------------------------------------------"
176 echo '                  API compatibility: adg_api_version'
177 echo '                CPML library to use: internal (cpml-adg_version)'
178 echo " AdgWidget support (requires GTK+2): ${enable_gtk2}"
179 echo "                Build API reference: ${enable_gtk_doc}"
180 echo "             Test framework support: ${enable_test_framework}"
181 echo ""