Changeset 3033 in kBuild
- Timestamp:
- May 8, 2017 5:03:48 PM (8 years ago)
- Location:
- trunk/kBuild/tools
- Files:
-
- 3 copied
Legend:
- Unmodified
- Added
- Removed
-
trunk/kBuild/tools/VCC120.kmk
r3024 r3033 1 1 # $Id$ 2 2 ## @file 3 # kBuild Tool Config - Visual C++ 1 0.0 (aka Visual 2010 and MSC v16), targeting $(KBUILD_TARGET).4 # 5 6 # 7 # Copyright (c) 2004-201 4knut st. osmundsen <[email protected]>3 # kBuild Tool Config - Visual C++ 12.0 (aka Visual 2013 and MSC v18), targeting $(KBUILD_TARGET). 4 # 5 6 # 7 # Copyright (c) 2004-2017 knut st. osmundsen <[email protected]> 8 8 # 9 9 # This file is part of kBuild. … … 32 32 # 33 33 34 TOOL_VCC1 00 := Visual C++ 10.0 (aka Visual 2010 and MSC v16), targeting $(KBUILD_TARGET).34 TOOL_VCC120 := Visual C++ 12.0 (aka Visual 2013 and MSC v18), targeting $(KBUILD_TARGET). 35 35 36 36 # Tool Specific Properties 37 ifndef PATH_TOOL_VCC1 0038 PATH_TOOL_VCC1 00 := $(wildcard $(KBUILD_DEVTOOLS_TRG)/vcc/v10*)39 ifeq ($(PATH_TOOL_VCC1 00),)40 PATH_TOOL_VCC1 00 := $(wildcard $(KBUILD_DEVTOOLS)/win.x86/vcc/v10*)37 ifndef PATH_TOOL_VCC120 38 PATH_TOOL_VCC120 := $(wildcard $(KBUILD_DEVTOOLS_TRG)/vcc/v12*) 39 ifeq ($(PATH_TOOL_VCC120),) 40 PATH_TOOL_VCC120 := $(wildcard $(KBUILD_DEVTOOLS)/win.x86/vcc/v12*) 41 41 endif 42 ifeq ($(PATH_TOOL_VCC1 00),)43 PATH_TOOL_VCC1 00 := $(wildcard $(KBUILD_DEVTOOLS)/x86.win32/vcc/v10*)42 ifeq ($(PATH_TOOL_VCC120),) 43 PATH_TOOL_VCC120 := $(wildcard $(KBUILD_DEVTOOLS)/x86.win32/vcc/v12*) 44 44 endif 45 ifeq ($(PATH_TOOL_VCC1 00),)46 PATH_TOOL_VCC1 00 := $(wildcard $(KBUILD_DEVTOOLS)/win.amd64/vcc/v10*)45 ifeq ($(PATH_TOOL_VCC120),) 46 PATH_TOOL_VCC120 := $(wildcard $(KBUILD_DEVTOOLS)/win.amd64/vcc/v12*) 47 47 endif 48 ifeq ($(PATH_TOOL_VCC1 00),)49 PATH_TOOL_VCC1 00 := $(lastword $(sort $(PATH_TOOL_VCC100)))48 ifeq ($(PATH_TOOL_VCC120),) 49 PATH_TOOL_VCC120 := $(lastword $(sort $(PATH_TOOL_VCC120))) 50 50 endif 51 51 # if not found, we'll enter 'pathless' mode. 52 52 else 53 53 # Resolve any fancy stuff once and for all. 54 PATH_TOOL_VCC1 00 := $(PATH_TOOL_VCC100)54 PATH_TOOL_VCC120 := $(PATH_TOOL_VCC120) 55 55 endif 56 ifneq ($(PATH_TOOL_VCC1 00),)56 ifneq ($(PATH_TOOL_VCC120),) 57 57 ifeq ($(KBUILD_HOST).$(KBUILD_HOST_ARCH),win.amd64) 58 PATH_TOOL_VCC1 00_BIN.amd64 ?= $(PATH_TOOL_VCC100)/bin/amd6458 PATH_TOOL_VCC120_BIN.amd64 ?= $(PATH_TOOL_VCC120)/bin/amd64 59 59 else 60 PATH_TOOL_VCC1 00_BIN.amd64 ?= $(PATH_TOOL_VCC100)/bin/x86_amd6460 PATH_TOOL_VCC120_BIN.amd64 ?= $(PATH_TOOL_VCC120)/bin/x86_amd64 61 61 endif 62 PATH_TOOL_VCC1 00_BIN.x86 ?= $(PATH_TOOL_VCC100)/bin63 PATH_TOOL_VCC1 00_BIN ?= $(PATH_TOOL_VCC100_BIN.$(KBUILD_TARGET_ARCH))64 PATH_TOOL_VCC1 00_LIB.amd64 ?= $(PATH_TOOL_VCC100)/lib/amd6465 PATH_TOOL_VCC1 00_LIB.x86 ?= $(PATH_TOOL_VCC100)/lib66 PATH_TOOL_VCC1 00_LIB ?= $(PATH_TOOL_VCC100_LIB.$(KBUILD_TARGET_ARCH))67 PATH_TOOL_VCC1 00_INC ?= $(PATH_TOOL_VCC100)/include68 PATH_TOOL_VCC1 00_ATLMFC ?= $(PATH_TOOL_VCC100X86)/atlmfc69 PATH_TOOL_VCC1 00_ATLMFC_INC ?= $(PATH_TOOL_VCC100_ATLMFC)/include70 PATH_TOOL_VCC1 00_ATLMFC_LIB.amd64 ?= $(PATH_TOOL_VCC100_ATLMFC)/lib71 PATH_TOOL_VCC1 00_ATLMFC_LIB.x86 ?= $(PATH_TOOL_VCC100_ATLMFC)/lib/amd6472 PATH_TOOL_VCC1 00_ATLMFC_LIB ?= $(PATH_TOOL_VCC100_ATLMFC_LIB.$(KBUILD_TARGET_ARCH))73 TOOL_VCC1 00_CC ?= $(EXEC_X86_WIN32) $(PATH_TOOL_VCC100_BIN)/cl.exe74 TOOL_VCC1 00_CXX ?= $(EXEC_X86_WIN32) $(PATH_TOOL_VCC100_BIN)/cl.exe75 TOOL_VCC1 00_AS ?= $(EXEC_X86_WIN32) $(PATH_TOOL_VCC100_BIN)/ml64.exe76 TOOL_VCC1 00_AR ?= $(EXEC_X86_WIN32) $(PATH_TOOL_VCC100_BIN)/lib.exe77 TOOL_VCC1 00_LD ?= $(EXEC_X86_WIN32) $(PATH_TOOL_VCC100_BIN)/link.exe78 TOOL_VCC1 00_DUMPBIN ?= $(EXEC_X86_WIN32) $(PATH_TOOL_VCC100_BIN)/dumpbin.exe79 TOOL_VCC1 00_EDITBIN ?= $(EXEC_X86_WIN32) $(PATH_TOOL_VCC100_BIN)/editbin.exe62 PATH_TOOL_VCC120_BIN.x86 ?= $(PATH_TOOL_VCC120)/bin 63 PATH_TOOL_VCC120_BIN ?= $(PATH_TOOL_VCC120_BIN.$(KBUILD_TARGET_ARCH)) 64 PATH_TOOL_VCC120_LIB.amd64 ?= $(PATH_TOOL_VCC120)/lib/amd64 65 PATH_TOOL_VCC120_LIB.x86 ?= $(PATH_TOOL_VCC120)/lib 66 PATH_TOOL_VCC120_LIB ?= $(PATH_TOOL_VCC120_LIB.$(KBUILD_TARGET_ARCH)) 67 PATH_TOOL_VCC120_INC ?= $(PATH_TOOL_VCC120)/include 68 PATH_TOOL_VCC120_ATLMFC ?= $(PATH_TOOL_VCC120X86)/atlmfc 69 PATH_TOOL_VCC120_ATLMFC_INC ?= $(PATH_TOOL_VCC120_ATLMFC)/include 70 PATH_TOOL_VCC120_ATLMFC_LIB.amd64 ?= $(PATH_TOOL_VCC120_ATLMFC)/lib 71 PATH_TOOL_VCC120_ATLMFC_LIB.x86 ?= $(PATH_TOOL_VCC120_ATLMFC)/lib/amd64 72 PATH_TOOL_VCC120_ATLMFC_LIB ?= $(PATH_TOOL_VCC120_ATLMFC_LIB.$(KBUILD_TARGET_ARCH)) 73 TOOL_VCC120_CC ?= $(EXEC_X86_WIN32) $(PATH_TOOL_VCC120_BIN)/cl.exe 74 TOOL_VCC120_CXX ?= $(EXEC_X86_WIN32) $(PATH_TOOL_VCC120_BIN)/cl.exe 75 TOOL_VCC120_AS ?= $(EXEC_X86_WIN32) $(PATH_TOOL_VCC120_BIN)/ml64.exe 76 TOOL_VCC120_AR ?= $(EXEC_X86_WIN32) $(PATH_TOOL_VCC120_BIN)/lib.exe 77 TOOL_VCC120_LD ?= $(EXEC_X86_WIN32) $(PATH_TOOL_VCC120_BIN)/link.exe 78 TOOL_VCC120_DUMPBIN ?= $(EXEC_X86_WIN32) $(PATH_TOOL_VCC120_BIN)/dumpbin.exe 79 TOOL_VCC120_EDITBIN ?= $(EXEC_X86_WIN32) $(PATH_TOOL_VCC120_BIN)/editbin.exe 80 80 else 81 81 # Pathless, relies on the environment. 82 TOOL_VCC1 00_CC ?= $(EXEC_X86_WIN32) cl.exe83 TOOL_VCC1 00_CXX ?= $(EXEC_X86_WIN32) cl.exe84 TOOL_VCC1 00_AS ?= $(EXEC_X86_WIN32) ml64.exe85 TOOL_VCC1 00_AR ?= $(EXEC_X86_WIN32) lib.exe86 TOOL_VCC1 00_LD ?= $(EXEC_X86_WIN32) link.exe87 TOOL_VCC1 00_DUMPBIN ?= $(EXEC_X86_WIN32) dumpbin.exe88 TOOL_VCC1 00_EDITBIN ?= $(EXEC_X86_WIN32) editbin.exe82 TOOL_VCC120_CC ?= $(EXEC_X86_WIN32) cl.exe 83 TOOL_VCC120_CXX ?= $(EXEC_X86_WIN32) cl.exe 84 TOOL_VCC120_AS ?= $(EXEC_X86_WIN32) ml64.exe 85 TOOL_VCC120_AR ?= $(EXEC_X86_WIN32) lib.exe 86 TOOL_VCC120_LD ?= $(EXEC_X86_WIN32) link.exe 87 TOOL_VCC120_DUMPBIN ?= $(EXEC_X86_WIN32) dumpbin.exe 88 TOOL_VCC120_EDITBIN ?= $(EXEC_X86_WIN32) editbin.exe 89 89 endif 90 TOOL_VCC1 00_RC ?= $(EXEC_X86_WIN32) $(call TOOL_VCC100_FN_FIND_SDK_TOOL,rc.exe,[Rr][Cc].[Ee][Xx][Ee],TOOL_VCC100_RC_CACHED)91 TOOL_VCC1 00_MT ?= $(EXEC_X86_WIN32) $(call TOOL_VCC100_FN_FIND_SDK_TOOL,mt.exe,[Mm][Tt].[Ee][Xx][Ee],TOOL_VCC100_MT_CACHED)92 93 # The following in duplicated in VCC1 00.kmk and VCC100X86.kmk.94 TOOL_VCC1 00_FN_FIND_SDK_TOOL_SUB = $(eval $3 := $(firstword \90 TOOL_VCC120_RC ?= $(EXEC_X86_WIN32) $(call TOOL_VCC120_FN_FIND_SDK_TOOL,rc.exe,[Rr][Cc].[Ee][Xx][Ee],TOOL_VCC120_RC_CACHED) 91 TOOL_VCC120_MT ?= $(EXEC_X86_WIN32) $(call TOOL_VCC120_FN_FIND_SDK_TOOL,mt.exe,[Mm][Tt].[Ee][Xx][Ee],TOOL_VCC120_MT_CACHED) 92 93 # The following in duplicated in VCC120.kmk and VCC120X86.kmk. 94 TOOL_VCC120_FN_FIND_SDK_TOOL_SUB = $(eval $3 := $(firstword \ 95 95 $(if-expr defined(PATH_SDK_WINPSDK71_BIN), $(wildcard $(PATH_SDK_WINPSDK71_BIN)/$2)) \ 96 96 $(if-expr defined(PATH_SDK_WINPSDK_BIN) , $(wildcard $(PATH_SDK_WINPSDK_BIN)/$2)) \ … … 98 98 $(rsort $(wildcard $(KBUILD_DEVTOOLS_HST_ALT)/sdk/*/[Bb][Ii][Nn]/$2)) \ 99 99 $1)) 100 TOOL_VCC1 00_FN_FIND_SDK_TOOL = $(if-expr !defined($3),$(TOOL_VCC100_FN_FIND_SDK_TOOL_SUB),)$($3)100 TOOL_VCC120_FN_FIND_SDK_TOOL = $(if-expr !defined($3),$(TOOL_VCC120_FN_FIND_SDK_TOOL_SUB),)$($3) 101 101 102 102 ## Disabled fast DEP_IDB based dependencies. 103 #VCC1 00_OLD_DEPS = 1103 #VCC120_OLD_DEPS = 1 104 104 105 105 ## Constructs the correct .pdb name (the name is lowercased). 106 106 # @param $(1) Base name, no extention. 107 107 # @param $(2) The extension. 108 TOOL_VCC1 00_PDB = $(dir $(1))$(tolower $(notdir $(1))).$(2)108 TOOL_VCC120_PDB = $(dir $(1))$(tolower $(notdir $(1))).$(2) 109 109 110 110 111 111 # General Properties used by kBuild 112 TOOL_VCC1 00_COBJSUFF ?= .obj113 TOOL_VCC1 00_CFLAGS ?= -TC -nologo -Zi114 TOOL_VCC1 00_CFLAGS.debug ?=115 TOOL_VCC1 00_CFLAGS.dbgopt ?= -O2116 TOOL_VCC1 00_CFLAGS.release ?= -O2117 TOOL_VCC1 00_CFLAGS.profile ?= -O2118 TOOL_VCC1 00_CINCS ?= $(PATH_TOOL_VCC100_INC)119 TOOL_VCC1 00_CDEFS ?=120 121 TOOL_VCC1 00_CXXOBJSUFF ?= .obj122 TOOL_VCC1 00_CXXFLAGS ?= -TP -nologo -Zi123 TOOL_VCC1 00_CXXFLAGS.debug ?=124 TOOL_VCC1 00_CXXFLAGS.dbgopt ?= -O2125 TOOL_VCC1 00_CXXFLAGS.release ?= -O2126 TOOL_VCC1 00_CXXFLAGS.profile ?= -O2127 TOOL_VCC1 00_CXXINCS ?= $(PATH_TOOL_VCC100_INC) $(PATH_TOOL_VCC100_ATLMFC_INC)128 TOOL_VCC1 00_CXXDEFS ?=129 130 TOOL_VCC1 00_ASOBJSUFF ?= .obj131 132 TOOL_VCC1 00_RCOBJSUFF ?= .res133 TOOL_VCC1 00_RCINCS ?= $(PATH_TOOL_VCC100_INC) $(PATH_TOOL_VCC100_ATLMFC_INC)134 135 TOOL_VCC1 00_ARFLAGS.amd64 ?= -machine:amd64136 TOOL_VCC1 00_ARFLAGS.x86 ?= -machine:x86137 TOOL_VCC1 00_ARFLAGS ?= -nologo138 TOOL_VCC1 00_ARLIBSUFF ?= .lib139 140 TOOL_VCC1 00_LDFLAGS.amd64 ?= -machine:amd64141 TOOL_VCC1 00_LDFLAGS.x86 ?= -machine:x86142 TOOL_VCC1 00_LDFLAGS ?= -nologo143 TOOL_VCC1 00_LDFLAGS.debug ?= -debug144 TOOL_VCC1 00_LDFLAGS.dbgopt ?= -debug145 TOOL_VCC1 00_LDFLAGS.profile ?= -debug146 TOOL_VCC1 00_LDFLAGS.release ?=147 TOOL_VCC1 00_LIBPATH.amd64 ?= $(PATH_TOOL_VCC100_LIB.amd64) $(PATH_TOOL_VCC100_ATLMFC_LIB.amd64)148 TOOL_VCC1 00_LIBPATH.x86 ?= $(PATH_TOOL_VCC100_LIB.x86) $(PATH_TOOL_VCC100_ATLMFC_LIB.x86)112 TOOL_VCC120_COBJSUFF ?= .obj 113 TOOL_VCC120_CFLAGS ?= -TC -nologo -Zi 114 TOOL_VCC120_CFLAGS.debug ?= 115 TOOL_VCC120_CFLAGS.dbgopt ?= -O2 116 TOOL_VCC120_CFLAGS.release ?= -O2 117 TOOL_VCC120_CFLAGS.profile ?= -O2 118 TOOL_VCC120_CINCS ?= $(PATH_TOOL_VCC120_INC) 119 TOOL_VCC120_CDEFS ?= 120 121 TOOL_VCC120_CXXOBJSUFF ?= .obj 122 TOOL_VCC120_CXXFLAGS ?= -TP -nologo -Zi 123 TOOL_VCC120_CXXFLAGS.debug ?= 124 TOOL_VCC120_CXXFLAGS.dbgopt ?= -O2 125 TOOL_VCC120_CXXFLAGS.release ?= -O2 126 TOOL_VCC120_CXXFLAGS.profile ?= -O2 127 TOOL_VCC120_CXXINCS ?= $(PATH_TOOL_VCC120_INC) $(PATH_TOOL_VCC120_ATLMFC_INC) 128 TOOL_VCC120_CXXDEFS ?= 129 130 TOOL_VCC120_ASOBJSUFF ?= .obj 131 132 TOOL_VCC120_RCOBJSUFF ?= .res 133 TOOL_VCC120_RCINCS ?= $(PATH_TOOL_VCC120_INC) $(PATH_TOOL_VCC120_ATLMFC_INC) 134 135 TOOL_VCC120_ARFLAGS.amd64 ?= -machine:amd64 136 TOOL_VCC120_ARFLAGS.x86 ?= -machine:x86 137 TOOL_VCC120_ARFLAGS ?= -nologo 138 TOOL_VCC120_ARLIBSUFF ?= .lib 139 140 TOOL_VCC120_LDFLAGS.amd64 ?= -machine:amd64 141 TOOL_VCC120_LDFLAGS.x86 ?= -machine:x86 142 TOOL_VCC120_LDFLAGS ?= -nologo 143 TOOL_VCC120_LDFLAGS.debug ?= -debug 144 TOOL_VCC120_LDFLAGS.dbgopt ?= -debug 145 TOOL_VCC120_LDFLAGS.profile ?= -debug 146 TOOL_VCC120_LDFLAGS.release ?= 147 TOOL_VCC120_LIBPATH.amd64 ?= $(PATH_TOOL_VCC120_LIB.amd64) $(PATH_TOOL_VCC120_ATLMFC_LIB.amd64) 148 TOOL_VCC120_LIBPATH.x86 ?= $(PATH_TOOL_VCC120_LIB.x86) $(PATH_TOOL_VCC120_ATLMFC_LIB.x86) 149 149 150 150 … … 163 163 # @param $(outbase) Output basename (full). Use this for list files and such. 164 164 # @param $(objsuff) Object suffix. 165 TOOL_VCC1 00_COMPILE_C_DEPEND =166 TOOL_VCC1 00_COMPILE_C_DEPORD =167 TOOL_VCC1 00_COMPILE_C_OUTPUT =168 TOOL_VCC1 00_COMPILE_C_OUTPUT_MAYBE = $(call TOOL_VCC100_PDB, $(outbase)-obj,pdb) $(call TOOL_VCC100_PDB, $(outbase)-obj,idb)169 define TOOL_VCC1 00_COMPILE_C_CMDS170 $(QUIET)$(TOOL_VCC1 00_CC) -c\165 TOOL_VCC120_COMPILE_C_DEPEND = 166 TOOL_VCC120_COMPILE_C_DEPORD = 167 TOOL_VCC120_COMPILE_C_OUTPUT = 168 TOOL_VCC120_COMPILE_C_OUTPUT_MAYBE = $(call TOOL_VCC120_PDB, $(outbase)-obj,pdb) $(call TOOL_VCC120_PDB, $(outbase)-obj,idb) 169 define TOOL_VCC120_COMPILE_C_CMDS 170 $(QUIET)$(TOOL_VCC120_CC) -c\ 171 171 $(flags) $(addprefix -I, $(incs)) $(addprefix -D, $(defs))\ 172 172 -Fd$(outbase)-obj.pdb \ … … 190 190 # @param $(outbase) Output basename (full). Use this for list files and such. 191 191 # @param $(objsuff) Object suffix. 192 TOOL_VCC1 00_COMPILE_CXX_DEPEND = $($(target)_1_VCC_PCH_FILE)193 TOOL_VCC1 00_COMPILE_CXX_DEPORD =194 TOOL_VCC1 00_COMPILE_CXX_OUTPUT =195 TOOL_VCC1 00_COMPILE_CXX_OUTPUT_MAYBE = $(if-expr defined($(target)_1_VCC_COMMON_OBJ_PDB)\196 ,,$(call TOOL_VCC1 00_PDB, $(outbase)-obj,pdb) $(call TOOL_VCC100_PDB, $(outbase)-obj,idb))197 define TOOL_VCC1 00_COMPILE_CXX_CMDS198 $(QUIET)$(TOOL_VCC1 00_CXX) -c\192 TOOL_VCC120_COMPILE_CXX_DEPEND = $($(target)_1_VCC_PCH_FILE) 193 TOOL_VCC120_COMPILE_CXX_DEPORD = 194 TOOL_VCC120_COMPILE_CXX_OUTPUT = 195 TOOL_VCC120_COMPILE_CXX_OUTPUT_MAYBE = $(if-expr defined($(target)_1_VCC_COMMON_OBJ_PDB)\ 196 ,,$(call TOOL_VCC120_PDB, $(outbase)-obj,pdb) $(call TOOL_VCC120_PDB, $(outbase)-obj,idb)) 197 define TOOL_VCC120_COMPILE_CXX_CMDS 198 $(QUIET)$(TOOL_VCC120_CXX) -c\ 199 199 $(flags) $(addprefix -I, $(incs)) $(addprefix -D, $(defs))\ 200 200 $(if-expr defined($(target)_PCH_HDR)\ 201 ,-FI$($(target)_PCH_HDR) -Yu$($(target)_PCH_HDR) -Fp$($(target)_1_VCC_PCH_FILE) ,)\201 ,-FI$($(target)_PCH_HDR) -Yu$($(target)_PCH_HDR) -Fp$($(target)_1_VCC_PCH_FILE) -FS,)\ 202 202 -Fd$(if-expr defined($(target)_1_VCC_COMMON_OBJ_PDB),$($(target)_1_VCC_COMMON_OBJ_PDB),$(outbase)-obj.pdb) \ 203 203 -Fo$(obj)\ … … 213 213 # related _1_VCC_PCH_FILE and add -Yc. 214 214 # 215 TOOL_VCC100-PCH := Helper for creating precompiled header using CXX handling. 216 TOOL_VCC100-PCH_EXTENDS := VCC100 217 TOOL_VCC100-PCH_CXXOBJSUFF := .obj 218 TOOL_VCC100-PCH_CXXINCS = $(TOOL_VCC100_CXXINCS) 219 TOOL_VCC100-PCH_CXXFLAGS.debug = $(TOOL_VCC100_CXXFLAGS.debug) 220 TOOL_VCC100-PCH_CXXFLAGS.dbgopt = $(TOOL_VCC100_CXXFLAGS.dbgopt) 221 TOOL_VCC100-PCH_CXXFLAGS.release = $(TOOL_VCC100_CXXFLAGS.release) 222 TOOL_VCC100-PCH_CXXFLAGS.profile = $(TOOL_VCC100_CXXFLAGS.profile) 223 TOOL_VCC100-PCH_COMPILE_CXX_DEPEND = $(NO_SUCH_VARIABLE) 224 TOOL_VCC100-PCH_COMPILE_CXX_DEPORD = $(NO_SUCH_VARIABLE) 225 TOOL_VCC100-PCH_COMPILE_CXX_OUTPUT = $($(target)_1_VCC_PCH_FILE) $($(target)_1_VCC_COMMON_OBJ_PDB) 226 TOOL_VCC100-PCH_COMPILE_CXX_OUTPUT_MAYBE = $(NO_SUCH_VARIABLE) 227 ifdef TOOL_VCC100_KSUBMIT 228 define TOOL_VCC100-PCH_COMPILE_CXX_CMDS 229 $(QUIET)$(TOOL_VCC100_KSUBMIT) --no-pch-caching -P $(DEP_OBJ_INT) -f -s -q -e .pch -o $(dep) -t $(obj) $(obj)\ 230 -- $(TOOL_VCC100_CXX) -c -Yc\ 215 TOOL_VCC120-PCH := Helper for creating precompiled header using CXX handling. 216 TOOL_VCC120-PCH_EXTENDS := VCC120 217 TOOL_VCC120-PCH_CXXOBJSUFF := .obj 218 TOOL_VCC120-PCH_CXXINCS = $(TOOL_VCC120_CXXINCS) 219 TOOL_VCC120-PCH_CXXFLAGS = $(TOOL_VCC120_CXXFLAGS) -FS 220 TOOL_VCC120-PCH_CXXFLAGS.debug = $(TOOL_VCC120_CXXFLAGS.debug) 221 TOOL_VCC120-PCH_CXXFLAGS.dbgopt = $(TOOL_VCC120_CXXFLAGS.dbgopt) 222 TOOL_VCC120-PCH_CXXFLAGS.release = $(TOOL_VCC120_CXXFLAGS.release) 223 TOOL_VCC120-PCH_CXXFLAGS.profile = $(TOOL_VCC120_CXXFLAGS.profile) 224 TOOL_VCC120-PCH_COMPILE_CXX_DEPEND = $(NO_SUCH_VARIABLE) 225 TOOL_VCC120-PCH_COMPILE_CXX_DEPORD = $(NO_SUCH_VARIABLE) 226 TOOL_VCC120-PCH_COMPILE_CXX_OUTPUT = $($(target)_1_VCC_PCH_FILE) $($(target)_1_VCC_COMMON_OBJ_PDB) 227 TOOL_VCC120-PCH_COMPILE_CXX_OUTPUT_MAYBE = $(NO_SUCH_VARIABLE) 228 ifdef TOOL_VCC120_KSUBMIT 229 define TOOL_VCC120-PCH_COMPILE_CXX_CMDS 230 $(QUIET)$(TOOL_VCC120_KSUBMIT) --no-pch-caching -P $(DEP_OBJ_INT) -f -s -q -e .pch -o $(dep) -t $(obj) $(obj)\ 231 -- $(TOOL_VCC120_CXX) -c -Yc\ 231 232 $(flags) $(addprefix -I, $(incs)) $(addprefix -D, $(defs))\ 232 233 -Fp$($(target)_1_VCC_PCH_FILE) \ … … 237 238 endef 238 239 else 239 define TOOL_VCC1 00-PCH_COMPILE_CXX_CMDS240 $(QUIET)$(TOOL_VCC1 00_CXX) -c -Yc\240 define TOOL_VCC120-PCH_COMPILE_CXX_CMDS 241 $(QUIET)$(TOOL_VCC120_CXX) -c -Yc\ 241 242 $(flags) $(addprefix -I, $(incs)) $(addprefix -D, $(defs))\ 242 243 -Fp$($(target)_1_VCC_PCH_FILE) \ … … 248 249 249 250 endef 250 endif # !TOOL_VCC1 00_KSUBMIT251 endif # !TOOL_VCC120_KSUBMIT 251 252 252 253 … … 266 267 # @param $(outbase) Output basename (full). Use this for list files and such. 267 268 # @param $(objsuff) Object suffix. 268 TOOL_VCC1 00_COMPILE_RC_OUTPUT =269 TOOL_VCC1 00_COMPILE_RC_DEPEND =270 TOOL_VCC1 00_COMPILE_RC_DEPORD =271 define TOOL_VCC1 00_COMPILE_RC_CMDS272 $(QUIET)$(TOOL_VCC1 00_RC) \269 TOOL_VCC120_COMPILE_RC_OUTPUT = 270 TOOL_VCC120_COMPILE_RC_DEPEND = 271 TOOL_VCC120_COMPILE_RC_DEPORD = 272 define TOOL_VCC120_COMPILE_RC_CMDS 273 $(QUIET)$(TOOL_VCC120_RC) \ 273 274 $(flags) $(addprefix /i, $(subst /,\\,$(incs))) $(addprefix /d, $(defs))\ 274 275 /fo$(obj)\ … … 287 288 # @param $(outbase) Output basename (full). Use this for list files and such. 288 289 # 289 TOOL_VCC1 00_LINK_LIBRARY_DEPEND = $(othersrc)290 TOOL_VCC1 00_LINK_LIBRARY_DEPORD =291 TOOL_VCC1 00_LINK_LIBRARY_OUTPUT = $(outbase).rsp292 TOOL_VCC1 00_LINK_LIBRARY_OUTPUT_MAYBE = $(outbase).lst $(outbase).exp $(outbase).pdb293 define TOOL_VCC1 00_LINK_LIBRARY_CMDS290 TOOL_VCC120_LINK_LIBRARY_DEPEND = $(othersrc) 291 TOOL_VCC120_LINK_LIBRARY_DEPORD = 292 TOOL_VCC120_LINK_LIBRARY_OUTPUT = $(outbase).rsp 293 TOOL_VCC120_LINK_LIBRARY_OUTPUT_MAYBE = $(outbase).lst $(outbase).exp $(outbase).pdb 294 define TOOL_VCC120_LINK_LIBRARY_CMDS 294 295 $(QUIET)$(APPEND) -tn $(outbase).rsp \ 295 296 $(foreach arg,\ … … 298 299 $(addprefix /DEF:,$(filter %.def,$(othersrc))) \ 299 300 ,\"$(arg)\") 300 $(QUIET)$(TOOL_VCC1 00_AR) $(flags) /OUT:$(out) @$(outbase).rsp301 $(QUIET)$(TOOL_VCC120_AR) $(flags) /OUT:$(out) @$(outbase).rsp 301 302 endef 302 303 … … 316 317 # @param $(outbase) Output basename (full). Use this for list files and such. 317 318 # 318 TOOL_VCC1 00_LINK_PROGRAM_DEPEND = $(foreach lib,$(libs),$(if $(findstring $(lib),$(subst /,x,$(lib))),, $(lib))) $(othersrc)319 TOOL_VCC1 00_LINK_PROGRAM_DEPORD =320 TOOL_VCC1 00_LINK_PROGRAM_OUTPUT = $(outbase).map $(outbase).rsp321 TOOL_VCC1 00_LINK_PROGRAM_OUTPUT_MAYBE = $(outbase).lib $(outbase).exp $(outbase).ilk $(out).manifest322 TOOL_VCC1 00_LINK_PROGRAM_OUTPUT_DEBUG = $(outbase).pdb323 TOOL_VCC1 00_LINK_PROGRAM_DEBUG_INSTALL_FN = $(2).pdb=>$(basename $(3)).pdb324 define TOOL_VCC1 00_LINK_PROGRAM_CMDS319 TOOL_VCC120_LINK_PROGRAM_DEPEND = $(foreach lib,$(libs),$(if $(findstring $(lib),$(subst /,x,$(lib))),, $(lib))) $(othersrc) 320 TOOL_VCC120_LINK_PROGRAM_DEPORD = 321 TOOL_VCC120_LINK_PROGRAM_OUTPUT = $(outbase).map $(outbase).rsp 322 TOOL_VCC120_LINK_PROGRAM_OUTPUT_MAYBE = $(outbase).lib $(outbase).exp $(outbase).ilk $(out).manifest 323 TOOL_VCC120_LINK_PROGRAM_OUTPUT_DEBUG = $(outbase).pdb 324 TOOL_VCC120_LINK_PROGRAM_DEBUG_INSTALL_FN = $(2).pdb=>$(basename $(3)).pdb 325 define TOOL_VCC120_LINK_PROGRAM_CMDS 325 326 $(QUIET)$(APPEND) -tn $(outbase).rsp \ 326 327 $(foreach arg,\ … … 328 329 $(subst /,\\,$(libs)) \ 329 330 ,\"$(arg)\") 330 $(QUIET)$(TOOL_VCC1 00_LD) $(flags) \331 $(QUIET)$(TOOL_VCC120_LD) $(flags) \ 331 332 /OUT:$(out) \ 332 333 /MAPINFO:EXPORTS /INCREMENTAL:NO \ … … 336 337 $(foreach p,$(libpath), /LIBPATH:$(p)) \ 337 338 @$(outbase).rsp 338 ifndef TOOL_VCC1 00_NO_AUTO_MANIFEST339 ifndef TOOL_VCC120_NO_AUTO_MANIFEST 339 340 $(QUIET)$(TEST) -f $(out).manifest -- \ 340 $(TOOL_VCC1 00_MT) -manifest $(subst /,\\,$(out)).manifest -outputresource:$(subst /,\\,$(out))341 $(TOOL_VCC120_MT) -manifest $(subst /,\\,$(out)).manifest -outputresource:$(subst /,\\,$(out)) 341 342 endif 342 343 endef … … 357 358 # 358 359 # @param $(outbase) Output basename (full). Use this for list files and such. 359 TOOL_VCC1 00_LINK_DLL_DEPEND = $(objs) $(foreach lib,$(libs),$(if $(findstring $(lib),$(subst /,x,$(lib))),, $(lib))) $(othersrc)360 TOOL_VCC1 00_LINK_DLL_DEPORD = $(call DIRDEP,$(PATH_STAGE_LIB))361 TOOL_VCC1 00_LINK_DLL_OUTPUT = $(outbase).map $(outbase).lib $(outbase).exp $(outbase).rsp362 TOOL_VCC1 00_LINK_DLL_OUTPUT_MAYBE = $(outbase).ilk $(out).manifest $(PATH_STAGE_LIB)/$(notdir $(outbase)).exp363 TOOL_VCC1 00_LINK_DLL_OUTPUT_MAYBE_PRECIOUS = $(PATH_STAGE_LIB)/$(notdir $(outbase)).lib364 TOOL_VCC1 00_LINK_DLL_OUTPUT_DEBUG = $(outbase).pdb365 TOOL_VCC1 00_LINK_DLL_DEBUG_INSTALL_FN = $(2).pdb=>$(basename $(3)).pdb366 define TOOL_VCC1 00_LINK_DLL_CMDS360 TOOL_VCC120_LINK_DLL_DEPEND = $(objs) $(foreach lib,$(libs),$(if $(findstring $(lib),$(subst /,x,$(lib))),, $(lib))) $(othersrc) 361 TOOL_VCC120_LINK_DLL_DEPORD = $(call DIRDEP,$(PATH_STAGE_LIB)) 362 TOOL_VCC120_LINK_DLL_OUTPUT = $(outbase).map $(outbase).lib $(outbase).exp $(outbase).rsp 363 TOOL_VCC120_LINK_DLL_OUTPUT_MAYBE = $(outbase).ilk $(out).manifest $(PATH_STAGE_LIB)/$(notdir $(outbase)).exp 364 TOOL_VCC120_LINK_DLL_OUTPUT_MAYBE_PRECIOUS = $(PATH_STAGE_LIB)/$(notdir $(outbase)).lib 365 TOOL_VCC120_LINK_DLL_OUTPUT_DEBUG = $(outbase).pdb 366 TOOL_VCC120_LINK_DLL_DEBUG_INSTALL_FN = $(2).pdb=>$(basename $(3)).pdb 367 define TOOL_VCC120_LINK_DLL_CMDS 367 368 $(QUIET)$(APPEND) -tn $(outbase).rsp \ 368 369 $(foreach arg,\ … … 370 371 $(subst /,\\,$(libs)) \ 371 372 ,\"$(arg)\") 372 $(QUIET)$(TOOL_VCC1 00_LD) $(flags) \373 $(QUIET)$(TOOL_VCC120_LD) $(flags) \ 373 374 /OUT:$(out) \ 374 375 /IMPLIB:$(outbase).lib \ … … 380 381 $(foreach p,$(libpath), /LIBPATH:$(p)) \ 381 382 @$(outbase).rsp 382 ifndef TOOL_VCC1 00_NO_AUTO_MANIFEST383 ifndef TOOL_VCC120_NO_AUTO_MANIFEST 383 384 $(QUIET)$(TEST) -f $(out).manifest -- \ 384 $(TOOL_VCC1 00_MT) -manifest $(subst /,\\,$(out)).manifest '-outputresource:$(subst /,\\,$(out));#2'385 $(TOOL_VCC120_MT) -manifest $(subst /,\\,$(out)).manifest '-outputresource:$(subst /,\\,$(out));#2' 385 386 endif 386 387 $(QUIET)$(TEST) -f $(outbase).lib -- $(KLIBTWEAKER_EXT) --clear-timestamps $(outbase).lib … … 404 405 # 405 406 # @param $(outbase) Output basename (full). Use this for list files and such. 406 TOOL_VCC1 00_LINK_SYSMOD_DEPEND = $(foreach lib,$(libs),$(if $(findstring $(lib),$(subst /,x,$(lib))),, $(lib))) $(othersrc)407 TOOL_VCC1 00_LINK_SYSMOD_DEPORD =408 TOOL_VCC1 00_LINK_SYSMOD_OUTPUT = $(outbase).map $(outbase).rsp409 TOOL_VCC1 00_LINK_SYSMOD_OUTPUT_MAYBE = $(outbase).lib $(outbase).exp $(outbase).ilk $(out).manifest410 TOOL_VCC1 00_LINK_SYSMOD_OUTPUT_DEBUG = $(outbase).pdb411 TOOL_VCC1 00_LINK_SYSMOD_DEBUG_INSTALL_FN = $(2).pdb=>$(basename $(3)).pdb412 define TOOL_VCC1 00_LINK_SYSMOD_CMDS407 TOOL_VCC120_LINK_SYSMOD_DEPEND = $(foreach lib,$(libs),$(if $(findstring $(lib),$(subst /,x,$(lib))),, $(lib))) $(othersrc) 408 TOOL_VCC120_LINK_SYSMOD_DEPORD = 409 TOOL_VCC120_LINK_SYSMOD_OUTPUT = $(outbase).map $(outbase).rsp 410 TOOL_VCC120_LINK_SYSMOD_OUTPUT_MAYBE = $(outbase).lib $(outbase).exp $(outbase).ilk $(out).manifest 411 TOOL_VCC120_LINK_SYSMOD_OUTPUT_DEBUG = $(outbase).pdb 412 TOOL_VCC120_LINK_SYSMOD_DEBUG_INSTALL_FN = $(2).pdb=>$(basename $(3)).pdb 413 define TOOL_VCC120_LINK_SYSMOD_CMDS 413 414 $(QUIET)$(APPEND) -tn $(outbase).rsp \ 414 415 $(foreach arg,\ … … 416 417 $(subst /,\\,$(libs)) \ 417 418 ,\"$(arg)\") 418 $(QUIET)$(TOOL_VCC1 00_LD) $(flags) \419 $(QUIET)$(TOOL_VCC120_LD) $(flags) \ 419 420 /OUT:$(out) \ 420 421 /MAPINFO:EXPORTS /INCREMENTAL:NO \ … … 424 425 $(foreach p,$(libpath), /LIBPATH:$(p)) \ 425 426 @$(outbase).rsp 426 ifndef TOOL_VCC1 00_NO_AUTO_MANIFEST427 ifndef TOOL_VCC120_NO_AUTO_MANIFEST 427 428 $(QUIET)$(TEST) -f $(out).manifest -- \ 428 $(TOOL_VCC1 00_MT) -manifest $(subst /,\\,$(out)).manifest '-outputresource:$(subst /,\\,$(out));#2'429 $(TOOL_VCC120_MT) -manifest $(subst /,\\,$(out)).manifest '-outputresource:$(subst /,\\,$(out));#2' 429 430 endif 430 431 endef -
trunk/kBuild/tools/VCC120AMD64.kmk
r3024 r3033 1 1 # $Id$ 2 2 ## @file 3 # kBuild Tool Config - Visual C++ 1 0.0 (aka Visual 2010 and MSC v16), targeting AMD64.4 # 5 6 # 7 # Copyright (c) 2004-201 6knut st. osmundsen <[email protected]>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 <[email protected]> 8 8 # 9 9 # This file is part of kBuild. … … 32 32 # 33 33 34 TOOL_VCC1 00AMD64 := Visual C++ 10.0 (aka Visual 2010 and MSC v16), targeting AMD6434 TOOL_VCC120AMD64 := Visual C++ 12.0 (aka Visual 2013 and MSC v18), targeting AMD64 35 35 36 36 # Tool Specific Properties 37 ifndef PATH_TOOL_VCC1 00AMD6438 PATH_TOOL_VCC1 00AMD64 := $(wildcard $(KBUILD_DEVTOOLS)/win.x86/vcc/v10*)39 ifeq ($(PATH_TOOL_VCC1 00AMD64),)40 PATH_TOOL_VCC1 00AMD64 := $(PATH_TOOL_VCC100)37 ifndef 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) 41 41 endif 42 ifeq ($(PATH_TOOL_VCC1 00AMD64),)43 PATH_TOOL_VCC1 00AMD64 := $(PATH_TOOL_VCC100X86)42 ifeq ($(PATH_TOOL_VCC120AMD64),) 43 PATH_TOOL_VCC120AMD64 := $(PATH_TOOL_VCC120X86) 44 44 endif 45 ifeq ($(PATH_TOOL_VCC1 00AMD64),)46 PATH_TOOL_VCC1 00AMD64 := $(wildcard $(KBUILD_DEVTOOLS)/win.x86/vcc/v10*)45 ifeq ($(PATH_TOOL_VCC120AMD64),) 46 PATH_TOOL_VCC120AMD64 := $(wildcard $(KBUILD_DEVTOOLS)/win.x86/vcc/v12*) 47 47 endif 48 ifneq ($(PATH_TOOL_VCC1 00AMD64),)49 PATH_TOOL_VCC1 00AMD64 := $(lastword $(sort $(PATH_TOOL_VCC100AMD64)))48 ifneq ($(PATH_TOOL_VCC120AMD64),) 49 PATH_TOOL_VCC120AMD64 := $(lastword $(sort $(PATH_TOOL_VCC120AMD64))) 50 50 else 51 $(warning kBuild: PATH_TOOL_VCC1 00AMD64 cannot be determined!)52 PATH_TOOL_VCC1 00AMD64 := $(KBUILD_DEVTOOLS)/win.x86/vcc/v1051 $(warning kBuild: PATH_TOOL_VCC120AMD64 cannot be determined!) 52 PATH_TOOL_VCC120AMD64 := $(KBUILD_DEVTOOLS)/win.x86/vcc/v12 53 53 endif 54 54 else 55 55 # Resolve any fancy stuff once and for all. 56 PATH_TOOL_VCC1 00AMD64 := $(PATH_TOOL_VCC100AMD64)56 PATH_TOOL_VCC120AMD64 := $(PATH_TOOL_VCC120AMD64) 57 57 endif 58 58 ifeq ($(KBUILD_HOST).$(KBUILD_HOST_ARCH),win.amd64) 59 PATH_TOOL_VCC1 00AMD64_BIN ?= $(PATH_TOOL_VCC100AMD64)/bin/amd6459 PATH_TOOL_VCC120AMD64_BIN ?= $(PATH_TOOL_VCC120AMD64)/bin/amd64 60 60 else 61 PATH_TOOL_VCC1 00AMD64_BIN ?= $(PATH_TOOL_VCC100AMD64)/bin/x86_amd6462 endif 63 PATH_TOOL_VCC1 00AMD64_LIB ?= $(PATH_TOOL_VCC100AMD64)/lib/amd6464 PATH_TOOL_VCC1 00AMD64_INC ?= $(PATH_TOOL_VCC100AMD64)/include65 PATH_TOOL_VCC1 00AMD64_ATLMFC ?= $(PATH_TOOL_VCC100AMD64)/atlmfc66 PATH_TOOL_VCC1 00AMD64_ATLMFC_INC ?= $(PATH_TOOL_VCC100AMD64_ATLMFC)/include67 PATH_TOOL_VCC1 00AMD64_ATLMFC_LIB ?= $(PATH_TOOL_VCC100AMD64_ATLMFC)/lib/amd6468 TOOL_VCC1 00AMD64_CC ?= $(EXEC_X86_WIN32) $(PATH_TOOL_VCC100AMD64_BIN)/cl.exe69 TOOL_VCC1 00AMD64_CXX ?= $(EXEC_X86_WIN32) $(PATH_TOOL_VCC100AMD64_BIN)/cl.exe70 TOOL_VCC1 00AMD64_AS ?= $(EXEC_X86_WIN32) $(PATH_TOOL_VCC100AMD64_BIN)/ml64.exe71 #TOOL_VCC1 00AMD64_AR ?= $(EXEC_X86_WIN32) $(PATH_TOOL_VCC100AMD64_BIN)/lib.exe - just an exec wrapper for the below72 TOOL_VCC1 00AMD64_AR ?= $(EXEC_X86_WIN32) $(PATH_TOOL_VCC100AMD64_BIN)/link.exe /LIB73 TOOL_VCC1 00AMD64_LD ?= $(EXEC_X86_WIN32) $(PATH_TOOL_VCC100AMD64_BIN)/link.exe74 TOOL_VCC1 00AMD64_DUMPBIN ?= $(EXEC_X86_WIN32) $(PATH_TOOL_VCC100AMD64_BIN)/dumpbin.exe75 TOOL_VCC1 00AMD64_EDITBIN ?= $(EXEC_X86_WIN32) $(PATH_TOOL_VCC100AMD64_BIN)/editbin.exe76 TOOL_VCC1 00AMD64_RC ?= $(EXEC_X86_WIN32) $(call TOOL_VCC100_FN_FIND_SDK_TOOL,rc.exe,[Rr][Cc].[Ee][Xx][Ee],TOOL_VCC100_RC_CACHED)77 TOOL_VCC1 00AMD64_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_VCC1 00AMD64_USE_KSUBMIT61 PATH_TOOL_VCC120AMD64_BIN ?= $(PATH_TOOL_VCC120AMD64)/bin/x86_amd64 62 endif 63 PATH_TOOL_VCC120AMD64_LIB ?= $(PATH_TOOL_VCC120AMD64)/lib/amd64 64 PATH_TOOL_VCC120AMD64_INC ?= $(PATH_TOOL_VCC120AMD64)/include 65 PATH_TOOL_VCC120AMD64_ATLMFC ?= $(PATH_TOOL_VCC120AMD64)/atlmfc 66 PATH_TOOL_VCC120AMD64_ATLMFC_INC ?= $(PATH_TOOL_VCC120AMD64_ATLMFC)/include 67 PATH_TOOL_VCC120AMD64_ATLMFC_LIB ?= $(PATH_TOOL_VCC120AMD64_ATLMFC)/lib/amd64 68 TOOL_VCC120AMD64_CC ?= $(EXEC_X86_WIN32) $(PATH_TOOL_VCC120AMD64_BIN)/cl.exe 69 TOOL_VCC120AMD64_CXX ?= $(EXEC_X86_WIN32) $(PATH_TOOL_VCC120AMD64_BIN)/cl.exe 70 TOOL_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 72 TOOL_VCC120AMD64_AR ?= $(EXEC_X86_WIN32) $(PATH_TOOL_VCC120AMD64_BIN)/link.exe /LIB 73 TOOL_VCC120AMD64_LD ?= $(EXEC_X86_WIN32) $(PATH_TOOL_VCC120AMD64_BIN)/link.exe 74 TOOL_VCC120AMD64_DUMPBIN ?= $(EXEC_X86_WIN32) $(PATH_TOOL_VCC120AMD64_BIN)/dumpbin.exe 75 TOOL_VCC120AMD64_EDITBIN ?= $(EXEC_X86_WIN32) $(PATH_TOOL_VCC120AMD64_BIN)/editbin.exe 76 TOOL_VCC120AMD64_RC ?= $(EXEC_X86_WIN32) $(call TOOL_VCC120_FN_FIND_SDK_TOOL,rc.exe,[Rr][Cc].[Ee][Xx][Ee],TOOL_VCC120_RC_CACHED) 77 TOOL_VCC120AMD64_MT ?= $(EXEC_X86_WIN32) $(call TOOL_VCC120_FN_FIND_SDK_TOOL,mt.exe,[Mm][Tt].[Ee][Xx][Ee],TOOL_VCC120_MT_CACHED) 78 ifdef TOOL_VCC120AMD64_USE_KSUBMIT 79 79 ifeq ($(KBUILD_HOST),win) 80 ifneq ($(substr $(PATH_TOOL_VCC1 00AMD64_BIN),-9),x86_amd64)81 TOOL_VCC1 00AMD64_KSUBMIT ?= kmk_builtin_kSubmit --64-bit82 TOOL_VCC1 00AMD64_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) -- 83 83 else 84 84 # "fatal error C1902: Program database manager mismatch; please check your installation" when mixing with the 32-bit compiler. 85 #TOOL_VCC1 00AMD64_KSUBMIT ?= kmk_builtin_kSubmit --32-bit86 #TOOL_VCC1 00AMD64_KSUBMIT_DD = $(TOOL_VCC100AMD64_KSUBMIT) --85 #TOOL_VCC120AMD64_KSUBMIT ?= kmk_builtin_kSubmit --32-bit 86 #TOOL_VCC120AMD64_KSUBMIT_DD = $(TOOL_VCC120AMD64_KSUBMIT) -- 87 87 endif 88 88 endif 89 89 endif 90 90 91 # The following in duplicated in VCC1 00.kmk and VCC100X86.kmk.92 TOOL_VCC1 00_FN_FIND_SDK_TOOL_SUB = $(eval $3 := $(firstword \91 # The following in duplicated in VCC120.kmk and VCC120X86.kmk. 92 TOOL_VCC120_FN_FIND_SDK_TOOL_SUB = $(eval $3 := $(firstword \ 93 93 $(if-expr defined(PATH_SDK_WINPSDK71_BIN), $(wildcard $(PATH_SDK_WINPSDK71_BIN)/$2)) \ 94 94 $(if-expr defined(PATH_SDK_WINPSDK_BIN) , $(wildcard $(PATH_SDK_WINPSDK_BIN)/$2)) \ … … 96 96 $(rsort $(wildcard $(KBUILD_DEVTOOLS_HST_ALT)/sdk/*/[Bb][Ii][Nn]/$2)) \ 97 97 $1)) 98 TOOL_VCC1 00_FN_FIND_SDK_TOOL = $(if-expr !defined($3),$(TOOL_VCC100_FN_FIND_SDK_TOOL_SUB),)$($3)98 TOOL_VCC120_FN_FIND_SDK_TOOL = $(if-expr !defined($3),$(TOOL_VCC120_FN_FIND_SDK_TOOL_SUB),)$($3) 99 99 100 100 ## Disabled fast DEP_IDB based dependencies. 101 #VCC1 00AMD64_OLD_DEPS = 1101 #VCC120AMD64_OLD_DEPS = 1 102 102 103 103 ## Constructs the correct .pdb name (the name is lowercased). 104 104 # @param $(1) Base name, no extention. 105 105 # @param $(2) The extension. 106 TOOL_VCC1 00AMD64_PDB = $(dir $(1))$(tolower $(notdir $(1))).$(2)106 TOOL_VCC120AMD64_PDB = $(dir $(1))$(tolower $(notdir $(1))).$(2) 107 107 108 108 109 109 # General Properties used by kBuild 110 TOOL_VCC1 00AMD64_COBJSUFF ?= .obj111 TOOL_VCC1 00AMD64_CFLAGS ?= -TC -nologo -Zi112 TOOL_VCC1 00AMD64_CFLAGS.debug ?=113 TOOL_VCC1 00AMD64_CFLAGS.dbgopt ?= -O2114 TOOL_VCC1 00AMD64_CFLAGS.release ?= -O2115 TOOL_VCC1 00AMD64_CFLAGS.profile ?= -O2116 TOOL_VCC1 00AMD64_CINCS ?= $(PATH_TOOL_VCC100AMD64_INC)117 TOOL_VCC1 00AMD64_CDEFS ?=118 119 TOOL_VCC1 00AMD64_CXXOBJSUFF ?= .obj120 TOOL_VCC1 00AMD64_CXXFLAGS ?= -TP -nologo -Zi121 TOOL_VCC1 00AMD64_CXXFLAGS.debug ?=122 TOOL_VCC1 00AMD64_CXXFLAGS.dbgopt ?= -O2123 TOOL_VCC1 00AMD64_CXXFLAGS.release ?= -O2124 TOOL_VCC1 00AMD64_CXXFLAGS.profile ?= -O2125 TOOL_VCC1 00AMD64_CXXINCS ?= $(PATH_TOOL_VCC100AMD64_INC) $(PATH_TOOL_VCC100AMD64_ATLMFC_INC)126 TOOL_VCC1 00AMD64_CXXDEFS ?=127 128 TOOL_VCC1 00AMD64_ASOBJSUFF ?= .obj129 130 TOOL_VCC1 00AMD64_RCOBJSUFF ?= .res131 TOOL_VCC1 00AMD64_RCINCS ?= $(PATH_TOOL_VCC100AMD64_INC) $(PATH_TOOL_VCC100AMD64_ATLMFC_INC)132 133 TOOL_VCC1 00AMD64_ARFLAGS ?= -nologo -machine:amd64134 TOOL_VCC1 00AMD64_ARLIBSUFF ?= .lib135 136 TOOL_VCC1 00AMD64_LDFLAGS ?= -nologo -machine:amd64137 TOOL_VCC1 00AMD64_LDFLAGS.debug ?= -debug138 TOOL_VCC1 00AMD64_LDFLAGS.dbgopt ?= -debug139 TOOL_VCC1 00AMD64_LDFLAGS.profile ?= -debug140 TOOL_VCC1 00AMD64_LDFLAGS.release ?=110 TOOL_VCC120AMD64_COBJSUFF ?= .obj 111 TOOL_VCC120AMD64_CFLAGS ?= -TC -nologo -Zi 112 TOOL_VCC120AMD64_CFLAGS.debug ?= 113 TOOL_VCC120AMD64_CFLAGS.dbgopt ?= -O2 114 TOOL_VCC120AMD64_CFLAGS.release ?= -O2 115 TOOL_VCC120AMD64_CFLAGS.profile ?= -O2 116 TOOL_VCC120AMD64_CINCS ?= $(PATH_TOOL_VCC120AMD64_INC) 117 TOOL_VCC120AMD64_CDEFS ?= 118 119 TOOL_VCC120AMD64_CXXOBJSUFF ?= .obj 120 TOOL_VCC120AMD64_CXXFLAGS ?= -TP -nologo -Zi 121 TOOL_VCC120AMD64_CXXFLAGS.debug ?= 122 TOOL_VCC120AMD64_CXXFLAGS.dbgopt ?= -O2 123 TOOL_VCC120AMD64_CXXFLAGS.release ?= -O2 124 TOOL_VCC120AMD64_CXXFLAGS.profile ?= -O2 125 TOOL_VCC120AMD64_CXXINCS ?= $(PATH_TOOL_VCC120AMD64_INC) $(PATH_TOOL_VCC120AMD64_ATLMFC_INC) 126 TOOL_VCC120AMD64_CXXDEFS ?= 127 128 TOOL_VCC120AMD64_ASOBJSUFF ?= .obj 129 130 TOOL_VCC120AMD64_RCOBJSUFF ?= .res 131 TOOL_VCC120AMD64_RCINCS ?= $(PATH_TOOL_VCC120AMD64_INC) $(PATH_TOOL_VCC120AMD64_ATLMFC_INC) 132 133 TOOL_VCC120AMD64_ARFLAGS ?= -nologo -machine:amd64 134 TOOL_VCC120AMD64_ARLIBSUFF ?= .lib 135 136 TOOL_VCC120AMD64_LDFLAGS ?= -nologo -machine:amd64 137 TOOL_VCC120AMD64_LDFLAGS.debug ?= -debug 138 TOOL_VCC120AMD64_LDFLAGS.dbgopt ?= -debug 139 TOOL_VCC120AMD64_LDFLAGS.profile ?= -debug 140 TOOL_VCC120AMD64_LDFLAGS.release ?= 141 141 142 142 … … 155 155 # @param $(outbase) Output basename (full). Use this for list files and such. 156 156 # @param $(objsuff) Object suffix. 157 TOOL_VCC1 00AMD64_COMPILE_C_DEPEND =158 TOOL_VCC1 00AMD64_COMPILE_C_DEPORD =159 TOOL_VCC1 00AMD64_COMPILE_C_OUTPUT =160 TOOL_VCC1 00AMD64_COMPILE_C_OUTPUT_MAYBE = $(call TOOL_VCC100AMD64_PDB, $(outbase)-obj,pdb) $(call TOOL_VCC100AMD64_PDB, $(outbase)-obj,idb)161 ifdef TOOL_VCC1 00AMD64_KSUBMIT162 TOOL_VCC1 00AMD64_COMPILE_C_DONT_PURGE_OUTPUT := 1 # speed163 define TOOL_VCC1 00AMD64_COMPILE_C_CMDS164 $(QUIET)$(TOOL_VCC1 00AMD64_KSUBMIT) -P $(DEP_OBJ_INT) -f -s -q -o $(dep) -t $(obj) $(obj)\165 -- $(TOOL_VCC1 00AMD64_CC) -c\157 TOOL_VCC120AMD64_COMPILE_C_DEPEND = 158 TOOL_VCC120AMD64_COMPILE_C_DEPORD = 159 TOOL_VCC120AMD64_COMPILE_C_OUTPUT = 160 TOOL_VCC120AMD64_COMPILE_C_OUTPUT_MAYBE = $(call TOOL_VCC120AMD64_PDB, $(outbase)-obj,pdb) $(call TOOL_VCC120AMD64_PDB, $(outbase)-obj,idb) 161 ifdef 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\ 166 166 $(flags) $(addprefix -I, $(incs)) $(addprefix -D, $(defs))\ 167 167 -Fd$(outbase)-obj.pdb \ … … 170 170 endef 171 171 else 172 define TOOL_VCC1 00AMD64_COMPILE_C_CMDS173 $(QUIET)$(TOOL_VCC1 00AMD64_CC) -c\172 define TOOL_VCC120AMD64_COMPILE_C_CMDS 173 $(QUIET)$(TOOL_VCC120AMD64_CC) -c\ 174 174 $(flags) $(addprefix -I, $(incs)) $(addprefix -D, $(defs))\ 175 175 -Fd$(outbase)-obj.pdb \ … … 178 178 $(QUIET)$(DEP_OBJ) -f -s -q -o $(dep) -t $(obj) $(obj) 179 179 endef 180 endif # !TOOL_VCC1 00AMD64_KSUBMIT180 endif # !TOOL_VCC120AMD64_KSUBMIT 181 181 182 182 … … 194 194 # @param $(outbase) Output basename (full). Use this for list files and such. 195 195 # @param $(objsuff) Object suffix. 196 TOOL_VCC1 00AMD64_COMPILE_CXX_DEPEND = $($(target)_1_VCC_PCH_FILE)197 TOOL_VCC1 00AMD64_COMPILE_CXX_DEPORD =198 TOOL_VCC1 00AMD64_COMPILE_CXX_OUTPUT =199 TOOL_VCC1 00AMD64_COMPILE_CXX_OUTPUT_MAYBE = $(if-expr defined($(target)_1_VCC_COMMON_OBJ_PDB)\200 ,,$(call TOOL_VCC1 00AMD64_PDB, $(outbase)-obj,pdb) $(call TOOL_VCC100AMD64_PDB, $(outbase)-obj,idb))201 ifdef TOOL_VCC1 00AMD64_KSUBMIT202 TOOL_VCC1 00AMD64_COMPILE_CXX_DONT_PURGE_OUTPUT := 1 # speed203 define TOOL_VCC1 00AMD64_COMPILE_CXX_CMDS204 $(QUIET)$(TOOL_VCC1 00AMD64_KSUBMIT) -P $(DEP_OBJ_INT) -f -s -q -o $(dep) -t $(obj) $(obj)\205 -- $(TOOL_VCC1 00AMD64_CXX) -c\196 TOOL_VCC120AMD64_COMPILE_CXX_DEPEND = $($(target)_1_VCC_PCH_FILE) 197 TOOL_VCC120AMD64_COMPILE_CXX_DEPORD = 198 TOOL_VCC120AMD64_COMPILE_CXX_OUTPUT = 199 TOOL_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)) 201 ifdef 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\ 206 206 $(flags) $(addprefix -I, $(incs)) $(addprefix -D, $(defs))\ 207 207 $(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,)\ 209 209 -Fd$(if-expr defined($(target)_1_VCC_COMMON_OBJ_PDB),$($(target)_1_VCC_COMMON_OBJ_PDB),$(outbase)-obj.pdb) \ 210 210 -Fo$(obj)\ … … 212 212 endef 213 213 else 214 define TOOL_VCC1 00AMD64_COMPILE_CXX_CMDS215 $(QUIET)$(TOOL_VCC1 00AMD64_CXX) -c\214 define TOOL_VCC120AMD64_COMPILE_CXX_CMDS 215 $(QUIET)$(TOOL_VCC120AMD64_CXX) -c\ 216 216 $(flags) $(addprefix -I, $(incs)) $(addprefix -D, $(defs))\ 217 217 $(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,)\ 219 219 -Fd$(if-expr defined($(target)_1_VCC_COMMON_OBJ_PDB),$($(target)_1_VCC_COMMON_OBJ_PDB),$(outbase)-obj.pdb) \ 220 220 -Fo$(obj)\ … … 222 222 $(QUIET)$(DEP_OBJ) -f -s -q -o $(dep) -t $(obj) $(obj) 223 223 endef 224 endif # !TOOL_VCC1 00AMD64_KSUBMIT224 endif # !TOOL_VCC120AMD64_KSUBMIT 225 225 226 226 … … 231 231 # related _1_VCC_PCH_FILE and add -Yc. 232 232 # 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 233 TOOL_VCC120AMD64-PCH := Helper for creating precompiled header using CXX handling. 234 TOOL_VCC120AMD64-PCH_EXTENDS := VCC120AMD64 235 TOOL_VCC120AMD64-PCH_CXXOBJSUFF := .obj 236 TOOL_VCC120AMD64-PCH_CXXINCS = $(TOOL_VCC120AMD64_CXXINCS) 237 TOOL_VCC120AMD64-PCH_CXXFLAGS = $(TOOL_VCC120AMD64_CXXFLAGS) -FS 238 TOOL_VCC120AMD64-PCH_CXXFLAGS.debug = $(TOOL_VCC120AMD64_CXXFLAGS.debug) 239 TOOL_VCC120AMD64-PCH_CXXFLAGS.dbgopt = $(TOOL_VCC120AMD64_CXXFLAGS.dbgopt) 240 TOOL_VCC120AMD64-PCH_CXXFLAGS.release = $(TOOL_VCC120AMD64_CXXFLAGS.release) 241 TOOL_VCC120AMD64-PCH_CXXFLAGS.profile = $(TOOL_VCC120AMD64_CXXFLAGS.profile) 242 TOOL_VCC120AMD64-PCH_COMPILE_CXX_DEPEND = $(NO_SUCH_VARIABLE) 243 TOOL_VCC120AMD64-PCH_COMPILE_CXX_DEPORD = $(NO_SUCH_VARIABLE) 244 TOOL_VCC120AMD64-PCH_COMPILE_CXX_OUTPUT = $($(target)_1_VCC_PCH_FILE) $($(target)_1_VCC_COMMON_OBJ_PDB) 245 TOOL_VCC120AMD64-PCH_COMPILE_CXX_OUTPUT_MAYBE = $(NO_SUCH_VARIABLE) 246 ifdef TOOL_VCC120AMD64_KSUBMIT 247 define TOOL_VCC120AMD64-PCH_COMPILE_CXX_CMDS 247 248 $(QUIET)$(RM) -f -- $($(target)_1_VCC_PCH_FILE) $($(target)_1_VCC_COMMON_OBJ_PDB) 248 $(QUIET)$(TOOL_VCC1 00AMD64_KSUBMIT) --no-pch-caching -P $(DEP_OBJ_INT) -f -s -q -e .pch -o $(dep) -t $(obj) $(obj)\249 -- $(TOOL_VCC1 00AMD64_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\ 250 251 $(flags) $(addprefix -I, $(incs)) $(addprefix -D, $(defs))\ 251 252 -Fp$($(target)_1_VCC_PCH_FILE) \ … … 256 257 endef 257 258 else 258 define TOOL_VCC1 00AMD64-PCH_COMPILE_CXX_CMDS259 define TOOL_VCC120AMD64-PCH_COMPILE_CXX_CMDS 259 260 $(QUIET)$(RM) -f -- $($(target)_1_VCC_PCH_FILE) $($(target)_1_VCC_COMMON_OBJ_PDB) 260 $(QUIET)$(TOOL_VCC1 00AMD64_CXX) -c -Yc\261 $(QUIET)$(TOOL_VCC120AMD64_CXX) -c -Yc\ 261 262 $(flags) $(addprefix -I, $(incs)) $(addprefix -D, $(defs))\ 262 263 -Fp$($(target)_1_VCC_PCH_FILE) \ … … 268 269 269 270 endef 270 endif # !TOOL_VCC1 00AMD64_KSUBMIT271 endif # !TOOL_VCC120AMD64_KSUBMIT 271 272 272 273 … … 286 287 # @param $(outbase) Output basename (full). Use this for list files and such. 287 288 # @param $(objsuff) Object suffix. 288 TOOL_VCC1 00AMD64_COMPILE_RC_DEPEND =289 TOOL_VCC1 00AMD64_COMPILE_RC_DEPORD =290 TOOL_VCC1 00AMD64_COMPILE_RC_OUTPUT =291 define TOOL_VCC1 00AMD64_COMPILE_RC_CMDS292 $(QUIET)$(TOOL_VCC1 00AMD64_RC) \289 TOOL_VCC120AMD64_COMPILE_RC_DEPEND = 290 TOOL_VCC120AMD64_COMPILE_RC_DEPORD = 291 TOOL_VCC120AMD64_COMPILE_RC_OUTPUT = 292 define TOOL_VCC120AMD64_COMPILE_RC_CMDS 293 $(QUIET)$(TOOL_VCC120AMD64_RC) \ 293 294 $(flags) $(addprefix /i, $(subst /,\\,$(incs))) $(addprefix /d, $(defs))\ 294 295 /fo$(obj)\ … … 307 308 # @param $(outbase) Output basename (full). Use this for list files and such. 308 309 # 309 TOOL_VCC1 00AMD64_LINK_LIBRARY_DEPEND = $(othersrc)310 TOOL_VCC1 00AMD64_LINK_LIBRARY_DEPORD =311 TOOL_VCC1 00AMD64_LINK_LIBRARY_OUTPUT = $(outbase).rsp312 TOOL_VCC1 00AMD64_LINK_LIBRARY_OUTPUT_MAYBE = $(outbase).lst $(outbase).exp $(outbase).pdb313 define TOOL_VCC1 00AMD64_LINK_LIBRARY_CMDS310 TOOL_VCC120AMD64_LINK_LIBRARY_DEPEND = $(othersrc) 311 TOOL_VCC120AMD64_LINK_LIBRARY_DEPORD = 312 TOOL_VCC120AMD64_LINK_LIBRARY_OUTPUT = $(outbase).rsp 313 TOOL_VCC120AMD64_LINK_LIBRARY_OUTPUT_MAYBE = $(outbase).lst $(outbase).exp $(outbase).pdb 314 define TOOL_VCC120AMD64_LINK_LIBRARY_CMDS 314 315 $(QUIET)$(APPEND) -tn $(outbase).rsp \ 315 316 $(foreach arg,\ … … 318 319 $(addprefix /DEF:,$(filter %.def,$(othersrc))) \ 319 320 ,\"$(arg)\") 320 $(QUIET)$(TOOL_VCC1 00AMD64_KSUBMIT_DD) $(TOOL_VCC100AMD64_AR) $(flags) /OUT:$(out) @$(outbase).rsp321 $(QUIET)$(TOOL_VCC120AMD64_KSUBMIT_DD) $(TOOL_VCC120AMD64_AR) $(flags) /OUT:$(out) @$(outbase).rsp 321 322 endef 322 323 … … 336 337 # @param $(outbase) Output basename (full). Use this for list files and such. 337 338 # 338 TOOL_VCC1 00AMD64_LINK_PROGRAM_DEPEND = $(foreach lib,$(libs),$(if $(findstring $(lib),$(subst /,x,$(lib))),, $(lib))) $(othersrc)339 TOOL_VCC1 00AMD64_LINK_PROGRAM_DEPORD =340 TOOL_VCC1 00AMD64_LINK_PROGRAM_OUTPUT = $(outbase).map $(outbase).rsp341 TOOL_VCC1 00AMD64_LINK_PROGRAM_OUTPUT_MAYBE = $(outbase).lib $(outbase).exp $(outbase).ilk $(out).manifest342 TOOL_VCC1 00AMD64_LINK_PROGRAM_OUTPUT_DEBUG = $(outbase).pdb343 TOOL_VCC1 00AMD64_LINK_PROGRAM_DEBUG_INSTALL_FN = $(2).pdb=>$(basename $(3)).pdb344 define TOOL_VCC1 00AMD64_LINK_PROGRAM_CMDS339 TOOL_VCC120AMD64_LINK_PROGRAM_DEPEND = $(foreach lib,$(libs),$(if $(findstring $(lib),$(subst /,x,$(lib))),, $(lib))) $(othersrc) 340 TOOL_VCC120AMD64_LINK_PROGRAM_DEPORD = 341 TOOL_VCC120AMD64_LINK_PROGRAM_OUTPUT = $(outbase).map $(outbase).rsp 342 TOOL_VCC120AMD64_LINK_PROGRAM_OUTPUT_MAYBE = $(outbase).lib $(outbase).exp $(outbase).ilk $(out).manifest 343 TOOL_VCC120AMD64_LINK_PROGRAM_OUTPUT_DEBUG = $(outbase).pdb 344 TOOL_VCC120AMD64_LINK_PROGRAM_DEBUG_INSTALL_FN = $(2).pdb=>$(basename $(3)).pdb 345 define TOOL_VCC120AMD64_LINK_PROGRAM_CMDS 345 346 $(QUIET)$(APPEND) -tn $(outbase).rsp \ 346 347 $(foreach arg,\ … … 348 349 $(subst /,\\,$(libs)) \ 349 350 ,\"$(arg)\") 350 $(QUIET)$(TOOL_VCC1 00AMD64_KSUBMIT_DD) $(TOOL_VCC100AMD64_LD) $(flags) \351 $(QUIET)$(TOOL_VCC120AMD64_KSUBMIT_DD) $(TOOL_VCC120AMD64_LD) $(flags) \ 351 352 /OUT:$(out) \ 352 353 /MAPINFO:EXPORTS /INCREMENTAL:NO \ … … 356 357 $(foreach p,$(libpath), /LIBPATH:$(p)) \ 357 358 @$(outbase).rsp 358 ifndef TOOL_VCC1 00AMD64_NO_AUTO_MANIFEST359 ifndef TOOL_VCC120AMD64_NO_AUTO_MANIFEST 359 360 $(QUIET)$(TEST) -f $(out).manifest -- \ 360 $(TOOL_VCC1 00AMD64_MT) -manifest $(subst /,\\,$(out)).manifest -outputresource:$(subst /,\\,$(out))361 $(TOOL_VCC120AMD64_MT) -manifest $(subst /,\\,$(out)).manifest -outputresource:$(subst /,\\,$(out)) 361 362 endif 362 363 endef … … 377 378 # 378 379 # @param $(outbase) Output basename (full). Use this for list files and such. 379 TOOL_VCC1 00AMD64_LINK_DLL_DEPEND = $(objs) $(foreach lib,$(libs),$(if $(findstring $(lib),$(subst /,x,$(lib))),, $(lib))) $(othersrc)380 TOOL_VCC1 00AMD64_LINK_DLL_DEPORD = $(call DIRDEP,$(PATH_STAGE_LIB))381 TOOL_VCC1 00AMD64_LINK_DLL_OUTPUT = $(outbase).map $(outbase).lib $(outbase).exp $(outbase).rsp382 TOOL_VCC1 00AMD64_LINK_DLL_OUTPUT_MAYBE = $(outbase).ilk $(out).manifest $(PATH_STAGE_LIB)/$(notdir $(outbase)).exp383 TOOL_VCC1 00AMD64_LINK_DLL_OUTPUT_MAYBE_PRECIOUS = $(PATH_STAGE_LIB)/$(notdir $(outbase)).lib384 TOOL_VCC1 00AMD64_LINK_DLL_OUTPUT_DEBUG = $(outbase).pdb385 TOOL_VCC1 00AMD64_LINK_DLL_DEBUG_INSTALL_FN = $(2).pdb=>$(basename $(3)).pdb386 define TOOL_VCC1 00AMD64_LINK_DLL_CMDS380 TOOL_VCC120AMD64_LINK_DLL_DEPEND = $(objs) $(foreach lib,$(libs),$(if $(findstring $(lib),$(subst /,x,$(lib))),, $(lib))) $(othersrc) 381 TOOL_VCC120AMD64_LINK_DLL_DEPORD = $(call DIRDEP,$(PATH_STAGE_LIB)) 382 TOOL_VCC120AMD64_LINK_DLL_OUTPUT = $(outbase).map $(outbase).lib $(outbase).exp $(outbase).rsp 383 TOOL_VCC120AMD64_LINK_DLL_OUTPUT_MAYBE = $(outbase).ilk $(out).manifest $(PATH_STAGE_LIB)/$(notdir $(outbase)).exp 384 TOOL_VCC120AMD64_LINK_DLL_OUTPUT_MAYBE_PRECIOUS = $(PATH_STAGE_LIB)/$(notdir $(outbase)).lib 385 TOOL_VCC120AMD64_LINK_DLL_OUTPUT_DEBUG = $(outbase).pdb 386 TOOL_VCC120AMD64_LINK_DLL_DEBUG_INSTALL_FN = $(2).pdb=>$(basename $(3)).pdb 387 define TOOL_VCC120AMD64_LINK_DLL_CMDS 387 388 $(QUIET)$(APPEND) -tn $(outbase).rsp \ 388 389 $(foreach arg,\ … … 390 391 $(subst /,\\,$(libs)) \ 391 392 ,\"$(arg)\") 392 $(QUIET)$(TOOL_VCC1 00AMD64_KSUBMIT_DD) $(TOOL_VCC100AMD64_LD) $(flags) \393 $(QUIET)$(TOOL_VCC120AMD64_KSUBMIT_DD) $(TOOL_VCC120AMD64_LD) $(flags) \ 393 394 /OUT:$(out) \ 394 395 /IMPLIB:$(outbase).lib \ … … 400 401 $(foreach p,$(libpath), /LIBPATH:$(p)) \ 401 402 @$(outbase).rsp 402 ifndef TOOL_VCC1 00AMD64_NO_AUTO_MANIFEST403 ifndef TOOL_VCC120AMD64_NO_AUTO_MANIFEST 403 404 $(QUIET)$(TEST) -f $(out).manifest -- \ 404 $(TOOL_VCC1 00AMD64_MT) -manifest $(subst /,\\,$(out)).manifest '-outputresource:$(subst /,\\,$(out));#2'405 $(TOOL_VCC120AMD64_MT) -manifest $(subst /,\\,$(out)).manifest '-outputresource:$(subst /,\\,$(out));#2' 405 406 endif 406 407 $(QUIET)$(TEST) -f $(outbase).lib -- $(KLIBTWEAKER_EXT) --clear-timestamps $(outbase).lib … … 424 425 # 425 426 # @param $(outbase) Output basename (full). Use this for list files and such. 426 TOOL_VCC1 00AMD64_LINK_SYSMOD_DEPEND = $(foreach lib,$(libs),$(if $(findstring $(lib),$(subst /,x,$(lib))),, $(lib))) $(othersrc)427 TOOL_VCC1 00AMD64_LINK_SYSMOD_DEPORD =428 TOOL_VCC1 00AMD64_LINK_SYSMOD_OUTPUT = $(outbase).map $(outbase).rsp429 TOOL_VCC1 00AMD64_LINK_SYSMOD_OUTPUT_MAYBE = $(outbase).lib $(outbase).exp $(outbase).ilk $(out).manifest430 TOOL_VCC1 00AMD64_LINK_SYSMOD_OUTPUT_DEBUG = $(outbase).pdb431 TOOL_VCC1 00AMD64_LINK_SYSMOD_DEBUG_INSTALL_FN = $(2).pdb=>$(basename $(3)).pdb432 define TOOL_VCC1 00AMD64_LINK_SYSMOD_CMDS427 TOOL_VCC120AMD64_LINK_SYSMOD_DEPEND = $(foreach lib,$(libs),$(if $(findstring $(lib),$(subst /,x,$(lib))),, $(lib))) $(othersrc) 428 TOOL_VCC120AMD64_LINK_SYSMOD_DEPORD = 429 TOOL_VCC120AMD64_LINK_SYSMOD_OUTPUT = $(outbase).map $(outbase).rsp 430 TOOL_VCC120AMD64_LINK_SYSMOD_OUTPUT_MAYBE = $(outbase).lib $(outbase).exp $(outbase).ilk $(out).manifest 431 TOOL_VCC120AMD64_LINK_SYSMOD_OUTPUT_DEBUG = $(outbase).pdb 432 TOOL_VCC120AMD64_LINK_SYSMOD_DEBUG_INSTALL_FN = $(2).pdb=>$(basename $(3)).pdb 433 define TOOL_VCC120AMD64_LINK_SYSMOD_CMDS 433 434 $(QUIET)$(APPEND) -tn $(outbase).rsp \ 434 435 $(foreach arg,\ … … 436 437 $(subst /,\\,$(libs)) \ 437 438 ,\"$(arg)\") 438 $(QUIET)$(TOOL_VCC1 00AMD64_KSUBMIT_DD) $(TOOL_VCC100AMD64_LD) $(flags) \439 $(QUIET)$(TOOL_VCC120AMD64_KSUBMIT_DD) $(TOOL_VCC120AMD64_LD) $(flags) \ 439 440 /OUT:$(out) \ 440 441 /MAPINFO:EXPORTS /INCREMENTAL:NO \ … … 444 445 $(foreach p,$(libpath), /LIBPATH:$(p)) \ 445 446 @$(outbase).rsp 446 ifndef TOOL_VCC1 00AMD64_NO_AUTO_MANIFEST447 ifndef TOOL_VCC120AMD64_NO_AUTO_MANIFEST 447 448 $(QUIET)$(TEST) -f $(out).manifest -- \ 448 $(TOOL_VCC1 00AMD64_MT) -manifest $(subst /,\\,$(out)).manifest '-outputresource:$(subst /,\\,$(out));#2'449 $(TOOL_VCC120AMD64_MT) -manifest $(subst /,\\,$(out)).manifest '-outputresource:$(subst /,\\,$(out));#2' 449 450 endif 450 451 endef -
trunk/kBuild/tools/VCC120X86.kmk
r3024 r3033 1 1 # $Id$ 2 2 ## @file 3 # kBuild Tool Config - Visual C++ 1 0.0 (aka Visual 2010 and MSC v16), targeting x86.4 # 5 6 # 7 # Copyright (c) 2004-201 6knut st. osmundsen <[email protected]>3 # kBuild Tool Config - Visual C++ 12.0 (aka Visual 2013 and MSC v18), targeting x86. 4 # 5 6 # 7 # Copyright (c) 2004-2017 knut st. osmundsen <[email protected]> 8 8 # 9 9 # This file is part of kBuild. … … 32 32 # 33 33 34 TOOL_VCC1 00X86 := Visual C++ 10.0 (aka Visual 2010 and MSC v16), targeting x86.34 TOOL_VCC120X86 := Visual C++ 12.0 (aka Visual 2013 and MSC v18), targeting x86. 35 35 36 36 # Tool Specific Properties 37 ifndef PATH_TOOL_VCC1 00X8638 PATH_TOOL_VCC1 00X86 := $(wildcard $(KBUILD_DEVTOOLS)/win.x86/vcc/v10*)39 ifeq ($(PATH_TOOL_VCC1 00X86),)40 PATH_TOOL_VCC1 00X86 := $(PATH_TOOL_VCC100)41 endif 42 ifeq ($(PATH_TOOL_VCC1 00X86),)43 PATH_TOOL_VCC1 00X86 := $(PATH_TOOL_VCC100AMD64)44 endif 45 ifeq ($(PATH_TOOL_VCC1 00X86),)46 PATH_TOOL_VCC1 00X86 := $(wildcard $(KBUILD_DEVTOOLS)/x86.win32/vcc/v10*)47 endif 48 ifeq ($(PATH_TOOL_VCC1 00X86),)49 PATH_TOOL_VCC1 00X86 := $(wildcard $(KBUILD_DEVTOOLS)/win.amd64/vcc/v10*)50 endif 51 ifneq ($(PATH_TOOL_VCC1 00X86),)52 PATH_TOOL_VCC1 00X86 := $(lastword $(sort $(PATH_TOOL_VCC100X86)))37 ifndef PATH_TOOL_VCC120X86 38 PATH_TOOL_VCC120X86 := $(wildcard $(KBUILD_DEVTOOLS)/win.x86/vcc/v12*) 39 ifeq ($(PATH_TOOL_VCC120X86),) 40 PATH_TOOL_VCC120X86 := $(PATH_TOOL_VCC120) 41 endif 42 ifeq ($(PATH_TOOL_VCC120X86),) 43 PATH_TOOL_VCC120X86 := $(PATH_TOOL_VCC120AMD64) 44 endif 45 ifeq ($(PATH_TOOL_VCC120X86),) 46 PATH_TOOL_VCC120X86 := $(wildcard $(KBUILD_DEVTOOLS)/x86.win32/vcc/v12*) 47 endif 48 ifeq ($(PATH_TOOL_VCC120X86),) 49 PATH_TOOL_VCC120X86 := $(wildcard $(KBUILD_DEVTOOLS)/win.amd64/vcc/v12*) 50 endif 51 ifneq ($(PATH_TOOL_VCC120X86),) 52 PATH_TOOL_VCC120X86 := $(lastword $(sort $(PATH_TOOL_VCC120X86))) 53 53 else 54 $(warning kBuild: PATH_TOOL_VCC1 00X86 cannot be determined!)55 PATH_TOOL_VCC1 00X86 := $(KBUILD_DEVTOOLS)/x86.win/vcc/v1054 $(warning kBuild: PATH_TOOL_VCC120X86 cannot be determined!) 55 PATH_TOOL_VCC120X86 := $(KBUILD_DEVTOOLS)/x86.win/vcc/v12 56 56 endif 57 57 else 58 58 # Resolve any fancy stuff once and for all. 59 PATH_TOOL_VCC1 00X86 := $(PATH_TOOL_VCC100X86)59 PATH_TOOL_VCC120X86 := $(PATH_TOOL_VCC120X86) 60 60 endif 61 PATH_TOOL_VCC1 00X86_BIN ?= $(PATH_TOOL_VCC100X86)/bin62 PATH_TOOL_VCC1 00X86_LIB ?= $(PATH_TOOL_VCC100X86)/lib63 PATH_TOOL_VCC1 00X86_INC ?= $(PATH_TOOL_VCC100X86)/include64 PATH_TOOL_VCC1 00X86_ATLMFC ?= $(PATH_TOOL_VCC100X86)/atlmfc65 PATH_TOOL_VCC1 00X86_ATLMFC_INC ?= $(PATH_TOOL_VCC100X86_ATLMFC)/include66 PATH_TOOL_VCC1 00X86_ATLMFC_LIB ?= $(PATH_TOOL_VCC100X86_ATLMFC)/lib67 TOOL_VCC1 00X86_CC ?= $(EXEC_X86_WIN32) $(PATH_TOOL_VCC100X86_BIN)/cl.exe68 TOOL_VCC1 00X86_CXX ?= $(EXEC_X86_WIN32) $(PATH_TOOL_VCC100X86_BIN)/cl.exe69 TOOL_VCC1 00X86_AS ?= $(EXEC_X86_WIN32) $(PATH_TOOL_VCC100X86_BIN)/ml.exe70 #TOOL_VCC1 00X86_AR ?= $(EXEC_X86_WIN32) $(PATH_TOOL_VCC100X86_BIN)/lib.exe - just an exec wrapper for the below71 TOOL_VCC1 00X86_AR ?= $(EXEC_X86_WIN32) $(PATH_TOOL_VCC100X86_BIN)/link.exe /LIB72 TOOL_VCC1 00X86_LD ?= $(EXEC_X86_WIN32) $(PATH_TOOL_VCC100X86_BIN)/link.exe73 TOOL_VCC1 00X86_DUMPBIN ?= $(EXEC_X86_WIN32) $(PATH_TOOL_VCC100X86_BIN)/dumpbin.exe74 TOOL_VCC1 00X86_EDITBIN ?= $(EXEC_X86_WIN32) $(PATH_TOOL_VCC100X86_BIN)/editbin.exe75 TOOL_VCC1 00X86_RC ?= $(EXEC_X86_WIN32) $(call TOOL_VCC100_FN_FIND_SDK_TOOL,rc.exe,[Rr][Cc].[Ee][Xx][Ee],TOOL_VCC100_RC_CACHED)76 TOOL_VCC1 00X86_MT ?= $(EXEC_X86_WIN32) $(call TOOL_VCC100_FN_FIND_SDK_TOOL,mt.exe,[Mm][Tt].[Ee][Xx][Ee],TOOL_VCC100_MT_CACHED)77 ifdef TOOL_VCC1 00X86_USE_KSUBMIT61 PATH_TOOL_VCC120X86_BIN ?= $(PATH_TOOL_VCC120X86)/bin 62 PATH_TOOL_VCC120X86_LIB ?= $(PATH_TOOL_VCC120X86)/lib 63 PATH_TOOL_VCC120X86_INC ?= $(PATH_TOOL_VCC120X86)/include 64 PATH_TOOL_VCC120X86_ATLMFC ?= $(PATH_TOOL_VCC120X86)/atlmfc 65 PATH_TOOL_VCC120X86_ATLMFC_INC ?= $(PATH_TOOL_VCC120X86_ATLMFC)/include 66 PATH_TOOL_VCC120X86_ATLMFC_LIB ?= $(PATH_TOOL_VCC120X86_ATLMFC)/lib 67 TOOL_VCC120X86_CC ?= $(EXEC_X86_WIN32) $(PATH_TOOL_VCC120X86_BIN)/cl.exe 68 TOOL_VCC120X86_CXX ?= $(EXEC_X86_WIN32) $(PATH_TOOL_VCC120X86_BIN)/cl.exe 69 TOOL_VCC120X86_AS ?= $(EXEC_X86_WIN32) $(PATH_TOOL_VCC120X86_BIN)/ml.exe 70 #TOOL_VCC120X86_AR ?= $(EXEC_X86_WIN32) $(PATH_TOOL_VCC120X86_BIN)/lib.exe - just an exec wrapper for the below 71 TOOL_VCC120X86_AR ?= $(EXEC_X86_WIN32) $(PATH_TOOL_VCC120X86_BIN)/link.exe /LIB 72 TOOL_VCC120X86_LD ?= $(EXEC_X86_WIN32) $(PATH_TOOL_VCC120X86_BIN)/link.exe 73 TOOL_VCC120X86_DUMPBIN ?= $(EXEC_X86_WIN32) $(PATH_TOOL_VCC120X86_BIN)/dumpbin.exe 74 TOOL_VCC120X86_EDITBIN ?= $(EXEC_X86_WIN32) $(PATH_TOOL_VCC120X86_BIN)/editbin.exe 75 TOOL_VCC120X86_RC ?= $(EXEC_X86_WIN32) $(call TOOL_VCC120_FN_FIND_SDK_TOOL,rc.exe,[Rr][Cc].[Ee][Xx][Ee],TOOL_VCC120_RC_CACHED) 76 TOOL_VCC120X86_MT ?= $(EXEC_X86_WIN32) $(call TOOL_VCC120_FN_FIND_SDK_TOOL,mt.exe,[Mm][Tt].[Ee][Xx][Ee],TOOL_VCC120_MT_CACHED) 77 ifdef TOOL_VCC120X86_USE_KSUBMIT 78 78 ifeq ($(KBUILD_HOST),win) 79 TOOL_VCC1 00X86_KSUBMIT ?= kmk_builtin_kSubmit --32-bit80 TOOL_VCC1 00X86_KSUBMIT_DD = $(TOOL_VCC100X86_KSUBMIT) --79 TOOL_VCC120X86_KSUBMIT ?= kmk_builtin_kSubmit --32-bit 80 TOOL_VCC120X86_KSUBMIT_DD = $(TOOL_VCC120X86_KSUBMIT) -- 81 81 endif 82 82 endif 83 83 84 # The following in duplicated in VCC1 00.kmk and VCC100X86.kmk.85 TOOL_VCC1 00_FN_FIND_SDK_TOOL_SUB = $(eval $3 := $(firstword \84 # The following in duplicated in VCC120.kmk and VCC120X86.kmk. 85 TOOL_VCC120_FN_FIND_SDK_TOOL_SUB = $(eval $3 := $(firstword \ 86 86 $(if-expr defined(PATH_SDK_WINPSDK71_BIN), $(wildcard $(PATH_SDK_WINPSDK71_BIN)/$2)) \ 87 87 $(if-expr defined(PATH_SDK_WINPSDK_BIN) , $(wildcard $(PATH_SDK_WINPSDK_BIN)/$2)) \ … … 89 89 $(rsort $(wildcard $(KBUILD_DEVTOOLS_HST_ALT)/sdk/*/[Bb][Ii][Nn]/$2)) \ 90 90 $1)) 91 TOOL_VCC1 00_FN_FIND_SDK_TOOL = $(if-expr !defined($3),$(TOOL_VCC100_FN_FIND_SDK_TOOL_SUB),)$($3)91 TOOL_VCC120_FN_FIND_SDK_TOOL = $(if-expr !defined($3),$(TOOL_VCC120_FN_FIND_SDK_TOOL_SUB),)$($3) 92 92 93 93 ## Disabled fast DEP_IDB based dependencies. 94 #VCC1 00X86_OLD_DEPS = 194 #VCC120X86_OLD_DEPS = 1 95 95 96 96 ## Constructs the correct .pdb name (the name is lowercased). 97 97 # @param $(1) Base name, no extention. 98 98 # @param $(2) The extension. 99 TOOL_VCC1 00X86_PDB = $(dir $(1))$(tolower $(notdir $(1))).$(2)99 TOOL_VCC120X86_PDB = $(dir $(1))$(tolower $(notdir $(1))).$(2) 100 100 101 101 102 102 # General Properties used by kBuild 103 TOOL_VCC1 00X86_COBJSUFF ?= .obj104 TOOL_VCC1 00X86_CFLAGS ?= -TC -nologo -Zi105 TOOL_VCC1 00X86_CFLAGS.debug ?=106 TOOL_VCC1 00X86_CFLAGS.dbgopt ?= -O2107 TOOL_VCC1 00X86_CFLAGS.release ?= -O2108 TOOL_VCC1 00X86_CFLAGS.profile ?= -O2109 TOOL_VCC1 00X86_CINCS ?= $(PATH_TOOL_VCC100X86_INC)110 TOOL_VCC1 00X86_CDEFS ?=111 112 TOOL_VCC1 00X86_CXXOBJSUFF ?= .obj113 TOOL_VCC1 00X86_CXXFLAGS ?= -TP -nologo -Zi114 TOOL_VCC1 00X86_CXXFLAGS.debug ?=115 TOOL_VCC1 00X86_CXXFLAGS.dbgopt ?= -O2116 TOOL_VCC1 00X86_CXXFLAGS.release ?= -O2117 TOOL_VCC1 00X86_CXXFLAGS.profile ?= -O2118 TOOL_VCC1 00X86_CXXINCS ?= $(PATH_TOOL_VCC100X86_INC) $(PATH_TOOL_VCC100X86_ATLMFC_INC)119 TOOL_VCC1 00X86_CXXDEFS ?=120 121 TOOL_VCC1 00X86_ASOBJSUFF ?= .obj122 123 TOOL_VCC1 00X86_RCOBJSUFF ?= .res124 TOOL_VCC1 00X86_RCINCS ?= $(PATH_TOOL_VCC100X86_INC) $(PATH_TOOL_VCC100X86_ATLMFC_INC)125 126 TOOL_VCC1 00X86_ARFLAGS ?= -nologo127 TOOL_VCC1 00X86_ARLIBSUFF ?= .lib128 129 TOOL_VCC1 00X86_LDFLAGS ?= -nologo -machine:x86130 TOOL_VCC1 00X86_LDFLAGS.debug ?= -debug131 TOOL_VCC1 00X86_LDFLAGS.dbgopt ?= -debug132 TOOL_VCC1 00X86_LDFLAGS.profile ?= -debug133 TOOL_VCC1 00X86_LDFLAGS.release ?=103 TOOL_VCC120X86_COBJSUFF ?= .obj 104 TOOL_VCC120X86_CFLAGS ?= -TC -nologo -Zi 105 TOOL_VCC120X86_CFLAGS.debug ?= 106 TOOL_VCC120X86_CFLAGS.dbgopt ?= -O2 107 TOOL_VCC120X86_CFLAGS.release ?= -O2 108 TOOL_VCC120X86_CFLAGS.profile ?= -O2 109 TOOL_VCC120X86_CINCS ?= $(PATH_TOOL_VCC120X86_INC) 110 TOOL_VCC120X86_CDEFS ?= 111 112 TOOL_VCC120X86_CXXOBJSUFF ?= .obj 113 TOOL_VCC120X86_CXXFLAGS ?= -TP -nologo -Zi 114 TOOL_VCC120X86_CXXFLAGS.debug ?= 115 TOOL_VCC120X86_CXXFLAGS.dbgopt ?= -O2 116 TOOL_VCC120X86_CXXFLAGS.release ?= -O2 117 TOOL_VCC120X86_CXXFLAGS.profile ?= -O2 118 TOOL_VCC120X86_CXXINCS ?= $(PATH_TOOL_VCC120X86_INC) $(PATH_TOOL_VCC120X86_ATLMFC_INC) 119 TOOL_VCC120X86_CXXDEFS ?= 120 121 TOOL_VCC120X86_ASOBJSUFF ?= .obj 122 123 TOOL_VCC120X86_RCOBJSUFF ?= .res 124 TOOL_VCC120X86_RCINCS ?= $(PATH_TOOL_VCC120X86_INC) $(PATH_TOOL_VCC120X86_ATLMFC_INC) 125 126 TOOL_VCC120X86_ARFLAGS ?= -nologo 127 TOOL_VCC120X86_ARLIBSUFF ?= .lib 128 129 TOOL_VCC120X86_LDFLAGS ?= -nologo -machine:x86 130 TOOL_VCC120X86_LDFLAGS.debug ?= -debug 131 TOOL_VCC120X86_LDFLAGS.dbgopt ?= -debug 132 TOOL_VCC120X86_LDFLAGS.profile ?= -debug 133 TOOL_VCC120X86_LDFLAGS.release ?= 134 134 135 135 … … 148 148 # @param $(outbase) Output basename (full). Use this for list files and such. 149 149 # @param $(objsuff) Object suffix. 150 TOOL_VCC1 00X86_COMPILE_C_DEPEND =151 TOOL_VCC1 00X86_COMPILE_C_DEPORD =152 TOOL_VCC1 00X86_COMPILE_C_OUTPUT =153 TOOL_VCC1 00X86_COMPILE_C_OUTPUT_MAYBE = $(call TOOL_VCC100X86_PDB, $(outbase)-obj,pdb) $(call TOOL_VCC100X86_PDB, $(outbase)-obj,idb)154 ifdef TOOL_VCC1 00X86_KSUBMIT155 TOOL_VCC1 00X86_COMPILE_C_DONT_PURGE_OUTPUT = 1 # speed156 define TOOL_VCC1 00X86_COMPILE_C_CMDS157 $(QUIET)$(TOOL_VCC1 00X86_KSUBMIT) -P $(DEP_OBJ_INT) -f -s -q -o $(dep) -t $(obj) $(obj)\158 -- $(TOOL_VCC1 00X86_CC) -c\150 TOOL_VCC120X86_COMPILE_C_DEPEND = 151 TOOL_VCC120X86_COMPILE_C_DEPORD = 152 TOOL_VCC120X86_COMPILE_C_OUTPUT = 153 TOOL_VCC120X86_COMPILE_C_OUTPUT_MAYBE = $(call TOOL_VCC120X86_PDB, $(outbase)-obj,pdb) $(call TOOL_VCC120X86_PDB, $(outbase)-obj,idb) 154 ifdef TOOL_VCC120X86_KSUBMIT 155 TOOL_VCC120X86_COMPILE_C_DONT_PURGE_OUTPUT = 1 # speed 156 define TOOL_VCC120X86_COMPILE_C_CMDS 157 $(QUIET)$(TOOL_VCC120X86_KSUBMIT) -P $(DEP_OBJ_INT) -f -s -q -o $(dep) -t $(obj) $(obj)\ 158 -- $(TOOL_VCC120X86_CC) -c\ 159 159 $(flags) $(addprefix -I, $(incs)) $(addprefix -D, $(defs))\ 160 160 -Fd$(outbase)-obj.pdb \ … … 163 163 endef 164 164 else 165 define TOOL_VCC1 00X86_COMPILE_C_CMDS166 $(QUIET)$(TOOL_VCC1 00X86_CC) -c\165 define TOOL_VCC120X86_COMPILE_C_CMDS 166 $(QUIET)$(TOOL_VCC120X86_CC) -c\ 167 167 $(flags) $(addprefix -I, $(incs)) $(addprefix -D, $(defs))\ 168 168 -Fd$(outbase)-obj.pdb \ … … 171 171 $(QUIET)$(DEP_OBJ) -f -s -q -o $(dep) -t $(obj) $(obj) 172 172 endef 173 endif # !TOOL_VCC1 00X86_KSUBMIT173 endif # !TOOL_VCC120X86_KSUBMIT 174 174 175 175 … … 187 187 # @param $(outbase) Output basename (full). Use this for list files and such. 188 188 # @param $(objsuff) Object suffix. 189 TOOL_VCC1 00X86_COMPILE_CXX_DEPEND = $($(target)_1_VCC_PCH_FILE)190 TOOL_VCC1 00X86_COMPILE_CXX_DEPORD =191 TOOL_VCC1 00X86_COMPILE_CXX_OUTPUT =192 TOOL_VCC1 00X86_COMPILE_CXX_OUTPUT_MAYBE = $(if-expr defined($(target)_1_VCC_COMMON_OBJ_PDB)\193 ,,$(call TOOL_VCC1 00X86_PDB, $(outbase)-obj,pdb) $(call TOOL_VCC100X86_PDB, $(outbase)-obj,idb))194 ifdef TOOL_VCC1 00X86_KSUBMIT195 TOOL_VCC1 00X86_COMPILE_CXX_DONT_PURGE_OUTPUT = 1 # speed196 define TOOL_VCC1 00X86_COMPILE_CXX_CMDS197 $(QUIET)$(TOOL_VCC1 00X86_KSUBMIT) -P $(DEP_OBJ_INT) -f -s -q -o $(dep) -t $(obj) $(obj)\198 -- $(TOOL_VCC1 00X86_CXX) -c\189 TOOL_VCC120X86_COMPILE_CXX_DEPEND = $($(target)_1_VCC_PCH_FILE) 190 TOOL_VCC120X86_COMPILE_CXX_DEPORD = 191 TOOL_VCC120X86_COMPILE_CXX_OUTPUT = 192 TOOL_VCC120X86_COMPILE_CXX_OUTPUT_MAYBE = $(if-expr defined($(target)_1_VCC_COMMON_OBJ_PDB)\ 193 ,,$(call TOOL_VCC120X86_PDB, $(outbase)-obj,pdb) $(call TOOL_VCC120X86_PDB, $(outbase)-obj,idb)) 194 ifdef TOOL_VCC120X86_KSUBMIT 195 TOOL_VCC120X86_COMPILE_CXX_DONT_PURGE_OUTPUT = 1 # speed 196 define TOOL_VCC120X86_COMPILE_CXX_CMDS 197 $(QUIET)$(TOOL_VCC120X86_KSUBMIT) -P $(DEP_OBJ_INT) -f -s -q -o $(dep) -t $(obj) $(obj)\ 198 -- $(TOOL_VCC120X86_CXX) -c\ 199 199 $(flags) $(addprefix -I, $(incs)) $(addprefix -D, $(defs))\ 200 200 $(if-expr defined($(target)_PCH_HDR)\ 201 ,-FI$($(target)_PCH_HDR) -Yu$($(target)_PCH_HDR) -Fp$($(target)_1_VCC_PCH_FILE) ,)\201 ,-FI$($(target)_PCH_HDR) -Yu$($(target)_PCH_HDR) -Fp$($(target)_1_VCC_PCH_FILE) -FS,)\ 202 202 -Fd$(if-expr defined($(target)_1_VCC_COMMON_OBJ_PDB),$($(target)_1_VCC_COMMON_OBJ_PDB),$(outbase)-obj.pdb) \ 203 203 -Fo$(obj)\ … … 205 205 endef 206 206 else 207 define TOOL_VCC1 00X86_COMPILE_CXX_CMDS208 $(QUIET)$(TOOL_VCC1 00X86_CXX) -c\207 define TOOL_VCC120X86_COMPILE_CXX_CMDS 208 $(QUIET)$(TOOL_VCC120X86_CXX) -c\ 209 209 $(flags) $(addprefix -I, $(incs)) $(addprefix -D, $(defs))\ 210 210 $(if-expr defined($(target)_PCH_HDR)\ 211 ,-FI$($(target)_PCH_HDR) -Yu$($(target)_PCH_HDR) -Fp$($(target)_1_VCC_PCH_FILE) ,)\211 ,-FI$($(target)_PCH_HDR) -Yu$($(target)_PCH_HDR) -Fp$($(target)_1_VCC_PCH_FILE) -FS,)\ 212 212 -Fd$(if-expr defined($(target)_1_VCC_COMMON_OBJ_PDB),$($(target)_1_VCC_COMMON_OBJ_PDB),$(outbase)-obj.pdb) \ 213 213 -Fo$(obj)\ … … 215 215 $(QUIET)$(DEP_OBJ) -f -s -q -o $(dep) -t $(obj) $(obj) 216 216 endef 217 endif # !TOOL_VCC1 00X86_KSUBMIT217 endif # !TOOL_VCC120X86_KSUBMIT 218 218 219 219 … … 224 224 # related _1_VCC_PCH_FILE and add -Yc. 225 225 # 226 TOOL_VCC100X86-PCH := Helper for creating precompiled header using CXX handling. 227 TOOL_VCC100X86-PCH_EXTENDS := VCC100X86 228 TOOL_VCC100X86-PCH_CXXOBJSUFF := .obj 229 TOOL_VCC100X86-PCH_CXXINCS = $(TOOL_VCC100X86_CXXINCS) 230 TOOL_VCC100X86-PCH_CXXFLAGS.debug = $(TOOL_VCC100X86_CXXFLAGS.debug) 231 TOOL_VCC100X86-PCH_CXXFLAGS.dbgopt = $(TOOL_VCC100X86_CXXFLAGS.dbgopt) 232 TOOL_VCC100X86-PCH_CXXFLAGS.release = $(TOOL_VCC100X86_CXXFLAGS.release) 233 TOOL_VCC100X86-PCH_CXXFLAGS.profile = $(TOOL_VCC100X86_CXXFLAGS.profile) 234 TOOL_VCC100X86-PCH_COMPILE_CXX_DEPEND = $(NO_SUCH_VARIABLE) 235 TOOL_VCC100X86-PCH_COMPILE_CXX_DEPORD = $(NO_SUCH_VARIABLE) 236 TOOL_VCC100X86-PCH_COMPILE_CXX_OUTPUT = $($(target)_1_VCC_PCH_FILE) $($(target)_1_VCC_COMMON_OBJ_PDB) 237 TOOL_VCC100X86-PCH_COMPILE_CXX_OUTPUT_MAYBE = $(NO_SUCH_VARIABLE) 238 ifdef TOOL_VCC100X86_KSUBMIT 239 define TOOL_VCC100X86-PCH_COMPILE_CXX_CMDS 240 $(QUIET)$(TOOL_VCC100X86_KSUBMIT) --no-pch-caching -P $(DEP_OBJ_INT) -f -s -q -e .pch -o $(dep) -t $(obj) $(obj)\ 241 -- $(TOOL_VCC100X86_CXX) -c -Yc\ 226 TOOL_VCC120X86-PCH := Helper for creating precompiled header using CXX handling. 227 TOOL_VCC120X86-PCH_EXTENDS := VCC120X86 228 TOOL_VCC120X86-PCH_CXXOBJSUFF := .obj 229 TOOL_VCC120X86-PCH_CXXINCS = $(TOOL_VCC120X86_CXXINCS) 230 TOOL_VCC120X86-PCH_CXXFLAGS = $(TOOL_VCC120X86_CXXFLAGS) -FS 231 TOOL_VCC120X86-PCH_CXXFLAGS.debug = $(TOOL_VCC120X86_CXXFLAGS.debug) 232 TOOL_VCC120X86-PCH_CXXFLAGS.dbgopt = $(TOOL_VCC120X86_CXXFLAGS.dbgopt) 233 TOOL_VCC120X86-PCH_CXXFLAGS.release = $(TOOL_VCC120X86_CXXFLAGS.release) 234 TOOL_VCC120X86-PCH_CXXFLAGS.profile = $(TOOL_VCC120X86_CXXFLAGS.profile) 235 TOOL_VCC120X86-PCH_COMPILE_CXX_DEPEND = $(NO_SUCH_VARIABLE) 236 TOOL_VCC120X86-PCH_COMPILE_CXX_DEPORD = $(NO_SUCH_VARIABLE) 237 TOOL_VCC120X86-PCH_COMPILE_CXX_OUTPUT = $($(target)_1_VCC_PCH_FILE) $($(target)_1_VCC_COMMON_OBJ_PDB) 238 TOOL_VCC120X86-PCH_COMPILE_CXX_OUTPUT_MAYBE = $(NO_SUCH_VARIABLE) 239 ifdef TOOL_VCC120X86_KSUBMIT 240 define TOOL_VCC120X86-PCH_COMPILE_CXX_CMDS 241 $(QUIET)$(TOOL_VCC120X86_KSUBMIT) --no-pch-caching -P $(DEP_OBJ_INT) -f -s -q -e .pch -o $(dep) -t $(obj) $(obj)\ 242 -- $(TOOL_VCC120X86_CXX) -c -Yc\ 242 243 $(flags) $(addprefix -I, $(incs)) $(addprefix -D, $(defs))\ 243 244 -Fp$($(target)_1_VCC_PCH_FILE) \ … … 248 249 endef 249 250 else 250 define TOOL_VCC1 00X86-PCH_COMPILE_CXX_CMDS251 $(QUIET)$(TOOL_VCC1 00X86_CXX) -c -Yc\251 define TOOL_VCC120X86-PCH_COMPILE_CXX_CMDS 252 $(QUIET)$(TOOL_VCC120X86_CXX) -c -Yc\ 252 253 $(flags) $(addprefix -I, $(incs)) $(addprefix -D, $(defs))\ 253 254 -Fp$($(target)_1_VCC_PCH_FILE) \ … … 259 260 260 261 endef 261 endif # !TOOL_VCC1 00X86_KSUBMIT262 endif # !TOOL_VCC120X86_KSUBMIT 262 263 263 264 … … 277 278 # @param $(outbase) Output basename (full). Use this for list files and such. 278 279 # @param $(objsuff) Object suffix. 279 TOOL_VCC1 00X86_COMPILE_RC_DEPEND =280 TOOL_VCC1 00X86_COMPILE_RC_DEPORD =281 TOOL_VCC1 00X86_COMPILE_RC_OUTPUT =282 define TOOL_VCC1 00X86_COMPILE_RC_CMDS283 $(QUIET)$(TOOL_VCC1 00X86_RC) \280 TOOL_VCC120X86_COMPILE_RC_DEPEND = 281 TOOL_VCC120X86_COMPILE_RC_DEPORD = 282 TOOL_VCC120X86_COMPILE_RC_OUTPUT = 283 define TOOL_VCC120X86_COMPILE_RC_CMDS 284 $(QUIET)$(TOOL_VCC120X86_RC) \ 284 285 $(flags) $(addprefix /i, $(subst /,\\,$(incs))) $(addprefix /d, $(defs))\ 285 286 /fo$(obj)\ … … 298 299 # @param $(outbase) Output basename (full). Use this for list files and such. 299 300 # 300 TOOL_VCC1 00X86_LINK_LIBRARY_DEPEND = $(othersrc)301 TOOL_VCC1 00X86_LINK_LIBRARY_DEPORD =302 TOOL_VCC1 00X86_LINK_LIBRARY_OUTPUT = $(outbase).rsp303 TOOL_VCC1 00X86_LINK_LIBRARY_OUTPUT_MAYBE = $(outbase).lst $(outbase).exp $(outbase).pdb304 define TOOL_VCC1 00X86_LINK_LIBRARY_CMDS301 TOOL_VCC120X86_LINK_LIBRARY_DEPEND = $(othersrc) 302 TOOL_VCC120X86_LINK_LIBRARY_DEPORD = 303 TOOL_VCC120X86_LINK_LIBRARY_OUTPUT = $(outbase).rsp 304 TOOL_VCC120X86_LINK_LIBRARY_OUTPUT_MAYBE = $(outbase).lst $(outbase).exp $(outbase).pdb 305 define TOOL_VCC120X86_LINK_LIBRARY_CMDS 305 306 $(QUIET)$(APPEND) -tn $(outbase).rsp \ 306 307 $(foreach arg,\ … … 309 310 $(addprefix /DEF:,$(filter %.def,$(othersrc))) \ 310 311 ,\"$(arg)\") 311 $(QUIET)$(TOOL_VCC1 00X86_KSUBMIT_DD) $(TOOL_VCC100X86_AR) $(flags) /OUT:$(out) @$(outbase).rsp312 $(QUIET)$(TOOL_VCC120X86_KSUBMIT_DD) $(TOOL_VCC120X86_AR) $(flags) /OUT:$(out) @$(outbase).rsp 312 313 endef 313 314 … … 327 328 # @param $(outbase) Output basename (full). Use this for list files and such. 328 329 # 329 TOOL_VCC1 00X86_LINK_PROGRAM_DEPEND = $(foreach lib,$(libs),$(if $(findstring $(lib),$(subst /,x,$(lib))),, $(lib))) $(othersrc)330 TOOL_VCC1 00X86_LINK_PROGRAM_DEPORD =331 TOOL_VCC1 00X86_LINK_PROGRAM_OUTPUT = $(outbase).map $(outbase).rsp332 TOOL_VCC1 00X86_LINK_PROGRAM_OUTPUT_MAYBE = $(outbase).lib $(outbase).exp $(outbase).ilk $(out).manifest333 TOOL_VCC1 00X86_LINK_PROGRAM_OUTPUT_DEBUG = $(outbase).pdb334 TOOL_VCC1 00X86_LINK_PROGRAM_DEBUG_INSTALL_FN = $(2).pdb=>$(basename $(3)).pdb335 define TOOL_VCC1 00X86_LINK_PROGRAM_CMDS330 TOOL_VCC120X86_LINK_PROGRAM_DEPEND = $(foreach lib,$(libs),$(if $(findstring $(lib),$(subst /,x,$(lib))),, $(lib))) $(othersrc) 331 TOOL_VCC120X86_LINK_PROGRAM_DEPORD = 332 TOOL_VCC120X86_LINK_PROGRAM_OUTPUT = $(outbase).map $(outbase).rsp 333 TOOL_VCC120X86_LINK_PROGRAM_OUTPUT_MAYBE = $(outbase).lib $(outbase).exp $(outbase).ilk $(out).manifest 334 TOOL_VCC120X86_LINK_PROGRAM_OUTPUT_DEBUG = $(outbase).pdb 335 TOOL_VCC120X86_LINK_PROGRAM_DEBUG_INSTALL_FN = $(2).pdb=>$(basename $(3)).pdb 336 define TOOL_VCC120X86_LINK_PROGRAM_CMDS 336 337 $(QUIET)$(APPEND) -tn $(outbase).rsp \ 337 338 $(foreach arg,\ … … 339 340 $(subst /,\\,$(libs)) \ 340 341 ,\"$(arg)\") 341 $(QUIET)$(TOOL_VCC1 00X86_KSUBMIT_DD) $(TOOL_VCC100X86_LD) $(flags) \342 $(QUIET)$(TOOL_VCC120X86_KSUBMIT_DD) $(TOOL_VCC120X86_LD) $(flags) \ 342 343 /OUT:$(out) \ 343 344 /MAPINFO:EXPORTS /INCREMENTAL:NO \ … … 347 348 $(foreach p,$(libpath), /LIBPATH:$(p)) \ 348 349 @$(outbase).rsp 349 ifndef TOOL_VCC1 00X86_NO_AUTO_MANIFEST350 ifndef TOOL_VCC120X86_NO_AUTO_MANIFEST 350 351 $(QUIET)$(TEST) -f $(out).manifest -- \ 351 $(TOOL_VCC1 00X86_MT) -manifest $(subst /,\\,$(out)).manifest -outputresource:$(subst /,\\,$(out))352 $(TOOL_VCC120X86_MT) -manifest $(subst /,\\,$(out)).manifest -outputresource:$(subst /,\\,$(out)) 352 353 endif 353 354 endef … … 368 369 # 369 370 # @param $(outbase) Output basename (full). Use this for list files and such. 370 TOOL_VCC1 00X86_LINK_DLL_DEPEND = $(objs) $(foreach lib,$(libs),$(if $(findstring $(lib),$(subst /,x,$(lib))),, $(lib))) $(othersrc)371 TOOL_VCC1 00X86_LINK_DLL_DEPORD = $(call DIRDEP,$(PATH_STAGE_LIB))372 TOOL_VCC1 00X86_LINK_DLL_OUTPUT = $(outbase).map $(outbase).lib $(outbase).exp $(outbase).rsp373 TOOL_VCC1 00X86_LINK_DLL_OUTPUT_MAYBE = $(outbase).ilk $(out).manifest $(PATH_STAGE_LIB)/$(notdir $(outbase)).exp374 TOOL_VCC1 00X86_LINK_DLL_OUTPUT_MAYBE_PRECIOUS = $(PATH_STAGE_LIB)/$(notdir $(outbase)).lib375 TOOL_VCC1 00X86_LINK_DLL_OUTPUT_DEBUG = $(outbase).pdb376 TOOL_VCC1 00X86_LINK_DLL_DEBUG_INSTALL_FN = $(2).pdb=>$(basename $(3)).pdb377 define TOOL_VCC1 00X86_LINK_DLL_CMDS371 TOOL_VCC120X86_LINK_DLL_DEPEND = $(objs) $(foreach lib,$(libs),$(if $(findstring $(lib),$(subst /,x,$(lib))),, $(lib))) $(othersrc) 372 TOOL_VCC120X86_LINK_DLL_DEPORD = $(call DIRDEP,$(PATH_STAGE_LIB)) 373 TOOL_VCC120X86_LINK_DLL_OUTPUT = $(outbase).map $(outbase).lib $(outbase).exp $(outbase).rsp 374 TOOL_VCC120X86_LINK_DLL_OUTPUT_MAYBE = $(outbase).ilk $(out).manifest $(PATH_STAGE_LIB)/$(notdir $(outbase)).exp 375 TOOL_VCC120X86_LINK_DLL_OUTPUT_MAYBE_PRECIOUS = $(PATH_STAGE_LIB)/$(notdir $(outbase)).lib 376 TOOL_VCC120X86_LINK_DLL_OUTPUT_DEBUG = $(outbase).pdb 377 TOOL_VCC120X86_LINK_DLL_DEBUG_INSTALL_FN = $(2).pdb=>$(basename $(3)).pdb 378 define TOOL_VCC120X86_LINK_DLL_CMDS 378 379 $(QUIET)$(APPEND) -tn $(outbase).rsp \ 379 380 $(foreach arg,\ … … 381 382 $(subst /,\\,$(libs)) \ 382 383 ,\"$(arg)\") 383 $(QUIET)$(TOOL_VCC1 00X86_KSUBMIT_DD) $(TOOL_VCC100X86_LD) $(flags) \384 $(QUIET)$(TOOL_VCC120X86_KSUBMIT_DD) $(TOOL_VCC120X86_LD) $(flags) \ 384 385 /OUT:$(out) \ 385 386 /IMPLIB:$(outbase).lib \ … … 391 392 $(foreach p,$(libpath), /LIBPATH:$(p)) \ 392 393 @$(outbase).rsp 393 ifndef TOOL_VCC1 00X86_NO_AUTO_MANIFEST394 ifndef TOOL_VCC120X86_NO_AUTO_MANIFEST 394 395 $(QUIET)$(TEST) -f $(out).manifest -- \ 395 $(TOOL_VCC1 00X86_MT) -manifest $(subst /,\\,$(out)).manifest '-outputresource:$(subst /,\\,$(out));#2'396 $(TOOL_VCC120X86_MT) -manifest $(subst /,\\,$(out)).manifest '-outputresource:$(subst /,\\,$(out));#2' 396 397 endif 397 398 $(QUIET)$(TEST) -f $(outbase).lib -- $(KLIBTWEAKER_EXT) --clear-timestamps $(outbase).lib … … 415 416 # 416 417 # @param $(outbase) Output basename (full). Use this for list files and such. 417 TOOL_VCC1 00X86_LINK_SYSMOD_DEPEND = $(foreach lib,$(libs),$(if $(findstring $(lib),$(subst /,x,$(lib))),, $(lib))) $(othersrc)418 TOOL_VCC1 00X86_LINK_SYSMOD_DEPORD =419 TOOL_VCC1 00X86_LINK_SYSMOD_OUTPUT = $(outbase).map $(outbase).rsp420 TOOL_VCC1 00X86_LINK_SYSMOD_OUTPUT_MAYBE = $(outbase).lib $(outbase).exp $(outbase).ilk $(out).manifest421 TOOL_VCC1 00X86_LINK_SYSMOD_OUTPUT_DEBUG = $(outbase).pdb422 TOOL_VCC1 00X86_LINK_SYSMOD_DEBUG_INSTALL_FN = $(2).pdb=>$(basename $(3)).pdb423 define TOOL_VCC1 00X86_LINK_SYSMOD_CMDS418 TOOL_VCC120X86_LINK_SYSMOD_DEPEND = $(foreach lib,$(libs),$(if $(findstring $(lib),$(subst /,x,$(lib))),, $(lib))) $(othersrc) 419 TOOL_VCC120X86_LINK_SYSMOD_DEPORD = 420 TOOL_VCC120X86_LINK_SYSMOD_OUTPUT = $(outbase).map $(outbase).rsp 421 TOOL_VCC120X86_LINK_SYSMOD_OUTPUT_MAYBE = $(outbase).lib $(outbase).exp $(outbase).ilk $(out).manifest 422 TOOL_VCC120X86_LINK_SYSMOD_OUTPUT_DEBUG = $(outbase).pdb 423 TOOL_VCC120X86_LINK_SYSMOD_DEBUG_INSTALL_FN = $(2).pdb=>$(basename $(3)).pdb 424 define TOOL_VCC120X86_LINK_SYSMOD_CMDS 424 425 $(QUIET)$(APPEND) -tn $(outbase).rsp \ 425 426 $(foreach arg,\ … … 427 428 $(subst /,\\,$(libs)) \ 428 429 ,\"$(arg)\") 429 $(QUIET)$(TOOL_VCC1 00X86_KSUBMIT_DD) $(TOOL_VCC100X86_LD) $(flags) \430 $(QUIET)$(TOOL_VCC120X86_KSUBMIT_DD) $(TOOL_VCC120X86_LD) $(flags) \ 430 431 /OUT:$(out) \ 431 432 /MAPINFO:EXPORTS /INCREMENTAL:NO \ … … 435 436 $(foreach p,$(libpath), /LIBPATH:$(p)) \ 436 437 @$(outbase).rsp 437 ifndef TOOL_VCC1 00X86_NO_AUTO_MANIFEST438 ifndef TOOL_VCC120X86_NO_AUTO_MANIFEST 438 439 $(QUIET)$(TEST) -f $(out).manifest -- \ 439 $(TOOL_VCC1 00X86_MT) -manifest $(subst /,\\,$(out)).manifest '-outputresource:$(subst /,\\,$(out));#2'440 $(TOOL_VCC120X86_MT) -manifest $(subst /,\\,$(out)).manifest '-outputresource:$(subst /,\\,$(out));#2' 440 441 endif 441 442 endef
Note:
See TracChangeset
for help on using the changeset viewer.