Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

72 lines
2.8 KiB

  1. // Microsoft Foundation Classes C++ library.
  2. // Copyright (C) 1992-1993 Microsoft Corporation,
  3. // All rights reserved.
  4. // This source code is only intended as a supplement to the
  5. // Microsoft Foundation Classes Reference and Microsoft
  6. // QuickHelp and/or WinHelp documentation provided with the library.
  7. // See these sources for detailed information regarding the
  8. // Microsoft Foundation Classes product.
  9. // afxv_dll.h - target version/configuration control for _AFXDLL standalone DLL
  10. // There are several legal configuration for DLL/non-DLL builds:
  11. // _AFXDLL _USRDLL _WINDLL : Configuration
  12. // ==============================================
  13. // undef undef undef : EXE using static link MFC library (1)
  14. // undef defined defined : DLL using static link MFC library (1)
  15. //
  16. // defined undef undef : EXE using dynamic link MFC250.DLL
  17. // defined undef defined : DLL using dynamic link MFC250.DLL (2)
  18. //
  19. // NOTES:
  20. // "undef" mean undefined
  21. // all other configurations are illegal
  22. // (1) these configurations handled in the main 'afxver_.h' configuration file
  23. // (2) this configuration also applies to building the MFC DLL.
  24. // There are two version of the MFC DLL:
  25. // * MFC250.DLL is the retail DLL, MFC250D.DLL is the debug DLL
  26. #ifndef _AFXDLL
  27. #error afxv_dll.h must only be included as the _AFXDLL configuration file
  28. #endif
  29. #ifndef _M_I86LM
  30. #error DLL configurations must be large model
  31. #endif
  32. // NOTE: All AFXAPIs are 'far' interfaces since they go across the boundary
  33. // between DLLs and Applications (EXEs). They are also implicitly 'export'
  34. // by using the compiler's /GEf flag. This avoids the need of adding
  35. // the 'export' keyword on all far interfaces and also allows for more
  36. // efficient exporting by ordinals.
  37. #define AFXAPI _far _pascal
  38. #define AFXAPI_DATA_TYPE _far
  39. #define AFX_STACK_DATA _far
  40. #define AFX_EXPORT _far __pascal // must compile with _GEf
  41. // Normally AFXAPI_DATA is '_far'.
  42. // When building MFC250[D].DLL we define AFXAPI_DATA to be a far pointer
  43. // based on the data segment.
  44. // This causes public data to be declared with a 'far' interface, but
  45. // places the data in DGROUP.
  46. #ifndef AFXAPI_DATA
  47. #define AFXAPI_DATA AFXAPI_DATA_TYPE
  48. #endif
  49. #ifndef AFXAPIEX_DATA
  50. #define AFXAPIEX_DATA AFXAPI_DATA_TYPE
  51. #endif
  52. /////////////////////////////////////////////////////////////////////////////
  53. // Appropriate compiler detection
  54. // * you must use the C8 compiler and the C8 headers
  55. #if (_MSC_VER < 800)
  56. #error _AFXDLL configuration requires C8 compiler
  57. #endif
  58. typedef long time_t; // redundant typedef - will give compiler
  59. // error if including C7 headers
  60. /////////////////////////////////////////////////////////////////////////////