then
echo Initializing workspace
cd ..
+# Uses an external BaseTools project
+# export EDK_TOOLS_PATH=`pwd`/../BaseTools
+# Uses the BaseTools in edk2
export EDK_TOOLS_PATH=`pwd`/BaseTools
source edksetup.sh BaseTools
else
;;
esac
-BUILD_ROOT=$WORKSPACE/Build/BeagleBoard/DEBUG_"$TARGET_TOOLS"
+TARGET=DEBUG
+for arg in "$@"
+do
+ if [[ $arg == RELEASE ]]; then
+ TARGET=RELEASE
+ fi
+done
+
+BUILD_ROOT=$WORKSPACE/Build/BeagleBoard/"$TARGET"_"$TARGET_TOOLS"
GENERATE_IMAGE=$WORKSPACE/BeagleBoardPkg/Tools/generate_image
FLASH_BOOT=$BUILD_ROOT/FV/BeagleBoard_EFI_flashboot.fd
-if [[ ! -f `which build` || ! -f `which GenFv` ]];
+if [[ ! -e $EDK_TOOLS_PATH/Source/C/bin ]];
then
# build the tools if they don't yet exist
- echo Building tools
- make -C $WORKSPACE/BaseTools
+ echo Building tools: $EDK_TOOLS_PATH
+ make -C $EDK_TOOLS_PATH
else
echo using prebuilt tools
fi
#
# Build the edk2 BeagleBoard code
#
-build -p $WORKSPACE/BeagleBoardPkg/BeagleBoardPkg.dsc -a ARM -t $TARGET_TOOLS $1 $2 $3 $4 $5 $6 $7 $8
+build -p $WORKSPACE/BeagleBoardPkg/BeagleBoardPkg.dsc -a ARM -t $TARGET_TOOLS -b $TARGET $1 $2 $3 $4 $5 $6 $7 $8
for arg in "$@"
do
# no need to post process if we are doing a clean
exit
elif [[ $arg == cleanall ]]; then
- make -C BaseTools/ clean
+ make -C $EDK_TOOLS_PATH clean
make -C $WORKSPACE/BeagleBoardPkg/Tools clean
exit