X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/d84cedb39ef03041e0e4bbf5600ae6f2616268da..2e57368359ab190b5bbad1849d88f298e30723c9:/configure.in diff --git a/configure.in b/configure.in index 31adabaa10..2ebd58da63 100644 --- a/configure.in +++ b/configure.in @@ -17,7 +17,7 @@ dnl --------------------------------------------------------------------------- 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]) @@ -34,7 +34,7 @@ dnl wx_release_number += 1 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 @@ -89,7 +89,7 @@ NEEDS_D_REENTRANT_FOR_R_FUNCS=0 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 @@ -102,6 +102,7 @@ DEFAULT_wxUSE_MOTIF=0 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* @@ -115,6 +116,7 @@ DEFAULT_DEFAULT_wxUSE_MOTIF=0 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 @@ -191,7 +193,7 @@ case "${host}" in AC_DEFINE(__BSD__) DEFAULT_DEFAULT_wxUSE_GTK=1 ;; - *-*-openbsd*) + *-*-openbsd*|*-*-mirbsd*) USE_BSD=1 USE_OPENBSD=1 AC_DEFINE(__OPENBSD__) @@ -262,7 +264,6 @@ case "${host}" in SO_SUFFIX=dll PROGRAM_EXT=".exe" DEFAULT_DEFAULT_wxUSE_MSW=1 - DEFAULT_STD_FLAG=no ;; *-pc-msdosdjgpp ) @@ -338,7 +339,11 @@ case "${host}" in ;; *) - 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 --------------------------------------------------------------------------- @@ -364,7 +369,7 @@ if test $DEBUG_CONFIGURE = 1; then 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 @@ -424,6 +429,7 @@ if test $DEBUG_CONFIGURE = 1; then 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 @@ -469,7 +475,9 @@ if test $DEBUG_CONFIGURE = 1; then 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 @@ -490,35 +498,50 @@ if test $DEBUG_CONFIGURE = 1; then 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_COLLPANE=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 @@ -537,7 +560,6 @@ if test $DEBUG_CONFIGURE = 1; then 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 @@ -569,7 +591,7 @@ else 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 @@ -628,6 +650,7 @@ else 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 @@ -673,7 +696,9 @@ else 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 @@ -694,35 +719,50 @@ else 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_COLLPANE=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 @@ -741,7 +781,6 @@ else 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 @@ -766,7 +805,7 @@ else 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 @@ -819,6 +858,7 @@ AC_ARG_WITH(wine, [ --with-wine use Wine], [wxUSE_WINE="$w 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) @@ -837,6 +877,10 @@ WX_ARG_WITH(gnomevfs, [ --with-gnomevfs use GNOME VFS for associat 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 @@ -879,7 +923,7 @@ WX_ARG_ENABLE(no_rtti, [ --enable-no_rtti create code without RTTI 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(universal_binary, [ --enable-universal_binary create Mac PowerPC and Intel Universal binary (not yet working)], wxUSE_UNIVERSAL_BINARY) +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) @@ -920,8 +964,9 @@ WX_ARG_ENABLE(ffile, [ --enable-ffile use wxFFile class], wxUS 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) @@ -934,17 +979,19 @@ WX_ARG_ENABLE(stdpaths, [ --enable-stdpaths use wxStandardPaths clas 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(gstreamer8, [ --enable-gstreamer8 force GStreamer 0.8 instead of 0.10 with the wxMediaCtrl class on unix], wxUSE_GSTREAMER8) -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) @@ -969,6 +1016,7 @@ WX_ARG_ENABLE(mshtmlhelp, [ --enable-mshtmlhelp use MS HTML Help (win32)], 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) @@ -978,6 +1026,7 @@ WX_ARG_ENABLE(logwin, [ --enable-logwin use wxLogWindow], wxUSE_LO 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 @@ -1016,6 +1065,7 @@ dnl --disable- 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 @@ -1025,9 +1075,18 @@ if test "$wxUSE_CONTROLS" = "yes"; then 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_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 @@ -1050,7 +1109,6 @@ if test "$wxUSE_CONTROLS" = "yes"; then 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 @@ -1059,18 +1117,28 @@ if test "$wxUSE_CONTROLS" = "yes"; then 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_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 @@ -1093,7 +1161,6 @@ elif test "$wxUSE_CONTROLS" = "no"; then 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 @@ -1103,25 +1170,36 @@ elif test "$wxUSE_CONTROLS" = "no"; then 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(collpane, [ --enable-collpane use wxCollapsiblePane class], wxUSE_COLLPANE) +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) @@ -1140,7 +1218,6 @@ WX_ARG_ENABLE(textctrl, [ --enable-textctrl use wxTextCtrl class], wxU 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) @@ -1152,6 +1229,7 @@ dnl common dialogs 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) @@ -1281,7 +1359,7 @@ if test "$wxUSE_GUI" = "yes"; then 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. @@ -1613,6 +1691,7 @@ case "${host}" in 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). @@ -1646,16 +1725,17 @@ case "${host}" in #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" @@ -1670,7 +1750,7 @@ case "${host}" in 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) ;; @@ -1758,6 +1838,11 @@ case "${host}" in ;; 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 --------------------------------------------------------------------------- @@ -1882,6 +1967,31 @@ else 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 + #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 @@ -2358,6 +2468,14 @@ else 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 @@ -2781,6 +2899,15 @@ if test "$USE_WIN32" = 1 ; 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 ]) + + 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 @@ -2919,8 +3046,6 @@ libraries returned by 'pkg-config gtk+-2.0 --libs' or 'gtk-config ;; esac - AC_LANG_POP - if test "$WXGTK20" = 1; then save_CFLAGS="$CFLAGS" save_LIBS="$LIBS" @@ -2931,21 +3056,32 @@ libraries returned by 'pkg-config gtk+-2.0 --libs' or 'gtk-config 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 ]) + + dnl test if we have at least GTK+ 2.6: + AC_MSG_CHECKING([if GTK+ is version >= 2.6]) AC_TRY_COMPILE([ #include ], [ - 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([ @@ -2963,6 +3099,7 @@ libraries returned by 'pkg-config gtk+-2.0 --libs' or 'gtk-config [ AC_MSG_RESULT([no]) ]) + fi CFLAGS="$save_CFLAGS" LIBS="$save_LIBS" @@ -2971,8 +3108,13 @@ libraries returned by 'pkg-config gtk+-2.0 --libs' or 'gtk-config 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 @@ -2986,10 +3128,6 @@ libraries returned by 'pkg-config gtk+-2.0 --libs' or 'gtk-config 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) @@ -3085,6 +3223,24 @@ libraries returned by 'pkg-config gtk+-2.0 --libs' or 'gtk-config 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 @@ -3146,42 +3302,44 @@ libraries returned by 'pkg-config gtk+-2.0 --libs' or 'gtk-config 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" @@ -3210,8 +3368,8 @@ libraries returned by 'pkg-config gtk+-2.0 --libs' or 'gtk-config 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( [ @@ -3231,7 +3389,7 @@ libraries returned by 'pkg-config gtk+-2.0 --libs' or 'gtk-config ] ) - CFLAGS=$save_CFLAGS + CXXFLAGS=$save_CXXFLAGS fi @@ -3247,8 +3405,8 @@ libraries returned by 'pkg-config gtk+-2.0 --libs' or 'gtk-config 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" @@ -3270,7 +3428,7 @@ libraries returned by 'pkg-config gtk+-2.0 --libs' or 'gtk-config ] ) - CFLAGS=$save_CFLAGS + CXXFLAGS=$save_CXXFLAGS LIBS="$save_LIBS" fi @@ -3284,8 +3442,8 @@ libraries returned by 'pkg-config gtk+-2.0 --libs' or 'gtk-config 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( [ @@ -3308,7 +3466,7 @@ libraries returned by 'pkg-config gtk+-2.0 --libs' or 'gtk-config ) LIBS="$save_LIBS" - CFLAGS=$save_CFLAGS + CXXFLAGS=$save_CXXFLAGS fi done fi @@ -3323,8 +3481,8 @@ libraries returned by 'pkg-config gtk+-2.0 --libs' or 'gtk-config 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, @@ -3363,7 +3521,7 @@ libraries returned by 'pkg-config gtk+-2.0 --libs' or 'gtk-config 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 @@ -3384,8 +3542,8 @@ libraries returned by 'pkg-config gtk+-2.0 --libs' or 'gtk-config 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( [ @@ -3399,7 +3557,7 @@ libraries returned by 'pkg-config gtk+-2.0 --libs' or 'gtk-config wx_cv_x11_xpm_h=no ) - CFLAGS=$save_CFLAGS + CXXFLAGS=$save_CXXFLAGS ] ) @@ -3422,8 +3580,8 @@ libraries returned by 'pkg-config gtk+-2.0 --libs' or 'gtk-config [], [$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([ @@ -3442,7 +3600,7 @@ libraries returned by 'pkg-config gtk+-2.0 --libs' or 'gtk-config [ AC_MSG_RESULT([not found]) ]) - CFLAGS="$save_CFLAGS" + CXXFLAGS="$save_CXXFLAGS" fi fi @@ -3657,6 +3815,31 @@ dnl --------------------------------------------------------------------------- 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 --------------------------------------------------------------------------- @@ -4257,9 +4440,80 @@ if test "$ac_cv_func_snprintf" = "yes"; then 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 + + 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 + #include + #include + ], + [ + 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) @@ -4282,6 +4536,11 @@ if test "$wxUSE_FILE" = "yes"; then AC_CHECK_FUNCS(fsync) fi +AC_CHECK_FUNCS(round) +if test "$ac_cv_func_round" = yes; then + AC_CHECK_DECLS(round,,,[#include ]) +fi + dnl the following tests are for Unix(like) systems only if test "$TOOLKIT" != "MSW"; then @@ -4552,7 +4811,7 @@ fi dnl check for uname (POSIX) and gethostname (BSD) AC_CHECK_FUNCS(uname gethostname, break) -AC_CHECK_FUNCS(strtok_r) +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) @@ -4588,7 +4847,10 @@ if test "x$INET_LINK" != "x"; then INET_LINK=" -l$INET_LINK" fi +WX_CHECK_FUNCS(fdopen) + fi + dnl if !MSW @@ -4636,14 +4898,14 @@ if test "$TOOLKIT" != "MSW" -a "$USE_OS2" != 1; then 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 @@ -4734,7 +4996,7 @@ if test "$TOOLKIT" != "MSW" -a "$USE_OS2" != 1; then -*) AC_MSG_CHECKING([whether pthreads work with $flag]) - THREADS_CFLAGS="$flag" + THREADS_CXXFLAGS="$flag" ;; *) @@ -4744,16 +5006,16 @@ if test "$TOOLKIT" != "MSW" -a "$USE_OS2" != 1; then 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_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 @@ -4761,7 +5023,7 @@ if test "$TOOLKIT" != "MSW" -a "$USE_OS2" != 1; then fi THREADS_LINK="" - THREADS_CFLAGS="" + THREADS_CXXFLAGS="" done if test "x$THREADS_OK" != "xyes"; then @@ -4770,7 +5032,7 @@ if test "$TOOLKIT" != "MSW" -a "$USE_OS2" != 1; 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]) @@ -4802,11 +5064,11 @@ if test "$TOOLKIT" != "MSW" -a "$USE_OS2" != 1; then 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 @@ -4957,8 +5219,8 @@ else 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 @@ -4968,11 +5230,11 @@ else 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 ) @@ -4998,7 +5260,7 @@ dnl AC_CHECK_FUNC(getaddrinfo, AC_DEFINE(HAVE_GETADDRINFO), [ dnl sigh -- gethostbyname_r is a mess; it can have 3, 5 or 6 arguments 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 @@ -5007,7 +5269,7 @@ dnl AC_CHECK_FUNC(getaddrinfo, AC_DEFINE(HAVE_GETADDRINFO), [ 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 @@ -5027,7 +5289,7 @@ if test "$wxUSE_THREADS" = "yes"; then 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" @@ -5324,22 +5586,24 @@ if test "$USE_UNIX" = "1" ; then 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 #include ], [ - 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 #include ], [ - ioctl(0, SNDCTL_DSP_SYNC, 0); + ioctl(0, SNDCTL_DSP_SPEED, 0); ], ac_cv_header_sys_soundcard=yes, [ @@ -5420,7 +5684,7 @@ fi if test "$WXGTK20" = 1; then if test "$wxUSE_LIBHILDON" = "yes" ; then - PKG_CHECK_MODULES(HILDON, + PKG_CHECK_MODULES(HILDON, [hildon-lgpl >= 0.9], [ EXTRALIBS_HILDON="$HILDON_LIBS" @@ -5455,16 +5719,13 @@ if test "$wxUSE_FFILE" = "yes"; then 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 @@ -5477,6 +5738,39 @@ 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]) @@ -5585,6 +5879,11 @@ if test "$wxUSE_STREAMS" = "yes" ; then 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 --------------------------------------------------------------------------- @@ -5949,6 +6248,10 @@ if test "$wxUSE_URL" = "yes"; then 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 @@ -6130,6 +6433,8 @@ if test "$USE_WIN32" = 1 -a \( "$wxUSE_DATAOBJ" = "yes" \ 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 @@ -6246,6 +6551,12 @@ if test "$wxUSE_ACCEL" = "yes"; then 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 @@ -6268,11 +6579,22 @@ if test "$wxUSE_CARET" = "yes"; then SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS caret" fi +if test "$wxUSE_COLLPANE" = "yes"; then + AC_DEFINE(wxUSE_COLLPANE) + USES_CONTROLS=1 + SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS collpane" +fi + if test "$wxUSE_COMBOBOX" = "yes"; then AC_DEFINE(wxUSE_COMBOBOX) 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 @@ -6294,16 +6616,40 @@ if test "$wxUSE_CHECKLST" = "yes"; then 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 @@ -6315,6 +6661,16 @@ if test "$wxUSE_GRID" = "yes"; then 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 @@ -6352,6 +6708,12 @@ if test "$wxUSE_NOTEBOOK" = "yes"; then 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 @@ -6443,10 +6805,6 @@ if test "$wxUSE_TOGGLEBTN" = "yes"; then 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) @@ -6454,24 +6812,15 @@ if test "$wxUSE_TOGGLEBTN" = "yes"; then 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" @@ -6616,6 +6965,13 @@ if test "$wxUSE_XRC" = "yes"; then 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" @@ -6700,6 +7056,10 @@ dnl --------------------------------------------------------------------------- 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 @@ -6766,6 +7126,25 @@ if test "$wxUSE_WIZARDDLG" = "yes"; then 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 --------------------------------------------------------------------------- @@ -6773,11 +7152,13 @@ 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" + wxUSE_GSTREAMER="no" dnl ------------------------------------------------------------------- dnl Test for at least 0.8 gstreamer module from pkg-config @@ -6788,51 +7169,60 @@ if test "$wxUSE_MEDIACTRL" = "yes"; then dnl ------------------------------------------------------------------- GST_VERSION_MAJOR=0 GST_VERSION_MINOR=10 - GST_VERSION_RELEASE=0 - GSTREAMER_REQ=$GST_VERSION_MAJOR.$GST_VERSION_MINOR.$GST_VERSION_RELEASE - GST_MAJORMINOR=$GST_VERSION_MAJOR.$GST_VERSION_MINOR + GST_VERSION=$GST_VERSION_MAJOR.$GST_VERSION_MINOR if test "$wxUSE_GSTREAMER8" = "no"; then - PKG_CHECK_MODULES(GST, gstreamer-$GST_MAJORMINOR - gstreamer-plugins-base-$GST_MAJORMINOR - gconf-2.0, - [ - CPPFLAGS="$GST_CFLAGS $CPPFLAGS" - LIBS="$LIBS $GST_LIBS -lgstinterfaces-$GST_MAJORMINOR" - ], - [ + 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 + ] + ) + else + dnl check only for 0.8 GST_VERSION_MINOR=8 fi - GSTREAMER_REQ=$GST_VERSION_MAJOR.$GST_VERSION_MINOR.$GST_VERSION_RELEASE - GST_MAJORMINOR=$GST_VERSION_MAJOR.$GST_VERSION_MINOR - - if test x$GST_VERSION_MINOR = x8; then - PKG_CHECK_MODULES(GST, gstreamer-$GST_MAJORMINOR - gstreamer-interfaces-$GST_MAJORMINOR - gstreamer-gconf-$GST_MAJORMINOR, - [ - CPPFLAGS="$GST_CFLAGS $CPPFLAGS" - LIBS="$LIBS $GST_LIBS" - ], + 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([Proper GStreamer .8/.10 installation not found]) - wxUSE_GSTREAMER="no" + AC_MSG_WARN([GStreamer 0.8/0.10 not available.]) ]) fi 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 + + CPPFLAGS="$GST_CFLAGS $CPPFLAGS" + LIBS="$GST_LIBS $LIBS" + AC_DEFINE(wxUSE_GSTREAMER) - AC_MSG_RESULT([GStreamer detection successful]) + else + USE_MEDIA=0 fi fi - USE_MEDIA=1 - SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS mediaplayer" - AC_DEFINE(wxUSE_MEDIACTRL) + + if test $USE_MEDIA = 1; then + SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS mediaplayer" + AC_DEFINE(wxUSE_MEDIACTRL) + fi fi dnl --------------------------------------------------------------------------- @@ -6886,6 +7276,9 @@ fi 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="" @@ -7084,6 +7477,17 @@ done 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 @@ -7161,14 +7565,31 @@ AC_SUBST(CPPUNIT_LIBS) 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 @@ -7177,32 +7598,102 @@ if test "$wxUSE_WINE" = "yes"; then fi dnl --------------------------------------------------------------------------- -dnl Add Universal binary support +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 "$wxUSE_UNIVERSAL_BINARY" = "yes" ; then - CXXFLAGS="-isysroot /Developer/SDKs/MacOSX10.4u.sdk -arch ppc -arch i386 $CXXFLAGS" - CFLAGS="-isysroot /Developer/SDKs/MacOSX10.4u.sdk -arch ppc -arch i386 $CFLAGS" - LDFLAGS="-isysroot /Developer/SDKs/MacOSX10.4u.sdk -arch ppc -arch i386 $LDFLAGS" + 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. - # TODO: how can we avoid a hardwired reference to the SDK, above? (Someone used -lSystemStubs to avoid it) +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 + 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 HACK ALERT!! +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 "$wxUSE_UNIVERSAL_BINARY" = "yes" ; 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 @@ -7227,8 +7718,8 @@ if test "$wxUSE_SHARED" = "yes"; then *-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 @@ -7247,13 +7738,6 @@ if test "$wxUSE_OMF" = "yes"; then 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" @@ -7465,7 +7949,7 @@ dnl report how we have been configured 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}" @@ -7489,9 +7973,6 @@ echo " odbc ${wxUSE_ODBC}" echo " expat ${wxUSE_EXPAT}" echo " libmspack ${wxUSE_LIBMSPACK}" echo " sdl ${wxUSE_LIBSDL}" -echo " gnomeprint ${wxUSE_LIBGNOMEPRINT-none}" -echo " gnomevfs ${wxUSE_LIBGNOMEVFS-none}" -echo " hildon ${wxUSE_LIBHILDON-none}" echo ""