X-Git-Url: http://git.draconx.ca/gitweb/upkg.git/blobdiff_plain/5aaf7aaa7d95bb26178ae2c192b84401f5544244..HEAD:/configure.ac diff --git a/configure.ac b/configure.ac index 030e9fa..1b3a262 100644 --- a/configure.ac +++ b/configure.ac @@ -1,13 +1,14 @@ -dnl Copyright © 2009-2012, 2015 Nick Bowler +dnl Copyright © 2009-2012, 2015, 2019-2020, 2022-2023 Nick Bowler dnl dnl License WTFPL2: Do What The Fuck You Want To Public License, version 2. dnl This is free software: you are free to do what the fuck you want to. dnl There is NO WARRANTY, to the extent permitted by law. -AC_PREREQ(2.62) +DX_PATCH_GNULIB + AC_INIT([upkg],[0.1],[nbowler@draconx.ca]) AC_CONFIG_SRCDIR([src/libupkg.c]) -AC_CONFIG_HEADER([config.h]) +AC_CONFIG_HEADERS([config.h]) AC_CONFIG_MACRO_DIR([m4]) AM_INIT_AUTOMAKE([-Wall -Wno-portability foreign subdir-objects]) @@ -17,15 +18,21 @@ DX_AUTOMAKE_COMPAT AC_PROG_CC_C99 gl_EARLY +AC_C_FLEXIBLE_ARRAY_MEMBER + LT_CONFIG_LTDL_DIR([libltdl]) LT_INIT([dlopen]) LTDL_INIT([nonrecursive]) gl_INIT +AC_CACHE_SAVE + m4_include([lib/gnulib.mk]) -CHECK_GLIB_2([], [gobject]) +DX_LIB_GLIB2([], [gobject]) +AC_DEFINE([GLIB_DISABLE_DEPRECATION_WARNINGS], [1], + [Define to shut up glib deprecation silliness.]) AC_ARG_WITH([modlib], [AS_HELP_STRING([--with-modlib], @@ -34,36 +41,47 @@ AC_ARG_WITH([modlib], [with_modlib=$withval], [with_modlib=auto]) -case $with_modlib in -no|none) - use_modlib=none -;; -modplug) - DX_CHECK_LIBMODPLUG([use_modlib=modplug], []) -;; -auto) - DX_CHECK_LIBMODPLUG([have_libmodplug=yes], [have_libmodplug=no]) - - if test x$have_libmodplug = xyes; then - use_modlib=modplug - else - use_modlib=none - fi -;; -*) - AC_MSG_ERROR([Invalid argument to --with-modlib: $with_modlib]) -;; -esac +use_modlib=none +AS_CASE([$with_modlib], + [no|none], [:], + [modplug], [DX_LIB_LIBMODPLUG([use_modlib=modplug])], + [auto], [DX_LIB_LIBMODPLUG([use_modlib=modplug], [:])], + [AC_MSG_ERROR([Invalid argument to --with-modlib: $with_modlib])]) + AC_MSG_CHECKING([which module library to use]) AC_MSG_RESULT([$use_modlib]) AM_CONDITIONAL([USE_LIBMODPLUG], [test x$use_modlib = xmodplug]) AM_CONDITIONAL([USE_DUMMYMOD], [test x$use_modlib = xnone]) -GOB2_CHECK([2.0.0]) +DX_PROG_GOB2([2.0.0], [have_gob2=yes], [have_gob2=no]) +AM_CONDITIONAL([HAVE_GOB2], [test x"$have_gob2" = x"yes"]) -AC_CONFIG_FILES([ - Makefile - libuobject.pc +AS_IF([test x"$have_gob2" != x"yes"], [dx_cv_gob2_dynamic_types=no]) +AC_CACHE_CHECK([Whether $GOB2 supports dynamic types], + [dx_cv_gob2_dynamic_types], [cat >conftest.gob <<'EOF' +class :Conftest from G:Object (dynamic) +{ + public void test(void) + { + } +} +EOF +dx_cv_gob2_dynamic_types=no +AS_IF([$GOB2 conftest.gob >/dev/null 2>&1], +[mv conftest.c conftest.inc +save_CFLAGS=$CFLAGS save_LIBS=$LIBS +CFLAGS="$GLIB_CFLAGS $CFLAGS" +LIBS="$LIBS $GLIB_LIBS" +AC_LINK_IFELSE([AC_LANG_PROGRAM([[#]include "conftest.inc"], +[conftest_register_type(0);])], [dx_cv_gob2_dynamic_types=yes]) +CFLAGS=$save_CFLAGS LIBS=$save_LIBS]) ]) +AM_CONDITIONAL([HAVE_GOB2_DYN], [test x"$dx_cv_gob2_dynamic_types" = x"yes"]) + +AC_CONFIG_TESTDIR([.], [test:.]) +DX_PROG_AUTOTEST +AM_CONDITIONAL([HAVE_AUTOTEST], [test x"$dx_cv_autotest_works" = x"yes"]) + +AC_CONFIG_FILES([Makefile libuobject.pc]) AC_OUTPUT