comparison nt/config.inc.samp @ 1203:5f2f8dcbfb3e

[xemacs-hg @ 2003-01-12 11:04:30 by michaels] 2002-12-16 Ben Wing <ben@xemacs.org> * README (NOTE): * config.inc.samp: * config.inc.samp (PACKAGE_PREFIX): * config.inc.samp (GTK_DIR): * config.inc.samp (COMPFACE_DIR): * config.inc.samp (USE_FASTCALL): * config.inc.samp (HAVE_VC6): New. * config.inc.samp (PROFILE_SUPPORT): * config.inc.samp (DEBUG_XEMACS): * config.inc.samp (USE_PORTABLE_DUMPER): * config.inc.samp (USE_KKCC): New. * config.inc.samp (USE_UNION_TYPE): New. * xemacs.dsp (CFG): * xemacs.mak (HAVE_VC6): * xemacs.mak (ERROR_CHECK_ALL): New. * xemacs.mak (CPLUSPLUS_COMPILE): New. * xemacs.mak (USE_KKCC): New. * xemacs.mak (USE_UNION_TYPE): New. * xemacs.mak (USE_PORTABLE_DUMPER): * xemacs.mak (PROFILE_FLAGS): * xemacs.mak (CPLUSPLUS_COMPILE_FLAGS): New. * xemacs.mak (DUMPER_DEFINES): * xemacs.mak (KKCC_DEFINES): New. * xemacs.mak (DEFINES): * xemacs.mak (LASTFILE_FLAGS): * xemacs.mak (TEMACS_CPP_FLAGS_NO_CFLAGS): * xemacs.mak (OS): Support C++ compilation, KKCC compilation. See src/ChangeLog. Add stuff about the evilness of USE_UNION_TYPE.
author michaels
date Sun, 12 Jan 2003 11:04:30 +0000
parents 79c6ff3eef26
children 465bd3c7d932
comparison
equal deleted inserted replaced
1202:6041a741b6d6 1203:5f2f8dcbfb3e
1 # -*- mode: makefile -*- 1 # -*- mode: makefile -*-
2 2
3 ############################################################################
4 # Install options #
3 ############################################################################ 5 ############################################################################
4 6
5 INSTALL_DIR=c:\Program Files\XEmacs\XEmacs-$(XEMACS_VERSION_STRING) 7 INSTALL_DIR=c:\Program Files\XEmacs\XEmacs-$(XEMACS_VERSION_STRING)
6 8
7 PACKAGE_PREFIX=c:\Program Files\XEmacs 9 PACKAGE_PREFIX=c:\Program Files\XEmacs
8 10
11 ############################################################################
12 # Compiled-in features: basic #
9 ############################################################################ 13 ############################################################################
10 14
11 # Multilingual support. 15 # Multilingual support.
12 MULE=0 16 MULE=0
13 17
24 # Yes, we know that gtk has been ported to native MSWindows 28 # Yes, we know that gtk has been ported to native MSWindows
25 # but XEmacs is not yet ready to use that port. 29 # but XEmacs is not yet ready to use that port.
26 HAVE_GTK=0 30 HAVE_GTK=0
27 GTK_DIR= 31 GTK_DIR=
28 32
33 ############################################################################
34 # Compiled-in features: graphics formats #
29 ############################################################################ 35 ############################################################################
30 36
31 # Set this to enable XPM support (virtually mandatory), and specify 37 # Set this to enable XPM support (virtually mandatory), and specify
32 # the directory containing xpm. 38 # the directory containing xpm.
33 HAVE_XPM=1 39 HAVE_XPM=1
54 # compface. 60 # compface.
55 HAVE_XFACE=0 61 HAVE_XFACE=0
56 COMPFACE_DIR= 62 COMPFACE_DIR=
57 63
58 ############################################################################ 64 ############################################################################
65 # Build settings #
66 ############################################################################
59 67
60 # Set this to specify the location of makeinfo. (If not set, XEmacs will 68 # Set this to specify the location of makeinfo. (If not set, XEmacs will
61 # attempt to use its built-in texinfo support when building info files.) 69 # attempt to use its built-in, much slower texinfo support when building
62 MAKEINFO=c:\src\texinfo-4.0\makeinfo\makeinfo.exe 70 # info files.) If you are building XEmacs yourself, you probably have
63 71 # Cygwin sitting around already. If not, you should. Cygwin provides a
64 ############################################################################ 72 # `makeinfo.exe' in /usr/bin/makeinfo.
73 MAKEINFO=c:\cygwin\usr\bin\makeinfo.exe
65 74
66 # Set this to turn on optimization when compiling. 75 # Set this to turn on optimization when compiling.
67 OPTIMIZED_BUILD=0 76 OPTIMIZED_BUILD=0
68 77
69 # Set this to build with the fastcall calling convention, which uses registers 78 # Set this to build with the fastcall calling convention, which uses registers
70 # instead of the stack and should speed things up a bit 79 # instead of the stack and should speed things up a bit
71 # #### Change to 1 when I check in the ws with support for fastcall 80 # #### Change to 1 when I check in the ws with support for fastcall
72 USE_FASTCALL=0 81 USE_FASTCALL=0
73 82
74 # Set this to compile in support for profiling. If you want line-by-line 83 # True if running VC++ 6 or later.
75 # profiling under VC++, you also need debugging turned on. 84 HAVE_VC6=1
76 PROFILE_SUPPORT=0
77 85
78 ############################################################################ 86 ############################################################################
79 # Development options # 87 # Development options #
80 ############################################################################ 88 ############################################################################
89
90 # Set this to compile in support for profiling. If you want line-by-line
91 # profiling under VC++, you also need debugging turned on.
92 PROFILE_SUPPORT=0
81 93
82 # Set this to enable debug code in XEmacs that doesn't slow things down, 94 # Set this to enable debug code in XEmacs that doesn't slow things down,
83 # and to add debugging information to the executable. (The code that's 95 # and to add debugging information to the executable. (The code that's
84 # enabled in XEmacs is primarily extra commands that aid in debugging 96 # enabled in XEmacs is primarily extra commands that aid in debugging
85 # problems. The kind of debugging code that slows things down -- 97 # problems. The kind of debugging code that slows things down --
86 # i.e. internal error-checking -- is controlled by the ERROR_CHECK_ALL 98 # i.e. internal error-checking -- is controlled by the ERROR_CHECK_ALL
87 # variable, below.) 99 # variable, below.)
88 DEBUG_XEMACS=1 100 DEBUG_XEMACS=1
89 101
90 # True if running VC++ 6 or later.
91 HAVE_VC6=1
92
93 # Uncomment this to turn off or on the error-checking code, which adds 102 # Uncomment this to turn off or on the error-checking code, which adds
94 # abundant internal error checking (and slows things down a lot). Normally, 103 # abundant internal error checking (and slows things down a lot). Normally,
95 # leave this alone -- it will be on for beta builds and off for release 104 # leave this alone -- it will be on for beta builds and off for release
96 # builds. 105 # builds.
97 # ERROR_CHECK_ALL=0 106 # ERROR_CHECK_ALL=0
107
108 # Uncomment this to turn on or off whether we compile source files as C++
109 # files. This turns on additional error checking of various sorts. Normally,
110 # leave it alone -- it will be on when ERROR_CHECK_ALL is on.
111 # CPLUSPLUS_COMPILE=0
98 112
99 # Set this to speed up building, for development purposes. 113 # Set this to speed up building, for development purposes.
100 QUICK_BUILD=0 114 QUICK_BUILD=0
101 115
102 # Set this to see exactly which compilation commands are being run (not 116 # Set this to see exactly which compilation commands are being run (not
109 123
110 # Set this to use the portable dumper for dumping the preloaded Lisp 124 # Set this to use the portable dumper for dumping the preloaded Lisp
111 # routines, instead of the older "unexec" routines in unexnt.c. 125 # routines, instead of the older "unexec" routines in unexnt.c.
112 USE_PORTABLE_DUMPER=1 126 USE_PORTABLE_DUMPER=1
113 127
114 # Set this to get improved type checking of Lisp_Objects -- with this 128 # Set this to use new experimental GC algorithms.
115 # setting, they're declared as unions instead of ints, and so places where 129 USE_KKCC=0
116 # a Lisp_Object is mistakenly passed to a routine expecting an int (or
117 # vice-versa), or a check is written `if (foo)' instead of `if (!NILP
118 # (foo))', will be flagged as errors. (All of these do NOT lead to the
119 # expected results! Qnil is not represented as 0 (so if (foo) will
120 # *ALWAYS* be true for a Lisp_Object), the representation of an integer as
121 # a Lisp_Object is not just the integer's numeric value (but usually 2x the
122 # integer +/- 1).
123 130
124 # Some also claim it simplifies debugging, but I don't really believe them. 131 # Set this to turn on the use of the union type, which gets you improved
125 # Definitely don't do your normal builds this way, because you may well get 132 # type checking of Lisp_Objects -- they're declared as unions instead of
126 # less efficiency, and could conceivably trigger compiler bugs (has definitely happened, many times, with gcc). 133 # ints, and so places where a Lisp_Object is mistakenly passed to a routine
127 # USE_UNION_TYPE=1 134 # expecting an int (or vice-versa), or a check is written `if (foo)'
135 # instead of `if (!NILP (foo))', will be flagged as errors. (All of these
136 # do NOT lead to the expected results! Qnil is not represented as 0 [so if
137 # (foo) will *ALWAYS* be true for a Lisp_Object], and the representation of
138 # an integer as a Lisp_Object is not just the integer's numeric value, but
139 # usually 2x the integer +/- 1.)
140
141 # There used to be a claim that it simplified debugging. There may have
142 # been a grain of truth to this pre-19.8, when there was no lrecord type
143 # and all objects had a separate type appearing in the tag. Nowadays,
144 # however, there is no debugging gain, and in fact frequent debugging *LOSS*,
145 # since many debuggers don't handle unions very well, and usually there is
146 # no way to directly specify a union from a debugging prompt.
147
148 # Furthermore, release builds should *NOT* be done this way because (a) you
149 # may get less efficiency, with compilers that can't figure out how to
150 # optimize the union into a machine word; (b) even worse, the union type
151 # often triggers compiler bugs, especially when combined with Mule and
152 # error-checking. This has been the case with various times using GCC,
153 # *AND CURRENTLY HAPPENS WITH VC++*, at least when using pdump. Therefore,
154 # be warned!
155 USE_UNION_TYPE=0