X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/123dca7d2598f12466bf27f79129da2e491eef30..05ae668ce491600cd568edbe15618693e63d619c:/configure.in diff --git a/configure.in b/configure.in index 5b21d7585a..a5e49b32e2 100644 --- a/configure.in +++ b/configure.in @@ -17,7 +17,7 @@ dnl --------------------------------------------------------------------------- dnl initialization dnl --------------------------------------------------------------------------- -AC_INIT([wxWidgets], [2.6.2], [wx-dev@lists.wxwidgets.org]) +AC_INIT([wxWidgets], [2.7.0], [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]) @@ -33,9 +33,9 @@ dnl dnl wx_release_number += 1 wx_major_version_number=2 -wx_minor_version_number=6 -wx_release_number=2 -wx_subrelease_number=1 +wx_minor_version_number=7 +wx_release_number=0 +wx_subrelease_number=0 WX_RELEASE=$wx_major_version_number.$wx_minor_version_number WX_VERSION=$WX_RELEASE.$wx_release_number @@ -134,6 +134,10 @@ case "${host}" in NEEDS_D_REENTRANT_FOR_R_FUNCS=1 SO_SUFFIX=sl AC_DEFINE(__HPUX__) + + dnl many standard declarations in HP-UX headers are only included if either + dnl _HPUX_SOURCE is defined, see stdsyms(5) + CPPFLAGS="-D_HPUX_SOURCE $CPPFLAGS" ;; *-*-linux* ) USE_LINUX=1 @@ -200,6 +204,11 @@ case "${host}" in 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 @@ -361,6 +370,7 @@ if test $DEBUG_CONFIGURE = 1; then 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 @@ -391,6 +401,8 @@ if test $DEBUG_CONFIGURE = 1; then 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 @@ -410,7 +422,8 @@ if test $DEBUG_CONFIGURE = 1; then DEFAULT_wxUSE_TEXTBUFFER=no DEFAULT_wxUSE_TEXTFILE=no DEFAULT_wxUSE_SOUND=no - DEFAULT_wxUSE_MEDIACTRL=no + DEFAULT_wxUSE_MEDIACTRL=no + DEFAULT_wxUSE_GSTREAMER8=no DEFAULT_wxUSE_INTL=no DEFAULT_wxUSE_CONFIG=no DEFAULT_wxUSE_FONTMAP=no @@ -475,6 +488,7 @@ if test $DEBUG_CONFIGURE = 1; then DEFAULT_wxUSE_MENUS=no DEFAULT_wxUSE_MINIFRAME=no DEFAULT_wxUSE_HTML=no + DEFAULT_wxUSE_RICHTEXT=no DEFAULT_wxUSE_XRC=no DEFAULT_wxUSE_WEBKIT=no DEFAULT_wxUSE_FILESYSTEM=no @@ -499,6 +513,7 @@ if test $DEBUG_CONFIGURE = 1; then DEFAULT_wxUSE_DISPLAY=no DEFAULT_wxUSE_GAUGE=no DEFAULT_wxUSE_GRID=no + DEFAULT_wxUSE_DATAVIEWCTRL=no DEFAULT_wxUSE_IMAGLIST=no DEFAULT_wxUSE_LISTBOOK=no DEFAULT_wxUSE_LISTBOX=no @@ -517,12 +532,14 @@ if test $DEBUG_CONFIGURE = 1; then 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 @@ -540,7 +557,7 @@ if test $DEBUG_CONFIGURE = 1; then DEFAULT_wxUSE_XPM=no DEFAULT_wxUSE_ICO_CUR=no DEFAULT_wxUSE_ACCESSIBILITY=no - + DEFAULT_wxUSE_MONOLITHIC=no DEFAULT_wxUSE_PLUGINS=no DEFAULT_wxUSE_OFFICIAL_BUILD=no @@ -558,6 +575,7 @@ else 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 @@ -587,6 +605,8 @@ else 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 @@ -607,6 +627,7 @@ else DEFAULT_wxUSE_TEXTFILE=yes DEFAULT_wxUSE_SOUND=yes DEFAULT_wxUSE_MEDIACTRL=no + DEFAULT_wxUSE_GSTREAMER8=no DEFAULT_wxUSE_INTL=yes DEFAULT_wxUSE_CONFIG=yes DEFAULT_wxUSE_FONTMAP=yes @@ -671,6 +692,7 @@ else DEFAULT_wxUSE_MENUS=yes DEFAULT_wxUSE_MINIFRAME=yes DEFAULT_wxUSE_HTML=yes + DEFAULT_wxUSE_RICHTEXT=yes DEFAULT_wxUSE_XRC=yes DEFAULT_wxUSE_WEBKIT=yes DEFAULT_wxUSE_FILESYSTEM=yes @@ -695,6 +717,7 @@ else DEFAULT_wxUSE_DISPLAY=yes DEFAULT_wxUSE_GAUGE=yes DEFAULT_wxUSE_GRID=yes + DEFAULT_wxUSE_DATAVIEWCTRL=no DEFAULT_wxUSE_IMAGLIST=yes DEFAULT_wxUSE_LISTBOOK=yes DEFAULT_wxUSE_LISTBOX=yes @@ -713,12 +736,14 @@ else 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 @@ -736,7 +761,7 @@ else DEFAULT_wxUSE_XPM=yes DEFAULT_wxUSE_ICO_CUR=yes DEFAULT_wxUSE_ACCESSIBILITY=no - + DEFAULT_wxUSE_MONOLITHIC=no DEFAULT_wxUSE_PLUGINS=no DEFAULT_wxUSE_OFFICIAL_BUILD=no @@ -762,7 +787,7 @@ for toolkit in `echo $ALL_TOOLKITS`; do has_toolkit_in_cache=1 eval "DEFAULT_$LINE" eval "CACHE_$toolkit=1" - + LINE=`grep "wx${toolkit}_VERSION=" ${wx_arg_cache_file}` if test "x$LINE" != "x" ; then eval "DEFAULT_$LINE" @@ -781,6 +806,7 @@ dnl --------------------------------------------------------------------------- WX_ARG_ENABLE(gui, [ --enable-gui use GUI classes], wxUSE_GUI) WX_ARG_ENABLE(monolithic, [ --enable-monolithic build wxWidgets as single library], wxUSE_MONOLITHIC) WX_ARG_ENABLE(plugins, [ --enable-plugins build parts of wxWidgets as loadable components], wxUSE_PLUGINS) +WX_ARG_WITH(subdirs, [ --without-subdirs don't generate makefiles for samples/demos/...], wxWITH_SUBDIRS, without) if test "$wxUSE_GUI" = "yes"; then @@ -806,7 +832,9 @@ WX_ARG_SYS_WITH(libtiff, [ --with-libtiff use libtiff (TIFF file for 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) fi @@ -851,9 +879,10 @@ 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(compat22, [ --enable-compat22 enable wxWidgets 2.2 compatibility], WXWIN_COMPATIBILITY_2_2) -WX_ARG_ENABLE(compat24, [ --disable-compat24 disable wxWidgets 2.4 compatibility], WXWIN_COMPATIBILITY_2_4, disable) +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(rpath, [ --disable-rpath disable use of rpath for uninstalled builds], wxUSE_RPATH) @@ -911,6 +940,7 @@ WX_ARG_ENABLE(timer, [ --enable-timer use wxTimer class], wxUS 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(zipstream, [ --enable-zipstream use wxZip streams], wxUSE_ZIPSTREAM) @@ -947,6 +977,7 @@ WX_ARG_ENABLE(loggui, [ --enable-loggui use standard GUI logger], WX_ARG_ENABLE(logwin, [ --enable-logwin use wxLogWindow], wxUSE_LOGWINDOW) 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) dnl --------------------------------------------------------------------------- dnl PostScript options @@ -997,6 +1028,7 @@ if test "$wxUSE_CONTROLS" = "yes"; then DEFAULT_wxUSE_DATEPICKCTRL=yes DEFAULT_wxUSE_GAUGE=yes DEFAULT_wxUSE_GRID=yes + DEFAULT_wxUSE_DATAVIEWCTRL=no DEFAULT_wxUSE_IMAGLIST=yes DEFAULT_wxUSE_LISTBOOK=yes DEFAULT_wxUSE_LISTBOX=yes @@ -1020,6 +1052,8 @@ if test "$wxUSE_CONTROLS" = "yes"; then 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 @@ -1037,6 +1071,7 @@ elif test "$wxUSE_CONTROLS" = "no"; then DEFAULT_wxUSE_DATEPICKCTRL=no DEFAULT_wxUSE_GAUGE=no DEFAULT_wxUSE_GRID=no + DEFAULT_wxUSE_DATAVIEWCTRL=no DEFAULT_wxUSE_IMAGLIST=no DEFAULT_wxUSE_LISTBOOK=no DEFAULT_wxUSE_LISTBOX=no @@ -1060,6 +1095,8 @@ elif test "$wxUSE_CONTROLS" = "no"; then 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 @@ -1079,6 +1116,7 @@ WX_ARG_ENABLE(datepick, [ --enable-datepick use wxDatePickerCtrl class WX_ARG_ENABLE(display, [ --enable-display use wxDisplay class], wxUSE_DISPLAY) 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(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) @@ -1097,12 +1135,14 @@ WX_ARG_ENABLE(statbox, [ --enable-statbox use wxStaticBox class], wx 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) @@ -1373,8 +1413,11 @@ dnl is -traditional needed for correct compilations 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 @@ -1386,8 +1429,6 @@ dnl see CFLAGS line above CXXFLAGS=${CXXFLAGS:=} AC_BAKEFILE_PROG_CXX -AC_LANG_RESTORE - dnl ranlib command dnl defines RANLIB with the appropriate command AC_PROG_RANLIB @@ -1434,11 +1475,16 @@ AC_CHECK_TOOL(STRIP, strip, true) dnl Win32 tools if test "$wxUSE_WINE" = "yes"; then - AC_CHECK_TOOL(RESCOMP, wrc) + AC_CHECK_TOOL(WINDRES, wrc) + RESCOMP="$WINDRES" else case "${host}" in *-*-cygwin* | *-*-mingw32* ) - AC_CHECK_TOOL(RESCOMP, windres) + dnl Bakefile CVS (as of 2005-11-24) now detects windres properly + dnl ... maybe it does, but it does not make it available here + dnl anymore, so do it ourselves still. + AC_CHECK_TOOL(WINDRES, windres) + RESCOMP="$WINDRES" AC_CHECK_TOOL(DLLTOOL, dlltool) ;; esac @@ -1507,6 +1553,7 @@ fi dnl not GNU make dnl needed for making link to setup.h AC_PROG_LN_S + dnl ------------------------------------------------------------------------ dnl Platform specific tests dnl ------------------------------------------------------------------------ @@ -1514,7 +1561,7 @@ dnl ------------------------------------------------------------------------ dnl xlC needs -qunique under AIX so that one source file can be dnl compiled to multiple object files and safely linked together. if test "x$XLCXX" = "xyes" -a "x$USE_AIX" = "x1"; then - CXXFLAGS="$CXXFLAGS -qunique" + CXXFLAGS="-qunique $CXXFLAGS" fi dnl This case is for PowerPC OS X vs. everything else @@ -1547,7 +1594,7 @@ case "${host}" in [AC_MSG_RESULT([yes]) dnl We must use -D so source files that don't include wx/setup.h dnl but do include CFBase will work. - CPPFLAGS="$CPPFLAGS -D__CF_USE_FRAMEWORK_INCLUDES__"], + CPPFLAGS="-D__CF_USE_FRAMEWORK_INCLUDES__ $CPPFLAGS"], [AC_MSG_FAILURE([no. CoreFoundation not available.])] ) ] @@ -1581,7 +1628,7 @@ case "${host}" in dnl wx_cv_gccversion = Innotek6 -> gcc-3.3.5 with Innotek libc6. AC_CACHE_CHECK([for gcc/libc version], wx_cv_gccversion,[ AC_TRY_RUN( - dnl Check the gcc version macro. + dnl Check the gcc version macro. [ #include @@ -1635,9 +1682,6 @@ case "${host}" in 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 @@ -1672,7 +1716,6 @@ case "${host}" in fi fi - AC_LANG_RESTORE dnl (end of non-OS/2-only piece) ;; esac @@ -1742,7 +1785,7 @@ case "${host}" in AC_CHECK_SIZEOF(long long, 0) if test "$ac_cv_sizeof_long_long" != "0"; then dnl HPUX 10.20 headers need this define in order to use long long definitions - CPPFLAGS="$CPPFLAGS -D_INCLUDE_LONGLONG" + CPPFLAGS="-D_INCLUDE_LONGLONG $CPPFLAGS" fi ;; * ) @@ -1849,7 +1892,7 @@ dnl sizeof(off_t) in different source files of the same program and linking dnl problems if test "x$wx_largefile" = "xyes"; then if test "x$ac_cv_sys_file_offset_bits" = "x64"; then - WX_LARGEFILE_FLAGS="-D_FILE_OFFSET_BITS=64 -D_LARGE_FILES" + WXCONFIG_CPPFLAGS="$WXCONFIG_CPPFLAGS -D_FILE_OFFSET_BITS=64 -D_LARGE_FILES" dnl We get "Large Files (ILP32) not supported in strict ANSI mode." dnl #error from HP standard headers unless __STDC_EXT__ is defined. @@ -1862,8 +1905,6 @@ if test "x$wx_largefile" = "xyes"; then [if -D__STDC_EXT__ is required], wx_cv_STDC_EXT_required, [ - AC_LANG_SAVE - AC_LANG_CPLUSPLUS AC_TRY_COMPILE( [], [ @@ -1874,22 +1915,20 @@ if test "x$wx_largefile" = "xyes"; then 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 - CXXFLAGS="$CXXFLAGS -D__STDC_EXT__" + WXCONFIG_CXXFLAGS="$WXCONFIG_CXXFLAGS -D__STDC_EXT__" fi fi else - WX_LARGEFILE_FLAGS="-D_LARGE_FILES" + WXCONFIG_CPPFLAGS="$WXCONFIG_CPPFLAGS -D_LARGE_FILES" fi dnl AC_FUNC_FSEEKO sets HAVE_FSEEKO and $ac_cv_sys_largefile_source AC_FUNC_FSEEKO if test "$ac_cv_sys_largefile_source" != no; then - WX_LARGEFILE_FLAGS="$WX_LARGEFILE_FLAGS -D_LARGEFILE_SOURCE=$ac_cv_sys_largefile_source" + WXCONFIG_CPPFLAGS="$WXCONFIG_CPPFLAGS -D_LARGEFILE_SOURCE=$ac_cv_sys_largefile_source" fi - CPPFLAGS="$CPPFLAGS $WX_LARGEFILE_FLAGS" fi dnl check for bytesex stuff (don't use AC_C_BIGENDIAN to allow cross-compiling) @@ -1914,7 +1953,7 @@ dnl AC_CXX_DYNAMIC_CAST dnl With Sun CC, temporaries have block scope by default. This flag is needed dnl to get the expression scope behaviour that conforms to the standard. if test "x$SUNCXX" = xyes; then - CXXFLAGS="$CXXFLAGS -features=tmplife" + CXXFLAGS="-features=tmplife $CXXFLAGS" fi dnl Sun X11 headers are (still, in 2005!) non-ANSI and the best they could do @@ -1922,7 +1961,7 @@ dnl was to hack their C++ compiler to accept them silently -- but C compiler dnl still spits out dozens of warnings for each X include file, so suppress dnl them if test "x$SUNCC" = xyes; then - CFLAGS="$CFLAGS -erroff=E_NO_EXPLICIT_TYPE_GIVEN" + CFLAGS="-erroff=E_NO_EXPLICIT_TYPE_GIVEN $CFLAGS" fi dnl SGI mipsPro compiler gives this warning for "conversion from pointer to @@ -1933,16 +1972,40 @@ dnl dnl a better long term solution would be to use #pragma set/reset woff in dnl wxPtrToUInt() and use it instead of casts elsewhere if test "x$SGICC" = "xyes"; then - CFLAGS="$CFLAGS -woff 3970" + CFLAGS="-woff 3970 $CFLAGS" fi if test "x$SGICXX" = "xyes"; then - CXXFLAGS="$CXXFLAGS -woff 3970" + CXXFLAGS="-woff 3970 $CXXFLAGS" +fi + +dnl HP-UX c89/aCC compiler warnings +if test "x$HPCC" = "xyes"; then + dnl 2011: "unrecognized preprocessor directive": nice warning but it's given + dnl even for directives inside #if which is not true (i.e. which are + dnl used for other compilers/OS) and so we have no way to get rid of it + dnl 2450: "long long is non standard" -- yes, we know + CFLAGS="+W 2011,2450 $CFLAGS" +fi +if test "x$HPCXX" = "xyes"; then + dnl 2340: "value copied to temporary, reference to temporary used": very + dnl painful as triggered by any occurrence of user-defined conversion + CXXFLAGS="+W 2340 $CXXFLAGS" +fi + +dnl DEC/Compaq/HP cxx warnings +if test "x$COMPAQCXX" = "xyes"; then + dnl -w0 enables all warnings, then we disable some of them: + dnl basclsnondto: base class dtor non virtual (sometimes we do want this) + dnl unrimpret: "end of routine block may be unreachable" is given for + dnl every "if ( ) return ...; else return ...;" + dnl intconlosbit: "conversion to integral type of smaller size could lose + dnl data" this is a useful warning but there are too many of + dnl them for now + CXXFLAGS="-w0 -msg_disable basclsnondto,unrimpret,intconlosbit" fi 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" @@ -1987,13 +2050,9 @@ if test "$wxUSE_STD_STRING" = "yes" -o "$wxUSE_STL" = "yes"; then ] ) ]) - - 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 ]) @@ -2005,13 +2064,9 @@ if test "$wxUSE_STD_IOSTREAM" = "yes"; then 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 @@ -2021,7 +2076,7 @@ if test "$wxUSE_STL" = "yes"; then #include ], [std::vector moo; std::list foo; - std::vector::iterator it = + std::vector::iterator it = std::find_if(moo.begin(), moo.end(), std::bind2nd(std::less(), 3));], [AC_MSG_RESULT([yes])], @@ -2066,8 +2121,6 @@ if test "$wxUSE_STL" = "yes"; then AC_DEFINE(HAVE_GNU_CXX_HASH_MAP)], [AC_MSG_RESULT(no)]) ]) - - AC_LANG_POP fi dnl --------------------------------------------------------------------------- @@ -2196,6 +2249,7 @@ if test "$build" != "$host" -a "$GCC" = yes; then dnl strip out any that don't start '^/usr'. SEARCH_LIB=`for x in $SEARCH_LIB; do echo $x; done | sed -ne "s|^/usr|$cross_root|p"` SEARCH_INCLUDE=`for x in $SEARCH_INCLUDE; do echo $x; done | sed -ne "s|^/usr|$cross_root|p"` + SEARCH_INCLUDE="$SEARCH_INCLUDE $cross_root/include" dnl also have pkg-config search for *.pc files under this 'root' if test -z "$PKG_CONFIG_PATH"; then @@ -2263,6 +2317,47 @@ if test "x$wx_cv_lib_glibc21" = "xyes"; then 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 --------------------------------------------------------------------------- dnl Optional libraries dnl @@ -2289,7 +2384,7 @@ dnl ------------------------------------------------------------------------ if test "$wxUSE_REGEX" != "no"; then AC_DEFINE(wxUSE_REGEX) - + if test "$wxUSE_UNICODE" = "yes" -a "$wxUSE_REGEX" = "yes"; then AC_MSG_WARN([Defaulting to the the builtin regex library for Unicode build.]) wxUSE_REGEX=builtin @@ -2298,7 +2393,7 @@ if test "$wxUSE_REGEX" != "no"; then if test "$wxUSE_REGEX" = "sys" -o "$wxUSE_REGEX" = "yes" ; then dnl according to Unix 98 specs, regcomp() is in libc but I believe that dnl on some old systems it may be in libregex - check for it too? - AC_CHECK_HEADER(regex.h, [AC_CHECK_FUNCS(regcomp)]) + AC_CHECK_HEADER(regex.h, [AC_CHECK_FUNCS(regcomp re_search)]) if test "x$ac_cv_func_regcomp" != "xyes"; then if test "$wxUSE_REGEX" = "sys" ; then @@ -2574,21 +2669,18 @@ if test "$wxUSE_EXPAT" != "no"; then wxUSE_XML=yes AC_DEFINE(wxUSE_EXPAT) AC_DEFINE(wxUSE_XML) - - if test "$wxUSE_EXPAT" = "sys" -o "$wxUSE_EXPAT" = "yes" ; then + + if test "$wxUSE_EXPAT" = "sys" -o "$wxUSE_EXPAT" = "yes" ; then AC_CHECK_HEADER([expat.h], [found_expat_h=1]) if test "x$found_expat_h" = "x1"; then dnl Expat 1.95.6 comes with broken expat.h: 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 ],[], 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 @@ -2666,7 +2758,6 @@ if test "$USE_WIN32" = 1 ; then *-*-cygwin* ) dnl Cygwin doesn't include these by default LIBS="$LIBS -lkernel32 -luser32" - TOOLCHAIN_DEFS="${TOOLCHAIN_DEFS} -D__WIN95__" esac dnl add extra odbc libs if we have compiled in odbc @@ -2679,9 +2770,15 @@ if test "$USE_WIN32" = 1 ; then fi dnl We might want to abort here if wxUSE_ODBC="builtin" isn't supported on msw. + dnl This one is still used by some sample makefiles. RESFLAGS="--include-dir \$(top_srcdir)/include --include-dir \$(top_srcdir)/\$(program_dir) --define __WIN32__ --define __WIN95__ --define __GNUWIN32__" RESPROGRAMOBJ="\$(PROGRAM)_resources.o" + dnl This lot we export to wx-config. It must add the relevant + dnl include directories at the point when they can be known. + dnl (but are these (still) required anyway?) + WXCONFIG_RESFLAGS="--define __WIN32__ --define __WIN95__ --define __GNUWIN32__" + dnl install Win32-specific files in "make install" WIN32INSTALL=win32install fi @@ -2723,6 +2820,9 @@ 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 @@ -2750,7 +2850,7 @@ if test "$wxUSE_GUI" = "yes"; then case "${host}" in *-*-solaris2* ) if test "$wxUSE_THREADS" = "yes" -a "$GCC" = yes; then - enable_gtktest=no + enable_gtktest=no fi esac @@ -2820,9 +2920,9 @@ libraries returned by 'pkg-config gtk+-2.0 --libs' or 'gtk-config esac if test "$WXGTK20" = 1; then - save_CFLAGS="$CFLAGS" + save_CXXFLAGS="$CFLAGS" save_LIBS="$LIBS" - CFLAGS="$CFLAGS $wx_cv_cflags_gtk" + CFLAGS="$wx_cv_cflags_gtk $CFLAGS" LIBS="$LIBS $wx_cv_libs_gtk" dnl gtk_icon_size_lookup is not available in the GTK+ headers @@ -2871,6 +2971,8 @@ libraries returned by 'pkg-config gtk+-2.0 --libs' or 'gtk-config fi 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 @@ -2886,8 +2988,8 @@ libraries returned by 'pkg-config gtk+-2.0 --libs' or 'gtk-config 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) @@ -3018,7 +3120,7 @@ libraries returned by 'pkg-config gtk+-2.0 --libs' or 'gtk-config AC_PATH_XTRA if test "$no_x" = "yes"; then - AC_MSG_ERROR(X11 not found, please use --x-includes and/or --x-libraries options) + AC_MSG_ERROR([X11 not found, please use --x-includes and/or --x-libraries options (see config.log for details)]) fi dnl for some reason AC_PATH_XTRA seems to add -INONE and -LNONE (and @@ -3046,7 +3148,7 @@ libraries returned by 'pkg-config gtk+-2.0 --libs' or 'gtk-config if test "$wxUSE_UNICODE" = "yes"; then PKG_CHECK_MODULES(PANGOX, pangox, [ - CXXFLAGS="$CXXFLAGS $PANGOX_CFLAGS" + CXXFLAGS="$PANGOX_CFLAGS $CXXFLAGS" GUI_TK_LIBRARY="$GUI_TK_LIBRARY $PANGOX_LIBS" ], [ @@ -3055,7 +3157,7 @@ libraries returned by 'pkg-config gtk+-2.0 --libs' or 'gtk-config ) PKG_CHECK_MODULES(PANGOFT2, pangoft2, [ - CXXFLAGS="$CXXFLAGS $PANGOFT2_CFLAGS" + CXXFLAGS="$PANGOFT2_CFLAGS $CXXFLAGS" GUI_TK_LIBRARY="$GUI_TK_LIBRARY $PANGOFT2_LIBS" ], [ @@ -3066,19 +3168,19 @@ libraries returned by 'pkg-config gtk+-2.0 --libs' or 'gtk-config PKG_CHECK_MODULES(PANGOXFT, pangoxft, [ AC_DEFINE(HAVE_PANGO_XFT) - CXXFLAGS="$CXXFLAGS $PANGOXFT_CFLAGS" + 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_CXXFLAGS="$CXXFLAGS" save_LIBS="$LIBS" - CFLAGS="$CFLAGS $PANGOX_CFLAGS" + CXXFLAGS="$PANGOX_CFLAGS $CXXFLAGS" LIBS="$LIBS $PANGOX_LIBS" AC_CHECK_FUNCS([pango_font_family_is_monospace]) - CFLAGS="$save_CFLAGS" + CXXFLAGS="$save_CXXFLAGS" LIBS="$save_LIBS" fi @@ -3108,8 +3210,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="$CFLAGS $TOOLKIT_INCLUDE" + save_CXXFLAGS=$CXXFLAGS + CXXFLAGS="$TOOLKIT_INCLUDE $CXXFLAGS" AC_TRY_COMPILE( [ @@ -3129,7 +3231,7 @@ libraries returned by 'pkg-config gtk+-2.0 --libs' or 'gtk-config ] ) - CFLAGS=$save_CFLAGS + CXXFLAGS=$save_CXXFLAGS fi @@ -3145,8 +3247,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="$CFLAGS $TOOLKIT_INCLUDE" + save_CXXFLAGS=$CXXFLAGS + CXXFLAGS="$TOOLKIT_INCLUDE $CXXFLAGS" save_LIBS="$LIBS" LIBS="$GUI_TK_LIBRARY -lXm -lXmu -lXext -lX11" @@ -3168,7 +3270,7 @@ libraries returned by 'pkg-config gtk+-2.0 --libs' or 'gtk-config ] ) - CFLAGS=$save_CFLAGS + CXXFLAGS=$save_CXXFLAGS LIBS="$save_LIBS" fi @@ -3182,8 +3284,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="$CFLAGS $TOOLKIT_INCLUDE" + save_CXXFLAGS=$CXXFLAGS + CXXFLAGS="$TOOLKIT_INCLUDE $CXXFLAGS" AC_TRY_LINK( [ @@ -3206,7 +3308,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 @@ -3221,8 +3323,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="$CFLAGS $TOOLKIT_INCLUDE" + save_CXXFLAGS=$CXXFLAGS + CXXFLAGS="$TOOLKIT_INCLUDE $CXXFLAGS" AC_CACHE_CHECK([for Motif 2], wx_cv_lib_motif2, @@ -3261,7 +3363,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 @@ -3282,8 +3384,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="$CFLAGS $TOOLKIT_INCLUDE" + save_CXXFLAGS=$CXXFLAGS + CXXFLAGS="$TOOLKIT_INCLUDE $CXXFLAGS" AC_TRY_COMPILE( [ @@ -3297,7 +3399,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 ] ) @@ -3320,12 +3422,12 @@ 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="$CFLAGS $TOOLKIT_INCLUDE" + save_CXXFLAGS="$CXXFLAGS" + CXXFLAGS="$TOOLKIT_INCLUDE $CXXFLAGS" AC_MSG_CHECKING([for X11/extensions/shape.h]) AC_TRY_COMPILE([ - #include + #include #include ], [ @@ -3340,7 +3442,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 @@ -3358,10 +3460,10 @@ libraries returned by 'pkg-config gtk+-2.0 --libs' or 'gtk-config fi if test "x$wxUSE_UNIX" = "xyes"; then - CPPFLAGS="$CPPFLAGS $CPPFLAGS_PASCAL -I\${top_srcdir}/src/mac/carbon/morefilex -I/Developer/Headers/FlatCarbon" + CPPFLAGS="$CPPFLAGS_PASCAL -I\${top_srcdir}/src/mac/carbon/morefilex -I/Developer/Headers/FlatCarbon $CPPFLAGS" else dnl platform.h needs TARGET_CARBON before setup.h - CPPFLAGS="$CPPFLAGS $CPPFLAGS_PASCAL -I\${top_srcdir}/src/mac/carbon/morefilex -DTARGET_CARBON" + CPPFLAGS="$CPPFLAGS_PASCAL -I\${top_srcdir}/src/mac/carbon/morefilex -DTARGET_CARBON $CPPFLAGS" fi TOOLKIT=MAC @@ -3445,7 +3547,7 @@ if test "$wxUSE_GUI" = "yes"; then if test "$wxUSE_UNIX" = "yes" -a "$wxUSE_PM" != 1; then dnl defines HAVE_X11_XKBLIB_H AC_CHECK_HEADERS(X11/Xlib.h) - AC_CHECK_HEADERS([X11/XKBlib.h], [], [], + AC_CHECK_HEADERS([X11/XKBlib.h], [], [], [ #if HAVE_X11_XLIB_H #include @@ -3462,7 +3564,7 @@ dnl ---------------------------------------------------------------- IODBC_C_SRC="" -dnl ODBC is handled separately for MSW +dnl ODBC is handled separately for MSW if test "$TOOLKIT" != "MSW" ; then if test "$wxUSE_ODBC" = "sys" -o "$wxUSE_ODBC" = "yes" ; then @@ -3478,7 +3580,7 @@ if test "$TOOLKIT" != "MSW" ; then AC_CHECK_LIB(odbc, SQLAllocEnv, ODBC_LINK=" -lodbc") ]) ]) - fi + fi if test "x$ODBC_LINK" = "x" ; then if test "$wxUSE_ODBC" = "sys" ; then AC_MSG_ERROR([system ODBC library not found! Use --with-odbc=builtin to use built-in version]) @@ -3502,7 +3604,7 @@ if test "$wxUSE_ODBC" != "no" ; then SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS db" dnl is this still necessary? - WXODBCFLAG="-D_IODBC_" + WXCONFIG_CPPFLAGS="$WXCONFIG_CPPFLAGS -D_IODBC_" fi dnl --------------------------------------------------------------------------- @@ -3532,7 +3634,7 @@ dnl --------------------------------------------------------------------------- [ GUI_TK_LIBRARY="$GUI_TK_LIBRARY -lXxf86vm" ], - [], + [], [ #if HAVE_X11_XLIB_H #include @@ -3541,7 +3643,7 @@ dnl --------------------------------------------------------------------------- else AC_MSG_RESULT([no]) fi - + else AC_MSG_RESULT([no]) AC_MSG_WARN([Xinerama not found; disabling wxDisplay]) @@ -3549,14 +3651,9 @@ dnl --------------------------------------------------------------------------- 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 ]) + AC_CHECK_HEADERS([ddraw.h], [], [], [#include ]) fi fi @@ -3579,7 +3676,7 @@ if test "$wxUSE_OPENGL" = "yes"; then if test "$ac_find_includes" != "" ; then AC_MSG_RESULT(found in $ac_find_includes) WX_INCLUDE_PATH_EXIST($ac_find_includes, $CPPFLAGS) - CPPFLAGS="$CPPFLAGS$ac_path_to_include" + CPPFLAGS="$ac_path_to_include $CPPFLAGS" fi AC_CHECK_HEADER(GL/gl.h, @@ -3682,7 +3779,7 @@ if test "$wxUSE_SHARED" = "yes"; then if test "$GCC" = yes ; then dnl newer versions of gcc need -isystem to compile X headers on dnl Solaris (which use old style C syntax) - CPPFLAGS="$CPPFLAGS -isystem /usr/openwin/include" + CPPFLAGS="-isystem /usr/openwin/include $CPPFLAGS" dnl gcc may use Sun's ld, in which case -rpath gives a confusing dnl error message. We have to try both -Wl,-rpath and -Wl,-R: @@ -3707,7 +3804,7 @@ if test "$wxUSE_SHARED" = "yes"; then WXCONFIG_RPATH="-Wl,-R,\$libdir" ],[ AC_MSG_RESULT([no]) - ]) + ]) ]) LDFLAGS="$saveLdflags" else @@ -3715,7 +3812,7 @@ if test "$wxUSE_SHARED" = "yes"; then WXCONFIG_RPATH="-R\$libdir" fi ;; - + *-*-darwin* ) install_name_tool=`which install_name_tool` if test "$install_name_tool" -a -x "$install_name_tool"; then @@ -3732,16 +3829,18 @@ EOF chmod +x change-install-names fi ;; - + *-*-cygwin* | *-*-mingw32* ) - TOOLCHAIN_DLL_DEFS="${TOOLCHAIN_DLL_DEFS} -DWXUSINGDLL=1" - ;; - + dnl this one shouldn't be used for the library build so put it in a + dnl separate variable from WXCONFIG_CPPFLAGS + WXCONFIG_ONLY_CPPFLAGS="$WXCONFIG_ONLY_CPPFLAGS -DWXUSINGDLL" + ;; + *-*-hpux* ) SAMPLES_RPATH_FLAG="-Wl,+b,\$(top_builddir)lib" WXCONFIG_RPATH="-Wl,+b,\$libdir" - ;; - + ;; + esac if test $wxUSE_RPATH = "no"; then @@ -3848,7 +3947,7 @@ if test "$wxUSE_MAC" = 1 -o "$wxUSE_COCOA" = 1; then dnl add the resources target for wxMac LIBWXMACRES="\$(top_builddir)lib/${WX_RESOURCES_MACOSX_ASCII}" - AC_CHECK_PROG(RESCOMP, Rez, Rez, /Developer/Tools/Rez) + AC_CHECK_PROG(REZ, Rez, Rez, /Developer/Tools/Rez) AC_CHECK_PROG(DEREZ, DeRez, DeRez, /Developer/Tools/DeRez) AC_CHECK_PROG(SETFILE, SetFile, SetFile, /Developer/Tools/SetFile) @@ -3857,26 +3956,29 @@ if test "$wxUSE_MAC" = 1 -o "$wxUSE_COCOA" = 1; then dnl resources are bundled both with shared library and applications dnl since the carb resource *must* be included in the application if test "$wxUSE_MAC" = 1; then - MACRESCOMP="\$(RESCOMP) -d __DARWIN__ -t APPL Carbon.r -o" - - dnl this command is used to implement `wx-config --rezflags` and it is - dnl eval'd there so escape any metacharacters inside - MACRESWXCONFIG="${RESCOMP} -d __DARWIN__ -t APPL Carbon.r -o" + POSTLINK_COMMAND="\$(REZ) -d __DARWIN__ -t APPL Carbon.r -o" + RESCOMP="$REZ" + WXCONFIG_RESFLAGS="-d __DARWIN__ -t APPL Carbon.r -o" else - MACRESCOMP="echo -n | \$(RESCOMP) -d __DARWIN__ -t APPL ${LIBWXMACRES} -o" - MACRESWXCONFIG="echo -n \\\| ${RESCOMP} -d __DARWIN__ -t APPL \\\${exec_prefix}/lib/${WX_RESOURCES_MACOSX_ASCII} -o" + POSTLINK_COMMAND="echo -n | \$(REZ) -d __DARWIN__ -t APPL ${LIBWXMACRES}" + RESCOMP="echo -n \| $REZ" + WXCONFIG_RESFLAGS="-d __DARWIN__ -t APPL \$libdir/$WX_RESOURCES_MACOSX_ASCII" fi + else dnl default value is to (silently) do nothing in the makefile MACSETFILE="@true" - MACRESWXCONFIG="@true" - dnl confusingly, wxOS2 also uses MACRESCOMP in its post-link step if test "$wxUSE_PM" = 1; then - MACRESCOMP="emxbind -ep" + RESCOMP="emxbind" + WXCONFIG_RESFLAGS="-ep" + + dnl Is this one really used anywhere for pm? + POSTLINK_COMMAND="$RESCOMP $WXCONFIG_RESFLAGS" else - MACRESCOMP="@true" + POSTLINK_COMMAND="@true" fi + fi @@ -3900,8 +4002,6 @@ AC_CHECK_TYPES(ssize_t) 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, [ @@ -3948,8 +4048,6 @@ else fi fi -AC_LANG_RESTORE - dnl --------------------------------------------------------------------------- dnl Checks for structures dnl --------------------------------------------------------------------------- @@ -4010,7 +4108,7 @@ if test "$wxUSE_WCHAR_T" = "yes"; then dnl with g++'s in (unless -D_INCLUDE__STDC_A1_SOURCE is in the dnl flags when g++ is configured, it will declare it's own). if test "$USE_HPUX" = 1 -a "$GCC" != "yes"; then - CPPFLAGS="$CPPFLAGS -D_INCLUDE__STDC_A1_SOURCE " + CPPFLAGS="-D_INCLUDE__STDC_A1_SOURCE $CPPFLAGS" fi dnl Try to use wcsrtombs instead of wcstombs which is buggy in old GNU @@ -4024,12 +4122,6 @@ else 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 @@ -4182,8 +4274,6 @@ if test "$wxUSE_UNICODE" = yes; then [AC_MSG_RESULT([no])]); fi -AC_LANG_RESTORE - if test "x$ac_cv_header_fnmatch_h" = "xyes"; then AC_CHECK_FUNCS(fnmatch) fi @@ -4198,11 +4288,8 @@ 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 @@ -4214,9 +4301,6 @@ 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 ], @@ -4232,17 +4316,12 @@ if test "$wxUSE_ON_FATAL_EXCEPTION" = "yes" -a "$wxUSE_UNIX" = "yes"; then ]) ]) - 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 ], wx_cv_func_backtrace, [ AC_TRY_COMPILE([#include ], @@ -4281,11 +4360,9 @@ if test "$wxUSE_STACKWALKER" = "yes" -a "$wxUSE_UNIX" = "yes"; then 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 "$wxUSE_STACKWALKER" = "yes" -a "$USE_WIN32" != "1" -a "$USE_UNIX" != "1"; then AC_MSG_WARN([wxStackWalker is only available on Win32 and UNIX... disabled]) wxUSE_STACKWALKER=no fi @@ -4321,8 +4398,6 @@ AC_CACHE_CHECK(for statfs, wx_cv_func_statfs, 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( [ @@ -4341,7 +4416,6 @@ if test "$wx_cv_func_statfs" = "yes"; then wx_cv_func_statfs_decl=no ) ) - AC_LANG_RESTORE if test "$wx_cv_func_statfs_decl" = "yes"; then AC_DEFINE(HAVE_STATFS_DECL) @@ -4372,9 +4446,6 @@ else 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( [ @@ -4409,8 +4480,6 @@ else ) ) - AC_LANG_RESTORE - if test "$wx_cv_type_statvfs_t" != "unknown"; then AC_DEFINE(HAVE_STATVFS) fi @@ -4483,15 +4552,8 @@ 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 - dnl check for inet_addr and inet_aton (these may live either in libc, or in dnl libnsl or libresolv or libsocket) INET_LINK= @@ -4570,19 +4632,18 @@ dnl the next matching "else") dnl --------------------------------------------------------------------------- dnl under MSW (except mingw32) we always have thread support -CPP_MT_FLAG= 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 @@ -4633,12 +4694,11 @@ if test "$TOOLKIT" != "MSW" -a "$USE_OS2" != 1; then if test "x$GCC" = "xyes"; then dnl g++ versions before 3.3.2 don't support -pthread. $CXX -dumpspecs | grep 'pthread:' >/dev/null || - THREAD_OPTS="" + THREAD_OPTS="" else - dnl HP-UX aCC only gives a warning, not an error about - dnl -pthread but it doesn't work and we have to use - dnl -lpthread there - THREAD_OPTS="" + dnl HP-UX aCC (tested with version B3910B A.06.05 [Jul 25 + dnl 2005]) supports -mt + THREAD_OPTS="-mt" fi ;; @@ -4674,7 +4734,7 @@ if test "$TOOLKIT" != "MSW" -a "$USE_OS2" != 1; then -*) AC_MSG_CHECKING([whether pthreads work with $flag]) - THREADS_CFLAGS="$flag" + THREADS_CXXFLAGS="$flag" ;; *) @@ -4684,16 +4744,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 @@ -4701,7 +4761,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 @@ -4710,7 +4770,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]) @@ -4742,14 +4802,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 - if test "x$THREADS_CFLAGS" != "x"; then - dnl don't add these options to CPPFLAGS as cpp might not know them - CFLAGS="$CFLAGS $THREADS_CFLAGS" - CXXFLAGS="$CXXFLAGS $THREADS_CFLAGS" - fi + dnl don't add these options to CPPFLAGS as cpp might not know them + WXCONFIG_CXXFLAGS="$WXCONFIG_CXXFLAGS $THREADS_CXXFLAGS" fi fi @@ -4900,8 +4957,8 @@ else AC_CACHE_CHECK([if compiler supports -mthreads], wx_cv_cflags_mthread, [ - CFLAGS_OLD="$CFLAGS" - CFLAGS="$CFLAGS -mthreads" + CXXFLAGS_OLD="$CXXFLAGS" + CXXFLAGS="-mthreads $CXXFLAGS" AC_TRY_COMPILE([], [], wx_cv_cflags_mthread=yes, wx_cv_cflags_mthread=no @@ -4911,23 +4968,58 @@ else if test "$wx_cv_cflags_mthread" = "yes"; then dnl it does, use it - CXXFLAGS="$CXXFLAGS -mthreads" - TOOLCHAIN_DEFS="$TOOLCHAIN_DEFS -mthreads" + WXCONFIG_CXXFLAGS="$WXCONFIG_CXXFLAGS -mthreads" LDFLAGS="$LDFLAGS -mthreads" else dnl it doesn't - CFLAGS="$CFLAGS_OLD" + CXXFLAGS="$CXXFLAGS_OLD" fi ;; *-pc-os2*emx ) - CFLAGS="$CFLAGS -Zmt -D__ST_MT_ERRNO__" - CXXFLAGS="$CXXFLAGS -Zmt -D__ST_MT_ERRNO__" + WXCONFIG_CFLAGS="$WXCONFIG_CFLAGS -Zmt -D__ST_MT_ERRNO__" + WXCONFIG_CXXFLAGS="$WXCONFIG_CXXFLAGS -Zmt -D__ST_MT_ERRNO__" LDFLAGS="$LDFLAGS -Zmt" ;; esac fi fi +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, 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 + if test "x$ac_cv_func_which_gethostbyname_r" = "xno" -o \ + "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 I'm tempted to just not do this test which is taking much time and + dnl do something similar as for gethostbyaddr_r, but OTOH the macro + 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 + AC_CHECK_FUNCS(getservbyname,[ AC_DEFINE(HAVE_GETSERVBYNAME) ]) + fi + dnl For gethostbyaddr_r, we currently do no separate test, instead, we + dnl silently assume it's available exactly if gethostbyname_r is + dnl available and always requires two more arguments than + dnl gethostbyname_r. + 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) @@ -4938,7 +5030,7 @@ else if test "$ac_cv_func_strtok_r" = "yes"; then AC_MSG_CHECKING(if -D_REENTRANT is needed) if test "$NEEDS_D_REENTRANT_FOR_R_FUNCS" = 1; then - TOOLCHAIN_DEFS="${TOOLCHAIN_DEFS} -D_REENTRANT" + WXCONFIG_CPPFLAGS="$WXCONFIG_CPPFLAGS -D_REENTRANT" AC_MSG_RESULT(yes) else AC_MSG_RESULT(no) @@ -4963,26 +5055,29 @@ if test "$WXGPE" = 1 ; then AC_DEFINE_UNQUOTED(__WXGPE__,$WXGPE) fi -WXDEBUG= - +dnl DEBUG_CFLAGS contains debugging options (supposed to be the same for C and C++ +dnl compilers: we'd need a separate DEBUG_CXXFLAGS if this is ever not the case) +DEBUG_CFLAGS= if test "$wxUSE_DEBUG_INFO" = "yes" ; then - WXDEBUG="-g" + DEBUG_CFLAGS="-g" wxUSE_OPTIMISE=no fi if test "$wxUSE_DEBUG_GDB" = "yes" ; then wxUSE_DEBUG_INFO=yes if test "$GCC" = yes; then - WXDEBUG="-ggdb" + DEBUG_CFLAGS="-ggdb" fi fi if test "$wxUSE_DEBUG_FLAG" = "yes" ; then AC_DEFINE(WXDEBUG) - WXDEBUG_DEFINE="-D__WXDEBUG__" + WXCONFIG_CPPFLAGS="$WXCONFIG_CPPFLAGS -D__WXDEBUG__" else if test "$wxUSE_GTK" = 1 ; then - WXDEBUG_DEFINE="-DGTK_NO_CHECK_CASTS" + if test "x$wxGTK_VERSION" = "x1" ; then + CPPFLAGS="-DGTK_NO_CHECK_CASTS $CPPFLAGS" + fi fi fi @@ -4997,22 +5092,21 @@ if test "$wxUSE_DMALLOC" = "yes" ; then DMALLOC_LIBS="-ldmallocthcxx" fi -PROFILE= +dnl cc/cxx/ld option for profiling +PROFILE_FLAGS= if test "$wxUSE_PROFILE" = "yes" ; then - PROFILE=" -pg" + PROFILE_FLAGS=" -pg" fi -CODE_GEN_FLAGS= -CODE_GEN_FLAGS_CXX= if test "$GCC" = "yes" ; then if test "$wxUSE_NO_RTTI" = "yes" ; then - CODE_GEN_FLAGS_CXX="$CODE_GEN_FLAGS_CXX -fno-rtti" + WXCONFIG_CXXFLAGS="$WXCONFIG_CXXFLAGS -fno-rtti" fi if test "$wxUSE_NO_EXCEPTIONS" = "yes" ; then - CODE_GEN_FLAGS_CXX="$CODE_GEN_FLAGS_CXX -fno-exceptions" + WXCONFIG_CXXFLAGS="$WXCONFIG_CXXFLAGS -fno-exceptions" fi if test "$wxUSE_PERMISSIVE" = "yes" ; then - CODE_GEN_FLAGS="$CODE_GEN_FLAGS -fpermissive" + WXCONFIG_CFLAGS="$WXCONFIG_CFLAGS -fpermissive" fi dnl Ian Brown reports that versions of gcc before @@ -5028,33 +5122,39 @@ if test "$GCC" = "yes" ; then dnl TODO: test for the gcc version here (how?) case "${host}" in powerpc*-*-aix* ) - CODE_GEN_FLAGS="$CODE_GEN_FLAGS -mminimal-toc" + WXCONFIG_CFLAGS="$WXCONFIG_CFLAGS -mminimal-toc" ;; *-hppa* ) - CODE_GEN_FLAGS="$CODE_GEN_FLAGS -ffunction-sections" + WXCONFIG_CFLAGS="$WXCONFIG_CFLAGS -ffunction-sections" ;; esac fi -OPTIMISE= +dnl C/C++ compiler option for optimization (supposed to be the same for both) +OPTIMISE_CFLAGS= if test "$wxUSE_OPTIMISE" = "no" ; then if test "$GCC" = yes ; then dnl use -O0 because compiling with it is faster than compiling with no dnl optimization options at all (at least with g++ 3.2) - OPTIMISE="-O0" + OPTIMISE_CFLAGS="-O0" fi else if test "$GCC" = yes ; then - OPTIMISE="-O2" - - dnl VZ: does anybody know what does this do?? case "${host}" in - i586-*-*|i686-*-* ) - OPTIMISE="${OPTIMISE} " - ;; + *-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="-O" + OPTIMISE_CFLAGS="-O" fi fi @@ -5062,14 +5162,14 @@ dnl --------------------------------------------------------------------------- dnl compatibility level dnl --------------------------------------------------------------------------- -if test "x$WXWIN_COMPATIBILITY_2_2" = "xyes"; then - AC_DEFINE(WXWIN_COMPATIBILITY_2_2) +if test "x$WXWIN_COMPATIBILITY_2_4" = "xyes"; then + AC_DEFINE(WXWIN_COMPATIBILITY_2_4) - WXWIN_COMPATIBILITY_2_4="yes" + WXWIN_COMPATIBILITY_2_6="yes" fi -if test "x$WXWIN_COMPATIBILITY_2_4" != "xno"; then - AC_DEFINE(WXWIN_COMPATIBILITY_2_4) +if test "x$WXWIN_COMPATIBILITY_2_6" != "xno"; then + AC_DEFINE(WXWIN_COMPATIBILITY_2_6) fi dnl --------------------------------------------------------------------------- @@ -5264,7 +5364,7 @@ if test "$wxUSE_SOUND" = "yes"; then AM_PATH_SDL([1.2.0], [ EXTRALIBS_SDL="$SDL_LIBS" - CXXFLAGS="$CXXFLAGS $SDL_CFLAGS" + CXXFLAGS="$SDL_CFLAGS $CXXFLAGS" AC_DEFINE(wxUSE_LIBSDL) ], [wxUSE_LIBSDL="no"]) @@ -5273,7 +5373,7 @@ if test "$wxUSE_SOUND" = "yes"; then fi fi fi - + AC_DEFINE(wxUSE_SOUND) SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS sound" fi @@ -5281,12 +5381,12 @@ fi if test "$WXGTK20" = 1; then if test "$wxUSE_PRINTING_ARCHITECTURE" = "yes" ; then if test "$wxUSE_LIBGNOMEPRINT" = "yes" ; then - - PKG_CHECK_MODULES(LIBGNOMEPRINTUI, + + PKG_CHECK_MODULES(LIBGNOMEPRINTUI, [libgnomeprintui-2.2 >= 2.8], [ dnl EXTRALIBS_GNOMEPRINT="$LIBGNOMEPRINTUI_LIBS" - CXXFLAGS="$CXXFLAGS $LIBGNOMEPRINTUI_CFLAGS" + CXXFLAGS="$LIBGNOMEPRINTUI_CFLAGS $CXXFLAGS" AC_DEFINE(wxUSE_LIBGNOMEPRINT) ], [ @@ -5298,6 +5398,42 @@ dnl EXTRALIBS_GNOMEPRINT="$LIBGNOMEPRINTUI_LIBS" 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, + [hildon-lgpl >= 0.9], + [ + EXTRALIBS_HILDON="$HILDON_LIBS" + CXXFLAGS="$CXXFLAGS $HILDON_CFLAGS" + AC_DEFINE(wxUSE_LIBHILDON) + ], + [ + AC_MSG_WARN([libhildon_lgpl not found]) + wxUSE_LIBHILDON="no" + ] + ) + fi +fi if test "$wxUSE_CMDLINE_PARSER" = "yes"; then AC_DEFINE(wxUSE_CMDLINE_PARSER) @@ -5459,8 +5595,6 @@ if test "$wxUSE_DATETIME" = "yes"; then 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 @@ -5472,7 +5606,6 @@ if test "$wxUSE_DATETIME" = "yes"; then wx_cv_func_strptime_decl=yes, wx_cv_func_strptime_decl=no ) - AC_LANG_RESTORE ] ) fi @@ -5574,9 +5707,6 @@ if test "$wxUSE_DATETIME" = "yes"; then 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 @@ -5603,7 +5733,6 @@ if test "$wxUSE_DATETIME" = "yes"; then ] ) ) - AC_LANG_RESTORE ]) if test "$wx_cv_func_gettimeofday_has_2_args" != "yes"; then @@ -5655,7 +5784,6 @@ if test "$wxUSE_SOCKETS" = "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, [ @@ -5678,7 +5806,7 @@ if test "$wxUSE_SOCKETS" = "yes" ; then dnl least with gcc (otherwise we'd always use size_t) CXXFLAGS_OLD="$CXXFLAGS" if test "$GCC" = yes ; then - CXXFLAGS="$CXXFLAGS -Werror" + CXXFLAGS="-Werror $CXXFLAGS" fi AC_TRY_COMPILE( @@ -5739,7 +5867,7 @@ if test "$wxUSE_SOCKETS" = "yes" ; then dnl least with gcc (otherwise we'd always use size_t) CXXFLAGS_OLD="$CXXFLAGS" if test "$GCC" = yes ; then - CXXFLAGS="$CXXFLAGS -Werror" + CXXFLAGS="-Werror $CXXFLAGS" fi AC_TRY_COMPILE( @@ -5777,7 +5905,6 @@ if test "$wxUSE_SOCKETS" = "yes" ; then else AC_DEFINE_UNQUOTED(SOCKOPTLEN_T, $wx_cv_type_getsockopt5) fi - AC_LANG_POP fi fi @@ -5807,7 +5934,7 @@ if test "$wxUSE_PROTOCOL" = "yes"; then fi else if test "$wxUSE_FS_INET" = "yes"; then - AC_MSG_WARN([HTTP filesystem require protocol classes... disabled]) + AC_MSG_WARN([HTTP filesystem require protocol classes... disabled]) wxUSE_FS_INET="no" fi fi @@ -5842,14 +5969,12 @@ if test "$wxUSE_GUI" = "yes" -a "$wxUSE_JOYSTICK" = "yes"; then 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 ], [ IOHIDQueueInterface *qi = NULL; IOHIDCallbackFunction cb = NULL; qi->setEventCallout(NULL, cb, NULL, NULL); ], [ wxUSE_JOYSTICK=yes ] ) - AC_LANG_POP AC_MSG_RESULT($wxUSE_JOYSTICK) fi @@ -5862,7 +5987,7 @@ if test "$wxUSE_GUI" = "yes" -a "$wxUSE_JOYSTICK" = "yes"; then AC_DEFINE(wxUSE_JOYSTICK) SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS joytest" else - AC_MSG_WARN(Joystick not supported by this system... disabled) + AC_MSG_WARN(Joystick not supported by this system... disabled) fi fi @@ -5995,17 +6120,13 @@ if test "$USE_WIN32" = 1 -a \( "$wxUSE_DATAOBJ" = "yes" \ 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 #include ], [], [AC_MSG_RESULT(no)], [AC_MSG_RESULT(yes) - CODE_GEN_FLAGS_CXX="$CODE_GEN_FLAGS_CXX -fvtable-thunks"]) - AC_LANG_RESTORE + WXCONFIG_CXXFLAGS="$WXCONFIG_CXXFLAGS -fvtable-thunks"]) LIBS=" -lrpcrt4 -loleaut32 -lole32 -luuid$LIBS" if test "$wxUSE_OLE" = "yes" ; then AC_DEFINE(wxUSE_OLE) @@ -6194,6 +6315,12 @@ if test "$wxUSE_GRID" = "yes"; then SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS grid" 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 @@ -6301,7 +6428,7 @@ if test "$wxUSE_STATUSBAR" = "yes"; then 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 @@ -6362,6 +6489,16 @@ if test "$wxUSE_TOOLTIPS" = "yes"; then fi fi +if test "$wxUSE_TREEBOOK" = "yes"; then + AC_DEFINE(wxUSE_TREEBOOK) + 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) @@ -6448,7 +6585,7 @@ fi if test "$wxUSE_WEBKIT" = "yes"; then if test "$wxUSE_MAC" = 1 -a "$USE_DARWIN" = 1; then old_CPPFLAGS="$CPPFLAGS" - CPPFLAGS="$CPPFLAGS -x objective-c++" + CPPFLAGS="-x objective-c++ $CPPFLAGS" AC_CHECK_HEADER([WebKit/HIWebView.h], [ AC_DEFINE(wxUSE_WEBKIT) @@ -6520,6 +6657,13 @@ if test "$wxUSE_UNICODE" = "yes" -a "$wxUSE_UNICODE_MSLU" = "yes" ; then LIBS=" -lunicows $LIBS" fi +USE_RICHTEXT=0 +if test "$wxUSE_RICHTEXT" = "yes"; then + AC_DEFINE(wxUSE_RICHTEXT) + USE_RICHTEXT=1 + SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS richtext" +fi + dnl --------------------------------------------------------------------------- dnl wxImage options dnl --------------------------------------------------------------------------- @@ -6623,88 +6767,70 @@ if test "$wxUSE_WIZARDDLG" = "yes"; then fi dnl --------------------------------------------------------------------------- -dnl wxMediaCtrl +dnl wxMediaCtrl dnl --------------------------------------------------------------------------- +USE_MEDIA=0 + if test "$wxUSE_MEDIACTRL" = "yes"; then dnl ----------------------------------------------------------------------- - dnl GStreamer + dnl GStreamer dnl ----------------------------------------------------------------------- if test "$wxUSE_GTK" = 1; then wxUSE_GSTREAMER="yes" - + dnl ------------------------------------------------------------------- - dnl Test for gstreamer module from pkg-config + dnl Test for at least 0.8 gstreamer module from pkg-config + dnl Even totem doesn't accept 0.9 evidently. + dnl + dnl So, we first check to see if 0.10 if available - if not we + dnl try the older 0.8 version dnl ------------------------------------------------------------------- - PKG_CHECK_MODULES(GSTREAMER, gstreamer-0.8, + 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 + + if test "$wxUSE_GSTREAMER8" = "no"; then + PKG_CHECK_MODULES(GST, gstreamer-$GST_MAJORMINOR + gstreamer-plugins-base-$GST_MAJORMINOR + gconf-2.0, [ - CPPFLAGS="$CPPFLAGS $GSTREAMER_CFLAGS" - LIBS="$LIBS $GSTREAMER_LIBS -lgstplay-0.8" + CPPFLAGS="$GST_CFLAGS $CPPFLAGS" + LIBS="$LIBS $GST_LIBS -lgstinterfaces-$GST_MAJORMINOR" ], [ - AC_MSG_WARN([GStreamer installation not found]) - wxUSE_GSTREAMER="no" + GST_VERSION_MINOR=8 ]) - - dnl ------------------------------------------------------------------- - dnl Perform a check for a GStreamer element using gst-inspect - dnl Thomas Vander Stichele - dnl Last modification: 25/01/2005 - dnl - dnl AM_GST_ELEMENT_CHECK(ELEMENT-NAME, ACTION-IF-FOUND, ACTION-IF-NOT-FOUND) - dnl ------------------------------------------------------------------- - AC_DEFUN([AM_GST_ELEMENT_CHECK], - [ - if test "x$GST_INSPECT" == "x"; then - AC_CHECK_PROG(GST_INSPECT, gst-inspect, gst-inspect, []) - 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 + GST_VERSION_MINOR=8 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, [], + + 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, [ - wxUSE_GSTREAMER="no" - AC_MSG_WARN([xoverlay header not found, cannot use GStreamer]) + CPPFLAGS="$GST_CFLAGS $CPPFLAGS" + LIBS="$LIBS $GST_LIBS" ], - [#include ]) - - AC_MSG_CHECKING([for gstplay 0.8]) - WX_PATH_FIND_LIBRARIES([$SEARCH_LIB],gstplay-0.8) - - if test "$ac_find_libraries" = "" ; then - AC_MSG_RESULT([no]) + [ + AC_MSG_WARN([Proper GStreamer .8/.10 installation not found]) wxUSE_GSTREAMER="no" - else - AC_MSG_RESULT([yes]) + ]) fi - + + if test "$wxUSE_GSTREAMER" = "yes"; then AC_DEFINE(wxUSE_GSTREAMER) AC_MSG_RESULT([GStreamer detection successful]) fi fi + USE_MEDIA=1 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS mediaplayer" AC_DEFINE(wxUSE_MEDIACTRL) fi @@ -6768,15 +6894,14 @@ fi 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 @@ -6802,53 +6927,8 @@ if test "$USE_DARWIN" = 1 -a "$wxUSE_MAC" != 1 -a "$wxUSE_COCOA" != 1 ; 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 @@ -6858,7 +6938,7 @@ if test "$wxUSE_GUI" = "yes"; then 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" @@ -6877,15 +6957,6 @@ else fi -dnl all -I options we must pass to the compiler -dnl -dnl note that the order is somewhat important: wxWidgets headers should -dnl come first and the one with setup.h should be before $(top_srcdir)/include -dnl in case the latter contains setup.h used by non-autoconf makefiles (e.g. -dnl CodeWarrior): -INCLUDES="-I\${top_builddir}lib/wx/include/${TOOLCHAIN_FULLNAME} \ --I\${top_srcdir}/include $TOOLKIT_INCLUDE" - dnl C/C++ compiler options used to compile wxWidgets dnl dnl check for icc before gcc as icc is also recognized as gcc @@ -6922,15 +6993,34 @@ if test "x$INTELCXX" = "xyes" ; then CXXWARNINGS="-Wall -wd279,383,444,810,869,981,1418,1419" elif test "$GXX" = yes ; then dnl CXXWARNINGS="-Wall -W -Wcast-qual -Werror" - CXXWARNINGS="-Wall -Wundef -Wno-ctor-dtor-privacy" + CXXWARNINGS="-Wall -Wundef -Wno-ctor-dtor-privacy" fi -EXTRA_CFLAGS="$WXDEBUG $WXODBCFLAG $PROFILE $OPTIMISE" -dnl remove the extra white space from the cc/c++/ld options -CPPFLAGS=`echo $WXDEBUG_DEFINE $INCLUDES $CPPFLAGS` -CFLAGS=`echo $CODE_GEN_FLAGS $EXTRA_CFLAGS $CFLAGS $CWARNINGS` -CXXFLAGS=`echo $CODE_GEN_FLAGS $CODE_GEN_FLAGS_CXX $EXTRA_CFLAGS $CXXFLAGS $CXXWARNINGS` +dnl combine everything together and remove the extra white space while doing it +WXCONFIG_CFLAGS=`echo $WXCONFIG_CFLAGS` +WXCONFIG_CXXFLAGS=`echo $WXCONFIG_CFLAGS $WXCONFIG_CXXFLAGS` + + +dnl add -I options we use during library compilation +dnl +dnl note that the order is somewhat important: wxWidgets headers should +dnl come first and the one with setup.h should be before $(top_srcdir)/include +dnl in case the latter contains setup.h used by non-autoconf makefiles (e.g. +dnl CodeWarrior): +CPPFLAGS=`echo $WXCONFIG_CPPFLAGS \ + -I\\${top_builddir}lib/wx/include/${TOOLCHAIN_FULLNAME} \ + -I\\${top_srcdir}/include $TOOLKIT_INCLUDE \ + $CPPFLAGS ` + +C_AND_CXX_FLAGS="$DEBUG_CFLAGS $PROFILE_FLAGS $OPTIMISE_CFLAGS" +CFLAGS=`echo $WXCONFIG_CFLAGS $CWARNINGS $C_AND_CXX_FLAGS $CFLAGS ` +CXXFLAGS=`echo $WXCONFIG_CXXFLAGS $CXXWARNINGS $C_AND_CXX_FLAGS $CXXFLAGS ` + +dnl now that we added WXCONFIG_CPPFLAGS to CPPFLAGS we can add the wx-config +dnl only stuff to it +WXCONFIG_CPPFLAGS=`echo $WXCONFIG_CPPFLAGS $WXCONFIG_ONLY_CPPFLAGS` + if test "x$MWCC" = "xyes"; then dnl Correct MW 8.3 to be more similar to GCC. In particular we @@ -6954,22 +7044,15 @@ EXTRALIBS_XML="$EXPAT_LINK" 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_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" fi - -LDFLAGS="$LDFLAGS $PROFILE" -dnl wxGTK does not need TOOLKIT includes in wx-config -if test "$wxUSE_GTK" = 1; then - WXCONFIG_INCLUDE= -else - WXCONFIG_INCLUDE="$TOOLKIT_INCLUDE" -fi +LDFLAGS="$LDFLAGS $PROFILE_FLAGS" -WXCONFIG_EXTRALIBS="$LIBS" +WXCONFIG_LIBS="$LIBS" dnl wx-config must output builtin 3rd party libs in --libs in static build: if test "$wxUSE_REGEX" = "builtin" ; then @@ -6995,7 +7078,7 @@ if test "$wxUSE_ZLIB" = "builtin" ; then fi for i in $wxconfig_3rdparty ; do - WXCONFIG_EXTRALIBS="-lwx${i}${lib_debug_suffix}${WX_LIB_FLAVOUR}-${WX_RELEASE}${HOST_SUFFIX} $WXCONFIG_EXTRALIBS" + WXCONFIG_LIBS="-lwx${i}${lib_debug_suffix}${WX_LIB_FLAVOUR}-${WX_RELEASE}${HOST_SUFFIX} $WXCONFIG_LIBS" done @@ -7061,6 +7144,8 @@ AC_SUBST(EXTRALIBS_OPENGL) 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) AC_SUBST(DEBUG_INFO) @@ -7091,8 +7176,39 @@ if test "$wxUSE_WINE" = "yes"; then 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 "$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" + 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 + AC_BAKEFILE([m4_include(autoconf_inc.m4)]) +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 + 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 @@ -7138,6 +7254,8 @@ 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" dnl for convenience, sort the samples in alphabetical order dnl @@ -7159,9 +7277,6 @@ dnl global options AC_SUBST(WX_LIBRARY_BASENAME_NOGUI) AC_SUBST(WX_LIBRARY_BASENAME_GUI) -dnl debugging options -AC_SUBST(WXDEBUG_DEFINE) - dnl toolkit options AC_SUBST(USE_GUI) AC_SUBST(AFMINSTALL) @@ -7170,8 +7285,6 @@ AC_SUBST(TOOLKIT) AC_SUBST(TOOLKIT_DIR) AC_SUBST(TOOLCHAIN_NAME) AC_SUBST(TOOLCHAIN_FULLNAME) -AC_SUBST(TOOLCHAIN_DEFS) -AC_SUBST(TOOLCHAIN_DLL_DEFS) dnl wx-config options AC_SUBST(host_alias) @@ -7182,14 +7295,25 @@ AC_SUBST(WX_VERSION) AC_SUBST(WX_SUBVERSION) AC_SUBST(WX_CHARTYPE) AC_SUBST(WX_DEBUGTYPE) -AC_SUBST(WXCONFIG_EXTRALIBS) -AC_SUBST(WXCONFIG_INCLUDE) + +dnl note that in addition to the usual CPP/C/CXXFLAGS which are used for +dnl building the library itself, we also have WXCONFIG_-prefixed variants which +dnl are used when building the libraries using the library +dnl +dnl so put anything which should be used only during the library build in, e.g. +dnl CXXFLAGS, but put everything else (by default) into WXCONFIG_CXXFLAGS +dnl +dnl and, finally, for some things which should be only used by wx-config but +dnl not during the library compilation, use WXCONFIG_ONLY_CPPFLAGS which is +dnl added to WXCONFIG_CPPFLAGS after adding the latter to CPPFLAGS +AC_SUBST(WXCONFIG_CPPFLAGS) +AC_SUBST(WXCONFIG_CFLAGS) +AC_SUBST(WXCONFIG_CXXFLAGS) + +AC_SUBST(WXCONFIG_LIBS) AC_SUBST(WXCONFIG_RPATH) AC_SUBST(WXCONFIG_LDFLAGS_GUI) -AC_SUBST(WX_LARGEFILE_FLAGS) -AC_SUBST(GCC_PRAGMA_FLAGS) -AC_SUBST(CODE_GEN_FLAGS) -AC_SUBST(CODE_GEN_FLAGS_CXX) +AC_SUBST(WXCONFIG_RESFLAGS) AC_SUBST(EXE_LINKER) dnl distribution vars @@ -7208,6 +7332,8 @@ AC_SUBST(WX_VERSION_TAG) dnl additional resurces settings AC_SUBST(RESCOMP) +AC_SUBST(WINDRES) +AC_SUBST(REZ) AC_SUBST(RESFLAGS) AC_SUBST(RESPROGRAMOBJ) AC_SUBST(WX_RESOURCES_MACOSX_ASCII) @@ -7216,9 +7342,8 @@ AC_SUBST(WX_RESOURCES_MACOSX_DATA) dnl additional for Mac OS X AC_SUBST(DEREZ) AC_SUBST(LIBWXMACRES) -AC_SUBST(MACRESCOMP) +AC_SUBST(POSTLINK_COMMAND) AC_SUBST(MACSETFILE) -AC_SUBST(MACRESWXCONFIG) dnl other tools AC_SUBST(GCC) @@ -7233,6 +7358,23 @@ AC_PROG_MAKE_SET AC_CONFIG_HEADERS([lib/wx/include/${TOOLCHAIN_FULLNAME}/wx/setup.h:setup.h.in]) +if test "$USE_WIN32" = 1; then + AC_CONFIG_COMMANDS( + [ + rcdefs.h + ], + [ + mkdir -p $outdir && + $CPP $infile | sed 's/^# *[1-9].*//;s/^ *//;/./,/^$/!d' > $outdir/rcdefs.h + ], + [ + CPP="$CPP" + infile="$srcdir/include/wx/msw/genrcdefs.h" + outdir="lib/wx/include/$TOOLCHAIN_FULLNAME/wx/msw" + ] + ) +fi + AC_CONFIG_FILES([ lib/wx/config/${TOOLCHAIN_FULLNAME}:wx-config.in ], [ chmod +x lib/wx/config/${TOOLCHAIN_FULLNAME} ], [ TOOLCHAIN_FULLNAME="${TOOLCHAIN_FULLNAME}" ]) @@ -7243,8 +7385,7 @@ AC_CONFIG_FILES([ lib/wx/config/inplace-${TOOLCHAIN_FULLNAME}:wx-config-inplace. AC_CONFIG_FILES([ version-script Makefile ]) -AC_CONFIG_COMMANDS([ wx-config - ], +AC_CONFIG_COMMANDS([wx-config], [ rm -f wx-config ${LN_S} lib/wx/config/inplace-${TOOLCHAIN_FULLNAME} wx-config ], @@ -7259,7 +7400,7 @@ dnl on platforms that do not have symlinks. dnl AC_CONFIG_LINKS([ include/wx-$WX_RELEASE$WX_FLAVOUR:include ]) dnl AC_CONFIG_LINKS([ contrib/include ]) - +if test "$wxWITH_SUBDIRS" != "no"; then dnl Configure samples, contrib etc. directories, but only if they are present: if test "$wxUSE_GUI" = "yes"; then SUBDIRS="samples demos utils contrib" @@ -7316,7 +7457,7 @@ for subdir in `echo $SUBDIRS`; do done fi done - +fi dnl wxWITH_SUBDIRS AC_OUTPUT @@ -7332,8 +7473,8 @@ echo " Should wxWidgets be linked as a shared library? ${wxUSE_SHARED:- echo " Should wxWidgets be compiled in Unicode mode? ${wxUSE_UNICODE:-no}" echo " What level of wxWidgets compatibility should be enabled?" -echo " wxWidgets 2.2 ${WXWIN_COMPATIBILITY_2_2:-no}" -echo " wxWidgets 2.4 ${WXWIN_COMPATIBILITY_2_4:-yes}" +echo " wxWidgets 2.4 ${WXWIN_COMPATIBILITY_2_4:-no}" +echo " wxWidgets 2.6 ${WXWIN_COMPATIBILITY_2_6:-yes}" echo " Which libraries should wxWidgets use?" echo " jpeg ${wxUSE_LIBJPEG-none}" @@ -7349,6 +7490,8 @@ 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 ""