*/
#define wxABORT_ON_CONFIG_ERROR
+/*
+ global features
+ */
+
+/* GUI build by default */
+#if !defined(wxUSE_GUI)
+# define wxUSE_GUI 1
+#endif /* !defined(wxUSE_GUI) */
+
+/* wxBase doesn't need compatibility settings as it's a new port */
+#if !wxUSE_GUI
+# undef WXWIN_COMPATIBILITY
+# undef WXWIN_COMPATIBILITY_2
+# undef WXWIN_COMPATIBILITY_2_2
+# define WXWIN_COMPATIBILITY 0
+# define WXWIN_COMPATIBILITY_2 0
+# define WXWIN_COMPATIBILITY_2_2 0
+#endif /* !wxUSE_GUI */
/*
tests for non GUI features
# endif
#endif /* !defined(wxUSE_DYNLIB_CLASS) */
+#ifndef wxUSE_FILESYSTEM
+# ifdef wxABORT_ON_CONFIG_ERROR
+# error "wxUSE_FILESYSTEM must be defined."
+# else
+# define wxUSE_FILESYSTEM 0
+# endif
+#endif /* !defined(wxUSE_FILESYSTEM) */
+
+/* don't give an error about this one yet, it's not fully implemented */
+#ifndef wxUSE_FSVOLUME
+# define wxUSE_FSVOLUME 0
+#endif /* !defined(wxUSE_FSVOLUME) */
+
#ifndef wxUSE_DYNAMIC_LOADER
# ifdef wxABORT_ON_CONFIG_ERROR
# error "wxUSE_DYNAMIC_LOADER must be defined."
# endif
#endif /* !defined(wxUSE_HTML) */
+#ifndef wxUSE_ICO_CUR
+# ifdef wxABORT_ON_CONFIG_ERROR
+# error "wxUSE_ICO_CUR must be defined."
+# else
+# define wxUSE_ICO_CUR 0
+# endif
+#endif /* !defined(wxUSE_ICO_CUR) */
+
+#ifndef wxUSE_IFF
+# ifdef wxABORT_ON_CONFIG_ERROR
+# error "wxUSE_IFF must be defined."
+# else
+# define wxUSE_IFF 0
+# endif
+#endif /* !defined(wxUSE_IFF) */
+
#ifndef wxUSE_IMAGLIST
# ifdef wxABORT_ON_CONFIG_ERROR
# error "wxUSE_IMAGLIST must be defined."
# endif
#endif /* wxUSE_PROTOCOL */
-/* non GUI settings */
-#if wxUSE_STOPWATCH
+/* have to test for wxUSE_HTML before wxUSE_FILESYSTEM */
+#if wxUSE_HTML
+# if !wxUSE_FILESYSTEM
+# ifdef wxABORT_ON_CONFIG_ERROR
+# error "wxHTML requires wxFileSystem"
+# else
+# undef wxUSE_FILESYSTEM
+# define wxUSE_FILESYSTEM 1
+# endif
+# endif
+#endif /* wxUSE_HTML */
+
+#if wxUSE_FILESYSTEM
+# if !wxUSE_STREAMS
+# ifdef wxABORT_ON_CONFIG_ERROR
+# error "wxUSE_FILESYSTEM requires wxUSE_STREAMS"
+# else
+# undef wxUSE_STREAMS
+# define wxUSE_STREAMS 1
+# endif
+# endif
+#endif /* wxUSE_FILESYSTEM */
+
+#if wxUSE_STOPWATCH || wxUSE_DATETIME
# if !wxUSE_LONGLONG
# ifdef wxABORT_ON_CONFIG_ERROR
-# error "wxUSE_STOPWATCH requires wxUSE_LONGLONG"
+# error "wxUSE_STOPWATCH and wxUSE_DATETIME require wxUSE_LONGLONG"
# else
# undef wxUSE_LONGLONG
# define wxUSE_LONGLONG 1
# endif
#endif /* wxUSE_UNICODE_MSLU */
+#if wxUSE_ODBC && wxUSE_UNICODE
+# ifdef wxABORT_ON_CONFIG_ERROR
+ /* (ODBC classes aren't Unicode-compatible yet) */
+# error "wxUSE_ODBC can't be used with wxUSE_UNICODE"
+# else
+# undef wxUSE_ODBC
+# define wxUSE_ODBC 0
+# endif
+#endif /* wxUSE_ODBC */
+
/* the rest of the tests is for the GUI settings only */
#if wxUSE_GUI
# define wxUSE_TOGGLEBTN 0
#endif
+/* wxMGL-specific dependencies */
+#ifdef __WXMGL__
+# if !wxUSE_PALETTE
+# error "wxMGL requires wxUSE_PALETTE=1"
+# endif
+#endif /* wxMGL */
+
/* generic controls dependencies */
#if !defined(__WXMSW__) || defined(__WXUNIVERSAL__)
# if wxUSE_FONTDLG || wxUSE_FILEDLG || wxUSE_CHOICEDLG