VirtualBox

Changeset 768 in kBuild


Ignore:
Timestamp:
Jan 19, 2007 2:52:39 AM (18 years ago)
Author:
bird
Message:

Use response files (aka command files) with the Visual C++ librarian. References #9.

Location:
trunk/kBuild/tools
Files:
4 edited

Legend:

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

    r735 r768  
    2424#
    2525#
    26            
     26
    2727TOOL_VCC70 := Visual C++ 7.0 (aka Visual Studio .NET), targeting x86.
    2828
     
    6161endif
    6262## Disabled fast DEP_IDB based dependencies.
    63 #VCC70_OLD_DEPS = 1 
     63#VCC70_OLD_DEPS = 1
    6464
    6565## Constructs the correct .pdb name (the name is lowercased).
     
    218218# @param    $(outbase)  Output basename (full). Use this for list files and such.
    219219#
    220 TOOL_VCC70_LINK_LIBRARY_OUTPUT = $(outbase).lst $(outbase).exp $(outbase).pdb
    221220TOOL_VCC70_LINK_LIBRARY_DEPEND = $(othersrc)
    222221TOOL_VCC70_LINK_LIBRARY_DEPORD =
     222ifeq ($(filter append-dash-n,$(KMK_FEATURES)),append-dash-n)
     223TOOL_VCC70_LINK_LIBRARY_OUTPUT = $(outbase).lst $(outbase).exp $(outbase).pdb $(outbase).rsp
     224define TOOL_VCC70_LINK_LIBRARY_CMDS
     225        $(QUIET)$(APPEND) -n $(outbase).rsp \
     226                $(foreach arg,\
     227                        $(subst /,\\,$(objs) \
     228                        $(filter-out %.def,$(othersrc))) \
     229                        $(addprefix /DEF:,$(filter %.def,$(othersrc))) \
     230                        ,\"$(arg)\")
     231        $(QUIET)$(TOOL_VCC70_AR) $(flags) /OUT:$(out) @$(outbase).rsp
     232endef
     233else
     234TOOL_VCC70_LINK_LIBRARY_OUTPUT = $(outbase).lst $(outbase).exp $(outbase).pdb
    223235define TOOL_VCC70_LINK_LIBRARY_CMDS
    224236        $(QUIET)$(TOOL_VCC70_AR) $(flags) /OUT:$(out) $(subst /,\\,$(objs) $(filter %.a %.lib,$(othersrc))) \
    225237                $(foreach def,$(filter %.def,$(othersrc)), /DEF:$(def))
    226238endef
     239endif
    227240
    228241
  • trunk/kBuild/tools/VCC80.kmk

    r735 r768  
    239239# @param    $(outbase)  Output basename (full). Use this for list files and such.
    240240#
    241 TOOL_VCC80_LINK_LIBRARY_OUTPUT = $(outbase).lst $(outbase).exp $(outbase).pdb
    242241TOOL_VCC80_LINK_LIBRARY_DEPEND = $(othersrc)
    243242TOOL_VCC80_LINK_LIBRARY_DEPORD =
     243ifeq ($(filter append-dash-n,$(KMK_FEATURES)),append-dash-n)
     244TOOL_VCC80_LINK_LIBRARY_OUTPUT = $(outbase).lst $(outbase).exp $(outbase).pdb $(outbase).rsp
     245define TOOL_VCC80_LINK_LIBRARY_CMDS
     246        $(QUIET)$(APPEND) -n $(outbase).rsp \
     247                $(foreach arg,\
     248                        $(subst /,\\,$(objs) \
     249                        $(filter-out %.def,$(othersrc))) \
     250                        $(addprefix /DEF:,$(filter %.def,$(othersrc))) \
     251                        ,\"$(arg)\")
     252        $(QUIET)$(TOOL_VCC80_AR) $(flags) /OUT:$(out) @$(outbase).rsp
     253endef
     254else
     255TOOL_VCC80_LINK_LIBRARY_OUTPUT = $(outbase).lst $(outbase).exp $(outbase).pdb
    244256define TOOL_VCC80_LINK_LIBRARY_CMDS
    245257        $(QUIET)$(TOOL_VCC80_AR) $(flags) /OUT:$(out) $(subst /,\\,$(objs) $(filter %.a %.lib,$(othersrc))) \
    246258                $(foreach def,$(filter %.def,$(othersrc)), /DEF:$(def))
    247259endef
     260endif
     261
     262
    248263
    249264
  • trunk/kBuild/tools/VCC80AMD64.kmk

    r735 r768  
    224224# @param    $(outbase)  Output basename (full). Use this for list files and such.
    225225#
    226 TOOL_VCC80AMD64_LINK_LIBRARY_OUTPUT = $(outbase).lst $(outbase).exp $(outbase).pdb
    227226TOOL_VCC80AMD64_LINK_LIBRARY_DEPEND = $(othersrc)
    228227TOOL_VCC80AMD64_LINK_LIBRARY_DEPORD =
     228ifeq ($(filter append-dash-n,$(KMK_FEATURES)),append-dash-n)
     229TOOL_VCC80AMD64_LINK_LIBRARY_OUTPUT = $(outbase).lst $(outbase).exp $(outbase).pdb $(outbase).rsp
     230define TOOL_VCC80AMD64_LINK_LIBRARY_CMDS
     231        $(QUIET)$(APPEND) -n $(outbase).rsp \
     232                $(foreach arg,\
     233                        $(subst /,\\,$(objs) \
     234                        $(filter-out %.def,$(othersrc))) \
     235                        $(addprefix /DEF:,$(filter %.def,$(othersrc))) \
     236                        ,\"$(arg)\")
     237        $(QUIET)$(TOOL_VCC80AMD64_AR) $(flags) /OUT:$(out) @$(outbase).rsp
     238endef
     239else
     240TOOL_VCC80AMD64_LINK_LIBRARY_OUTPUT = $(outbase).lst $(outbase).exp $(outbase).pdb
    229241define TOOL_VCC80AMD64_LINK_LIBRARY_CMDS
    230242        $(QUIET)$(TOOL_VCC80AMD64_AR) $(flags) /OUT:$(out) $(subst /,\\,$(objs) $(filter %.a %.lib,$(othersrc))) \
    231243                $(foreach def,$(filter %.def,$(othersrc)), /DEF:$(def))
    232244endef
     245endif
    233246
    234247
  • trunk/kBuild/tools/VCC80X86.kmk

    r735 r768  
    6363TOOL_VCC80X86_MT  ?= $(EXEC_X86_WIN32) $(PATH_TOOL_VCC80X86_BIN)/mt.exe
    6464## Disabled fast DEP_IDB based dependencies.
    65 #VCC80X86_OLD_DEPS = 1 
     65#VCC80X86_OLD_DEPS = 1
    6666
    6767## Constructs the correct .pdb name (the name is lowercased).
     
    223223# @param    $(outbase)  Output basename (full). Use this for list files and such.
    224224#
    225 TOOL_VCC80X86_LINK_LIBRARY_OUTPUT = $(outbase).lst $(outbase).exp $(outbase).pdb
    226225TOOL_VCC80X86_LINK_LIBRARY_DEPEND = $(othersrc)
    227226TOOL_VCC80X86_LINK_LIBRARY_DEPORD =
     227ifeq ($(filter append-dash-n,$(KMK_FEATURES)),append-dash-n)
     228TOOL_VCC80X86_LINK_LIBRARY_OUTPUT = $(outbase).lst $(outbase).exp $(outbase).pdb $(outbase).rsp
     229define TOOL_VCC80X86_LINK_LIBRARY_CMDS
     230        $(QUIET)$(APPEND) -n $(outbase).rsp \
     231                $(foreach arg,\
     232                        $(subst /,\\,$(objs) \
     233                        $(filter-out %.def,$(othersrc))) \
     234                        $(addprefix /DEF:,$(filter %.def,$(othersrc))) \
     235                        ,\"$(arg)\")
     236        $(QUIET)$(TOOL_VCC80X86_AR) $(flags) /OUT:$(out) @$(outbase).rsp
     237endef
     238else
     239TOOL_VCC80X86_LINK_LIBRARY_OUTPUT = $(outbase).lst $(outbase).exp $(outbase).pdb
    228240define TOOL_VCC80X86_LINK_LIBRARY_CMDS
    229241        $(QUIET)$(TOOL_VCC80X86_AR) $(flags) /OUT:$(out) $(subst /,\\,$(objs) $(filter %.a %.lib,$(othersrc))) \
    230242                $(foreach def,$(filter %.def,$(othersrc)), /DEF:$(def))
    231243endef
     244endif
    232245
    233246
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette