# -*- Autoconf -*- # Process this file with autoconf to produce a configure script. AC_PREREQ([2.69]) AC_INIT([disfluid], m4_esyscmd([sh build-aux/git-version-gen .tarball-version]), [vivien@planete-kraus.eu]) AC_CONFIG_SRCDIR([include/disfluid.h]) AC_CONFIG_HEADERS([config.h]) AC_CONFIG_AUX_DIR([build-aux]) AC_CONFIG_MACRO_DIR([m4]) AC_SUBST([LTV_CURRENT], [0]) AC_SUBST([LTV_REVISION], [0]) AC_SUBST([LTV_AGE], [0]) AC_SUBST([DLL_VERSION], [$(expr $LTV_CURRENT - $LTV_AGE)]) # Checks for programs. AC_PROG_CC gl_EARLY AM_INIT_AUTOMAKE([gnu -Wall -Werror subdir-objects]) AM_PROG_AR LT_INIT([win32-dll]) gl_INIT AM_MISSING_PROG([CONVERT], [convert]) AC_ARG_VAR([G_IR_SCANNER_FLAGS], [Extra arguments to g-ir-scanner]) AM_MISSING_PROG([G_IR_SCANNER], [g-ir-scanner]) AM_MISSING_PROG([VAPIGEN], [vapigen]) AM_MISSING_PROG([VALAC], [valac]) GLIB_GSETTINGS # Checks for libraries. AC_ARG_WITH([gobject], [AS_HELP_STRING([--with-gobject], [register types for the glib runtime @<:@default=check@:>@])], [], [: m4_divert_text([DEFAULTS], [with_gobject=check])]) AC_ARG_WITH([gtk], [AS_HELP_STRING([--with-gtk], [build a gtk user interface @<:@default=check@:>@])], [], [: m4_divert_text([DEFAULTS], [with_gtk=check])]) AM_GNU_GETTEXT([external]) AM_GNU_GETTEXT_VERSION([0.19]) PKG_CHECK_MODULES([LIBCHECK], [check], [ CPPFLAGS="$CPPFLAGS $LIBCHECK_CFLAGS" CFLAGS="$CFLAGS $LIBCHECK_CFLAGS" LIBS="$LIBS $LIBCHECK_LIBS" ], [AC_MSG_WARN([pkg-config does not know the "check" module])]) PKG_CHECK_MODULES([GNUTLS], [gnutls], [ CPPFLAGS="$CPPFLAGS $GNUTLS_CFLAGS" CFLAGS="$CFLAGS $GNUTLS_CFLAGS" LIBS="$LIBS $GNUTLS_LIBS" ], [AC_MSG_WARN([pkg-config does not know the "gnutls" module])]) PKG_CHECK_MODULES([JANSSON], [jansson], [ CPPFLAGS="$CPPFLAGS $JANSSON_CFLAGS" CFLAGS="$CFLAGS $JANSSON_CFLAGS" LIBS="$LIBS $JANSSON_LIBS" ], [AC_MSG_WARN([pkg-config does not know the "jansson" module])]) AS_IF([test "x$with_gobject" != xno], [PKG_CHECK_MODULES([GOBJECT], [gobject-2.0],, [AC_MSG_WARN([pkg-config does not know the "gobject-2.0" module])])]) AS_IF([test "x$with_gtk" != xno], [PKG_CHECK_MODULES([GTK], [gtk4],, [AC_MSG_WARN([pkg-config does not know the "gtk4" module])]) PKG_CHECK_MODULES([ADW], [libadwaita-1],, [AC_MSG_WARN([pkg-config does not know the "libadwaita-1" module])])]) # Checks for header files. AC_CHECK_HEADERS([check.h gnutls/gnutls.h gnutls/crypto.h jansson.h],, [AC_MSG_ERROR([Required library headers not found.])]) SAVE_CPPFLAGS="$CPPFLAGS" SAVE_CFLAGS="$CFLAGS" CPPFLAGS="$CPPFLAGS $GOBJECT_CFLAGS" CFLAGS="$CFLAGS $GOBJECT_CFLAGS" AS_IF([test "x$with_gobject" != xno], [AC_CHECK_HEADERS([glib-object.h],, [AS_IF([test "x$with_gobject" = xcheck], [with_gobject=no], [AC_MSG_FAILURE([--with-gobject was given, but glib-object.h is not found.])])])]) CPPFLAGS="$SAVE_CPPFLAGS $GTK_CFLAGS $ADW_CFLAGS" CFLAGS="$SAVE_CFLAGS $GTK_CFLAGS $ADW_CFLAGS" AS_IF([test "x$with_gtk" != xno], [AC_CHECK_HEADERS([gtk/gtk.h],, [AS_IF([test "x$with_gtk" = xcheck], [with_gtk=no], [AC_MSG_FAILURE([--with-gtk was given, but gtk/gtk.h is not found.])])]) AC_CHECK_HEADERS([adwaita.h],, [AS_IF([test "x$with_gtk" = xcheck], [with_gtk=no], [AC_MSG_FAILURE([--with-gtk was given, but adwaita.h is not found.])])])]) CPPFLAGS="$SAVE_CPPFLAGS" CFLAGS="$SAVE_CFLAGS" # Checks for typedefs, structures, and compiler characteristics. AC_C_INLINE AC_C_RESTRICT AC_TYPE_SIZE_T AC_TYPE_UINT32_T gl_VISIBILITY # Checks for library functions. AC_SEARCH_LIBS([srunner_create], [check]) AC_SEARCH_LIBS([gnutls_hmac_init], [gnutls]) AC_SEARCH_LIBS([json_loads], [jansson]) AC_CHECK_FUNCS([srunner_create gnutls_hmac_init json_loads],, [AC_MSG_ERROR([Required library functions not found.])]) SAVE_LIBS="$LIBS" LIBS="$LIBS $GOBJECT_LIBS" AS_IF([test "x$with_gobject" != xno], [AC_CHECK_FUNCS([g_boxed_copy],, [AS_IF([test "x$with_gobject" = xcheck], [with_gobject=no], [AC_MSG_FAILURE([--with-gobject was given, but g_boxed_copy is not found.])])])]) LIBS="$SAVE_LIBS $GTK_LIBS $ADW_LIBS" AS_IF([test "x$with_gtk" != xno], [AC_CHECK_FUNCS([gtk_application_get_type],, [AS_IF([test "x$with_gtk" = xcheck], [with_gtk=no], [AC_MSG_FAILURE([--with-gtk was given, but gtk_application_get_type is not found.])])]) AC_CHECK_FUNCS([adw_application_get_type],, [AS_IF([test "x$with_gtk" = xcheck], [with_gtk=no], [AC_MSG_FAILURE([--with-gtk was given, but adw_application_get_type is not found.])])])]) LIBS="$SAVE_LIBS" i_am_windows=no case "$host_os" in mingw* | cygwin*) i_am_windows=yes;; esac AM_CONDITIONAL([SHLIBS_IN_BINDIR], [test "x$i_am_windows" = "xyes"]) AM_CONDITIONAL([BUILD_GOBJECT], [test "x$with_gobject" != "xno"]) AM_CONDITIONAL([WITH_GTK], [test "x$with_gtk" != "xno"]) case "$VERSION" in *-*) AC_SUBST([DISFLUID_IS_NIGHTLY], [yes]) AC_SUBST([DISFLUID_NIGHTLY_SUFFIX], [.Devel]) AC_SUBST([DISFLUID_NIGHTLY_SUFFIX_SLASH], [/Devel]) AC_DEFINE([DISFLUID_IS_NIGHTLY], [1], [Whether disfluid is built from a snapshot, as opposed to an official release.]) ;; *) AC_SUBST([DISFLUID_IS_NIGHTLY], [no]) AC_SUBST([DISFLUID_NIGHTLY_SUFFIX], []) AC_SUBST([DISFLUID_NIGHTLY_SUFFIX_SLASH], []) AC_DEFINE([DISFLUID_IS_NIGHTLY], [0], [Whether disfluid is built from a snapshot, as opposed to an official release.]) ;; esac AM_CONDITIONAL([DISFLUID_IS_NIGHTLY], [test "x$DISFLUID_IS_NIGHTLY" = "xyes"]) AM_CONDITIONAL([RELOCATABLE_VIA_LD], [test "x$RELOCATABLE_LDFLAGS" != '']) AC_CONFIG_FILES([ Makefile lib/Makefile introspection/Makefile po/Makefile.in tests/libgnu/Makefile settings/eu.planete_kraus.Disfluid.gschema.xml]) AC_OUTPUT