source: trunk/include/odin32.mk@ 10366

Last change on this file since 10366 was 10301, checked in by bird, 22 years ago

Synced over pe_*.obj custombuild changes.

File size: 3.9 KB
Line 
1# $Id: odin32.mk,v 1.10 2003-10-26 01:47:50 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 release 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# Altern configuration if we're making the custom build object library.
75#
76CUST =
77!if "$(CUSTOMBUILD)" == "1"
78! ifndef LIBTARGET
79! ifndef PUBLICLIB
80CUST = o
81DIREXT2 = .cust
82LIBTARGET = 1
83PUBLICLIB = 1
84WRC_PREFIX_RESOURCE=1
85! else
86CUSTOMBUILD = 0
87! endif
88! else
89CUSTOMBUILD = 0
90! endif
91!endif
92
93
94#
95# Target directories.
96# Both bin and lib directories are compiler dependent.
97#
98!ifndef ODIN32_BIN
99! ifdef DEBUG
100! ifndef PROFILE
101ODIN32_BIN = $(ODIN32_BIN_)\Debug
102ODIN32_BIN__= $(ODIN32_BIN_)\Debug
103! else
104ODIN32_BIN = $(ODIN32_BIN_)\Profile
105ODIN32_BIN__= $(ODIN32_BIN_)\Profile
106! endif
107! else
108! ifdef PROFILE
109ODIN32_BIN = $(ODIN32_BIN_)\Profile
110ODIN32_BIN__= $(ODIN32_BIN_)\Profile
111! else
112ODIN32_BIN = $(ODIN32_BIN_)\Release
113ODIN32_BIN__= $(ODIN32_BIN_)\Release
114! endif
115! endif
116!endif
117
118!ifndef ODIN32_LIB
119! ifdef DEBUG
120! ifndef PROFILE
121ODIN32_LIB = $(ODIN32_LIB_)\Debug
122ODIN32_LIB__= $(ODIN32_LIB_)\Debug
123! else
124ODIN32_LIB = $(ODIN32_LIB_)\Profile
125ODIN32_LIB__= $(ODIN32_LIB_)\Profile
126! endif
127! else
128! ifdef PROFILE
129ODIN32_LIB = $(ODIN32_LIB_)\Profile
130ODIN32_LIB__= $(ODIN32_LIB_)\Profile
131! else
132ODIN32_LIB = $(ODIN32_LIB_)\Release
133ODIN32_LIB__= $(ODIN32_LIB_)\Release
134! endif
135! endif
136!endif
137
138!ifndef OBJDIR
139! ifdef DEBUG
140! ifndef PROFILE
141OBJDIR = .\bin\Debug$(DIREXT)$(DIREXT2)
142! else
143OBJDIR = .\bin\Profile$(DIREXT)$(DIREXT2)
144! endif
145! else
146! ifdef PROFILE
147OBJDIR = .\bin\Profile$(DIREXT)$(DIREXT2)
148! else
149OBJDIR = .\bin\Release$(DIREXT)$(DIREXT2)
150! endif
151! endif
152!endif
153
154
155#
156# Post include macro.
157#
158ODIN32_POST_INC = $(ODIN32_INCLUDE)/odin32.post.mk
159
160
161#
162# Common rules macro. (All makefiles should have these!)
163# (Please don't change order of these rules!)
164#
165COMMONRULES = cleanall clean dep lib all nothing
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.