X-Git-Url: https://git.proxmox.com/?a=blobdiff_plain;ds=sidebyside;f=BaseTools%2FSource%2FPython%2FAutoGen%2FGenMake.py;h=0f3ddd5dd44498258516ec5c6aee79221b3fc98f;hb=db55dac77579fa2722e4457bfc4369f98b8ff52a;hp=c8c5fc53860d7f6c35371a0b0565bbd624d3005d;hpb=8832c79d6439adc09d7cc89b22268899026ff7f8;p=mirror_edk2.git diff --git a/BaseTools/Source/Python/AutoGen/GenMake.py b/BaseTools/Source/Python/AutoGen/GenMake.py index c8c5fc5386..0f3ddd5dd4 100644 --- a/BaseTools/Source/Python/AutoGen/GenMake.py +++ b/BaseTools/Source/Python/AutoGen/GenMake.py @@ -1,7 +1,7 @@ ## @file # Create makefile for MS nmake and GNU make # -# Copyright (c) 2007 - 2016, Intel Corporation. All rights reserved.
+# Copyright (c) 2007 - 2017, Intel Corporation. All rights reserved.
# This program and the accompanying materials # are licensed and made available under the terms and conditions of the BSD License # which accompanies this distribution. The full text of the license may be found at @@ -386,7 +386,7 @@ ${END} # clean: \t${BEGIN}${clean_command} -\t${END} +\t${END}\t$(RM) AutoGenTimeStamp # # clean all generated files @@ -395,6 +395,7 @@ cleanall: ${BEGIN}\t${cleanall_command} ${END}\t$(RM) *.pdb *.idb > NUL 2>&1 \t$(RM) $(BIN_DIR)${separator}$(MODULE_NAME).efi +\t$(RM) AutoGenTimeStamp # # clean all dependent libraries built @@ -768,7 +769,11 @@ cleanlib: break else: break - RespDict[Key] = Value + + if self._AutoGenObject.ToolChainFamily == 'GCC': + RespDict[Key] = Value.replace('\\', '/') + else: + RespDict[Key] = Value for Target in BuildTargets: for i, SingleCommand in enumerate(BuildTargets[Target].Commands): if FlagDict[Flag]['Macro'] in SingleCommand: @@ -797,6 +802,9 @@ cleanlib: if not self.FileDependency[File]: self.FileDependency[File] = ['$(FORCE_REBUILD)'] continue + + self._AutoGenObject.AutoGenDepSet |= set(self.FileDependency[File]) + # skip non-C files if File.Ext not in [".c", ".C"] or File.Name == "AutoGen.c": continue @@ -1445,7 +1453,15 @@ class TopLevelMakefile(BuildFile): if GlobalData.BuildOptionPcd: for index, option in enumerate(GlobalData.gCommand): if "--pcd" == option and GlobalData.gCommand[index+1]: - ExtraOption += " --pcd " + GlobalData.gCommand[index+1] + pcdName, pcdValue = GlobalData.gCommand[index+1].split('=') + if pcdValue.startswith('H'): + pcdValue = 'H' + '"' + pcdValue[1:] + '"' + ExtraOption += " --pcd " + pcdName + '=' + pcdValue + elif pcdValue.startswith('L'): + pcdValue = 'L' + '"' + pcdValue[1:] + '"' + ExtraOption += " --pcd " + pcdName + '=' + pcdValue + else: + ExtraOption += " --pcd " + GlobalData.gCommand[index+1] MakefileName = self._FILE_NAME_[self._FileType] SubBuildCommandList = []