1 dnl Copyright © 2019-2023 Nick Bowler
3 dnl Based on original work Copyright © 1999-2013 Jiri (George) Lebl.
5 dnl License GPLv2+: GNU General Public License version 2 or any later version.
6 dnl This is free software: you are free to change and redistribute it.
7 dnl There is NO WARRANTY, to the extent permitted by law.
11 AC_INIT([GObject Builder], [2.0.20a], [nbowler@draconx.ca], [gob-dx])
12 AC_CONFIG_SRCDIR([src/treefuncs.def])
13 AC_CONFIG_AUX_DIR([build-aux])
14 AC_CONFIG_HEADERS([config.h])
16 AM_INIT_AUTOMAKE([-Wall -Wno-portability subdir-objects dist-xz])
17 AM_SILENT_RULES([yes])
31 m4_include([lib/gnulib.mk])
33 AC_ARG_VAR([PERL], [command to execute perl programs])
34 AC_CHECK_PROGS([PERL], [perl], [false])
35 AM_CONDITIONAL([HAVE_PERL], [$PERL -e 'my $x = 42; exit $x'; test $? = 42])
37 DX_PROG_FLEX([], [have_flex=yes], [have_flex=no])
38 AM_CONDITIONAL([HAVE_FLEX], [test x"$have_flex" = x"yes"])
42 dnl Dependencies for test suite
43 DX_LIB_GLIB2([], [gobject], [HAVE_GOBJECT=true], [HAVE_GOBJECT=false])
44 AC_SUBST([HAVE_GOBJECT])
47 LIBS="$LIBS $LIBGLIB_LIBS"
48 AC_CHECK_FUNCS([g_string_append_printf g_ascii_strcasecmp])
51 AM_CONDITIONAL([GOB_STRCASE], [test x"$ac_cv_func_g_ascii_strcasecmp" = x"no"])
53 AS_IF([$HAVE_GOBJECT],
54 [AC_CACHE_CHECK([whether libgobject supports private data members],
55 [dx_cv_libgobject_privates],
57 CFLAGS="$CFLAGS $LIBGOBJECT_CFLAGS"
58 AC_COMPILE_IFELSE([AC_LANG_SOURCE(
59 [#include <glib-object.h>
60 #if defined(G_ADD_PRIVATE) || defined(G_TYPE_INSTANCE_GET_PRIVATE)
62 DX_LIB_COMPILE_ERROR([private members not supported])
64 ])], [dx_cv_libgobject_privates=yes], [dx_cv_libgobject_privates=no])
65 CFLAGS=$save_CFLAGS])])
67 AS_IF([test x"$dx_cv_libgobject_privates" = x"yes"],
68 [HAVE_GOBJECT_PRIVATES=true], [HAVE_GOBJECT_PRIVATES=false])
69 AC_SUBST([HAVE_GOBJECT_PRIVATES])
71 DX_LIB_GTK2([], [HAVE_GTK2=true], [HAVE_GTK2=false])
74 AC_CONFIG_TESTDIR([.], [t:.])
76 AM_CONDITIONAL([HAVE_AUTOTEST], [test x"$dx_cv_autotest_works" = x"yes"])
78 AC_CONFIG_FILES([Makefile gob2.spec doc/gob2.1])