X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~mdw/git/disorder/blobdiff_plain/e6ea27d845697c1544c6a1bbcd71b624275648e7..a0ead2ba812735c2d1edd660b8608f8cb52cea5d:/configure.ac diff --git a/configure.ac b/configure.ac index 369a6f0..7346b9c 100644 --- a/configure.ac +++ b/configure.ac @@ -1,7 +1,8 @@ + # Process this file with autoconf to produce a configure script. # # This file is part of DisOrder. -# Copyright (C) 2004, 2005, 2006, 2007 Richard Kettlewell +# Copyright (C) 2004-2008 Richard Kettlewell # Portions copyright (C) 2007 Ross Younger # # This program is free software; you can redistribute it and/or modify @@ -20,9 +21,9 @@ # USA # -AC_INIT([disorder], [2.0+], [richard+disorder@sfere.greenend.org.uk]) +AC_INIT([disorder], [3.0+], [richard+disorder@sfere.greenend.org.uk]) AC_CONFIG_AUX_DIR([config.aux]) -AM_INIT_AUTOMAKE(disorder, [2.0+]) +AM_INIT_AUTOMAKE(disorder, [3.0+]) AC_CONFIG_SRCDIR([server/disorderd.c]) AM_CONFIG_HEADER([config.h]) @@ -81,6 +82,28 @@ case "$host" in COREAUDIO="-framework CoreAudio" fi browser=open + AC_MSG_CHECKING([Mac OS X target version]) + # We honor MACOSX_DEPLOYMENT_TARGET in the environment, emulating gcc's + # behaviour. But we provide a command line option to override it and + # we default to wide support instead of supporting only the build platform. + # + # Currently if you ask for 10.5 you will get a deprecation warning + # when building the CoreAudio support code. For the time being the + # answer to this is "don't do that then". If a good reason to ask + # for a 10.5 deployment target emerges then this will be fixed. + if test -z "$MACOSX_DEPLOYMENT_TARGET"; then + MACOSX_DEPLOYMENT_TARGET=10.0 + fi + AC_ARG_WITH([deployment-target], + [AS_HELP_STRING([--with-deployment-target=TARGET], + [set target OS X version])], + [MACOSX_DEPLOYMENT_TARGET=$withval]) + # Convert to desired format + underscored=`echo $MACOSX_DEPLOYMENT_TARGET|sed 's/\./_/'` + minver="MAC_OS_X_VERSION_$underscored" + AC_MSG_RESULT([$minver]) + AC_DEFINE_UNQUOTED([MAC_OS_X_VERSION_MIN_REQUIRED], [$minver], + [define to minimum version of Mac OS X to support]) ;; *-freebsd* ) AC_MSG_RESULT([FreeBSD]) @@ -89,9 +112,20 @@ case "$host" in # there by default LDFLAGS="${LDFLAGS} -L/usr/local/lib" CPPFLAGS="${CPPFLAGS} -isystem /usr/local/include" - # libdb installs elsewhere again - LDFLAGS="${LDFLAGS} -L/usr/local/lib/db44" - CPPFLAGS="${CPPFLAGS} -isystem /usr/local/include/db44" + # Look for a suitable version of libdb among the versions found in FreeBSD 7.0 + AC_CACHE_CHECK([looking for a libdb install],[rjk_cv_libdb],[ + rjk_cv_libdb="none" + for db in db43 db44 db45 db46; do + if test -e /usr/local/lib/$db; then + rjk_cv_libdb=$db + break + fi + done + ]) + if test $rjk_cv_libdb != none; then + LDFLAGS="${LDFLAGS} -L/usr/local/lib/$rjk_cv_libdb" + CPPFLAGS="${CPPFLAGS} -isystem /usr/local/include/$rjk_cv_libdb" + fi ;; * ) AC_MSG_RESULT([unknown, winging it]) @@ -107,7 +141,7 @@ AC_ARG_WITH([browser], AC_CACHE_CHECK([default HTML viewer],[rjk_cv_browser],[ rjk_cv_browser=UNKNOWN - for candidate in x-www-browser firefox mozilla konqueror netscape; do + for candidate in x-www-browser sensible-browser firefox mozilla konqueror netscape; do if type $candidate >/dev/null 2>&1; then rjk_cv_browser="$candidate" break @@ -394,6 +428,10 @@ AC_CHECK_FUNCS([fdatasync],[:],[ if test ! -z "$missing_functions"; then AC_MSG_ERROR([missing functions:$missing_functions]) fi + +# Functions we can take or leave +AC_CHECK_FUNCS([fls]) + if test $want_server = yes; then # had better be version 3 or later AC_CACHE_CHECK([db.h version],[rjk_cv_db_version],[ @@ -405,7 +443,7 @@ if test $want_server = yes; then #if DB_VERSION_MAJOR < 4 # error inadequate db version #endif - #if DB_VERSION_MAJOR == 4 && DB_VERSION_MINOR < 2 + #if DB_VERSION_MAJOR == 4 && DB_VERSION_MINOR <= 2 # error inadequate db version #endif ], @@ -417,6 +455,11 @@ if test $want_server = yes; then fi fi +AM_CONDITIONAL([SERVER], [test x$want_server = xyes]) +if test $want_gtk = yes; then + AC_DEFINE([WITH_GTK], [1], [define if using GTK+]) +fi + if test "x$GCC" = xyes; then # http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29478 AC_CACHE_CHECK([checking for GCC bug 29478],[rjk_cv_pr29478],[ @@ -455,7 +498,12 @@ if test "x$GCC" = xyes; then rjk_cv_werror, [ save_CFLAGS="${CFLAGS}" CFLAGS="${CFLAGS} ${GTK_CFLAGS} -Werror" - AC_TRY_COMPILE([#include ], + AC_TRY_COMPILE([#if WITH_GTK + #include +#endif + +struct s { int a, b; }; +const struct s sv = { .a = 1 };], [], [rjk_cv_werror=yes], [rjk_cv_werror=no])