source: trunk/make/setup.os2relmscv6-16.mk@ 9120

Last change on this file since 9120 was 9120, checked in by bird, 23 years ago

Include wrc setup. Removed /Optfunc as it removed public names without removing the code; which is confusing.

File size: 3.9 KB
Line 
1# $Id: setup.os2relmscv6-16.mk,v 1.7 2002-08-24 04:59:48 bird Exp $
2
3# ---OS2, RELEASE, MSCV6-------------------------
4ENV_NAME="OS/2, Release, Microsoft C v6.0a 16-bit"
5ENV_STATUS=OK
6!if "$(ENV_ENVS)" == ""
7ENV_ENVS=vac308 mscv6-16
8!else
9ENV_ENVS_FORCE=vac308 mscv6-16
10!endif
11ENV_16BIT = 16
12
13
14#
15# Include some shared standard stuff: ALP.
16#
17!include $(PATH_MAKE)\setup.os2relalp.mk
18!include $(PATH_MAKE)\setup.os2relwrc.mk
19
20
21#
22# The tools
23#
24AR=ilib.exe
25CC=cl.exe
26CXX=false
27LINK=ilink.exe
28IMPLIB=implib.exe
29RC=rc.exe
30RL=rc.exe
31EXEPACK=lxlite.exe
32
33
34#
35# The flags
36#
37AR_FLAGS=/nologo /noignorecase
38AR_CMD=$(AR) $(AR_FLAGS) @"$(TARGET_LNK)"
39AR_LNK1= "$(@R).$(EXT_LIB)"
40AR_LNK2=y
41_AR_LNK3= +"$(TARGET_OBJS: ="&^
42 +")"
43AR_LNK3= $(_AR_LNK3:+""&^
44=)
45AR_LNK4= "$(@R).lst";
46
47
48#
49# C Compiler flags.
50#
51_CC_SEG_TEXT =
52_CC_SEG_DATA =
53_CC_SEG_XCPT =
54_CC_DEFAULT_LIBS = /Zl
55_CC_PACK = /Zp
56_CC_MODEL = /Asfw
57
58!ifdef ALL_SEG_TEXT
59_CC_SEG_TEXT=/NT$(ALL_SEG_TEXT)
60!endif
61!ifdef CC_SEG_TEXT
62_CC_SEG_TEXT=/NT$(CC_SEG_TEXT)
63!endif
64!ifdef ALL_SEG_DATA
65_CC_SEG_DATA=/ND$(ALL_SEG_TEXT)
66!endif
67!ifdef CC_SEG_DATA
68_CC_SEG_DATA=/ND$(CC_SEG_TEXT)
69!endif
70!if defined(CC_DEFAULT_LIBS) || defined(ALL_DEFAULT_LIBS)
71_CC_DEFAULT_LIBS =
72!endif
73!ifdef ALL_PACK
74_CC_PACK = /Zp$(ALL_PACK)
75!endif
76!ifdef CC_PACK
77_CC_PACK = /Zp$(CC_PACK)
78!endif
79!if !defined(CC_MODEL) && defined(ALL_MODEL)
80CC_MODEL = $(ALL_MODEL)
81!endif
82!ifdef CC_MODEL
83_CC_MODEL =
84!endif
85!if "$(CC_MODEL)" == "TINY"
86_CC_MODEL = /AT
87!endif
88!if "$(CC_MODEL)" == "SMALL"
89_CC_MODEL = /AS
90!endif
91!if "$(CC_MODEL)" == "COMPACT"
92_CC_MODEL = /AC
93!endif
94!if "$(CC_MODEL)" == "MEDIUM"
95_CC_MODEL = /AM
96!endif
97!if "$(CC_MODEL)" == "LARGE"
98_CC_MODEL = /AL
99!endif
100!if "$(CC_MODEL)" == "HUGE"
101_CC_MODEL = /AH
102!endif
103!if "$(_CC_MODEL)" == ""
104! error Invalid MODEL. CC_MODEL=$(CC_MODEL)
105!endif
106
107_CC_OPTIONAL = $(_CC_SEG_TEXT) $(_CC_SEG_DATA) $(_CC_SEG_XCPT) $(_CC_DEFAULT_LIBS) $(_CC_PACK) $(_CC_MODEL)
108
109CC_FLAGS=/nologo /c /DOS2 /D__16BIT__ /W0 /G2 /Ogeitln /Zi $(_CC_OPTIONAL) $(CC_DEFINES) $(ALL_DEFINES) $(BUILD_DEFINES) $(CC_INCLUDES) $(ALL_INCLUDES) /I$(PATH_INCLUDES)
110CC_FLAGS_EXE=$(CC_FLAGS)
111CC_FLAGS_DLL=$(CC_FLAGS)
112CC_FLAGS_SYS=$(CC_FLAGS) /DRING0 /Gs
113CC_FLAGS_IFS=$(CC_FLAGS_SYS)
114CC_OBJ_OUT=/Fo
115CC_LST_OUT=/Fl
116CC_PC_2_STDOUT=/P /C /E
117
118CXX_FLAGS=
119CXX_FLAGS_EXE=
120CXX_FLAGS_DLL=
121CXX_FLAGS_SYS=
122CXX_FLAGS_IFS=
123CXX_OBJ_OUT=
124CXX_LST_OUT=
125CXX_PC_2_STDOUT=
126
127!if "$(CC_AS_CXX)" != ""
128! if [@(ECHO) $(CLRERR)Error: CC_AS_CXX is not supported by this compiler!$(CLRRST)]
129! endif
130! error
131!endif
132!if "$(CXX_AS_CC)" != ""
133! if [@(ECHO) $(CLRERR)Error: CXX_AS_CC is not supported by this compiler!$(CLRRST)]
134! endif
135! error
136!endif
137
138IMPLIB_FLAGS=/NOI /Nologo
139
140LINK_FLAGS=/nofree /nologo /map /linenumbers /NOIgnorecase /NOE /NOD /PACKCODE /PACKDATA /EXEPACK:2 /NODEBUG
141LINK_FLAGS_EXE=$(LINK_FLAGS) /EXECutable /BASE:0x10000 /STACK:$(TARGET_STACKSIZE)
142LINK_FLAGS_DLL=$(LINK_FLAGS) /DLL
143LINK_FLAGS_SYS=$(LINK_FLAGS) /PDD /Align:16
144LINK_FLAGS_VDD=$(LINK_FLAGS) /VDD /Align:16
145LINK_FLAGS_IFS=$(LINK_FLAGS_DLL)
146LINK_CMD_EXE=$(LINK) $(LINK_FLAGS_EXE) @"$(TARGET_LNK)"
147LINK_CMD_DLL=$(LINK) $(LINK_FLAGS_DLL) @"$(TARGET_LNK)"
148LINK_CMD_SYS=$(LINK) $(LINK_FLAGS_SYS) @"$(TARGET_LNK)"
149LINK_CMD_VDD=$(LINK) $(LINK_FLAGS_VDD) @"$(TARGET_LNK)"
150LINK_CMD_IFS=$(LINK) $(LINK_FLAGS_IFS) @"$(TARGET_LNK)"
151LINK_LNK1=$(TARGET_OBJS: =+^
152),
153LINK_LNK2=$(TARGET),
154LINK_LNK3=$(TARGET_MAP),
155LINK_LNK4=$(TARGET_LIBS: =+^
156),
157LINK_LNK5=$(TARGET_DEF_LINK)
158
159RC_FLAGS=-r -n $(RC_DEFINES) $(ALL_DEFINES) $(BUILD_DEFINES) $(RC_INCLUDES:-I=-i ) $(ALL_INCLUDES:-I=-i ) -i $(PATH_INCLUDES:;= -i )
160RL_FLAGS=-x2 -n
161
162
163#
164# Libraries and object files.
165#
166!if "$(TARGET_MODE)" == "DLL" # quirk! TODO/FIXME
167_LIB_TYP = dll
168!else
169_LIB_TYP = ep
170!endif
171LIB_OS = os2286.lib
172LIB_C_OBJ = $(_OBJ_MODEL)libc$(_LIB_TYP).lib
173LIB_C_DLL = $(_OBJ_MODEL)libc$(_LIB_TYP).lib
174LIB_C_RTDLL = $(_OBJ_MODEL)libc$(_LIB_TYP).lib
175LIB_C_NRE =
176LIB_C_DMNGL =
177OBJ_PROFILE =
178
179# ---OS2, RELEASE, MSCV6-------------------------
180
Note: See TracBrowser for help on using the repository browser.