This patch is going to fix a build failure (running of GenFds) in Linux system caused by patch at r15816.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Hess Chen <hesheng.chen@intel.com>
Reviewed-by: Gao, Liming <liming.gao@intel.com>


git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15831 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
Hess Chen 2014-08-19 08:22:04 +00:00 committed by hchen30
parent e62fa17c58
commit 01ce353813
2 changed files with 9 additions and 9 deletions

View File

@ -1200,7 +1200,7 @@ cleanlib:
# #
class TopLevelMakefile(BuildFile): class TopLevelMakefile(BuildFile):
## template used to generate toplevel makefile ## template used to generate toplevel makefile
_TEMPLATE_ = TemplateString('''${BEGIN}\tGenFds -f "${fdf_file}" -o "${platform_build_directory}" -t ${toolchain_tag} -b ${build_target} -p "${active_platform}" -a ${build_architecture_list} ${extra_options}${END}${BEGIN} -r ${fd} ${END}${BEGIN} -i ${fv} ${END}${BEGIN} -C ${cap} ${END}${BEGIN} -D ${macro} ${END}''') _TEMPLATE_ = TemplateString('''${BEGIN}\tGenFds -f ${fdf_file} -o ${platform_build_directory} -t ${toolchain_tag} -b ${build_target} -p ${active_platform} -a ${build_architecture_list} ${extra_options}${END}${BEGIN} -r ${fd} ${END}${BEGIN} -i ${fv} ${END}${BEGIN} -C ${cap} ${END}${BEGIN} -D ${macro} ${END}''')
## Constructor of TopLevelMakefile ## Constructor of TopLevelMakefile
# #

View File

@ -245,7 +245,14 @@ def LaunchCommand(Command, WorkingDir):
# if working directory doesn't exist, Popen() will raise an exception # if working directory doesn't exist, Popen() will raise an exception
if not os.path.isdir(WorkingDir): if not os.path.isdir(WorkingDir):
EdkLogger.error("build", FILE_NOT_FOUND, ExtraData=WorkingDir) EdkLogger.error("build", FILE_NOT_FOUND, ExtraData=WorkingDir)
# Command is used as the first Argument in following Popen().
# It could be a string or sequence. We find that if command is a string in following Popen(),
# ubuntu may fail with an error message that the command is not found.
# So here we may need convert command from string to list instance.
if not isinstance(Command, list):
Command = Command.split()
Proc = None Proc = None
EndOfProcedure = None EndOfProcedure = None
try: try:
@ -1402,12 +1409,6 @@ class Build():
for Arch in Wa.ArchList: for Arch in Wa.ArchList:
GlobalData.gGlobalDefines['ARCH'] = Arch GlobalData.gGlobalDefines['ARCH'] = Arch
Pa = PlatformAutoGen(Wa, self.PlatformFile, BuildTarget, ToolChain, Arch) Pa = PlatformAutoGen(Wa, self.PlatformFile, BuildTarget, ToolChain, Arch)
for Module in Pa.Platform.Modules:
# Get ModuleAutoGen object to generate C code file and makefile
Ma = ModuleAutoGen(Wa, Module, BuildTarget, ToolChain, Arch, self.PlatformFile)
if Ma == None:
continue
self.BuildModules.append(Ma)
self._BuildPa(self.Target, Pa) self._BuildPa(self.Target, Pa)
# Create MAP file when Load Fix Address is enabled. # Create MAP file when Load Fix Address is enabled.
@ -1491,7 +1492,6 @@ class Build():
Ma = ModuleAutoGen(Wa, self.ModuleFile, BuildTarget, ToolChain, Arch, self.PlatformFile) Ma = ModuleAutoGen(Wa, self.ModuleFile, BuildTarget, ToolChain, Arch, self.PlatformFile)
if Ma == None: continue if Ma == None: continue
MaList.append(Ma) MaList.append(Ma)
self.BuildModules.append(Ma)
if not Ma.IsBinaryModule: if not Ma.IsBinaryModule:
self._Build(self.Target, Ma, BuildModule=True) self._Build(self.Target, Ma, BuildModule=True)