Ignore:
Timestamp:
Mar 16, 2020, 3:31:38 AM (5 years ago)
Author:
bird
Message:

kmk,kWorker: Assign processor groups to kWorker processes. Added --special-env hack for having a mspdbsrv.exe instance per processor group (using _MSPDBSRV_ENDPOINT_). This was complicated by PCH requiring to share .pdb file and therefore mspdbsrv.exe instance, requiring a mspdb100.dll re-init hack to disconnect kWorker from the previous mspdbsrv when switching. fun.

File:
1 edited

Legend:

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

    r3303 r3313  
    7878 ifeq ($(KBUILD_HOST),win)
    7979  TOOL_VCC100X86_KSUBMIT ?= kmk_builtin_kSubmit --32-bit
    80   TOOL_VCC100X86_KSUBMIT_DD = $(TOOL_VCC100X86_KSUBMIT) --
     80  if $(KBUILD_KMK_REVISION) > 3311
     81   TOOL_VCC100X86_KSUBMIT_SPECIAL_ENV = -s "_MSPDBSRV_ENDPOINT_=kBuild_vcc10_x86_@@AUTHENTICATION_ID@@_$(if-expr defined($(target)_1_VCC_COMMON_OBJ_PDB),common,@@PROCESS_GROUP@@)"
     82  endif
     83  TOOL_VCC100X86_KSUBMIT_DD = $(TOOL_VCC100X86_KSUBMIT) $(TOOL_VCC100X86_KSUBMIT_SPECIAL_ENV) --
    8184 endif
    8285endif
     
    155158 TOOL_VCC100X86_COMPILE_C_DONT_PURGE_OUTPUT = 1 # speed
    156159 define TOOL_VCC100X86_COMPILE_C_CMDS
    157         $(QUIET)$(TOOL_VCC100X86_KSUBMIT) -P $(DEP_OBJ_INT) -f -s -q -o $(dep) -t $(obj) $(obj)\
     160        $(QUIET)$(TOOL_VCC100X86_KSUBMIT) $(TOOL_VCC100X86_KSUBMIT_SPECIAL_ENV) \
     161                -P $(DEP_OBJ_INT) -f -s -q -o $(dep) -t $(obj) $(obj)\
    158162                -- $(TOOL_VCC100X86_CC) -c\
    159163                $(flags) $(addprefix -I, $(incs)) $(addprefix -D, $(defs))\
     
    195199 TOOL_VCC100X86_COMPILE_CXX_DONT_PURGE_OUTPUT = 1 # speed
    196200 define TOOL_VCC100X86_COMPILE_CXX_CMDS
    197         $(QUIET)$(TOOL_VCC100X86_KSUBMIT) -P $(DEP_OBJ_INT) -f -s -q -o $(dep) -t $(obj) $(obj)\
     201        $(QUIET)$(TOOL_VCC100X86_KSUBMIT) $(TOOL_VCC100X86_KSUBMIT_SPECIAL_ENV) \
     202                -P $(DEP_OBJ_INT) -f -s -q -o $(dep) -t $(obj) $(obj)\
    198203                -- $(TOOL_VCC100X86_CXX) -c\
    199204                $(flags) $(addprefix -I, $(incs)) $(addprefix -D, $(defs))\
     
    238243ifdef TOOL_VCC100X86_KSUBMIT
    239244 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)\
     245        $(RM) -f -- "$($(target)_1_VCC_COMMON_OBJ_PDB)"
     246        $(QUIET)$(TOOL_VCC100X86_KSUBMIT) --no-pch-caching $(TOOL_VCC100X86_KSUBMIT_SPECIAL_ENV) \
     247                -P $(DEP_OBJ_INT) -f -s -q -e .pch -o $(dep) -t $(obj) $(obj)\
    241248                -- $(TOOL_VCC100X86_CXX) -c -Yc\
    242249                $(flags) $(addprefix -I, $(incs)) $(addprefix -D, $(defs))\
     
    257264                $(subst /,\\,$(abspath $(source)))
    258265        $(QUIET)$(DEP_OBJ) -f -s -q  -e .pch -o $(dep) -t $(obj) $(obj)
    259 
    260266 endef
    261267endif # !TOOL_VCC100X86_KSUBMIT
Note: See TracChangeset for help on using the changeset viewer.