From c9b3fe1586eb191150081851c94f30277b7a3844 Mon Sep 17 00:00:00 2001 From: Bob Feng Date: Tue, 23 Apr 2019 11:21:22 +0800 Subject: [PATCH] BaseTools: Support customized compiling command BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=1737 User may add other commands before CC command from build_rule.txt for specific purpose. It worked fine before commit 05217d210e. This patch is going to fix the bug in commit 05217d210e to support customized CC command. Signed-off-by: Bob Feng Cc: Liming Gao Reviewed-by: Liming Gao --- BaseTools/Source/Python/AutoGen/GenMake.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/BaseTools/Source/Python/AutoGen/GenMake.py b/BaseTools/Source/Python/AutoGen/GenMake.py index 3e770ad7c4..0e0f9fd9b0 100644 --- a/BaseTools/Source/Python/AutoGen/GenMake.py +++ b/BaseTools/Source/Python/AutoGen/GenMake.py @@ -1023,7 +1023,7 @@ cleanlib: CommandList = T.Commands[:] for Item in CommandList[:]: SingleCommandList = Item.split() - if len(SingleCommandList) > 0 and '$(CC)' in SingleCommandList[0]: + if len(SingleCommandList) > 0 and self.CheckCCCmd(SingleCommandList): for Temp in SingleCommandList: if Temp.startswith('/Fo'): CmdSign = '%s%s' % (Temp.rsplit(TAB_SLASH, 1)[0], TAB_SLASH) @@ -1043,6 +1043,11 @@ cleanlib: T.Commands.pop(Index) return T, CmdSumDict, CmdTargetDict, CmdCppDict + def CheckCCCmd(self, CommandList): + for cmd in CommandList: + if '$(CC)' in cmd: + return True + return False ## For creating makefile targets for dependent libraries def ProcessDependentLibrary(self): for LibraryAutoGen in self._AutoGenObject.LibraryAutoGenList: