2020-04-19 10:08:07 +02:00
|
|
|
# @file
|
|
|
|
# Script to Build OVMF UEFI firmware
|
|
|
|
#
|
|
|
|
# Copyright (c) Microsoft Corporation.
|
|
|
|
# SPDX-License-Identifier: BSD-2-Clause-Patent
|
|
|
|
##
|
|
|
|
import os
|
2021-12-13 09:14:37 +01:00
|
|
|
import sys
|
2020-04-19 10:08:07 +02:00
|
|
|
|
2021-12-13 09:14:37 +01:00
|
|
|
sys.path.append(os.path.dirname(os.path.abspath(__file__)))
|
|
|
|
from PlatformBuildLib import SettingsManager
|
|
|
|
from PlatformBuildLib import PlatformBuilder
|
2020-04-19 10:08:07 +02:00
|
|
|
|
|
|
|
# ####################################################################################### #
|
|
|
|
# Common Configuration #
|
|
|
|
# ####################################################################################### #
|
|
|
|
class CommonPlatform():
|
|
|
|
''' Common settings for this platform. Define static data here and use
|
|
|
|
for the different parts of stuart
|
|
|
|
'''
|
|
|
|
PackagesSupported = ("OvmfPkg",)
|
|
|
|
ArchSupported = ("IA32", "X64")
|
|
|
|
TargetsSupported = ("DEBUG", "RELEASE", "NOOPT")
|
|
|
|
Scopes = ('ovmf', 'edk2-build')
|
|
|
|
WorkspaceRoot = os.path.realpath(os.path.join(
|
|
|
|
os.path.dirname(os.path.abspath(__file__)), "..", ".."))
|
|
|
|
|
|
|
|
@classmethod
|
|
|
|
def GetDscName(cls, ArchCsv: str) -> str:
|
|
|
|
''' return the DSC given the architectures requested.
|
|
|
|
|
|
|
|
ArchCsv: csv string containing all architectures to build
|
|
|
|
'''
|
|
|
|
dsc = "OvmfPkg"
|
|
|
|
if "IA32" in ArchCsv.upper().split(","):
|
|
|
|
dsc += "Ia32"
|
|
|
|
if "X64" in ArchCsv.upper().split(","):
|
|
|
|
dsc += "X64"
|
|
|
|
dsc += ".dsc"
|
|
|
|
return dsc
|
|
|
|
|
2021-12-13 09:14:37 +01:00
|
|
|
import PlatformBuildLib
|
|
|
|
PlatformBuildLib.CommonPlatform = CommonPlatform
|