summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLeif Lindholm <leif.lindholm@linaro.org>2019-07-10 22:59:30 +0100
committerLeif Lindholm <leif.lindholm@linaro.org>2019-07-16 14:54:36 +0100
commit0407bb1a30ece4a305486535df5d4835c8241882 (patch)
tree213fea74fc70c146f14b31b7b3d4c19a02b4110e
parentfea63e84bdd898c0327505c751377d37fa55c338 (diff)
Delete outdated uefi-build.sh
edk2-platforms has been the actively developed tree for nearly two years, so delete the outdated script for building OpenPlatformPkg, and its associated platform configuration file. Signed-off-by: Leif Lindholm <leif.lindholm@linaro.org> Acked-by: Haojian Zhuang <haojian.zhuang@linaro.org>
-rw-r--r--platforms.config310
-rwxr-xr-xuefi-build.sh398
-rw-r--r--uefi-build.sh.bash_completion24
3 files changed, 0 insertions, 732 deletions
diff --git a/platforms.config b/platforms.config
deleted file mode 100644
index 4d29c65..0000000
--- a/platforms.config
+++ /dev/null
@@ -1,310 +0,0 @@
-# Platform build configurations for Linaro EDK2 builds
-# ====================================================
-# The configuration file format is extremely simplistic:
-# - Each platform has a short name.
-# - A platform entry starts by the short name held in square brackets, '[]'
-# - Within each entry, all options are described in a NAME=VALUE scheme,
-# with the name being whatever comes before the first '=' on the line,
-# and the value being everything that comes after it.
-#
-# Mandatory options:
-# - LONGNAME A more descriptive name of the platform.
-# - DSC Pointer to the EDK2 build description file. (The
-# pandaboard is excused, all other ports must have this.)
-# - ARCH String describing the architecture to build for.
-# Currently supported are AARCH32 and AARCH64.
-# - UEFI_BIN Name of executable image produced.
-# - UEFI_IMAGE_DIR Build output directory name, relative to 'Build'.
-#
-# Options for Trusted OS
-# Note that OP-TEE (https://github.com/OP-TEE/optee_os) is the only currently
-# supported Trusted OS
-# - BUILD_TOS Set to "yes" if the build should automatically build
-# Trusted OS, mainly for ARM Trusted Firmware.
-# If this is set, you must also set ATF_SPD!
-# Else we will not know which specific Trusted OS to
-# build.
-# Set to "debug" to create a debug build.
-# - TOS_ARCH String describing the architecture to build for.
-# Currently the supported architecture is ARM.
-# - TOS_PLATFORM Platform name for Trusted OS build, if
-# different from ARM Trusted Firmware platform
-# or UEFI platform name.
-# - TOS_PLATFORM_FLAVOR If a core platform has multiple flavors, specify which
-# flavor here.
-#
-# Options for ARM Trusted Firmware platforms
-# - BUILD_ATF Set to "yes" if the build should automatically build
-# ARM Trusted Firmware and a fip containing UEFI image.
-# Set to "debug" to create a debug build.
-# - ATF_PLATFORM Platform name for ARM Trusted Firmware build, if
-# different from UEFI platform name.
-# - SCP_BIN SCP image to pass to ARM Trusted Firmware.
-# - TOS_BIN Trusted OS image to pass to ARM Trusted Firmware.
-# The path is relative to
-# $EDK2_DIR/Build/$PLATFORM_IMAGE_DIR/$BUILD_PROFILE/FV/.
-# To actually build the Trusted OS, you must also set
-# ATF_SPD.
-# - ATF_SPD Name of Secure Payload Dispatcher
-# To actually build the Trusted OS, you must also set
-# TOS_BIN.
-# - SPM_BIN Prebuilt Secure Partition image to pass to ARM Trusted Firmware.
-# The path is relative to
-# $EDK2_DIR/Build/StandaloneSmmPkg/$BUILD_PROFILE/FV/.
-#
-# Optional options:
-# - BUILDFLAGS Any special flags you want to pass to the build command.
-# - ATF_BUILDFLAGS Any special flags you want to pass to the ARM Trusted
-# Firmware build command.
-# - TOS_BUILDFLAGS Any special flags you want to pass to the Trusted OS
-# build command.
-# - EXTRA_FILES Any additional files to be copied to output dir.
-# - PREBUILD_CMDS Any commands you want to execute before the build step.
-# - POSTBUILD_CMDS Any commands you want to execute after the build step.
-# - PACKAGES_PATH Additional directories to search for packages under.
-# - INF Point to a .inf (in addition to a .dsc) in order to
-# build a single component (standalone driver/app).
-#
-
-[juno]
-LONGNAME=aarch64 Juno
-DSC=OpenPlatformPkg/Platforms/ARM/Juno/ArmJuno.dsc
-BUILDFLAGS=
-ARCH=AARCH64
-BUILD_ATF=yes
-UEFI_BIN=BL33_AP_UEFI.fd
-UEFI_IMAGE_DIR=ArmJuno
-SCP_BIN=OpenPlatformPkg/Platforms/ARM/Juno/Binary/bl30.bin
-EXTRA_FILES=../../../../OpenPlatformPkg/Platforms/ARM/Juno/Binary/bl0.bin ../../../../OpenPlatformPkg/Platforms/ARM/Juno/Binary/Copying.txt
-
-# ARM FVP BASE AEMv8-A model
-[fvp_full]
-LONGNAME=aarch64 FVP RTSM with full perhiperhal set
-DSC=OpenPlatformPkg/Platforms/ARM/VExpress/ArmVExpress-FVP-AArch64.dsc
-BUILDFLAGS=-D EDK2_OUT_DIR=Build/ArmVExpress-FVP-AArch64-Full -D EDK2_ENABLE_SMSC_91X=1 -D EDK2_ENABLE_PL111=1
-ARCH=AARCH64
-UEFI_BIN=FVP_AARCH64_EFI.fd
-UEFI_IMAGE_DIR=ArmVExpress-FVP-AArch64-Full
-
-[fvp]
-LONGNAME=aarch64 FVP RTSM
-DSC=OpenPlatformPkg/Platforms/ARM/VExpress/ArmVExpress-FVP-AArch64.dsc
-BUILDFLAGS=-D EDK2_ENABLE_SMSC_91X=1
-ARCH=AARCH64
-BUILD_ATF=yes
-UEFI_BIN=FVP_AARCH64_EFI.fd
-UEFI_IMAGE_DIR=ArmVExpress-FVP-AArch64
-
-# ARM FVP BASE AEMv8-A model
-[fvp_mm_standalone]
-LONGNAME=FVP Base for MM Standalone image in secure world
-DSC=StandaloneSmmPkg/StandaloneSmmPkg.dsc
-ARCH=AARCH64
-UEFI_BIN=FVP_AARCH64_EFI_MM_STANDALONE.fd
-UEFI_IMAGE_DIR=ArmVExpress-FVP-AArch64-MM-Standalone
-
-[fvp_mm_normal]
-LONGNAME=FVP Base for UEFI image with MM support in normal world
-DSC=OpenPlatformPkg/Platforms/ARM/VExpress/ArmVExpress-FVP-AArch64.dsc
-BUILDFLAGS=-D EDK2_OUT_DIR=Build/ArmVExpress-FVP-AArch64-MM-Normal -D ARM_STANDALONE_MM_ENABLE=TRUE
-ARCH=AARCH64
-BUILD_ATF=debug
-UEFI_BIN=FVP_AARCH64_EFI.fd
-UEFI_IMAGE_DIR=ArmVExpress-FVP-AArch64-MM-Normal
-ATF_PLATFORM=fvp
-SPM_BIN=STANDALONESMM.fd
-ATF_BUILDFLAGS=ARM_BL31_IN_DRAM=1
-
-[tc2]
-LONGNAME=Versatile Express TC2
-BUILDFLAGS=-D ARM_BIGLITTLE_TC2=1
-DSC=OpenPlatformPkg/Platforms/ARM/VExpress/ArmVExpress-CTA15-A7.dsc
-ARCH=ARM
-UEFI_BIN=ARM_VEXPRESS_CTA15A7_EFI.fd
-UEFI_IMAGE_DIR=ArmVExpress-CTA15-A7
-
-[beagle]
-LONGNAME=BeagleBoard
-BUILDFLAGS=
-DSC=BeagleBoardPkg/BeagleBoardPkg.dsc
-ARCH=ARM
-
-[d01]
-LONGNAME=HiSilicon D01 Cortex-A15 16-cores
-BUILDFLAGS=-D EDK2_ARMVE_STANDALONE=1
-DSC=HisiPkg/D01BoardPkg/D01BoardPkg.dsc
-ARCH=ARM
-UEFI_BIN=D01.fd
-UEFI_IMAGE_DIR=D01
-
-[d01-intelbds]
-LONGNAME=HiSilicon D01 Cortex-A15 16-cores Intel Bds
-BUILDFLAGS=-D EDK2_ARMVE_STANDALONE=1 -D INTEL_BDS -D NO_LINUX_LOADER -D EDK2_OUT_DIR=Build/D01-IntelBds
-DSC=HisiPkg/D01BoardPkg/D01BoardPkg.dsc
-ARCH=ARM
-UEFI_BIN=D01.fd
-UEFI_IMAGE_DIR=D01
-
-[qemu]
-LONGNAME=QEMU ARM Emulator
-BUILDFLAGS=-D INTEL_BDS
-DSC=ArmVirtPkg/ArmVirtQemu.dsc
-ARCH=ARM
-UEFI_BIN=QEMU_EFI.fd
-UEFI_IMAGE_DIR=ArmVirtQemu-ARM
-
-[qemu64]
-LONGNAME=QEMU AArch64 Emulator
-BUILDFLAGS=-D INTEL_BDS
-DSC=ArmVirtPkg/ArmVirtQemu.dsc
-ARCH=AARCH64
-UEFI_BIN=QEMU_EFI.fd
-UEFI_IMAGE_DIR=ArmVirtQemu-AARCH64
-
-[mustang]
-LONGNAME=APM XGene Mustang
-BUILDFLAGS=
-DSC=ArmPlatformPkg/APMXGenePkg/APMXGene-Mustang.dsc
-ARCH=AARCH64
-UEFI_BIN=APMXGENE-MUSTANG.fd SEC_APMXGENE-MUSTANG.fd
-UEFI_IMAGE_DIR=APMXGene-Mustang
-
-[overdrive]
-LONGNAME=AMD Overdrive
-BUILDFLAGS=-D INTEL_BDS
-DSC=OpenPlatformPkg/Platforms/AMD/Styx/OverdriveBoard/OverdriveBoard.dsc
-ARCH=AARCH64
-PACKAGES_PATH=OpenPlatformPkg/Platforms/AMD/Styx/Binary
-UEFI_BIN=STYX_ROM.fd
-UEFI_IMAGE_DIR=Overdrive
-
-[overdrive1000]
-LONGNAME=SoftIron Overdrive 1000
-BUILDFLAGS=-D INTEL_BDS
-DSC=OpenPlatformPkg/Platforms/AMD/Styx/Overdrive1000Board/Overdrive1000Board.dsc
-ARCH=AARCH64
-PACKAGES_PATH=OpenPlatformPkg/Platforms/AMD/Styx/Binary
-UEFI_BIN=OVERDRIVE1000_ROM.fd
-UEFI_IMAGE_DIR=Overdrive1000Board
-
-[cello]
-LONGNAME=LeMaker Cello
-BUILDFLAGS=-D INTEL_BDS
-DSC=OpenPlatformPkg/Platforms/AMD/Styx/CelloBoard/CelloBoard.dsc
-ARCH=AARCH64
-PACKAGES_PATH=OpenPlatformPkg/Platforms/AMD/Styx/Binary
-UEFI_BIN=STYX_ROM.fd
-UEFI_IMAGE_DIR=Cello
-
-# NOTE: If using 96board's forks of ATF, i.e.
-# https://github.com/96boards-hikey/arm-trusted-firmware
-# or
-# https://github.com/96boards/arm-trusted-firmware
-# please set TOS_BIN=tee.bin
-[hikey]
-LONGNAME=CircuitCo HiKey
-DSC=OpenPlatformPkg/Platforms/Hisilicon/HiKey/HiKey.dsc
-ARCH=AARCH64
-UEFI_BIN=BL33_AP_UEFI.fd
-UEFI_IMAGE_DIR=HiKey
-BUILD_ATF=yes
-ATF_SPD=opteed
-TOS_BIN=tee-pager.bin
-TOS_PLATFORM_FLAVOR=hikey
-BUILD_TOS=yes
-SCP_BIN=OpenPlatformPkg/Platforms/Hisilicon/HiKey/Binary/mcuimage.bin
-# Uncomment this to use UART0 as the EDK2 console
-#BUILDFLAGS=-DSERIAL_BASE=0xF8015000
-# Uncomment this to use UART0 as the ARM Trusted Firmware console
-#ATF_BUILDFLAGS=CONSOLE_BASE=PL011_UART0_BASE CRASH_CONSOLE_BASE=PL011_UART0_BASE
-# Uncomment this to use UART0 as the OP-TEE Trusted OS console
-#TOS_BUILDFLAGS=CFG_CONSOLE_UART=0
-
-[hikey960]
-LONGNAME=Hikey960
-DSC=OpenPlatformPkg/Platforms/Hisilicon/HiKey960/HiKey960.dsc
-ARCH=AARCH64
-UEFI_BIN=BL33_AP_UEFI.fd
-UEFI_IMAGE_DIR=HiKey960
-BUILD_ATF=yes
-ATF_SPD=opteed
-TOS_BIN=tee-pager.bin
-TOS_PLATFORM=hikey
-TOS_PLATFORM_FLAVOR=hikey960
-BUILD_TOS=yes
-SCP_BIN=OpenPlatformPkg/Platforms/Hisilicon/HiKey960/Binary/lpm3.img
-# Uncomment this to use UART5 as the EDK2 console for v1 hardware
-#BUILDFLAGS=-DSERIAL_BASE=0xFDF05000
-
-[xen64]
-LONGNAME=AArch64 Xen guest
-BUILDFLAGS=
-DSC=ArmVirtPkg/ArmVirtXen.dsc
-ARCH=AARCH64
-UEFI_BIN=XEN_EFI.fd
-UEFI_IMAGE_DIR=ArmVirtXen-AARCH64
-
-[aarch64-shell]
-LONGNAME=AArch64 EFI Shell
-BUILDFLAGS=-D INCLUDE_TFTP_COMMAND
-DSC=ShellPkg/ShellPkg.dsc
-ARCH=AARCH64
-
-[aarch64-shell-minimal]
-LONGNAME=AArch64 EFI Shell (Minimal)
-BUILDFLAGS=-D NO_SHELL_PROFILES
-DSC=ShellPkg/ShellPkg.dsc
-ARCH=AARCH64
-
-[arm-shell]
-LONGNAME=ARM EFI Shell
-BUILDFLAGS=-D INCLUDE_TFTP_COMMAND
-DSC=ShellPkg/ShellPkg.dsc
-ARCH=ARM
-
-[arm-shell-minimal]
-LONGNAME=ARM EFI Shell (Minimal)
-BUILDFLAGS=-D NO_SHELL_PROFILES
-DSC=ShellPkg/ShellPkg.dsc
-ARCH=ARM
-
-[d02]
-LONGNAME=Hisilicon D02
-DSC=OpenPlatformPkg/Platforms/Hisilicon/D02/Pv660D02.dsc
-ARCH=AARCH64
-UEFI_BIN=PV660D02.fd
-UEFI_IMAGE_DIR=Pv660D02
-
-[d03]
-LONGNAME=Hisilicon D03
-DSC=OpenPlatformPkg/Platforms/Hisilicon/D03/D03.dsc
-ARCH=AARCH64
-UEFI_BIN=D03.fd
-UEFI_IMAGE_DIR=D03
-
-[d05]
-LONGNAME=HiSilicon D05
-DSC=OpenPlatformPkg/Platforms/Hisilicon/D05/D05.dsc
-ARCH=AARCH64
-UEFI_BIN=D05.fd
-UEFI_IMAGE_DIR=D05
-
-[armada70x0]
-LONGNAME=Marvell Armada 70x0
-DSC=OpenPlatformPkg/Platforms/Marvell/Armada/Armada70x0.dsc
-ARCH=AARCH64
-
-[ovmfx64]
-LONGNAME=OVMF Qemu X64
-DSC=OvmfPkg/OvmfPkgX64.dsc
-ARCH=X64
-
-[hello]
-LONGNAME=EDK2 Hello World Example
-DSC=MdeModulePkg/MdeModulePkg.dsc
-INF=MdeModulePkg/Application/HelloWorld/HelloWorld.inf
-
-[chaoskey]
-LONGNAME=Altus Metrum ChaosKey Driver
-DSC=OptionRomPkg/OptionRomPkg.dsc
-INF=OpenPlatformPkg/Drivers/Usb/Misc/ChaosKeyDxe/ChaosKeyDxe.inf
diff --git a/uefi-build.sh b/uefi-build.sh
deleted file mode 100755
index 7fec3d0..0000000
--- a/uefi-build.sh
+++ /dev/null
@@ -1,398 +0,0 @@
-#!/bin/bash
-
-#
-# Board Configuration Section
-# ===========================
-#
-# Board configuration moved to parse-platforms.py and platforms.config.
-#
-# No need to edit below unless you are changing script functionality.
-#
-
-unset WORKSPACE EDK_TOOLS_DIR MAKEFLAGS
-
-TOOLS_DIR="`dirname $0`"
-export TOOLS_DIR
-. "$TOOLS_DIR"/common-functions
-PLATFORM_CONFIG=""
-VERBOSE=0
-ATF_DIR=
-TOS_DIR=
-TOOLCHAIN=
-OPENSSL_CONFIGURED=FALSE
-
-# Number of threads to use for build
-export NUM_THREADS=$((`getconf _NPROCESSORS_ONLN` + 1))
-
-function do_build
-{
- PLATFORM_NAME="`$TOOLS_DIR/parse-platforms.py $PLATFORM_CONFIG -p $board get -o longname`"
- PLATFORM_PREBUILD_CMDS="`$TOOLS_DIR/parse-platforms.py $PLATFORM_CONFIG -p $board get -o prebuild_cmds`"
- PLATFORM_BUILDFLAGS="`$TOOLS_DIR/parse-platforms.py $PLATFORM_CONFIG -p $board get -o buildflags`"
- PLATFORM_BUILDFLAGS="$PLATFORM_BUILDFLAGS ${EXTRA_OPTIONS[@]}"
- PLATFORM_BUILDCMD="`$TOOLS_DIR/parse-platforms.py $PLATFORM_CONFIG -p $board get -o buildcmd`"
- PLATFORM_DSC="`$TOOLS_DIR/parse-platforms.py $PLATFORM_CONFIG -p $board get -o dsc`"
- PLATFORM_PACKAGES_PATH="$PWD"
- COMPONENT_INF="`$TOOLS_DIR/parse-platforms.py $PLATFORM_CONFIG -p $board get -o inf`"
-
- PLATFORM_ARCH="`$TOOLS_DIR/parse-platforms.py $PLATFORM_CONFIG -p $board get -o arch`"
- if [ -n "$PLATFORM_ARCH" ]; then
- if [ -n "$DEFAULT_PLATFORM_ARCH" -a "$DEFAULT_PLATFORM_ARCH" != "$PLATFORM_ARCH" ]; then
- echo "Command line specified architecture '$DEFAULT_PLATFORM_ARCH'" >&2
- echo "differs from config file specified '$PLATFORM_ARCH'" >&2
- return 1
- fi
- else
- if [ ! -n "$DEFAULT_PLATFORM_ARCH" ]; then
- echo "Unknown target architecture - aborting!" >&2
- return 1
- fi
- PLATFORM_ARCH="$DEFAULT_PLATFORM_ARCH"
- fi
- TEMP_PACKAGES_PATH="`$TOOLS_DIR/parse-platforms.py $PLATFORM_CONFIG -p $board get -o packages_path`"
- if [ -n "$TEMP_PACKAGES_PATH" ]; then
- IFS=:
- for path in "$TEMP_PACKAGES_PATH"; do
- case "$path" in
- /*)
- PLATFORM_PACKAGES_PATH="$PLATFORM_PACKAGES_PATH:$path"
- ;;
- *)
- PLATFORM_PACKAGES_PATH="$PLATFORM_PACKAGES_PATH:$PWD/$path"
- ;;
- esac
- done
- unset IFS
- fi
- if [ $VERBOSE -eq 1 ]; then
- echo "Setting build parallellism to $NUM_THREADS processes\n"
- echo "PLATFORM_NAME=$PLATFORM_NAME"
- echo "PLATFORM_PREBUILD_CMDS=$PLATFORM_PREBUILD_CMDS"
- echo "PLATFORM_BUILDFLAGS=$PLATFORM_BUILDFLAGS"
- echo "PLATFORM_BUILDCMD=$PLATFORM_BUILDCMD"
- echo "PLATFORM_DSC=$PLATFORM_DSC"
- echo "PLATFORM_ARCH=$PLATFORM_ARCH"
- echo "PLATFORM_PACKAGES_PATH=$PLATFORM_PACKAGES_PATH"
- fi
-
- if [[ "${PLATFORM_BUILDFLAGS}" =~ "SECURE_BOOT_ENABLE=TRUE" ]]; then
- import_openssl
- fi
-
- if [ -n "$CROSS_COMPILE_64" -a "$PLATFORM_ARCH" == "AARCH64" ]; then
- TEMP_CROSS_COMPILE="$CROSS_COMPILE_64"
- elif [ -n "$CROSS_COMPILE_32" -a "$PLATFORM_ARCH" == "ARM" ]; then
- TEMP_CROSS_COMPILE="$CROSS_COMPILE_32"
- else
- set_cross_compile
- fi
-
- CROSS_COMPILE="$TEMP_CROSS_COMPILE"
-
- echo "Building $PLATFORM_NAME - $PLATFORM_ARCH"
- echo "CROSS_COMPILE=\"$TEMP_CROSS_COMPILE\""
- echo "$board"_BUILDFLAGS="'$PLATFORM_BUILDFLAGS'"
-
- if [ "$TARGETS" == "" ]; then
- TARGETS=( RELEASE )
- fi
-
- case $TOOLCHAIN in
- "gcc")
- TOOLCHAIN=`get_gcc_version "$CROSS_COMPILE"gcc`
- if [ $? -ne 0 ]; then
- echo "${CROSS_COMPILE}gcc not found!" >&2
- return 1
- fi
- ;;
- "clang")
- TOOLCHAIN=`get_clang_version clang`
- if [ $? -ne 0 ]; then
- return 1
- fi
- ;;
- esac
- export TOOLCHAIN
- echo "TOOLCHAIN is ${TOOLCHAIN}"
-
- export ${TOOLCHAIN}_${PLATFORM_ARCH}_PREFIX=$CROSS_COMPILE
- echo "Toolchain prefix: ${TOOLCHAIN}_${PLATFORM_ARCH}_PREFIX=$CROSS_COMPILE"
-
- export PACKAGES_PATH="$PLATFORM_PACKAGES_PATH"
- for target in "${TARGETS[@]}" ; do
- if [ X"$PLATFORM_PREBUILD_CMDS" != X"" ]; then
- echo "Run pre build commands"
- eval ${PLATFORM_PREBUILD_CMDS}
- fi
-
- if [ -n "$COMPONENT_INF" ]; then
- # Build a standalone component
- build -n $NUM_THREADS -a "$PLATFORM_ARCH" -t ${TOOLCHAIN} -p "$PLATFORM_DSC" \
- -m "$COMPONENT_INF" -b "$target" ${PLATFORM_BUILDFLAGS}
- else
- # Build a platform
- build -n $NUM_THREADS -a "$PLATFORM_ARCH" -t ${TOOLCHAIN} -p "$PLATFORM_DSC" \
- -b "$target" ${PLATFORM_BUILDFLAGS}
- fi
-
- RESULT=$?
- if [ $RESULT -eq 0 ]; then
- if [ X"$TOS_DIR" != X"" ]; then
- pushd $TOS_DIR >/dev/null
- if [ $VERBOSE -eq 1 ]; then
- echo "$TOOLS_DIR/tos-build.sh -e "$EDK2_DIR" -t "$target"_${TOOLCHAIN} $board"
- fi
- $TOOLS_DIR/tos-build.sh -e "$EDK2_DIR" -t "$target"_${TOOLCHAIN} $board
- RESULT=$?
- popd >/dev/null
- fi
- fi
- if [ $RESULT -eq 0 ]; then
- if [ X"$ATF_DIR" != X"" ]; then
- pushd $ATF_DIR >/dev/null
- if [ $VERBOSE -eq 1 ]; then
- echo "$TOOLS_DIR/atf-build.sh -e "$EDK2_DIR" -t "$target"_${TOOLCHAIN} $board"
- fi
- $TOOLS_DIR/atf-build.sh -e "$EDK2_DIR" -t "$target"_${TOOLCHAIN} $board
- RESULT=$?
- popd >/dev/null
- fi
- fi
- result_log $RESULT "$PLATFORM_NAME $target"
- done
- unset PACKAGES_PATH
-}
-
-
-function clearcache
-{
- CONF_FILES="build_rule target tools_def"
- if [ -z "$EDK_TOOLS_PATH" ]
- then
- TEMPLATE_PATH=./BaseTools/Conf/
- else
- TEMPLATE_PATH="$EDK_TOOLS_PATH/Conf/"
- fi
-
- for File in $CONF_FILES
- do
- TEMPLATE_FILE="$TEMPLATE_PATH/$File.template"
- CACHE_FILE="Conf/$File.txt"
- if [ -e "$CACHE_FILE" -a "$TEMPLATE_FILE" -nt "$CACHE_FILE" ]
- then
- echo "Removing outdated '$CACHE_FILE'."
- rm "$CACHE_FILE"
- fi
- done
-
- unset TEMPLATE_PATH TEMPLATE_FILE CACHE_FILE
-}
-
-
-function uefishell
-{
- BUILD_ARCH=`uname -m`
- case $BUILD_ARCH in
- arm*)
- ARCH=ARM
- ;;
- aarch64)
- ARCH=AARCH64
- ;;
- *)
- unset ARCH
- ;;
- esac
- export ARCH
- export EDK_TOOLS_PATH=`pwd`/BaseTools
- clearcache
- . edksetup.sh BaseTools
- if [ $VERBOSE -eq 1 ]; then
- echo "Building BaseTools"
- fi
- make -C $EDK_TOOLS_PATH
- if [ $? -ne 0 ]; then
- echo " !!! UEFI BaseTools failed to build !!! " >&2
- exit 1
- fi
-}
-
-
-function usage
-{
- echo "usage:"
- echo -n "uefi-build.sh [-b DEBUG | RELEASE] [ all "
- for board in "${boards[@]}" ; do
- echo -n "| $board "
- done
- echo "]"
- printf "%8s\tbuild %s\n" "all" "all supported platforms"
- for board in "${boards[@]}" ; do
- PLATFORM_NAME="`$TOOLS_DIR/parse-platforms.py $PLATFORM_CONFIG -p $board get -o longname`"
- printf "%8s\tbuild %s\n" "$board" "${PLATFORM_NAME}"
- done
-}
-
-#
-# Since we do a command line validation on whether specified platforms exist or
-# not, do a first pass of command line to see if there is an explicit config
-# file there to read valid platforms from.
-#
-commandline=( "$@" )
-i=0
-for arg;
-do
- if [ $arg == "-c" ]; then
- FILE_ARG=${commandline[i + 1]}
- if [ ! -f "$FILE_ARG" ]; then
- echo "ERROR: configuration file '$FILE_ARG' not found" >&2
- exit 1
- fi
- case "$FILE_ARG" in
- /*)
- PLATFORM_CONFIG="-c $FILE_ARG"
- ;;
- *)
- PLATFORM_CONFIG="-c `readlink -f \"$FILE_ARG\"`"
- ;;
- esac
- echo "Platform config file: '$FILE_ARG'"
- export PLATFORM_CONFIG
- fi
- i=$(($i + 1))
-done
-
-builds=()
-boards=()
-boardlist="`$TOOLS_DIR/parse-platforms.py $PLATFORM_CONFIG shortlist`"
-for board in $boardlist; do
- boards=(${boards[@]} $board)
-done
-
-NUM_TARGETS=0
-
-while [ "$1" != "" ]; do
- case $1 in
- all )
- builds=(${boards[@]})
- NUM_TARGETS=$(($NUM_TARGETS + 1))
- ;;
- "/h" | "/?" | "-?" | "-h" | "--help" )
- usage
- exit
- ;;
- "-v" )
- VERBOSE=1
- ;;
- "-a" )
- shift
- ATF_DIR="$1"
- ;;
- "-A" )
- shift
- DEFAULT_PLATFORM_ARCH="$1"
- ;;
- "-c" )
- # Already parsed above - skip this + option
- shift
- ;;
- "-s" )
- shift
- export TOS_DIR="$1"
- ;;
- "-b" | "--build" )
- shift
- echo "Adding Build profile: $1"
- TARGETS=( ${TARGETS[@]} $1 )
- ;;
- "-D" )
- shift
- echo "Adding option: -D $1"
- EXTRA_OPTIONS=( ${EXTRA_OPTIONS[@]} "-D" $1 )
- ;;
- "-T" )
- shift
- echo "Setting toolchain to '$1'"
- TOOLCHAIN="$1"
- ;;
- "-1" )
- NUM_THREADS=1
- ;;
- * )
- MATCH=0
- for board in "${boards[@]}" ; do
- if [ "$1" == $board ]; then
- MATCH=1
- builds=(${builds[@]} "$board")
- break
- fi
- done
-
- if [ $MATCH -eq 0 ]; then
- echo "unknown arg $1"
- usage
- exit 1
- fi
- NUM_TARGETS=$(($NUM_TARGETS + 1))
- ;;
- esac
- shift
-done
-
-# If there were no args, use a menu to select a single board / all boards to build
-if [ $NUM_TARGETS -eq 0 ]
-then
- read -p "$(
- f=0
- for board in "${boards[@]}" ; do
- echo "$((++f)): $board"
- done
- echo $((++f)): all
-
- echo -ne '> '
- )" selection
-
- if [ "$selection" -eq $((${#boards[@]} + 1)) ]; then
- builds=(${boards[@]})
- else
- builds="${boards[$((selection-1))]}"
- fi
-fi
-
-# Check to see if we are in a UEFI repository
-# refuse to continue if we aren't
-if [ ! -e BaseTools ]
-then
- echo "ERROR: we aren't in the UEFI directory."
- echo " I can tell because I can't see the BaseTools directory"
- exit 1
-fi
-
-EDK2_DIR="$PWD"
-export VERBOSE
-
-if [[ "${EXTRA_OPTIONS[@]}" != *"FIRMWARE_VER"* ]]; then
- if test -d .git && head=`git rev-parse --verify --short HEAD 2>/dev/null`; then
- FIRMWARE_VER=`git rev-parse --short HEAD`
- if ! git diff-index --quiet HEAD --; then
- FIRMWARE_VER="${FIRMWARE_VER}-dirty"
- fi
- EXTRA_OPTIONS=( ${EXTRA_OPTIONS[@]} "-D" FIRMWARE_VER=$FIRMWARE_VER )
- if [ $VERBOSE -eq 1 ]; then
- echo "FIRMWARE_VER=$FIRMWARE_VER"
- echo "EXTRA_OPTIONS=$EXTRA_OPTIONS"
- fi
- fi
-fi
-
-uefishell
-
-if [ X"$TOOLCHAIN" = X"" ]; then
- TOOLCHAIN=gcc
-fi
-
-for board in "${builds[@]}" ; do
- do_build
-done
-
-result_print
diff --git a/uefi-build.sh.bash_completion b/uefi-build.sh.bash_completion
deleted file mode 100644
index f0a5305..0000000
--- a/uefi-build.sh.bash_completion
+++ /dev/null
@@ -1,24 +0,0 @@
-# bash completion for uefi-build.sh
-# copy this file to /etc/bash_completion.d/uefi-build.s
-
-have uefi-build.sh &&
-_uefi-build.sh()
-{
- local cur prev
-
- COMPREPLY=()
- _get_comp_words_by_ref -n = cur
-
- _expand || return 0
-
- COMPREPLY=( $( compgen -W '--help -b --build RELEASE DEBUG a5 a9 tc1 tc2 panda origen arndale rtsm_a9x4 rtsm_a15x1 rtsm_a15mpcore rtsm_aarch64 beagle all' -- "$cur" ) )
-} &&
-complete -F _uefi-build.sh uefi-build.sh
-
-# Local variables:
-# mode: shell-script
-# sh-basic-offset: 4
-# sh-indent-comment: t
-# indent-tabs-mode: nil
-# End:
-# ex: ts=4 sw=4 et filetype=sh