dnl initialization
dnl ---------------------------------------------------------------------------
-AC_INIT([wxWidgets], [2.7.0], [wx-dev@lists.wxwidgets.org])
+AC_INIT([wxWidgets], [2.7.1], [wx-dev@lists.wxwidgets.org])
dnl the file passed to AC_CONFIG_SRCDIR should be specific to our package
AC_CONFIG_SRCDIR([wx-config.in])
wx_major_version_number=2
wx_minor_version_number=7
-wx_release_number=0
+wx_release_number=2
wx_subrelease_number=0
WX_RELEASE=$wx_major_version_number.$wx_minor_version_number
dnl the list of all available toolkits
dnl
dnl update NUM_TOOLKITS calculation below when adding a new toolkit here!
-ALL_TOOLKITS="COCOA GTK MAC MGL MICROWIN MOTIF MSW PM X11"
+ALL_TOOLKITS="COCOA GTK MAC MGL MICROWIN MOTIF MSW PM X11 DFB"
dnl NB: these wxUSE_XXX constants have value of 0 or 1 unlike all the other ones
dnl which are either yes or no
DEFAULT_wxUSE_MSW=0
DEFAULT_wxUSE_PM=0
DEFAULT_wxUSE_X11=0
+DEFAULT_wxUSE_DFB=0
dnl these are the values which are really default for the given platform -
dnl they're not cached and are only used if no --with-toolkit was given *and*
DEFAULT_DEFAULT_wxUSE_MSW=0
DEFAULT_DEFAULT_wxUSE_PM=0
DEFAULT_DEFAULT_wxUSE_X11=0
+DEFAULT_DEFAULT_wxUSE_DFB=0
PROGRAM_EXT=
SO_SUFFIX=so
AC_DEFINE(__BSD__)
DEFAULT_DEFAULT_wxUSE_GTK=1
;;
- *-*-openbsd*)
+ *-*-openbsd*|*-*-mirbsd*)
USE_BSD=1
USE_OPENBSD=1
AC_DEFINE(__OPENBSD__)
AC_DEFINE(__NETBSD__)
AC_DEFINE(__BSD__)
DEFAULT_DEFAULT_wxUSE_GTK=1
+ NEEDS_D_REENTRANT_FOR_R_FUNCS=1
+
+ dnl some standard declarations in NetBSD headers are only included if
+ dnl _NETBSD_SOURCE and _LIBC are defined, e.g. getservbyname_r in netdb.h
+ CPPFLAGS="-D_NETBSD_SOURCE -D_LIBC $CPPFLAGS"
;;
*-*-osf* )
USE_ALPHA=1
SO_SUFFIX=dll
PROGRAM_EXT=".exe"
DEFAULT_DEFAULT_wxUSE_MSW=1
- DEFAULT_STD_FLAG=no
;;
*-pc-msdosdjgpp )
;;
*)
- AC_MSG_ERROR(unknown system type ${host}.)
+ AC_MSG_WARN([*** System type ${host} is unknown, assuming generic Unix and continuing nevertheless.])
+ AC_MSG_WARN([*** Please report the build results to wx-dev@lists.wxwidgets.org.])
+
+ DEFAULT_DEFAULT_wxUSE_X11=1
+ DEFAULT_wxUSE_SHARED=no
esac
dnl ---------------------------------------------------------------------------
DEFAULT_wxUSE_THREADS=yes
- DEFAULT_wxUSE_SHARED=yes
+ DEFAULT_wxUSE_SHARED=${DEFAULT_wxUSE_SHARED:-yes}
DEFAULT_wxUSE_OPTIMISE=no
DEFAULT_wxUSE_PROFILE=no
DEFAULT_wxUSE_NO_DEPS=no
DEFAULT_wxUSE_NO_RTTI=no
DEFAULT_wxUSE_NO_EXCEPTIONS=no
+ DEFAULT_wxUSE_UNIVERSAL_BINARY=no
DEFAULT_wxUSE_RPATH=yes
DEFAULT_wxUSE_PERMISSIVE=no
DEFAULT_wxUSE_DEBUG_FLAG=yes
DEFAULT_wxUSE_LIBMSPACK=no
DEFAULT_wxUSE_LIBSDL=no
DEFAULT_wxUSE_LIBGNOMEPRINT=no
+ DEFAULT_wxUSE_LIBGNOMEVFS=no
DEFAULT_wxUSE_LIBHILDON=no
DEFAULT_wxUSE_ODBC=no
DEFAULT_wxUSE_OPENGL=no
DEFAULT_wxUSE_TEXTFILE=no
DEFAULT_wxUSE_SOUND=no
DEFAULT_wxUSE_MEDIACTRL=no
+ DEFAULT_wxUSE_GSTREAMER8=no
+ DEFAULT_wxUSE_PRINTF_POS_PARAMS=no
DEFAULT_wxUSE_INTL=no
DEFAULT_wxUSE_CONFIG=no
DEFAULT_wxUSE_FONTMAP=no
DEFAULT_wxUSE_PROTOCOL_FTP=no
DEFAULT_wxUSE_PROTOCOL_FILE=no
DEFAULT_wxUSE_URL=no
+ DEFAULT_wxUSE_VARIANT=no
+ DEFAULT_wxUSE_ABOUTDLG=no
DEFAULT_wxUSE_COMMONDLGS=no
DEFAULT_wxUSE_CHOICEDLG=no
DEFAULT_wxUSE_COLOURDLG=no
DEFAULT_wxUSE_HTML=no
DEFAULT_wxUSE_RICHTEXT=no
DEFAULT_wxUSE_XRC=no
+ DEFAULT_wxUSE_AUI=no
DEFAULT_wxUSE_WEBKIT=no
DEFAULT_wxUSE_FILESYSTEM=no
DEFAULT_wxUSE_FS_INET=no
DEFAULT_wxUSE_FS_ZIP=no
+ DEFAULT_wxUSE_FS_ARCHIVE=no
DEFAULT_wxUSE_BUSYINFO=no
DEFAULT_wxUSE_ARCHIVE_STREAMS=no
DEFAULT_wxUSE_ZIPSTREAM=no
+ DEFAULT_wxUSE_TARSTREAM=no
DEFAULT_wxUSE_VALIDATORS=no
DEFAULT_wxUSE_ACCEL=no
+ DEFAULT_wxUSE_ANIMATIONCTRL=no
DEFAULT_wxUSE_BUTTON=no
DEFAULT_wxUSE_BMPBUTTON=no
+ DEFAULT_wxUSE_BITMAPCOMBOBOX=no
DEFAULT_wxUSE_CALCTRL=no
DEFAULT_wxUSE_CARET=no
DEFAULT_wxUSE_CHECKBOX=no
DEFAULT_wxUSE_CHECKLST=no
DEFAULT_wxUSE_CHOICE=no
DEFAULT_wxUSE_CHOICEBOOK=no
+ DEFAULT_wxUSE_COLOURPICKERCTRL=no
DEFAULT_wxUSE_COMBOBOX=no
+ DEFAULT_wxUSE_COMBOCTRL=no
DEFAULT_wxUSE_DATEPICKCTRL=no
DEFAULT_wxUSE_DISPLAY=no
+ DEFAULT_wxUSE_DETECT_SM=no
+ DEFAULT_wxUSE_DIRPICKERCTRL=no
+ DEFAULT_wxUSE_FILEPICKERCTRL=no
+ DEFAULT_wxUSE_FONTPICKERCTRL=no
DEFAULT_wxUSE_GAUGE=no
+ DEFAULT_wxUSE_GRAPHICS_CONTEXT=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_ODCOMBOBOX=no
DEFAULT_wxUSE_RADIOBOX=no
DEFAULT_wxUSE_RADIOBTN=no
DEFAULT_wxUSE_SASH=no
DEFAULT_wxUSE_STATLINE=no
DEFAULT_wxUSE_STATTEXT=no
DEFAULT_wxUSE_STATUSBAR=yes
- DEFAULT_wxUSE_TABDIALOG=no
+ DEFAULT_wxUSE_TAB_DIALOG=no
DEFAULT_wxUSE_TEXTCTRL=no
DEFAULT_wxUSE_TOGGLEBTN=no
DEFAULT_wxUSE_TOOLBAR=no
DEFAULT_wxUSE_TOOLBAR_NATIVE=no
- DEFAULT_wxUSE_TOOLBAR_SIMPLE=no
DEFAULT_wxUSE_TREEBOOK=no
+ DEFAULT_wxUSE_TOOLBOOK=no
DEFAULT_wxUSE_TREECTRL=no
DEFAULT_wxUSE_POPUPWIN=no
DEFAULT_wxUSE_TIPWINDOW=no
DEFAULT_wxUSE_THREADS=yes
- DEFAULT_wxUSE_SHARED=yes
+ DEFAULT_wxUSE_SHARED=${DEFAULT_wxUSE_SHARED:-yes}
DEFAULT_wxUSE_OPTIMISE=yes
DEFAULT_wxUSE_PROFILE=no
DEFAULT_wxUSE_NO_DEPS=no
DEFAULT_wxUSE_NO_RTTI=no
DEFAULT_wxUSE_NO_EXCEPTIONS=no
+ DEFAULT_wxUSE_UNIVERSAL_BINARY=no
DEFAULT_wxUSE_RPATH=yes
DEFAULT_wxUSE_PERMISSIVE=no
DEFAULT_wxUSE_DEBUG_FLAG=no
DEFAULT_wxUSE_LIBMSPACK=yes
DEFAULT_wxUSE_LIBSDL=no
DEFAULT_wxUSE_LIBGNOMEPRINT=no
+ DEFAULT_wxUSE_LIBGNOMEVFS=no
DEFAULT_wxUSE_LIBHILDON=no
DEFAULT_wxUSE_ODBC=no
DEFAULT_wxUSE_OPENGL=no
DEFAULT_wxUSE_TEXTFILE=yes
DEFAULT_wxUSE_SOUND=yes
DEFAULT_wxUSE_MEDIACTRL=no
+ DEFAULT_wxUSE_GSTREAMER8=no
+ DEFAULT_wxUSE_PRINTF_POS_PARAMS=yes
DEFAULT_wxUSE_INTL=yes
DEFAULT_wxUSE_CONFIG=yes
DEFAULT_wxUSE_FONTMAP=yes
DEFAULT_wxUSE_PROTOCOL_FTP=yes
DEFAULT_wxUSE_PROTOCOL_FILE=yes
DEFAULT_wxUSE_URL=yes
+ DEFAULT_wxUSE_VARIANT=yes
+ DEFAULT_wxUSE_ABOUTDLG=yes
DEFAULT_wxUSE_COMMONDLGS=yes
DEFAULT_wxUSE_CHOICEDLG=yes
DEFAULT_wxUSE_COLOURDLG=yes
DEFAULT_wxUSE_HTML=yes
DEFAULT_wxUSE_RICHTEXT=yes
DEFAULT_wxUSE_XRC=yes
+ DEFAULT_wxUSE_AUI=yes
DEFAULT_wxUSE_WEBKIT=yes
DEFAULT_wxUSE_FILESYSTEM=yes
DEFAULT_wxUSE_FS_INET=yes
DEFAULT_wxUSE_FS_ZIP=yes
+ DEFAULT_wxUSE_FS_ARCHIVE=yes
DEFAULT_wxUSE_BUSYINFO=yes
DEFAULT_wxUSE_ARCHIVE_STREAMS=yes
DEFAULT_wxUSE_ZIPSTREAM=yes
+ DEFAULT_wxUSE_TARSTREAM=yes
DEFAULT_wxUSE_VALIDATORS=yes
DEFAULT_wxUSE_ACCEL=yes
+ DEFAULT_wxUSE_ANIMATIONCTRL=yes
DEFAULT_wxUSE_BUTTON=yes
DEFAULT_wxUSE_BMPBUTTON=yes
+ DEFAULT_wxUSE_BITMAPCOMBOBOX=yes
DEFAULT_wxUSE_CALCTRL=yes
DEFAULT_wxUSE_CARET=yes
DEFAULT_wxUSE_CHECKBOX=yes
DEFAULT_wxUSE_CHECKLST=yes
DEFAULT_wxUSE_CHOICE=yes
DEFAULT_wxUSE_CHOICEBOOK=yes
+ DEFAULT_wxUSE_COLOURPICKERCTRL=yes
DEFAULT_wxUSE_COMBOBOX=yes
+ DEFAULT_wxUSE_COMBOCTRL=yes
DEFAULT_wxUSE_DATEPICKCTRL=yes
DEFAULT_wxUSE_DISPLAY=yes
+ DEFAULT_wxUSE_DETECT_SM=yes
+ DEFAULT_wxUSE_DIRPICKERCTRL=yes
+ DEFAULT_wxUSE_FILEPICKERCTRL=yes
+ DEFAULT_wxUSE_FONTPICKERCTRL=yes
DEFAULT_wxUSE_GAUGE=yes
DEFAULT_wxUSE_GRID=yes
+ DEFAULT_wxUSE_GRAPHICS_CONTEXT=no
+ DEFAULT_wxUSE_HYPERLINKCTRL=yes
+ DEFAULT_wxUSE_DATAVIEWCTRL=no
DEFAULT_wxUSE_IMAGLIST=yes
DEFAULT_wxUSE_LISTBOOK=yes
DEFAULT_wxUSE_LISTBOX=yes
DEFAULT_wxUSE_LISTCTRL=yes
DEFAULT_wxUSE_NOTEBOOK=yes
+ DEFAULT_wxUSE_ODCOMBOBOX=yes
DEFAULT_wxUSE_RADIOBOX=yes
DEFAULT_wxUSE_RADIOBTN=yes
DEFAULT_wxUSE_SASH=yes
DEFAULT_wxUSE_STATLINE=yes
DEFAULT_wxUSE_STATTEXT=yes
DEFAULT_wxUSE_STATUSBAR=yes
- DEFAULT_wxUSE_TABDIALOG=no
+ DEFAULT_wxUSE_TAB_DIALOG=no
DEFAULT_wxUSE_TEXTCTRL=yes
DEFAULT_wxUSE_TOGGLEBTN=yes
DEFAULT_wxUSE_TOOLBAR=yes
DEFAULT_wxUSE_TOOLBAR_NATIVE=yes
- DEFAULT_wxUSE_TOOLBAR_SIMPLE=yes
DEFAULT_wxUSE_TREEBOOK=yes
+ DEFAULT_wxUSE_TOOLBOOK=yes
DEFAULT_wxUSE_TREECTRL=yes
DEFAULT_wxUSE_POPUPWIN=yes
DEFAULT_wxUSE_TIPWINDOW=yes
DEFAULT_wxUSE_PLUGINS=no
DEFAULT_wxUSE_OFFICIAL_BUILD=no
- dnl Appliable only when --with-gtk was used:
+ dnl Applicable only when --with-gtk was used:
DEFAULT_wxUSE_GTK2=yes
fi
AC_ARG_WITH(msw, [ --with-msw use MS-Windows], [wxUSE_MSW="$withval" CACHE_MSW=1 TOOLKIT_GIVEN=1])
AC_ARG_WITH(pm, [ --with-pm use OS/2 Presentation Manager], [wxUSE_PM="$withval" CACHE_PM=1 TOOLKIT_GIVEN=1])
AC_ARG_WITH(mgl, [ --with-mgl use SciTech MGL], [wxUSE_MGL="$withval" wxUSE_UNIVERSAL="yes" CACHE_MGL=1 TOOLKIT_GIVEN=1])
+AC_ARG_WITH(directfb, [ --with-directfb use DirectFB], [wxUSE_DFB="$withval" wxUSE_UNIVERSAL="yes" CACHE_DFB=1 TOOLKIT_GIVEN=1])
AC_ARG_WITH(microwin, [ --with-microwin use MicroWindows], [wxUSE_MICROWIN="$withval" CACHE_MICROWIN=1 TOOLKIT_GIVEN=1])
AC_ARG_WITH(x11, [ --with-x11 use X11], [wxUSE_X11="$withval" wxUSE_UNIVERSAL="yes" CACHE_X11=1 TOOLKIT_GIVEN=1])
WX_ARG_ENABLE(nanox, [ --enable-nanox use NanoX], wxUSE_NANOX)
WX_ARG_SYS_WITH(libxpm, [ --with-libxpm use libxpm (XPM file format)], wxUSE_LIBXPM)
WX_ARG_WITH(libmspack, [ --with-libmspack use libmspack (CHM help files loading)], wxUSE_LIBMSPACK)
WX_ARG_WITH(sdl, [ --with-sdl use SDL for audio on Unix], wxUSE_LIBSDL)
-WX_ARG_WITH(gnomeprint, [ --with-gnomeprint use GNOME print for printing under Unix], wxUSE_LIBGNOMEPRINT)
+WX_ARG_WITH(gnomeprint, [ --with-gnomeprint use GNOME print for printing under GNOME], wxUSE_LIBGNOMEPRINT)
+WX_ARG_WITH(gnomevfs, [ --with-gnomevfs use GNOME VFS for associating MIME types], wxUSE_LIBGNOMEVFS)
WX_ARG_WITH(hildon, [ --with-hildon use Hildon framework for Nokia 770], wxUSE_LIBHILDON)
WX_ARG_WITH(opengl, [ --with-opengl use OpenGL (or Mesa)], wxUSE_OPENGL)
+if test "$wxUSE_UNIVERSAL" = "yes"; then
+ AC_ARG_WITH(themes, [ --with-themes=all|list use only the specified comma-separated list of wxUniversal themes], [wxUNIV_THEMES="$withval"])
+fi
+
fi
dnl for GUI only
WX_ARG_ENABLE(no_exceptions, [ --enable-no_exceptions create code without C++ exceptions handling], wxUSE_NO_EXCEPTIONS)
WX_ARG_ENABLE(permissive, [ --enable-permissive compile code disregarding strict ANSI], wxUSE_PERMISSIVE)
WX_ARG_ENABLE(no_deps, [ --enable-no_deps create code without dependency information], wxUSE_NO_DEPS)
+WX_ARG_ENABLE_PARAM(universal_binary, [[ --enable-universal_binary[=SDK] create Mac PowerPC and Intel Universal binary (not yet working)]], wxUSE_UNIVERSAL_BINARY)
WX_ARG_ENABLE(compat24, [ --enable-compat24 enable wxWidgets 2.4 compatibility], WXWIN_COMPATIBILITY_2_4, enable)
WX_ARG_ENABLE(compat26, [ --disable-compat26 disable wxWidgets 2.6 compatibility], WXWIN_COMPATIBILITY_2_6, disable)
WX_ARG_ENABLE(file, [ --enable-file use wxFile class], wxUSE_FILE)
WX_ARG_ENABLE(filesystem, [ --enable-filesystem use virtual file systems classes], wxUSE_FILESYSTEM)
WX_ARG_ENABLE(fontmap, [ --enable-fontmap use font encodings conversion classes], wxUSE_FONTMAP)
+WX_ARG_ENABLE(fs_archive, [ --enable-fs_archive use virtual archive filesystems], wxUSE_FS_ARCHIVE)
WX_ARG_ENABLE(fs_inet, [ --enable-fs_inet use virtual HTTP/FTP filesystems], wxUSE_FS_INET)
-WX_ARG_ENABLE(fs_zip, [ --enable-fs_zip use virtual ZIP filesystems], wxUSE_FS_ZIP)
+WX_ARG_ENABLE(fs_zip, [ --enable-fs_zip now replaced by fs_archive], wxUSE_FS_ZIP)
WX_ARG_ENABLE(geometry, [ --enable-geometry use geometry class], wxUSE_GEOMETRY)
WX_ARG_ENABLE(log, [ --enable-log use logging system], wxUSE_LOG)
WX_ARG_ENABLE(longlong, [ --enable-longlong use wxLongLong class], wxUSE_LONGLONG)
WX_ARG_ENABLE(stopwatch, [ --enable-stopwatch use wxStopWatch class], wxUSE_STOPWATCH)
WX_ARG_ENABLE(streams, [ --enable-streams use wxStream etc classes], wxUSE_STREAMS)
WX_ARG_ENABLE(system_options,[ --enable-sysoptions use wxSystemOptions], wxUSE_SYSTEM_OPTIONS)
+WX_ARG_ENABLE(tarstream, [ --enable-tarstream use wxTar streams], wxUSE_TARSTREAM)
WX_ARG_ENABLE(textbuf, [ --enable-textbuf use wxTextBuffer class], wxUSE_TEXTBUFFER)
WX_ARG_ENABLE(textfile, [ --enable-textfile use wxTextFile class], wxUSE_TEXTFILE)
WX_ARG_ENABLE(timer, [ --enable-timer use wxTimer class], wxUSE_TIMER)
WX_ARG_ENABLE(unicode, [ --enable-unicode compile wxString with Unicode support], wxUSE_UNICODE)
WX_ARG_ENABLE(sound, [ --enable-sound use wxSound class], wxUSE_SOUND)
WX_ARG_ENABLE(mediactrl, [ --enable-mediactrl use wxMediaCtrl class], wxUSE_MEDIACTRL)
-WX_ARG_ENABLE(wxprintfv, [ --enable-wxprintfv use wxWidgets implementation of vprintf()], wxUSE_EXPERIMENTAL_PRINTF)
+WX_ARG_ENABLE(gstreamer8, [ --enable-gstreamer8 force GStreamer 0.8 instead of 0.10 with the wxMediaCtrl class on unix], wxUSE_GSTREAMER8)
+WX_ARG_ENABLE(printfposparam,[ --enable-printfposparam use wxVsnprintf() which supports positional parameters], wxUSE_PRINTF_POS_PARAMS)
WX_ARG_ENABLE(zipstream, [ --enable-zipstream use wxZip streams], wxUSE_ZIPSTREAM)
WX_ARG_ENABLE(url, [ --enable-url use wxURL class], wxUSE_URL)
+WX_ARG_ENABLE(variant, [ --enable-variant use wxVariant class], wxUSE_VARIANT)
WX_ARG_ENABLE(protocol, [ --enable-protocol use wxProtocol class], wxUSE_PROTOCOL)
WX_ARG_ENABLE(protocol_http, [ --enable-protocol-http HTTP support in wxProtocol], wxUSE_PROTOCOL_HTTP)
WX_ARG_ENABLE(protocol_ftp, [ --enable-protocol-ftp FTP support in wxProtocol], wxUSE_PROTOCOL_FTP)
WX_ARG_ENABLE(html, [ --enable-html use wxHTML sub-library], wxUSE_HTML)
WX_ARG_ENABLE(htmlhelp, [ --enable-htmlhelp use wxHTML-based help], wxUSE_WXHTML_HELP)
WX_ARG_ENABLE(xrc, [ --enable-xrc use XRC resources sub-library], wxUSE_XRC)
+WX_ARG_ENABLE(aui, [ --enable-aui use AUI docking library], wxUSE_AUI)
WX_ARG_ENABLE(constraints, [ --enable-constraints use layout-constraints system], wxUSE_CONSTRAINTS)
WX_ARG_ENABLE(printarch, [ --enable-printarch use printing architecture], wxUSE_PRINTING_ARCHITECTURE)
WX_ARG_ENABLE(mdi, [ --enable-mdi use multiple document interface architecture], wxUSE_MDI)
WX_ARG_ENABLE(logdialog, [ --enable-logdialog use wxLogDialog], wxUSE_LOGDIALOG)
WX_ARG_ENABLE(webkit, [ --enable-webkit use wxWebKitCtrl (Mac)], wxUSE_WEBKIT)
WX_ARG_ENABLE(html, [ --enable-richtext use wxRichTextCtrl], wxUSE_RICHTEXT)
+WX_ARG_ENABLE(graphics_ctx, [ --enable-graphics_ctx use graphics context 2D drawing API], wxUSE_GRAPHICS_CONTEXT)
dnl ---------------------------------------------------------------------------
dnl PostScript options
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_CHECKLISTBOX=yes
DEFAULT_wxUSE_CHOICE=yes
DEFAULT_wxUSE_CHOICEBOOK=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_FILEPICKERCTRL=yes
+ DEFAULT_wxUSE_FONTPICKERCTRL=yes
DEFAULT_wxUSE_GAUGE=yes
DEFAULT_wxUSE_GRID=yes
+ DEFAULT_wxUSE_HYPERLINKCTRL=yes
+ DEFAULT_wxUSE_DATAVIEWCTRL=no
DEFAULT_wxUSE_IMAGLIST=yes
DEFAULT_wxUSE_LISTBOOK=yes
DEFAULT_wxUSE_LISTBOX=yes
DEFAULT_wxUSE_TOGGLEBTN=yes
DEFAULT_wxUSE_TOOLBAR=yes
DEFAULT_wxUSE_TOOLBAR_NATIVE=yes
- DEFAULT_wxUSE_TOOLBAR_SIMPLE=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_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_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_TOGGLEBTN=no
DEFAULT_wxUSE_TOOLBAR=no
DEFAULT_wxUSE_TOOLBAR_NATIVE=no
- DEFAULT_wxUSE_TOOLBAR_SIMPLE=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
fi
WX_ARG_ENABLE(accel, [ --enable-accel use accelerators], wxUSE_ACCEL)
+WX_ARG_ENABLE(animatectrl, [ --enable-animatectrl use wxAnimationCtrl class], wxUSE_ANIMATIONCTRL)
WX_ARG_ENABLE(button, [ --enable-button use wxButton class], wxUSE_BUTTON)
WX_ARG_ENABLE(bmpbutton, [ --enable-bmpbutton use wxBitmapButton class], wxUSE_BMPBUTTON)
+WX_ARG_ENABLE(bmpcombobox, [ --enable-bmpcombobox use wxBitmapComboBox class], wxUSE_BITMAPCOMBOBOX)
WX_ARG_ENABLE(calendar, [ --enable-calendar use wxCalendarCtrl class], wxUSE_CALCTRL)
WX_ARG_ENABLE(caret, [ --enable-caret use wxCaret class], wxUSE_CARET)
WX_ARG_ENABLE(checkbox, [ --enable-checkbox use wxCheckBox class], wxUSE_CHECKBOX)
WX_ARG_ENABLE(checklst, [ --enable-checklst use wxCheckListBox (listbox with checkboxes) class], wxUSE_CHECKLST)
WX_ARG_ENABLE(choice, [ --enable-choice use wxChoice class], wxUSE_CHOICE)
WX_ARG_ENABLE(choicebook, [ --enable-choicebook use wxChoicebook class], wxUSE_CHOICEBOOK)
+WX_ARG_ENABLE(colourpicker,[ --enable-colourpicker use wxColourPickerCtrl class], wxUSE_COLOURPICKERCTRL)
WX_ARG_ENABLE(combobox, [ --enable-combobox use wxComboBox class], wxUSE_COMBOBOX)
+WX_ARG_ENABLE(comboctrl, [ --enable-comboctrl use wxComboCtrl class], wxUSE_COMBOCTRL)
WX_ARG_ENABLE(datepick, [ --enable-datepick use wxDatePickerCtrl class], wxUSE_DATEPICKCTRL)
+WX_ARG_ENABLE(dirpicker, [ --enable-dirpicker use wxDirPickerCtrl class], wxUSE_DIRPICKERCTRL)
WX_ARG_ENABLE(display, [ --enable-display use wxDisplay class], wxUSE_DISPLAY)
+WX_ARG_ENABLE(detect_sm, [ --enable-detect_sm use code to detect X11 session manager], wxUSE_DETECT_SM)
+WX_ARG_ENABLE(filepicker, [ --enable-filepicker use wxFilePickerCtrl class], wxUSE_FILEPICKERCTRL)
+WX_ARG_ENABLE(fontpicker, [ --enable-fontpicker use wxFontPickerCtrl class], wxUSE_FONTPICKERCTRL)
WX_ARG_ENABLE(gauge, [ --enable-gauge use wxGauge class], wxUSE_GAUGE)
WX_ARG_ENABLE(grid, [ --enable-grid use wxGrid class], wxUSE_GRID)
+WX_ARG_ENABLE(dataviewctrl,[ --enable-dataviewctrl, use wxDataViewCtrl class], wxUSE_DATAVIEWCTRL)
+WX_ARG_ENABLE(hyperlink, [ --enable-hyperlink use wxHyperlinkCtrl class], wxUSE_HYPERLINKCTRL)
WX_ARG_ENABLE(imaglist, [ --enable-imaglist use wxImageList class], wxUSE_IMAGLIST)
WX_ARG_ENABLE(listbook, [ --enable-listbook use wxListbook class], wxUSE_LISTBOOK)
WX_ARG_ENABLE(listbox, [ --enable-listbox use wxListBox class], wxUSE_LISTBOX)
WX_ARG_ENABLE(listctrl, [ --enable-listctrl use wxListCtrl class], wxUSE_LISTCTRL)
WX_ARG_ENABLE(notebook, [ --enable-notebook use wxNotebook class], wxUSE_NOTEBOOK)
+WX_ARG_ENABLE(odcombobox, [ --enable-odcombobox use wxOwnerDrawnComboBox class], wxUSE_ODCOMBOBOX)
WX_ARG_ENABLE(radiobox, [ --enable-radiobox use wxRadioBox class], wxUSE_RADIOBOX)
WX_ARG_ENABLE(radiobtn, [ --enable-radiobtn use wxRadioButton class], wxUSE_RADIOBTN)
WX_ARG_ENABLE(sash, [ --enable-sash use wxSashWindow class], wxUSE_SASH)
WX_ARG_ENABLE(statline, [ --enable-statline use wxStaticLine class], wxUSE_STATLINE)
WX_ARG_ENABLE(stattext, [ --enable-stattext use wxStaticText class], wxUSE_STATTEXT)
WX_ARG_ENABLE(statusbar, [ --enable-statusbar use wxStatusBar class], wxUSE_STATUSBAR)
-WX_ARG_ENABLE(tabdialog, [ --enable-tabdialog use wxTabControl class], wxUSE_TABDIALOG)
+WX_ARG_ENABLE(tabdialog, [ --enable-tabdialog use wxTabControl class], wxUSE_TAB_DIALOG)
WX_ARG_ENABLE(textctrl, [ --enable-textctrl use wxTextCtrl class], wxUSE_TEXTCTRL)
WX_ARG_ENABLE(togglebtn, [ --enable-togglebtn use wxToggleButton class], wxUSE_TOGGLEBTN)
WX_ARG_ENABLE(toolbar, [ --enable-toolbar use wxToolBar class], wxUSE_TOOLBAR)
WX_ARG_ENABLE(tbarnative, [ --enable-tbarnative use native wxToolBar class], wxUSE_TOOLBAR_NATIVE)
-WX_ARG_ENABLE(tbarsmpl, [ --enable-tbarsmpl use wxToolBarSimple class], wxUSE_TOOLBAR_SIMPLE)
WX_ARG_ENABLE(treebook, [ --enable-treebook use wxTreebook class], wxUSE_TREEBOOK)
+WX_ARG_ENABLE(toolbook, [ --enable-toolbook use wxToolbook class], wxUSE_TOOLBOOK)
WX_ARG_ENABLE(treectrl, [ --enable-treectrl use wxTreeCtrl class], wxUSE_TREECTRL)
WX_ARG_ENABLE(tipwindow, [ --enable-tipwindow use wxTipWindow class], wxUSE_TIPWINDOW)
WX_ARG_ENABLE(popupwin, [ --enable-popupwin use wxPopUpWindow class], wxUSE_POPUPWIN)
dnl ---------------------------------------------------------------------------
WX_ARG_ENABLE(commondlg, [ --enable-commondlg use all common dialogs], wxUSE_COMMONDLGS)
+WX_ARG_ENABLE(aboutdlg, [ --enable-aboutdlg use wxAboutBox], wxUSE_ABOUTDLG)
WX_ARG_ENABLE(choicedlg, [ --enable-choicedlg use wxChoiceDialog], wxUSE_CHOICEDLG)
WX_ARG_ENABLE(coldlg, [ --enable-coldlg use wxColourDialog], wxUSE_COLOURDLG)
WX_ARG_ENABLE(filedlg, [ --enable-filedlg use wxFileDialog], wxUSE_FILEDLG)
dnl we suppose that expr is available (maybe there is a better way to do
dnl this? what about using ALL_TOOLKITS? TODO)
NUM_TOOLKITS=`expr ${wxUSE_COCOA:-0} + ${wxUSE_GTK:-0} + ${wxUSE_MAC:-0} \
- + ${wxUSE_MGL:-0} + ${wxUSE_MICROWIN:-0} \
+ + ${wxUSE_MGL:-0} + ${wxUSE_DFB:-0} + ${wxUSE_MICROWIN:-0} \
+ ${wxUSE_MOTIF:-0} + ${wxUSE_MSW:-0} + ${wxUSE_X11:-0}`
dnl Allow wxUSE_PM only for OS/2 with EMX.
dnl adds -traditional for gcc if needed
AC_PROG_GCC_TRADITIONAL
-AC_LANG_SAVE
-AC_LANG_CPLUSPLUS
+dnl do all checks from now on using the C++ compiler: this saves us a lot of
+dnl problems with various functions which may be available in libc but not
+dnl declared in the header and various pointer conversions which compile with
+dnl the C compiler but not in C++
+AC_LANG_PUSH(C++)
dnl C++-compiler checks
dnl defines CXX with the compiler to use
CXXFLAGS=${CXXFLAGS:=}
AC_BAKEFILE_PROG_CXX
-AC_LANG_RESTORE
-
dnl ranlib command
dnl defines RANLIB with the appropriate command
AC_PROG_RANLIB
dnl needed for making link to setup.h
AC_PROG_LN_S
-dnl lndir can be used by "make dist" to save copying files
-AC_CHECK_PROGS(LNDIR, lndir, [cp -pR])
-
dnl ------------------------------------------------------------------------
dnl Platform specific tests
dnl not "g++/c++".
dnl ---------------------------------------------------------------------
dnl (OS/2-only piece)
+ AC_LANG_PUSH(C)
if test "$wxUSE_MOTIF" = 1 -o "$wxUSE_GTK" = 1 -o "$wxUSE_X11" = 1; then
dnl More complete Unix emulation for unix-like ports
dnl by linking in POSIX/2's cExt (if available).
#else
"Innotek6"
#endif
- );
+ );
exit(0);
}
],
- wx_cv_gccversion=`cat conftestval`,
+ wx_cv_gccversion=`cat conftestval`,
wx_cv_gccversion="EMX2",
dnl Compilation error: Assuming standard EMX environment
wx_cv_gccversion="EMX2"
)
])
+ AC_LANG_POP
if test "$wx_cv_gccversion" = "EMX2"; then
LIBS="$LIBS -lstdcpp"
LDFLAGS="$LDFLAGS -Zsysv-signals"
if test "$wxUSE_SHARED" = "yes" -a "$wxUSE_OMF" = "no"; then
AC_MSG_WARN([Building DLLs requires OMF mode, enabled])
wxUSE_OMF=yes
- enable_omf=yes
+ enable_omf=yes
fi
dnl (end of OS/2-only piece)
;;
dnl ---------------------------------------------------------------------
dnl (non-OS/2-only piece)
- AC_LANG_SAVE
- AC_LANG_CPLUSPLUS
-
AC_CACHE_CHECK([for strcasecmp() in string.h], ac_cv_string_strcasecmp, [
AC_TRY_LINK([
#include <string.h>
fi
fi
- AC_LANG_RESTORE
dnl (end of non-OS/2-only piece)
;;
esac
;;
esac
+dnl POSIX needs this for select(), but old systems don't have it
+if test "$USE_UNIX" = 1 ; then
+ AC_CHECK_HEADERS([sys/select.h])
+fi
+
dnl ---------------------------------------------------------------------------
dnl Checks for compiler characteristics
dnl ---------------------------------------------------------------------------
fi
fi
+dnl Check if variadic macros (C99 feature) are supported:
+AC_CACHE_CHECK(
+ [whether the compiler supports variadic macros],
+ [wx_cv_have_variadic_macros],
+ [
+ AC_COMPILE_IFELSE(
+ AC_LANG_PROGRAM(
+ [
+ #include <stdio.h>
+ #define test(fmt, ...) printf(fmt, __VA_ARGS__)
+ ],
+ [
+ test("%s %d %p", "test", 1, 0);
+ ]
+ ),
+ [wx_cv_have_variadic_macros=yes],
+ [wx_cv_have_variadic_macros=no]
+ )
+ ]
+)
+
+if test $wx_cv_have_variadic_macros = "yes"; then
+ AC_DEFINE(HAVE_VARIADIC_MACROS)
+fi
+
dnl check for large file support
AC_SYS_LARGEFILE
[if -D__STDC_EXT__ is required],
wx_cv_STDC_EXT_required,
[
- AC_LANG_SAVE
- AC_LANG_CPLUSPLUS
AC_TRY_COMPILE(
[],
[
wx_cv_STDC_EXT_required=no,
wx_cv_STDC_EXT_required=yes
)
- AC_LANG_RESTORE
]
)
if test "x$wx_cv_STDC_EXT_required" = "xyes"; then
dnl check for std::string or std::wstring
if test "$wxUSE_STD_STRING" = "yes" -o "$wxUSE_STL" = "yes"; then
- AC_LANG_PUSH(C++)
-
if test "$wxUSE_UNICODE" = "yes"; then
std_string="std::wstring"
char_type="wchar_t"
]
)
])
-
- AC_LANG_POP
fi
if test "$wxUSE_STD_IOSTREAM" = "yes"; then
- AC_LANG_PUSH(C++)
-
AC_CHECK_TYPES([std::istream, std::ostream],,
[wxUSE_STD_IOSTREAM=no],
[#include <iostream>])
AC_MSG_WARN([No std::iostreams, switching to --disable-std_iostreams])
fi
fi
-
- AC_LANG_POP
fi
if test "$wxUSE_STL" = "yes"; then
- AC_LANG_PUSH(C++)
-
dnl check for basic STL functionality
AC_MSG_CHECKING([for basic STL functionality])
AC_TRY_COMPILE([#include <string>
AC_DEFINE(HAVE_GNU_CXX_HASH_MAP)],
[AC_MSG_RESULT(no)])
])
-
- AC_LANG_POP
fi
dnl ---------------------------------------------------------------------------
fi
fi
+dnl Only add the -lm library if floating point functions cannot be used
+dnl without it. This check is important on cygwin because of the bizarre
+dnl way that they have organized functions into libraries. On cygwin, both
+dnl libc.a and libm.a are symbolic links to a single lib libcygwin.a. This
+dnl means that
+dnl 1) linking with -lm is not necessary, and
+dnl 2) linking with -lm is dangerous if the order of libraries is wrong
+dnl In particular, if you compile any program with -mno-cygwin and link with
+dnl -lm, it will crash instantly when it is run. This happens because the
+dnl linker incorrectly links the Cygwin libm.a (==libcygwin.a), which replaces
+dnl the ___main function instead of allowing it to be defined by
+dnl /usr/lib/mingw/libmingw32.a as it should be.
+dnl
+dnl On MacOS X, this test will find that -lm is unnecessary and leave it out.
+dnl
+dnl Just check a few floating point functions. If they are all found without
+dnl -lm, then we must not need -lm.
+have_cos=0
+have_floor=0
+AC_CHECK_FUNCS(cos, have_cos=1)
+AC_CHECK_FUNCS(floor, have_floor=1)
+AC_MSG_CHECKING(if floating point functions link without -lm)
+if test "$have_cos" = 1 -a "$have_floor" = 1; then
+ AC_MSG_RESULT(yes)
+else
+ AC_MSG_RESULT(no)
+ LIBS="$LIBS -lm"
+ # use different functions to avoid configure caching
+ have_sin=0
+ have_ceil=0
+ AC_CHECK_FUNCS(sin, have_sin=1)
+ AC_CHECK_FUNCS(ceil, have_ceil=1)
+ AC_MSG_CHECKING(if floating point functions link with -lm)
+ if test "$have_sin" = 1 -a "$have_ceil" = 1; then
+ AC_MSG_RESULT(yes)
+ else
+ AC_MSG_RESULT(no)
+ # not sure we should warn the user, crash, etc.
+ fi
+fi
+
+dnl check for C99 string to long long conversion functions, assume that if we
+dnl have the unsigned variants, then we have the signed ones as well
+if test "wxUSE_UNICODE" = "yes"; then
+ AC_CHECK_FUNCS(wcstoull)
+else
+ AC_CHECK_FUNCS(strtoull)
+fi
+
dnl ---------------------------------------------------------------------------
dnl Optional libraries
dnl
AC_CACHE_CHECK([if expat.h is valid C++ header],
wx_cv_expat_is_not_broken,
[
- AC_LANG_SAVE
- AC_LANG_CPLUSPLUS
AC_TRY_COMPILE([#include <expat.h>],[],
wx_cv_expat_is_not_broken=yes,
wx_cv_expat_is_not_broken=no
)
- AC_LANG_RESTORE
]
)
if test "$wx_cv_expat_is_not_broken" = "yes" ; then
dnl install Win32-specific files in "make install"
WIN32INSTALL=win32install
+
+ dnl the jpeg header jmorecfg.h delcares the type boolean, which conflicts
+ dnl on systems which declare it in the system headers. If HAVE_BOOLEAN is
+ dnl defined then jmorecfg.h doesn't declare it, so checking for it here
+ dnl solves the problem.
+ AC_CHECK_TYPES(boolean, [], [], [#include <windows.h>])
+
+ dnl pbt.h is missing on Wine at least
+ AC_CHECK_HEADERS(pbt.h, [], [AC_DEFINE(NEED_PBT_H)])
fi
if test "$wxUSE_GUI" = "yes"; then
fi
if test "$wxUSE_GTK" = 1; then
+ dnl GTK+ test program must be compiled with C compiler
+ AC_LANG_PUSH(C)
+
AC_MSG_CHECKING([for GTK+ version])
gtk_version_cached=1
dnl that have shipped with some versions of Sun's JDS. Not using
dnl AC_CHECK_FUNCS here since it only checks the function exists
dnl in the lib (not the header).
- AC_MSG_CHECKING([if gtk_icon_size_lookup is missing])
+ AC_CHECK_DECLS([gtk_icon_size_lookup], [],
+ [AC_DEFINE(NEED_GTK_ICON_SIZE_LOOKUP)],
+ [#include <gtk/gtk.h>])
+
+ dnl test if we have at least GTK+ 2.6:
+ AC_MSG_CHECKING([if GTK+ is version >= 2.6])
AC_TRY_COMPILE([
#include <gtk/gtk.h>
],
[
- void *f = gtk_icon_size_lookup;
+ #if !GTK_CHECK_VERSION(2,6,0)
+ Not GTK+ 2.6
+ #endif
],
[
- AC_MSG_RESULT([no])
+ AC_DEFINE(__WXGTK26__)
+ AC_DEFINE(__WXGTK24__)
+ AC_MSG_RESULT([yes])
+ ac_wxgtk26=1
],
[
- AC_DEFINE(NEED_GTK_ICON_SIZE_LOOKUP)
- AC_MSG_RESULT([yes])
+ AC_MSG_RESULT([no])
+ ac_wxgtk26=0
])
+ if test "$ac_wxgtk26" = 0; then
dnl test if we have at least GTK+ 2.4:
AC_MSG_CHECKING([if GTK+ is version >= 2.4])
AC_TRY_COMPILE([
[
AC_MSG_RESULT([no])
])
+ fi
CFLAGS="$save_CFLAGS"
LIBS="$save_LIBS"
AC_MSG_WARN([Unicode configuration not supported with GTK+ 1.x])
wxUSE_UNICODE=no
fi
+
+ dnl test for XIM support in libgdk
+ AC_CHECK_LIB(gdk, gdk_im_open, AC_DEFINE(HAVE_XIM))
fi
+ AC_LANG_POP
+
dnl we need poll() in src/gtk/app.cpp (we know that Darwin doesn't
dnl have it but we do the check for the others)
if test "$USE_DARWIN" != 1; then
TOOLKIT=GTK
GUIDIST=GTK_DIST
- dnl test for XIM support in libgdk
- AC_CHECK_LIB(gdk, gdk_im_open, AC_DEFINE(HAVE_XIM))
-
-
dnl test for external libxpm if we're configured to use it
if test "$wxUSE_GPE" = "yes"; then
AC_MSG_CHECKING(for gpewidget library)
GUIDIST=MGL_DIST
fi
+ if test "$wxUSE_DFB" = 1; then
+ PKG_PROG_PKG_CONFIG()
+
+ PKG_CHECK_MODULES(DIRECTFB,
+ [directfb >= 0.9.22],
+ [
+ wxUSE_UNIVERSAL="yes"
+ TOOLKIT_INCLUDE="$DIRECTFB_CFLAGS"
+ GUI_TK_LIBRARY="$DIRECTFB_LIBS"
+ TOOLKIT=DFB
+ GUIDIST=DFB_DIST
+ ],
+ [
+ AC_MSG_ERROR([DirectFB not found.])
+ ]
+ )
+ fi
+
if test "$wxUSE_MICROWIN" = 1; then
AC_MSG_CHECKING(for MicroWindows)
if test "x$MICROWINDOWS" = x ; then
fi
if test "$wxUSE_UNICODE" = "yes"; then
- PKG_CHECK_MODULES(PANGOX, pangox,
- [
- CXXFLAGS="$PANGOX_CFLAGS $CXXFLAGS"
- GUI_TK_LIBRARY="$GUI_TK_LIBRARY $PANGOX_LIBS"
- ],
- [
- AC_MSG_ERROR([pangox library not found, library cannot be compiled in Unicode mode])
- ]
- )
- PKG_CHECK_MODULES(PANGOFT2, pangoft2,
- [
- CXXFLAGS="$PANGOFT2_CFLAGS $CXXFLAGS"
- GUI_TK_LIBRARY="$GUI_TK_LIBRARY $PANGOFT2_LIBS"
- ],
- [
- AC_MSG_WARN([pangoft2 library not found, library will be compiled without printing support])
- wxUSE_PRINTING_ARCHITECTURE="no"
- ]
- )
- PKG_CHECK_MODULES(PANGOXFT, pangoxft,
- [
- AC_DEFINE(HAVE_PANGO_XFT)
- CXXFLAGS="$PANGOXFT_CFLAGS $CXXFLAGS"
- GUI_TK_LIBRARY="$GUI_TK_LIBRARY $PANGOXFT_LIBS"
- ],
- [
- AC_MSG_WARN([pangoxft library not found, library will be compiled without anti-aliasing support])
- ]
- )
- save_CFLAGS="$CFLAGS"
- save_LIBS="$LIBS"
- CFLAGS="$PANGOX_CFLAGS $CFLAGS"
- LIBS="$LIBS $PANGOX_LIBS"
- AC_CHECK_FUNCS([pango_font_family_is_monospace])
- CFLAGS="$save_CFLAGS"
- LIBS="$save_LIBS"
+ PKG_PROG_PKG_CONFIG()
+
+ PKG_CHECK_MODULES(PANGOX, pangox,
+ [
+ CXXFLAGS="$PANGOX_CFLAGS $CXXFLAGS"
+ GUI_TK_LIBRARY="$GUI_TK_LIBRARY $PANGOX_LIBS"
+ ],
+ [
+ AC_MSG_ERROR([pangox library not found, library cannot be compiled in Unicode mode])
+ ]
+ )
+ PKG_CHECK_MODULES(PANGOFT2, pangoft2,
+ [
+ CXXFLAGS="$PANGOFT2_CFLAGS $CXXFLAGS"
+ GUI_TK_LIBRARY="$GUI_TK_LIBRARY $PANGOFT2_LIBS"
+ ],
+ [
+ AC_MSG_WARN([pangoft2 library not found, library will be compiled without printing support])
+ wxUSE_PRINTING_ARCHITECTURE="no"
+ ]
+ )
+ PKG_CHECK_MODULES(PANGOXFT, pangoxft,
+ [
+ AC_DEFINE(HAVE_PANGO_XFT)
+ CXXFLAGS="$PANGOXFT_CFLAGS $CXXFLAGS"
+ GUI_TK_LIBRARY="$GUI_TK_LIBRARY $PANGOXFT_LIBS"
+ ],
+ [
+ AC_MSG_WARN([pangoxft library not found, library will be compiled without anti-aliasing support])
+ ]
+ )
+ save_CXXFLAGS="$CXXFLAGS"
+ save_LIBS="$LIBS"
+ CXXFLAGS="$PANGOX_CFLAGS $CXXFLAGS"
+ LIBS="$LIBS $PANGOX_LIBS"
+ AC_CHECK_FUNCS([pango_font_family_is_monospace])
+ CXXFLAGS="$save_CXXFLAGS"
+ LIBS="$save_LIBS"
fi
wxUSE_UNIVERSAL="yes"
WX_INCLUDE_PATH_EXIST($ac_find_includes, $TOOLKIT_INCLUDE)
TOOLKIT_INCLUDE="$TOOLKIT_INCLUDE$ac_path_to_include"
else
- save_CFLAGS=$CFLAGS
- CFLAGS="$TOOLKIT_INCLUDE $CFLAGS"
+ save_CXXFLAGS=$CXXFLAGS
+ CXXFLAGS="$TOOLKIT_INCLUDE $CXXFLAGS"
AC_TRY_COMPILE(
[
]
)
- CFLAGS=$save_CFLAGS
+ CXXFLAGS=$save_CXXFLAGS
fi
dnl it might happen that we found headers in one of the standard
dnl paths but the libs are elsewhere but still in default (linker)
dnl path -- try to compile a test program to check for this
- save_CFLAGS=$CFLAGS
- CFLAGS="$TOOLKIT_INCLUDE $CFLAGS"
+ save_CXXFLAGS=$CXXFLAGS
+ CXXFLAGS="$TOOLKIT_INCLUDE $CXXFLAGS"
save_LIBS="$LIBS"
LIBS="$GUI_TK_LIBRARY -lXm -lXmu -lXext -lX11"
]
)
- CFLAGS=$save_CFLAGS
+ CXXFLAGS=$save_CXXFLAGS
LIBS="$save_LIBS"
fi
if test "$libs_found" = "0"; then
save_LIBS="$LIBS"
LIBS="$GUI_TK_LIBRARY -lXm ${libp} -lXmu -lXext -lXt${libsm_ice} -lX11"
- save_CFLAGS=$CFLAGS
- CFLAGS="$TOOLKIT_INCLUDE $CFLAGS"
+ save_CXXFLAGS=$CXXFLAGS
+ CXXFLAGS="$TOOLKIT_INCLUDE $CXXFLAGS"
AC_TRY_LINK(
[
)
LIBS="$save_LIBS"
- CFLAGS=$save_CFLAGS
+ CXXFLAGS=$save_CXXFLAGS
fi
done
fi
dnl elsewhere
AC_CHECK_LIB(Sgm, [SgCreateList], [libsgm_link=" -lSgm"])
- save_CFLAGS=$CFLAGS
- CFLAGS="$TOOLKIT_INCLUDE $CFLAGS"
+ save_CXXFLAGS=$CXXFLAGS
+ CXXFLAGS="$TOOLKIT_INCLUDE $CXXFLAGS"
AC_CACHE_CHECK([for Motif 2],
wx_cv_lib_motif2,
AC_DEFINE(__WXLESSTIF__,0)
fi
- CFLAGS=$save_CFLAGS
+ CXXFLAGS=$save_CXXFLAGS
GUI_TK_LIBRARY="$GUI_TK_LIBRARY${libsgm_link} -lXm${libp_link} -lXmu -lXext -lXt${libsm_ice_link} -lX11"
TOOLKIT=MOTIF
AC_CACHE_CHECK([for X11/xpm.h],
wx_cv_x11_xpm_h,
[
- save_CFLAGS=$CFLAGS
- CFLAGS="$TOOLKIT_INCLUDE $CFLAGS"
+ save_CXXFLAGS=$CXXFLAGS
+ CXXFLAGS="$TOOLKIT_INCLUDE $CXXFLAGS"
AC_TRY_COMPILE(
[
wx_cv_x11_xpm_h=no
)
- CFLAGS=$save_CFLAGS
+ CXXFLAGS=$save_CXXFLAGS
]
)
[], [$GUI_TK_LIBRARY -lX11])
if test "$wxHAVE_XEXT_LIB" = 1; then
- save_CFLAGS="$CFLAGS"
- CFLAGS="$TOOLKIT_INCLUDE $CFLAGS"
+ save_CXXFLAGS="$CXXFLAGS"
+ CXXFLAGS="$TOOLKIT_INCLUDE $CXXFLAGS"
AC_MSG_CHECKING([for X11/extensions/shape.h])
AC_TRY_COMPILE([
[
AC_MSG_RESULT([not found])
])
- CFLAGS="$save_CFLAGS"
+ CXXFLAGS="$save_CXXFLAGS"
fi
fi
fi
elif test "$wxUSE_MSW" = 1; then
dnl ---------------------------------------------------------------------------
-dnl DirectDraw / Multimon for MSW
+dnl DirectDraw for MSW - optionally used by WxDisplay.
dnl ---------------------------------------------------------------------------
- AC_CHECK_HEADERS([multimon.h ddraw.h], [],
- [
- wxUSE_DISPLAY="no"
- AC_MSG_WARN([ddraw.h or multimon.h not found; disabling wxDisplay])
- ],
- [#include <windows.h>])
+ AC_CHECK_HEADERS([ddraw.h], [], [], [#include <windows.h>])
+ fi
+fi
+
+dnl ---------------------------------------------------------------------------
+dnl X11 session management
+dnl ---------------------------------------------------------------------------
+if test "$wxUSE_DETECT_SM" = "yes"; then
+ if test "$wxUSE_UNIX" = "yes" -a "$wxUSE_MAC" != 1 -a "$wxUSE_COCOA" != 1; then
+ AC_MSG_CHECKING([for -lSM - X11 session management])
+ WX_PATH_FIND_LIBRARIES([$SEARCH_LIB],SM)
+ if test "$ac_find_libraries" != "" ; then
+ WX_LINK_PATH_EXIST([$ac_find_libraries],[$LDFLAGS])
+ if test "$ac_path_to_link" != " -L/usr/lib" ; then
+ LDFLAGS="$LDFLAGS $ac_path_to_link"
+ fi
+ GUI_TK_LIBRARY="$GUI_TK_LIBRARY -lSM"
+ AC_MSG_RESULT([yes])
+ else
+ AC_MSG_RESULT([no])
+ AC_MSG_WARN([libSM not found; disabling session management detection])
+ wxUSE_DETECT_SM="no"
+ fi
+ else
+ wxUSE_DETECT_SM="no"
fi
fi
+
dnl ---------------------------------------------------------------------------
dnl OpenGL libraries
dnl ---------------------------------------------------------------------------
dnl check what exactly size_t is on this machine - this is necessary to avoid
dnl ambiguous overloads in several places, notably wx/string.h and wx/array.h
-AC_LANG_SAVE
-AC_LANG_CPLUSPLUS
AC_CACHE_CHECK([if size_t is unsigned int],
wx_cv_size_t_is_uint,
[
fi
fi
-AC_LANG_RESTORE
-
dnl ---------------------------------------------------------------------------
dnl Checks for structures
dnl ---------------------------------------------------------------------------
AC_MSG_WARN([Wide character support is unavailable])
fi
-dnl *printf() functions sometimes are available in the library but not
-dnl prototyped -- if this is the case, we can't use them from C++ code, but to
-dnl detect this we have to use C++ compiler for testing
-AC_LANG_SAVE
-AC_LANG_CPLUSPLUS
-
dnl check for vsnprintf() -- a safe version of vsprintf())
dnl
dnl the trouble here is that on some systems (e.g HP-UX 10) this function is
AC_DEFINE(HAVE_BROKEN_SNPRINTF_DECL)
fi
fi
+
+ if test "$wxUSE_PRINTF_POS_PARAMS" = "yes"; then
+
+ dnl check if snprintf() has support for positional arguments
+ dnl NB: if snprintf() has positional support we can safely suppose that also
+ dnl other *printf() functions support them as they all belong to the same
+ dnl family and they all fallback to the same implementation
+ AC_CACHE_CHECK([if snprintf supports positional arguments], wx_cv_func_snprintf_pos_params,
+ [
+ AC_TRY_RUN(
+ [
+ #include <stdio.h>
+
+ int main (void)
+ {
+ char buffer[128];
+ snprintf (buffer, 128, "%2\$d %3\$d %1\$d", 1, 2, 3);
+ if (strcmp ("2 3 1", buffer) == 0)
+ exit (0);
+ exit (1);
+ }
+ ],
+ wx_cv_func_snprintf_pos_params=no,
+ wx_cv_func_snprintf_pos_params=yes,
+ dnl be pessimistic when cross-compiling
+ [
+ AC_MSG_WARN([Assuming Unix98 printf() is not available,
+define HAVE_UNIX98_PRINTF as 1 in setup.h if it is available.])
+ wx_cv_func_snprintf_pos_params=no
+ ]
+ )
+ ]
+ )
+
+ if test "$wx_cv_func_snprintf_pos_params" = "yes"; then
+ AC_DEFINE(HAVE_UNIX98_PRINTF)
+ fi
+ fi
fi
if test "$wxUSE_UNICODE" = yes; then
+
+ dnl our wxVsnprintf() implementation needs to use the system swprintf() in Unicode
+ dnl builds so let's check if swprintf() is declared as C99 imposes:
+ dnl int swprintf(wchar_t *s, size_t n, const wchar_t *format, ...);
+ dnl or rather as:
+ dnl int swprintf(wchar_t *s, const wchar_t *format, ...);
+ AC_CHECK_FUNCS(swprintf)
+
+ if test "$ac_cv_func_swprintf" = "yes"; then
+ AC_CACHE_CHECK([if swprintf declaration is broken], wx_cv_func_broken_swprintf_decl,
+ [
+ AC_TRY_COMPILE(
+ [
+ #include <stdio.h>
+ #include <stdarg.h>
+ #include <wchar.h>
+ ],
+ [
+ wchar_t *buf;
+ const wchar_t *fmt = L"test";
+ swprintf(buf, 10u, fmt);
+ ],
+ wx_cv_func_broken_swprintf_decl=no,
+ wx_cv_func_broken_swprintf_decl=yes
+ )
+ ]
+ )
+
+ if test "$wx_cv_func_broken_swprintf_decl" = "yes"; then
+ AC_DEFINE(HAVE_BROKEN_SWPRINTF_DECL)
+ fi
+ fi
+
dnl also look if we have wide char IO functions
AC_CHECK_FUNCS(wputc wputchar putws fputws wprintf vswprintf)
[AC_MSG_RESULT([no])]);
fi
-AC_LANG_RESTORE
-
if test "x$ac_cv_header_fnmatch_h" = "xyes"; then
AC_CHECK_FUNCS(fnmatch)
fi
AC_CHECK_FUNCS(fsync)
fi
+AC_CHECK_FUNCS(round)
+if test "$ac_cv_func_round" = yes; then
+ AC_CHECK_DECLS(round,,,[#include <math.h>])
+fi
+
dnl the following tests are for Unix(like) systems only
if test "$TOOLKIT" != "MSW"; then
dnl check for available version of iconv()
-AC_LANG_SAVE
-AC_LANG_CPLUSPLUS
AM_ICONV
LIBS="$LIBICONV $LIBS"
-AC_LANG_RESTORE
dnl check for POSIX signals if we need them
if test "$wxUSE_ON_FATAL_EXCEPTION" = "yes" -a "$wxUSE_UNIX" = "yes"; then
fi
if test "$wxUSE_ON_FATAL_EXCEPTION" = "yes"; then
- AC_LANG_SAVE
- AC_LANG_CPLUSPLUS
-
AC_CACHE_CHECK([for sa_handler type], wx_cv_type_sa_handler,
[
AC_TRY_COMPILE([#include <signal.h>],
])
])
- AC_LANG_RESTORE
-
AC_DEFINE_UNQUOTED(wxTYPE_SA_HANDLER, $wx_cv_type_sa_handler)
fi
fi
dnl backtrace() and backtrace_symbols() for wxStackWalker
if test "$wxUSE_STACKWALKER" = "yes" -a "$wxUSE_UNIX" = "yes"; then
- AC_LANG_SAVE
- AC_LANG_CPLUSPLUS
-
AC_CACHE_CHECK([for backtrace() in <execinfo.h>], wx_cv_func_backtrace,
[
AC_TRY_COMPILE([#include <execinfo.h>],
AC_DEFINE(HAVE_CXA_DEMANGLE)
fi
fi
-
- AC_LANG_RESTORE
fi
if test "$wxUSE_STACKWALKER" = "yes" -a "$USE_WIN32" != "1" -a "$USE_UNIX" != "1"; then
if test "$wx_cv_func_statfs" = "yes"; then
dnl check whether we have its dcelaration too: some systems (AIX 4) lack it
- AC_LANG_SAVE
- AC_LANG_CPLUSPLUS
AC_CACHE_CHECK(for statfs declaration, wx_cv_func_statfs_decl,
AC_TRY_COMPILE(
[
wx_cv_func_statfs_decl=no
)
)
- AC_LANG_RESTORE
if test "$wx_cv_func_statfs_decl" = "yes"; then
AC_DEFINE(HAVE_STATFS_DECL)
dnl
dnl for this check C++ compiler has to be used as passing incompatible
dnl pointers is just a warning and not an error in C
- AC_LANG_SAVE
- AC_LANG_CPLUSPLUS
-
AC_CACHE_CHECK(for statvfs argument type, wx_cv_type_statvfs_t,
AC_TRY_COMPILE(
[
)
)
- AC_LANG_RESTORE
-
if test "$wx_cv_type_statvfs_t" != "unknown"; then
AC_DEFINE(HAVE_STATVFS)
fi
dnl check for uname (POSIX) and gethostname (BSD)
AC_CHECK_FUNCS(uname gethostname, break)
-dnl check for MT-safe version of strtok (on DEC Alpha, it's ok for C compiler
-dnl but not for C++ one - hence change language)
-AC_LANG_SAVE
-AC_LANG_CPLUSPLUS
-
-AC_CHECK_FUNCS(strtok_r)
-
-AC_LANG_RESTORE
+WX_CHECK_FUNCS(strtok_r, [], [], [#define _REENTRANT])
dnl check for inet_addr and inet_aton (these may live either in libc, or in
dnl libnsl or libresolv or libsocket)
INET_LINK=" -l$INET_LINK"
fi
+WX_CHECK_FUNCS(fdopen)
+
fi
+
dnl if !MSW
dnl the code below:
dnl
- dnl defines THREADS_LINK and THREADS_CFLAGS which are the options
+ dnl defines THREADS_LINK and THREADS_CXXFLAGS which are the options
dnl necessary to build the MT programs for the linker and compiler
dnl respectively
dnl
dnl sets wxUSE_THREADS=1 if thread support is activated
THREADS_LINK=
- THREADS_CFLAGS=
+ THREADS_CXXFLAGS=
if test "$wxUSE_THREADS" = "yes" ; then
if test "$USE_BEOS" = 1; then
-*)
AC_MSG_CHECKING([whether pthreads work with $flag])
- THREADS_CFLAGS="$flag"
+ THREADS_CXXFLAGS="$flag"
;;
*)
esac
save_LIBS="$LIBS"
- save_CFLAGS="$CFLAGS"
+ save_CXXFLAGS="$CXXFLAGS"
LIBS="$THREADS_LINK $LIBS"
- CFLAGS="$THREADS_CFLAGS $CFLAGS"
+ CXXFLAGS="$THREADS_CXXFLAGS $CXXFLAGS"
AC_TRY_LINK([#include <pthread.h>],
[pthread_create(0,0,0,0);],
THREADS_OK=yes)
LIBS="$save_LIBS"
- CFLAGS="$save_CFLAGS"
+ CXXFLAGS="$save_CXXFLAGS"
AC_MSG_RESULT($THREADS_OK)
if test "x$THREADS_OK" = "xyes"; then
fi
THREADS_LINK=""
- THREADS_CFLAGS=""
+ THREADS_CXXFLAGS=""
done
if test "x$THREADS_OK" != "xyes"; then
else
dnl yes, these special compiler flags should be used with the
dnl linker as well
- LDFLAGS="$THREADS_CFLAGS $LDFLAGS"
+ LDFLAGS="$THREADS_CXXFLAGS $LDFLAGS"
LIBS="$THREADS_LINK $LIBS"
AC_MSG_CHECKING([if more special flags are required for pthreads])
esac
AC_MSG_RESULT(${flag})
if test "x$flag" != xno; then
- THREADS_CFLAGS="$THREADS_CFLAGS $flag"
+ THREADS_CXXFLAGS="$THREADS_CXXFLAGS $flag"
fi
dnl don't add these options to CPPFLAGS as cpp might not know them
- WXCONFIG_CFLAGS="$WXCONFIG_CFLAGS $THREADS_CFLAGS"
+ WXCONFIG_CXXFLAGS="$WXCONFIG_CXXFLAGS $THREADS_CXXFLAGS"
fi
fi
AC_CACHE_CHECK([if compiler supports -mthreads],
wx_cv_cflags_mthread,
[
- CFLAGS_OLD="$CFLAGS"
- CFLAGS="-mthreads $CFLAGS"
+ CXXFLAGS_OLD="$CXXFLAGS"
+ CXXFLAGS="-mthreads $CXXFLAGS"
AC_TRY_COMPILE([], [],
wx_cv_cflags_mthread=yes,
wx_cv_cflags_mthread=no
if test "$wx_cv_cflags_mthread" = "yes"; then
dnl it does, use it
- WXCONFIG_CFLAGS="$WXCONFIG_CFLAGS -mthreads"
+ WXCONFIG_CXXFLAGS="$WXCONFIG_CXXFLAGS -mthreads"
LDFLAGS="$LDFLAGS -mthreads"
else
dnl it doesn't
- CFLAGS="$CFLAGS_OLD"
+ CXXFLAGS="$CXXFLAGS_OLD"
fi
;;
*-pc-os2*emx )
AC_CHECK_FUNC(localtime_r, [ AC_DEFINE(HAVE_LOCALTIME_R) ])
AC_CHECK_FUNC(gmtime_r, [ AC_DEFINE(HAVE_GMTIME_R) ])
AC_CHECK_FUNC(readdir_r, [ AC_DEFINE(HAVE_READDIR_R) ])
-dnl By preference, use getaddrinfo which avoids thread safety issues.
-dnl If that is not available, check for gethostbyname_r/gethostbyaddr_r
-dnl and getservbyname_r
-AC_CHECK_FUNC(getaddrinfo, AC_DEFINE(HAVE_GETADDRINFO),
+dnl By preference, we probably should use getaddrinfo which avoids thread
+dnl safety issues and supports IPv6, however there currently is no code
+dnl for it, so testing for it is temporarily disabled and we are restricted
+dnl to gethostbyname_r/gethostbyaddr_r and getservbyname_r
+
+dnl AC_CHECK_FUNC(getaddrinfo, AC_DEFINE(HAVE_GETADDRINFO), [
dnl no getaddrinfo, so check for gethostbyname_r and
dnl related functions (taken from python's configure.in)
dnl sigh -- gethostbyname_r is a mess; it can have 3, 5 or 6 arguments
- [ AX_FUNC_WHICH_GETHOSTBYNAME_R
+ AX_FUNC_WHICH_GETHOSTBYNAME_R
if test "x$ac_cv_func_which_gethostbyname_r" = "xno" -o \
- "x$ac_cv_func_which_gethostbyname_r" = "xunknown" ; then
+ "x$ac_cv_func_which_gethostbyname_r" = "xunknown" ; then
AC_CHECK_FUNC(gethostbyname, [ AC_DEFINE(HAVE_GETHOSTBYNAME) ])
fi
dnl A similar test for getservbyname_r
dnl doing the test already exists, so using it is easy enough. - SN
AC_raf_FUNC_WHICH_GETSERVBYNAME_R
if test "x$ac_cv_func_which_getservbyname_r" = "xno" -o \
- "x$ac_cv_func_which_getservbyname_r" = "xunknown" ; then
+ "x$ac_cv_func_which_getservbyname_r" = "xunknown" ; then
AC_CHECK_FUNCS(getservbyname,[ AC_DEFINE(HAVE_GETSERVBYNAME) ])
fi
dnl For gethostbyaddr_r, we currently do no separate test, instead, we
dnl (also, I'm lazy and there no m4 file that's ready for use for this
dnl function, although it should be easy to rewrite the gethostbyname_r
dnl check to fit this case, if it's really needed. - SN )
- ]
-)
+dnl ]
+dnl )
if test "$wxUSE_THREADS" = "yes"; then
AC_DEFINE(wxUSE_THREADS)
else
dnl on some systems, _REENTRANT should be defined if we want to use any _r()
dnl functions - add tests for other functions here as well
- if test "$ac_cv_func_strtok_r" = "yes"; then
+ if test "$wx_cv_func_strtok_r" = "yes"; then
AC_MSG_CHECKING(if -D_REENTRANT is needed)
if test "$NEEDS_D_REENTRANT_FOR_R_FUNCS" = 1; then
WXCONFIG_CPPFLAGS="$WXCONFIG_CPPFLAGS -D_REENTRANT"
WXCONFIG_CPPFLAGS="$WXCONFIG_CPPFLAGS -D__WXDEBUG__"
else
if test "$wxUSE_GTK" = 1 ; then
- CPPFLAGS="-DGTK_NO_CHECK_CASTS $CPPFLAGS"
+ if test "x$wxGTK_VERSION" = "x1" ; then
+ CPPFLAGS="-DGTK_NO_CHECK_CASTS $CPPFLAGS"
+ fi
fi
fi
fi
else
if test "$GCC" = yes ; then
- OPTIMISE_CFLAGS="-O2"
+ 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
dnl it's not enough to check for just the header because OSS under NetBSD
dnl redefines ioctl as oss_ioctrl inside it and so we also need to test
dnl whether we need -lossaudio at link-time
- AC_CACHE_CHECK([for ioctl() in sys/soundcard.h], ac_cv_header_sys_soundcard, [
+ AC_CACHE_CHECK([for SNDCTL_DSP_SPEED in sys/soundcard.h], ac_cv_header_sys_soundcard, [
AC_TRY_LINK([
+ #include <sys/ioctl.h>
#include <sys/soundcard.h>
],
[
- ioctl(0, SNDCTL_DSP_SYNC, 0);
+ ioctl(0, SNDCTL_DSP_SPEED, 0);
],
ac_cv_header_sys_soundcard=yes,
[
saveLibs="$LIBS"
LIBS="$saveLibs -lossaudio"
AC_TRY_LINK([
+ #include <sys/ioctl.h>
#include <sys/soundcard.h>
],
[
- ioctl(0, SNDCTL_DSP_SYNC, 0);
+ ioctl(0, SNDCTL_DSP_SPEED, 0);
],
ac_cv_header_sys_soundcard=yes,
[
fi
fi
+if test "$WXGTK20" = 1; then
+ if test "$wxUSE_MIMETYPE" = "yes" ; then
+ if test "$wxUSE_LIBGNOMEVFS" = "yes" ; then
+
+ PKG_CHECK_MODULES(GNOMEVFS,
+ [gnome-vfs-2.0 >= 2.0],
+ [
+dnl EXTRALIBS_GNOMEVFS="$LIBGNOMEVFS_LIBS"
+ CXXFLAGS="$GNOMEVFS_CFLAGS $CXXFLAGS"
+ AC_DEFINE(wxUSE_LIBGNOMEVFS)
+ ],
+ [
+ AC_MSG_WARN([libgnomevfs not found, library won't be able to associate MIME type])
+ wxUSE_LIBGNOMEVFS="no"
+ ]
+ )
+ fi
+ fi
+fi
+
if test "$WXGTK20" = 1; then
if test "$wxUSE_LIBHILDON" = "yes" ; then
PKG_CHECK_MODULES(HILDON,
AC_DEFINE(wxUSE_FFILE)
fi
-if test "$wxUSE_FILESYSTEM" = "yes"; then
- AC_DEFINE(wxUSE_FILESYSTEM)
-fi
-
-if test "$wxUSE_FS_ZIP" = "yes"; then
- AC_DEFINE(wxUSE_FS_ZIP)
-fi
-
if test "$wxUSE_ARCHIVE_STREAMS" = "yes"; then
- AC_DEFINE(wxUSE_ARCHIVE_STREAMS)
+ if test "$wxUSE_STREAMS" != yes; then
+ AC_MSG_WARN(wxArchive requires wxStreams... disabled)
+ wxUSE_ARCHIVE_STREAMS=no
+ else
+ AC_DEFINE(wxUSE_ARCHIVE_STREAMS)
+ fi
fi
if test "$wxUSE_ZIPSTREAM" = "yes"; then
fi
fi
+if test "$wxUSE_TARSTREAM" = "yes"; then
+ if test "$wxUSE_ARCHIVE_STREAMS" != "yes"; then
+ AC_MSG_WARN(wxTar requires wxArchive... disabled)
+ else
+ AC_DEFINE(wxUSE_TARSTREAM)
+ fi
+fi
+
+if test "$wxUSE_FILESYSTEM" = "yes"; then
+ if test "$wxUSE_STREAMS" != yes -o \( "$wxUSE_FILE" != yes -a "$wxUSE_FFILE" != yes \); then
+ AC_MSG_WARN(wxFileSystem requires wxStreams and wxFile or wxFFile... disabled)
+ wxUSE_FILESYSTEM=no
+ else
+ AC_DEFINE(wxUSE_FILESYSTEM)
+ fi
+fi
+
+if test "$wxUSE_FS_ARCHIVE" = "yes"; then
+ if test "$wxUSE_FILESYSTEM" != yes -o "$wxUSE_ARCHIVE_STREAMS" != yes; then
+ AC_MSG_WARN(wxArchiveFSHandler requires wxArchive and wxFileSystem... disabled)
+ else
+ AC_DEFINE(wxUSE_FS_ARCHIVE)
+ fi
+fi
+
+if test "$wxUSE_FS_ZIP" = "yes"; then
+ if test "$wxUSE_FS_ARCHIVE" != yes; then
+ AC_MSG_WARN(wxZipFSHandler requires wxArchiveFSHandler... disabled)
+ else
+ AC_DEFINE(wxUSE_FS_ZIP)
+ fi
+fi
+
if test "$wxUSE_ON_FATAL_EXCEPTION" = "yes"; then
if test "$USE_UNIX" != 1; then
AC_MSG_WARN([Catching fatal exceptions not currently supported on this system, wxApp::OnFatalException will not be called])
AC_DEFINE(wxUSE_STREAMS)
fi
+if test "$wxUSE_PRINTF_POS_PARAMS" = "yes"; then
+ AC_DEFINE(wxUSE_PRINTF_POS_PARAMS)
+fi
+
+
dnl ---------------------------------------------------------------------------
dnl time/date functions
dnl ---------------------------------------------------------------------------
if test "$ac_cv_func_strptime" = "yes"; then
AC_CACHE_CHECK([for strptime declaration], wx_cv_func_strptime_decl,
[
- AC_LANG_SAVE
- AC_LANG_CPLUSPLUS
AC_TRY_COMPILE(
[
#include <time.h>
wx_cv_func_strptime_decl=yes,
wx_cv_func_strptime_decl=no
)
- AC_LANG_RESTORE
]
)
fi
wx_cv_func_gettimeofday_has_2_args,
[
dnl on some _really_ old systems it takes only 1 argument
- AC_LANG_SAVE
- AC_LANG_CPLUSPLUS
-
AC_TRY_COMPILE(
[
#include <sys/time.h>
]
)
)
- AC_LANG_RESTORE
])
if test "$wx_cv_func_gettimeofday_has_2_args" != "yes"; then
dnl This test needs to be done in C++ mode since gsocket.cpp now
dnl is C++ code and pointer cast that are possible even without
dnl warning in C still fail in C++.
- AC_LANG_PUSH(C++)
AC_CACHE_CHECK([what is the type of the third argument of getsockname],
wx_cv_type_getsockname3,
[
else
AC_DEFINE_UNQUOTED(SOCKOPTLEN_T, $wx_cv_type_getsockopt5)
fi
- AC_LANG_POP
fi
fi
fi
fi
+if test "$wxUSE_VARIANT" = "yes"; then
+ AC_DEFINE(wxUSE_VARIANT)
+fi
+
if test "$wxUSE_FS_INET" = "yes"; then
AC_DEFINE(wxUSE_FS_INET)
fi
if test "$USE_DARWIN" = 1; then
dnl check for a bug in the headers, some have bad setEventCallout
AC_MSG_CHECKING([headers have declarations needed for joystick support])
- AC_LANG_PUSH(C++)
AC_TRY_COMPILE( [ #include <IOKit/hid/IOHIDLib.h> ],
[ IOHIDQueueInterface *qi = NULL;
IOHIDCallbackFunction cb = NULL;
qi->setEventCallout(NULL, cb, NULL, NULL); ],
[ wxUSE_JOYSTICK=yes ]
)
- AC_LANG_POP
AC_MSG_RESULT($wxUSE_JOYSTICK)
fi
if test "$ac_cv_header_ole2_h" = "yes" ; then
if test "$GCC" = yes ; then
- AC_LANG_SAVE
- AC_LANG_CPLUSPLUS
-
AC_MSG_CHECKING([if g++ requires -fvtable-thunks])
AC_TRY_COMPILE([#include <windows.h>
#include <ole2.h>],
[AC_MSG_RESULT(no)],
[AC_MSG_RESULT(yes)
WXCONFIG_CXXFLAGS="$WXCONFIG_CXXFLAGS -fvtable-thunks"])
- AC_LANG_RESTORE
LIBS=" -lrpcrt4 -loleaut32 -lole32 -luuid$LIBS"
if test "$wxUSE_OLE" = "yes" ; then
AC_DEFINE(wxUSE_OLE)
+ AC_DEFINE(wxUSE_OLE_AUTOMATION)
+ AC_DEFINE(wxUSE_OLE_ACTIVEX)
SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS oleauto"
fi
fi
USES_CONTROLS=1
fi
+if test "$wxUSE_ANIMATIONCTRL" = "yes"; then
+ AC_DEFINE(wxUSE_ANIMATIONCTRL)
+ USES_CONTROLS=1
+ SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS animate"
+fi
+
if test "$wxUSE_BUTTON" = "yes"; then
AC_DEFINE(wxUSE_BUTTON)
USES_CONTROLS=1
USES_CONTROLS=1
fi
+if test "$wxUSE_COMBOCTRL" = "yes"; then
+ AC_DEFINE(wxUSE_COMBOCTRL)
+ USES_CONTROLS=1
+fi
+
if test "$wxUSE_CHOICE" = "yes"; then
AC_DEFINE(wxUSE_CHOICE)
USES_CONTROLS=1
SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS checklst"
fi
+if test "$wxUSE_COLOURPICKERCTRL" = "yes"; then
+ AC_DEFINE(wxUSE_COLOURPICKERCTRL)
+ USES_CONTROLS=1
+fi
+
if test "$wxUSE_DATEPICKCTRL" = "yes"; then
AC_DEFINE(wxUSE_DATEPICKCTRL)
USES_CONTROLS=1
fi
+if test "$wxUSE_DIRPICKERCTRL" = "yes"; then
+ AC_DEFINE(wxUSE_DIRPICKERCTRL)
+ USES_CONTROLS=1
+fi
+
+if test "$wxUSE_FILEPICKERCTRL" = "yes"; then
+ AC_DEFINE(wxUSE_FILEPICKERCTRL)
+ USES_CONTROLS=1
+fi
+
+if test "$wxUSE_FONTPICKERCTRL" = "yes"; then
+ AC_DEFINE(wxUSE_FONTPICKERCTRL)
+ USES_CONTROLS=1
+fi
+
if test "$wxUSE_DISPLAY" = "yes"; then
AC_DEFINE(wxUSE_DISPLAY)
SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS display multimon"
fi
+if test "$wxUSE_DETECT_SM" = "yes"; then
+ AC_DEFINE(wxUSE_DETECT_SM)
+fi
+
if test "$wxUSE_GAUGE" = "yes"; then
AC_DEFINE(wxUSE_GAUGE)
USES_CONTROLS=1
SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS grid"
fi
+if test "$wxUSE_HYPERLINKCTRL" = "yes"; then
+ AC_DEFINE(wxUSE_HYPERLINKCTRL)
+ USES_CONTROLS=1
+fi
+
+if test "$wxUSE_BITMAPCOMBOBOX" = "yes"; then
+ AC_DEFINE(wxUSE_BITMAPCOMBOBOX)
+ USES_CONTROLS=1
+fi
+
+if test "$wxUSE_DATAVIEWCTRL" = "yes"; then
+ AC_DEFINE(wxUSE_DATAVIEWCTRL)
+ USES_CONTROLS=1
+ SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS dataview"
+fi
+
if test "$wxUSE_IMAGLIST" = "yes"; then
AC_DEFINE(wxUSE_IMAGLIST)
fi
SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS notebook"
fi
+if test "$wxUSE_ODCOMBOBOX" = "yes"; then
+ AC_DEFINE(wxUSE_ODCOMBOBOX)
+ USES_CONTROLS=1
+ SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS combo"
+fi
+
dnl if test "$wxUSE_PROPSHEET" = "yes"; then
dnl AC_DEFINE(wxUSE_PROPSHEET)
dnl USES_CONTROLS=1
SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS statbar"
fi
-if test "$wxUSE_TABDIALOG" = "yes"; then
+if test "$wxUSE_TAB_DIALOG" = "yes"; then
AC_DEFINE(wxUSE_TAB_DIALOG)
fi
AC_MSG_WARN([Toggle button not yet supported under Mac OS X... disabled])
wxUSE_TOGGLEBTN=no
fi
- if test "$wxUSE_UNIVERSAL" = "yes"; then
- AC_MSG_WARN([Toggle button not yet supported under wxUniversal... disabled])
- wxUSE_TOGGLEBTN=no
- fi
if test "$wxUSE_TOGGLEBTN" = "yes"; then
AC_DEFINE(wxUSE_TOGGLEBTN)
fi
fi
-if test "$wxUSE_TOOLBAR_SIMPLE" = "yes"; then
- AC_DEFINE(wxUSE_TOOLBAR_SIMPLE)
- wxUSE_TOOLBAR="yes"
- USES_CONTROLS=1
-fi
-
if test "$wxUSE_TOOLBAR" = "yes"; then
AC_DEFINE(wxUSE_TOOLBAR)
USES_CONTROLS=1
- dnl if wxUSE_TOOLBAR and !wxUSE_TOOLBAR_SIMPLE => wxUSE_TOOLBAR_NATIVE
- if test "$wxUSE_TOOLBAR_SIMPLE" != "yes"; then
+ if test "$wxUSE_UNIVERSAL" = "yes"; then
+ wxUSE_TOOLBAR_NATIVE="no"
+ else
wxUSE_TOOLBAR_NATIVE="yes"
- fi
-
- if test "$wxUSE_TOOLBAR_NATIVE" = "yes"; then
AC_DEFINE(wxUSE_TOOLBAR_NATIVE)
- USES_CONTROLS=1
fi
SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS toolbar"
USES_CONTROLS=1
fi
+if test "$wxUSE_TOOLBOOK" = "yes"; then
+ AC_DEFINE(wxUSE_TOOLBOOK)
+ USES_CONTROLS=1
+fi
+
if test "$wxUSE_TREECTRL" = "yes"; then
if test "$wxUSE_IMAGLIST" = "yes"; then
AC_DEFINE(wxUSE_TREECTRL)
fi
fi
+USE_AUI=0
+if test "$wxUSE_AUI" = "yes"; then
+ AC_DEFINE(wxUSE_AUI)
+ USE_AUI=1
+ SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS aui"
+fi
+
if test "$wxUSE_MENUS" = "yes"; then
AC_DEFINE(wxUSE_MENUS)
SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS menu"
dnl common dialogs
dnl ---------------------------------------------------------------------------
+if test "$wxUSE_ABOUTDLG" = "yes"; then
+ AC_DEFINE(wxUSE_ABOUTDLG)
+fi
+
if test "$wxUSE_CHOICEDLG" = "yes"; then
AC_DEFINE(wxUSE_CHOICEDLG)
fi
SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS wizard"
fi
+dnl ---------------------------------------------------------------------------
+dnl wxGraphicsContext
+dnl ---------------------------------------------------------------------------
+
+if test "$wxUSE_GRAPHICS_CONTEXT" = "yes"; then
+ if test "$wxUSE_MAC" = 1 -o "$wxUSE_COCOA" = "1"; then
+ AC_DEFINE(wxUSE_GRAPHICS_CONTEXT)
+ elif test "$wxUSE_GTK" != 1; then
+ dnl for other builds we'll just wing it for now...
+ AC_DEFINE(wxUSE_GRAPHICS_CONTEXT)
+ else
+ dnl ...but let's check for cairo availability for wxGTK builds
+ PKG_CHECK_MODULES(CAIRO, cairo,
+ [AC_DEFINE(wxUSE_GRAPHICS_CONTEXT)],
+ [AC_MSG_WARN([Cairo library not found, unable to set wxUSE_GRAPHICS_CONTEXT])]
+ )
+ fi
+fi
+
dnl ---------------------------------------------------------------------------
dnl wxMediaCtrl
dnl ---------------------------------------------------------------------------
+USE_MEDIA=0
+
if test "$wxUSE_MEDIACTRL" = "yes"; then
+ USE_MEDIA=1
+
dnl -----------------------------------------------------------------------
dnl GStreamer
dnl -----------------------------------------------------------------------
if test "$wxUSE_GTK" = 1; then
- wxUSE_GSTREAMER="yes"
-
- dnl -------------------------------------------------------------------
- dnl Test for gstreamer module from pkg-config
- dnl -------------------------------------------------------------------
- PKG_CHECK_MODULES(GSTREAMER, gstreamer-0.8,
- [
- CPPFLAGS="$GSTREAMER_CFLAGS $CPPFLAGS"
- LIBS="$LIBS $GSTREAMER_LIBS -lgstplay-0.8"
- ],
- [
- AC_MSG_WARN([GStreamer installation not found])
- wxUSE_GSTREAMER="no"
- ])
+ wxUSE_GSTREAMER="no"
dnl -------------------------------------------------------------------
- dnl Perform a check for a GStreamer element using gst-inspect
- dnl Thomas Vander Stichele <thomas at apestaart dot org>
- dnl Last modification: 25/01/2005
+ dnl Test for at least 0.8 gstreamer module from pkg-config
+ dnl Even totem doesn't accept 0.9 evidently.
dnl
- dnl AM_GST_ELEMENT_CHECK(ELEMENT-NAME, ACTION-IF-FOUND, ACTION-IF-NOT-FOUND)
+ dnl So, we first check to see if 0.10 if available - if not we
+ dnl try the older 0.8 version
dnl -------------------------------------------------------------------
- AC_DEFUN([AM_GST_ELEMENT_CHECK],
- [
- if test "x$GST_INSPECT" == "x"; then
- AC_CHECK_PROG(GST_INSPECT, gst-inspect, gst-inspect, [])
+ GST_VERSION_MAJOR=0
+ GST_VERSION_MINOR=10
+ GST_VERSION=$GST_VERSION_MAJOR.$GST_VERSION_MINOR
+
+ if test "$wxUSE_GSTREAMER8" = "no"; then
+ PKG_CHECK_MODULES(GST,
+ [gstreamer-$GST_VERSION gstreamer-plugins-base-$GST_VERSION gconf-2.0],
+ [
+ wxUSE_GSTREAMER="yes"
+ GST_LIBS="$GST_LIBS -lgstinterfaces-$GST_VERSION"
+ ],
+ [
+ AC_MSG_WARN([GStreamer 0.10 not available, falling back to 0.8])
+ GST_VERSION_MINOR=8
+ ]
+ )
+ else
+ dnl check only for 0.8
+ GST_VERSION_MINOR=8
fi
- if test "x$GST_INSPECT" != "x"; then
- AC_MSG_CHECKING(GStreamer element $1)
- if [ $GST_INSPECT $1 > /dev/null 2> /dev/null ]; then
- AC_MSG_RESULT(found.)
- $2
- else
- AC_MSG_RESULT(not found.)
- $3
- fi
+ if test $GST_VERSION_MINOR = "8"; then
+ GST_VERSION=$GST_VERSION_MAJOR.$GST_VERSION_MINOR
+ PKG_CHECK_MODULES(GST,
+ [gstreamer-$GST_VERSION gstreamer-interfaces-$GST_VERSION gstreamer-gconf-$GST_VERSION],
+ wxUSE_GSTREAMER="yes",
+ [
+ AC_MSG_WARN([GStreamer 0.8/0.10 not available.])
+ ])
fi
- ])
- dnl -------------------------------------------------------------------
- dnl Test for x video sink (video useless without)
- dnl -------------------------------------------------------------------
- AM_GST_ELEMENT_CHECK(xvimagesink,[],
- [
- wxUSE_GSTREAMER="no"
- AC_MSG_WARN([x video sink not found - cannot use GStreamer])
- ])
- dnl -------------------------------------------------------------------
- dnl Check for gstplay-0.8 lib and corresponding x overlay header
- dnl -------------------------------------------------------------------
- AC_CHECK_HEADER(gst/xoverlay/xoverlay.h, [],
- [
- wxUSE_GSTREAMER="no"
- AC_MSG_WARN([xoverlay header not found, cannot use GStreamer])
- ],
- [#include <gst/gst.h>])
+ if test "$wxUSE_GSTREAMER" = "yes"; then
+ dnl system gstreamer package is compiled with Sun CC and outputs
+ dnl CC-specific "-mt" in its flags, remove it for gcc compilation
+ case "${host}" in
+ *-*-solaris2* )
+ if "$GCC" = yes; then
+ GST_CFLAGS=`echo $GST_CFLAGS | sed 's/-mt//'`
+ GST_LIBS=`echo $GST_LIBS | sed 's/-mt//'`
+ fi
+ esac
- AC_MSG_CHECKING([for gstplay 0.8])
- WX_PATH_FIND_LIBRARIES([$SEARCH_LIB],gstplay-0.8)
+ CPPFLAGS="$GST_CFLAGS $CPPFLAGS"
+ LIBS="$GST_LIBS $LIBS"
- if test "$ac_find_libraries" = "" ; then
- AC_MSG_RESULT([no])
- wxUSE_GSTREAMER="no"
+ AC_DEFINE(wxUSE_GSTREAMER)
else
- AC_MSG_RESULT([yes])
+ USE_MEDIA=0
fi
+ fi
- if test "$wxUSE_GSTREAMER" = "yes"; then
- AC_DEFINE(wxUSE_GSTREAMER)
- AC_MSG_RESULT([GStreamer detection successful])
- fi
+ if test $USE_MEDIA = 1; then
+ SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS mediaplayer"
+ AC_DEFINE(wxUSE_MEDIACTRL)
fi
- SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS mediaplayer"
- AC_DEFINE(wxUSE_MEDIACTRL)
fi
dnl ---------------------------------------------------------------------------
if test "$wxUSE_XRC" = "yes" ; then
CORE_GUI_LIBS="xrc $CORE_GUI_LIBS"
fi
+if test "$wxUSE_AUI" = "yes" ; then
+ CORE_GUI_LIBS="aui $CORE_GUI_LIBS"
+fi
if test "$wxUSE_GUI" != "yes"; then
CORE_GUI_LIBS=""
AC_SUBST(CORE_BASE_LIBS)
AC_SUBST(CORE_GUI_LIBS)
-
dnl ---------------------------------------------------------------------------
dnl Output the makefiles and such from the results found above
dnl ---------------------------------------------------------------------------
-dnl all additional libraries (except wxWidgets itself) we link with
+dnl no more tests from here
+AC_LANG_POP
-dnl note that we always link with -lm except for Mac OS X
-dnl extended.c uses floor() and is always linked in
+dnl all additional libraries (except wxWidgets itself) we link with
if test "$wxUSE_MAC" = 1 ; then
if test "$wxUSE_SOUND" = "yes" || test "$wxUSE_MEDIACTRL" = "yes"; then
LDFLAGS="$LDFLAGS -framework IOKit -framework CoreServices -framework System -framework ApplicationServices"
fi
-dnl FIXME: should this be covered by the conditional above
-dnl given the -lm comment there? Or should that comment (and
-dnl this one) be removed.. [ 7 Nov 2001 ]
-
LIBS="$ZLIB_LINK $POSIX4_LINK $INET_LINK $WCHAR_LINK $DL_LINK $LIBS"
-dnl Only add the -lm library if floating point functions cannot be used
-dnl without it. This check is important on cygwin because of the bizarre
-dnl way that they have organized functions into libraries. On cygwin, both
-dnl libc.a and libm.a are symbolic links to a single lib libcygwin.a. This
-dnl means that
-dnl 1) linking with -lm is not necessary, and
-dnl 2) linking with -lm is dangerous if the order of libraries is wrong
-dnl In particular, if you compile any program with -mno-cygwin and link with
-dnl -lm, it will crash instantly when it is run. This happens because the
-dnl linker incorrectly links the Cygwin libm.a (==libcygwin.a), which replaces
-dnl the ___main function instead of allowing it to be defined by
-dnl /usr/lib/mingw/libmingw32.a as it should be.
-dnl
-dnl On MacOS X, this test will find that -lm is unnecessary and leave it out.
-dnl
-dnl Just check a few floating point functions. If they are all found without
-dnl -lm, then we must not need -lm.
-have_cos=0
-have_floor=0
-AC_CHECK_FUNCS(cos, have_cos=1)
-AC_CHECK_FUNCS(floor, have_floor=1)
-AC_MSG_CHECKING(if floating point functions link without -lm)
-if test "$have_cos" = 1 -a "$have_floor" = 1; then
- AC_MSG_RESULT(yes)
-else
- AC_MSG_RESULT(no)
- LIBS="$LIBS -lm"
- # use different functions to avoid configure caching
- have_sin=0
- have_ceil=0
- AC_CHECK_FUNCS(sin, have_sin=1)
- AC_CHECK_FUNCS(ceil, have_ceil=1)
- AC_MSG_CHECKING(if floating point functions link with -lm)
- if test "$have_sin" = 1 -a "$have_ceil" = 1; then
- AC_MSG_RESULT(yes)
- else
- AC_MSG_RESULT(no)
- # not sure we should warn the user, crash, etc.
- fi
-fi
-
if test "$wxUSE_GUI" = "yes"; then
dnl TODO add checks that these samples will really compile (i.e. all the
SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS artprov controls dialogs drawing \
dynamic erase event exec font image minimal mobile \
mobile/wxedit mobile/styles propsize render \
- richedit rotate shaped vscroll widgets"
+ rotate shaped vscroll widgets"
if test "$wxUSE_MONOLITHIC" != "yes"; then
SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS console"
EXTRALIBS_HTML="$MSPACK_LINK"
EXTRALIBS_ODBC="$ODBC_LINK"
if test "$wxUSE_GUI" = "yes"; then
- EXTRALIBS_GUI=`echo $GUI_TK_LIBRARY $PNG_LINK $JPEG_LINK $TIFF_LINK $WEBKIT_LINK $EXTRALIBS_HILDON $EXTRALIBS_GNOMEPRINT`
+ EXTRALIBS_GUI=`echo $GUI_TK_LIBRARY $PNG_LINK $JPEG_LINK $TIFF_LINK $WEBKIT_LINK $EXTRALIBS_HILDON $EXTRALIBS_GNOMEVFS $EXTRALIBS_GNOMEPRINT`
fi
if test "$wxUSE_OPENGL" = "yes"; then
EXTRALIBS_OPENGL="$LDFLAGS_GL $OPENGL_LIBS"
if test "x$wxUSE_UNIVERSAL" = "xyes" ; then
WXUNIV=1
+
+ case "$wxUNIV_THEMES" in
+ ''|all)
+ AC_DEFINE(wxUSE_ALL_THEMES)
+ ;;
+
+ *)
+ for t in `echo $wxUNIV_THEMES | tr , ' ' | tr a-z A-Z`; do
+ AC_DEFINE_UNQUOTED(wxUSE_THEME_$t)
+ done
+ esac
else
WXUNIV=0
fi
AC_SUBST(EXTRALIBS_SDL)
AC_SUBST(WITH_PLUGIN_SDL)
AC_SUBST(EXTRALIBS_GNOMEPRINT)
+AC_SUBST(EXTRALIBS_GNOMEVFS)
AC_SUBST(EXTRALIBS_HILDON)
AC_SUBST(UNICODE)
AC_SUBST(BUILD)
case "$TOOLKIT" in
GTK)
- TOOLKIT_USER="GTK+"
+ TOOLKIT_DESC="GTK+"
if test "$WXGTK20" = 1; then
- TOOLKIT_USER="$TOOLKIT_USER 2"
+ TOOLKIT_DESC="$TOOLKIT_DESC 2"
+ if test "$wxUSE_LIBGNOMEPRINT" = "yes" ; then
+ TOOLKIT_EXTRA="$TOOLKIT_EXTRA gnomeprint";
+ fi
+ if test "$wxUSE_LIBGNOMEVFS" = "yes" ; then
+ TOOLKIT_EXTRA="$TOOLKIT_EXTRA gnomevfs"
+ fi
+ if test "$wxUSE_LIBHILDON" = "yes"; then
+ TOOLKIT_EXTRA="$TOOLKIT_EXTRA hildon"
+ fi
+
+ if test "$TOOLKIT_EXTRA" != ""; then
+ TOOLKIT_DESC="$TOOLKIT_DESC with support for `echo $TOOLKIT_EXTRA | tr -s ' '`"
+ fi
fi
;;
+ ?*)
+ TOOLKIT_DESC=$TOOLKIT_LOWERCASE
+ ;;
+
*)
- TOOLKIT_USER=$TOOLKIT_LOWERCASE
+ TOOLKIT_DESC="base only"
;;
esac
BAKEFILE_FORCE_PLATFORM=win32
fi
+dnl ---------------------------------------------------------------------------
+dnl Add Universal binary support
+dnl Note we don't do this earlier because adding these cpp/ld flags could
+dnl cause configure tests to fail.
+dnl ---------------------------------------------------------------------------
+if test "$wxUSE_MAC" = 1 ; then
+ if test "x$wxUSE_UNIVERSAL_BINARY" != xno ; then
+ dnl --enable-universal_binary uses a default SDK (currently 10.4u)
+ dnl --enable-universal_binary=SDK names a path to an SDK
+ if test "x$wxUSE_UNIVERSAL_BINARY" == xyes; then
+ OSX_UNIV_OPTS="-isysroot /Developer/SDKs/MacOSX10.4u.sdk"
+ else
+ dnl '' would mean universal with no SDK, which may be the case if
+ dnl the compiler uses a sysroot by default
+ OSX_UNIV_OPTS=${wxUSE_UNIVERSAL_BINARY:+"-isysroot '$wxUSE_UNIVERSAL_BINARY'"}
+ fi
+ OSX_UNIV_OPTS="$OSX_UNIV_OPTS -arch ppc -arch i386"
+ CXXFLAGS="$OSX_UNIV_OPTS $CXXFLAGS"
+ CFLAGS="$OSX_UNIV_OPTS $CFLAGS"
+ LDFLAGS="$OSX_UNIV_OPTS $LDFLAGS"
+ bk_use_pch=no
+ fi
+ # TODO: where do we add "-syslibroot,/Developer/SDKs/MacOSX10.4u.sdk" for libtool (static builds only)?
+ # The makefile currently uses AR and RANLIB, which libtool apparently supercedes.
+fi
+
+dnl gcc 3.4 has a pch bug which truncates wide character constants in headers.
+dnl Hopefully for a non-unicode build there aren't any wide constants in
+dnl headers, but for a unicode build it's best to disable pch.
+if test "$wxUSE_UNICODE" = yes -a "$GCC" = yes -a "$bk_use_pch" != no
+then
+ AC_CACHE_CHECK(
+ [for gcc precompiled header bug],
+ [wx_cv_gcc_pch_bug],
+ [[
+ echo '#include <stdio.h>
+ const wchar_t test_var[] = L"awidetest";' > conftest.h
+
+ echo '#include "conftest.h"
+ int main()
+ {
+ printf("%ls", test_var);
+ return 0;
+ }' > conftest.cpp
+
+ wx_cv_gcc_pch_bug="pch not supported"
+
+ if $CXX conftest.h >/dev/null 2>&1
+ then
+ wx_cv_gcc_pch_bug=
+
+ if $CXX -o conftest$PROGRAM_EXT conftest.cpp >/dev/null 2>&1
+ then
+ if tr -dc '[a-z]' < conftest$PROGRAM_EXT |
+ grep awidetest >/dev/null
+ then
+ wx_cv_gcc_pch_bug=no
+ else
+ wx_cv_gcc_pch_bug=yes
+ fi
+ fi
+ fi
+
+ rm -f conftest.h conftest.gch conftest.cpp conftest$PROGRAM_EXT
+ ]])
+
+ if test "$wx_cv_gcc_pch_bug" = yes; then
+ dnl make the default for pch 'no'
+ dnl further below check whether the user overrode and warn them
+ bk_use_pch=no
+ fi
+fi
+
AC_BAKEFILE([m4_include(autoconf_inc.m4)])
+dnl find out if the compiler supports PCH
+dnl
+dnl TODO: this should be in bakefile
+if test $GCC_PCH = 1
+then
+ if test "$wx_cv_gcc_pch_bug" = yes; then
+ AC_MSG_WARN([*** Precompiled header support is broken on this compiler])
+ AC_MSG_WARN([*** --enable-precomp-headers is not recommended])
+ AC_MSG_WARN([*** see http://gcc.gnu.org/bugzilla/show_bug.cgi?id=13361])
+ fi
+
+ CPPFLAGS="-DWX_PRECOMP $CPPFLAGS"
+fi
+
+dnl HACK ALERT!!
+dnl For now, we need to alter bk-deps not to generate deps
+dnl when we've configured a Universal binary build.
+dnl The next version of Bakefile will have the correct fix for this
+dnl at which time, this hack can be removed.
+
+if test "$wxUSE_MAC" = 1 ; then
+ if test "x$wxUSE_UNIVERSAL_BINARY" != "xno" ; then
+ sed "s/DEPSMODE=gcc/DEPSMODE=none/" < bk-deps > temp
+ mv temp bk-deps
+ chmod +x bk-deps
+ fi
+fi
+
if test "$wxUSE_SHARED" = "yes"; then
dnl We get the shared build linker from bakefile, since it
*-pc-os2_emx | *-pc-os2-emx )
SHARED_LD_CC="`pwd`/dllar.sh -name-mangler-script ./dllnames.sh -libf INITINSTANCE -libf TERMINSTANCE -o"
SHARED_LD_CXX="`pwd`/dllar.sh -name-mangler-script ./dllnames.sh -libf INITINSTANCE -libf TERMINSTANCE -o"
- cp -p ${srcdir}/src/os2/dllnames.sh .
- cp -p ${srcdir}/src/os2/dllar.sh .
+ cp -p ${srcdir}/src/os2/dllnames.sh .
+ cp -p ${srcdir}/src/os2/dllar.sh .
;;
esac
else
esac
fi
-dnl find out if the compiler supports PCH
-dnl
-dnl TODO: this should be in bakefile
-if test $GCC_PCH = 1 ; then
- CPPFLAGS="-DWX_PRECOMP $CPPFLAGS"
-fi
-
dnl TOOLCHAIN_DEFS should be used for both wx and client code
WXCONFIG_CPPFLAGS="$WXCONFIG_CPPFLAGS $TOOLCHAIN_DEFS"
echo
echo "Configured wxWidgets ${WX_VERSION} for \`${host}'"
echo ""
-echo " Which GUI toolkit should wxWidgets use? ${TOOLKIT_USER:-base only}"
+echo " Which GUI toolkit should wxWidgets use? ${TOOLKIT_DESC}"
echo " Should wxWidgets be compiled into single library? ${wxUSE_MONOLITHIC:-yes}"
echo " Should wxWidgets be compiled in debug mode? ${wxUSE_DEBUG:-no}"
echo " expat ${wxUSE_EXPAT}"
echo " libmspack ${wxUSE_LIBMSPACK}"
echo " sdl ${wxUSE_LIBSDL}"
-echo " gnomeprint ${wxUSE_LIBGNOMEPRINT-none}"
-echo " hildon ${wxUSE_LIBHILDON-none}"
echo ""