dnl the file passed to AC_CONFIG_SRCDIR should be specific to our package
AC_CONFIG_SRCDIR([wx-config.in])
-dnl sets build, host, target variables and the same with _alias
+dnl sets build, host variables and the same with _alias
AC_CANONICAL_BUILD
AC_CANONICAL_HOST
-AC_CANONICAL_TARGET
+dnl notice that if --host was given but --build was not, cross_compiling is
+dnl only set to "maybe" and not "yes" and will be either set to "yes" later or
+dnl configure will exit with error in AC_PROG_CC so don't test for = "yes" here
+if test "$cross_compiling" != "no"; then
+ HOST_PREFIX="${host_alias}-"
+ HOST_SUFFIX="-$host_alias"
+else
+ HOST_PREFIX=
+ HOST_SUFFIX=
+fi
dnl When making releases do:
dnl
PROGRAM_EXT=
SAMPLES_RPATH_FLAG=
-SAMPLES_RPATH_POSTLINK=
+DYLIB_RPATH_INSTALL=
+DYLIB_RPATH_POSTLINK=
DEFAULT_STD_FLAG=yes
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 ---------------------------------------------------------------------------
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
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)
DEFAULT_wxUSE_CONTROLS=none
WX_ARG_DISABLE(controls, [ --disable-controls disable compilation of all standard controls], wxUSE_CONTROLS)
-dnl even with --enable-controls, some may be disabled by giving
-dnl --disable-<control> later on the command line - but by default all will be
-dnl used (and vice versa)
-if test "$wxUSE_CONTROLS" = "yes"; then
- DEFAULT_wxUSE_ACCEL=yes
- DEFAULT_wxUSE_ANIMATIONCTRL=yes
- DEFAULT_wxUSE_BMPBUTTON=yes
- DEFAULT_wxUSE_BUTTON=yes
- DEFAULT_wxUSE_CALCTRL=yes
- DEFAULT_wxUSE_CARET=yes
- DEFAULT_wxUSE_COMBOBOX=yes
- DEFAULT_wxUSE_CHECKBOX=yes
- DEFAULT_wxUSE_CHECKLISTBOX=yes
- DEFAULT_wxUSE_CHOICE=yes
- DEFAULT_wxUSE_CHOICEBOOK=yes
- DEFAULT_wxUSE_COLLPANE=yes
- DEFAULT_wxUSE_COLOURPICKERCTRL=yes
- DEFAULT_wxUSE_COMBOBOX=yes
- DEFAULT_wxUSE_DATEPICKCTRL=yes
- DEFAULT_wxUSE_DISPLAY=yes
- DEFAULT_wxUSE_DETECT_SM=yes
- DEFAULT_wxUSE_DIRPICKERCTRL=yes
- DEFAULT_wxUSE_FILECTRL=yes
- DEFAULT_wxUSE_FILEPICKERCTRL=yes
- DEFAULT_wxUSE_FONTPICKERCTRL=yes
- DEFAULT_wxUSE_GAUGE=yes
- DEFAULT_wxUSE_GRID=yes
- DEFAULT_wxUSE_HYPERLINKCTRL=yes
- DEFAULT_wxUSE_DATAVIEWCTRL=yes
- DEFAULT_wxUSE_IMAGLIST=yes
- DEFAULT_wxUSE_LISTBOOK=yes
- DEFAULT_wxUSE_LISTBOX=yes
- DEFAULT_wxUSE_LISTCTRL=yes
- DEFAULT_wxUSE_NOTEBOOK=yes
- DEFAULT_wxUSE_RADIOBOX=yes
- DEFAULT_wxUSE_RADIOBTN=yes
- DEFAULT_wxUSE_SASH=yes
- DEFAULT_wxUSE_SCROLLBAR=yes
- DEFAULT_wxUSE_SEARCHCTRL=yes
- DEFAULT_wxUSE_SLIDER=yes
- DEFAULT_wxUSE_SPINBTN=yes
- DEFAULT_wxUSE_SPINCTRL=yes
- DEFAULT_wxUSE_SPLITTER=yes
- DEFAULT_wxUSE_STATBMP=yes
- DEFAULT_wxUSE_STATBOX=yes
- DEFAULT_wxUSE_STATLINE=yes
- DEFAULT_wxUSE_STATUSBAR=yes
- DEFAULT_wxUSE_TOGGLEBTN=yes
- DEFAULT_wxUSE_TOOLBAR=yes
- DEFAULT_wxUSE_TOOLBAR_NATIVE=yes
- DEFAULT_wxUSE_TOOLTIPS=yes
- DEFAULT_wxUSE_TREEBOOK=yes
- DEFAULT_wxUSE_TOOLBOOK=yes
- DEFAULT_wxUSE_TREECTRL=yes
- DEFAULT_wxUSE_POPUPWIN=yes
- DEFAULT_wxUSE_TIPWINDOW=yes
-elif test "$wxUSE_CONTROLS" = "no"; then
- DEFAULT_wxUSE_ACCEL=no
- DEFAULT_wxUSE_ANIMATIONCTRL=no
- DEFAULT_wxUSE_BMPBUTTON=no
- DEFAULT_wxUSE_BUTTON=no
- DEFAULT_wxUSE_CALCTRL=no
- DEFAULT_wxUSE_CARET=no
- DEFAULT_wxUSE_COLLPANE=no
- DEFAULT_wxUSE_COMBOBOX=no
- DEFAULT_wxUSE_CHECKBOX=no
- DEFAULT_wxUSE_CHECKLISTBOX=no
- DEFAULT_wxUSE_CHOICE=no
- DEFAULT_wxUSE_CHOICEBOOK=no
- DEFAULT_wxUSE_COLOURPICKERCTRL=no
- DEFAULT_wxUSE_COMBOBOX=no
- DEFAULT_wxUSE_DATEPICKCTRL=no
- DEFAULT_wxUSE_DISPLAY=no
- DEFAULT_wxUSE_DETECT_SM=no
- DEFAULT_wxUSE_DIRPICKERCTRL=no
- DEFAULT_wxUSE_FILECTRL=no
- DEFAULT_wxUSE_FILEPICKERCTRL=no
- DEFAULT_wxUSE_FONTPICKERCTRL=no
- DEFAULT_wxUSE_GAUGE=no
- DEFAULT_wxUSE_GRID=no
- DEFAULT_wxUSE_HYPERLINKCTRL=no
- DEFAULT_wxUSE_DATAVIEWCTRL=no
- DEFAULT_wxUSE_IMAGLIST=no
- DEFAULT_wxUSE_LISTBOOK=no
- DEFAULT_wxUSE_LISTBOX=no
- DEFAULT_wxUSE_LISTCTRL=no
- DEFAULT_wxUSE_NOTEBOOK=no
- DEFAULT_wxUSE_RADIOBOX=no
- DEFAULT_wxUSE_RADIOBTN=no
- DEFAULT_wxUSE_SASH=no
- DEFAULT_wxUSE_SCROLLBAR=no
- DEFAULT_wxUSE_SEARCHCTRL=no
- DEFAULT_wxUSE_SLIDER=no
- DEFAULT_wxUSE_SPINBTN=no
- DEFAULT_wxUSE_SPINCTRL=no
- DEFAULT_wxUSE_SPLITTER=no
- DEFAULT_wxUSE_STATBMP=no
- DEFAULT_wxUSE_STATBOX=no
- DEFAULT_wxUSE_STATLINE=no
- DEFAULT_wxUSE_STATUSBAR=no
- DEFAULT_wxUSE_TOGGLEBTN=no
- DEFAULT_wxUSE_TOOLBAR=no
- DEFAULT_wxUSE_TOOLBAR_NATIVE=no
- DEFAULT_wxUSE_TOOLTIPS=no
- DEFAULT_wxUSE_TREEBOOK=no
- DEFAULT_wxUSE_TOOLBOOK=no
- DEFAULT_wxUSE_TREECTRL=no
- DEFAULT_wxUSE_POPUPWIN=no
- DEFAULT_wxUSE_TIPWINDOW=no
+dnl even with --disable-controls, some may be enabled by an explicit
+dnl --enable-<control> later on the command line -- but by default all will be
+dnl disabled
+if test "$wxUSE_CONTROLS" = "no"; then
+ DEFAULT_wxUSE_ACCEL=no
+ DEFAULT_wxUSE_ANIMATIONCTRL=no
+ DEFAULT_wxUSE_BMPBUTTON=no
+ DEFAULT_wxUSE_BUTTON=no
+ DEFAULT_wxUSE_CALCTRL=no
+ DEFAULT_wxUSE_CARET=no
+ DEFAULT_wxUSE_CHECKBOX=no
+ DEFAULT_wxUSE_CHECKLISTBOX=no
+ DEFAULT_wxUSE_CHOICE=no
+ DEFAULT_wxUSE_CHOICEBOOK=no
+ DEFAULT_wxUSE_COLLPANE=no
+ DEFAULT_wxUSE_COLOURPICKERCTRL=no
+ DEFAULT_wxUSE_COMBOBOX=no
+ DEFAULT_wxUSE_COMBOBOX=no
+ DEFAULT_wxUSE_DATAVIEWCTRL=no
+ DEFAULT_wxUSE_DATEPICKCTRL=no
+ DEFAULT_wxUSE_DETECT_SM=no
+ DEFAULT_wxUSE_DIRPICKERCTRL=no
+ DEFAULT_wxUSE_DISPLAY=no
+ DEFAULT_wxUSE_FILECTRL=no
+ DEFAULT_wxUSE_FILEPICKERCTRL=no
+ DEFAULT_wxUSE_FONTPICKERCTRL=no
+ DEFAULT_wxUSE_GAUGE=no
+ DEFAULT_wxUSE_GRID=no
+ DEFAULT_wxUSE_HEADERCTRL=no
+ DEFAULT_wxUSE_HYPERLINKCTRL=no
+ DEFAULT_wxUSE_IMAGLIST=no
+ DEFAULT_wxUSE_LISTBOOK=no
+ DEFAULT_wxUSE_LISTBOX=no
+ DEFAULT_wxUSE_LISTCTRL=no
+ DEFAULT_wxUSE_NOTEBOOK=no
+ DEFAULT_wxUSE_POPUPWIN=no
+ DEFAULT_wxUSE_RADIOBOX=no
+ DEFAULT_wxUSE_RADIOBTN=no
+ DEFAULT_wxUSE_REARRANGECTRL=no
+ DEFAULT_wxUSE_SASH=no
+ DEFAULT_wxUSE_SCROLLBAR=no
+ DEFAULT_wxUSE_SEARCHCTRL=no
+ DEFAULT_wxUSE_SLIDER=no
+ DEFAULT_wxUSE_SPINBTN=no
+ DEFAULT_wxUSE_SPINCTRL=no
+ DEFAULT_wxUSE_SPLITTER=no
+ DEFAULT_wxUSE_STATBMP=no
+ DEFAULT_wxUSE_STATBOX=no
+ DEFAULT_wxUSE_STATLINE=no
+ DEFAULT_wxUSE_STATUSBAR=no
+ DEFAULT_wxUSE_TIPWINDOW=no
+ DEFAULT_wxUSE_TOGGLEBTN=no
+ DEFAULT_wxUSE_TOOLBAR=no
+ DEFAULT_wxUSE_TOOLBAR_NATIVE=no
+ DEFAULT_wxUSE_TOOLBOOK=no
+ DEFAULT_wxUSE_TOOLTIPS=no
+ DEFAULT_wxUSE_TREEBOOK=no
+ DEFAULT_wxUSE_TREECTRL=no
fi
+dnl please keep the settings below in alphabetical order
WX_ARG_FEATURE(accel, [ --enable-accel use accelerators], wxUSE_ACCEL)
WX_ARG_FEATURE(animatectrl, [ --enable-animatectrl use wxAnimationCtrl class], wxUSE_ANIMATIONCTRL)
-WX_ARG_FEATURE(button, [ --enable-button use wxButton class], wxUSE_BUTTON)
WX_ARG_FEATURE(bmpbutton, [ --enable-bmpbutton use wxBitmapButton class], wxUSE_BMPBUTTON)
WX_ARG_FEATURE(bmpcombobox, [ --enable-bmpcombobox use wxBitmapComboBox class], wxUSE_BITMAPCOMBOBOX)
+WX_ARG_FEATURE(button, [ --enable-button use wxButton class], wxUSE_BUTTON)
WX_ARG_FEATURE(calendar, [ --enable-calendar use wxCalendarCtrl class], wxUSE_CALCTRL)
WX_ARG_FEATURE(caret, [ --enable-caret use wxCaret class], wxUSE_CARET)
WX_ARG_FEATURE(checkbox, [ --enable-checkbox use wxCheckBox class], wxUSE_CHECKBOX)
WX_ARG_FEATURE(colourpicker,[ --enable-colourpicker use wxColourPickerCtrl class], wxUSE_COLOURPICKERCTRL)
WX_ARG_FEATURE(combobox, [ --enable-combobox use wxComboBox class], wxUSE_COMBOBOX)
WX_ARG_FEATURE(comboctrl, [ --enable-comboctrl use wxComboCtrl class], wxUSE_COMBOCTRL)
+WX_ARG_FEATURE(dataviewctrl,[ --enable-dataviewctrl use wxDataViewCtrl class], wxUSE_DATAVIEWCTRL)
WX_ARG_FEATURE(datepick, [ --enable-datepick use wxDatePickerCtrl class], wxUSE_DATEPICKCTRL)
+WX_ARG_FEATURE(detect_sm, [ --enable-detect_sm use code to detect X11 session manager], wxUSE_DETECT_SM)
WX_ARG_FEATURE(dirpicker, [ --enable-dirpicker use wxDirPickerCtrl class], wxUSE_DIRPICKERCTRL)
WX_ARG_FEATURE(display, [ --enable-display use wxDisplay class], wxUSE_DISPLAY)
-WX_ARG_FEATURE(detect_sm, [ --enable-detect_sm use code to detect X11 session manager], wxUSE_DETECT_SM)
WX_ARG_FEATURE(editablebox, [ --enable-editablebox use wxEditableListBox class], wxUSE_EDITABLELISTBOX)
-WX_ARG_FEATURE(filepicker, [ --enable-filepicker use wxFilePickerCtrl class], wxUSE_FILEPICKERCTRL)
WX_ARG_FEATURE(filectrl, [ --enable-filectrl use wxFileCtrl class], wxUSE_FILECTRL)
+WX_ARG_FEATURE(filepicker, [ --enable-filepicker use wxFilePickerCtrl class], wxUSE_FILEPICKERCTRL)
WX_ARG_FEATURE(fontpicker, [ --enable-fontpicker use wxFontPickerCtrl class], wxUSE_FONTPICKERCTRL)
WX_ARG_FEATURE(gauge, [ --enable-gauge use wxGauge class], wxUSE_GAUGE)
WX_ARG_FEATURE(grid, [ --enable-grid use wxGrid class], wxUSE_GRID)
-WX_ARG_FEATURE(dataviewctrl,[ --enable-dataviewctrl use wxDataViewCtrl class], wxUSE_DATAVIEWCTRL)
+WX_ARG_FEATURE(headerctrl, [ --enable-headerctrl use wxHeaderCtrl class], wxUSE_HEADERCTRL)
WX_ARG_FEATURE(hyperlink, [ --enable-hyperlink use wxHyperlinkCtrl class], wxUSE_HYPERLINKCTRL)
WX_ARG_FEATURE(imaglist, [ --enable-imaglist use wxImageList class], wxUSE_IMAGLIST)
WX_ARG_FEATURE(listbook, [ --enable-listbook use wxListbook class], wxUSE_LISTBOOK)
WX_ARG_FEATURE(notebook, [ --enable-notebook use wxNotebook class], wxUSE_NOTEBOOK)
WX_ARG_FEATURE(notifmsg, [ --enable-notifmsg use wxNotificationMessage class], wxUSE_NOTIFICATION_MESSAGE)
WX_ARG_FEATURE(odcombobox, [ --enable-odcombobox use wxOwnerDrawnComboBox class], wxUSE_ODCOMBOBOX)
+WX_ARG_FEATURE(popupwin, [ --enable-popupwin use wxPopUpWindow class], wxUSE_POPUPWIN)
WX_ARG_FEATURE(radiobox, [ --enable-radiobox use wxRadioBox class], wxUSE_RADIOBOX)
WX_ARG_FEATURE(radiobtn, [ --enable-radiobtn use wxRadioButton class], wxUSE_RADIOBTN)
+WX_ARG_FEATURE(rearrangectrl,[ --enable-rearrangectrl use wxRearrangeList/Ctrl/Dialog], wxUSE_REARRANGECTRL)
WX_ARG_FEATURE(sash, [ --enable-sash use wxSashWindow class], wxUSE_SASH)
WX_ARG_FEATURE(scrollbar, [ --enable-scrollbar use wxScrollBar class and scrollable windows], wxUSE_SCROLLBAR)
WX_ARG_FEATURE(searchctrl, [ --enable-searchctrl use wxSearchCtrl class], wxUSE_SEARCHCTRL)
WX_ARG_FEATURE(stattext, [ --enable-stattext use wxStaticText class], wxUSE_STATTEXT)
WX_ARG_FEATURE(statusbar, [ --enable-statusbar use wxStatusBar class], wxUSE_STATUSBAR)
WX_ARG_FEATURE(taskbaricon, [ --enable-taskbaricon use wxTaskBarIcon class], wxUSE_TASKBARICON)
+WX_ARG_FEATURE(tbarnative, [ --enable-tbarnative use native wxToolBar class], wxUSE_TOOLBAR_NATIVE)
WX_ARG_FEATURE(textctrl, [ --enable-textctrl use wxTextCtrl class], wxUSE_TEXTCTRL)
+WX_ARG_FEATURE(tipwindow, [ --enable-tipwindow use wxTipWindow class], wxUSE_TIPWINDOW)
WX_ARG_FEATURE(togglebtn, [ --enable-togglebtn use wxToggleButton class], wxUSE_TOGGLEBTN)
WX_ARG_FEATURE(toolbar, [ --enable-toolbar use wxToolBar class], wxUSE_TOOLBAR)
-WX_ARG_FEATURE(tbarnative, [ --enable-tbarnative use native wxToolBar class], wxUSE_TOOLBAR_NATIVE)
-WX_ARG_FEATURE(treebook, [ --enable-treebook use wxTreebook class], wxUSE_TREEBOOK)
WX_ARG_FEATURE(toolbook, [ --enable-toolbook use wxToolbook class], wxUSE_TOOLBOOK)
+WX_ARG_FEATURE(treebook, [ --enable-treebook use wxTreebook class], wxUSE_TREEBOOK)
WX_ARG_FEATURE(treectrl, [ --enable-treectrl use wxTreeCtrl class], wxUSE_TREECTRL)
-WX_ARG_FEATURE(tipwindow, [ --enable-tipwindow use wxTipWindow class], wxUSE_TIPWINDOW)
-WX_ARG_FEATURE(popupwin, [ --enable-popupwin use wxPopUpWindow class], wxUSE_POPUPWIN)
dnl ---------------------------------------------------------------------------
dnl common dialogs
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
;;
*-*-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) \$@"
+ DYLIB_RPATH_POSTLINK="${HOST_PREFIX}install_name_tool -id \$@ \$@"
cat <<EOF >change-install-names
#!/bin/sh
libnames=\`cd \${1} ; ls -1 | grep '\.[[0-9]][[0-9]]*\.dylib\$'\`
-inst_cmd="install_name_tool "
for i in \${libnames} ; do
- inst_cmd="\${inst_cmd} -change \${2}/lib/\${i} \${1}/\${i}"
+ ${HOST_PREFIX}install_name_tool -id \${1}/\${i} \${1}/\${i}
+ for dep in \${libnames} ; do
+ ${HOST_PREFIX}install_name_tool -change \${2}/\${dep} \${1}/\${dep} \${1}/\${i}
+ done
done
-\${inst_cmd} \${3}
EOF
chmod +x change-install-names
+ DYLIB_RPATH_INSTALL="\$(wx_top_builddir)/change-install-names \${libdir} \$(wx_top_builddir)/lib"
fi
+
+ dnl the HEADER_PAD_OPTION is required by some wx samples to avoid the error:
+ dnl "install_name_tool: changing install names can't be redone for: the_exe_name
+ dnl (for architecture ppc) because larger updated load commands do not fit
+ dnl (the program must be relinked)"
+ HEADER_PAD_OPTION="-headerpad_max_install_names"
;;
*-*-cygwin* | *-*-mingw32* )
if test $wxUSE_RPATH = "no"; then
SAMPLES_RPATH_FLAG=''
- SAMPLES_RPATH_POSTLINK=''
+ DYLIB_PATH_POSTLINK=''
WXCONFIG_RPATH=''
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.
dnl If we ever need to do that, we won't need to keep these.
-WX_LIBRARY_BASENAME_NOGUI="wx_base${WXBASEPORT}${lib_unicode_suffix}${lib_debug_suffix}${WX_LIB_FLAVOUR}"
+
+if test "$wxUSE_OSX_CARBON" = 1 -o "$wxUSE_OSX_COCOA" = 1 -o "$wxUSE_COCOA" = 1; then
+ WX_LIBRARY_BASENAME_NOGUI="wx_base${lib_unicode_suffix}${lib_debug_suffix}${WX_LIB_FLAVOUR}"
+else
+ WX_LIBRARY_BASENAME_NOGUI="wx_base${WXBASEPORT}${lib_unicode_suffix}${lib_debug_suffix}${WX_LIB_FLAVOUR}"
+fi
if test "${TOOLKIT_DIR}" = "os2"; then
WX_LIBRARY_BASENAME_GUI="wx_pm${WIDGET_SET}${lib_unicode_suffix}${lib_debug_suffix}${WX_LIB_FLAVOUR}"
else
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
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
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
fi
if test "$wxUSE_DATETIME" = "yes"; then
- dnl check for strptime and for its declaration as some systems lack it
- AC_CHECK_FUNC(strptime)
- if test "$ac_cv_func_strptime" = "yes"; then
- AC_CACHE_CHECK([for strptime declaration], wx_cv_func_strptime_decl,
- [
- AC_LANG_PUSH(C++)
- AC_TRY_COMPILE(
- [
- #include <time.h>
- ],
- [
- struct tm t;
- strptime("foo", "bar", &t);
- ],
- wx_cv_func_strptime_decl=yes,
- wx_cv_func_strptime_decl=no
- )
- AC_LANG_POP()
- ]
- )
- fi
- if test "$wx_cv_func_strptime_decl" = "yes"; then
- AC_DEFINE(HAVE_STRPTIME_DECL)
- else
- wx_strptime_decl="extern char *strptime(const char *, const char *, struct tm *);"
- fi
- if test "$ac_cv_func_strptime" = "yes"; then
- dnl strptime() behaviour doesn't conform to POSIX under Mac OS X <
- dnl 10.5 and possibly other BSD variants, check that strptime() we
- dnl have fails to parse format when the string doesn't match it instea
- dnl of just stopping immediately and returning non-NULL
- AC_CACHE_CHECK([whether strptime() fails on invalid strings],
- wx_cv_func_strptime_ok,
- [AC_RUN_IFELSE(
- [
- #include <stdlib.h>
- #include <time.h>
- #include "confdefs.h"
-
- $wx_strptime_decl
-
- int main()
- {
- struct tm t;
- return !!strptime("", "%x", &t);
- }
- ],
- wx_cv_func_strptime_ok=yes,
- wx_cv_func_strptime_ok=no,
- dnl be pessimistic when cross-compiling
- wx_cv_func_strptime_ok=no
- )]
- )
-
- if test "$wx_cv_func_strptime_ok" = "yes"; then
- AC_DEFINE(HAVE_STRPTIME)
- fi
- fi
-
dnl check for timezone variable
dnl doesn't exist under Darwin / Mac OS X which uses tm_gmtoff instead
AC_CACHE_CHECK(for timezone variable in <time.h>,
SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS grid"
fi
+if test "$wxUSE_HEADERCTRL" = "yes"; then
+ AC_DEFINE(wxUSE_HEADERCTRL)
+ USES_CONTROLS=1
+fi
+
if test "$wxUSE_HYPERLINKCTRL" = "yes"; then
AC_DEFINE(wxUSE_HYPERLINKCTRL)
USES_CONTROLS=1
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
USES_CONTROLS=1
fi
+if test "$wxUSE_REARRANGECTRL" = "yes"; then
+ AC_DEFINE(wxUSE_REARRANGECTRL)
+fi
+
if test "$wxUSE_SASH" = "yes"; then
AC_DEFINE(wxUSE_SASH)
SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS sashtest"
dnl get the string with OS info - used by wxGetOsDescription() on MacOS X
dnl ---------------------------------------------------------------------------
-if test "$cross_compiling" = "yes"; then
+if test "$cross_compiling" != "no"; then
dnl Use best guess from host as we can't use uname when cross compiling
OSINFO="\"$host\""
else
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"
fi
AC_SUBST(TOOLKIT_LOWERCASE)
AC_SUBST(TOOLKIT_VERSION)
+AC_SUBST(DYLIB_RPATH_INSTALL)
+AC_SUBST(DYLIB_RPATH_POSTLINK)
AC_SUBST(SAMPLES_RPATH_FLAG)
-AC_SUBST(SAMPLES_RPATH_POSTLINK)
+AC_SUBST(HEADER_PAD_OPTION)
AC_SUBST(HOST_SUFFIX)
AC_SUBST(CPPUNIT_CFLAGS)
AC_SUBST(CPPUNIT_LIBS)