]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/chkconf.h
better leak error reporting using VC CRT (patch 828250)
[wxWidgets.git] / include / wx / chkconf.h
index 45f5b187a2dfdab4a74ea3ca94ccaca112a21548..c752d2570915798a05885c4532a27a09f36ca5f8 100644 (file)
@@ -1,15 +1,25 @@
+/**
+* Name:        wx/chkconf.h
+* Purpose:     check the config settings for consistency
+* Author:      Vadim Zeitlin
+* Modified by:
+* Created:     09.08.00
+* RCS-ID:      $Id$
+* Copyright:   (c) 2000 Vadim Zeitlin <vadim@wxwindows.org>
+* Licence:     wxWindows licence
+*/
+
+/* THIS IS A C FILE, DON'T USE C++ FEATURES (IN PARTICULAR COMMENTS) IN IT */
+
 /*
 /*
- * Name:        wx/chkconf.h
- * Purpose:     check the config settings for consistency
- * Author:      Vadim Zeitlin
- * Modified by:
- * Created:     09.08.00
- * RCS-ID:      $Id$
- * Copyright:   (c) 2000 Vadim Zeitlin <vadim@wxwindows.org>
- * Licence:     wxWindows licence
+   Compiler-specific checking.
  */
 
  */
 
-/* THIS IS A C FILE, DON'T USE C++ FEATURES (IN PARTICULAR COMMENTS) IN IT */
+#if defined(__WXMSW__)
+#  include "wx/msw/chkconf.h"
+#elif defined(__WXMAC__)
+#  include "wx/mac/chkconf.h"
+#endif
 
 /*
    this global setting determines what should we do if the setting FOO
 
 /*
    this global setting determines what should we do if the setting FOO
 #   define wxUSE_GUI 1
 #endif /* !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
  */
 /*
    tests for non GUI features
  */
 #   endif
 #endif /* !defined(wxUSE_DYNLIB_CLASS) */
 
 #   endif
 #endif /* !defined(wxUSE_DYNLIB_CLASS) */
 
+#ifndef wxUSE_EXCEPTIONS
+#   ifdef wxABORT_ON_CONFIG_ERROR
+#       error "wxUSE_EXCEPTIONS must be defined."
+#   else
+#       define wxUSE_EXCEPTIONS 0
+#   endif
+#endif /* !defined(wxUSE_EXCEPTIONS) */
+
 #ifndef wxUSE_FILESYSTEM
 #   ifdef wxABORT_ON_CONFIG_ERROR
 #       error "wxUSE_FILESYSTEM must be defined."
 #ifndef wxUSE_FILESYSTEM
 #   ifdef wxABORT_ON_CONFIG_ERROR
 #       error "wxUSE_FILESYSTEM must be defined."
 #   endif
 #endif /* !defined(wxUSE_REGEX) */
 
 #   endif
 #endif /* !defined(wxUSE_REGEX) */
 
+#ifndef wxUSE_XML
+#   ifdef wxABORT_ON_CONFIG_ERROR
+#       error "wxUSE_XML must be defined."
+#   else
+#       define wxUSE_XML 0
+#   endif
+#endif /* !defined(wxUSE_XML) */
+
 #ifndef wxUSE_SOCKETS
 #   ifdef wxABORT_ON_CONFIG_ERROR
 #       error "wxUSE_SOCKETS must be defined."
 #ifndef wxUSE_SOCKETS
 #   ifdef wxABORT_ON_CONFIG_ERROR
 #       error "wxUSE_SOCKETS must be defined."
 #   endif
 #endif /* !defined(wxUSE_DATAOBJ) */
 
 #   endif
 #endif /* !defined(wxUSE_DATAOBJ) */
 
+#ifndef wxUSE_DISPLAY
+#   ifdef wxABORT_ON_CONFIG_ERROR
+#       error "wxUSE_DISPLAY must be defined."
+#   else
+#       define wxUSE_DISPLAY 0
+#   endif
+#endif /* !defined(wxUSE_DISPLAY) */
+
 #ifndef wxUSE_DOC_VIEW_ARCHITECTURE
 #   ifdef wxABORT_ON_CONFIG_ERROR
 #       error "wxUSE_DOC_VIEW_ARCHITECTURE must be defined."
 #ifndef wxUSE_DOC_VIEW_ARCHITECTURE
 #   ifdef wxABORT_ON_CONFIG_ERROR
 #       error "wxUSE_DOC_VIEW_ARCHITECTURE must be defined."
 #   endif
 #endif /* !defined(wxUSE_HTML) */
 
 #   endif
 #endif /* !defined(wxUSE_HTML) */
 
