VirtualBox

Changeset 3326 in kBuild


Ignore:
Timestamp:
Apr 17, 2020 7:10:19 PM (5 years ago)
Author:
bird
Message:

tools/VCC141*.kmk: More work on the Visual C++ 14.1 tools.

Location:
trunk/kBuild/tools
Files:
2 edited

Legend:

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

    r3325 r3326  
    7979PATH_TOOL_VCC141_BIN_QSH  := $(requote sh,$(PATH_TOOL_VCC141_BIN))
    8080
     81# A bunch of DLLs are only in the subdir matching the host one, so we need to add it to the PATH when cross compiling.
     82ifndef PATH_TOOL_VCC141_HOST_DLL_BIN
     83PATH_TOOL_VCC141_HOST_DLL_BIN := $(PATH_TOOL_VCC141_HOST_BIN)/$(WINCMN_MAP_ARCH.$(KBUILD_HOST_ARCH))
     84endif
     85ifndef PATH_TOOL_VCC141_DLL_BIN
     86 ifneq ($(PATH_TOOL_VCC141_HOST_DLL_BIN),$(PATH_TOOL_VCC141_BIN))
     87PATH_TOOL_VCC141_DLL_BIN      := $(PATH_TOOL_VCC141_HOST_DLL_BIN)
     88 endif
     89endif
     90
    8191PATH_TOOL_VCC141_LIB.amd64         ?= $(PATH_TOOL_VCC141)/lib/x64
    8292PATH_TOOL_VCC141_LIB.arm32         ?= $(PATH_TOOL_VCC141)/lib/arm
     
    113123  ifneq ($(substr $(qdir un,$(PATH_TOOL_VCC141_BIN)),-3),64/)
    114124   TOOL_VCC141_KSUBMIT ?= kmk_builtin_kSubmit --64-bit
    115    TOOL_VCC141_KSUBMIT_DD = $(TOOL_VCC141_KSUBMIT) --
    116125  else
    117126   TOOL_VCC141_KSUBMIT ?= kmk_builtin_kSubmit --32-bit
    118    TOOL_VCC141_KSUBMIT_DD = $(TOOL_VCC141_KSUBMIT) --
    119127  endif
    120  endif
    121 endif
     128  ifdef PATH_TOOL_VCC141_DLL_BIN
     129   TOOL_VCC141_KSUBMIT := $(TOOL_VCC141_KSUBMIT) --prepend "PATH=$(requote shell-in-dq,$(PATH_TOOL_VCC141_DLL_BIN));"
     130  endif
     131  TOOL_VCC141_KSUBMIT_DD := $(TOOL_VCC141_KSUBMIT) --
     132 endif
     133endif
     134ifdef PATH_TOOL_VCC141_DLL_BIN
     135 TOOL_VCC141_SETUP_ENV   := $(REDIRECT) --prepend "PATH=$(requote shell-in-dq,$(PATH_TOOL_VCC141_DLL_BIN));" --$(SP)
     136 ifndef TOOL_VCC141_KSUBMIT_DD
     137  TOOL_VCC141_KSUBMIT_DD := $(TOOL_VCC141_SETUP_ENV)
     138 endif
     139endif
     140
    122141
    123142## Helper for finding rc.exe and mt.exe in the SDK.
    124 TOOL_VCC141_FN_FIND_SDK_TOOL_SUB = $(eval $3 := $(firstfile  \
     143TOOL_VCC141_FN_FIND_SDK_TOOL_SUB = $(eval $3 := $(qfirstfile sh,\
    125144       $(if-expr defined(PATH_SDK_WINSDK10_BIN) , $(qwildcard ,$(PATH_SDK_WINSDK10_BIN)/$2)) \
    126145       $(if-expr defined(PATH_SDK_WINPSDK71_BIN), $(qwildcard ,$(PATH_SDK_WINPSDK71_BIN)/$2)) \
     
    209228else
    210229 define TOOL_VCC141_COMPILE_C_CMDS
    211         $(QUIET)$(TOOL_VCC141_CC) -c\
     230        $(QUIET)$(TOOL_VCC141_SETUP_ENV) $(TOOL_VCC141_CC) -c\
    212231                $(flags) $(qaddprefix sh,-I, $(incs)) $(qaddprefix sh,-D, $(defs))\
    213232                -Fd$(outbase)-obj.pdb \
     
    251270else
    252271 define TOOL_VCC141_COMPILE_CXX_CMDS
    253         $(QUIET)$(TOOL_VCC141_CXX) -c\
     272        $(QUIET)$(TOOL_VCC141_SETUP_ENV) $(TOOL_VCC141_CXX) -c\
    254273                $(flags) $(qaddprefix sh,-I, $(incs)) $(qaddprefix sh,-D, $(defs))\
    255274                $(if-expr defined($(target)_PCH_HDR)\
     
    297316 define TOOL_VCC141-PCH_COMPILE_CXX_CMDS
    298317        $(QUIET)$(RM) -f -- $($(target)_1_VCC_PCH_FILE) $($(target)_1_VCC_COMMON_OBJ_PDB)
    299         $(QUIET)$(TOOL_VCC141_CXX) -c -Yc\
     318        $(QUIET)$(TOOL_VCC141_SETUP_ENV) $(TOOL_VCC141_CXX) -c -Yc\
    300319                $(flags) $(qaddprefix sh,-I, $(incs)) $(qaddprefix sh,-D, $(defs))\
    301320               -Fp$($(target)_1_VCC_PCH_FILE) \
  • trunk/kBuild/tools/VCC141X86.kmk

    r3325 r3326  
    5454endif
    5555PATH_TOOL_VCC141X86_BIN_QSH := $(requote sh,$(PATH_TOOL_VCC141X86_BIN))
     56
     57# A bunch of DLLs are only in the subdir matching the host one, so we need to add it to the PATH when cross compiling.
     58ifndef PATH_TOOL_VCC141X86_DLL_BIN
     59 ifneq ($(PATH_TOOL_VCC141_HOST_DLL_BIN),$(PATH_TOOL_VCC141X86_BIN))
     60PATH_TOOL_VCC141X86_DLL_BIN := $(PATH_TOOL_VCC141_HOST_DLL_BIN)
     61 endif
     62endif
    5663
    5764ifndef PATH_TOOL_VCC141X86_LIB
     
    9097  ifneq ($(substr $(qdir un,$(PATH_TOOL_VCC141X86_BIN)),-3),64/)
    9198   TOOL_VCC141X86_KSUBMIT ?= kmk_builtin_kSubmit --64-bit
    92    TOOL_VCC141X86_KSUBMIT_DD = $(TOOL_VCC141X86_KSUBMIT) --
    9399  else
    94100   TOOL_VCC141X86_KSUBMIT ?= kmk_builtin_kSubmit --32-bit
    95    TOOL_VCC141X86_KSUBMIT_DD = $(TOOL_VCC141X86_KSUBMIT) --
    96101  endif
     102  ifdef PATH_TOOL_VCC141X86_DLL_BIN
     103   TOOL_VCC141X86_KSUBMIT := $(TOOL_VCC141X86_KSUBMIT) --prepend "PATH=$(requote shell-in-dq,$(PATH_TOOL_VCC141X86_DLL_BIN));"
     104  endif
     105  TOOL_VCC141X86_KSUBMIT_DD := $(TOOL_VCC141X86_KSUBMIT) --
     106 endif
     107endif
     108ifdef PATH_TOOL_VCC141X86_DLL_BIN
     109 TOOL_VCC141X86_SETUP_ENV   := $(REDIRECT) --prepend "PATH=$(requote shell-in-dq,$(PATH_TOOL_VCC141X86_DLL_BIN));" --$(SP)
     110 ifndef TOOL_VCC141X86_KSUBMIT_DD
     111  TOOL_VCC141X86_KSUBMIT_DD := $(TOOL_VCC141X86_SETUP_ENV)
    97112 endif
    98113endif
     
    165180else
    166181 define TOOL_VCC141X86_COMPILE_C_CMDS
    167         $(QUIET)$(TOOL_VCC141X86_CC) -c\
     182        $(QUIET)$(TOOL_VCC141X86_SETUP_ENV)$(TOOL_VCC141X86_CC) -c\
    168183                $(flags) $(qaddprefix sh,-I, $(incs)) $(qaddprefix sh,-D, $(defs))\
    169184                -Fd$(outbase)-obj.pdb \
     
    207222else
    208223 define TOOL_VCC141X86_COMPILE_CXX_CMDS
    209         $(QUIET)$(TOOL_VCC141X86_CXX) -c\
     224        $(QUIET)$(TOOL_VCC141X86_SETUP_ENV)$(TOOL_VCC141X86_CXX) -c\
    210225                $(flags) $(qaddprefix sh,-I, $(incs)) $(qaddprefix sh,-D, $(defs))\
    211226                $(if-expr defined($(target)_PCH_HDR)\
     
    253268 define TOOL_VCC141X86-PCH_COMPILE_CXX_CMDS
    254269        $(QUIET)$(RM) -f -- $($(target)_1_VCC_PCH_FILE) $($(target)_1_VCC_COMMON_OBJ_PDB)
    255         $(QUIET)$(TOOL_VCC141X86_CXX) -c -Yc\
     270        $(QUIET)$(TOOL_VCC141X86_SETUP_ENV)$(TOOL_VCC141X86_CXX) -c -Yc\
    256271                $(flags) $(qaddprefix sh,-I, $(incs)) $(qaddprefix sh,-D, $(defs))\
    257272               -Fp$($(target)_1_VCC_PCH_FILE) \
Note: See TracChangeset for help on using the changeset viewer.

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