Implement automatic member declaration and initialization for widgets in the glade...
[anjuta.git] / configure.ac
blob53c5671546005f93635f6f11499f487632adedd5
1 dnl Process this file with autoconf to produce a configure script.
3 AC_PREREQ(2.65)
5 m4_define(anjuta_major_version,  3)
6 m4_define(anjuta_minor_version, 3)
7 m4_define(anjuta_micro_version, 5)
8 m4_define(anjuta_version, anjuta_major_version.anjuta_minor_version.anjuta_micro_version)
9 m4_define(bugzilla_version, anjuta_major_version.anjuta_minor_version.anjuta_micro_version)
11 AC_INIT([Anjuta],[anjuta_version],[http://bugzilla.gnome.org/enter_bug.cgi?product=anjuta],[anjuta],[http://www.anjuta.org/])
13 AC_CONFIG_HEADERS([config.h])
14 AC_CONFIG_SRCDIR([src/main.c])
15 AC_CONFIG_MACRO_DIR([m4])
18 AC_DEFINE(ANJUTA_MAJOR_VERSION, anjuta_major_version, [Anjuta major version])
19 AC_SUBST(ANJUTA_MAJOR_VERSION, anjuta_major_version)
20 AC_DEFINE(ANJUTA_MINOR_VERSION, anjuta_minor_version, [Anjuta minor version])
21 AC_SUBST(ANJUTA_MINOR_VERSION, anjuta_minor_version)
22 AC_DEFINE(ANJUTA_MICRO_VERSION, anjuta_micro_version, [Anjuta micro version])
23 AC_SUBST(ANJUTA_MICRO_VERSION, anjuta_micro_version)
24 AC_DEFINE(ANJUTA_VERSION, anjuta_version, [Anjuta version])
25 AC_SUBST(ANJUTA_VERSION)
27 ANJUTA_VERSION=anjuta_version
28 AC_SUBST(ANJUTA_VERSION)
30 BUGZILLA_VERSION=bugzilla_version
31 AC_SUBST(BUGZILLA_VERSION)
33 dnl Anjuta core
34 GLIB_REQUIRED=2.28.0
35 GLIB_NEW_REQUIRED=2.29.2
36 GTK_REQUIRED=3.0.0
37 GTHREAD_REQUIRED=2.22.0
38 GDK_PIXBUF_REQUIRED=2.0.0
39 GDA4_REQUIRED=4.2.0
40 GDA5_REQUIRED=4.99.0
41 VTE_REQUIRED=0.27.6
42 LIBXML_REQUIRED=2.4.23
43 GDL_REQUIRED=2.91.4
44 LIBWNCK_REQUIRED=2.12
46 dnl GtkSourceView
47 GTKSOURCEVIEW_REQUIRED=2.91.8
49 dnl Devhelp
50 LIBDEVHELP_REQUIRED=3.0.0
52 dnl Glade
53 GLADEUI_REQUIRED=3.9.2
55 dnl Vala
56 VALA_REQUIRED=0.13.3
58 dnl Introspection
59 GI_REQUIRED=0.9.5
61 dnl Various
62 LIBGRAPHVIZ_REQUIRED=1.0
64 dnl Subversion plugin
65 NEON_REQUIRED=0.28.2
66 SVN_MAJOR=1
67 SVN_MINOR=5
68 SVN_PATCH=0
69 SUBVERSION_REQUIRED=$SVN_MAJOR.$SVN_MINOR.$SVN_PATCH
71 AM_INIT_AUTOMAKE([1.10 dist-xz no-dist-gzip])
72 AM_MAINTAINER_MODE([enable])
74 m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
76 dnl Check for C Compiler
77 AC_PROG_CC
78 AC_PROG_CPP
79 AC_PROG_LEX
80 if test "$LEX" != "flex"; then
81         AC_MSG_ERROR(flex is required)
83 AC_PROG_YACC
84 if test "$YACC" != "bison -y"; then
85         AC_MSG_ERROR(bison is required)
87 AC_LANG([C])
88 AC_LANG([C++])
89 AC_PROG_CXX
90 AM_PROG_CC_C_O
92 GNOME_COMPILE_WARNINGS([maximum])
93 AM_CFLAGS="$AM_CFLAGS $WARN_CFLAGS"
94 AM_CXXFLAGS="$AM_CXXFLAGS $WARN_CXXFLAGS"
96 dnl Enable debugging mode
97 AC_ARG_ENABLE(debug,
98   AS_HELP_STRING([--enable-debug],[Enable debug messages]),
99   [if test "x$enableval" = "xyes"; then
100       AM_CFLAGS="$AM_CFLAGS -DDEBUG"
101   fi]
102   AM_CXXFLAGS="$AM_CXXFLAGS -DDEBUG")
103 AC_SUBST(AM_CFLAGS)
104 AC_SUBST(AM_CXXFLAGS)
106 ANJUTA_LDFLAGS="-no-undefined"
107 ANJUTA_PLUGIN_LDFLAGS="-module -avoid-version -no-undefined"
108 AC_SUBST(ANJUTA_LDFLAGS)
109 AC_SUBST(ANJUTA_PLUGIN_LDFLAGS)
111 dnl GSettings
112 GLIB_GSETTINGS
114 dnl Disable deprecated APIs
115 dnl if test x$MAINT = x; then
116 dnl     DEPRECATED_FLAGS="-DGDK_DISABLE_DEPRECATED -DGTK_DISABLE_DEPRECATED"
117 dnl     AC_SUBST(DEPRECATED_FLAGS)
118 dnl fi
120 dnl Check for pkg-config
121 PKG_PROG_PKG_CONFIG([0.22])
123 dnl Enable versioned user preferences directory
124 AC_ARG_WITH(pref-suffix,
125   AS_HELP_STRING([--with-pref-suffix=VALUE],[Suffix to add to user preferences dir.]),
126   PREF_SUFFIX="$withval")
128 AC_SUBST(PREF_SUFFIX)
129 AC_DEFINE_UNQUOTED(PREF_SUFFIX,
130       "${PREF_SUFFIX}",
131           [Suffix to add to preferences directory])
133 # Initialize libtool
134 LT_PREREQ([2.2])
135 LT_INIT([disable-static])
137 dnl ***************************************************************************
138 dnl Check for GObject-Introspection
139 dnl ***************************************************************************
140 m4_ifdef([GOBJECT_INTROSPECTION_CHECK], [GOBJECT_INTROSPECTION_CHECK([0.6.7])],
141 [AM_CONDITIONAL(HAVE_INTROSPECTION, false)])
143 dnl ***************************************************************************
144 dnl Set gjsdir
145 dnl ***************************************************************************
146 gjsdir=`pkg-config --variable=jsdir gjs-1.0`
147 AC_SUBST(gjsdir)
149 dnl Check base modules
151 PKG_CHECK_MODULES([ANJUTA],
152    [gthread-2.0 >= $GTHREAD_REQUIRED
153         glib-2.0 >= $GLIB_REQUIRED
154         gio-2.0 >= $GLIB_REQUIRED
155         gmodule-2.0 >= $GLIB_REQUIRED
156         gtk+-3.0 >= $GTK_REQUIRED
157         gdk-pixbuf-2.0 >= $GDK_PIXBUF_REQUIRED])
159 PKG_CHECK_MODULES([XML],
160    [libxml-2.0 >= $LIBXML_REQUIRED])
162 PKG_CHECK_MODULES([GDL],
163    [gdl-3.0 >= $GDL_REQUIRED])
165 PKG_CHECK_MODULES([GDA],
166    [libgda-5.0 >= $GDA5_REQUIRED],,
167    [PKG_CHECK_MODULES([GDA],
168       [libgda-4.0 >= $GDA4_REQUIRED])])
169         
170 PKG_CHECK_MODULES([VTE],
171    [vte-2.90 >= $VTE_REQUIRED])
173 dnl Check for better module
175 PKG_CHECK_MODULES([GLIB_NEW],
176    [glib-2.0 >= $GLIB_NEW_REQUIRED],
177    HAVE_GLIB_2_29_2=1,
178    HAVE_GLIB_2_29_2=0)
179 AC_SUBST(HAVE_GLIB_2_29_2)
180 AC_DEFINE_UNQUOTED([GLIB_2_29_2], $HAVE_GLIB_2_29_2, [Define to 1 if glib is version 2.29.2 or greater])
182 dnl Check for autogen
183 dnl -----------------
184 AC_PATH_PROG(AUTOGEN_PATH, autogen,no)
185 if test x$AUTOGEN_PATH = xno; then
186    AC_MSG_WARN([Couldn't find autogen. You will be able to build anjuta without autogen \
187                 but several things won't work. You can get it from http://autogen.sourceforge.net/])
190 dnl Check for Devhelp
191 dnl -----------------
193 AC_ARG_ENABLE(plugin-devhelp,
194   AS_HELP_STRING([--disable-plugin-devhelp],[Disable devhelp plugin support in Anjuta.]),
195   [ if test "$enableval" = "no"; then
196        user_disabled_devhelp=1
197     fi ],
198   [ user_disabled_devhelp=0 ] )
200 AC_MSG_CHECKING(if devhelp plugin is disabled)
201 if test "$user_disabled_devhelp" = 1; then
202         AC_MSG_RESULT(yes)
203         devhelp_enabled="no"
204 else
205         AC_MSG_RESULT(no)
206         PKG_CHECK_MODULES(PLUGIN_DEVHELP,
207                                 [libdevhelp-3.0 >= $LIBDEVHELP_REQUIRED],
208                                 [
209                                     devhelp_enabled=yes
210                                 ], [
211                                     devhelp_enabled=no
212                                 ])
215 AM_CONDITIONAL(HAVE_PLUGIN_DEVHELP, [test x$devhelp_enabled = xyes])
217 dnl Check for Glade3
218 dnl ---------------------
220 AC_ARG_ENABLE(plugin-glade,
221   AS_HELP_STRING([--disable-plugin-glade],[Disable glade plugin support in Anjuta.]),
222   [ if test "$enableval" = "no"; then
223        user_disabled_glade=1
224     fi ],
225   [ user_disabled_glade=0 ] )
227 AC_MSG_CHECKING(if glade plugin is disabled)
228 if test "$user_disabled_glade" = 1; then
229         AC_MSG_RESULT(yes)
230         gladeui_found="no"
231 else
232         AC_MSG_RESULT(no)
233         gladeui_version=0
234         PKG_CHECK_MODULES(PLUGIN_GLADE, gladeui-2.0 >= $GLADEUI_REQUIRED,
235             [
236                 gladeui_found=yes
237             ], [
238                 gladeui_found=no
239             ])
242 AM_CONDITIONAL(HAVE_PLUGIN_GLADE, [test x$gladeui_found = xyes])
244 dnl Check for gtksourceview
245 dnl -------------------------------------------------------------
246 PKG_CHECK_MODULES(SOURCEVIEW,
247                 [gtksourceview-3.0 >= $GTKSOURCEVIEW_REQUIRED])
249 dnl Check for vala
250 dnl -------------------------------------------------------------
252 AC_ARG_ENABLE(vala,
253         AS_HELP_STRING([--disable-vala],[Disable vala support]),
254         [ if test "$enableval" = "no"; then
255                 user_disabled_vala=1
256           fi ],
257         [ user_disabled_vala=0 ])
259 AC_MSG_CHECKING(if vala support is disabled)
260 if test "$user_disabled_vala" = 1; then
261         AC_MSG_RESULT(yes)
262         enable_vala="no"
263 else
264         AC_MSG_RESULT(no)
265         enable_vala="yes"
266         PKG_CHECK_MODULES(VALA,
267                 [libvala-0.14 >= $VALA_REQUIRED],LIBVALA="libvala-0.14")
268         AC_SUBST(LIBVALA)
271 if test x$enable_vala = xyes; then
272         AC_PATH_PROGS(VALAC, [valac-0.14 valac], valac)
273         AC_SUBST(VALAC)
276 AM_CONDITIONAL(ENABLE_VALA, [test x$enable_vala = xyes])
278 dnl Check for Python
279 dnl -------------------------------------------------------------
281 AM_PATH_PYTHON([],
282         [have_python="yes"],
283         [have_python="no"])
285 if test x$have_python = xyes; then
286         if test -x $PYTHON-config; then
287                 PYTHON_CFLAGS=`$PYTHON-config --cflags`
288                 PYTHON_LIBS=`$PYTHON-config --libs`
289                 AC_SUBST(PYTHON_CFLAGS)
290                 AC_SUBST(PYTHON_LIBS)
291         else
292                 have_python="no"
293         fi
296 AM_CONDITIONAL(HAVE_PYTHON, [test x$have_python = xyes])
298 PKG_CHECK_MODULES([PLUGIN_SYMBOL_DB],
299      [libgda-5.0 >= $GDA5_REQUIRED],,
300      [PKG_CHECK_MODULES([PLUGIN_SYMBOL_DB],
301          [libgda-4.0 >= $GDA4_REQUIRED])])
303 dnl Disable packagekit support
304 dnl -----------------------------------
305 AC_ARG_ENABLE(packagekit,
306   [AC_HELP_STRING([--disable-packagekit],[build without PackageKit support])],,
307   [enable_packagekit=yes])
308 if test "x$enable_packagekit" != "xno"; then
309   AC_DEFINE(ENABLE_PACKAGEKIT, 1, [define to enable PackageKit installer])
312 dnl Setup Anjuta Library flags
313 dnl --------------------------
314 LIBANJUTA_CFLAGS='$(ANJUTA_CFLAGS) $(GDL_CFLAGS) $(DEPRECATED_FLAGS) -I$(top_srcdir) -I$(top_builddir)/libanjuta -DPACKAGE_PIXMAPS_DIR=\""$(datadir)/pixmaps/$(PACKAGE)"\" -DPACKAGE_LIB_DIR=\""$(pkglibdir)"\" -DPACKAGE_DATA_DIR=\""$(datadir)/$(PACKAGE)"\"'
315 LIBANJUTA_LIBS='$(top_builddir)/libanjuta/libanjuta-3.la'
316 AC_SUBST(LIBANJUTA_CFLAGS)
317 AC_SUBST(LIBANJUTA_LIBS)
319 dnl Setup FooCanvas Library flags
320 dnl --------------------------
321 LIBFOOCANVAS_CFLAGS='-I$(top_srcdir)'
322 LIBFOOCANVAS_LIBS='$(top_builddir)/libfoocanvas/libanjuta-foocanvas.la'
323 AC_SUBST(LIBFOOCANVAS_CFLAGS)
324 AC_SUBST(LIBFOOCANVAS_LIBS)
326 dnl Checks for Xft/XRender for foocanvas
328 AC_CHECK_LIB(Xrender, XRenderFindFormat,
329         [AC_SUBST(RENDER_LIBS, "-lXrender -lXext")
330          AC_DEFINE(HAVE_RENDER, 1, [Define if libXrender is available.])],
331         [AC_SUBST(RENDER_LIBS, "")],
332         [-lXext])
334 dnl Setup Plugin directories
335 dnl ------------------------
336 anjuta_plugin_dir='$(libdir)/anjuta'
337 anjuta_data_dir='$(datadir)/anjuta'
338 anjuta_ui_dir='$(datadir)/anjuta/ui'
339 anjuta_glade_dir='$(datadir)/anjuta/glade'
340 anjuta_image_dir='$(datadir)/pixmaps/anjuta'
341 AC_SUBST(anjuta_plugin_dir)
342 AC_SUBST(anjuta_data_dir)
343 AC_SUBST(anjuta_ui_dir)
344 AC_SUBST(anjuta_glade_dir)
345 AC_SUBST(anjuta_image_dir)
347 dnl ***************************************************************************
348 dnl Check for marshal and enum generators
349 dnl ***************************************************************************
350 GLIB_GENMARSHAL="`$PKG_CONFIG --variable=glib_genmarshal glib-2.0`"
351 AC_SUBST(GLIB_GENMARSHAL)
352 GLIB_MKENUMS="`$PKG_CONFIG --variable=glib_mkenums glib-2.0`"
353 AC_SUBST(GLIB_MKENUMS)
355 dnl Set up Glade 3 catlog information
356 dnl ---------------------
357 GLADE_PLUGINS_PATH="`$PKG_CONFIG --variable=moduledir gladeui-1.0`"
358 AC_SUBST(GLADE_PLUGINS_PATH)
359 GLADE_CATALOG_PATH="`$PKG_CONFIG --variable=catalogdir gladeui-1.0`"
360 AC_SUBST(GLADE_CATALOG_PATH)
362 dnl ***************************************************************************
363 dnl Internatinalization
364 dnl ***************************************************************************
365 IT_PROG_INTLTOOL([0.40.1])
367 AM_GNU_GETTEXT([external])
368 AM_GNU_GETTEXT_VERSION([0.17])
370 GETTEXT_PACKAGE=anjuta
371 AC_SUBST(GETTEXT_PACKAGE)
372 AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE,"$GETTEXT_PACKAGE", [GETTEXT package name])
374 BISON_I18N
376 dnl ***************************************************************************
377 dnl Check for gtk-doc.
378 dnl ***************************************************************************
379 GTK_DOC_CHECK([1.4])
381 dnl ***************************************************************************
382 dnl User manual
383 dnl ***************************************************************************
384 GNOME_DOC_INIT([0.18])
386 dnl Define convenience macros
387 dnl -------------------------
388 dnl CHECK_HEADER_DEFINE(LABEL, HEADER [,ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND ] ])
389 AC_DEFUN([CHECK_HEADER_DEFINE],
391         AC_MSG_CHECKING("if $1 is defined in $2")
392         AC_EGREP_CPP(yes,
393 [#include <$2>
394 #ifdef $1
395   yes
396 #endif
397 ], [
398         AC_MSG_RESULT(yes)
399         $3
400 ], [
401         AC_MSG_RESULT(no)
402         $4
403 ]) ])
405 dnl Checks for header files.
406 AC_CHECK_HEADERS(dirent.h fcntl.h fnmatch.h stat.h stdlib.h string.h stdint.h)
407 AC_CHECK_HEADERS(time.h types.h unistd.h)
408 AC_CHECK_HEADERS(sys/dir.h sys/stat.h sys/times.h sys/types.h)
410 dnl Checks for typedefs, structures, and compiler characteristics.
412 AC_CANONICAL_HOST
413 CYGWIN=no
414 MINGW32=no
415 case $host_os in
416   *cygwin* ) CYGWIN=yes;;
417   *mingw32* ) MINGW32=yes;;
418 esac
421 dnl Check for bind in libsocket (needed on Solaris)
422 AC_CHECK_LIB(socket, bind)
424 dnl Check for function forkpty and related headers
425 AC_SEARCH_LIBS(forkpty, util, , AC_DEFINE(EMULATE_FORKPTY, [], [Need  to implement our own forkpty()]))
426 AC_CHECK_HEADERS(libutil.h util.h pty.h)
428 dnl Checks for library functions.
429 AC_CHECK_FUNCS(fnmatch)
430 AC_CHECK_FUNCS(strstr)
431 AC_CHECK_FUNCS(stricmp)
432 AC_CHECK_FUNCS(strnicmp)
433 AC_CHECK_FUNCS(getline)
435 dnl for libegg/egg-recent-model.c
436 AC_CHECK_DECLS([lockf])
437 AC_CHECK_FUNCS([lockf])
439 AC_CHECK_FUNCS(fgetpos, have_fgetpos=yes)
441 dnl SEEK_SET should be in stdio.h, but may be in unistd.h on SunOS 4.1.x
442 if test "$have_fgetpos" != yes ; then
443     CHECK_HEADER_DEFINE(SEEK_SET, stdio.h,,
444         CHECK_HEADER_DEFINE(SEEK_SET, unistd.h,,
445             AC_DEFINE(SEEK_SET, 0, [Seek set 0])))
448 AC_CHECK_FUNCS(mkstemp, have_mkstemp=yes)
449 if test "$have_mkstemp" != yes ; then
450     AC_CHECK_FUNCS(chmod)
451     if test "$tmpdir_specified" = yes ; then
452         AC_MSG_RESULT(use of tmpnam overrides temporary directory selection)
453     fi
454 else
455     AC_MSG_CHECKING(directory to use for temporary files)
456     if test -z "$enable_tmpdir" -o "$enable_tmpdir" = no -o "$enable_tmpdir" = yes ;
457         then tmpdir=/tmp
458         else tmpdir="$enable_tmpdir"
459     fi
460     if test -d $tmpdir ; then
461         AC_MSG_RESULT($tmpdir)
462         AC_DEFINE_UNQUOTED(TMPDIR, "$tmpdir", [Directory for temporary files])
463     else
464         AC_MSG_WARN($tmpdir does not exist)
465     fi
468 dnl -----------------------------
469 dnl Checks for FreeBSD Build
470 dnl -----------------------------
471 AC_MSG_CHECKING(if building on FreeBSD)
473 if test `uname -s` = "FreeBSD" ; then
474         AC_MSG_RESULT(yes)
475         FREEBSD_BUILD=-DFREEBSD
476         AC_SUBST(FREEBSD_BUILD)
477         AC_PATH_PROG(GMAKE, gmake, no)
478         if test "x$GMAKE" = "xno"; then
479                 AC_MSG_ERROR(You need gmake installed to build Anjuta!)
480         fi
481 else
482         AC_MSG_RESULT(no)
483         GMAKE="make"
486 AC_SUBST(GMAKE)
488 dnl Checks for missing prototypes
489 dnl -----------------------------
490 AC_MSG_NOTICE([checking for missing prototypes...])
492 AC_DEFUN([CHECK_PROTO], [AC_EGREP_HEADER([[^A-Za-z0-9_]$1([   ]+[A-Za-z0-9_]*)?\(], $2,, AC_DEFINE(patsubst([NEED_PROTO_NAME], [NAME], translit($1, [a-z], [A-Z])),,[Do not know]) AC_MSG_RESULT(adding prototype for $1))])
494 if test "$have_remove" = yes ; then
495     CHECK_PROTO(remove, stdio.h)
496 else
497     CHECK_PROTO(unlink, unistd.h)
499 CHECK_PROTO(malloc, stdlib.h)
500 CHECK_PROTO(getenv, stdlib.h)
501 CHECK_PROTO(stat,   sys/stat.h)
502 CHECK_PROTO(lstat,  sys/stat.h)
503 if test "$have_fgetpos" = yes ; then
504     CHECK_PROTO(fgetpos, stdio.h)
506 if test "$have_truncate" = yes ; then
507     CHECK_PROTO(truncate, unistd.h)
509 if test "$have_ftruncate" = yes ; then
510     CHECK_PROTO(ftruncate, unistd.h)
513 dnl  **********************************************************
514 dnl  check if we have svn libraries to build subversion plugin
515 dnl  (stolen from kdevelop ;-)
516 dnl  **********************************************************
518 AC_MSG_CHECKING(for Subversion svn-config)
519 AC_ARG_WITH(subversion-dir,
520                 AS_HELP_STRING([--with-subversion-dir=DIR],[Where Subversion is installed ]),
521                 [
522                                 SVNCONFIG="$withval/bin/svn-config"
523                 ])
525 if test -z "$SVNCONFIG"; then
526                 _SVNCONFIG="`svn-config --prefix 2> /dev/null`"
527                 if test -n "$_SVNCONFIG"; then
528                                 SVNCONFIG="$_SVNCONFIG/bin/svn-config"
529                 fi
532 AC_SUBST(SVNCONFIG)
533 if test -x "$SVNCONFIG"; then
534                 SVNLD="`$SVNCONFIG --ldflags 2> /dev/null`"
535                 SVN_LIB="`$SVNCONFIG --libs --cflags 2> /dev/null` -lsvn_client-1 -lsvn_subr-1"
536                 dnl ugly hack for subversion svn-config problems in 0.14.x, to be removed when svn-config is fixed
537                 SVN_INCLUDE="`$SVNCONFIG --includes 2> /dev/null` -I$_SVNCONFIG/include/subversion-1/"
538                 AC_MSG_RESULT(yes)
539 else
540                 AC_MSG_RESULT(not found)
542                 dnl just a fallback to debian's config so that it works for me :)
543                 AC_ARG_WITH(svn-include,
544                                                                 [[  --with-svn-include=DIR   Use the given path to the subversion headers.]],
545                                                                 [
546                                                                 if test "$withval" != "yes" -a "$withval" != ""; then
547                                                                                 SVN_INCLUDES=$withval
548                                                                 fi
549                                                                 ])
550                 if test -z "$SVN_INCLUDES"; then
551                         SVN_INCLUDES="/usr/local/include /usr/include"
552                 fi
553                 AC_MSG_CHECKING([for Subversion headers])
554                 SVN_INCLUDE=""
555                 for VALUE in $SVN_INCLUDES ; do
556                                 if test -f $VALUE/subversion-1/svn_types.h ; then
557                                                 SVN_INCLUDE=$VALUE/subversion-1
558                                                 break
559                                 fi
560                                 if test -f $VALUE/svn_types.h ; then
561                                                 SVN_INCLUDE=$VALUE
562                                                 break
563                                 fi
564                 done
565                 if test $SVN_INCLUDE ; then
566                                 AC_MSG_RESULT([found])
567                 else
568                                 AC_MSG_RESULT([not found])
569                 fi
570                 SVN_LIBS="/usr/local/lib64 /usr/local/lib /usr/lib64 /usr/lib"
571                 AC_ARG_WITH(svn-lib,
572                                                 [[  --with-svn-lib=DIR  Use the given path to the subversion libraries.]],
573                                                 [
574                                                         if test "$withval" != "yes" -a "$withval" != ""; then
575                                                                 SVN_LIBS=$withval
576                                                         fi
577                                                 ])
578                 AC_MSG_CHECKING([for Subversion libraries])
579                 SVN_LIB=""
580                 for VALUE in $SVN_LIBS ; do
581                                 if ls $VALUE/libsvn_client-1.* 1>/dev/null 2>&1; then
582                                                 SVN_LIB=$VALUE
583                                                 break
584                                 fi
585                 done
586                 if test $SVN_LIB ; then
587                                 AC_MSG_RESULT([found])
588                 else
589                                 AC_MSG_RESULT([not found])
590                 fi
593 dnl ******************************************************************
594 dnl Check for extra libs required by subversion.
595 dnl FIXME: This should actually be done by subversion and not by us.
596 dnl ******************************************************************
598 AC_ARG_ENABLE(plugin-subversion,
599   AS_HELP_STRING([--disable-plugin-subversion],[Disable subversion support in Anjuta.]),
600   [ if test "$enableval" = "no"; then
601         user_disabled_subversion=1
602     fi ],
603   [ user_disabled_subversion=0 ] )
605 AC_MSG_CHECKING(if subversion support is disabled)
606 if test "$user_disabled_subversion" = 1; then
607         AC_MSG_RESULT(yes)
608         SVN_INCLUDE=""
609         SVN_LIB=""
610 else
611         AC_MSG_RESULT(no)
614 if test -n "$SVN_INCLUDE" ; then
615         dnl ------------------------------------
616         dnl APR. Required by subversion (devel)
617         dnl ------------------------------------
618         have_atr=no
619         PKG_CHECK_MODULES(APR,                            \
620                 apr-1, have_apr=yes, have_apr=no)
621         if test x"$have_apr" = "xno"; then
622                 SVN_INCLUDE=""
623         fi
625         dnl -----------------------------------------
626         dnl APR util. Required by subversion (devel)
627         dnl------------------------------------------
628         have_atr_util=no
629         PKG_CHECK_MODULES(APR_UTILS,                            \
630                 apr-util-1, have_apr_util=yes, have_apr_util=no)
631         if test x"$have_apr_util" = "xno"; then
632                 SVN_INCLUDE=""
633         fi
635         dnl -----------------------------------------
636         dnl NEON. Required by subversion (devel)
637         dnl------------------------------------------
638         have_neon=no
639         PKG_CHECK_MODULES(NEON,                            \
640                 neon, have_neon=yes, have_neon=no)
641         if test x"$have_neon" = "xno"; then
642                 SVN_INCLUDE=""
643         fi
645         dnl Make sure our SVN version is high enough
646         dnl Eww, eww, eww, this is dirty
647         AC_MSG_CHECKING([for subversion >= $SUBVERSION_REQUIRED])
648         AC_LANG([C])
649         dnl Temporarily set CFLAGS so that include dirs are found
650         CFLAGS_TMP=$CFLAGS
651         CFLAGS="-I$SVN_INCLUDE $APR_CFLAGS"
652         AC_COMPILE_IFELSE(
653                 [AC_LANG_PROGRAM([[#include <svn_version.h>]],
654                         [[
655                                 #if (SVN_VER_MAJOR < $SVN_MAJOR) || (SVN_VER_MINOR < $SVN_MINOR) || (SVN_VER_PATCH < $SVN_PATCH)
656                                 #       error "Version too low"
657                                 #endif
658                         ]])], AC_MSG_RESULT(yes), have_svn_version=no)
659         if test x"$have_svn_version" = "xno"; then
660                 AC_MSG_RESULT(no)
661                 SVN_INCLUDE=""
662         fi
663         CFLAGS=$CFLAGS_TMP
666 dnl ------------------------------------------
667 dnl Finally prepare subversion build flags
668 dnl ------------------------------------------
670 if test -n "$SVN_INCLUDE" ; then
671         SVN_INCLUDE="-I$SVN_INCLUDE"
672         if test x != "x$SVN_LIB" ; then
673             SVN_LIB="-L$SVN_LIB $APR_LIBS $APR_UTILS_LIBS $NEON_LIBS -lsvn_client-1 -lsvn_subr-1"
674         else
675             SVN_LIB="$APR_LIBS $APR_UTILS_LIBS $NEON_LIBS -lsvn_client-1 -lsvn_subr-1"
676         fi
677         SVN_CFLAGS="$APR_CFLAGS $APR_UTILS_CFLAGS $NEON_CFLAGS"
680 AM_CONDITIONAL(BUILD_SVN, [test -n "$SVN_INCLUDE"])
681 AC_SUBST(SVN_INCLUDE)
682 AC_SUBST(SVN_LIB)
683 AC_SUBST(SVN_CFLAGS)
685 dnl ------------------------------------------
686 dnl Symbol-db shared memory checks
687 dnl ------------------------------------------
689 SYMBOL_DB_SHM="/dev/shm"
690 user_specified_shm=0
691 AC_MSG_CHECKING(for symbol-db shared memory)
692 AC_ARG_WITH(symbol-db-shm,
693                 AS_HELP_STRING([--with-symbol-db-shm=DIR],[Where shared memory is placed ]),
694                 [
695                                 user_specified_shm=1
696                                 SYMBOL_DB_SHM="$withval"
697                 ])
698 if test "$user_specified_shm" = 1; then
699         AC_MSG_RESULT(yes)
700 else
701         AC_MSG_RESULT(no)
704 AC_SUBST(SYMBOL_DB_SHM)
707 dnl Check for graphviz (class inheritance and profiler plugins)
708 AC_ARG_ENABLE(graphviz,
709         AS_HELP_STRING([--disable-graphviz],[Disable GraphViz support in Anjuta]),
710         [ if test "$enableval" = "no"; then
711                 user_disabled_graphviz=1
712           fi ],
713         [ user_disabled_graphviz=0 ])
715 AC_MSG_CHECKING(if GraphViz support is disabled)
716 if test "$user_disabled_graphviz" = 1; then
717         AC_MSG_RESULT(yes)
718         libgraphviz_found="no"
719 else
720         AC_MSG_RESULT(no)
721         PKG_CHECK_MODULES(GRAPHVIZ,
722                 [libgvc >= $LIBGRAPHVIZ_REQUIRED libgraph >= $LIBGRAPHVIZ_REQUIRED],
723                 [libgraphviz_found="yes"],
724                 [libgraphviz_found="no"])
727 AM_CONDITIONAL(HAVE_GRAPHVIZ, [test x$libgraphviz_found = xyes])
729 dnl Test using autotest
730 dnl -----------------------------
731 AC_CONFIG_TESTDIR(plugins/am-project/tests)
732 AM_MISSING_PROG([AUTOM4TE], [autom4te])
734 AC_CONFIG_FILES([
735 Makefile
736 po/Makefile.in
737 libanjuta/Makefile
738 libanjuta/tests/Makefile
739 libanjuta/interfaces/Makefile
740 libanjuta/libanjuta-3.0.pc
741 libanjuta/anjuta-version.h
742 src/Makefile
743 pixmaps/Makefile
744 pixmaps/16x16/Makefile
745 pixmaps/22x22/Makefile
746 pixmaps/24x24/Makefile
747 pixmaps/32x32/Makefile
748 pixmaps/48x48/Makefile
749 pixmaps/scalable/Makefile
750 data/Makefile
751 data/welcome.txt
752 doc/anjuta.1
753 doc/anjuta-launcher.1
754 doc/Makefile
755 scripts/Makefile
756 launcher/Makefile
757 plugins/Makefile
758 plugins/class-gen/Makefile
759 plugins/class-gen/templates/Makefile
760 plugins/code-analyzer/Makefile
761 plugins/patch/Makefile
762 plugins/document-manager/Makefile
763 plugins/document-manager/images/Makefile
764 plugins/message-view/Makefile
765 plugins/gdb/Makefile
766 plugins/gdb/images/Makefile
767 plugins/debug-manager/Makefile
768 plugins/debug-manager/images/Makefile
769 plugins/devhelp/Makefile
770 plugins/devhelp/images/Makefile
771 plugins/glade/Makefile
772 plugins/glade/images/Makefile
773 plugins/js-debugger/Makefile
774 plugins/file-manager/Makefile
775 plugins/file-loader/Makefile
776 plugins/file-wizard/Makefile
777 plugins/build-basic-autotools/Makefile
778 plugins/project-manager/Makefile
779 plugins/symbol-db/benchmark/Makefile
780 plugins/symbol-db/benchmark/symbol-db/Makefile
781 plugins/symbol-db/benchmark/libgda/Makefile
782 plugins/symbol-db/benchmark/sqlite/Makefile
783 plugins/symbol-db/images/Makefile
784 plugins/symbol-db/Makefile
785 plugins/symbol-db/anjuta-tags/Makefile
786 plugins/project-wizard/Makefile
787 plugins/snippets-manager/Makefile
788 plugins/cvs-plugin/Makefile
789 plugins/subversion/Makefile
790 plugins/git/Makefile
791 plugins/git/images/Makefile
792 plugins/sourceview/Makefile
793 plugins/terminal/Makefile
794 plugins/tools/Makefile
795 plugins/tools/scripts/Makefile
796 plugins/language-manager/Makefile
797 plugins/project-import/Makefile
798 plugins/project-wizard/templates/Makefile
799 plugins/project-wizard/templates/mkfile/Makefile
800 plugins/project-wizard/templates/mkfile/src/Makefile
801 plugins/project-wizard/templates/mkfile/po/Makefile
802 plugins/project-wizard/templates/minimal/Makefile
803 plugins/project-wizard/templates/js_minimal/Makefile
804 plugins/project-wizard/templates/js_minimal/src/Makefile
805 plugins/project-wizard/templates/terminal/Makefile
806 plugins/project-wizard/templates/terminal/src/Makefile
807 plugins/project-wizard/templates/terminal/po/Makefile
808 plugins/project-wizard/templates/cpp/Makefile
809 plugins/project-wizard/templates/cpp/src/Makefile
810 plugins/project-wizard/templates/cpp/po/Makefile
811 plugins/project-wizard/templates/gtk/Makefile
812 plugins/project-wizard/templates/gtk/src/Makefile
813 plugins/project-wizard/templates/gtk/po/Makefile
814 plugins/project-wizard/templates/gtkapplication/Makefile
815 plugins/project-wizard/templates/gtkapplication/src/Makefile
816 plugins/project-wizard/templates/gtkapplication/po/Makefile
817 plugins/project-wizard/templates/anjuta-plugin/Makefile
818 plugins/project-wizard/templates/anjuta-plugin/src/Makefile
819 plugins/project-wizard/templates/anjuta-plugin/po/Makefile
820 plugins/project-wizard/templates/gtkmm/Makefile
821 plugins/project-wizard/templates/gtkmm/src/Makefile
822 plugins/project-wizard/templates/gtkmm/po/Makefile
823 plugins/project-wizard/templates/gcj/Makefile
824 plugins/project-wizard/templates/gcj/src/Makefile
825 plugins/project-wizard/templates/java/Makefile
826 plugins/project-wizard/templates/java/src/Makefile
827 plugins/project-wizard/templates/java/po/Makefile
828 plugins/project-wizard/templates/python/Makefile
829 plugins/project-wizard/templates/python/src/Makefile
830 plugins/project-wizard/templates/python/po/Makefile
831 plugins/project-wizard/templates/pygtk/Makefile
832 plugins/project-wizard/templates/pygtk/src/Makefile
833 plugins/project-wizard/templates/pygtk/po/Makefile
834 plugins/project-wizard/templates/vala-gtk/Makefile
835 plugins/project-wizard/templates/vala-gtk/src/Makefile
836 plugins/project-wizard/templates/wxwin/Makefile
837 plugins/project-wizard/templates/wxwin/src/Makefile
838 plugins/project-wizard/templates/wxwin/po/Makefile
839 plugins/project-wizard/templates/xlib/Makefile
840 plugins/project-wizard/templates/xlib/src/Makefile
841 plugins/project-wizard/templates/xlib/po/Makefile
842 plugins/project-wizard/templates/xlib-dock/Makefile
843 plugins/project-wizard/templates/xlib-dock/src/Makefile
844 plugins/project-wizard/templates/xlib-dock/po/Makefile
845 plugins/project-wizard/templates/sdl/Makefile
846 plugins/project-wizard/templates/sdl/src/Makefile
847 plugins/project-wizard/templates/sdl/po/Makefile
848 plugins/project-wizard/templates/licenses/Makefile
849 plugins/project-wizard/templates/library/Makefile
850 plugins/project-wizard/templates/library/src/Makefile
851 plugins/project-wizard/templates/library/po/Makefile
852 plugins/project-wizard/templates/directory/Makefile
853 plugins/project-wizard/templates/m4/Makefile
854 plugins/project-wizard/templates/gnome-shell-extension/Makefile
855 plugins/project-wizard/templates/gnome-shell-extension/src/Makefile
856 plugins/am-project/Makefile
857 plugins/am-project/tests/atlocal
858 plugins/am-project/tests/Makefile
859 plugins/mk-project/Makefile
860 plugins/dir-project/Makefile
861 plugins/language-support-cpp-java/Makefile
862 plugins/language-support-cpp-java/cxxparser/Makefile
863 plugins/run-program/Makefile
864 plugins/starter/Makefile
865 plugins/language-support-js/Makefile
866 plugins/language-support-vala/Makefile
867 plugins/language-support-python/Makefile
868 plugins/python-loader/Makefile
869 anjuta.desktop.in
870 manuals/Makefile
871 manuals/reference/Makefile
872 manuals/reference/libanjuta/Makefile
873 manuals/reference/libanjuta/version.xml
874 manuals/anjuta-manual/Makefile
875 manuals/anjuta-faqs/Makefile
876 manuals/anjuta-build-tutorial/Makefile
877 mime/Makefile
879 AC_OUTPUT
880 echo " "
881 echo "-------------------------------------------------------------------"
882 echo "Conditionally built plugins:"
883 echo "-------------------------------------------------------------------"
884 if [ test -n "$SVN_INCLUDE" ]; then
885         echo "Building subversion plugin: ............................YES"
886 else
887         echo "Building subversion plugin: ............................NO"
888                 echo "        Requires apr (>= 0.9.4); http://subversion.org"
889                 echo "        Requires apr-util (>= 0.9.4); http://subversion.org"
890                 echo "        Requires neon (>= 0.28.2); http://subversion.org"
891                 echo "        Requires subversion (>= 1.5); http://subversion.org"
894 if [ test x$gladeui_found = xyes ]; then
895        echo "Building glade plugin: .................................YES"
896 else
897        echo "Building glade plugin: .................................NO"
898        echo "        Requires glade-3 (>= $GLADEUI_REQUIRED)"
901 if [ test x$devhelp_enabled = xyes ]; then
902        echo "Building devhelp plugin: ...............................YES"
903 else
904        echo "Building devhelp plugin: ...............................NO"
905        echo "        Requires libdevhelp-3.0 (>= $LIBDEVHELP_REQUIRED)"
907 if [ test x$enable_vala = xyes ]; then
908         echo "Building Vala support: .................................YES"
909 else
910         echo "Building Vala support: .................................NO"
911         echo "        Requires libvala (>= $VALA_REQUIRED)"
913 if [ test x$libgraphviz_found = xyes ]; then
914         echo "Building class inheritance plugin: .....................YES"
915 else
916         echo "Building class inheritance plugin: .....................NO"
917         echo "        Requires graphviz (>= 2.6.0); http://graphviz.org"
919 echo "-------------------------------------------------------------------"
920 echo "AM_CFLAGS = $AM_CFLAGS"
921 echo "AM_CXXFLAGS = $AM_CXXFLAGS"