Source code of Windows XP (NT5)
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.

131 lines
5.9 KiB

  1. /* %W% %E% */
  2. /*
  3. * Copyright Microsoft Corporation, 1983-1996
  4. *
  5. * NOTE in the Languages build environment makefile copies
  6. * one of several .h files to config.h. For the NT link16,
  7. * config.h is checked in and is modified directly. This
  8. * version of config.h is a derivative of link3216.h,
  9. * checked in to sdktools\link16\langbase. -- DaveHart
  10. *
  11. * This Module contains Proprietary Information of Microsoft
  12. * Corporation and should be treated as Confidential.
  13. */
  14. /****************************************************************
  15. * *
  16. * LINKER COMPILATION CONSTANTS *
  17. * *
  18. ****************************************************************/
  19. /*
  20. * Host: NT (any platform)
  21. * Output: DOS, Segmented exe
  22. */
  23. #define TRUE (0xff) /* Necessary for Lattice C */
  24. #define FALSE 0 /* Normal FALSE value */
  25. /* Part I:
  26. * Debugging
  27. */
  28. #if !defined( DEBUG )
  29. #define DEBUG FALSE /* Debugging off */
  30. #endif
  31. #define TRACE FALSE /* Trace control flow */
  32. #define ASSRTON FALSE /* Asserts on regardless of DEBUG */
  33. #define PROFILE FALSE /* Do not generate profile */
  34. #define VMPROF FALSE /* Profile virt. memory performance */
  35. /* Part II:
  36. * Compiler
  37. */
  38. #define CXENIX TRUE /* XENIX C compiler */
  39. #define COTHER FALSE /* Other C compiler */
  40. #define CLIBSTD TRUE /* Standard C library */
  41. /* Part III:
  42. * Output format
  43. */
  44. #define ODOS3EXE TRUE /* DOS3 exe format */
  45. #define OSEGEXE TRUE /* Segmented Executable format */
  46. #define OIAPX286 FALSE /* Segmented x.out format */
  47. #define OXOUT FALSE /* x.out format */
  48. #define OEXE (ODOS3EXE || OSEGEXE)
  49. #define EXE386 FALSE /* 386 exe format capability */
  50. /* Part IV:
  51. * Linker runtime OS
  52. */
  53. #define OSXENIX FALSE /* Xenix */
  54. #define OSMSDOS TRUE /* MSDOS */
  55. #define DOSEXTENDER FALSE /* Runs under DOS extender */
  56. #define DOSX32 TRUE
  57. #define WIN_NT FALSE /* Runs under Windows NT */
  58. #define OSPCDOS FALSE /* MSDOS for IBM */
  59. #define FIXEDSTACK TRUE /* Fixed stack */
  60. /* Part V:
  61. * Input library format
  62. */
  63. #define LIBMSDOS TRUE /* MSDOS style libraries */
  64. #define LIBXENIX FALSE /* XENIX style libraries */
  65. /* Part VI:
  66. * Command line form
  67. */
  68. #define CMDMSDOS TRUE /* MSDOS command line format */
  69. #define CMDXENIX FALSE /* XENIX command line format */
  70. /* Part VII:
  71. * OEM
  72. */
  73. #define OEMINTEL FALSE /* Intel machine */
  74. #define OEMOTHER TRUE /* Some other OEM */
  75. /* Part VIII:
  76. * Runtime CPU
  77. */
  78. #define CPU8086 FALSE /* 8086 or 286 real mode*/
  79. #define CPU286 FALSE /* 286 */
  80. #define CPU386 TRUE /* 386 */
  81. #define CPUVAX FALSE /* VAX */
  82. #define CPU68K FALSE /* Motorola 68000 */
  83. #define CPUOTHER FALSE /* Some other CPU */
  84. /* Part IX:
  85. * Miscellaneous
  86. */
  87. #define NOASM TRUE /* No low-level assembler routines */
  88. #define IGNORECASE TRUE /* Ignore case of symbols */
  89. #define IOMACROS FALSE /* Use macros for InByte and OutByte */
  90. #define CRLF TRUE /* Newline: ^M^J or ^J */
  91. #define SIGNEDBYTE FALSE /* Bytes are signed */
  92. #define LOCALSYMS FALSE /* Local symbols enable/disable */
  93. #define FDEBUG TRUE /* Runtime debugging enable/disable */
  94. #define SYMDEB TRUE /* Symbolic debug support */
  95. #define FEXEPACK TRUE /* Include /EXEPACK option */
  96. #define OVERLAYS TRUE /* Produce DOS 3 overlays */
  97. #define OWNSTDIO TRUE /* Use own stdio routines */
  98. #define ECS FALSE /* Extended Character Sets support */
  99. #define OMF386 TRUE /* 386 OMF extensions */
  100. #define QBLIB TRUE /* QuickBasic/QuickC version */
  101. #define MSGMOD TRUE /* Message modularization */
  102. #define NOREGISTER FALSE /* Let compiler enregister */
  103. #define NEWSYM TRUE /* New symbol table allocation */
  104. #define NEWIO TRUE /* New file handle management */
  105. #define ILINK FALSE /* Incremental linking support */
  106. #define QCLINK FALSE /* Incremental linking support in QC */
  107. #define AUTOVM FALSE /* Auto switch to vm */
  108. #define FAR_SEG_TABLES TRUE /* Segment tables in FAR memory */
  109. #define PCODE TRUE /* Support for PCODE */
  110. #define Z2_ON TRUE /* Support undocumented option /Z2 */
  111. #define O68K FALSE /* Support for 68k OMF */
  112. #define LEGO TRUE /* Support for /KEEPF for segmented exes */
  113. #define C8_IDE TRUE /* Running under the c8 IDE */
  114. #define NEW_LIB_SEARCH TRUE /* use new library search algorithm */
  115. #define RGMI_IN_PLACE TRUE /* read directly into the segments */
  116. #define TIMINGS FALSE /* enable /BT to show times */
  117. #define ALIGN_REC TRUE /* ensure record never spans i/o buf */
  118. #define POOL_BAKPAT TRUE /* use a pool to manage backpatches */
  119. #define OUT_EXP FALSE /* enable /idef to write exports */
  120. #define USE_REAL TRUE /* enable code to use convent. memory for paging */
  121. #define DEBUG_HEAP_ALLOCS FALSE /* enable internal heap checking */