## @file # Automate the process of building the various reset vector types # # Copyright (c) 2014, 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 # http://opensource.org/licenses/bsd-license.php # # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. # import glob import os import subprocess import sys def RunCommand(commandLine): #print ' '.join(commandLine) return subprocess.call(commandLine) for filename in glob.glob(os.path.join('Bin', '*.raw')): os.remove(filename) arch = 'ia32' debugType = None output = os.path.join('Bin', 'ResetVec') output += '.' + arch if debugType is not None: output += '.' + debugType output += '.raw' commandLine = ( 'nasm', '-D', 'ARCH_%s' % arch.upper(), '-D', 'DEBUG_%s' % str(debugType).upper(), '-o', output, 'ResetVectorCode.asm', ) ret = RunCommand(commandLine) print '\tASM\t' + output if ret != 0: sys.exit(ret) commandLine = ( 'python', 'Tools/FixupForRawSection.py', output, ) print '\tFIXUP\t' + output ret = RunCommand(commandLine) if ret != 0: sys.exit(ret)