X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/e721a2a2a41393346e0c86965cfd04f056196c2a..48f0334de5cf9c4087c67a65b8f2fa3f1a0c63a2:/configure.in diff --git a/configure.in b/configure.in index 6d8db5e0d3..9b4bb50d72 100644 --- a/configure.in +++ b/configure.in @@ -26,6 +26,13 @@ dnl sets build, host variables and the same with _alias AC_CANONICAL_BUILD AC_CANONICAL_HOST +if test "$cross_compiling" = "yes"; then + HOST_PREFIX="${host_alias}-" + HOST_SUFFIX="-$host_alias" +else + HOST_PREFIX= + HOST_SUFFIX= +fi dnl When making releases do: dnl @@ -430,6 +437,14 @@ fi WX_ARG_DISABLE(all-features,[ --disable-all-features disable all optional features to build minimal library], wxUSE_ALL_FEATURES) +if test "$wxUSE_ALL_FEATURES" = "no"; then + dnl this is a bit ugly but currently we have no choice but to manually + dnl reset all the options with default value of auto if all features are to + dnl be disabled because we can't have an option with default value of + dnl "auto-or-no-if-wxUSE_ALL_FEATURES-is-disabled" + DEFAULT_wxUSE_MEDIACTRL=no +fi + dnl --------------------------------------------------------------------------- dnl port selection dnl --------------------------------------------------------------------------- @@ -616,7 +631,7 @@ if test "$USE_OS2" = 1; then WX_ARG_ENABLE(omf, [ --enable-omf use OMF object format], wxUSE_OMF) fi -dnl --enablle-debug is equivalent to both --enable-debug_flag and +dnl --enable-debug is equivalent to both --enable-debug_flag and dnl --enable-debug_info if test "$wxUSE_DEBUG" = "yes"; then DEFAULT_wxUSE_DEBUG_FLAG=yes @@ -663,6 +678,13 @@ WX_ARG_ENABLE_PARAM(universal_binary, [[ --enable-universal_binary create Mac WX_ARG_ENABLE(compat26, [ --enable-compat26 enable wxWidgets 2.6 compatibility], WXWIN_COMPATIBILITY_2_6) WX_ARG_DISABLE(compat28, [ --disable-compat28 disable wxWidgets 2.8 compatibility], WXWIN_COMPATIBILITY_2_8) +dnl currently we don't provide a switch for disabling it as it shouldn't be +dnl necessary to do it unless the compiler doesn't support the new events and +dnl this should be tested for by configure itself (but also isn't done yet +dnl because there are no known examples of such compilers among the currently +dnl supported ones) +AC_DEFINE(wxEVENTS_COMPATIBILITY_2_8, 0) + WX_ARG_DISABLE(rpath, [ --disable-rpath disable use of rpath for uninstalled builds], wxUSE_RPATH) WX_ARG_ENABLE(objc_uniquifying,[ --enable-objc_uniquifying enable Objective-C class name uniquifying], wxUSE_OBJC_UNIQUIFYING) @@ -997,7 +1019,7 @@ dnl defines CFLAGS dnl dnl this magic incantation is needed to prevent AC_PROG_CC from setting the dnl default CFLAGS (something like "-g -O2") -- we don't need this as we add -dnl -g and -O flags ourselves below +dnl (if not already present in C*FLAGS) the -g and -O flags ourselves below CFLAGS=${CFLAGS:=} AC_BAKEFILE_PROG_CC @@ -3757,13 +3779,13 @@ if test "$wxUSE_SHARED" = "yes"; then ;; *-*-darwin* ) - install_name_tool=`which install_name_tool` + install_name_tool=`which ${HOST_PREFIX}install_name_tool` if test "$install_name_tool" -a -x "$install_name_tool"; then SAMPLES_RPATH_POSTLINK="\$(wx_top_builddir)/change-install-names \$(LIBDIRNAME) \$(prefix) \$@" cat <change-install-names #!/bin/sh libnames=\`cd \${1} ; ls -1 | grep '\.[[0-9]][[0-9]]*\.dylib\$'\` -inst_cmd="install_name_tool " +inst_cmd="${HOST_PREFIX}install_name_tool " for i in \${libnames} ; do inst_cmd="\${inst_cmd} -change \${2}/lib/\${i} \${1}/\${i}" done @@ -3838,15 +3860,9 @@ fi WX_VERSION_TAG=`echo WX${lib_unicode_suffix}${lib_debug_suffix}${WX_LIB_FLAVOUR}_${WX_RELEASE} | tr '[[a-z]]' '[[A-Z]]'` -TOOLCHAIN_NAME="${TOOLKIT_DIR}${TOOLKIT_VERSION}${WIDGET_SET}${lib_unicode_suffix}${lib_debug_suffix}${WX_LIB_FLAVOUR}-${WX_RELEASE}" +TOOLCHAIN_NAME="${TOOLKIT_DIR}${TOOLKIT_VERSION}${WIDGET_SET}${lib_unicode_suffix}${lib_debug_suffix}${WX_LIB_FLAVOUR}-${WX_RELEASE}${HOST_SUFFIX}" -TOOLCHAIN_FULLNAME="${TOOLKIT_DIR}${TOOLKIT_VERSION}${WIDGET_SET}-${WX_CHARTYPE}-${WX_DEBUGTYPE}${config_linkage_component}-${WX_RELEASE}${WX_FLAVOUR}" - -if test "$cross_compiling" = "yes"; then - HOST_SUFFIX="-$host_alias" - TOOLCHAIN_NAME="$TOOLCHAIN_NAME$HOST_SUFFIX" - TOOLCHAIN_FULLNAME="${host_alias}-$TOOLCHAIN_FULLNAME" -fi +TOOLCHAIN_FULLNAME="${HOST_PREFIX}${TOOLKIT_DIR}${TOOLKIT_VERSION}${WIDGET_SET}-${WX_CHARTYPE}-${WX_DEBUGTYPE}${config_linkage_component}-${WX_RELEASE}${WX_FLAVOUR}" dnl library link name dnl These just save us from exporting lib_{unicode,debug,flavour}_suffix. @@ -4040,7 +4056,7 @@ if test "$wxUSE_WCHAR_T" = "yes"; then AC_DEFINE(HAVE_WCSLEN) fi - AC_CHECK_FUNCS([wcsdup]) + AC_CHECK_FUNCS([wcsdup strnlen wcsnlen wcscasecmp wcsncasecmp]) dnl On HP-UX aCC need this define to find mbstrtowcs() &c dnl Can't be used for g++ since the mbstate_t in wchar.h can conflict @@ -5124,7 +5140,13 @@ fi dnl DEBUG_CFLAGS contains debugging options (supposed to be the same for C and C++ dnl compilers: we'd need a separate DEBUG_CXXFLAGS if this is ever not the case) DEBUG_CFLAGS= -if test "$wxUSE_DEBUG_INFO" = "yes" ; then +if `echo $CXXFLAGS $CFLAGS | grep " -g" >/dev/null`; then + dnl the CXXFLAGS or the CFLAGS variable already contains the -g flag + dnl (e.g. it was specified by the user before running configure); since + dnl later they will be merged with DEBUG_CFLAGS, don't set the -g option + dnl in DEBUG_CFLAGS to avoid (possibly different) flag duplicates + AC_MSG_WARN([CXXFLAGS/CFLAGS already contains -g flag; ignoring the --enable-debug_info option]) +elif test "$wxUSE_DEBUG_INFO" = "yes" ; then DEBUG_CFLAGS="-g" fi @@ -5197,29 +5219,37 @@ fi dnl C/C++ compiler option for optimization (supposed to be the same for both) OPTIMISE_CFLAGS= -if test "$wxUSE_OPTIMISE" = "no" ; then - if test "$GCC" = yes ; then - dnl use -O0 because compiling with it is faster than compiling with no - dnl optimization options at all (at least with g++ 3.2) - OPTIMISE_CFLAGS="-O0" - fi +if `echo $CXXFLAGS $CFLAGS | grep " -O" >/dev/null`; then + dnl the CXXFLAGS or the CFLAGS variable already contains -O optimization flag + dnl (e.g. it was specified by the user before running configure); since + dnl later they will be merged with OPTIMISE_CFLAGS, don't set the -O option + dnl in OPTIMISE_CFLAGS to avoid (possibly different) flag duplicates + AC_MSG_WARN([CXXFLAGS/CFLAGS already contains -O flag; ignoring the --disable-optimise option]) else - if test "$GCC" = yes ; then - case "${host}" in - *-pc-os2_emx | *-pc-os2-emx ) - dnl Not all of the supported gcc versions understand - dnl -fstrict-aliasing and none actually needs it (yet). - OPTIMISE_CFLAGS="-O2" - ;; - *) - dnl Switch on optimisation but keep strict-aliasing off for - dnl now (see -fstrict-aliasing in the gcc manual). When it is - dnl switched back on consider using -Wstrict-aliasing=2. - OPTIMISE_CFLAGS="-O2 -fno-strict-aliasing" - ;; - esac + if test "$wxUSE_OPTIMISE" = "no" ; then + if test "$GCC" = yes ; then + dnl use -O0 because compiling with it is faster than compiling with no + dnl optimization options at all (at least with g++ 3.2) + OPTIMISE_CFLAGS="-O0" + fi else - OPTIMISE_CFLAGS="-O" + if test "$GCC" = yes ; then + case "${host}" in + *-pc-os2_emx | *-pc-os2-emx ) + dnl Not all of the supported gcc versions understand + dnl -fstrict-aliasing and none actually needs it (yet). + OPTIMISE_CFLAGS="-O2" + ;; + *) + dnl Switch on optimisation but keep strict-aliasing off for + dnl now (see -fstrict-aliasing in the gcc manual). When it is + dnl switched back on consider using -Wstrict-aliasing=2. + OPTIMISE_CFLAGS="-O2 -fno-strict-aliasing" + ;; + esac + else + OPTIMISE_CFLAGS="-O" + fi fi fi @@ -6654,7 +6684,6 @@ fi if test "$wxUSE_EDITABLELISTBOX" = "yes"; then AC_DEFINE(wxUSE_EDITABLELISTBOX) USES_CONTROLS=1 - SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS editlbox" fi if test "$wxUSE_NOTEBOOK" = "yes"; then @@ -7376,9 +7405,8 @@ if test "$wxUSE_GUI" = "yes"; then dnl TODO some samples are never built so far: mfc (requires VC++) SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS artprov controls dialogs drawing \ - erase event exec font image minimal mobile \ - mobile/wxedit mobile/styles render \ - shaped svg taborder vscroll widgets" + erase event exec font image minimal render \ + shaped svg taborder vscroll widgets wrapsizer" if test "$wxUSE_MONOLITHIC" != "yes"; then SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS console"