dnl Francesco Montorsi,
dnl Bob McCown (Mac-testing)
dnl Creation date: 24/11/2001
-dnl RCS-ID: $Id$
dnl ---------------------------------------------------------------------------
dnl ===========================================================================
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
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 ---------------------------------------------------------------------------
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
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)
AC_MSG_RESULT([$WXRC])
ifelse([$1], , :, [$1])
fi
-
+
AC_SUBST(WXRC)
fi
])
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],
[
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
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
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
])
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],
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 | \
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
])
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
])
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
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
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.*")
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)
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
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"
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
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
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
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
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:
AC_DEFUN([AM_PATH_WXCONFIG], [
WX_CONFIG_CHECK([$1],[$2],[$3],[$4],[$5])
])
-
-
+AC_DEFUN([AM_PATH_WXRC], [WXRC_CHECK([$1],[$2])])