dnl the file passed to AC_INIT should be specific to our package
AC_INIT(wx-config.in)
-AC_CANONICAL_HOST
+AC_CANONICAL_SYSTEM
dnl When making releases do:
dnl
USE_VMS=
USE_ULTRIX=
USE_CYGWIN=
-USE_MINGW32=
+USE_MINGW=
USE_DATA_GENERAL=
dnl the list of all available toolkits
AC_DEFINE(__WIN95__)
AC_DEFINE(__WINDOWS__)
AC_DEFINE(__GNUWIN32__)
+ AC_DEFINE(WINVER, 0x0400)
+ DEFAULT_DEFAULT_wxUSE_MSW=1
+ ;;
+ *-*-mingw32* )
+ USE_UNIX=0
+ AC_DEFINE(__WIN32__)
+ AC_DEFINE(__WIN95__)
+ AC_DEFINE(__WINDOWS__)
+ AC_DEFINE(__GNUWIN32__)
+ AC_DEFINE(WINVER, 0x0400)
DEFAULT_DEFAULT_wxUSE_MSW=1
;;
DEFAULT_wxUSE_OPTIMISE=no
DEFAULT_wxUSE_PROFILE=no
+ DEFAULT_wxUSE_NO_RTTI=no
+ DEFAULT_wxUSE_NO_EXCEPTIONS=no
DEFAULT_wxUSE_DEBUG_FLAG=yes
DEFAULT_wxUSE_DEBUG_INFO=yes
DEFAULT_wxUSE_DEBUG_GDB=yes
DEFAULT_wxUSE_LIBJPEG=no
DEFAULT_wxUSE_ODBC=no
+ DEFAULT_wxUSE_STD_IOSTREAM=no
DEFAULT_wxUSE_FILE=no
DEFAULT_wxUSE_TEXTFILE=no
DEFAULT_wxUSE_TIMEDATE=no
DEFAULT_wxUSE_COMMONDLGS=no
DEFAULT_wxUSE_DIRDLG=no
+ DEFAULT_wxUSE_TEXTDLG=no
+ DEFAULT_wxUSE_STARTUP_TIPS=no
DEFAULT_wxUSE_PROGRESSDLG=no
DEFAULT_wxUSE_MINIFRAME=no
+ DEFAULT_wxUSE_HTML=no
+ DEFAULT_wxUSE_FS_INET=no
+ DEFAULT_wxUSE_FS_ZIP=no
+ DEFAULT_wxUSE_BUSYINFO=no
+ DEFAULT_wxUSE_ZIPSTREAM=no
DEFAULT_wxUSE_VALIDATORS=yes
DEFAULT_wxUSE_ACCEL=no
DEFAULT_wxUSE_OPTIMISE=yes
DEFAULT_wxUSE_PROFILE=no
+ DEFAULT_wxUSE_NO_RTTI=no
+ DEFAULT_wxUSE_NO_EXCEPTIONS=no
DEFAULT_wxUSE_DEBUG_FLAG=no
DEFAULT_wxUSE_DEBUG_INFO=no
DEFAULT_wxUSE_DEBUG_GDB=no
DEFAULT_wxUSE_LIBJPEG=yes
DEFAULT_wxUSE_ODBC=no
+ DEFAULT_wxUSE_STD_IOSTREAM=yes
DEFAULT_wxUSE_FILE=yes
DEFAULT_wxUSE_TEXTFILE=yes
DEFAULT_wxUSE_TIMEDATE=yes
DEFAULT_wxUSE_COMMONDLGS=yes
DEFAULT_wxUSE_DIRDLG=yes
+ DEFAULT_wxUSE_TEXTDLG=yes
+ DEFAULT_wxUSE_STARTUP_TIPS=yes
DEFAULT_wxUSE_PROGRESSDLG=yes
DEFAULT_wxUSE_MINIFRAME=yes
+ DEFAULT_wxUSE_HTML=yes
+ DEFAULT_wxUSE_FS_INET=yes
+ DEFAULT_wxUSE_FS_ZIP=yes
+ DEFAULT_wxUSE_BUSYINFO=yes
+ DEFAULT_wxUSE_ZIPSTREAM=yes
DEFAULT_wxUSE_VALIDATORS=yes
DEFAULT_wxUSE_ACCEL=yes
DEFAULT_wxUSE_DEBUG_INFO=no
fi
-WX_ARG_ENABLE(debug_flag, [ --enable-debug_flag set __WXDEBUG__ flag (recommended for developers!)], wxUSE_DEBUG_FLAG)
-WX_ARG_ENABLE(debug_info, [ --enable-debug_info create code with debugging information], wxUSE_DEBUG_INFO)
-WX_ARG_ENABLE(debug_gdb, [ --enable-debug_gdb create code with extra GDB debugging information], wxUSE_DEBUG_GDB)
-WX_ARG_ENABLE(debug_cntxt, [ --enable-debug_cntxt use wxDebugContext], wxUSE_DEBUG_CONTEXT)
-WX_ARG_ENABLE(mem_tracing, [ --enable-mem_tracing create code with memory tracing], wxUSE_MEM_TRACING)
-WX_ARG_ENABLE(profile, [ --enable-profile create code with profiling information], wxUSE_PROFILE)
+WX_ARG_ENABLE(debug_flag, [ --enable-debug_flag set __WXDEBUG__ flag (recommended for developers!)], wxUSE_DEBUG_FLAG)
+WX_ARG_ENABLE(debug_info, [ --enable-debug_info create code with debugging information], wxUSE_DEBUG_INFO)
+WX_ARG_ENABLE(debug_gdb, [ --enable-debug_gdb create code with extra GDB debugging information], wxUSE_DEBUG_GDB)
+WX_ARG_ENABLE(debug_cntxt, [ --enable-debug_cntxt use wxDebugContext], wxUSE_DEBUG_CONTEXT)
+WX_ARG_ENABLE(mem_tracing, [ --enable-mem_tracing create code with memory tracing], wxUSE_MEM_TRACING)
+WX_ARG_ENABLE(profile, [ --enable-profile create code with profiling information], wxUSE_PROFILE)
+WX_ARG_ENABLE(no_rtti, [ --enable-no_rtti create code without RTTI information], wxUSE_NO_RTTI)
+WX_ARG_ENABLE(no_exceptions, [ --enable-no_exceptions create code without exceptions information], wxUSE_NO_EXCEPTIONS)
dnl ---------------------------------------------------------------------------
dnl --disable-gui will build only non-GUI part of wxWindows
dnl (small) optional non GUI classes
dnl ---------------------------------------------------------------------------
-WX_ARG_ENABLE(intl, [ --enable-intl use internationalization system], wxUSE_INTL)
-WX_ARG_ENABLE(config, [ --enable-config use wxConfig (and derived) classes], wxUSE_CONFIG)
-WX_ARG_ENABLE(sockets, [ --enable-sockets use socket/network classes], wxUSE_SOCKETS)
-WX_ARG_ENABLE(ipc, [ --enable-ipc use interprocess communication (wxSocket etc.)], wxUSE_IPC)
-WX_ARG_ENABLE(apple_ieee, [ --enable-apple_ieee use the Apple IEEE codec], wxUSE_APPLE_IEEE)
-WX_ARG_ENABLE(timedate, [ --enable-timedate use date/time classes], wxUSE_TIMEDATE)
-WX_ARG_ENABLE(wave, [ --enable-wave use wxWave class], wxUSE_WAVE)
-WX_ARG_ENABLE(fraction, [ --enable-fraction use wxFraction class], wxUSE_FRACTION)
-WX_ARG_ENABLE(dynlib, [ --enable-dynlib use wxLibrary class for DLL loading], wxUSE_DYNLIB_CLASS)
-WX_ARG_ENABLE(longlong, [ --enable-longlong use wxLongLong class], wxUSE_LONGLONG)
-WX_ARG_ENABLE(log, [ --enable-log use logging system], wxUSE_LOG)
-WX_ARG_ENABLE(streams, [ --enable-streams use wxStream etc classes], wxUSE_STREAMS)
-WX_ARG_ENABLE(file, [ --enable-file use wxFile classes], wxUSE_FILE)
-WX_ARG_ENABLE(textfile, [ --enable-textfile use wxTextFile classes], wxUSE_TEXTFILE)
-WX_ARG_ENABLE(unicode, [ --enable-unicode compile wxString with Unicode support], wxUSE_UNICODE)
-WX_ARG_ENABLE(wcsrtombs, [ --enable-wcsrtombs use wcsrtombs instead of buggy (GNU libc1/Linux libc5) wcstombs], wxUSE_WCSRTOMBS)
-WX_ARG_ENABLE(wxprintfv, [ --enable-wxprintfv use wxWindows implementation of vprintf()], wxUSE_EXPERIMENTAL_PRINTF)
-WX_ARG_ENABLE(joystick, [ --enable-joystick compile in joystick support (Linux only)], wxUSE_JOYSTICK)
+WX_ARG_ENABLE(intl, [ --enable-intl use internationalization system], wxUSE_INTL)
+WX_ARG_ENABLE(config, [ --enable-config use wxConfig (and derived) classes], wxUSE_CONFIG)
+WX_ARG_ENABLE(sockets, [ --enable-sockets use socket/network classes], wxUSE_SOCKETS)
+WX_ARG_ENABLE(ipc, [ --enable-ipc use interprocess communication (wxSocket etc.)], wxUSE_IPC)
+WX_ARG_ENABLE(apple_ieee, [ --enable-apple_ieee use the Apple IEEE codec], wxUSE_APPLE_IEEE)
+WX_ARG_ENABLE(timedate, [ --enable-timedate use date/time classes], wxUSE_TIMEDATE)
+WX_ARG_ENABLE(wave, [ --enable-wave use wxWave class], wxUSE_WAVE)
+WX_ARG_ENABLE(fraction, [ --enable-fraction use wxFraction class], wxUSE_FRACTION)
+WX_ARG_ENABLE(dynlib, [ --enable-dynlib use wxLibrary class for DLL loading], wxUSE_DYNLIB_CLASS)
+WX_ARG_ENABLE(longlong, [ --enable-longlong use wxLongLong class], wxUSE_LONGLONG)
+WX_ARG_ENABLE(log, [ --enable-log use logging system], wxUSE_LOG)
+WX_ARG_ENABLE(streams, [ --enable-streams use wxStream etc classes], wxUSE_STREAMS)
+WX_ARG_ENABLE(file, [ --enable-file use wxFile classes], wxUSE_FILE)
+WX_ARG_ENABLE(textfile, [ --enable-textfile use wxTextFile classes], wxUSE_TEXTFILE)
+WX_ARG_ENABLE(unicode, [ --enable-unicode compile wxString with Unicode support], wxUSE_UNICODE)
+WX_ARG_ENABLE(wcsrtombs, [ --enable-wcsrtombs use wcsrtombs instead of buggy (GNU libc1/Linux libc5) wcstombs], wxUSE_WCSRTOMBS)
+WX_ARG_ENABLE(wxprintfv, [ --enable-wxprintfv use wxWindows implementation of vprintf()], wxUSE_EXPERIMENTAL_PRINTF)
+WX_ARG_ENABLE(joystick, [ --enable-joystick compile in joystick support (Linux only)], wxUSE_JOYSTICK)
+WX_ARG_ENABLE(std_iostreams, [ --enable-std_iostreams use standard C++ stream classes], wxUSE_STD_IOSTREAM)
+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(zipstream, [ --enable-zipstream use wxZipInputStream], wxUSE_ZIPSTREAM)
dnl ---------------------------------------------------------------------------
dnl "big" options (i.e. those which change a lot of things throughout the library)
WX_ARG_ENABLE(commondlg, [ --enable-commondlg use common dialogs (wxDirDialog, wxProgressDialog, wxTextDialog, ...)], wxUSE_COMMONDLGS)
WX_ARG_ENABLE(dirdlg, [ --enable-dirdlg use wxDirDialog], wxUSE_DIRDLG)
+WX_ARG_ENABLE(textdlg, [ --enable-textdlg use wxTextDialog], wxUSE_TEXTDLG)
+WX_ARG_ENABLE(tipdlg, [ --enable-tipdlg use startup tips], wxUSE_STARTUP_TIPS)
WX_ARG_ENABLE(progressdlg, [ --enable-progressdlg use wxProgressDialog], wxUSE_PROGRESSDLG)
WX_ARG_ENABLE(miniframe, [ --enable-miniframe use wxMiniFrame class], wxUSE_MINIFRAME)
+WX_ARG_ENABLE(html, [ --enable-html use wxHTML sub-library], wxUSE_HTML)
WX_ARG_ENABLE(tooltips, [ --enable-tooltips use wxToolTip class], wxUSE_TOOLTIPS)
WX_ARG_ENABLE(splines, [ --enable-splines use spline drawing code], wxUSE_SPLINES)
WX_ARG_ENABLE(validators, [ --enable-validators use wxValidator and derived classes], wxUSE_VALIDATORS)
+WX_ARG_ENABLE(busyinfo, [ --enable-busyinfo use wxBusyInfo], wxUSE_BUSYINFO)
dnl cache the options values before (may be) aborting below
WX_ARG_CACHE_FLUSH
dnl cross-compiling support: we're cross compiling if the build system is
dnl different from the target one (assume host and target be always the same)
if eval "test $host != $build"; then
- if eval "test $build != NONE"; then
- CC="$build-gcc"
- CXX="$build-g++"
- RANLIB="$build-ranlib"
- NM="$build-nm"
+ if eval "test $host_alias != NONE"; then
+ CC=$host_alias-gcc
+ CXX=$host_alias-c++
+ AR=$host_alias-ar
+ RANLIB=$host_alias-ranlib
+ DLLTOOL=$host_alias-dlltool
+ LD=$host_alias-ld
+ NM=$host_alias-nm
+ STRIP=$host_alias-strip
fi
fi
WXWINE=
-if test "$wxUSE_CYGWIN" = 1; then
+if test "$wxUSE_CYGWIN" = 1 || test "$wxUSE_MINGW" = 1 ; then
AC_MSG_CHECKING(for Windows headers)
WX_PATH_FIND_INCLUDES($SEARCH_INCLUDE, windows.h)
+ INCLUDE_SUBDIRS="$INCLUDE_SUBDIRS msw"
+
+ dnl --- Quick & Dirty ; link against most/all libraries
+ dnl --- This will bloat the executable, but it'll work for now...
+ LIBS="$LIBS -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -loldnames -lcomctl32 -lctl3d32 -lcrtdll -ladvapi32 -lwsock32"
if test "$ac_find_includes" != "" ; then
AC_MSG_RESULT(found $ac_find_includes)
TOOLKIT_INCLUDE="$TOOLKIT_INCLUDE -I$ac_find_includes"
else
AC_MSG_RESULT(no)
- AC_MSG_ERROR(please set CFLAGS to contain the location of windows.h)
+ if test "$cross_compiling" != "yes" ; then
+ AC_MSG_ERROR(please set CFLAGS to contain the location of windows.h)
+ fi
fi
TOOLKIT=MSW
AC_MSG_WARN(library will be compiled without support for images in XPM format)
fi
- GUI_TK_LINK="-lXm $XPM_LINK -lXmu -lXt -lX11 -lm"
+ GUI_TK_LINK="-lXm $XPM_LINK -lXmu -lXt -lX11 -ldl -lm"
GUI_TK_LIBRARY="$GUI_TK_LIBRARY $GUI_TK_LINK"
TOOLKIT=MOTIF
fi
AC_DEFINE(WXDEBUG)
WXDEBUG_DEFINE="-D__WXDEBUG__"
else
- WXDEBUG_DEFINE="-DGTK_NO_CHECK_CASTS"
+ if test "$wxUSE_GTK" = 1 ; then
+ WXDEBUG_DEFINE="-DGTK_NO_CHECK_CASTS"
+ fi
fi
if test "$wxUSE_MEM_TRACING" = "yes" ; then
PROFILE="-pg"
fi
+if test "$GCC" = yes ; then
+ if test "$wxUSE_NO_RTTI" = "yes" ; then
+ WXDEBUG_DEFINE="$WXDEBUG_DEFINE -fno-rtti"
+ fi
+ if test "$wxUSE_NO_EXCEPTIONS" = "yes" ; then
+ WXDEBUG_DEFINE="$WXDEBUG_DEFINE -fno-exceptions"
+ fi
+fi
+
+
CXXFLAGS=`echo "${CXXFLAGS}" | sed "s/\-O.//g" `
CFLAGS=`echo "${CFLAGS}" | sed "s/\-O.//g" `
if test "$wxUSE_OPTIMISE" = "no" ; then
OPTIMISE=
else
if test "$GCC" = yes ; then
- OPTIMISE="-O2 -fno-rtti -fno-exceptions"
+ OPTIMISE="-O2"
case "${host}" in
i586-*-*|i686-*-* )
OPTIMISE="${OPTIMISE} "
AC_DEFINE(wxUSE_FILE)
fi
+if test "$wxUSE_FS_INET" = "yes"; then
+ AC_DEFINE(wxUSE_FS_INET)
+fi
+
+if test "$wxUSE_FS_ZIP" = "yes"; then
+ AC_DEFINE(wxUSE_FS_ZIP)
+fi
+
+if test "$wxUSE_ZIPSTREAM" = "yes"; then
+ AC_DEFINE(wxUSE_ZIPSTREAM)
+fi
+
+if test "$wxUSE_BUSYINFO" = "yes"; then
+ AC_DEFINE(wxUSE_BUSYINFO)
+fi
+
+if test "$wxUSE_STD_IOSTREAM" = "yes"; then
+ AC_DEFINE(wxUSE_STD_IOSTREAM)
+fi
+
if test "$wxUSE_TEXTFILE" = "yes"; then
if test "$wxUSE_FILE" != "yes"; then
AC_MSG_WARN(wxTextFile requires wxFile and it won't be compiled without it)
fi
fi
+
+AC_CHECK_FUNCS(vsscanf)
+
dnl ------------------------------------------------------------------------
dnl DLL support
dnl ------------------------------------------------------------------------
[AC_DEFINE(HAVE_SHL_LOAD) HAVE_DL_FUNCS=1 HAVE_SHL_FUNCS=1])
if test "$HAVE_DL_FUNCS" = 0; then
- AC_MSG_WARN("--with-dynlib and --with-odbc will be disabled due to missing shared library support")
- wxUSE_ODBC=no
- wxUSE_DYNLIB_CLASS=no
+ if test "$USE_UNIX" = 1; then
+ AC_MSG_WARN("--with-dynlib and --with-odbc will be disabled due to missing shared library support")
+ wxUSE_ODBC=no
+ wxUSE_DYNLIB_CLASS=no
+ else
+ AC_MSG_WARN("Cannot check dynlib requirements on non-Unix platforms. dynlib remains enabled.")
+ fi
fi
fi
if test "$wxUSE_GTK" = 1; then
if test "$WXGTK12" != 1; then
AC_MSG_WARN([Drag and drop is only supported under wxGTK 2.1])
+ wxUSE_DRAG_AND_DROP=no
fi
fi
if test "$wxUSE_MOTIF" = 1; then
AC_MSG_WARN([Drag and drop is not yet supported under Motif])
+ wxUSE_DRAG_AND_DROP=no
fi
if test "$wxUSE_DRAG_AND_DROP" = "yes"; then
if test "$wxUSE_WINE" = 1 ; then
AC_MSG_WARN([wxStaticLine is not supported under WINE])
else
- AC_DEFINE(wxUSE_STATLINE)
+ if test "$wxUSE_MOTIF" = 1 ; then
+ AC_MSG_WARN([wxStaticLine is not supported under Motif])
+ else
+ AC_DEFINE(wxUSE_STATLINE)
+ fi
fi
fi
if test "$wxUSE_TOOLTIPS" = "yes"; then
if test "$wxUSE_MOTIF" = 1; then
- AC_MSG_WARN(Tooltips are not supported yet under Motif)
+ AC_MSG_WARN(wxTooltip not supported yet under Motif)
else
if test "$wxUSE_WINE" = 1; then
- AC_MSG_WARN(Tooltips are not supported yet under WINE)
+ AC_MSG_WARN(wxTooltip not supported under WINE)
else
AC_DEFINE(wxUSE_TOOLTIPS)
fi
fi
fi
+if test "$wxUSE_TEXTDLG" = "yes"; then
+ AC_DEFINE(wxUSE_TEXTDLG)
+fi
+
+if test "$wxUSE_STARTUP_TIPS" = "yes"; then
+ if test "$wxUSE_CONSTRAINTS" != "yes"; then
+ AC_MSG_WARN(Startup tips requires constraints and won't be compiled without them)
+ else
+ AC_DEFINE(wxUSE_STARTUP_TIPS)
+ fi
+fi
+
if test "$wxUSE_PROGRESSDLG" = "yes"; then
if test "$wxUSE_CONSTRAINTS" != "yes"; then
AC_MSG_WARN(wxProgressDialog requires constraints so it won't be compiled without them)
SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS minifram"
fi
+if test "$wxUSE_HTML" = "yes"; then
+ AC_DEFINE(wxUSE_HTML)
+ SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS html"
+ INCLUDE_SUBDIRS="$INCLUDE_SUBDIRS html"
+fi
+
if test "$wxUSE_VALIDATORS" = "yes"; then
AC_DEFINE(wxUSE_VALIDATORS)
SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS validate"
INCLUDES="-I. -I\${top_builddir}/include -I\${top_srcdir}/include $ZLIB_INCLUDE $PNG_INCLUDE $JPEG_INCLUDE $TOOLKIT_INCLUDE"
dnl C/C++ compiler options used to compile wxWindows
-if test "$ac_cv_prog_gcc" = "yes"; then
+if test "$GXX" = yes ; then
dnl CXXWARNINGS="-Wall -W -Wcast-qual -Werror"
CXXWARNINGS="-Wall"
dnl there is one weird warning in docview.h:71 which prevents me from doing
fi
EXTRA_CFLAGS="$WXDEBUG $PROFILE $OPTIMISE $INCLUDES"
+CPPFLAGS="-I\${top_srcdir}/include $CPPFLAGS"
CFLAGS="$CFLAGS $EXTRA_CFLAGS"
CXXFLAGS="$CXXFLAGS $EXTRA_CFLAGS $CXXWARNINGS"
include/wx/gtk/Makefile
include/wx/motif/Makefile
include/wx/msw/Makefile
+ include/wx/msw/gnuwin32/Makefile
+ include/wx/msw/ctl3d/Makefile
include/wx/protocol/Makefile
include/wx/unix/Makefile
+ include/wx/html/Makefile
misc/Makefile
misc/afm/Makefile
misc/gs_afm/Makefile
samples/validate/Makefile
samples/wxpoem/Makefile
samples/wxsocket/Makefile
+ samples/html/Makefile
+ samples/html/about/Makefile
+ samples/html/help/Makefile
+ samples/html/test/Makefile
+ samples/html/printing/Makefile
+ samples/html/widget/Makefile
+ samples/html/virtual/Makefile
+ samples/html/zip/Makefile
],
[
chmod +x wx-config