X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/2dbd07cb7af34afb50a8456564050c4e5ea7bfc3..7eae80a04b477d1200af666397cd387cf143ac0b:/acinclude.m4 diff --git a/acinclude.m4 b/acinclude.m4 index 6a27a120d7..13973994d3 100644 --- a/acinclude.m4 +++ b/acinclude.m4 @@ -132,7 +132,7 @@ AC_DEFUN([WX_CPP_NEW_HEADERS], AC_LANG_SAVE AC_LANG_CPLUSPLUS - AC_CHECK_HEADERS(iostream) + AC_CHECK_HEADERS([iostream],,, [ ]) if test "$ac_cv_header_iostream" = "yes" ; then ifelse([$1], , :, [$1]) @@ -143,43 +143,6 @@ AC_DEFUN([WX_CPP_NEW_HEADERS], AC_LANG_RESTORE ]) -dnl --------------------------------------------------------------------------- -dnl WX_CPP_BOOL checks whether the C++ compiler has a built in bool type -dnl -dnl call WX_CPP_BOOL - will define HAVE_BOOL if the compiler supports bool -dnl --------------------------------------------------------------------------- - -AC_DEFUN([WX_CPP_BOOL], -[ - AC_CACHE_CHECK([if C++ compiler supports bool], wx_cv_cpp_bool, - [ - AC_LANG_SAVE - AC_LANG_CPLUSPLUS - - AC_TRY_COMPILE( - [ - ], - [ - bool b = true; - - return 0; - ], - [ - wx_cv_cpp_bool=yes - ], - [ - wx_cv_cpp_bool=no - ] - ) - - AC_LANG_RESTORE - ]) - - if test "$wx_cv_cpp_bool" = "yes"; then - AC_DEFINE(HAVE_BOOL) - fi -]) - dnl --------------------------------------------------------------------------- dnl WX_CPP_EXPLICIT checks whether the C++ compiler support the explicit dnl keyword and defines HAVE_EXPLICIT if this is the case @@ -284,7 +247,7 @@ AC_DEFUN([WX_CHECK_FUNCS], if eval test \$wx_cv_func_$wx_func = yes then - AC_DEFINE_UNQUOTED([HAVE_`echo $wx_func | tr 'a-z' 'A-Z'`]) + AC_DEFINE_UNQUOTED(AS_TR_CPP([HAVE_$wx_func])) $2 else : @@ -332,60 +295,38 @@ fi ]) dnl --------------------------------------------------------------------------- -dnl override AC_ARG_ENABLE/WITH to cache the results in .cache file +dnl override AC_ARG_ENABLE/WITH to handle options defaults dnl --------------------------------------------------------------------------- -AC_DEFUN([WX_ARG_CACHE_INIT], - [ - wx_arg_cache_file="configarg.cache" - echo "loading argument cache $wx_arg_cache_file" - rm -f ${wx_arg_cache_file}.tmp - touch ${wx_arg_cache_file}.tmp - touch ${wx_arg_cache_file} - ]) - -AC_DEFUN([WX_ARG_CACHE_FLUSH], - [ - echo "saving argument cache $wx_arg_cache_file" - mv ${wx_arg_cache_file}.tmp ${wx_arg_cache_file} - ]) - dnl this macro checks for a three-valued command line --with argument: dnl possible arguments are 'yes', 'no', 'sys', or 'builtin' dnl usage: WX_ARG_SYS_WITH(option, helpmessage, variable-name) +dnl +dnl the default value (used if the option is not specified at all) is the value +dnl of wxUSE_ALL_FEATURES (which is "yes" by default but can be changed by +dnl giving configure --disable-all-features option) AC_DEFUN([WX_ARG_SYS_WITH], [ AC_MSG_CHECKING([for --with-$1]) - no_cache=0 AC_ARG_WITH($1, [$2], [ if test "$withval" = yes; then - ac_cv_use_$1='$3=yes' + AS_TR_SH(wx_cv_use_$1)='$3=yes' elif test "$withval" = no; then - ac_cv_use_$1='$3=no' + AS_TR_SH(wx_cv_use_$1)='$3=no' elif test "$withval" = sys; then - ac_cv_use_$1='$3=sys' + AS_TR_SH(wx_cv_use_$1)='$3=sys' elif test "$withval" = builtin; then - ac_cv_use_$1='$3=builtin' + AS_TR_SH(wx_cv_use_$1)='$3=builtin' else AC_MSG_ERROR([Invalid value for --with-$1: should be yes, no, sys, or builtin]) fi ], [ - LINE=`grep "$3" ${wx_arg_cache_file}` - if test "x$LINE" != x ; then - eval "DEFAULT_$LINE" - else - no_cache=1 - fi - - ac_cv_use_$1='$3='$DEFAULT_$3 + AS_TR_SH(wx_cv_use_$1)='$3=${'DEFAULT_$3":-$wxUSE_ALL_FEATURES}" ]) - eval "$ac_cv_use_$1" - if test "$no_cache" != 1; then - echo $ac_cv_use_$1 >> ${wx_arg_cache_file}.tmp - fi + eval "$AS_TR_SH(wx_cv_use_$1)" if test "$$3" = yes; then AC_MSG_RESULT(yes) @@ -400,86 +341,106 @@ AC_DEFUN([WX_ARG_SYS_WITH], fi ]) -dnl this macro checks for a command line argument and caches the result +dnl this macro simply checks for a command line argument dnl usage: WX_ARG_WITH(option, helpmessage, variable-name, [withstring]) AC_DEFUN([WX_ARG_WITH], [ withstring=$4 + defaultval=$wxUSE_ALL_FEATURES + if test -z "$defaultval"; then + if test x"$withstring" = xwithout; then + defaultval=yes + else + defaultval=no + fi + fi AC_MSG_CHECKING([for --${withstring:-with}-$1]) - no_cache=0 AC_ARG_WITH($1, [$2], [ if test "$withval" = yes; then - ac_cv_use_$1='$3=yes' + AS_TR_SH(wx_cv_use_$1)='$3=yes' else - ac_cv_use_$1='$3=no' + AS_TR_SH(wx_cv_use_$1)='$3=no' fi ], [ - LINE=`grep "$3" ${wx_arg_cache_file}` - if test "x$LINE" != x ; then - eval "DEFAULT_$LINE" - else - no_cache=1 - fi - - ac_cv_use_$1='$3='$DEFAULT_$3 + AS_TR_SH(wx_cv_use_$1)='$3=${'DEFAULT_$3":-$defaultval}" ]) - eval "$ac_cv_use_$1" - if test "$no_cache" != 1; then - echo $ac_cv_use_$1 >> ${wx_arg_cache_file}.tmp - fi + eval "$AS_TR_SH(wx_cv_use_$1)" - if test "$$3" = yes; then - AC_MSG_RESULT(yes) + if test x"$withstring" = xwithout; then + if test $$3 = yes; then + result=no + else + result=yes + fi else - AC_MSG_RESULT(no) + result=$$3 fi + + AC_MSG_RESULT($result) ]) +dnl same as WX_ARG_WITH but makes it clear that the option is enabled by default +AC_DEFUN([WX_ARG_WITHOUT], [WX_ARG_WITH($1, [$2], $3, without)]) + dnl like WX_ARG_WITH but uses AC_ARG_ENABLE instead of AC_ARG_WITH -dnl usage: WX_ARG_ENABLE(option, helpmessage, variable-name, enablestring) +dnl usage: WX_ARG_ENABLE(option, helpmessage, var, [enablestring], [default]) +dnl +dnl enablestring can be omitted or a literal string "disable" and allows to +dnl show "checking for --disable-foo" message when running configure instead of +dnl the default "checking for --enable-foo" one whih is useful for the options +dnl enabled by default dnl -dnl enablestring is a hack and allows to show "checking for --disable-foo" -dnl message when running configure instead of the default "checking for -dnl --enable-foo" one whih is useful for the options enabled by default +dnl the "default" argument can be omitted or contain the default value to use +dnl for the option if it's unspecified AC_DEFUN([WX_ARG_ENABLE], [ enablestring=$4 + defaultval=$5 + if test -z "$defaultval"; then + if test x"$enablestring" = xdisable; then + defaultval=yes + else + defaultval=no + fi + fi + AC_MSG_CHECKING([for --${enablestring:-enable}-$1]) - no_cache=0 AC_ARG_ENABLE($1, [$2], [ if test "$enableval" = yes; then - ac_cv_use_$1='$3=yes' + AS_TR_SH(wx_cv_use_$1)='$3=yes' else - ac_cv_use_$1='$3=no' + AS_TR_SH(wx_cv_use_$1)='$3=no' fi ], [ - LINE=`grep "$3" ${wx_arg_cache_file}` - if test "x$LINE" != x ; then - eval "DEFAULT_$LINE" - else - no_cache=1 - fi - - ac_cv_use_$1='$3='$DEFAULT_$3 + AS_TR_SH(wx_cv_use_$1)='$3=${'DEFAULT_$3":-$defaultval}" ]) - eval "$ac_cv_use_$1" - if test "$no_cache" != 1; then - echo $ac_cv_use_$1 >> ${wx_arg_cache_file}.tmp - fi + eval "$AS_TR_SH(wx_cv_use_$1)" - if test "$$3" = yes; then - AC_MSG_RESULT(yes) + if test x"$enablestring" = xdisable; then + if test $$3 = no; then + result=yes + else + result=no + fi else - AC_MSG_RESULT(no) + result=$$3 fi + + AC_MSG_RESULT($result) ]) +dnl the same as WX_ARG_ENABLE but makes it more clear that the option is +dnl enabled by default +AC_DEFUN([WX_ARG_DISABLE], [WX_ARG_ENABLE($1, [$2], $3, disable)]) + +dnl same as WX_ARG_ENABLE but defaults to wxUSE_ALL_FEATURES instead of "yes" +AC_DEFUN([WX_ARG_FEATURE], [WX_ARG_ENABLE($1, [$2], $3,, $wxUSE_ALL_FEATURES)]) dnl Like WX_ARG_ENABLE but accepts a parameter. dnl @@ -492,32 +453,21 @@ dnl dnl --enable-foo wxUSE_FOO=yes dnl --disable-foo wxUSE_FOO=no dnl --enable-foo=bar wxUSE_FOO=bar -dnl value from configarg.cache or wxUSE_FOO=no +dnl wxUSE_FOO=$DEFAULT_wxUSE_FOO dnl AC_DEFUN([WX_ARG_ENABLE_PARAM], [ enablestring=$4 AC_MSG_CHECKING([for --${enablestring:-enable}-$1]) - no_cache=0 AC_ARG_ENABLE($1, [$2], [ wx_cv_use_$1="$3='$enableval'" ], [ - LINE=`grep "$3" ${wx_arg_cache_file}` - if test "x$LINE" != x ; then - eval "DEFAULT_$LINE" - wx_cv_use_$1='$3='$DEFAULT_$3 - else - no_cache=1 - wx_cv_use_$1="$3=no" - fi + wx_cv_use_$1='$3='$DEFAULT_$3 ]) eval "$wx_cv_use_$1" - if test "$no_cache" != 1; then - echo $wx_cv_use_$1 >> ${wx_arg_cache_file}.tmp - fi AC_MSG_RESULT([$$3]) ]) @@ -757,79 +707,3 @@ if test "$enable_largefile" != no; then fi ]) - -dnl Available from the GNU Autoconf Macro Archive at: -dnl http://www.gnu.org/software/ac-archive/htmldoc/ac_cxx_const_cast.html -dnl -AC_DEFUN([AC_CXX_CONST_CAST], -[AC_CACHE_CHECK(whether the compiler supports const_cast<>, -ac_cv_cxx_const_cast, -[AC_LANG_SAVE - AC_LANG_CPLUSPLUS - AC_TRY_COMPILE(,[int x = 0;const int& y = x;int& z = const_cast(y);return z;], - ac_cv_cxx_const_cast=yes, ac_cv_cxx_const_cast=no) - AC_LANG_RESTORE -]) -if test "$ac_cv_cxx_const_cast" = yes; then - AC_DEFINE(HAVE_CONST_CAST,,[define if the compiler supports const_cast<>]) -fi -]) - -dnl http://www.gnu.org/software/ac-archive/htmldoc/ac_cxx_reinterpret_cast.html -AC_DEFUN([AC_CXX_REINTERPRET_CAST], -[AC_CACHE_CHECK(whether the compiler supports reinterpret_cast<>, -ac_cv_cxx_reinterpret_cast, -[AC_LANG_SAVE - AC_LANG_CPLUSPLUS - AC_TRY_COMPILE([#include -class Base { public : Base () {} virtual void f () = 0;}; -class Derived : public Base { public : Derived () {} virtual void f () {} }; -class Unrelated { public : Unrelated () {} }; -int g (Unrelated&) { return 0; }],[ -Derived d;Base& b=d;Unrelated& e=reinterpret_cast(b);return g(e);], - ac_cv_cxx_reinterpret_cast=yes, ac_cv_cxx_reinterpret_cast=no) - AC_LANG_RESTORE -]) -if test "$ac_cv_cxx_reinterpret_cast" = yes; then - AC_DEFINE(HAVE_REINTERPRET_CAST,, - [define if the compiler supports reinterpret_cast<>]) -fi -]) - -dnl and http://www.gnu.org/software/ac-archive/htmldoc/ac_cxx_static_cast.html -AC_DEFUN([AC_CXX_STATIC_CAST], -[AC_CACHE_CHECK(whether the compiler supports static_cast<>, -ac_cv_cxx_static_cast, -[AC_LANG_SAVE - AC_LANG_CPLUSPLUS - AC_TRY_COMPILE([#include -class Base { public : Base () {} virtual void f () = 0; }; -class Derived : public Base { public : Derived () {} virtual void f () {} }; -int g (Derived&) { return 0; }],[ -Derived d; Base& b = d; Derived& s = static_cast (b); return g (s);], - ac_cv_cxx_static_cast=yes, ac_cv_cxx_static_cast=no) - AC_LANG_RESTORE -]) -if test "$ac_cv_cxx_static_cast" = yes; then - AC_DEFINE(HAVE_STATIC_CAST,, [define if the compiler supports static_cast<>]) -fi -]) - -dnl http://autoconf-archive.cryp.to/ac_cxx_dynamic_cast.html -AC_DEFUN([AC_CXX_DYNAMIC_CAST], -[AC_CACHE_CHECK(whether the compiler supports dynamic_cast<>, -ac_cv_cxx_dynamic_cast, -[AC_LANG_SAVE - AC_LANG_CPLUSPLUS - AC_TRY_COMPILE([#include -class Base { public : Base () {} virtual void f () = 0;}; -class Derived : public Base { public : Derived () {} virtual void f () {} };],[ -Derived d; Base& b=d; return dynamic_cast(&b) ? 0 : 1;], - ac_cv_cxx_dynamic_cast=yes, ac_cv_cxx_dynamic_cast=no) - AC_LANG_RESTORE -]) -if test "$ac_cv_cxx_dynamic_cast" = yes; then - AC_DEFINE(HAVE_DYNAMIC_CAST,,[define if the compiler supports dynamic_cast<>]) -fi -]) -