+#ifndef wxUSE_LIBMSPACK
+#   ifndef __UNIX__
+        /* set to 0 on platforms that don't have libmspack */
+#       define wxUSE_LIBMSPACK 0
+#   else
+#       ifdef wxABORT_ON_CONFIG_ERROR
+#           error "wxUSE_LIBMSPACK must be defined."
+#       else
+#           define wxUSE_LIBMSPACK 0
+#       endif
+#   endif
+#endif /* !defined(wxUSE_LIBMSPACK) */
+
 #ifndef wxUSE_ICO_CUR
 #   ifdef wxABORT_ON_CONFIG_ERROR
 #       error "wxUSE_ICO_CUR must be defined."
 #ifndef wxUSE_ICO_CUR
 #   ifdef wxABORT_ON_CONFIG_ERROR
 #       error "wxUSE_ICO_CUR must be defined."
 #   endif
 #endif /* !defined(wxUSE_JOYSTICK) */
 
 #   endif
 #endif /* !defined(wxUSE_JOYSTICK) */
 
+#ifndef wxUSE_LISTBOOK
+#   ifdef wxABORT_ON_CONFIG_ERROR
+#       error "wxUSE_LISTBOOK must be defined."
+#   else
+#       define wxUSE_LISTBOOK 0
+#   endif
+#endif /* !defined(wxUSE_LISTBOOK) */
+
 #ifndef wxUSE_LISTBOX
 #   ifdef wxABORT_ON_CONFIG_ERROR
 #       error "wxUSE_LISTBOX must be defined."
 #ifndef wxUSE_LISTBOX
 #   ifdef wxABORT_ON_CONFIG_ERROR
 #       error "wxUSE_LISTBOX must be defined."
 #   endif
 #endif /* !defined(wxUSE_SLIDER) */
 
 #   endif
 #endif /* !defined(wxUSE_SLIDER) */
 
+#ifndef wxUSE_SOUND
+#   ifdef wxABORT_ON_CONFIG_ERROR
+#       error "wxUSE_SOUND must be defined."
+#   else
+#       define wxUSE_SOUND 0
+#   endif
+#endif /* !defined(wxUSE_SOUND) */
+
 #ifndef wxUSE_SPINBTN
 #   ifdef wxABORT_ON_CONFIG_ERROR
 #       error "wxUSE_SPINBTN must be defined."
 #ifndef wxUSE_SPINBTN
 #   ifdef wxABORT_ON_CONFIG_ERROR
 #       error "wxUSE_SPINBTN must be defined."
 #   endif
 #endif /* !defined(wxUSE_TREECTRL) */
 
 #   endif
 #endif /* !defined(wxUSE_TREECTRL) */
 
-#ifndef wxUSE_DISPLAY
+#ifndef wxUSE_VALIDATORS
 #   ifdef wxABORT_ON_CONFIG_ERROR
 #   ifdef wxABORT_ON_CONFIG_ERROR
-#       error "wxUSE_DISPLAY must be defined."
+#       error "wxUSE_VALIDATORS must be defined."
 #   else
 #   else
-#       define wxUSE_DISPLAY 0
+#       define wxUSE_VALIDATORS 0
 #   endif
 #   endif
-#endif /* !defined(wxUSE_TREECTRL) */
+#endif /* !defined(wxUSE_VALIDATORS) */
 
 #ifndef wxUSE_WXHTML_HELP
 #   ifdef wxABORT_ON_CONFIG_ERROR
 
 #ifndef wxUSE_WXHTML_HELP
 #   ifdef wxABORT_ON_CONFIG_ERROR
 #   endif
 #endif /* wxUSE_PROTOCOL */
 
 #   endif
 #endif /* wxUSE_PROTOCOL */
 
+#if wxUSE_GZSTREAM
+#   if !wxUSE_ZLIB
+#       ifdef wxABORT_ON_CONFIG_ERROR
+#           error "wxUSE_GZSTREAM requires wxUSE_ZLIB"
+#       else
+#           undef wxUSE_ZLIB
+#           define wxUSE_ZLIB 1
+#       endif
+#   endif
+#endif /* wxUSE_GZSTREAM */
+
 /* have to test for wxUSE_HTML before wxUSE_FILESYSTEM */
 #if wxUSE_HTML
 #   if !wxUSE_FILESYSTEM
 /* have to test for wxUSE_HTML before wxUSE_FILESYSTEM */
 #if wxUSE_HTML
 #   if !wxUSE_FILESYSTEM
 #   endif
 #endif /* wxUSE_UNICODE_MSLU */
 
 #   endif
 #endif /* wxUSE_UNICODE_MSLU */
 
-#if wxUSE_ODBC && wxUSE_UNICODE
+/* ODBC and Unicode are now compatible */
+
+#if 0 // 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"
 #   ifdef wxABORT_ON_CONFIG_ERROR
         /* (ODBC classes aren't Unicode-compatible yet) */
 #       error "wxUSE_ODBC can't be used with wxUSE_UNICODE"
 #   endif
 #endif /* wxUSE_ODBC */
 
 #   endif
 #endif /* wxUSE_ODBC */
 
