X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/731eee9af2b9cc3ae571032fca03abcebabdefd3..32753ae949d861ddaf7c66f4c483bc57493c6c6c:/wxwin.m4 diff --git a/wxwin.m4 b/wxwin.m4 index c538fcc760..1c50dcc272 100644 --- a/wxwin.m4 +++ b/wxwin.m4 @@ -152,9 +152,9 @@ dnl to use. Set WX_CONFIG_PATH to specify the full path to wx-config - in this dnl case the macro won't even waste time on tests for its existence. dnl dnl Optional WX-LIBS argument contains comma- or space-separated list of -dnl wxWidgets libraries to link against (it may include contrib libraries). If -dnl it is not specified then WX_LIBS and WX_LIBS_STATIC will contain flags to -dnl link with all of the core wxWidgets libraries. +dnl wxWidgets libraries to link against. If it is not specified then WX_LIBS +dnl and WX_LIBS_STATIC will contain flags to link with all of the core +dnl wxWidgets libraries. dnl dnl Optional ADDITIONAL-WX-CONFIG-FLAGS argument is appended to wx-config dnl invocation command in present. It can be used to fine-tune lookup of @@ -373,11 +373,13 @@ AC_DEFUN([WX_CONFIG_CHECK], AC_SUBST(WX_RESCOMP) dnl need to export also WX_VERSION_MINOR and WX_VERSION_MAJOR symbols - dnl to support wxpresets bakefiles + dnl to support wxpresets bakefiles (we export also WX_VERSION_MICRO for completeness): WX_VERSION_MAJOR="$wx_config_major_version" WX_VERSION_MINOR="$wx_config_minor_version" + WX_VERSION_MICRO="$wx_config_micro_version" AC_SUBST(WX_VERSION_MAJOR) AC_SUBST(WX_VERSION_MINOR) + AC_SUBST(WX_VERSION_MICRO) ]) dnl --------------------------------------------------------------------------- @@ -406,7 +408,7 @@ dnl WXRC_CHECK([HAVE_WXRC=1], [HAVE_WXRC=0]) dnl if test "x$HAVE_WXRC" != x1; then dnl AC_MSG_ERROR([ dnl The wxrc program was not installed or not found. -dnl +dnl dnl Please check the wxWidgets installation. dnl ]) dnl fi @@ -435,13 +437,13 @@ dnl AC_DEFUN([WXRC_CHECK], [ AC_ARG_VAR([WXRC], [Path to wxWidget's wxrc resource compiler]) - + if test "x$WX_CONFIG_NAME" = x; then AC_MSG_ERROR([The wxrc tests must run after wxWidgets test.]) else - + AC_MSG_CHECKING([for wxrc]) - + if test "x$WXRC" = x ; then dnl wx-config --utility is a new addition to wxWidgets: _WX_PRIVATE_CHECK_VERSION(2,5,3) @@ -457,7 +459,7 @@ AC_DEFUN([WXRC_CHECK], AC_MSG_RESULT([$WXRC]) ifelse([$1], , :, [$1]) fi - + AC_SUBST(WXRC) fi ]) @@ -465,12 +467,12 @@ AC_DEFUN([WXRC_CHECK], dnl --------------------------------------------------------------------------- dnl WX_LIKE_LIBNAME([output-var] [prefix], [name]) dnl -dnl Sets the "output-var" variable to the name of a library named with same +dnl Sets the "output-var" variable to the name of a library named with same dnl wxWidgets rule. -dnl E.g. for output-var=='lib', name=='test', prefix='mine', sets +dnl E.g. for output-var=='lib', name=='test', prefix='mine', sets dnl the $lib variable to: -dnl 'mine_gtk2ud_test-2.8' -dnl if WX_PORT=gtk2, WX_UNICODE=1, WX_DEBUG=1 and WX_VERSION=28 +dnl 'mine_gtk2ud_test-2.8' +dnl if WX_PORT=gtk2, WX_UNICODE=1, WX_DEBUG=1 and WX_RELEASE=28 dnl --------------------------------------------------------------------------- AC_DEFUN([WX_LIKE_LIBNAME], [ @@ -558,7 +560,8 @@ dnl WX_STANDARD_OPTIONS([options-to-add]) dnl dnl Adds to the configure script one or more of the following options: dnl --enable-[debug|unicode|shared|wxshared|wxdebug] -dnl --with-[gtk|msw|motif|x11|mac|mgl|dfb] +dnl --with-[gtk|msw|motif|x11|mac|dfb] +dnl --with-wxversion dnl Then checks for their presence and eventually set the DEBUG, UNICODE, SHARED, dnl PORT, WX_SHARED, WX_DEBUG, variables to one of the "yes", "no", "auto" values. dnl @@ -572,13 +575,14 @@ AC_DEFUN([WX_STANDARD_OPTIONS], dnl the following lines will expand to WX_ARG_ENABLE_YESNOAUTO calls if and only if dnl the $1 argument contains respectively the debug,unicode or shared options. - ifelse(index([$1], [debug]), [-1],, + dnl be careful here not to set debug flag if only "wxdebug" was specified + ifelse(regexp([$1], [\bdebug]), [-1],, [WX_ARG_ENABLE_YESNOAUTO([debug], [DEBUG], [Build in debug mode], [auto])]) ifelse(index([$1], [unicode]), [-1],, [WX_ARG_ENABLE_YESNOAUTO([unicode], [UNICODE], [Build in Unicode mode], [auto])]) - ifelse(index([$1], [shared]), [-1],, + ifelse(regexp([$1], [\bshared]), [-1],, [WX_ARG_ENABLE_YESNOAUTO([shared], [SHARED], [Build as shared library], [auto])]) dnl WX_ARG_WITH_YESNOAUTO cannot be used for --with-toolkit since it's an option @@ -601,10 +605,10 @@ AC_DEFUN([WX_STANDARD_OPTIONS], dnl PORT must be one of the allowed values if test "$TOOLKIT" != "gtk1" -a "$TOOLKIT" != "gtk2" -a \ "$TOOLKIT" != "msw" -a "$TOOLKIT" != "motif" -a \ - "$TOOLKIT" != "x11" -a "$TOOLKIT" != "mac" -a \ - "$TOOLKIT" != "mgl" -a "$TOOLKIT" != "dfb" ; then + "$TOOLKIT" != "osx_carbon" -a "$TOOLKIT" != "osx_cocoa" -a \ + "$TOOLKIT" != "dfb" -a "$TOOLKIT" != "x11"; then AC_MSG_ERROR([ - Unrecognized option value (allowed values: auto, gtk1, gtk2, msw, motif, x11, mac, mgl, dfb) + Unrecognized option value (allowed values: auto, gtk1, gtk2, msw, motif, osx_carbon, osx_cocoa, dfb, x11) ]) fi @@ -656,7 +660,7 @@ AC_DEFUN([WX_STANDARD_OPTIONS], ]) dnl WX_ARG_WITH_YESNOAUTO cannot be used for --with-wxversion since it's an option - dnl which must be able to accept the auto|26|27|28... values + dnl which accepts the "auto|2.6|2.7|2.8|2.9|3.0" etc etc values ifelse(index([$1], [wxversion]), [-1],, [ AC_ARG_WITH([wxversion], @@ -668,7 +672,7 @@ AC_DEFUN([WX_STANDARD_OPTIONS], AC_MSG_CHECKING([for the --with-wxversion option]) if test "$withval" = "auto" ; then AC_MSG_RESULT([will be automatically detected]) - WX_VERSION="auto" + WX_RELEASE="auto" else wx_requested_major_version=`echo $withval | \ @@ -680,12 +684,12 @@ AC_DEFUN([WX_STANDARD_OPTIONS], if test "${#wx_requested_major_version}" != "1" -o \ "${#wx_requested_minor_version}" != "1" ; then AC_MSG_ERROR([ - Unrecognized option value (allowed values: auto, 2.6, 2.7, 2.8, 2.9) + Unrecognized option value (allowed values: auto, 2.6, 2.7, 2.8, 2.9, 3.0) ]) fi - WX_VERSION="$wx_requested_major_version"".""$wx_requested_minor_version" - AC_MSG_RESULT([$WX_VERSION]) + WX_RELEASE="$wx_requested_major_version"".""$wx_requested_minor_version" + AC_MSG_RESULT([$WX_RELEASE]) fi ]) @@ -694,7 +698,7 @@ AC_DEFUN([WX_STANDARD_OPTIONS], echo "[[dbg]] UNICODE: $UNICODE, WX_UNICODE: $WX_UNICODE" echo "[[dbg]] SHARED: $SHARED, WX_SHARED: $WX_SHARED" echo "[[dbg]] TOOLKIT: $TOOLKIT, WX_TOOLKIT: $WX_TOOLKIT" - echo "[[dbg]] VERSION: $VERSION, WX_VERSION: $WX_VERSION" + echo "[[dbg]] VERSION: $VERSION, WX_RELEASE: $WX_RELEASE" fi ]) @@ -731,8 +735,8 @@ AC_DEFUN([WX_CONVERT_STANDARD_OPTIONS_TO_WXCONFIG_FLAGS], WXCONFIG_FLAGS="$WXCONFIG_FLAGS""--toolkit=$TOOLKIT " fi - if test "$WX_VERSION" != "auto" ; then - WXCONFIG_FLAGS="$WXCONFIG_FLAGS""--version=$WX_VERSION " + if test "$WX_RELEASE" != "auto" ; then + WXCONFIG_FLAGS="$WXCONFIG_FLAGS""--version=$WX_RELEASE " fi dnl strip out the last space of the string @@ -745,7 +749,7 @@ AC_DEFUN([WX_CONVERT_STANDARD_OPTIONS_TO_WXCONFIG_FLAGS], dnl --------------------------------------------------------------------------- -dnl _WX_SELECTEDCONFIG_CHECKFOR([RESULTVAR], [STRING], [MSG] +dnl _WX_SELECTEDCONFIG_CHECKFOR([RESULTVAR], [STRING], [MSG] dnl [, ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]) dnl dnl Outputs the given MSG. Then searches the given STRING in the wxWidgets @@ -760,9 +764,9 @@ AC_DEFUN([_WX_SELECTEDCONFIG_CHECKFOR], dnl so we will detect the wxWidgets relative build setting and use it AC_MSG_CHECKING([$3]) - dnl set WX_$1 variable to 1 if the $WX_SELECTEDCONFIG contains the $2 + dnl set WX_$1 variable to 1 if the $WX_SELECTEDCONFIG contains the $2 dnl string or to 0 otherwise. - dnl NOTE: 'expr match STRING REGEXP' cannot be used since on Mac it + dnl NOTE: 'expr match STRING REGEXP' cannot be used since on Mac it dnl doesn't work; we use 'expr STRING : REGEXP' instead WX_$1=$(expr "$WX_SELECTEDCONFIG" : ".*$2.*") @@ -786,7 +790,7 @@ dnl --------------------------------------------------------------------------- dnl WX_DETECT_STANDARD_OPTION_VALUES dnl dnl Detects the values of the following variables: -dnl 1) WX_VERSION +dnl 1) WX_RELEASE dnl 2) WX_UNICODE dnl 3) WX_DEBUG dnl 4) WX_SHARED (and also WX_STATIC) @@ -799,8 +803,10 @@ dnl by WX_CONFIG_CHECK macro dnl --------------------------------------------------------------------------- AC_DEFUN([WX_DETECT_STANDARD_OPTION_VALUES], [ - WX_VERSION="$WX_VERSION_MAJOR""$WX_VERSION_MINOR" - if test $WX_VERSION -lt 26 ; then + dnl IMPORTANT: WX_VERSION contains all three major.minor.micro digits, + dnl while WX_RELEASE only the major.minor ones. + WX_RELEASE="$WX_VERSION_MAJOR""$WX_VERSION_MINOR" + if test $WX_RELEASE -lt 26 ; then AC_MSG_ERROR([ Cannot detect the wxWidgets configuration for the selected wxWidgets build @@ -863,9 +869,9 @@ AC_DEFUN([WX_DETECT_STANDARD_OPTION_VALUES], WX_GTKPORT2=$(expr "$WX_SELECTEDCONFIG" : ".*gtk2.*") WX_MSWPORT=$(expr "$WX_SELECTEDCONFIG" : ".*msw.*") WX_MOTIFPORT=$(expr "$WX_SELECTEDCONFIG" : ".*motif.*") - WX_MACPORT=$(expr "$WX_SELECTEDCONFIG" : ".*mac.*") + WX_OSXCOCOAPORT=$(expr "$WX_SELECTEDCONFIG" : ".*osx_cocoa.*") + WX_OSXCARBONPORT=$(expr "$WX_SELECTEDCONFIG" : ".*osx_carbon.*") WX_X11PORT=$(expr "$WX_SELECTEDCONFIG" : ".*x11.*") - WX_MGLPORT=$(expr "$WX_SELECTEDCONFIG" : ".*mgl.*") WX_DFBPORT=$(expr "$WX_SELECTEDCONFIG" : ".*dfb.*") WX_PORT="unknown" @@ -873,11 +879,16 @@ AC_DEFUN([WX_DETECT_STANDARD_OPTION_VALUES], if test "$WX_GTKPORT2" != "0"; then WX_PORT="gtk2"; fi if test "$WX_MSWPORT" != "0"; then WX_PORT="msw"; fi if test "$WX_MOTIFPORT" != "0"; then WX_PORT="motif"; fi - if test "$WX_MACPORT" != "0"; then WX_PORT="mac"; fi + if test "$WX_OSXCOCOAPORT" != "0"; then WX_PORT="osx_cocoa"; fi + if test "$WX_OSXCARBONPORT" != "0"; then WX_PORT="osx_carbon"; fi if test "$WX_X11PORT" != "0"; then WX_PORT="x11"; fi - if test "$WX_MGLPORT" != "0"; then WX_PORT="mgl"; fi if test "$WX_DFBPORT" != "0"; then WX_PORT="dfb"; fi + dnl NOTE: backward-compatible check for wx2.8; in wx2.9 the mac + dnl ports are called 'osx_cocoa' and 'osx_carbon' (see above) + WX_MACPORT=$(expr "$WX_SELECTEDCONFIG" : ".*mac.*") + if test "$WX_MACPORT" != "0"; then WX_PORT="mac"; fi + dnl check at least one of the WX_*PORT has been set ! if test "$WX_PORT" = "unknown" ; then @@ -906,7 +917,7 @@ AC_DEFUN([WX_DETECT_STANDARD_OPTION_VALUES], echo "[[dbg]] WX_DEBUG: $WX_DEBUG" echo "[[dbg]] WX_UNICODE: $WX_UNICODE" echo "[[dbg]] WX_SHARED: $WX_SHARED" - echo "[[dbg]] WX_VERSION: $WX_VERSION" + echo "[[dbg]] WX_RELEASE: $WX_RELEASE" echo "[[dbg]] WX_PORT: $WX_PORT" fi @@ -931,13 +942,6 @@ AC_DEFUN([WX_DETECT_STANDARD_OPTION_VALUES], dnl to their final values if they were set to 'auto' if test "$DEBUG" = "auto"; then DEBUG=$WX_DEBUG - - dnl in case user wants a BUILD=debug/release var... - if test "$DEBUG" = "1"; then - BUILD="debug" - elif test "$DEBUG" = ""; then - BUILD="release" - fi fi if test "$UNICODE" = "auto"; then UNICODE=$WX_UNICODE @@ -949,6 +953,13 @@ AC_DEFUN([WX_DETECT_STANDARD_OPTION_VALUES], TOOLKIT=$WX_PORT fi + dnl in case the user needs a BUILD=debug/release var... + if test "$DEBUG" = "1"; then + BUILD="debug" + elif test "$DEBUG" = "0" -o "$DEBUG" = ""; then + BUILD="release" + fi + dnl respect the DEBUG variable adding the optimize/debug flags dnl NOTE: the CXXFLAGS are merged together with the CPPFLAGS so we dnl don't need to set them, too @@ -1006,7 +1017,7 @@ AC_DEFUN([WX_STANDARD_OPTIONS_SUMMARY_MSG], dnl --------------------------------------------------------------------------- dnl WX_STANDARD_OPTIONS_SUMMARY_MSG_BEGIN, WX_STANDARD_OPTIONS_SUMMARY_MSG_END dnl -dnl Like WX_STANDARD_OPTIONS_SUMMARY_MSG macro but these two macros also gives info +dnl Like WX_STANDARD_OPTIONS_SUMMARY_MSG macro but these two macros also gives info dnl about the configuration of the package which used the wxpresets. dnl dnl Typical usage: @@ -1046,5 +1057,4 @@ AC_DEFUN([AM_OPTIONS_WXCONFIG], [WX_CONFIG_OPTIONS]) AC_DEFUN([AM_PATH_WXCONFIG], [ WX_CONFIG_CHECK([$1],[$2],[$3],[$4],[$5]) ]) - - +AC_DEFUN([AM_PATH_WXRC], [WXRC_CHECK([$1],[$2])])