source: trunk/include/odin32.mk@ 8045

Last change on this file since 8045 was 6910, checked in by bird, 24 years ago

NMAKE watcom config. Profile overrides debug mode.

File size: 4.0 KB
Line 
1# $Id: odin32.mk,v 1.7 2001-10-01 01:27:54 bird Exp $
2
3#
4# Odin32 API
5#
6# Create: cdmckill@novice.uwaterloo.ca, January 4th, 1998
7# Modified: phaller@gmx.net, May 27th, 1999
8# knut.stange.osmundsen@mynd.no, 2nd Dec. 2000
9#
10
11#
12# defines
13# DEBUG - build a debug version instead of release version
14# PROFILE - build a profile debug version instead of release version
15# CCENV:
16# VAC3 - use IBM VisualAge for C++ 3 compiler environment (default).
17# VAC36 - use IBM VisualAge for C++ 3.6.5 compiler environment.
18# WAT - use Watcom C/C++ v11.x compiler environment.
19# EMX - use GNU/EMX compiler environment. (don't work!)
20#
21
22#
23# Determin compiler environment
24#
25!ifndef __VERSION__
26NMAKE = 1
27! ifndef CCENV
28CCENV = VAC3
29MKFILE = $(CCENV)
30DIREXT =
31VAC3 = 1
32! else
33! if "$(CCENV)" == "VAC36"
34CCENV = VAC36
35MKFILE = $(CCENV)
36DIREXT = .vac36
37VAC36 = 1
38! else
39! if "$(CCENV)" == "EMX"
40CCENV = EMX
41MKFILE = $(CCENV)
42DIREXT = .emx
43EMXENV = 1 # Can't use EMX. (SET EMX will show you why)
44! else
45! if "$(CCENV)" == "WAT"
46# (nmake and Watcom)
47CCENV = WAT
48MKFILE = WATN
49DIREXT = .wat
50WAT = 1
51! else
52# default compiler
53CCENV = VAC3
54MKFILE = $(CCENV)
55DIREXT =
56VAC3 = 1
57! endif
58! endif
59! endif
60! endif
61!else
62# (wmake and Watcom)
63WMAKE = 1
64CCENV = WAT
65MKFILE = $(CCENV)
66DIREXT = .wat
67WAT = 1
68! if "$(%DEBUG)" != ""
69DEBUG = 1
70! endif
71!endif
72
73
74#
75# Target directories.
76# Both bin and lib directories are compiler dependent.
77#
78!ifndef ODIN32_BIN
79! ifdef DEBUG
80! ifndef PROFILE
81ODIN32_BIN = $(ODIN32_BIN_)\Debug$(DIREXT)
82ODIN32_BIN__= $(ODIN32_BIN_)\Debug$(DIREXT)
83! else
84ODIN32_BIN = $(ODIN32_BIN_)\Profile$(DIREXT)
85ODIN32_BIN__= $(ODIN32_BIN_)\Profile$(DIREXT)
86! endif
87! else
88! ifdef PROFILE
89ODIN32_BIN = $(ODIN32_BIN_)\Profile$(DIREXT)
90ODIN32_BIN__= $(ODIN32_BIN_)\Profile$(DIREXT)
91! else
92ODIN32_BIN = $(ODIN32_BIN_)\Release$(DIREXT)
93ODIN32_BIN__= $(ODIN32_BIN_)\Release$(DIREXT)
94! endif
95! endif
96!endif
97
98!ifndef ODIN32_LIB
99! ifdef DEBUG
100! ifndef PROFILE
101ODIN32_LIB = $(ODIN32_LIB_)\Debug$(DIREXT)
102ODIN32_LIB__= $(ODIN32_LIB_)\Debug$(DIREXT)
103! else
104ODIN32_LIB = $(ODIN32_LIB_)\Profile$(DIREXT)
105ODIN32_LIB__= $(ODIN32_LIB_)\Profile$(DIREXT)
106! endif
107! else
108! ifdef PROFILE
109ODIN32_LIB = $(ODIN32_LIB_)\Profile$(DIREXT)
110ODIN32_LIB__= $(ODIN32_LIB_)\Profile$(DIREXT)
111! else
112ODIN32_LIB = $(ODIN32_LIB_)\Release$(DIREXT)
113ODIN32_LIB__= $(ODIN32_LIB_)\Release$(DIREXT)
114! endif
115! endif
116!endif
117
118!ifndef OBJDIR
119! ifdef DEBUG
120! ifndef PROFILE
121OBJDIR = .\bin\Debug$(DIREXT)
122! else
123OBJDIR = .\bin\Profile$(DIREXT)
124! endif
125! else
126! ifdef PROFILE
127OBJDIR = .\bin\Profile$(DIREXT)
128! else
129OBJDIR = .\bin\Release$(DIREXT)
130! endif
131! endif
132!endif
133
134
135#
136# Post include macro.
137#
138ODIN32_POST_INC = $(ODIN32_INCLUDE)/odin32.post.mk
139
140
141#
142# Common rules macro. (All makefiles should have these!)
143# (Please don't change order of these rules!)
144#
145COMMONRULES = clean dep lib all nothing
146
147
148#
149# Altern configuration if we're making the custom build object library.
150#
151CUST =
152!if "$(CUSTOMBUILD)" == "1"
153! ifndef LIBTARGET
154! ifndef PUBLICLIB
155CUST = o
156LIBTARGET = 1
157PUBLICLIB = 1
158WRC_PREFIX_RESOURCE=1
159! else
160CUSTOMBUILD = 0
161! endif
162! else
163CUSTOMBUILD = 0
164! endif
165!endif
166
167
168#
169# Include compiler environment.
170#
171!ifndef ONLY_TOOLS
172!ifdef DEBUG
173! ifndef PROFILE
174! include $(ODIN32_INCLUDE)/odin32.dbg.$(MKFILE).mk
175! else
176! include $(ODIN32_INCLUDE)/odin32.profile.$(MKFILE).mk
177! endif
178!else
179! ifdef PROFILE
180! include $(ODIN32_INCLUDE)/odin32.profile.$(MKFILE).mk
181! else
182! include $(ODIN32_INCLUDE)/odin32.rel.$(MKFILE).mk
183! endif
184!endif
185!endif
186
187
188#
189# Compiler environment modifications for custombuild.
190#
191!if "$(CUSTOMBUILD)" == "1"
192DLLENTRY =
193!endif
194
195
196#
197# Include system tools
198#
199!include $(ODIN32_INCLUDE)/odin32.tools.mk
200
Note: See TracBrowser for help on using the repository browser.