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