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_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_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
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
dnl AC_LIBTOOL_WIN32_DLL
dnl disable static libs by default, this takes too much time...
-AM_DISABLE_STATIC
+dnl libtool doesn't work on anything but Linux and maybe
+dnl ***BSD
+
+case "${host}" in
+ *-hp-hpux* )
+ AM_DISABLE_SHARED
+ ;;
+ *-*-linux* )
+ AM_DISABLE_STATIC
+ ;;
+ *-*-irix5* | *-*-irix6* )
+ AM_DISABLE_SHARED
+ ;;
+ *-*-solaris2* )
+ AM_DISABLE_SHARED
+ ;;
+ *-*-sunos4* )
+ AM_DISABLE_SHARED
+ ;;
+ *-*-freebsd* | *-*-netbsd*)
+ AM_DISABLE_STATIC
+ ;;
+ *-*-osf* )
+ AM_DISABLE_SHARED
+ ;;
+ *-*-dgux5* )
+ AM_DISABLE_SHARED
+ ;;
+ *-*-sysv5* )
+ AM_DISABLE_SHARED
+ ;;
+ *-*-aix* )
+ AM_DISABLE_SHARED
+ ;;
+ *-*-cygwin32* )
+ AM_DISABLE_STATIC
+ ;;
+ *-*-mingw32* )
+ AM_DISABLE_STATIC
+ ;;
+ *-pc-os2_emx )
+ AM_DISABLE_SHARED
+ ;;
+ *)
+ AC_MSG_ERROR(unknown system type ${host}.)
+esac
+
AM_PROG_LIBTOOL
dnl ---------------------------------------------------------------------------
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_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
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"
dnl TODO some samples are never built so far:
dnl mfc, nativdlg, oleauto, ownerdrw, proplist
SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS bombs controls dialogs drawing dynamic \
- forty fractal image richedit wxpoem"
+ forty fractal image wxpoem"
fi
dnl for convenience, sort the files to build in alphabetical order
dnl colon)
AC_OUTPUT([
wx-config
+ makefile.unx
Makefile
src/Makefile
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/help/Makefile
samples/image/Makefile
samples/internat/Makefile
- samples/joytest/Makefile
samples/layout/Makefile
samples/listctrl/Makefile
samples/mdi/Makefile
samples/memcheck/Makefile
- samples/mfc/Makefile
samples/minifram/Makefile
samples/minimal/Makefile
- samples/nativdlg/Makefile
samples/notebook/Makefile
- samples/oleauto/Makefile
- samples/ownerdrw/Makefile
samples/png/Makefile
samples/printing/Makefile
samples/proplist/Makefile
- samples/regtest/Makefile
samples/resource/Makefile
- samples/richedit/Makefile
samples/sashtest/Makefile
samples/scroll/Makefile
samples/splitter/Makefile
- samples/tab/Makefile
- samples/taskbar/Makefile
samples/text/Makefile
samples/thread/Makefile
samples/toolbar/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