Changeset 353 for trunk/kBuild/tools/VCC70.kmk
- Timestamp:
- Dec 12, 2005, 4:36:07 AM (20 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/kBuild/tools/VCC70.kmk
r339 r353 4 4 # kBuild Tool Config - Visual C++ 7.0 (aka Visual .NET) 5 5 # 6 # Copyright (c) 2004 knut st. osmundsen <bird-srcspam@anduin.net>6 # Copyright (c) 2004-2005 knut st. osmundsen <bird-srcspam@anduin.net> 7 7 # 8 8 # … … 84 84 define TOOL_VCC70_COMPILE_C 85 85 #$ (warning dbg: TOOL_VCC70_COMPILE_C: target=$(target) source=$(source) obj=$(obj) dep=$(dep) flags=$(flags) defs=$(defs) incs=$(incs) dirdep=$(dirdep) outbase=$(outbase) objsuff=$(objsuff)) 86 $(obj) : $(deps) $(source) | $(dirdep)86 $(obj) $(call TOOL_VCC70_PDB, $(outbase)-obj): $(deps) $(source) | $(dirdep) 87 87 $(call MSG_L2,Compiling $$@ using VCC70) 88 88 $(TOOL_VCC70_CC) -c\ 89 89 $(flags) $(addprefix -I, $(incs)) $(addprefix -D, $(defs))\ 90 -Fd$(outbase) .pdb \90 -Fd$(outbase)-obj.pdb \ 91 91 -Fo$(obj)\ 92 92 $(subst /,\\,$(call ABSPATH,$(source))) … … 95 95 $(subst /,\\,$(call ABSPATH,$(source)))\ 96 96 | $(DEP_PRE) -f -s -o $(dep) -t $(obj) - 97 _OUT_FILES += $(call TOOL_VCC70_PDB, $(outbase) )97 _OUT_FILES += $(call TOOL_VCC70_PDB, $(outbase)-obj) 98 98 99 99 endef … … 115 115 define TOOL_VCC70_COMPILE_CXX 116 116 #$ (warning dbg: TOOL_VCC70_COMPILE_CXX: target=$(target) source=$(source) obj=$(obj) dep=$(dep) flags=$(flags) defs=$(defs) incs=$(incs) dirdep=$(dirdep) outbase=$(outbase) objsuff=$(objsuff)) 117 $(obj) : $(deps) $(source) | $(dirdep)117 $(obj) $(call TOOL_VCC70_PDB, $(outbase)-obj): $(deps) $(source) | $(dirdep) 118 118 $(call MSG_L2,Compiling $$@ using VCC70) 119 119 $(TOOL_VCC70_CXX) -c\ 120 120 $(flags) $(addprefix -I, $(incs)) $(addprefix -D, $(defs))\ 121 -Fd$(outbase) .pdb \121 -Fd$(outbase)-obj.pdb \ 122 122 -Fo$(obj)\ 123 123 $(subst /,\\,$(call ABSPATH,$(source))) … … 126 126 $(subst /,\\,$(call ABSPATH,$(source)))\ 127 127 | $(DEP_PRE) -f -s -o $(dep) -t $(obj) - 128 _OUT_FILES += $(call TOOL_VCC70_PDB, $(outbase) )128 _OUT_FILES += $(call TOOL_VCC70_PDB, $(outbase)-obj) 129 129 130 130 endef … … 143 143 define TOOL_VCC70_LINK_LIBRARY 144 144 #$ (warning dbg: TOOL_VCC70_LINK_LIBRARY: target=$(target) lib=$(lib) objs=$(objs) deps=$(deps) flags=$(flags) dirdep=$(dirdep) outbase=$(outbase)) 145 $(lib) : $(deps) $(objs) $(othersrc) | $(dirdep)145 $(lib) $(outbase).lst $(outbase).exp $(call TOOL_VCC70_PDB, $(outbase)): $(deps) $(objs) $(othersrc) | $(dirdep) 146 146 $(call MSG_L1,Creating Library $$@) 147 147 $(RM) -f $$@ … … 155 155 ## Link program 156 156 # @param $(target) Normalized main target name. 157 # @param $( exe) Program name.157 # @param $(out) Program name. 158 158 # @param $(objs) Object files to link together. 159 159 # @param $(libs) Libraries to search. … … 168 168 # @param $(outbase) Output basename (full). Use this for list files and such. 169 169 define TOOL_VCC70_LINK_PROGRAM 170 #$ (warning dbg: TOOL_VCC70_LINK_PROGRAM: target=$(target) exe=$(exe) objs=$(objs) libs=$(libs) deps=$(deps) flags=$(flags) dirdep=$(dirdep) othersrc=$(othersrc) outbase=$(outbase)) 171 $(exe): $(deps) $(objs) $(foreach lib,$(libs),$(if $(findstring $(lib),$(subst /,x,$(lib))),, $(lib))) $(othersrc) | $(dirdep) 170 #$ (warning dbg: TOOL_VCC70_LINK_PROGRAM: target=$(target) out=$(out) objs=$(objs) libs=$(libs) deps=$(deps) flags=$(flags) dirdep=$(dirdep) othersrc=$(othersrc) outbase=$(outbase)) 171 $(out) $(outbase).map $(outbase).lib $(outbase).exp $(call TOOL_VCC70_PDB, $(outbase)) $(outbase).ilk: \ 172 $(deps) $(objs) $(foreach lib,$(libs),$(if $(findstring $(lib),$(subst /,x,$(lib))),, $(lib))) $(othersrc) | $(dirdep) 172 173 $(call MSG_L1,Creating Program $$@) 173 174 ifneq ($(custom_pre),) … … 175 176 endif 176 177 $(TOOL_VCC70_LD) $(flags) \ 177 /OUT:$( exe) \178 /OUT:$(out) \ 178 179 /MAPINFO:EXPORTS /MAPINFO:LINES \ 179 180 /MAP:$(outbase).map \ … … 193 194 ## Link system module (windows aka driver, linux aka kernel module) 194 195 # @param $(target) Normalized main target name. 195 # @param $( sys) System module name.196 # @param $(out) System module name. 196 197 # @param $(objs) Object files to link together. 197 198 # @param $(libs) Libraries to search. … … 206 207 # @param $(outbase) Output basename (full). Use this for list files and such. 207 208 define TOOL_VCC70_LINK_SYSMOD 208 #$ (warning dbg: TOOL_VCC70_LINK_SYSMOD: target=$(target) sys=$(sys) objs=$(objs) libs=$(libs) deps=$(deps) flags=$(flags) dirdep=$(dirdep) othersrc=$(othersrc) outbase=$(outbase)) 209 $(sys): $(deps) $(objs) $(foreach lib,$(libs),$(if $(findstring $(lib),$(subst /,x,$(lib))),, $(lib))) $(othersrc) | $(dirdep) 209 #$ (warning dbg: TOOL_VCC70_LINK_SYSMOD: target=$(target) out=$(out) objs=$(objs) libs=$(libs) deps=$(deps) flags=$(flags) dirdep=$(dirdep) othersrc=$(othersrc) outbase=$(outbase)) 210 $(out) $(outbase).map $(outbase).lib $(outbase).exp $(call TOOL_VCC70_PDB, $(outbase)) $(outbase).ilk: \ 211 $(deps) $(objs) $(foreach lib,$(libs),$(if $(findstring $(lib),$(subst /,x,$(lib))),, $(lib))) $(othersrc) | $(dirdep) 210 212 $(call MSG_L1,Creating Program $$@) 211 213 ifneq ($(custom_pre),) … … 213 215 endif 214 216 $(TOOL_VCC70_LD) $(flags) \ 215 /OUT:$( sys) \217 /OUT:$(out) \ 216 218 /MAPINFO:EXPORTS /MAPINFO:LINES \ 217 219 /MAP:$(outbase).map \ … … 229 231 230 232 231 ## Link system module (windows aka driver, linux aka kernel module)232 # @param $(target) Normalized main target name. 233 # @param $( dll) System modulename.233 ## Link DLL. 234 # @param $(target) Normalized main target name. 235 # @param $(out) DLL name. 234 236 # @param $(objs) Object files to link together. 235 237 # @param $(libs) Libraries to search. … … 237 239 # @param $(flags) Flags. 238 240 # @param $(dirdep) Directory creation dependency. 239 # @param $(deps) 240 # @param $(othersrc) Unhandled sources.241 # @param $(deps) Other dependencies. 242 # @param $(othersrc) Unhandled sources. 241 243 # @param $(custom_pre) Custom step invoked before linking. 242 244 # @param $(custom_post) Custom step invoked after linking. … … 244 246 # @param $(outbase) Output basename (full). Use this for list files and such. 245 247 define TOOL_VCC70_LINK_DLL 246 #$ (warning dbg: TOOL_VCC70_LINK_DLL: target=$(target) dll=$(dll) objs=$(objs) libs=$(libs) deps=$(deps) flags=$(flags) dirdep=$(dirdep) othersrc=$(othersrc) outbase=$(outbase)) 247 $(dll): $(deps) $(call DIRDEP,$(PATH_LIB)) $(objs) $(foreach lib,$(libs),$(if $(findstring $(lib),$(subst /,x,$(lib))),, $(lib))) $(othersrc) | $(dirdep) 248 #$ (warning dbg: TOOL_VCC70_LINK_DLL: target=$(target) out=$(out) objs=$(objs) libs=$(libs) deps=$(deps) flags=$(flags) dirdep=$(dirdep) othersrc=$(othersrc) outbase=$(outbase)) 249 $(out) $(outbase).map $(outbase).lib $(outbase).exp $(call TOOL_VCC70_PDB, $(outbase)) $(outbase).ilk: \ 250 $(deps) $(call DIRDEP,$(PATH_LIB)) $(objs) $(foreach lib,$(libs),$(if $(findstring $(lib),$(subst /,x,$(lib))),, $(lib))) $(othersrc) | $(dirdep) 248 251 $(call MSG_L1,Creating Program $$@) 249 252 ifneq ($(custom_pre),) … … 251 254 endif 252 255 $(TOOL_VCC70_LD) $(flags) \ 253 /OUT:$( dll) \256 /OUT:$(out) \ 254 257 /IMPLIB:$(outbase).lib \ 255 258 /MAPINFO:EXPORTS /MAPINFO:LINES \
Note:
See TracChangeset
for help on using the changeset viewer.