]> git.saurik.com Git - wxWidgets.git/blob - src/makewat.env
All functionality I know hot implement already implemented.
[wxWidgets.git] / src / makewat.env
1 # File: makewat.env
2 # Purpose: Watcom environments for wxWindows makefiles.
3 # Author: Julian Smart and others
4 #
5 # The main things to change are:
6 #
7 # WATCOM: set to where the compiler is installed
8 # WXDIR: set to where the wxWindows is installed
9 # MODE: set to windows [16 bit windows], nt [win32s], or win386 [32-bit non-WIN32]
10
11 FINAL=0
12 WATCOMDIR=$(%WATCOM)
13 #.EXTENSIONS: .exe .obj .c .cc .cpp .res .rc .def
14
15 # Set this to win386 if compiling under WIN386 mode, or
16 # to windows for normal 16-bit Windows, nt if compiling for WIN32s/NT
17 MODE= nt # windows
18
19 WXDIR = c:\wx
20 WXINC = $(WXDIR)\include\msw
21 WXBASEINC = $(WXDIR)\include\base
22
23 # Suffixes
24 OBJSUFF=obj
25 SRCSUFF=cpp
26
27 WXDEBUG=0
28
29 !ifneq NOPRECOMP 1
30 PRECOMP = /fh=$(WXDIR)\src\msw\watcom.pch
31 !endif
32
33 RC = wrc
34
35 !ifeq MODE win386
36
37 ##### WIN386 OPTIONS
38
39 # Set LEVEL to 386 if using 32-bit compilation
40 LEVEL = 386
41 CCC = wpp$(LEVEL)
42 CC = wcc$(LEVEL)
43 OS_TARGET = win386
44 MODEL =
45 LINKOPTION = win386
46 BINDCOMMAND = wbind
47 WATLIBDIR = $(WATCOMDIR)\lib386\win
48 MINDATA = option mindata=100K
49 MAXDATA = option maxdata=100K
50 STACK = option stack=64k
51 EXTRALIBS = $(WXDIR)\contrib\ctl3d\ctl3d32.obj
52 IFLAGS = -i=$(WXINC) -i=$(WXBASEINC) -i=$(WXDIR)\contrib\fafa -i=$(%watcom)\h;$(%watcom)\h\win
53 RESFLAGS1 = -r -bt=windows /i$(WXDIR)\include\msw /i$(WXDIR)\contrib\fafa
54 RESFLAGS2 = -R $(name) /i$(WXDIR)\include\msw /i$(WXDIR)\contrib\fafa
55 DEBUGINFO = debug all
56
57 #CPPFLAGS = /zw /w1 /zq /d2 /d__WIN386__ /zt4 $(MODEL) /d__WXMSW__
58 CPPFLAGS = /zw /w1 /zq /d1 /d__WIN386__ $(MODEL) $(PRECOMP) /d__WXMSW__ $(EXTRACPPFLAGS)
59
60 !endif
61 #### END WIN386 MODE
62
63 !ifeq MODE windows
64
65 ##### 16-BIT WINDOWS OPTIONS
66
67 # Set LEVEL to 386 if using 32-bit compilation
68 LEVEL =
69 CCC = wpp$(LEVEL)
70 CC = wcc$(LEVEL)
71 OS_TARGET = windows
72 MODEL =/ml
73 LINKOPTION = windows
74 BINDCOMMAND = echo
75 WATLIBDIR = $(WATCOMDIR)\lib286\win
76 MINDATA =
77 MAXDATA =
78 STACK =
79 EXTRALIBS=$(WATLIBDIR)\shell.lib $(WATLIBDIR)\ddeml.lib $(WATLIBDIR)\ctl3d.lib $(WATLIBDIR)\commdlg.lib $(WATLIBDIR)\mmsystem.lib
80 IFLAGS = -i=$(WXINC) -i=$(WXBASEINC) -i=$(WXDIR)\contrib\fafa
81 RESFLAGS1 = -r -bt=windows -i=$(WXINC) -i=$(WXDIR)\contrib\fafa
82 RESFLAGS2 = -R
83 DEBUGINFO = debug all
84
85 #-i=$(WXDIR)\contrib\itsybits
86
87 # Note: I've added the data threshold (/zt4) for 16-bit operation,
88 # or we get link failure (TEXT segment overflow). Is this OK for
89 # 32-bit mode also? -- JACS
90 # An alternative might be /zc (put string literals in code segment).
91 #CPPFLAGS = /zw /w1 /zq /d1 /zt4 $(MODEL) /d__WXMSW__
92 CPPFLAGS = /zw /w2 /zq /d1 $(MODEL) $(PRECOMP) /d__WXMSW__ $(EXTRACPPFLAGS)
93
94 !endif
95 #### END WINDOWS MODE
96
97 !ifeq MODE nt
98
99 ##### NT OPTIONS
100
101 LEVEL = 386
102 CCC = wpp$(LEVEL)
103 CC = wcc$(LEVEL)
104 OS_TARGET = nt_win
105 MODEL =
106 # If you use win95, assumptions will be made about Win95 icon format etc.
107 # so nt_win is probably better for simultaneous Win32s/Win95/NT operation.
108 LINKOPTION = nt_win # win95
109 BINDCOMMAND = wrc
110 WATLIBDIR = $(WATCOMDIR)\lib386\nt
111 MINDATA =
112 MAXDATA =
113 STACK = option stack=64k
114 EXTRALIBS = $(WATLIBDIR)\ctl3d32.lib $(WATLIBDIR)\odbc32.lib
115 IFLAGS = -i=$(WXINC) -i=$(WXBASEINC) -i=$(WXDIR)\contrib\fafa -i=$(%watcom)\h;$(%watcom)\h\nt
116 RESFLAGS1 = -r -bt=nt /i$(WXDIR)\include\msw /i$(WXDIR)\contrib\fafa
117 RESFLAGS2 = -R $(name) /i$(WXDIR)\include\msw /i$(WXDIR)\contrib\fafa
118 DEBUGINFO = debug all # Linking: comment out if operating in a non-debuggable environment
119
120 #-i=$(WXDIR)\contrib\itsybits
121
122 # Here are some possible optimization flags:
123 # /5r Pentium timings
124 # /fp5 /fpi87 Inline 80x87 instructions optimized for Pentium: coprocessor must be present
125 # /ox Standard optimizations
126 # /or Reordering for Pentium timings (included in /ox)
127 # The Watcom-recommended flags for optimum Pentium speed are:
128 # /oneatx /zp4 /5 /fpi87 /fp5
129
130 OPTFLAGS=/ox /5r # /DWXDEBUG=1
131
132 # /d1 for line numbers only: anything else produces an enormous wx32.lib
133 CPPFLAGS = /bt=nt /w1 /D__WIN32__ /zq $(OPTFLAGS) $(MODEL) $(PRECOMP) /d1 /d__WXMSW__ $(EXTRACPPFLAGS)
134
135 !endif
136 #### END NT MODE
137
138 .cpp.obj: # $< # .AUTODEPEND
139 *$(CCC) $(CPPFLAGS) $(IFLAGS) $<
140
141 # %create tmp.lbc
142 # @%append tmp.lbc $(CPPFLAGS) $(IFLAGS) $<
143 # echo $<
144 # $(CCC) @tmp.lbc
145
146 .c.obj: # $< # .AUTODEPEND
147 *$(CC) $(CPPFLAGS) $(IFLAGS) $<
148
149 # This doesn't work for wcc
150 # %create tmp.lbc
151 # @%append tmp.lbc $(CPPFLAGS) $(IFLAGS) $<
152 # echo $<
153 # $(CC) @tmp.lbc
154
155 dummy: .SYMBOLIC
156 @echo Please give a target for wxWin makefiles: the usual one is 'all'.
157
158 erasepch: .SYMBOLIC
159 -erase $(WXDIR)\src\msw\watcom.pch