# <mclasen> on the unstable (ie master), interface age = 0
m4_define([glib_major_version], [2])
-m4_define([glib_minor_version], [32])
-m4_define([glib_micro_version], [0])
+m4_define([glib_minor_version], [33])
+m4_define([glib_micro_version], [12])
m4_define([glib_interface_age], [0])
m4_define([glib_binary_age],
[m4_eval(100 * glib_minor_version + glib_micro_version)])
AC_MSG_RESULT([$glib_have_carbon])
+glib_have_cocoa=no
+AC_MSG_CHECKING([for Mac OS X Cocoa support])
+AC_TRY_CPP([
+#include <Cocoa/Cocoa.h>
+#ifdef GNUSTEP_BASE_VERSION
+#error "Detected GNUstep, not Cocoa"
+#endif
+], glib_have_cocoa=yes)
+
+AC_MSG_RESULT([$glib_have_cocoa])
+
AM_CONDITIONAL(OS_WIN32, [test "$glib_native_win32" = "yes"])
AM_CONDITIONAL(OS_WIN32_X64, [test "$LIB_EXE_MACHINE_FLAG" = "X64"])
AM_CONDITIONAL(OS_UNIX, [test "$glib_native_win32" != "yes"])
AM_CONDITIONAL(OS_LINUX, [test "$glib_os_linux" = "yes"])
AM_CONDITIONAL(OS_CARBON, [test "$glib_have_carbon" = "yes"])
+AM_CONDITIONAL(OS_COCOA, [test "$glib_have_cocoa" = "yes"])
-if test "$glib_native_win32" = "yes"; then
+AS_IF([test "$glib_native_win32" = "yes"], [
AC_CHECK_TOOL(WINDRES, windres, no)
if test "$WINDRES" = no; then
AC_MSG_ERROR([*** Could not find an implementation of windres in your PATH.])
fi
AC_CHECK_TOOL(RANLIB, ranlib, :)
AC_CHECK_PROG(ms_librarian, [lib.exe], [yes], [no])
-fi
+])
AM_CONDITIONAL(MS_LIB_AVAILABLE, [test x$ms_librarian = xyes])
if test "$glib_native_win32" != yes; then
fi
AC_SUBST(LIBTOOL_EXPORT_OPTIONS)
-if test "x$glib_have_carbon" = "xyes"; then
+AS_IF([test "x$glib_have_carbon" = "xyes"], [
AC_DEFINE(HAVE_CARBON, 1, [define to 1 if Carbon is available])
- LDFLAGS="$LDFLAGS -framework Carbon"
+ LDFLAGS="$LDFLAGS -Wl,-framework,Carbon"
+])
+
+if test "x$glib_have_cocoa" = "xyes"; then
+ AC_DEFINE(HAVE_COCOA, 1, [define to 1 if Cocoa is available])
+ LDFLAGS="$LDFLAGS -Wl,-framework,Foundation"
fi
gl_GLIBC21
-if test "x$GLIBC21" = "xyes"; then
+AS_IF([test "x$GLIBC21" = "xyes"], [
AC_DEFINE([_GNU_SOURCE], 1, [Make all glibc extensions visible])
-fi
+])
dnl declare --enable-* args and collect ac_help strings
AC_ARG_ENABLE(debug,
- AC_HELP_STRING([--enable-debug=@<:@no/minimum/yes@:>@],
+ AS_HELP_STRING([--enable-debug=@<:@no/minimum/yes@:>@],
[turn on debugging @<:@default=glib_debug_default@:>@]),,
enable_debug=glib_debug_default)
AC_ARG_ENABLE(gc_friendly,
- [AC_HELP_STRING([--enable-gc-friendly],
+ [AS_HELP_STRING([--enable-gc-friendly],
[turn on garbage collector friendliness [default=no]])],,
[enable_gc_friendly=no])
AC_ARG_ENABLE(mem_pools,
- [AC_HELP_STRING([--disable-mem-pools],
+ [AS_HELP_STRING([--disable-mem-pools],
[disable all glib memory pools])],,
[disable_mem_pools=no])
AC_ARG_ENABLE(rebuilds,
- [AC_HELP_STRING([--disable-rebuilds],
+ [AS_HELP_STRING([--disable-rebuilds],
[disable all source autogeneration rules])],,
[enable_rebuilds=yes])
+AC_ARG_ENABLE(modular_tests,
+ AS_HELP_STRING([--disable-modular-tests],
+ [Disable build of test programs (default: no)]),,
+ [enable_modular_tests=yes])
+AM_CONDITIONAL(BUILD_MODULAR_TESTS, test x$enable_modular_tests = xyes)
AC_MSG_CHECKING([whether to enable garbage collector friendliness])
-if test "x$enable_gc_friendly" = "xyes"; then
+AS_IF([test "x$enable_gc_friendly" = "xyes"], [
AC_DEFINE(ENABLE_GC_FRIENDLY_DEFAULT, 1, [Whether to enable GC friendliness by default])
AC_MSG_RESULT([yes])
-else
- AC_MSG_RESULT([no])
-fi
+], [ AC_MSG_RESULT([no]) ])
AC_MSG_CHECKING([whether to disable memory pools])
-if test "x$disable_mem_pools" = "xno"; then
+AS_IF([test "x$disable_mem_pools" = "xno"], [
AC_MSG_RESULT([no])
-else
+], [
AC_DEFINE(DISABLE_MEM_POOLS, [1], [Whether to disable memory pools])
AC_MSG_RESULT([yes])
-fi
+])
dnl location to install runtime libraries, e.g. ../../lib to install
dnl to /lib if libdir is /usr/lib
AC_ARG_WITH(runtime-libdir,
- [AC_HELP_STRING([--with-runtime-libdir=RELPATH],
+ [AS_HELP_STRING([--with-runtime-libdir=RELPATH],
[install runtime libraries relative to libdir])],
[],
[with_runtime_libdir=""])
dnl On Windows we use a native implementation
-if test x"$glib_native_win32" = xyes; then
+AS_IF([ test x"$glib_native_win32" = xyes], [
with_libiconv=native
-else
+], [
AC_ARG_WITH(libiconv,
- [AC_HELP_STRING([--with-libiconv=@<:@no/gnu/native@:>@],
+ [AS_HELP_STRING([--with-libiconv=@<:@no/gnu/native@:>@],
[use the libiconv library])],,
[with_libiconv=maybe])
if test "x$found_iconv" = "xno" ; then
AC_MSG_ERROR([*** No iconv() implementation found in C library or libiconv])
fi
-fi
+])
AC_ARG_ENABLE(iconv-cache,
- [AC_HELP_STRING([--enable-iconv-cache=@<:@yes/no/auto@:>@],
+ [AS_HELP_STRING([--enable-iconv-cache=@<:@yes/no/auto@:>@],
[cache iconv descriptors [default=auto]])],,
[enable_iconv_cache=auto])
dnl zlib support
dnl
PKG_CHECK_MODULES([ZLIB], [zlib], [found_zlib=yes], [found_zlib=no])
-if test "x$found_zlib" = "xno" ; then
+AS_IF([test "x$found_zlib" = "xno"], [
AC_CHECK_LIB(z, inflate, [AC_CHECK_HEADER(zlib.h, found_zlib=yes)])
if test "x$found_zlib" = "xno" ; then
AC_MSG_ERROR([*** Working zlib library and headers not found ***])
fi
ZLIB_LIBS='-lz'
AC_SUBST(ZLIB_LIBS)
-fi
+])
PKG_CHECK_MODULES(LIBFFI, [libffi >= 3.0.0])
AC_SUBST(LIBFFI_CFLAGS)
dnl Now we are done with gettext checks, figure out ICONV_LIBS
dnl
-if test x"$glib_native_win32" != xyes; then
+AS_IF([test x"$glib_native_win32" != xyes], [
if test x$with_libiconv != xno ; then
case " $INTLLIBS " in
*[[\ \ ]]-liconv[[\ \ ]]*) ;;
*) ICONV_LIBS="-liconv" ;;
esac
fi
-fi
+])
AC_SUBST(ICONV_LIBS)
case $with_libiconv in
esac
fi
-if test "$glib_native_win32" = "yes"; then
+AS_IF([test "$glib_native_win32" = "yes"], [
if test x$enable_static = xyes -a x$enable_shared = xyes; then
AC_MSG_ERROR([Can not build both shared and static at the same time on Windows.])
fi
#define GOBJECT_STATIC_COMPILATION 1"
AC_SUBST(GLIB_WIN32_STATIC_COMPILATION_DEFINE)
fi
-fi
+])
AM_CONDITIONAL(OS_WIN32_AND_DLL_COMPILATION, [test x$glib_native_win32 = xyes -a x$glib_win32_static_compilation != xyes])
dnl
dnl DU4 native cc currently needs -std1 for ANSI mode (instead of K&R)
dnl
-if test $cross_compiling != yes ; then
+AS_IF([test $cross_compiling != yes], [
AC_MSG_CHECKING([for extra flags to get ANSI library prototypes])
glib_save_LIBS=$LIBS
LIBS="$LIBS -lm"
)
)
LIBS=$glib_save_LIBS
-fi
+])
dnl NeXTStep cc seems to need this
AC_MSG_CHECKING([for extra flags for POSIX compliance])
])
fi
-if test x$glib_native_win32 != xyes && test x$ac_cv_sizeof_long_long = x8; then
+AS_IF([test x$glib_native_win32 != xyes && test x$ac_cv_sizeof_long_long = x8], [
# long long is a 64 bit integer.
AC_MSG_CHECKING(for format to printf and scanf a guint64)
AC_CACHE_VAL(glib_cv_long_long_format,[
break],
[],[:])
done])
- if test -n "$glib_cv_long_long_format"; then
+ AS_IF([ test -n "$glib_cv_long_long_format"], [
AC_MSG_RESULT(%${glib_cv_long_long_format}u)
AC_DEFINE(HAVE_LONG_LONG_FORMAT,1,[define if system printf can print long long])
if test x"$glib_cv_long_long_format" = xI64; then
AC_DEFINE(HAVE_INT64_AND_I64,1,[define to support printing 64-bit integers with format I64])
- fi
- else
- AC_MSG_RESULT(none)
- fi
-elif test x$ac_cv_sizeof___int64 = x8; then
+ fi
+ ], [AC_MSG_RESULT(none)])
+],[ test x$ac_cv_sizeof___int64 = x8], [
# __int64 is a 64 bit integer.
AC_MSG_CHECKING(for format to printf and scanf a guint64)
# We know this is MSVCRT.DLL, and what the formats are
AC_MSG_RESULT(%${glib_cv_long_long_format}u)
AC_DEFINE(HAVE_LONG_LONG_FORMAT,1,[define if system printf can print long long])
AC_DEFINE(HAVE_INT64_AND_I64,1,[define to support printing 64-bit integers with format I64])
-fi
+])
AC_C_CONST
SANE_MALLOC_PROTOS=no
AC_MSG_CHECKING([if malloc() and friends prototypes are gmem.h compatible])
glib_save_CFLAGS=$CFLAGS
-if test "x$GCC" = "xyes"; then
+AS_IF([test "x$GCC" = "xyes"], [
CFLAGS="$CFLAGS -Werror"
AC_TRY_COMPILE([#include <stdlib.h>], [
void* (*my_calloc_p) (size_t, size_t) = calloc;
AC_DEFINE(SANE_MALLOC_PROTOS, 1,
[Define if you have correct malloc prototypes])
SANE_MALLOC_PROTOS=yes)
-fi
+])
AC_MSG_RESULT($SANE_MALLOC_PROTOS)
CFLAGS=$glib_save_CFLAGS
AC_MSG_RESULT($g_have_iso_c_varargs)
AC_MSG_CHECKING(for ISO C99 varargs macros in C++)
-if test "$CXX" = ""; then
+AS_IF([test "$CXX" = ""], [
dnl No C++ compiler
g_have_iso_cxx_varargs=no
else
call_a(2,3);
],g_have_iso_cxx_varargs=yes,g_have_iso_cxx_varargs=no)
AC_LANG_C
-fi
+])
AC_MSG_RESULT($g_have_iso_cxx_varargs)
AC_MSG_CHECKING(for GNUC varargs macros)
AC_CHECK_HEADERS([dirent.h float.h limits.h pwd.h grp.h sys/param.h sys/poll.h sys/resource.h])
AC_CHECK_HEADERS([sys/time.h sys/times.h sys/wait.h unistd.h values.h])
AC_CHECK_HEADERS([sys/select.h sys/types.h stdint.h inttypes.h sched.h malloc.h])
-AC_CHECK_HEADERS([sys/vfs.h sys/vmount.h sys/statfs.h sys/statvfs.h])
+AC_CHECK_HEADERS([sys/vfs.h sys/vmount.h sys/statfs.h sys/statvfs.h sys/filio.h])
AC_CHECK_HEADERS([mntent.h sys/mnttab.h sys/vfstab.h sys/mntctl.h fstab.h])
AC_CHECK_HEADERS([sys/uio.h sys/mkdev.h])
AC_CHECK_HEADERS([linux/magic.h])
dnl warnings when used in the location as size_t. (This matters
dnl on AIX with xlc)
dnl
-if test $ac_cv_sizeof_size_t = $ac_cv_sizeof_int &&
- test $ac_cv_sizeof_size_t = $ac_cv_sizeof_long ; then
+AS_IF([test $ac_cv_sizeof_size_t = $ac_cv_sizeof_int &&
+ test $ac_cv_sizeof_size_t = $ac_cv_sizeof_long], [
GLIB_CHECK_COMPILE_WARNINGS([AC_LANG_SOURCE([[
#if defined(_AIX) && !defined(__GNUC__)
#pragma options langlvl=stdc89
return (int)*size_long;
}
]])],glib_size_type=long)])
-fi
+])
AC_MSG_RESULT(unsigned $glib_size_type)
AC_CHECK_FUNCS(getprotobyname_r endservent if_nametoindex)
AC_CHECK_HEADERS([netdb.h wspiapi.h arpa/nameser_compat.h])
-if test $glib_native_win32 = no; then
+AS_IF([test $glib_native_win32 = no], [
# We can't just use AC_CHECK_FUNC/AC_CHECK_LIB here. Bug 586150
NETWORK_LIBS=""
AC_MSG_CHECKING([for res_query])
AC_CHECK_FUNC(socket, :, AC_CHECK_LIB(socket, socket,
[NETWORK_LIBS="-lsocket $NETWORK_LIBS"],
[AC_MSG_ERROR(Could not find socket())]))
-fi
+])
AC_SUBST(NETWORK_LIBS)
AC_CHECK_HEADER([linux/netlink.h],
dnl
dnl if statfs() takes 2 arguments (Posix) or 4 (Solaris)
dnl
-if test "$ac_cv_func_statfs" = yes ; then
+AS_IF([test "$ac_cv_func_statfs" = yes], [
AC_MSG_CHECKING([number of arguments to statfs()])
AC_TRY_COMPILE([#include <unistd.h>
#ifdef HAVE_SYS_PARAM_H
AC_DEFINE(STATFS_ARGS, 4, [Number of arguments to statfs()])],[
AC_MSG_RESULT(unknown)
AC_MSG_ERROR([unable to determine number of arguments to statfs()])])])
-fi
+])
#
# Check whether to use an included printf
#
AC_ARG_ENABLE(included-printf,
- [AC_HELP_STRING([--enable-included-printf],
+ [AS_HELP_STRING([--enable-included-printf],
[use included printf [default=auto]])],
enable_included_printf="$enableval")
enable_included_printf=$need_included_printf
AM_CONDITIONAL(HAVE_GOOD_PRINTF, test "$enable_included_printf" != "yes")
-if test "$enable_included_printf" != "yes" ; then
+AS_IF([test "$enable_included_printf" != "yes"], [
AC_DEFINE(HAVE_GOOD_PRINTF,1,[define to use system printf])
-else
+], [
if test -z "$glib_cv_long_long_format" ; then
glib_cv_long_long_format="ll"
fi
AC_DEFINE(HAVE_VASPRINTF,1)
-fi
+])
# Checks needed for gnulib vasnprintf
bh_C_SIGNED
# Check if bcopy can be used for overlapping copies, if memmove isn't found.
# The check is borrowed from the PERL Configure script.
-if test "$ac_cv_func_memmove" != "yes"; then
+AS_IF([test "$ac_cv_func_memmove" != "yes"],
AC_CACHE_CHECK(whether bcopy can handle overlapping copies,
glib_cv_working_bcopy,[AC_TRY_RUN([
int main() {
if test "$glib_cv_working_bcopy" = "yes"; then
AC_DEFINE(HAVE_WORKING_BCOPY,1,[Have a working bcopy])
fi
-fi
+])
# Check if <sys/select.h> needs to be included for fd_set
AC_MSG_CHECKING([for fd_set])
AC_TRY_COMPILE([#include <sys/types.h>],
[fd_set readMask, writeMask;], gtk_ok=yes, gtk_ok=no)
-if test "$gtk_ok" = "yes"; then
+AS_IF([test "$gtk_ok" = "yes"], [
AC_MSG_RESULT([yes, found in sys/types.h])
-else
+], [
AC_EGREP_HEADER(fd_set, sys/select.h, gtk_ok=yes)
if test "$gtk_ok" = "yes"; then
# *** FIXME: give it a different name
AC_DEFINE(NO_FD_SET,1,[didn't find fd_set])
AC_MSG_RESULT(no)
fi
-fi
+])
dnl *** check for sane realloc() ***
AC_CACHE_CHECK([whether realloc (NULL,) will work],glib_cv_sane_realloc,[
[glib_cv_sane_realloc=no],
[glib_cv_sane_realloc=yes])
])
-if test x$glib_cv_sane_realloc = xyes; then
+AS_IF([test x$glib_cv_sane_realloc = xyes], [
AC_DEFINE(REALLOC_0_WORKS,1,[whether realloc (NULL,) works])
-fi
+])
dnl Check for nl_langinfo and CODESET
AC_CACHE_CHECK([for nl_langinfo (CODESET)],glib_cv_langinfo_codeset,[
:
fi
])
-if test "$glib_cv_compliant_posix_memalign" = "1"; then
+AS_IF([test "$glib_cv_compliant_posix_memalign" = "1"], [
AC_MSG_RESULT(yes)
AC_DEFINE(POSIX_MEMALIGN_WITH_COMPLIANT_ALLOCS, 1, [define if posix_memalign() can allocate any size])
-else
+], [
AC_MSG_RESULT(no)
-fi
+])
dnl ****************************************
[glib_cv_va_val_copy=yes])
])
-if test "x$glib_cv_va_val_copy" = "xno"; then
+AS_IF([ test "x$glib_cv_va_val_copy" = "xno"], [
AC_DEFINE(G_VA_COPY_AS_ARRAY,1, ['va_lists' cannot be copies as values])
-fi
+])
dnl ***********************
dnl *** g_module checks ***
esac
fi
dnl *** dlopen() and dlsym() in system libraries
-if test -z "$G_MODULE_IMPL"; then
+AS_IF([ test -z "$G_MODULE_IMPL"], [
AC_CHECK_FUNC(dlopen,
[AC_CHECK_FUNC(dlsym,
[G_MODULE_IMPL=G_MODULE_IMPL_DL],[])],
[])
-fi
+])
dnl *** load_image (BeOS)
-if test -z "$G_MODULE_IMPL" && test "x$glib_native_beos" = "xyes"; then
+AS_IF([test -z "$G_MODULE_IMPL" && test "x$glib_native_beos" = "xyes"], [
AC_CHECK_LIB(root, load_image,
[G_MODULE_LIBS="-lbe -lroot -lglib-2.0 "
G_MODULE_LIBS_EXTRA="-L\$(top_builddir_full)/.libs"
G_MODULE_PLUGIN_LIBS="-L\$(top_builddir_full)/gmodule/.libs -lgmodule"
G_MODULE_IMPL=G_MODULE_IMPL_BEOS],
[])
-fi
+])
dnl *** NSLinkModule (dyld) in system libraries (Darwin)
-if test -z "$G_MODULE_IMPL"; then
+AS_IF([ test -z "$G_MODULE_IMPL" ], [
AC_CHECK_FUNC(NSLinkModule,
[G_MODULE_IMPL=G_MODULE_IMPL_DYLD
G_MODULE_NEED_USCORE=1],
[])
-fi
+])
dnl *** dlopen() and dlsym() in libdl
-if test -z "$G_MODULE_IMPL"; then
+AS_IF([ test -z "$G_MODULE_IMPL"], [
AC_CHECK_LIB(dl, dlopen,
[AC_CHECK_LIB(dl, dlsym,
[G_MODULE_LIBS=-ldl
G_MODULE_IMPL=G_MODULE_IMPL_DL],[])],
[])
-fi
+])
dnl *** shl_load() in libdld (HP-UX)
-if test -z "$G_MODULE_IMPL"; then
+AS_IF([ test -z "$G_MODULE_IMPL"], [
AC_CHECK_LIB(dld, shl_load,
[G_MODULE_LIBS=-ldld
G_MODULE_IMPL=G_MODULE_IMPL_DLD],
[])
-fi
+])
dnl *** additional checks for G_MODULE_IMPL_DL
-if test "$G_MODULE_IMPL" = "G_MODULE_IMPL_DL"; then
+AS_IF([ test "$G_MODULE_IMPL" = "G_MODULE_IMPL_DL" ], [
LIBS_orig="$LIBS"
LDFLAGS_orig="$LDFLAGS"
LIBS="$G_MODULE_LIBS $LIBS"
[G_MODULE_HAVE_DLERROR=1],
[G_MODULE_HAVE_DLERROR=0])
LIBS="$LIBS_orig"
-fi
+])
dnl *** done, have we got an implementation?
if test -z "$G_MODULE_IMPL"; then
G_MODULE_IMPL=0
dnl *********************************
AC_ARG_WITH(gio-module-dir,
- [AC_HELP_STRING([--with-gio-module-dir=DIR],
+ [AS_HELP_STRING([--with-gio-module-dir=DIR],
[load gio modules from this directory [LIBDIR/gio/modules]])],
[],
[with_gio_module_dir='${libdir}/gio/modules'])
dnl *** Check for libselinux (GIO) ***
dnl **********************************
AC_ARG_ENABLE(selinux,
- AC_HELP_STRING([--disable-selinux],
+ AS_HELP_STRING([--disable-selinux],
[build without selinux support]))
msg_selinux=no
SELINUX_LIBS=
-if test "x$enable_selinux" != "xno"; then
+AS_IF([ test "x$enable_selinux" != "xno"], [
AC_CHECK_LIB(selinux, is_selinux_enabled,
[AC_CHECK_HEADERS(selinux/selinux.h,
msg_selinux=yes])
])
])
-fi
+])
AC_SUBST(SELINUX_LIBS)
dnl *****************************
should_disable_fam=no
AC_ARG_ENABLE(fam,
- AC_HELP_STRING([--disable-fam],
+ AS_HELP_STRING([--disable-fam],
[don't use fam for file system monitoring]),
[
if test "x$enable_fam" = "xno"; then
dnl *** Check for xattr (GIO) ***
dnl *****************************
AC_ARG_ENABLE(xattr,
- AC_HELP_STRING([--disable-xattr], [build without xattr support]))
+ AS_HELP_STRING([--disable-xattr], [build without xattr support]))
msg_xattr=no
XATTR_LIBS=
-if test "x$enable_xattr" != "xno"; then
+AS_IF([ test "x$enable_xattr" != "xno"], [
dnl either glibc or libattr can provide xattr support
msg_xattr=yes])
])
- if test "x$msg_xattr" != "xyes"; then
+ AS_IF([ test "x$msg_xattr" != "xyes"], [
dnl failure. try libattr
AC_CHECK_LIB(attr, getxattr,
[AC_CHECK_HEADERS(attr/xattr.h,
XATTR_LIBS="-lattr"
msg_xattr=yes])
])
- fi
+ ])
- if test "x$msg_xattr" = "xyes"; then
+ AS_IF([ test "x$msg_xattr" = "xyes"], [
AC_MSG_CHECKING([for XATTR_NOFOLLOW])
AC_TRY_COMPILE([
#include <stdio.h>
],
[AC_MSG_RESULT([no])]
)
- fi
-
-fi
+ ])
+])
AC_SUBST(XATTR_LIBS)
dnl ************************
dnl *** check for libelf ***
dnl ************************
+AC_ARG_ENABLE(libelf,
+ AS_HELP_STRING([--disable-libelf], [build without libelf support]))
+AS_IF([ test "x$enable_libelf" != "xno"],[
+PKG_CHECK_MODULES([LIBELF], [libelf >= 0.8.12], [have_libelf=yes], [have_libelf=maybe])
+AS_IF([ test $have_libelf = maybe ], [
+ glib_save_LIBS=$LIBS
+ AC_CHECK_LIB([elf], [elf_begin], [:], [have_libelf=no])
+ AC_CHECK_LIB([elf], [elf_getshdrstrndx], [:], [have_libelf=no])
+ AC_CHECK_LIB([elf], [elf_getshdrnum], [:], [have_libelf=no])
+ AC_CHECK_HEADER([libelf.h], [:], [have_libelf=no])
+ LIBS=$glib_save_LIBS
+
+ if test $have_libelf != no; then
+ LIBELF_LIBS=-lelf
+ have_libelf=yes
+ fi
+])
+])
-AC_CHECK_LIB([elf], [elf_begin], have_libelf=yes, have_libelf=no)
-if test $have_libelf = yes; then
+if test x$have_libelf = xyes; then
AC_DEFINE(HAVE_LIBELF, 1, [Define if libelf is available])
- ELF_LIBS=-lelf
fi
-AC_SUBST(ELF_LIBS)
dnl ****************************************
dnl *** platform dependent source checks ***
dnl ***********************
AC_ARG_WITH(threads,
- [AC_HELP_STRING([--with-threads=@<:@posix/win32@:>@],
+ [AS_HELP_STRING([--with-threads=@<:@posix/win32@:>@],
[specify a thread implementation to use])],
[],
[with_threads=yes])
AC_MSG_CHECKING(for thread implementation)
have_threads=no
-if test "x$with_threads" = xyes || test "x$with_threads" = xposix; then
+AS_IF([ test "x$with_threads" = xyes || test "x$with_threads" = xposix], [
# -D_POSIX4_DRAFT_SOURCE -D_POSIX4A_DRAFT10_SOURCE is for DG/UX
# -U_OSF_SOURCE is for Digital UNIX 4.0d
GTHREAD_COMPILE_IMPL_DEFINES="-D_POSIX4_DRAFT_SOURCE -D_POSIX4A_DRAFT10_SOURCE -U_OSF_SOURCE"
glib_save_CPPFLAGS="$CPPFLAGS"
CPPFLAGS="$CPPFLAGS $GTHREAD_COMPILE_IMPL_DEFINES"
- if test "x$have_threads" = xno; then
+ AS_IF([ test "x$have_threads" = xno], [
AC_TRY_COMPILE([#include <pthread.h>],
[pthread_mutex_t m = PTHREAD_MUTEX_INITIALIZER;],
have_threads=posix)
- fi
+ ])
# Tru64Unix requires -pthread to find pthread.h. See #103020
CPPFLAGS="$CPPFLAGS -pthread"
if test "x$have_threads" = xno; then
have_threads=posix)
fi
CPPFLAGS="$glib_save_CPPFLAGS"
-fi
+])
if test "x$with_threads" = xyes || test "x$with_threads" = xwin32; then
case $host in
*-*-mingw*)
return (check_me != 42 || ret != &check_me);
}])
-if test x"$have_threads" = xposix; then
+AS_IF([ test x"$have_threads" = xposix], [
# First we test for posix, whether -pthread or -pthreads do the trick as
# both CPPFLAG and LIBS.
# One of them does for most gcc versions and some other platforms/compilers
done
;;
esac
-fi
+])
-if test x"$G_THREAD_CFLAGS" = x; then
+AS_IF([ test x"$G_THREAD_CFLAGS" = x], [
# The canonical -pthread[s] does not work. Try something different.
G_THREAD_CFLAGS="-D_REENTRANT" # good default guess otherwise
;;
esac
-
-fi
+])
# if we are not finding the localtime_r function, then we probably are
# not using the proper multithread flag
dnl determination of G_THREAD_LIBS
dnl ******************************
-case $have_threads in
- posix)
+AS_IF([test x$have_threads = xposix], [
glib_save_CPPFLAGS="$CPPFLAGS"
CPPFLAGS="$CPPFLAGS $GTHREAD_COMPILE_IMPL_DEFINES"
- if test x"$G_THREAD_LIBS" = x; then
+ AS_IF([ test x"$G_THREAD_LIBS" = x ], [
case $host in
*-aix*)
# We are not using gcc (would have set G_THREAD_LIBS) and thus
LIBS="$glib_save_LIBS"
;;
esac
- fi
+ ])
g_threads_impl="POSIX"
AC_SUBST(GTHREAD_COMPILE_IMPL_DEFINES)
CPPFLAGS="$glib_save_CPPFLAGS"
- ;;
- win32)
+], [test x$have_threads = xwin32], [
g_threads_impl="WIN32"
- ;;
- *)
+], [
g_threads_impl="NONE"
G_THREAD_LIBS=error
- ;;
-esac
+])
if test "x$G_THREAD_LIBS" = xerror; then
AC_MSG_ERROR($LIBS_NOT_FOUND_1$have_threads$LIBS_NOT_FOUND_2)
# to always be linked with the thread libs on some platforms.
# LIBS="$LIBS $G_THREAD_LIBS"
AC_CHECK_FUNCS(localtime_r gmtime_r)
-if test "$ac_cv_header_pwd_h" = "yes"; then
+AS_IF([ test "$ac_cv_header_pwd_h" = "yes"], [
AC_CACHE_CHECK([for posix getpwuid_r],
ac_cv_func_posix_getpwuid_r,
[AC_TRY_RUN([
[Have non-POSIX function getpwuid_r])
fi
fi
-fi
-if test "$ac_cv_header_grp_h" = "yes"; then
+])
+AS_IF([ test "$ac_cv_header_grp_h" = "yes"], [
AC_CACHE_CHECK([for posix getgrgid_r],
ac_cv_func_posix_getgrgid_r,
[AC_TRY_RUN([
[ac_cv_func_posix_getgrgid_r=yes],
[ac_cv_func_posix_getgrgid_r=no])])
GLIB_ASSERT_SET(ac_cv_func_posix_getgrgid_r)
- if test "$ac_cv_func_posix_getgrgid_r" = yes; then
+ AS_IF([ test "$ac_cv_func_posix_getgrgid_r" = yes ], [
AC_DEFINE(HAVE_POSIX_GETGRGID_R,1,
[Have POSIX function getgrgid_r])
- else
+ ], [
AC_CACHE_CHECK([for nonposix getgrgid_r],
ac_cv_func_nonposix_getgrgid_r,
[AC_TRY_LINK([#include <grp.h>],
AC_DEFINE(HAVE_NONPOSIX_GETGRGID_R,1,
[Have non-POSIX function getgrgid_r])
fi
- fi
-fi
+ ])
+])
LIBS="$G_THREAD_LIBS $LIBS"
-if test x"$have_threads" = xposix; then
+AS_IF([ test x"$have_threads" = xposix], [
glib_save_CPPFLAGS="$CPPFLAGS"
CPPFLAGS="$CPPFLAGS $GTHREAD_COMPILE_IMPL_DEFINES"
# This is not AC_CHECK_FUNC to also work with function
[Have function pthread_condattr_setclock])],
[AC_MSG_RESULT(no)])
CPPFLAGS="$glib_save_CPPFLAGS"
-fi
+])
LIBS="$glib_save_LIBS"
#include <sys/poll.h>
"]
-if test $ac_cv_header_sys_types_h = yes &&
- test $ac_cv_header_sys_poll_h = yes ; then
+AS_IF([ test $ac_cv_header_sys_types_h = yes &&
+ test $ac_cv_header_sys_poll_h = yes ], [
glib_failed=false
GLIB_CHECK_VALUE(POLLIN, $glib_poll_includes, glib_failed=true)
GLIB_CHECK_VALUE(POLLOUT, $glib_poll_includes, glib_failed=true)
if $glib_failed ; then
AC_MSG_ERROR([Could not determine values for POLL* constants])
fi
-else
+], [
glib_cv_value_POLLIN=1
glib_cv_value_POLLOUT=4
glib_cv_value_POLLPRI=2
glib_cv_value_POLLERR=8
glib_cv_value_POLLHUP=16
glib_cv_value_POLLNVAL=32
-fi
+])
AC_MSG_CHECKING([for broken poll])
AC_RUN_IFELSE([AC_LANG_SOURCE([[
dnl *** GRegex checks ***
dnl *********************
-PCRE_REQUIRED_VERSION=8.11
+PCRE_REQUIRED_VERSION=8.13
# Check if we should use the internal or the system-supplied pcre
AC_ARG_WITH(pcre,
- [AC_HELP_STRING([--with-pcre=@<:@internal/system@:>@],
+ [AS_HELP_STRING([--with-pcre=@<:@internal/system@:>@],
[whether to use system PCRE [default=internal]])])
AM_CONDITIONAL(USE_SYSTEM_PCRE, [test "x$with_pcre" = xsystem])
-if test "x$with_pcre" = xsystem; then
+AS_IF([ test "x$with_pcre" = xsystem], [
PKG_CHECK_MODULES(PCRE,
libpcre >= $PCRE_REQUIRED_VERSION)
AC_CACHE_CHECK([for Unicode support in PCRE],glib_cv_pcre_has_unicode,[
AC_DEFINE(USE_SYSTEM_PCRE, [], [using the system-supplied PCRE library])
PCRE_REQUIRES=libpcre
AC_SUBST(PCRE_REQUIRES)
-else
+], [
# If using gcc 4 pass -Wno-pointer-sign when compiling the internal PCRE
- if test x"$GCC" = xyes; then
+ AS_IF([ test x"$GCC" = xyes], [
AC_MSG_CHECKING([whether compiler understands -Wno-pointer-sign])
save_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -Wno-pointer-sign"
AC_TRY_COMPILE([],[],[PCRE_WARN_CFLAGS="$PCRE_WARN_CFLAGS -Wno-pointer-sign"
AC_MSG_RESULT(yes)],[AC_MSG_RESULT(no)])
CFLAGS="$save_CFLAGS"
- fi
-fi
+ ])
+])
AC_SUBST(PCRE_WARN_CFLAGS)
dnl **********************
AM_CONDITIONAL(CROSS_COMPILING, test $cross_compiling = yes)
-if test $cross_compiling = yes; then
+AS_IF([ test $cross_compiling = yes && test x$enable_modular_tests = xyes], [
AC_PATH_PROG(GLIB_GENMARSHAL, glib-genmarshal, no)
if test x$GLIB_GENMARSHAL = xno; then
AC_MSG_ERROR(Could not find a glib-genmarshal in your PATH)
if test x$GLIB_COMPILE_RESOURCES = xno; then
AC_MSG_ERROR(Could not find a glib-compile-resources in your PATH)
fi
-fi
+])
dnl **************************
dnl *** Checks for gtk-doc ***
dnl **************************
-
+# gtkdocize greps for ^GTK_DOC_CHECK and parses it, so you need to have
+# it on it's own line.
+m4_ifdef([GTK_DOC_CHECK], [
GTK_DOC_CHECK([1.15], [--flavour no-tmpl])
+],[
+AM_CONDITIONAL([ENABLE_GTK_DOC],[false])
+])
AC_ARG_ENABLE(man,
- [AC_HELP_STRING([--enable-man],
- [regenerate man pages from Docbook [default=no]])],enable_man=yes,
- enable_man=no)
-
-if test "${enable_man}" != no; then
-dnl
-dnl Check for xsltproc
-dnl
-AC_PATH_PROG([XSLTPROC], [xsltproc])
- if test -z "$XSLTPROC"; then
+ [AS_HELP_STRING([--enable-man],
+ [generate man pages [default=auto]])],,
+ enable_man=maybe)
+
+AS_IF([test "$enable_man" != no], [
+ AC_PATH_PROG([XSLTPROC], [xsltproc])
+ AS_IF([test -z "$XSLTPROC"], [
+ AS_IF([test "$enable_man" = yes], [
+ AC_MSG_ERROR([xsltproc is required for --enable-man])
+ ])
enable_man=no
- fi
+ ])
+])
- dnl check for DocBook DTD and stylesheets in the local catalog.
+AS_IF([ test "$enable_man" != no ], [
+ dnl check for DocBook DTD in the local catalog
JH_CHECK_XML_CATALOG([-//OASIS//DTD DocBook XML V4.1.2//EN],
- [DocBook XML DTD V4.1.2],,enable_man=no)
+ [DocBook XML DTD V4.1.2], [have_docbook_dtd=yes], [have_docbook_dtd=no])
+ AS_IF([test "$have_docbook_dtd" != yes], [
+ AS_IF([test "$enable_man" = yes ], [
+ AC_MSG_ERROR([DocBook DTD is required for --enable-man])
+ ])
+ enable_man=no
+ ])
+])
+
+AS_IF([test "$enable_man" != no], [
+ dnl check for DocBook XSL stylesheets in the local catalog
JH_CHECK_XML_CATALOG([http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl],
- [DocBook XSL Stylesheets],,enable_man=no)
-fi
+ [DocBook XSL Stylesheets], [have_docbook_style=yes],[have_docbook_style=no])
+ AS_IF([ test "$have_docbook_dtd" != yes ], [
+ AS_IF([ test "$enable_man" = yes ], [
+ AC_MSG_ERROR([DocBook XSL Stylesheets are required for --enable-man])
+ ])
+ enable_man=no
+ ])
+])
+
+AM_CONDITIONAL(ENABLE_MAN, test "$enable_man" != no)
-AM_CONDITIONAL(ENABLE_MAN, test x$enable_man != xno)
+AC_MSG_CHECKING([whether to generate man pages])
+AS_IF([ test "$enable_man" != no ], [
+ AC_MSG_RESULT([yes])
+], [
+ AC_MSG_RESULT([no])
+])
dnl
dnl Tracing
[include tracing support for dtrace])])
have_dtrace=no
AC_MSG_CHECKING([whether to include dtrace tracing support])
-if test "x$enable_dtrace" != xno; then
+AS_IF([ test "x$enable_dtrace" != xno], [
if test x$glib_have_carbon = xyes; then
AC_MSG_RESULT([no (not yet compatible with MacOS dtrace)])
else
fi])
fi
fi
-else
+], [
AC_MSG_RESULT([no])
-fi
+])
if test "x$have_dtrace" = xyes; then
AC_DEFINE([HAVE_DTRACE], [1], [Define to 1 if using dtrace probes.])
fi
[enable coverage testing with gcov]),
[use_gcov=$enableval], [use_gcov=no])
-if test "x$use_gcov" = "xyes"; then
+AS_IF([ test "x$use_gcov" = "xyes"], [
dnl we need gcc:
if test "$GCC" != "yes"; then
AC_MSG_ERROR([GCC is required for --enable-gcov])
AC_CHECK_PROG(LTP, lcov, lcov)
AC_CHECK_PROG(LTP_GENHTML, genhtml, genhtml)
- if test "$LTP"; then
+ AS_IF([ test "$LTP" ], [
AC_CACHE_CHECK([for ltp version], glib_cv_ltp_version, [
glib_cv_ltp_version=invalid
ltp_version=`$LTP -v 2>/dev/null | $SED -e 's/^.* //'`
fi
done
])
- else
+ ], [
ltp_msg="To enable code coverage reporting you must have one of the following LTP versions installed: $ltp_version_list"
AC_MSG_ERROR([$ltp_msg])
- fi
+ ])
case $glib_cv_ltp_version in
""|invalid[)]
dnl Add the special gcc flags
CFLAGS="$CFLAGS -O0 -fprofile-arcs -ftest-coverage"
LDFLAGS="$LDFLAGS -lgcov"
-fi
+])
dnl ******************************
dnl *** output the whole stuff ***
g_pollerr=$glib_cv_value_POLLERR
g_pollnval=$glib_cv_value_POLLNVAL
-g_af_unix=$glib_cv_value_AF_UNIX
+# If a family is not found on the system, define that family to
+# a negative value, picking a different one for each undefined
+# family (-1 for AF_UNIX, -2 for the next one, -3 ...)
+# This is needed because glib-mkenums doesn't handle optional
+# values in enums, and thus we have to have all existing values
+# defined in the enum.
+if test "x$glib_cv_value_AF_UNIX" != "x"; then
+ g_af_unix=$glib_cv_value_AF_UNIX
+else
+ g_af_unix=-1
+fi
g_af_inet=$glib_cv_value_AF_INET
g_af_inet6=$glib_cv_value_AF_INET6
;;
esac
-AC_CHECK_ALIGNOF([guint32], [typedef unsigned $gint32 guint32;])
-AC_CHECK_ALIGNOF([guint64], typedef unsigned $gint64 guint64;)
+AC_CHECK_TYPE([guint32],,,[typedef unsigned $gint32 guint32;])
+AC_CHECK_ALIGNOF([guint32], [AC_INCLUDES_DEFAULT
+typedef unsigned $gint32 guint32;])
+AC_CHECK_TYPE([guint64],,,[typedef unsigned $gint64 guint64;])
+AC_CHECK_ALIGNOF([guint64], [AC_INCLUDES_DEFAULT
+typedef unsigned $gint64 guint64;])
+AC_CHECK_TYPE([unsigned long])
AC_CHECK_ALIGNOF([unsigned long])
# Check for libdbus1 - Optional - is only used in the GDBus test cases
#
# 1.2.14 required for dbus_message_set_serial
-PKG_CHECK_MODULES(DBUS1,
- dbus-1 >= 1.2.14,
- [AC_DEFINE(HAVE_DBUS1, 1, [Define if dbus-1 is available]) have_dbus1=yes],
- have_dbus1=no)
-AC_SUBST(DBUS1_CFLAGS)
-AC_SUBST(DBUS1_LIBS)
+AS_IF([ test x$enable_modular_tests = xyes], [
+ PKG_CHECK_MODULES(DBUS1,
+ dbus-1 >= 1.2.14,
+ [AC_DEFINE(HAVE_DBUS1, 1, [Define if dbus-1 is available]) have_dbus1=yes],
+ have_dbus1=no)
+ AC_SUBST(DBUS1_CFLAGS)
+ AC_SUBST(DBUS1_LIBS)
+])
AM_CONDITIONAL(HAVE_DBUS1, [test "x$have_dbus1" = "xyes"])
+AC_CHECK_PROGS([DBUS_DAEMON], [dbus-daemon])
+AM_CONDITIONAL([HAVE_DBUS_DAEMON], [test x$DBUS_DAEMON = xdbus-daemon ])
+
dnl
dnl Check for -Bsymbolic-functions linker flag used to avoid
dnl intra-library PLT jumps, if available.
dnl
AC_ARG_ENABLE(Bsymbolic,
- [AC_HELP_STRING([--disable-Bsymbolic],
+ [AS_HELP_STRING([--disable-Bsymbolic],
[avoid linking with -Bsymbolic])],,
[SAVED_LDFLAGS="${LDFLAGS}"
AC_MSG_CHECKING([for -Bsymbolic-functions linker flag])