+#if wxUSE_XML && !wxUSE_WCHAR_T
+#   ifdef wxABORT_ON_CONFIG_ERROR
+#       error "wxUSE_XML requires wxUSE_WCHAR_T"
+#   else
+#       undef wxUSE_XML
+#       define wxUSE_XML 0
+#   endif
+#endif /* wxUSE_UNICODE_MSLU */
+
+#if !wxUSE_DYNLIB_CLASS
+#   if wxUSE_DYNAMIC_LOADER
+#       ifdef wxABORT_ON_CONFIG_ERROR
+#           error "wxUSE_DYNAMIC_LOADER requires wxUSE_DYNLIB_CLASS."
+#       else
+#           define wxUSE_DYNLIB_CLASS 1
+#       endif
+#   endif
+#endif  /* wxUSE_DYNLIB_CLASS */
+
 /* the rest of the tests is for the GUI settings only */
 #if wxUSE_GUI
 
 /* the rest of the tests is for the GUI settings only */
 #if wxUSE_GUI
 
 #    endif
 #endif /* controls */
 
 #    endif
 #endif /* controls */
 
+#if wxUSE_NOTEBOOK || wxUSE_LISTBOOK
+#   if defined(wxUSE_BOOKCTRL) && !wxUSE_BOOKCTRL
+#       ifdef wxABORT_ON_CONFIG_ERROR
+#           error "wxUSE_BOOKCTRL must be set."
+#       else
+#           undef wxUSE_BOOKCTRL
+#       endif
+#   endif
+
+#   ifndef wxUSE_BOOKCTRL
+#       define wxUSE_BOOKCTRL 1
+#   endif
+#endif /* wxUSE_NOTEBOOK */
+
+#if wxUSE_LISTBOOK
+#   if !wxUSE_LISTCTRL
+#       ifdef wxABORT_ON_CONFIG_ERROR
+#           error "wxListbook requires wxListCtrl"
+#       else
+#           undef wxUSE_LISTCTRL
+#           define wxUSE_LISTCTRL 1
+#       endif
+#   endif
+#endif /* wxUSE_LISTBOOK */
+
 /* wxUniv-specific dependencies */
 #if defined(__WXUNIVERSAL__)
 #   if (wxUSE_COMBOBOX || wxUSE_MENUS) && !wxUSE_POPUPWIN
 /* wxUniv-specific dependencies */
 #if defined(__WXUNIVERSAL__)
 #   if (wxUSE_COMBOBOX || wxUSE_MENUS) && !wxUSE_POPUPWIN
 #           define wxUSE_UNICODE_MSLU 0
 #       endif
 #   endif  /* wxUSE_UNICODE_MSLU */
 #           define wxUSE_UNICODE_MSLU 0
 #       endif
 #   endif  /* wxUSE_UNICODE_MSLU */
+#   ifndef wxUSE_UXTHEME
+#       ifdef wxABORT_ON_CONFIG_ERROR
+#           error "wxUSE_UXTHEME must be defined."
+#       else
+#           define wxUSE_UXTHEME 0
+#       endif
+#   endif  /* wxUSE_UXTHEME */
+#   ifndef wxUSE_UXTHEME_AUTO
+#       ifdef wxABORT_ON_CONFIG_ERROR
+#           error "wxUSE_UXTHEME_AUTO must be defined."
+#       else
+#           define wxUSE_UXTHEME_AUTO 0
+#       endif
+#   endif  /* wxUSE_UXTHEME_AUTO */
 #   ifndef wxUSE_MS_HTML_HELP
 #       ifdef wxABORT_ON_CONFIG_ERROR
 #           error "wxUSE_MS_HTML_HELP must be defined."
 #   ifndef wxUSE_MS_HTML_HELP
 #       ifdef wxABORT_ON_CONFIG_ERROR
 #           error "wxUSE_MS_HTML_HELP must be defined."
 #   endif
 #endif /* wxMGL */
 
 #   endif
 #endif /* wxMGL */
 
+// Hopefully we can emulate these dialogs in due course
+#if wxUSE_SMARTPHONE
+#   ifdef wxUSE_COLOURDLG
+#       undef wxUSE_COLOURDLG
+#       define wxUSE_COLOURDLG 0
+#   endif
+#endif /* wxUSE_SMARTPHONE */
+
+
 /* generic controls dependencies */
 #if !defined(__WXMSW__) || defined(__WXUNIVERSAL__)
 #   if wxUSE_FONTDLG || wxUSE_FILEDLG || wxUSE_CHOICEDLG
 /* generic controls dependencies */
 #if !defined(__WXMSW__) || defined(__WXUNIVERSAL__)
 #   if wxUSE_FONTDLG || wxUSE_FILEDLG || wxUSE_CHOICEDLG
 #           define wxUSE_COMBOBOX 1
 #       endif
 #   endif
 #           define wxUSE_COMBOBOX 1
 #       endif
 #   endif
-
-#   if !wxUSE_DOC_VIEW_ARCHITECTURE
-#       ifdef wxABORT_ON_CONFIG_ERROR
-#           error "Print architecture requires wxUSE_DOC_VIEW_ARCHITECTURE"
-#       else
-#           undef wxUSE_DOC_VIEW_ARCHITECTURE
-#           define wxUSE_DOC_VIEW_ARCHITECTURE 1
-#       endif
-#   endif
 #endif /* wxUSE_PRINTING_ARCHITECTURE */
 
 #if wxUSE_MDI_ARCHITECTURE
 #endif /* wxUSE_PRINTING_ARCHITECTURE */
 
 #if wxUSE_MDI_ARCHITECTURE