Ignore:
Timestamp:
Dec 13, 2011, 1:48:32 PM (14 years ago)
Author:
bird
Message:

tools/VCC*.kmk: Use response files when linking.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/kBuild/tools/VCC100X86.kmk

    r2524 r2557  
    208208TOOL_VCC100X86_LINK_LIBRARY_OUTPUT_MAYBE = $(outbase).lst $(outbase).exp $(outbase).pdb
    209209define TOOL_VCC100X86_LINK_LIBRARY_CMDS
    210         $(QUIET)$(APPEND) -n $(outbase).rsp \
     210        $(QUIET)$(APPEND) -tn $(outbase).rsp \
    211211                $(foreach arg,\
    212212                        $(subst /,\\,$(objs) \
     
    234234TOOL_VCC100X86_LINK_PROGRAM_DEPEND = $(foreach lib,$(libs),$(if $(findstring $(lib),$(subst /,x,$(lib))),, $(lib))) $(othersrc)
    235235TOOL_VCC100X86_LINK_PROGRAM_DEPORD =
    236 TOOL_VCC100X86_LINK_PROGRAM_OUTPUT = $(outbase).map
     236TOOL_VCC100X86_LINK_PROGRAM_OUTPUT = $(outbase).map $(outbase).rsp
    237237TOOL_VCC100X86_LINK_PROGRAM_OUTPUT_MAYBE = $(outbase).lib $(outbase).exp $(outbase).ilk $(out).manifest
    238238TOOL_VCC100X86_LINK_PROGRAM_OUTPUT_DEBUG = $(outbase).pdb
    239239TOOL_VCC100X86_LINK_PROGRAM_DEBUG_INSTALL_FN = $(2).pdb=>$(basename $(3)).pdb
    240240define TOOL_VCC100X86_LINK_PROGRAM_CMDS
     241        $(QUIET)$(APPEND) -tn $(outbase).rsp \
     242                $(foreach arg,\
     243                    $(subst /,\\,$(objs)) \
     244                    $(subst /,\\,$(libs)) \
     245                        ,\"$(arg)\")
    241246        $(QUIET)$(TOOL_VCC100X86_LD) $(flags) \
    242247                /OUT:$(out) \
     
    246251                $(subst /,\\,$(filter %.exp %.res,$(othersrc))) \
    247252                $(foreach p,$(libpath), /LIBPATH:$(p)) \
    248                 $(subst /,\\,$(objs)) \
    249                 $(subst /,\\,$(libs))
     253                @$(outbase).rsp
    250254        $(QUIET)$(TEST) -f $(out).manifest -- \
    251255                $(TOOL_VCC100X86_MT) -manifest $(subst /,\\,$(out)).manifest -outputresource:$(subst /,\\,$(out))
     
    269273TOOL_VCC100X86_LINK_DLL_DEPEND = $(objs) $(foreach lib,$(libs),$(if $(findstring $(lib),$(subst /,x,$(lib))),, $(lib))) $(othersrc)
    270274TOOL_VCC100X86_LINK_DLL_DEPORD = $(call DIRDEP,$(PATH_STAGE_LIB))
    271 TOOL_VCC100X86_LINK_DLL_OUTPUT = $(outbase).map $(outbase).lib $(outbase).exp
     275TOOL_VCC100X86_LINK_DLL_OUTPUT = $(outbase).map $(outbase).lib $(outbase).exp $(outbase).rsp
    272276TOOL_VCC100X86_LINK_DLL_OUTPUT_MAYBE = $(outbase).ilk $(out).manifest $(PATH_STAGE_LIB)/$(notdir $(outbase)).lib $(PATH_STAGE_LIB)/$(notdir $(outbase)).exp
    273277TOOL_VCC100X86_LINK_DLL_OUTPUT_DEBUG = $(outbase).pdb
    274278TOOL_VCC100X86_LINK_DLL_DEBUG_INSTALL_FN = $(2).pdb=>$(basename $(3)).pdb
    275279define TOOL_VCC100X86_LINK_DLL_CMDS
     280        $(QUIET)$(APPEND) -tn $(outbase).rsp \
     281                $(foreach arg,\
     282                    $(subst /,\\,$(objs)) \
     283                    $(subst /,\\,$(libs)) \
     284                        ,\"$(arg)\")
    276285        $(QUIET)$(TOOL_VCC100X86_LD) $(flags) \
    277286                /OUT:$(out) \
     
    283292                $(subst /,\\,$(filter %.exp %.res,$(othersrc))) \
    284293                $(foreach p,$(libpath), /LIBPATH:$(p)) \
    285                 $(subst /,\\,$(objs)) \
    286                 $(subst /,\\,$(libs))
     294                @$(outbase).rsp
    287295        $(QUIET)$(TEST) -f $(out).manifest -- \
    288296                $(TOOL_VCC100X86_MT) -manifest $(subst /,\\,$(out)).manifest '-outputresource:$(subst /,\\,$(out));#2'
     
    308316TOOL_VCC100X86_LINK_SYSMOD_DEPEND = $(foreach lib,$(libs),$(if $(findstring $(lib),$(subst /,x,$(lib))),, $(lib))) $(othersrc)
    309317TOOL_VCC100X86_LINK_SYSMOD_DEPORD =
    310 TOOL_VCC100X86_LINK_SYSMOD_OUTPUT = $(outbase).map
     318TOOL_VCC100X86_LINK_SYSMOD_OUTPUT = $(outbase).map $(outbase).rsp
    311319TOOL_VCC100X86_LINK_SYSMOD_OUTPUT_MAYBE = $(outbase).lib $(outbase).exp $(outbase).ilk $(out).manifest
    312320TOOL_VCC100X86_LINK_SYSMOD_OUTPUT_DEBUG = $(outbase).pdb
    313321TOOL_VCC100X86_LINK_SYSMOD_DEBUG_INSTALL_FN = $(2).pdb=>$(basename $(3)).pdb
    314322define TOOL_VCC100X86_LINK_SYSMOD_CMDS
     323        $(QUIET)$(APPEND) -tn $(outbase).rsp \
     324                $(foreach arg,\
     325                    $(subst /,\\,$(objs)) \
     326                    $(subst /,\\,$(libs)) \
     327                        ,\"$(arg)\")
    315328        $(QUIET)$(TOOL_VCC100X86_LD) $(flags) \
    316329                /OUT:$(out) \
     
    320333                $(subst /,\\,$(filter %.exp %.res,$(othersrc))) \
    321334                $(foreach p,$(libpath), /LIBPATH:$(p)) \
    322                 $(subst /,\\,$(objs)) \
    323                 $(subst /,\\,$(libs))
     335                @$(outbase).rsp
    324336        $(QUIET)$(TEST) -f $(out).manifest -- \
    325337                $(TOOL_VCC100X86_MT) -manifest $(subst /,\\,$(out)).manifest '-outputresource:$(subst /,\\,$(out));#2'
Note: See TracChangeset for help on using the changeset viewer.