Ignore:
Timestamp:
May 8, 2017, 7:03:48 PM (8 years ago)
Author:
bird
Message:

tools: Created VCC120 from VCC100, only difference is the -FS flag for precompiled header related operations.

File:
1 copied

Legend:

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

    r3024 r3033  
    11# $Id$
    22## @file
    3 # kBuild Tool Config - Visual C++ 10.0 (aka Visual 2010 and MSC v16), targeting AMD64.
    4 #
    5 
    6 #
    7 # Copyright (c) 2004-2016 knut st. osmundsen <bird-kBuild-spam-xiv@anduin.net>
     3# kBuild Tool Config - Visual C++ 12.0 (aka Visual 2013 and MSC v18), targeting AMD64.
     4#
     5
     6#
     7# Copyright (c) 2004-2017 knut st. osmundsen <bird-kBuild-spam-xiv@anduin.net>
    88#
    99# This file is part of kBuild.
     
    3232#
    3333
    34 TOOL_VCC100AMD64 := Visual C++ 10.0 (aka Visual 2010 and MSC v16), targeting AMD64
     34TOOL_VCC120AMD64 := Visual C++ 12.0 (aka Visual 2013 and MSC v18), targeting AMD64
    3535
    3636# Tool Specific Properties
    37 ifndef PATH_TOOL_VCC100AMD64
    38  PATH_TOOL_VCC100AMD64 := $(wildcard $(KBUILD_DEVTOOLS)/win.x86/vcc/v10*)
    39  ifeq ($(PATH_TOOL_VCC100AMD64),)
    40   PATH_TOOL_VCC100AMD64 := $(PATH_TOOL_VCC100)
     37ifndef PATH_TOOL_VCC120AMD64
     38 PATH_TOOL_VCC120AMD64 := $(wildcard $(KBUILD_DEVTOOLS)/win.x86/vcc/v12*)
     39 ifeq ($(PATH_TOOL_VCC120AMD64),)
     40  PATH_TOOL_VCC120AMD64 := $(PATH_TOOL_VCC120)
    4141 endif
    42  ifeq ($(PATH_TOOL_VCC100AMD64),)
    43   PATH_TOOL_VCC100AMD64 := $(PATH_TOOL_VCC100X86)
     42 ifeq ($(PATH_TOOL_VCC120AMD64),)
     43  PATH_TOOL_VCC120AMD64 := $(PATH_TOOL_VCC120X86)
    4444 endif
    45  ifeq ($(PATH_TOOL_VCC100AMD64),)
    46   PATH_TOOL_VCC100AMD64 := $(wildcard $(KBUILD_DEVTOOLS)/win.x86/vcc/v10*)
     45 ifeq ($(PATH_TOOL_VCC120AMD64),)
     46  PATH_TOOL_VCC120AMD64 := $(wildcard $(KBUILD_DEVTOOLS)/win.x86/vcc/v12*)
    4747 endif
    48  ifneq ($(PATH_TOOL_VCC100AMD64),)
    49   PATH_TOOL_VCC100AMD64 := $(lastword $(sort $(PATH_TOOL_VCC100AMD64)))
     48 ifneq ($(PATH_TOOL_VCC120AMD64),)
     49  PATH_TOOL_VCC120AMD64 := $(lastword $(sort $(PATH_TOOL_VCC120AMD64)))
    5050 else
    51   $(warning kBuild: PATH_TOOL_VCC100AMD64 cannot be determined!)
    52   PATH_TOOL_VCC100AMD64 := $(KBUILD_DEVTOOLS)/win.x86/vcc/v10
     51  $(warning kBuild: PATH_TOOL_VCC120AMD64 cannot be determined!)
     52  PATH_TOOL_VCC120AMD64 := $(KBUILD_DEVTOOLS)/win.x86/vcc/v12
    5353 endif
    5454else
    5555 # Resolve any fancy stuff once and for all.
    56  PATH_TOOL_VCC100AMD64 := $(PATH_TOOL_VCC100AMD64)
     56 PATH_TOOL_VCC120AMD64 := $(PATH_TOOL_VCC120AMD64)
    5757endif
    5858ifeq ($(KBUILD_HOST).$(KBUILD_HOST_ARCH),win.amd64)
    59 PATH_TOOL_VCC100AMD64_BIN ?= $(PATH_TOOL_VCC100AMD64)/bin/amd64
     59PATH_TOOL_VCC120AMD64_BIN ?= $(PATH_TOOL_VCC120AMD64)/bin/amd64
    6060else
    61 PATH_TOOL_VCC100AMD64_BIN ?= $(PATH_TOOL_VCC100AMD64)/bin/x86_amd64
    62 endif
    63 PATH_TOOL_VCC100AMD64_LIB ?= $(PATH_TOOL_VCC100AMD64)/lib/amd64
    64 PATH_TOOL_VCC100AMD64_INC ?= $(PATH_TOOL_VCC100AMD64)/include
    65 PATH_TOOL_VCC100AMD64_ATLMFC ?= $(PATH_TOOL_VCC100AMD64)/atlmfc
    66 PATH_TOOL_VCC100AMD64_ATLMFC_INC ?= $(PATH_TOOL_VCC100AMD64_ATLMFC)/include
    67 PATH_TOOL_VCC100AMD64_ATLMFC_LIB ?= $(PATH_TOOL_VCC100AMD64_ATLMFC)/lib/amd64
    68 TOOL_VCC100AMD64_CC  ?= $(EXEC_X86_WIN32) $(PATH_TOOL_VCC100AMD64_BIN)/cl.exe
    69 TOOL_VCC100AMD64_CXX ?= $(EXEC_X86_WIN32) $(PATH_TOOL_VCC100AMD64_BIN)/cl.exe
    70 TOOL_VCC100AMD64_AS  ?= $(EXEC_X86_WIN32) $(PATH_TOOL_VCC100AMD64_BIN)/ml64.exe
    71 #TOOL_VCC100AMD64_AR  ?= $(EXEC_X86_WIN32) $(PATH_TOOL_VCC100AMD64_BIN)/lib.exe - just an exec wrapper for the below
    72 TOOL_VCC100AMD64_AR  ?= $(EXEC_X86_WIN32) $(PATH_TOOL_VCC100AMD64_BIN)/link.exe /LIB
    73 TOOL_VCC100AMD64_LD  ?= $(EXEC_X86_WIN32) $(PATH_TOOL_VCC100AMD64_BIN)/link.exe
    74 TOOL_VCC100AMD64_DUMPBIN ?= $(EXEC_X86_WIN32) $(PATH_TOOL_VCC100AMD64_BIN)/dumpbin.exe
    75 TOOL_VCC100AMD64_EDITBIN ?= $(EXEC_X86_WIN32) $(PATH_TOOL_VCC100AMD64_BIN)/editbin.exe
    76 TOOL_VCC100AMD64_RC  ?= $(EXEC_X86_WIN32) $(call TOOL_VCC100_FN_FIND_SDK_TOOL,rc.exe,[Rr][Cc].[Ee][Xx][Ee],TOOL_VCC100_RC_CACHED)
    77 TOOL_VCC100AMD64_MT  ?= $(EXEC_X86_WIN32) $(call TOOL_VCC100_FN_FIND_SDK_TOOL,mt.exe,[Mm][Tt].[Ee][Xx][Ee],TOOL_VCC100_MT_CACHED)
    78 ifdef TOOL_VCC100AMD64_USE_KSUBMIT
     61PATH_TOOL_VCC120AMD64_BIN ?= $(PATH_TOOL_VCC120AMD64)/bin/x86_amd64
     62endif
     63PATH_TOOL_VCC120AMD64_LIB ?= $(PATH_TOOL_VCC120AMD64)/lib/amd64
     64PATH_TOOL_VCC120AMD64_INC ?= $(PATH_TOOL_VCC120AMD64)/include
     65PATH_TOOL_VCC120AMD64_ATLMFC ?= $(PATH_TOOL_VCC120AMD64)/atlmfc
     66PATH_TOOL_VCC120AMD64_ATLMFC_INC ?= $(PATH_TOOL_VCC120AMD64_ATLMFC)/include
     67PATH_TOOL_VCC120AMD64_ATLMFC_LIB ?= $(PATH_TOOL_VCC120AMD64_ATLMFC)/lib/amd64
     68TOOL_VCC120AMD64_CC  ?= $(EXEC_X86_WIN32) $(PATH_TOOL_VCC120AMD64_BIN)/cl.exe
     69TOOL_VCC120AMD64_CXX ?= $(EXEC_X86_WIN32) $(PATH_TOOL_VCC120AMD64_BIN)/cl.exe
     70TOOL_VCC120AMD64_AS  ?= $(EXEC_X86_WIN32) $(PATH_TOOL_VCC120AMD64_BIN)/ml64.exe
     71#TOOL_VCC120AMD64_AR  ?= $(EXEC_X86_WIN32) $(PATH_TOOL_VCC120AMD64_BIN)/lib.exe - just an exec wrapper for the below
     72TOOL_VCC120AMD64_AR  ?= $(EXEC_X86_WIN32) $(PATH_TOOL_VCC120AMD64_BIN)/link.exe /LIB
     73TOOL_VCC120AMD64_LD  ?= $(EXEC_X86_WIN32) $(PATH_TOOL_VCC120AMD64_BIN)/link.exe
     74TOOL_VCC120AMD64_DUMPBIN ?= $(EXEC_X86_WIN32) $(PATH_TOOL_VCC120AMD64_BIN)/dumpbin.exe
     75TOOL_VCC120AMD64_EDITBIN ?= $(EXEC_X86_WIN32) $(PATH_TOOL_VCC120AMD64_BIN)/editbin.exe
     76TOOL_VCC120AMD64_RC  ?= $(EXEC_X86_WIN32) $(call TOOL_VCC120_FN_FIND_SDK_TOOL,rc.exe,[Rr][Cc].[Ee][Xx][Ee],TOOL_VCC120_RC_CACHED)
     77TOOL_VCC120AMD64_MT  ?= $(EXEC_X86_WIN32) $(call TOOL_VCC120_FN_FIND_SDK_TOOL,mt.exe,[Mm][Tt].[Ee][Xx][Ee],TOOL_VCC120_MT_CACHED)
     78ifdef TOOL_VCC120AMD64_USE_KSUBMIT
    7979 ifeq ($(KBUILD_HOST),win)
    80   ifneq ($(substr $(PATH_TOOL_VCC100AMD64_BIN),-9),x86_amd64)
    81    TOOL_VCC100AMD64_KSUBMIT ?= kmk_builtin_kSubmit --64-bit
    82    TOOL_VCC100AMD64_KSUBMIT_DD = $(TOOL_VCC100AMD64_KSUBMIT) --
     80  ifneq ($(substr $(PATH_TOOL_VCC120AMD64_BIN),-9),x86_amd64)
     81   TOOL_VCC120AMD64_KSUBMIT ?= kmk_builtin_kSubmit --64-bit
     82   TOOL_VCC120AMD64_KSUBMIT_DD = $(TOOL_VCC120AMD64_KSUBMIT) --
    8383  else
    8484   # "fatal error C1902: Program database manager mismatch; please check your installation" when mixing with the 32-bit compiler.
    85    #TOOL_VCC100AMD64_KSUBMIT ?= kmk_builtin_kSubmit --32-bit
    86    #TOOL_VCC100AMD64_KSUBMIT_DD = $(TOOL_VCC100AMD64_KSUBMIT) --
     85   #TOOL_VCC120AMD64_KSUBMIT ?= kmk_builtin_kSubmit --32-bit
     86   #TOOL_VCC120AMD64_KSUBMIT_DD = $(TOOL_VCC120AMD64_KSUBMIT) --
    8787  endif
    8888 endif
    8989endif
    9090
    91 # The following in duplicated in VCC100.kmk and VCC100X86.kmk.
    92 TOOL_VCC100_FN_FIND_SDK_TOOL_SUB = $(eval $3 := $(firstword  \
     91# The following in duplicated in VCC120.kmk and VCC120X86.kmk.
     92TOOL_VCC120_FN_FIND_SDK_TOOL_SUB = $(eval $3 := $(firstword  \
    9393       $(if-expr defined(PATH_SDK_WINPSDK71_BIN), $(wildcard $(PATH_SDK_WINPSDK71_BIN)/$2)) \
    9494       $(if-expr defined(PATH_SDK_WINPSDK_BIN)  , $(wildcard $(PATH_SDK_WINPSDK_BIN)/$2)) \
     
    9696        $(rsort $(wildcard $(KBUILD_DEVTOOLS_HST_ALT)/sdk/*/[Bb][Ii][Nn]/$2)) \
    9797        $1))
    98 TOOL_VCC100_FN_FIND_SDK_TOOL = $(if-expr !defined($3),$(TOOL_VCC100_FN_FIND_SDK_TOOL_SUB),)$($3)
     98TOOL_VCC120_FN_FIND_SDK_TOOL = $(if-expr !defined($3),$(TOOL_VCC120_FN_FIND_SDK_TOOL_SUB),)$($3)
    9999
    100100## Disabled fast DEP_IDB based dependencies.
    101 #VCC100AMD64_OLD_DEPS = 1
     101#VCC120AMD64_OLD_DEPS = 1
    102102
    103103## Constructs the correct .pdb name (the name is lowercased).
    104104# @param    $(1)        Base name, no extention.
    105105# @param    $(2)        The extension.
    106 TOOL_VCC100AMD64_PDB = $(dir $(1))$(tolower $(notdir $(1))).$(2)
     106TOOL_VCC120AMD64_PDB = $(dir $(1))$(tolower $(notdir $(1))).$(2)
    107107
    108108
    109109# General Properties used by kBuild
    110 TOOL_VCC100AMD64_COBJSUFF         ?= .obj
    111 TOOL_VCC100AMD64_CFLAGS           ?= -TC -nologo -Zi
    112 TOOL_VCC100AMD64_CFLAGS.debug     ?=
    113 TOOL_VCC100AMD64_CFLAGS.dbgopt    ?= -O2
    114 TOOL_VCC100AMD64_CFLAGS.release   ?= -O2
    115 TOOL_VCC100AMD64_CFLAGS.profile   ?= -O2
    116 TOOL_VCC100AMD64_CINCS            ?= $(PATH_TOOL_VCC100AMD64_INC)
    117 TOOL_VCC100AMD64_CDEFS            ?=
    118 
    119 TOOL_VCC100AMD64_CXXOBJSUFF       ?= .obj
    120 TOOL_VCC100AMD64_CXXFLAGS         ?= -TP -nologo -Zi
    121 TOOL_VCC100AMD64_CXXFLAGS.debug   ?=
    122 TOOL_VCC100AMD64_CXXFLAGS.dbgopt  ?= -O2
    123 TOOL_VCC100AMD64_CXXFLAGS.release ?= -O2
    124 TOOL_VCC100AMD64_CXXFLAGS.profile ?= -O2
    125 TOOL_VCC100AMD64_CXXINCS          ?= $(PATH_TOOL_VCC100AMD64_INC) $(PATH_TOOL_VCC100AMD64_ATLMFC_INC)
    126 TOOL_VCC100AMD64_CXXDEFS          ?=
    127 
    128 TOOL_VCC100AMD64_ASOBJSUFF        ?= .obj
    129 
    130 TOOL_VCC100AMD64_RCOBJSUFF        ?= .res
    131 TOOL_VCC100AMD64_RCINCS           ?= $(PATH_TOOL_VCC100AMD64_INC) $(PATH_TOOL_VCC100AMD64_ATLMFC_INC)
    132 
    133 TOOL_VCC100AMD64_ARFLAGS          ?= -nologo -machine:amd64
    134 TOOL_VCC100AMD64_ARLIBSUFF        ?= .lib
    135 
    136 TOOL_VCC100AMD64_LDFLAGS          ?= -nologo -machine:amd64
    137 TOOL_VCC100AMD64_LDFLAGS.debug    ?= -debug
    138 TOOL_VCC100AMD64_LDFLAGS.dbgopt   ?= -debug
    139 TOOL_VCC100AMD64_LDFLAGS.profile  ?= -debug
    140 TOOL_VCC100AMD64_LDFLAGS.release  ?=
     110TOOL_VCC120AMD64_COBJSUFF         ?= .obj
     111TOOL_VCC120AMD64_CFLAGS           ?= -TC -nologo -Zi
     112TOOL_VCC120AMD64_CFLAGS.debug     ?=
     113TOOL_VCC120AMD64_CFLAGS.dbgopt    ?= -O2
     114TOOL_VCC120AMD64_CFLAGS.release   ?= -O2
     115TOOL_VCC120AMD64_CFLAGS.profile   ?= -O2
     116TOOL_VCC120AMD64_CINCS            ?= $(PATH_TOOL_VCC120AMD64_INC)
     117TOOL_VCC120AMD64_CDEFS            ?=
     118
     119TOOL_VCC120AMD64_CXXOBJSUFF       ?= .obj
     120TOOL_VCC120AMD64_CXXFLAGS         ?= -TP -nologo -Zi
     121TOOL_VCC120AMD64_CXXFLAGS.debug   ?=
     122TOOL_VCC120AMD64_CXXFLAGS.dbgopt  ?= -O2
     123TOOL_VCC120AMD64_CXXFLAGS.release ?= -O2
     124TOOL_VCC120AMD64_CXXFLAGS.profile ?= -O2
     125TOOL_VCC120AMD64_CXXINCS          ?= $(PATH_TOOL_VCC120AMD64_INC) $(PATH_TOOL_VCC120AMD64_ATLMFC_INC)
     126TOOL_VCC120AMD64_CXXDEFS          ?=
     127
     128TOOL_VCC120AMD64_ASOBJSUFF        ?= .obj
     129
     130TOOL_VCC120AMD64_RCOBJSUFF        ?= .res
     131TOOL_VCC120AMD64_RCINCS           ?= $(PATH_TOOL_VCC120AMD64_INC) $(PATH_TOOL_VCC120AMD64_ATLMFC_INC)
     132
     133TOOL_VCC120AMD64_ARFLAGS          ?= -nologo -machine:amd64
     134TOOL_VCC120AMD64_ARLIBSUFF        ?= .lib
     135
     136TOOL_VCC120AMD64_LDFLAGS          ?= -nologo -machine:amd64
     137TOOL_VCC120AMD64_LDFLAGS.debug    ?= -debug
     138TOOL_VCC120AMD64_LDFLAGS.dbgopt   ?= -debug
     139TOOL_VCC120AMD64_LDFLAGS.profile  ?= -debug
     140TOOL_VCC120AMD64_LDFLAGS.release  ?=
    141141
    142142
     
    155155# @param    $(outbase)  Output basename (full). Use this for list files and such.
    156156# @param    $(objsuff)  Object suffix.
    157 TOOL_VCC100AMD64_COMPILE_C_DEPEND =
    158 TOOL_VCC100AMD64_COMPILE_C_DEPORD =
    159 TOOL_VCC100AMD64_COMPILE_C_OUTPUT =
    160 TOOL_VCC100AMD64_COMPILE_C_OUTPUT_MAYBE = $(call TOOL_VCC100AMD64_PDB, $(outbase)-obj,pdb) $(call TOOL_VCC100AMD64_PDB, $(outbase)-obj,idb)
    161 ifdef TOOL_VCC100AMD64_KSUBMIT
    162  TOOL_VCC100AMD64_COMPILE_C_DONT_PURGE_OUTPUT := 1 # speed
    163  define TOOL_VCC100AMD64_COMPILE_C_CMDS
    164         $(QUIET)$(TOOL_VCC100AMD64_KSUBMIT) -P $(DEP_OBJ_INT) -f -s -q -o $(dep) -t $(obj) $(obj)\
    165                 -- $(TOOL_VCC100AMD64_CC) -c\
     157TOOL_VCC120AMD64_COMPILE_C_DEPEND =
     158TOOL_VCC120AMD64_COMPILE_C_DEPORD =
     159TOOL_VCC120AMD64_COMPILE_C_OUTPUT =
     160TOOL_VCC120AMD64_COMPILE_C_OUTPUT_MAYBE = $(call TOOL_VCC120AMD64_PDB, $(outbase)-obj,pdb) $(call TOOL_VCC120AMD64_PDB, $(outbase)-obj,idb)
     161ifdef TOOL_VCC120AMD64_KSUBMIT
     162 TOOL_VCC120AMD64_COMPILE_C_DONT_PURGE_OUTPUT := 1 # speed
     163 define TOOL_VCC120AMD64_COMPILE_C_CMDS
     164        $(QUIET)$(TOOL_VCC120AMD64_KSUBMIT) -P $(DEP_OBJ_INT) -f -s -q -o $(dep) -t $(obj) $(obj)\
     165                -- $(TOOL_VCC120AMD64_CC) -c\
    166166                $(flags) $(addprefix -I, $(incs)) $(addprefix -D, $(defs))\
    167167                -Fd$(outbase)-obj.pdb \
     
    170170 endef
    171171else
    172  define TOOL_VCC100AMD64_COMPILE_C_CMDS
    173         $(QUIET)$(TOOL_VCC100AMD64_CC) -c\
     172 define TOOL_VCC120AMD64_COMPILE_C_CMDS
     173        $(QUIET)$(TOOL_VCC120AMD64_CC) -c\
    174174                $(flags) $(addprefix -I, $(incs)) $(addprefix -D, $(defs))\
    175175                -Fd$(outbase)-obj.pdb \
     
    178178        $(QUIET)$(DEP_OBJ) -f -s -q -o $(dep) -t $(obj) $(obj)
    179179 endef
    180 endif # !TOOL_VCC100AMD64_KSUBMIT
     180endif # !TOOL_VCC120AMD64_KSUBMIT
    181181
    182182
     
    194194# @param    $(outbase)  Output basename (full). Use this for list files and such.
    195195# @param    $(objsuff)  Object suffix.
    196 TOOL_VCC100AMD64_COMPILE_CXX_DEPEND = $($(target)_1_VCC_PCH_FILE)
    197 TOOL_VCC100AMD64_COMPILE_CXX_DEPORD =
    198 TOOL_VCC100AMD64_COMPILE_CXX_OUTPUT =
    199 TOOL_VCC100AMD64_COMPILE_CXX_OUTPUT_MAYBE = $(if-expr defined($(target)_1_VCC_COMMON_OBJ_PDB)\
    200         ,,$(call TOOL_VCC100AMD64_PDB, $(outbase)-obj,pdb) $(call TOOL_VCC100AMD64_PDB, $(outbase)-obj,idb))
    201 ifdef TOOL_VCC100AMD64_KSUBMIT
    202  TOOL_VCC100AMD64_COMPILE_CXX_DONT_PURGE_OUTPUT := 1 # speed
    203  define TOOL_VCC100AMD64_COMPILE_CXX_CMDS
    204         $(QUIET)$(TOOL_VCC100AMD64_KSUBMIT) -P $(DEP_OBJ_INT) -f -s -q -o $(dep) -t $(obj) $(obj)\
    205                 -- $(TOOL_VCC100AMD64_CXX) -c\
     196TOOL_VCC120AMD64_COMPILE_CXX_DEPEND = $($(target)_1_VCC_PCH_FILE)
     197TOOL_VCC120AMD64_COMPILE_CXX_DEPORD =
     198TOOL_VCC120AMD64_COMPILE_CXX_OUTPUT =
     199TOOL_VCC120AMD64_COMPILE_CXX_OUTPUT_MAYBE = $(if-expr defined($(target)_1_VCC_COMMON_OBJ_PDB)\
     200        ,,$(call TOOL_VCC120AMD64_PDB, $(outbase)-obj,pdb) $(call TOOL_VCC120AMD64_PDB, $(outbase)-obj,idb))
     201ifdef TOOL_VCC120AMD64_KSUBMIT
     202 TOOL_VCC120AMD64_COMPILE_CXX_DONT_PURGE_OUTPUT := 1 # speed
     203 define TOOL_VCC120AMD64_COMPILE_CXX_CMDS
     204        $(QUIET)$(TOOL_VCC120AMD64_KSUBMIT) -P $(DEP_OBJ_INT) -f -s -q -o $(dep) -t $(obj) $(obj)\
     205                -- $(TOOL_VCC120AMD64_CXX) -c\
    206206                $(flags) $(addprefix -I, $(incs)) $(addprefix -D, $(defs))\
    207207                $(if-expr defined($(target)_PCH_HDR)\
    208                 ,-FI$($(target)_PCH_HDR) -Yu$($(target)_PCH_HDR) -Fp$($(target)_1_VCC_PCH_FILE),)\
     208                ,-FI$($(target)_PCH_HDR) -Yu$($(target)_PCH_HDR) -Fp$($(target)_1_VCC_PCH_FILE) -FS,)\
    209209                -Fd$(if-expr defined($(target)_1_VCC_COMMON_OBJ_PDB),$($(target)_1_VCC_COMMON_OBJ_PDB),$(outbase)-obj.pdb) \
    210210                -Fo$(obj)\
     
    212212 endef
    213213else
    214  define TOOL_VCC100AMD64_COMPILE_CXX_CMDS
    215         $(QUIET)$(TOOL_VCC100AMD64_CXX) -c\
     214 define TOOL_VCC120AMD64_COMPILE_CXX_CMDS
     215        $(QUIET)$(TOOL_VCC120AMD64_CXX) -c\
    216216                $(flags) $(addprefix -I, $(incs)) $(addprefix -D, $(defs))\
    217217                $(if-expr defined($(target)_PCH_HDR)\
    218                 ,-FI$($(target)_PCH_HDR) -Yu$($(target)_PCH_HDR) -Fp$($(target)_1_VCC_PCH_FILE),)\
     218                ,-FI$($(target)_PCH_HDR) -Yu$($(target)_PCH_HDR) -Fp$($(target)_1_VCC_PCH_FILE) -FS,)\
    219219                -Fd$(if-expr defined($(target)_1_VCC_COMMON_OBJ_PDB),$($(target)_1_VCC_COMMON_OBJ_PDB),$(outbase)-obj.pdb) \
    220220                -Fo$(obj)\
     
    222222        $(QUIET)$(DEP_OBJ) -f -s -q -o $(dep) -t $(obj) $(obj)
    223223 endef
    224 endif # !TOOL_VCC100AMD64_KSUBMIT
     224endif # !TOOL_VCC120AMD64_KSUBMIT
    225225
    226226
     
    231231# related _1_VCC_PCH_FILE and add -Yc.
    232232#
    233 TOOL_VCC100AMD64-PCH                         := Helper for creating precompiled header using CXX handling.
    234 TOOL_VCC100AMD64-PCH_EXTENDS                 := VCC100AMD64
    235 TOOL_VCC100AMD64-PCH_CXXOBJSUFF              := .obj
    236 TOOL_VCC100AMD64-PCH_CXXINCS                  = $(TOOL_VCC100AMD64_CXXINCS)
    237 TOOL_VCC100AMD64-PCH_CXXFLAGS.debug           = $(TOOL_VCC100AMD64_CXXFLAGS.debug)
    238 TOOL_VCC100AMD64-PCH_CXXFLAGS.dbgopt          = $(TOOL_VCC100AMD64_CXXFLAGS.dbgopt)
    239 TOOL_VCC100AMD64-PCH_CXXFLAGS.release         = $(TOOL_VCC100AMD64_CXXFLAGS.release)
    240 TOOL_VCC100AMD64-PCH_CXXFLAGS.profile         = $(TOOL_VCC100AMD64_CXXFLAGS.profile)
    241 TOOL_VCC100AMD64-PCH_COMPILE_CXX_DEPEND       = $(NO_SUCH_VARIABLE)
    242 TOOL_VCC100AMD64-PCH_COMPILE_CXX_DEPORD       = $(NO_SUCH_VARIABLE)
    243 TOOL_VCC100AMD64-PCH_COMPILE_CXX_OUTPUT       = $($(target)_1_VCC_PCH_FILE) $($(target)_1_VCC_COMMON_OBJ_PDB)
    244 TOOL_VCC100AMD64-PCH_COMPILE_CXX_OUTPUT_MAYBE = $(NO_SUCH_VARIABLE)
    245 ifdef TOOL_VCC100AMD64_KSUBMIT
    246  define TOOL_VCC100AMD64-PCH_COMPILE_CXX_CMDS
     233TOOL_VCC120AMD64-PCH                         := Helper for creating precompiled header using CXX handling.
     234TOOL_VCC120AMD64-PCH_EXTENDS                 := VCC120AMD64
     235TOOL_VCC120AMD64-PCH_CXXOBJSUFF              := .obj
     236TOOL_VCC120AMD64-PCH_CXXINCS                  = $(TOOL_VCC120AMD64_CXXINCS)
     237TOOL_VCC120AMD64-PCH_CXXFLAGS                 = $(TOOL_VCC120AMD64_CXXFLAGS) -FS
     238TOOL_VCC120AMD64-PCH_CXXFLAGS.debug           = $(TOOL_VCC120AMD64_CXXFLAGS.debug)
     239TOOL_VCC120AMD64-PCH_CXXFLAGS.dbgopt          = $(TOOL_VCC120AMD64_CXXFLAGS.dbgopt)
     240TOOL_VCC120AMD64-PCH_CXXFLAGS.release         = $(TOOL_VCC120AMD64_CXXFLAGS.release)
     241TOOL_VCC120AMD64-PCH_CXXFLAGS.profile         = $(TOOL_VCC120AMD64_CXXFLAGS.profile)
     242TOOL_VCC120AMD64-PCH_COMPILE_CXX_DEPEND       = $(NO_SUCH_VARIABLE)
     243TOOL_VCC120AMD64-PCH_COMPILE_CXX_DEPORD       = $(NO_SUCH_VARIABLE)
     244TOOL_VCC120AMD64-PCH_COMPILE_CXX_OUTPUT       = $($(target)_1_VCC_PCH_FILE) $($(target)_1_VCC_COMMON_OBJ_PDB)
     245TOOL_VCC120AMD64-PCH_COMPILE_CXX_OUTPUT_MAYBE = $(NO_SUCH_VARIABLE)
     246ifdef TOOL_VCC120AMD64_KSUBMIT
     247 define TOOL_VCC120AMD64-PCH_COMPILE_CXX_CMDS
    247248        $(QUIET)$(RM) -f -- $($(target)_1_VCC_PCH_FILE) $($(target)_1_VCC_COMMON_OBJ_PDB)
    248         $(QUIET)$(TOOL_VCC100AMD64_KSUBMIT) --no-pch-caching -P $(DEP_OBJ_INT) -f -s -q -e .pch -o $(dep) -t $(obj) $(obj)\
    249                 -- $(TOOL_VCC100AMD64_CXX) -c -Yc\
     249        $(QUIET)$(TOOL_VCC120AMD64_KSUBMIT) --no-pch-caching -P $(DEP_OBJ_INT) -f -s -q -e .pch -o $(dep) -t $(obj) $(obj)\
     250                -- $(TOOL_VCC120AMD64_CXX) -c -Yc\
    250251                $(flags) $(addprefix -I, $(incs)) $(addprefix -D, $(defs))\
    251252               -Fp$($(target)_1_VCC_PCH_FILE) \
     
    256257 endef
    257258else
    258  define TOOL_VCC100AMD64-PCH_COMPILE_CXX_CMDS
     259 define TOOL_VCC120AMD64-PCH_COMPILE_CXX_CMDS
    259260        $(QUIET)$(RM) -f -- $($(target)_1_VCC_PCH_FILE) $($(target)_1_VCC_COMMON_OBJ_PDB)
    260         $(QUIET)$(TOOL_VCC100AMD64_CXX) -c -Yc\
     261        $(QUIET)$(TOOL_VCC120AMD64_CXX) -c -Yc\
    261262                $(flags) $(addprefix -I, $(incs)) $(addprefix -D, $(defs))\
    262263               -Fp$($(target)_1_VCC_PCH_FILE) \
     
    268269
    269270 endef
    270 endif # !TOOL_VCC100AMD64_KSUBMIT
     271endif # !TOOL_VCC120AMD64_KSUBMIT
    271272
    272273
     
    286287# @param    $(outbase)  Output basename (full). Use this for list files and such.
    287288# @param    $(objsuff)  Object suffix.
    288 TOOL_VCC100AMD64_COMPILE_RC_DEPEND =
    289 TOOL_VCC100AMD64_COMPILE_RC_DEPORD =
    290 TOOL_VCC100AMD64_COMPILE_RC_OUTPUT =
    291 define TOOL_VCC100AMD64_COMPILE_RC_CMDS
    292         $(QUIET)$(TOOL_VCC100AMD64_RC) \
     289TOOL_VCC120AMD64_COMPILE_RC_DEPEND =
     290TOOL_VCC120AMD64_COMPILE_RC_DEPORD =
     291TOOL_VCC120AMD64_COMPILE_RC_OUTPUT =
     292define TOOL_VCC120AMD64_COMPILE_RC_CMDS
     293        $(QUIET)$(TOOL_VCC120AMD64_RC) \
    293294                $(flags) $(addprefix /i, $(subst /,\\,$(incs))) $(addprefix /d, $(defs))\
    294295                /fo$(obj)\
     
    307308# @param    $(outbase)  Output basename (full). Use this for list files and such.
    308309#
    309 TOOL_VCC100AMD64_LINK_LIBRARY_DEPEND = $(othersrc)
    310 TOOL_VCC100AMD64_LINK_LIBRARY_DEPORD =
    311 TOOL_VCC100AMD64_LINK_LIBRARY_OUTPUT = $(outbase).rsp
    312 TOOL_VCC100AMD64_LINK_LIBRARY_OUTPUT_MAYBE = $(outbase).lst $(outbase).exp $(outbase).pdb
    313 define TOOL_VCC100AMD64_LINK_LIBRARY_CMDS
     310TOOL_VCC120AMD64_LINK_LIBRARY_DEPEND = $(othersrc)
     311TOOL_VCC120AMD64_LINK_LIBRARY_DEPORD =
     312TOOL_VCC120AMD64_LINK_LIBRARY_OUTPUT = $(outbase).rsp
     313TOOL_VCC120AMD64_LINK_LIBRARY_OUTPUT_MAYBE = $(outbase).lst $(outbase).exp $(outbase).pdb
     314define TOOL_VCC120AMD64_LINK_LIBRARY_CMDS
    314315        $(QUIET)$(APPEND) -tn $(outbase).rsp \
    315316                $(foreach arg,\
     
    318319                        $(addprefix /DEF:,$(filter %.def,$(othersrc))) \
    319320                        ,\"$(arg)\")
    320         $(QUIET)$(TOOL_VCC100AMD64_KSUBMIT_DD) $(TOOL_VCC100AMD64_AR) $(flags) /OUT:$(out) @$(outbase).rsp
     321        $(QUIET)$(TOOL_VCC120AMD64_KSUBMIT_DD) $(TOOL_VCC120AMD64_AR) $(flags) /OUT:$(out) @$(outbase).rsp
    321322endef
    322323
     
    336337# @param    $(outbase)      Output basename (full). Use this for list files and such.
    337338#
    338 TOOL_VCC100AMD64_LINK_PROGRAM_DEPEND = $(foreach lib,$(libs),$(if $(findstring $(lib),$(subst /,x,$(lib))),, $(lib))) $(othersrc)
    339 TOOL_VCC100AMD64_LINK_PROGRAM_DEPORD =
    340 TOOL_VCC100AMD64_LINK_PROGRAM_OUTPUT = $(outbase).map $(outbase).rsp
    341 TOOL_VCC100AMD64_LINK_PROGRAM_OUTPUT_MAYBE = $(outbase).lib $(outbase).exp $(outbase).ilk $(out).manifest
    342 TOOL_VCC100AMD64_LINK_PROGRAM_OUTPUT_DEBUG = $(outbase).pdb
    343 TOOL_VCC100AMD64_LINK_PROGRAM_DEBUG_INSTALL_FN = $(2).pdb=>$(basename $(3)).pdb
    344 define TOOL_VCC100AMD64_LINK_PROGRAM_CMDS
     339TOOL_VCC120AMD64_LINK_PROGRAM_DEPEND = $(foreach lib,$(libs),$(if $(findstring $(lib),$(subst /,x,$(lib))),, $(lib))) $(othersrc)
     340TOOL_VCC120AMD64_LINK_PROGRAM_DEPORD =
     341TOOL_VCC120AMD64_LINK_PROGRAM_OUTPUT = $(outbase).map $(outbase).rsp
     342TOOL_VCC120AMD64_LINK_PROGRAM_OUTPUT_MAYBE = $(outbase).lib $(outbase).exp $(outbase).ilk $(out).manifest
     343TOOL_VCC120AMD64_LINK_PROGRAM_OUTPUT_DEBUG = $(outbase).pdb
     344TOOL_VCC120AMD64_LINK_PROGRAM_DEBUG_INSTALL_FN = $(2).pdb=>$(basename $(3)).pdb
     345define TOOL_VCC120AMD64_LINK_PROGRAM_CMDS
    345346        $(QUIET)$(APPEND) -tn $(outbase).rsp \
    346347                $(foreach arg,\
     
    348349                    $(subst /,\\,$(libs)) \
    349350                        ,\"$(arg)\")
    350         $(QUIET)$(TOOL_VCC100AMD64_KSUBMIT_DD) $(TOOL_VCC100AMD64_LD) $(flags) \
     351        $(QUIET)$(TOOL_VCC120AMD64_KSUBMIT_DD) $(TOOL_VCC120AMD64_LD) $(flags) \
    351352                /OUT:$(out) \
    352353                /MAPINFO:EXPORTS /INCREMENTAL:NO \
     
    356357                $(foreach p,$(libpath), /LIBPATH:$(p)) \
    357358                @$(outbase).rsp
    358 ifndef TOOL_VCC100AMD64_NO_AUTO_MANIFEST
     359ifndef TOOL_VCC120AMD64_NO_AUTO_MANIFEST
    359360        $(QUIET)$(TEST) -f $(out).manifest -- \
    360                 $(TOOL_VCC100AMD64_MT) -manifest $(subst /,\\,$(out)).manifest -outputresource:$(subst /,\\,$(out))
     361                $(TOOL_VCC120AMD64_MT) -manifest $(subst /,\\,$(out)).manifest -outputresource:$(subst /,\\,$(out))
    361362endif
    362363endef
     
    377378#
    378379# @param    $(outbase)  Output basename (full). Use this for list files and such.
    379 TOOL_VCC100AMD64_LINK_DLL_DEPEND = $(objs) $(foreach lib,$(libs),$(if $(findstring $(lib),$(subst /,x,$(lib))),, $(lib))) $(othersrc)
    380 TOOL_VCC100AMD64_LINK_DLL_DEPORD = $(call DIRDEP,$(PATH_STAGE_LIB))
    381 TOOL_VCC100AMD64_LINK_DLL_OUTPUT = $(outbase).map $(outbase).lib $(outbase).exp $(outbase).rsp
    382 TOOL_VCC100AMD64_LINK_DLL_OUTPUT_MAYBE = $(outbase).ilk $(out).manifest $(PATH_STAGE_LIB)/$(notdir $(outbase)).exp
    383 TOOL_VCC100AMD64_LINK_DLL_OUTPUT_MAYBE_PRECIOUS = $(PATH_STAGE_LIB)/$(notdir $(outbase)).lib
    384 TOOL_VCC100AMD64_LINK_DLL_OUTPUT_DEBUG = $(outbase).pdb
    385 TOOL_VCC100AMD64_LINK_DLL_DEBUG_INSTALL_FN = $(2).pdb=>$(basename $(3)).pdb
    386 define TOOL_VCC100AMD64_LINK_DLL_CMDS
     380TOOL_VCC120AMD64_LINK_DLL_DEPEND = $(objs) $(foreach lib,$(libs),$(if $(findstring $(lib),$(subst /,x,$(lib))),, $(lib))) $(othersrc)
     381TOOL_VCC120AMD64_LINK_DLL_DEPORD = $(call DIRDEP,$(PATH_STAGE_LIB))
     382TOOL_VCC120AMD64_LINK_DLL_OUTPUT = $(outbase).map $(outbase).lib $(outbase).exp $(outbase).rsp
     383TOOL_VCC120AMD64_LINK_DLL_OUTPUT_MAYBE = $(outbase).ilk $(out).manifest $(PATH_STAGE_LIB)/$(notdir $(outbase)).exp
     384TOOL_VCC120AMD64_LINK_DLL_OUTPUT_MAYBE_PRECIOUS = $(PATH_STAGE_LIB)/$(notdir $(outbase)).lib
     385TOOL_VCC120AMD64_LINK_DLL_OUTPUT_DEBUG = $(outbase).pdb
     386TOOL_VCC120AMD64_LINK_DLL_DEBUG_INSTALL_FN = $(2).pdb=>$(basename $(3)).pdb
     387define TOOL_VCC120AMD64_LINK_DLL_CMDS
    387388        $(QUIET)$(APPEND) -tn $(outbase).rsp \
    388389                $(foreach arg,\
     
    390391                    $(subst /,\\,$(libs)) \
    391392                        ,\"$(arg)\")
    392         $(QUIET)$(TOOL_VCC100AMD64_KSUBMIT_DD) $(TOOL_VCC100AMD64_LD) $(flags) \
     393        $(QUIET)$(TOOL_VCC120AMD64_KSUBMIT_DD) $(TOOL_VCC120AMD64_LD) $(flags) \
    393394                /OUT:$(out) \
    394395                /IMPLIB:$(outbase).lib \
     
    400401                $(foreach p,$(libpath), /LIBPATH:$(p)) \
    401402                @$(outbase).rsp
    402 ifndef TOOL_VCC100AMD64_NO_AUTO_MANIFEST
     403ifndef TOOL_VCC120AMD64_NO_AUTO_MANIFEST
    403404        $(QUIET)$(TEST) -f $(out).manifest -- \
    404                 $(TOOL_VCC100AMD64_MT) -manifest $(subst /,\\,$(out)).manifest '-outputresource:$(subst /,\\,$(out));#2'
     405                $(TOOL_VCC120AMD64_MT) -manifest $(subst /,\\,$(out)).manifest '-outputresource:$(subst /,\\,$(out));#2'
    405406endif
    406407        $(QUIET)$(TEST) -f $(outbase).lib -- $(KLIBTWEAKER_EXT) --clear-timestamps $(outbase).lib
     
    424425#
    425426# @param    $(outbase)  Output basename (full). Use this for list files and such.
    426 TOOL_VCC100AMD64_LINK_SYSMOD_DEPEND = $(foreach lib,$(libs),$(if $(findstring $(lib),$(subst /,x,$(lib))),, $(lib))) $(othersrc)
    427 TOOL_VCC100AMD64_LINK_SYSMOD_DEPORD =
    428 TOOL_VCC100AMD64_LINK_SYSMOD_OUTPUT = $(outbase).map $(outbase).rsp
    429 TOOL_VCC100AMD64_LINK_SYSMOD_OUTPUT_MAYBE = $(outbase).lib $(outbase).exp $(outbase).ilk $(out).manifest
    430 TOOL_VCC100AMD64_LINK_SYSMOD_OUTPUT_DEBUG = $(outbase).pdb
    431 TOOL_VCC100AMD64_LINK_SYSMOD_DEBUG_INSTALL_FN = $(2).pdb=>$(basename $(3)).pdb
    432 define TOOL_VCC100AMD64_LINK_SYSMOD_CMDS
     427TOOL_VCC120AMD64_LINK_SYSMOD_DEPEND = $(foreach lib,$(libs),$(if $(findstring $(lib),$(subst /,x,$(lib))),, $(lib))) $(othersrc)
     428TOOL_VCC120AMD64_LINK_SYSMOD_DEPORD =
     429TOOL_VCC120AMD64_LINK_SYSMOD_OUTPUT = $(outbase).map $(outbase).rsp
     430TOOL_VCC120AMD64_LINK_SYSMOD_OUTPUT_MAYBE = $(outbase).lib $(outbase).exp $(outbase).ilk $(out).manifest
     431TOOL_VCC120AMD64_LINK_SYSMOD_OUTPUT_DEBUG = $(outbase).pdb
     432TOOL_VCC120AMD64_LINK_SYSMOD_DEBUG_INSTALL_FN = $(2).pdb=>$(basename $(3)).pdb
     433define TOOL_VCC120AMD64_LINK_SYSMOD_CMDS
    433434        $(QUIET)$(APPEND) -tn $(outbase).rsp \
    434435                $(foreach arg,\
     
    436437                    $(subst /,\\,$(libs)) \
    437438                        ,\"$(arg)\")
    438         $(QUIET)$(TOOL_VCC100AMD64_KSUBMIT_DD) $(TOOL_VCC100AMD64_LD) $(flags) \
     439        $(QUIET)$(TOOL_VCC120AMD64_KSUBMIT_DD) $(TOOL_VCC120AMD64_LD) $(flags) \
    439440                /OUT:$(out) \
    440441                /MAPINFO:EXPORTS /INCREMENTAL:NO \
     
    444445                $(foreach p,$(libpath), /LIBPATH:$(p)) \
    445446                @$(outbase).rsp
    446 ifndef TOOL_VCC100AMD64_NO_AUTO_MANIFEST
     447ifndef TOOL_VCC120AMD64_NO_AUTO_MANIFEST
    447448        $(QUIET)$(TEST) -f $(out).manifest -- \
    448                 $(TOOL_VCC100AMD64_MT) -manifest $(subst /,\\,$(out)).manifest '-outputresource:$(subst /,\\,$(out));#2'
     449                $(TOOL_VCC120AMD64_MT) -manifest $(subst /,\\,$(out)).manifest '-outputresource:$(subst /,\\,$(out));#2'
    449450endif
    450451endef
Note: See TracChangeset for help on using the changeset viewer.