sync build script and config (add xen cfg)

This commit is contained in:
Gerd Hoffmann 2023-02-17 11:38:41 +01:00
parent 838f1df9e3
commit 6d59876fe8
4 changed files with 39 additions and 3 deletions

View File

@ -108,6 +108,16 @@ plat = MicrovmX64
dest = Fedora/ovmf
cpy1 = FV/MICROVM.fd
[build.ovmf.xen]
desc = ovmf build for Xen
conf = OvmfPkg/OvmfXen.dsc
arch = X64
opts = ovmf.common
ovmf.2m
plat = OvmfXen
dest = Fedora/xen
cpy1 = FV/OVMF.fd
[build.ovmf.amdsev]
desc = ovmf build for AmdSev (2MB)
conf = OvmfPkg/AmdSev/AmdSevX64.dsc

View File

@ -1,5 +1,9 @@
#####################################################################
# ext4 driver
[build.ext4.x64]
desc = ext4 driver for x64
desc = ext4 driver
conf = Features/Ext4Pkg/Ext4Pkg.dsc
arch = X64
plat = Ext4Pkg
@ -7,9 +11,18 @@ dest = Fedora/drivers
cpy1 = X64/Ext4Dxe.efi ext4x64.efi
[build.ext4.aa64]
desc = ext4 driver for aarch64
desc = ext4 driver
conf = Features/Ext4Pkg/Ext4Pkg.dsc
arch = AARCH64
plat = Ext4Pkg
dest = Fedora/drivers
cpy1 = AARCH64/Ext4Dxe.efi ext4aa64.efi
#####################################################################
# loongarch builds
[build.loongarch]
desc = Loongarch build
conf = Platform/Loongson/LoongArchQemuPkg/Loongson.dsc
arch = LOONGARCH64

View File

@ -250,6 +250,7 @@ def prepare_env(cfg):
os.environ['EDK_TOOLS_PATH'] = coredir + '/BaseTools'
os.environ['CONF_PATH'] = coredir + '/Conf'
os.environ['PYTHON_COMMAND'] = '/usr/bin/python3'
os.environ['PYTHONHASHSEED'] = '1'
# for cross builds
if binary_exists('arm-linux-gnu-gcc'):
@ -258,9 +259,12 @@ def prepare_env(cfg):
os.environ['GCC5_AARCH64_PREFIX'] = 'aarch64-linux-gnu-'
if binary_exists('riscv64-linux-gnu-gcc'):
os.environ['GCC5_RISCV64_PREFIX'] = 'riscv64-linux-gnu-'
if binary_exists('loongarch64-linux-gnu-gcc'):
os.environ['GCC5_LOONGARCH64_PREFIX'] = 'loongarch64-linux-gnu-'
if binary_exists('x86_64-linux-gnu-gcc'):
os.environ['GCC5_IA32_PREFIX'] = 'x86_64-linux-gnu-'
os.environ['GCC5_X64_PREFIX'] = 'x86_64-linux-gnu-'
os.environ['GCC5_BIN'] = 'x86_64-linux-gnu-'
def build_list(cfg):
for build in cfg.sections():
@ -276,8 +280,10 @@ def main():
parser = optparse.OptionParser()
parser.add_option('-c', '--config', dest = 'configfile',
type = 'string', default = '.edk2.builds')
parser.add_option('-C', '--directory', dest = 'directory', type = 'string')
parser.add_option('-j', '--jobs', dest = 'jobs', type = 'string')
parser.add_option('-m', '--match', dest = 'match', type = 'string')
parser.add_option('-x', '--exclude', dest = 'exclude', type = 'string')
parser.add_option('-l', '--list', dest = 'list', action = 'store_true', default = False)
parser.add_option('--silent', dest = 'silent', action = 'store_true', default = False)
parser.add_option('--core', dest = 'core', type = 'string')
@ -286,6 +292,9 @@ def main():
parser.add_option('--release-date', dest = 'release_date', type = 'string')
(options, args) = parser.parse_args()
if options.directory:
os.chdir(options.directory)
cfg = configparser.ConfigParser()
cfg.optionxform = str
cfg.read(options.configfile)
@ -317,6 +326,9 @@ def main():
if options.match and options.match not in build:
print(f'# skipping "{build}" (not matching "{options.match}")')
continue
if options.exclude and options.exclude in build:
print(f'# skipping "{build}" (matching "{options.exclude}")')
continue
build_one(cfg, build, options.jobs, options.silent)
if __name__ == '__main__':

View File

@ -47,7 +47,8 @@ cpy3 = X64/Shell.efi
desc = ovmf build (32/64-bit, 4MB, q35 only, needs smm, secure boot)
conf = OvmfPkg/OvmfPkgIa32X64.dsc
arch = IA32 X64
opts = ovmf.common ovmf.4m
opts = ovmf.common
ovmf.4m
ovmf.sb.smm
plat = Ovmf3264
dest = RHEL-9/ovmf