aboutsummaryrefslogtreecommitdiffstats
path: root/roms/edk2/BaseTools/Bin
diff options
context:
space:
mode:
Diffstat (limited to 'roms/edk2/BaseTools/Bin')
-rwxr-xr-xroms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/BootSectImage29
-rwxr-xr-xroms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/BuildEnv5
-rwxr-xr-xroms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/Ecc14
-rwxr-xr-xroms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/EfiLdrImage29
-rwxr-xr-xroms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/EfiRom29
-rwxr-xr-xroms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/GenCrc3229
-rwxr-xr-xroms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/GenDepex14
-rwxr-xr-xroms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/GenFds14
-rwxr-xr-xroms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/GenFfs29
-rwxr-xr-xroms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/GenFv29
-rwxr-xr-xroms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/GenFw29
-rwxr-xr-xroms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/GenPage29
-rwxr-xr-xroms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/GenSec29
-rwxr-xr-xroms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/GenVtf29
-rwxr-xr-xroms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/GnuGenBootSector29
-rwxr-xr-xroms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/LzmaCompress29
-rwxr-xr-xroms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/LzmaF86Compress17
-rwxr-xr-xroms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/RunBinToolFromBuildDir29
-rwxr-xr-xroms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/RunToolFromSource5
-rwxr-xr-xroms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/Split29
-rwxr-xr-xroms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/TargetTool14
-rwxr-xr-xroms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/TianoCompress29
-rwxr-xr-xroms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/Trim14
-rwxr-xr-xroms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/VfrCompile29
-rwxr-xr-xroms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/VolInfo29
-rwxr-xr-xroms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/armcc_wrapper.py87
-rwxr-xr-xroms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/build14
-rw-r--r--roms/edk2/BaseTools/Bin/Darwin-i386/Arm/DEBUG_XCODE31/CompilerIntrinsicsLib.libbin0 -> 36072 bytes
-rw-r--r--roms/edk2/BaseTools/Bin/Darwin-i386/Arm/DEBUG_XCODE32/CompilerIntrinsicsLib.libbin0 -> 36072 bytes
-rw-r--r--roms/edk2/BaseTools/Bin/Darwin-i386/Arm/RELEASE_XCODE31/CompilerIntrinsicsLib.libbin0 -> 11504 bytes
-rw-r--r--roms/edk2/BaseTools/Bin/Darwin-i386/Arm/RELEASE_XCODE32/CompilerIntrinsicsLib.libbin0 -> 11504 bytes
-rw-r--r--roms/edk2/BaseTools/Bin/gcc_aarch64_linux_ext_dep.yaml21
-rw-r--r--roms/edk2/BaseTools/Bin/gcc_arm_linux_ext_dep.yaml21
-rw-r--r--roms/edk2/BaseTools/Bin/gcc_riscv64_unknown_ext_dep.yaml22
-rw-r--r--roms/edk2/BaseTools/Bin/iasl_ext_dep.yaml21
-rw-r--r--roms/edk2/BaseTools/Bin/nasm_ext_dep.yaml18
36 files changed, 794 insertions, 0 deletions
diff --git a/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/BootSectImage b/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/BootSectImage
new file mode 100755
index 000000000..0945d86d9
--- /dev/null
+++ b/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/BootSectImage
@@ -0,0 +1,29 @@
+#!/usr/bin/env bash
+
+full_cmd=${BASH_SOURCE:-$0} # see http://mywiki.wooledge.org/BashFAQ/028 for a discussion of why $0 is not a good choice here
+dir=$(dirname "$full_cmd")
+cmd=${full_cmd##*/}
+
+if [ -n "$WORKSPACE" ] && [ -e "$WORKSPACE/Conf/BaseToolsCBinaries" ]
+then
+ exec "$WORKSPACE/Conf/BaseToolsCBinaries/$cmd"
+elif [ -n "$WORKSPACE" ] && [ -e "$EDK_TOOLS_PATH/Source/C" ]
+then
+ if [ ! -e "$EDK_TOOLS_PATH/Source/C/bin/$cmd" ]
+ then
+ echo "BaseTools C Tool binary was not found ($cmd)"
+ echo "You may need to run:"
+ echo " make -C $EDK_TOOLS_PATH/Source/C"
+ else
+ exec "$EDK_TOOLS_PATH/Source/C/bin/$cmd" "$@"
+ fi
+elif [ -e "$dir/../../Source/C/bin/$cmd" ]
+then
+ exec "$dir/../../Source/C/bin/$cmd" "$@"
+else
+ echo "Unable to find the real '$cmd' to run"
+ echo "This message was printed by"
+ echo " $0"
+ exit 127
+fi
+
diff --git a/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/BuildEnv b/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/BuildEnv
new file mode 100755
index 000000000..2cb8b86a9
--- /dev/null
+++ b/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/BuildEnv
@@ -0,0 +1,5 @@
+#!/usr/bin/env bash
+#python `dirname $0`/RunToolFromSource.py `basename $0` $*
+PYTHONPATH="`dirname $0`/../../Source/Python" \
+ python "`dirname $0`/../../Source/Python"/`basename $0`/`basename $0`.py $*
+
diff --git a/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/Ecc b/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/Ecc
new file mode 100755
index 000000000..1ba451cf5
--- /dev/null
+++ b/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/Ecc
@@ -0,0 +1,14 @@
+#!/usr/bin/env bash
+#python `dirname $0`/RunToolFromSource.py `basename $0` $*
+
+# If a ${PYTHON_COMMAND} command is available, use it in preference to python
+if command -v ${PYTHON_COMMAND} >/dev/null 2>&1; then
+ python_exe=${PYTHON_COMMAND}
+fi
+
+full_cmd=${BASH_SOURCE:-$0} # see http://mywiki.wooledge.org/BashFAQ/028 for a discussion of why $0 is not a good choice here
+dir=$(dirname "$full_cmd")
+cmd=${full_cmd##*/}
+
+export PYTHONPATH="$dir/../../Source/Python"
+exec "${python_exe:-python}" "$dir/../../Source/Python/$cmd/$cmd.py" "$@"
diff --git a/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/EfiLdrImage b/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/EfiLdrImage
new file mode 100755
index 000000000..0945d86d9
--- /dev/null
+++ b/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/EfiLdrImage
@@ -0,0 +1,29 @@
+#!/usr/bin/env bash
+
+full_cmd=${BASH_SOURCE:-$0} # see http://mywiki.wooledge.org/BashFAQ/028 for a discussion of why $0 is not a good choice here
+dir=$(dirname "$full_cmd")
+cmd=${full_cmd##*/}
+
+if [ -n "$WORKSPACE" ] && [ -e "$WORKSPACE/Conf/BaseToolsCBinaries" ]
+then
+ exec "$WORKSPACE/Conf/BaseToolsCBinaries/$cmd"
+elif [ -n "$WORKSPACE" ] && [ -e "$EDK_TOOLS_PATH/Source/C" ]
+then
+ if [ ! -e "$EDK_TOOLS_PATH/Source/C/bin/$cmd" ]
+ then
+ echo "BaseTools C Tool binary was not found ($cmd)"
+ echo "You may need to run:"
+ echo " make -C $EDK_TOOLS_PATH/Source/C"
+ else
+ exec "$EDK_TOOLS_PATH/Source/C/bin/$cmd" "$@"
+ fi
+elif [ -e "$dir/../../Source/C/bin/$cmd" ]
+then
+ exec "$dir/../../Source/C/bin/$cmd" "$@"
+else
+ echo "Unable to find the real '$cmd' to run"
+ echo "This message was printed by"
+ echo " $0"
+ exit 127
+fi
+
diff --git a/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/EfiRom b/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/EfiRom
new file mode 100755
index 000000000..0945d86d9
--- /dev/null
+++ b/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/EfiRom
@@ -0,0 +1,29 @@
+#!/usr/bin/env bash
+
+full_cmd=${BASH_SOURCE:-$0} # see http://mywiki.wooledge.org/BashFAQ/028 for a discussion of why $0 is not a good choice here
+dir=$(dirname "$full_cmd")
+cmd=${full_cmd##*/}
+
+if [ -n "$WORKSPACE" ] && [ -e "$WORKSPACE/Conf/BaseToolsCBinaries" ]
+then
+ exec "$WORKSPACE/Conf/BaseToolsCBinaries/$cmd"
+elif [ -n "$WORKSPACE" ] && [ -e "$EDK_TOOLS_PATH/Source/C" ]
+then
+ if [ ! -e "$EDK_TOOLS_PATH/Source/C/bin/$cmd" ]
+ then
+ echo "BaseTools C Tool binary was not found ($cmd)"
+ echo "You may need to run:"
+ echo " make -C $EDK_TOOLS_PATH/Source/C"
+ else
+ exec "$EDK_TOOLS_PATH/Source/C/bin/$cmd" "$@"
+ fi
+elif [ -e "$dir/../../Source/C/bin/$cmd" ]
+then
+ exec "$dir/../../Source/C/bin/$cmd" "$@"
+else
+ echo "Unable to find the real '$cmd' to run"
+ echo "This message was printed by"
+ echo " $0"
+ exit 127
+fi
+
diff --git a/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/GenCrc32 b/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/GenCrc32
new file mode 100755
index 000000000..0945d86d9
--- /dev/null
+++ b/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/GenCrc32
@@ -0,0 +1,29 @@
+#!/usr/bin/env bash
+
+full_cmd=${BASH_SOURCE:-$0} # see http://mywiki.wooledge.org/BashFAQ/028 for a discussion of why $0 is not a good choice here
+dir=$(dirname "$full_cmd")
+cmd=${full_cmd##*/}
+
+if [ -n "$WORKSPACE" ] && [ -e "$WORKSPACE/Conf/BaseToolsCBinaries" ]
+then
+ exec "$WORKSPACE/Conf/BaseToolsCBinaries/$cmd"
+elif [ -n "$WORKSPACE" ] && [ -e "$EDK_TOOLS_PATH/Source/C" ]
+then
+ if [ ! -e "$EDK_TOOLS_PATH/Source/C/bin/$cmd" ]
+ then
+ echo "BaseTools C Tool binary was not found ($cmd)"
+ echo "You may need to run:"
+ echo " make -C $EDK_TOOLS_PATH/Source/C"
+ else
+ exec "$EDK_TOOLS_PATH/Source/C/bin/$cmd" "$@"
+ fi
+elif [ -e "$dir/../../Source/C/bin/$cmd" ]
+then
+ exec "$dir/../../Source/C/bin/$cmd" "$@"
+else
+ echo "Unable to find the real '$cmd' to run"
+ echo "This message was printed by"
+ echo " $0"
+ exit 127
+fi
+
diff --git a/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/GenDepex b/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/GenDepex
new file mode 100755
index 000000000..1ba451cf5
--- /dev/null
+++ b/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/GenDepex
@@ -0,0 +1,14 @@
+#!/usr/bin/env bash
+#python `dirname $0`/RunToolFromSource.py `basename $0` $*
+
+# If a ${PYTHON_COMMAND} command is available, use it in preference to python
+if command -v ${PYTHON_COMMAND} >/dev/null 2>&1; then
+ python_exe=${PYTHON_COMMAND}
+fi
+
+full_cmd=${BASH_SOURCE:-$0} # see http://mywiki.wooledge.org/BashFAQ/028 for a discussion of why $0 is not a good choice here
+dir=$(dirname "$full_cmd")
+cmd=${full_cmd##*/}
+
+export PYTHONPATH="$dir/../../Source/Python"
+exec "${python_exe:-python}" "$dir/../../Source/Python/$cmd/$cmd.py" "$@"
diff --git a/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/GenFds b/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/GenFds
new file mode 100755
index 000000000..1ba451cf5
--- /dev/null
+++ b/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/GenFds
@@ -0,0 +1,14 @@
+#!/usr/bin/env bash
+#python `dirname $0`/RunToolFromSource.py `basename $0` $*
+
+# If a ${PYTHON_COMMAND} command is available, use it in preference to python
+if command -v ${PYTHON_COMMAND} >/dev/null 2>&1; then
+ python_exe=${PYTHON_COMMAND}
+fi
+
+full_cmd=${BASH_SOURCE:-$0} # see http://mywiki.wooledge.org/BashFAQ/028 for a discussion of why $0 is not a good choice here
+dir=$(dirname "$full_cmd")
+cmd=${full_cmd##*/}
+
+export PYTHONPATH="$dir/../../Source/Python"
+exec "${python_exe:-python}" "$dir/../../Source/Python/$cmd/$cmd.py" "$@"
diff --git a/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/GenFfs b/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/GenFfs
new file mode 100755
index 000000000..0945d86d9
--- /dev/null
+++ b/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/GenFfs
@@ -0,0 +1,29 @@
+#!/usr/bin/env bash
+
+full_cmd=${BASH_SOURCE:-$0} # see http://mywiki.wooledge.org/BashFAQ/028 for a discussion of why $0 is not a good choice here
+dir=$(dirname "$full_cmd")
+cmd=${full_cmd##*/}
+
+if [ -n "$WORKSPACE" ] && [ -e "$WORKSPACE/Conf/BaseToolsCBinaries" ]
+then
+ exec "$WORKSPACE/Conf/BaseToolsCBinaries/$cmd"
+elif [ -n "$WORKSPACE" ] && [ -e "$EDK_TOOLS_PATH/Source/C" ]
+then
+ if [ ! -e "$EDK_TOOLS_PATH/Source/C/bin/$cmd" ]
+ then
+ echo "BaseTools C Tool binary was not found ($cmd)"
+ echo "You may need to run:"
+ echo " make -C $EDK_TOOLS_PATH/Source/C"
+ else
+ exec "$EDK_TOOLS_PATH/Source/C/bin/$cmd" "$@"
+ fi
+elif [ -e "$dir/../../Source/C/bin/$cmd" ]
+then
+ exec "$dir/../../Source/C/bin/$cmd" "$@"
+else
+ echo "Unable to find the real '$cmd' to run"
+ echo "This message was printed by"
+ echo " $0"
+ exit 127
+fi
+
diff --git a/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/GenFv b/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/GenFv
new file mode 100755
index 000000000..0945d86d9
--- /dev/null
+++ b/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/GenFv
@@ -0,0 +1,29 @@
+#!/usr/bin/env bash
+
+full_cmd=${BASH_SOURCE:-$0} # see http://mywiki.wooledge.org/BashFAQ/028 for a discussion of why $0 is not a good choice here
+dir=$(dirname "$full_cmd")
+cmd=${full_cmd##*/}
+
+if [ -n "$WORKSPACE" ] && [ -e "$WORKSPACE/Conf/BaseToolsCBinaries" ]
+then
+ exec "$WORKSPACE/Conf/BaseToolsCBinaries/$cmd"
+elif [ -n "$WORKSPACE" ] && [ -e "$EDK_TOOLS_PATH/Source/C" ]
+then
+ if [ ! -e "$EDK_TOOLS_PATH/Source/C/bin/$cmd" ]
+ then
+ echo "BaseTools C Tool binary was not found ($cmd)"
+ echo "You may need to run:"
+ echo " make -C $EDK_TOOLS_PATH/Source/C"
+ else
+ exec "$EDK_TOOLS_PATH/Source/C/bin/$cmd" "$@"
+ fi
+elif [ -e "$dir/../../Source/C/bin/$cmd" ]
+then
+ exec "$dir/../../Source/C/bin/$cmd" "$@"
+else
+ echo "Unable to find the real '$cmd' to run"
+ echo "This message was printed by"
+ echo " $0"
+ exit 127
+fi
+
diff --git a/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/GenFw b/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/GenFw
new file mode 100755
index 000000000..0945d86d9
--- /dev/null
+++ b/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/GenFw
@@ -0,0 +1,29 @@
+#!/usr/bin/env bash
+
+full_cmd=${BASH_SOURCE:-$0} # see http://mywiki.wooledge.org/BashFAQ/028 for a discussion of why $0 is not a good choice here
+dir=$(dirname "$full_cmd")
+cmd=${full_cmd##*/}
+
+if [ -n "$WORKSPACE" ] && [ -e "$WORKSPACE/Conf/BaseToolsCBinaries" ]
+then
+ exec "$WORKSPACE/Conf/BaseToolsCBinaries/$cmd"
+elif [ -n "$WORKSPACE" ] && [ -e "$EDK_TOOLS_PATH/Source/C" ]
+then
+ if [ ! -e "$EDK_TOOLS_PATH/Source/C/bin/$cmd" ]
+ then
+ echo "BaseTools C Tool binary was not found ($cmd)"
+ echo "You may need to run:"
+ echo " make -C $EDK_TOOLS_PATH/Source/C"
+ else
+ exec "$EDK_TOOLS_PATH/Source/C/bin/$cmd" "$@"
+ fi
+elif [ -e "$dir/../../Source/C/bin/$cmd" ]
+then
+ exec "$dir/../../Source/C/bin/$cmd" "$@"
+else
+ echo "Unable to find the real '$cmd' to run"
+ echo "This message was printed by"
+ echo " $0"
+ exit 127
+fi
+
diff --git a/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/GenPage b/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/GenPage
new file mode 100755
index 000000000..0945d86d9
--- /dev/null
+++ b/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/GenPage
@@ -0,0 +1,29 @@
+#!/usr/bin/env bash
+
+full_cmd=${BASH_SOURCE:-$0} # see http://mywiki.wooledge.org/BashFAQ/028 for a discussion of why $0 is not a good choice here
+dir=$(dirname "$full_cmd")
+cmd=${full_cmd##*/}
+
+if [ -n "$WORKSPACE" ] && [ -e "$WORKSPACE/Conf/BaseToolsCBinaries" ]
+then
+ exec "$WORKSPACE/Conf/BaseToolsCBinaries/$cmd"
+elif [ -n "$WORKSPACE" ] && [ -e "$EDK_TOOLS_PATH/Source/C" ]
+then
+ if [ ! -e "$EDK_TOOLS_PATH/Source/C/bin/$cmd" ]
+ then
+ echo "BaseTools C Tool binary was not found ($cmd)"
+ echo "You may need to run:"
+ echo " make -C $EDK_TOOLS_PATH/Source/C"
+ else
+ exec "$EDK_TOOLS_PATH/Source/C/bin/$cmd" "$@"
+ fi
+elif [ -e "$dir/../../Source/C/bin/$cmd" ]
+then
+ exec "$dir/../../Source/C/bin/$cmd" "$@"
+else
+ echo "Unable to find the real '$cmd' to run"
+ echo "This message was printed by"
+ echo " $0"
+ exit 127
+fi
+
diff --git a/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/GenSec b/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/GenSec
new file mode 100755
index 000000000..0945d86d9
--- /dev/null
+++ b/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/GenSec
@@ -0,0 +1,29 @@
+#!/usr/bin/env bash
+
+full_cmd=${BASH_SOURCE:-$0} # see http://mywiki.wooledge.org/BashFAQ/028 for a discussion of why $0 is not a good choice here
+dir=$(dirname "$full_cmd")
+cmd=${full_cmd##*/}
+
+if [ -n "$WORKSPACE" ] && [ -e "$WORKSPACE/Conf/BaseToolsCBinaries" ]
+then
+ exec "$WORKSPACE/Conf/BaseToolsCBinaries/$cmd"
+elif [ -n "$WORKSPACE" ] && [ -e "$EDK_TOOLS_PATH/Source/C" ]
+then
+ if [ ! -e "$EDK_TOOLS_PATH/Source/C/bin/$cmd" ]
+ then
+ echo "BaseTools C Tool binary was not found ($cmd)"
+ echo "You may need to run:"
+ echo " make -C $EDK_TOOLS_PATH/Source/C"
+ else
+ exec "$EDK_TOOLS_PATH/Source/C/bin/$cmd" "$@"
+ fi
+elif [ -e "$dir/../../Source/C/bin/$cmd" ]
+then
+ exec "$dir/../../Source/C/bin/$cmd" "$@"
+else
+ echo "Unable to find the real '$cmd' to run"
+ echo "This message was printed by"
+ echo " $0"
+ exit 127
+fi
+
diff --git a/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/GenVtf b/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/GenVtf
new file mode 100755
index 000000000..0945d86d9
--- /dev/null
+++ b/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/GenVtf
@@ -0,0 +1,29 @@
+#!/usr/bin/env bash
+
+full_cmd=${BASH_SOURCE:-$0} # see http://mywiki.wooledge.org/BashFAQ/028 for a discussion of why $0 is not a good choice here
+dir=$(dirname "$full_cmd")
+cmd=${full_cmd##*/}
+
+if [ -n "$WORKSPACE" ] && [ -e "$WORKSPACE/Conf/BaseToolsCBinaries" ]
+then
+ exec "$WORKSPACE/Conf/BaseToolsCBinaries/$cmd"
+elif [ -n "$WORKSPACE" ] && [ -e "$EDK_TOOLS_PATH/Source/C" ]
+then
+ if [ ! -e "$EDK_TOOLS_PATH/Source/C/bin/$cmd" ]
+ then
+ echo "BaseTools C Tool binary was not found ($cmd)"
+ echo "You may need to run:"
+ echo " make -C $EDK_TOOLS_PATH/Source/C"
+ else
+ exec "$EDK_TOOLS_PATH/Source/C/bin/$cmd" "$@"
+ fi
+elif [ -e "$dir/../../Source/C/bin/$cmd" ]
+then
+ exec "$dir/../../Source/C/bin/$cmd" "$@"
+else
+ echo "Unable to find the real '$cmd' to run"
+ echo "This message was printed by"
+ echo " $0"
+ exit 127
+fi
+
diff --git a/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/GnuGenBootSector b/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/GnuGenBootSector
new file mode 100755
index 000000000..0945d86d9
--- /dev/null
+++ b/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/GnuGenBootSector
@@ -0,0 +1,29 @@
+#!/usr/bin/env bash
+
+full_cmd=${BASH_SOURCE:-$0} # see http://mywiki.wooledge.org/BashFAQ/028 for a discussion of why $0 is not a good choice here
+dir=$(dirname "$full_cmd")
+cmd=${full_cmd##*/}
+
+if [ -n "$WORKSPACE" ] && [ -e "$WORKSPACE/Conf/BaseToolsCBinaries" ]
+then
+ exec "$WORKSPACE/Conf/BaseToolsCBinaries/$cmd"
+elif [ -n "$WORKSPACE" ] && [ -e "$EDK_TOOLS_PATH/Source/C" ]
+then
+ if [ ! -e "$EDK_TOOLS_PATH/Source/C/bin/$cmd" ]
+ then
+ echo "BaseTools C Tool binary was not found ($cmd)"
+ echo "You may need to run:"
+ echo " make -C $EDK_TOOLS_PATH/Source/C"
+ else
+ exec "$EDK_TOOLS_PATH/Source/C/bin/$cmd" "$@"
+ fi
+elif [ -e "$dir/../../Source/C/bin/$cmd" ]
+then
+ exec "$dir/../../Source/C/bin/$cmd" "$@"
+else
+ echo "Unable to find the real '$cmd' to run"
+ echo "This message was printed by"
+ echo " $0"
+ exit 127
+fi
+
diff --git a/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/LzmaCompress b/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/LzmaCompress
new file mode 100755
index 000000000..0945d86d9
--- /dev/null
+++ b/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/LzmaCompress
@@ -0,0 +1,29 @@
+#!/usr/bin/env bash
+
+full_cmd=${BASH_SOURCE:-$0} # see http://mywiki.wooledge.org/BashFAQ/028 for a discussion of why $0 is not a good choice here
+dir=$(dirname "$full_cmd")
+cmd=${full_cmd##*/}
+
+if [ -n "$WORKSPACE" ] && [ -e "$WORKSPACE/Conf/BaseToolsCBinaries" ]
+then
+ exec "$WORKSPACE/Conf/BaseToolsCBinaries/$cmd"
+elif [ -n "$WORKSPACE" ] && [ -e "$EDK_TOOLS_PATH/Source/C" ]
+then
+ if [ ! -e "$EDK_TOOLS_PATH/Source/C/bin/$cmd" ]
+ then
+ echo "BaseTools C Tool binary was not found ($cmd)"
+ echo "You may need to run:"
+ echo " make -C $EDK_TOOLS_PATH/Source/C"
+ else
+ exec "$EDK_TOOLS_PATH/Source/C/bin/$cmd" "$@"
+ fi
+elif [ -e "$dir/../../Source/C/bin/$cmd" ]
+then
+ exec "$dir/../../Source/C/bin/$cmd" "$@"
+else
+ echo "Unable to find the real '$cmd' to run"
+ echo "This message was printed by"
+ echo " $0"
+ exit 127
+fi
+
diff --git a/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/LzmaF86Compress b/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/LzmaF86Compress
new file mode 100755
index 000000000..c712b131b
--- /dev/null
+++ b/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/LzmaF86Compress
@@ -0,0 +1,17 @@
+#!/usr/bin/env bash
+#
+# This script will exec LzmaCompress tool with --f86 option that enables converter for x86 code.
+#
+# Copyright (c) 2012, Intel Corporation. All rights reserved.<BR>
+# SPDX-License-Identifier: BSD-2-Clause-Patent
+#
+
+for arg; do
+ case $arg in
+ -e|-d)
+ set -- "$@" --f86
+ break
+ ;;
+esac
+
+exec LzmaCompress "$@"
diff --git a/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/RunBinToolFromBuildDir b/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/RunBinToolFromBuildDir
new file mode 100755
index 000000000..4821d24fa
--- /dev/null
+++ b/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/RunBinToolFromBuildDir
@@ -0,0 +1,29 @@
+#!/usr/bin/env bash
+#python `dirname $0`/RunToolFromSource.py `basename $0` $*
+#exec `dirname $0`/../../../../C/bin/`basename $0` $*
+
+TOOL_BASENAME=`basename $0`
+
+if [ -n "$WORKSPACE" -a -e $WORKSPACE/Conf/BaseToolsCBinaries ]
+then
+ exec $WORKSPACE/Conf/BaseToolsCBinaries/$TOOL_BASENAME
+elif [ -n "$WORKSPACE" -a -e $EDK_TOOLS_PATH/Source/C ]
+then
+ if [ ! -e $EDK_TOOLS_PATH/Source/C/bin/$TOOL_BASENAME ]
+ then
+ echo BaseTools C Tool binary was not found \($TOOL_BASENAME\)
+ echo You may need to run:
+ echo " make -C $EDK_TOOLS_PATH/Source/C"
+ else
+ exec $EDK_TOOLS_PATH/Source/C/bin/$TOOL_BASENAME $*
+ fi
+elif [ -e `dirname $0`/../../Source/C/bin/$TOOL_BASENAME ]
+then
+ exec `dirname $0`/../../Source/C/bin/$TOOL_BASENAME $*
+else
+ echo Unable to find the real \'$TOOL_BASENAME\' to run
+ echo This message was printed by
+ echo " $0"
+ exit -1
+fi
+
diff --git a/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/RunToolFromSource b/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/RunToolFromSource
new file mode 100755
index 000000000..2cb8b86a9
--- /dev/null
+++ b/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/RunToolFromSource
@@ -0,0 +1,5 @@
+#!/usr/bin/env bash
+#python `dirname $0`/RunToolFromSource.py `basename $0` $*
+PYTHONPATH="`dirname $0`/../../Source/Python" \
+ python "`dirname $0`/../../Source/Python"/`basename $0`/`basename $0`.py $*
+
diff --git a/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/Split b/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/Split
new file mode 100755
index 000000000..0945d86d9
--- /dev/null
+++ b/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/Split
@@ -0,0 +1,29 @@
+#!/usr/bin/env bash
+
+full_cmd=${BASH_SOURCE:-$0} # see http://mywiki.wooledge.org/BashFAQ/028 for a discussion of why $0 is not a good choice here
+dir=$(dirname "$full_cmd")
+cmd=${full_cmd##*/}
+
+if [ -n "$WORKSPACE" ] && [ -e "$WORKSPACE/Conf/BaseToolsCBinaries" ]
+then
+ exec "$WORKSPACE/Conf/BaseToolsCBinaries/$cmd"
+elif [ -n "$WORKSPACE" ] && [ -e "$EDK_TOOLS_PATH/Source/C" ]
+then
+ if [ ! -e "$EDK_TOOLS_PATH/Source/C/bin/$cmd" ]
+ then
+ echo "BaseTools C Tool binary was not found ($cmd)"
+ echo "You may need to run:"
+ echo " make -C $EDK_TOOLS_PATH/Source/C"
+ else
+ exec "$EDK_TOOLS_PATH/Source/C/bin/$cmd" "$@"
+ fi
+elif [ -e "$dir/../../Source/C/bin/$cmd" ]
+then
+ exec "$dir/../../Source/C/bin/$cmd" "$@"
+else
+ echo "Unable to find the real '$cmd' to run"
+ echo "This message was printed by"
+ echo " $0"
+ exit 127
+fi
+
diff --git a/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/TargetTool b/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/TargetTool
new file mode 100755
index 000000000..1ba451cf5
--- /dev/null
+++ b/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/TargetTool
@@ -0,0 +1,14 @@
+#!/usr/bin/env bash
+#python `dirname $0`/RunToolFromSource.py `basename $0` $*
+
+# If a ${PYTHON_COMMAND} command is available, use it in preference to python
+if command -v ${PYTHON_COMMAND} >/dev/null 2>&1; then
+ python_exe=${PYTHON_COMMAND}
+fi
+
+full_cmd=${BASH_SOURCE:-$0} # see http://mywiki.wooledge.org/BashFAQ/028 for a discussion of why $0 is not a good choice here
+dir=$(dirname "$full_cmd")
+cmd=${full_cmd##*/}
+
+export PYTHONPATH="$dir/../../Source/Python"
+exec "${python_exe:-python}" "$dir/../../Source/Python/$cmd/$cmd.py" "$@"
diff --git a/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/TianoCompress b/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/TianoCompress
new file mode 100755
index 000000000..0945d86d9
--- /dev/null
+++ b/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/TianoCompress
@@ -0,0 +1,29 @@
+#!/usr/bin/env bash
+
+full_cmd=${BASH_SOURCE:-$0} # see http://mywiki.wooledge.org/BashFAQ/028 for a discussion of why $0 is not a good choice here
+dir=$(dirname "$full_cmd")
+cmd=${full_cmd##*/}
+
+if [ -n "$WORKSPACE" ] && [ -e "$WORKSPACE/Conf/BaseToolsCBinaries" ]
+then
+ exec "$WORKSPACE/Conf/BaseToolsCBinaries/$cmd"
+elif [ -n "$WORKSPACE" ] && [ -e "$EDK_TOOLS_PATH/Source/C" ]
+then
+ if [ ! -e "$EDK_TOOLS_PATH/Source/C/bin/$cmd" ]
+ then
+ echo "BaseTools C Tool binary was not found ($cmd)"
+ echo "You may need to run:"
+ echo " make -C $EDK_TOOLS_PATH/Source/C"
+ else
+ exec "$EDK_TOOLS_PATH/Source/C/bin/$cmd" "$@"
+ fi
+elif [ -e "$dir/../../Source/C/bin/$cmd" ]
+then
+ exec "$dir/../../Source/C/bin/$cmd" "$@"
+else
+ echo "Unable to find the real '$cmd' to run"
+ echo "This message was printed by"
+ echo " $0"
+ exit 127
+fi
+
diff --git a/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/Trim b/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/Trim
new file mode 100755
index 000000000..b53b79bba
--- /dev/null
+++ b/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/Trim
@@ -0,0 +1,14 @@
+#!/usr/bin/env bash
+#python `dirname $0`/RunToolFromSource.py `basename $0` $*
+
+# If a ${PYTHON_COMMAND} command is available, use it in preference to python
+if command -v ${PYTHON_COMMAND} >/dev/null 2>&1; then
+ python_exe=${PYTHON_COMMAND}
+fi
+
+full_cmd=${BASH_SOURCE:-$0} # see http://mywiki.wooledge.org/BashFAQ/028 for a discussion of why $0 is not a good choice here
+dir=$(dirname "$full_cmd")
+exe=$(basename "$full_cmd")
+
+export PYTHONPATH="$dir/../../Source/Python"
+exec "${python_exe:-python}" "$dir/../../Source/Python/$exe/$exe.py" "$@"
diff --git a/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/VfrCompile b/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/VfrCompile
new file mode 100755
index 000000000..0945d86d9
--- /dev/null
+++ b/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/VfrCompile
@@ -0,0 +1,29 @@
+#!/usr/bin/env bash
+
+full_cmd=${BASH_SOURCE:-$0} # see http://mywiki.wooledge.org/BashFAQ/028 for a discussion of why $0 is not a good choice here
+dir=$(dirname "$full_cmd")
+cmd=${full_cmd##*/}
+
+if [ -n "$WORKSPACE" ] && [ -e "$WORKSPACE/Conf/BaseToolsCBinaries" ]
+then
+ exec "$WORKSPACE/Conf/BaseToolsCBinaries/$cmd"
+elif [ -n "$WORKSPACE" ] && [ -e "$EDK_TOOLS_PATH/Source/C" ]
+then
+ if [ ! -e "$EDK_TOOLS_PATH/Source/C/bin/$cmd" ]
+ then
+ echo "BaseTools C Tool binary was not found ($cmd)"
+ echo "You may need to run:"
+ echo " make -C $EDK_TOOLS_PATH/Source/C"
+ else
+ exec "$EDK_TOOLS_PATH/Source/C/bin/$cmd" "$@"
+ fi
+elif [ -e "$dir/../../Source/C/bin/$cmd" ]
+then
+ exec "$dir/../../Source/C/bin/$cmd" "$@"
+else
+ echo "Unable to find the real '$cmd' to run"
+ echo "This message was printed by"
+ echo " $0"
+ exit 127
+fi
+
diff --git a/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/VolInfo b/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/VolInfo
new file mode 100755
index 000000000..0945d86d9
--- /dev/null
+++ b/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/VolInfo
@@ -0,0 +1,29 @@
+#!/usr/bin/env bash
+
+full_cmd=${BASH_SOURCE:-$0} # see http://mywiki.wooledge.org/BashFAQ/028 for a discussion of why $0 is not a good choice here
+dir=$(dirname "$full_cmd")
+cmd=${full_cmd##*/}
+
+if [ -n "$WORKSPACE" ] && [ -e "$WORKSPACE/Conf/BaseToolsCBinaries" ]
+then
+ exec "$WORKSPACE/Conf/BaseToolsCBinaries/$cmd"
+elif [ -n "$WORKSPACE" ] && [ -e "$EDK_TOOLS_PATH/Source/C" ]
+then
+ if [ ! -e "$EDK_TOOLS_PATH/Source/C/bin/$cmd" ]
+ then
+ echo "BaseTools C Tool binary was not found ($cmd)"
+ echo "You may need to run:"
+ echo " make -C $EDK_TOOLS_PATH/Source/C"
+ else
+ exec "$EDK_TOOLS_PATH/Source/C/bin/$cmd" "$@"
+ fi
+elif [ -e "$dir/../../Source/C/bin/$cmd" ]
+then
+ exec "$dir/../../Source/C/bin/$cmd" "$@"
+else
+ echo "Unable to find the real '$cmd' to run"
+ echo "This message was printed by"
+ echo " $0"
+ exit 127
+fi
+
diff --git a/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/armcc_wrapper.py b/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/armcc_wrapper.py
new file mode 100755
index 000000000..3035732d5
--- /dev/null
+++ b/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/armcc_wrapper.py
@@ -0,0 +1,87 @@
+#!/usr/bin/env python
+#
+# Copyright (c) 2008 - 2009, Apple Inc. All rights reserved.<BR>
+#
+# SPDX-License-Identifier: BSD-2-Clause-Patent
+#
+
+#
+# ARMCC tools do not support cygwin paths. Ths script converts cygwin paths to DOS paths
+# in any arguments.
+#
+# armcc_wrapper.py ToolToExec [command line to convert]
+#
+# anything with the / will be converted via cygpath cygwin call or manually.
+# -I/cygpath/c/example is a special case as you can not pass -I to cygpath
+#
+# ExceptionList if a tool takes an argument with a / add it to the exception list
+#
+from __future__ import print_function
+import sys
+import os
+import subprocess
+import pipes
+
+#
+# Convert using cygpath command line tool
+# Currently not used, but just in case we need it in the future
+#
+def ConvertCygPathToDosViacygpath(CygPath):
+ p = subprocess.Popen("cygpath -m " + pipes.quote(CygPath), shell=True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT, close_fds=True)
+ return p.stdout.read().strip()
+
+#
+#
+#
+def ConvertCygPathToDos(CygPath):
+ if CygPath.find("/cygdrive/") == 0:
+ # convert /cygdrive/c/Xyz to c:/Xyz
+ DosPath = CygPath[10] + ':' + CygPath[11:]
+ else:
+ DosPath = CygPath
+
+ # pipes.quote will add the extra \\ for us.
+ return DosPath.replace('/', '\\')
+
+
+# we receive our options as a list, but we will be passing them to the shell as a line
+# this means we have to requote things as they will get one round of unquoting.
+# we can't set "shell=False" because we are running commands from the PATH and
+# if you don't use the shell you don't get a PATH search.
+def main(argv):
+
+ # use 1st argument as name of tool to call
+ Command = pipes.quote(sys.argv[1]);
+
+ ExceptionList = ["/interwork"]
+
+ for arg in argv:
+ if arg.find('/') == -1:
+ # if we don't need to convert just add to the command line
+ Command = Command + ' ' + pipes.quote(arg)
+ elif arg in ExceptionList:
+ # if it is in the list, then don't do a cygpath
+ # assembler stuff after --apcs has the /.
+ Command = Command + ' ' + pipes.quote(arg)
+ else:
+ if ((arg[0] == '-') and (arg[1] == 'I' or arg[1] == 'i')):
+ CygPath = arg[0] + arg[1] + ConvertCygPathToDos(arg[2:])
+ else:
+ CygPath = ConvertCygPathToDos(arg)
+
+ Command = Command + ' ' + pipes.quote(CygPath)
+
+ # call the real tool with the converted paths
+ return subprocess.call(Command, shell=True)
+
+
+if __name__ == "__main__":
+ try:
+ ret = main(sys.argv[2:])
+
+ except:
+ print("exiting: exception from " + sys.argv[0])
+ ret = 2
+
+ sys.exit(ret)
+
diff --git a/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/build b/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/build
new file mode 100755
index 000000000..1ba451cf5
--- /dev/null
+++ b/roms/edk2/BaseTools/Bin/CYGWIN_NT-5.1-i686/build
@@ -0,0 +1,14 @@
+#!/usr/bin/env bash
+#python `dirname $0`/RunToolFromSource.py `basename $0` $*
+
+# If a ${PYTHON_COMMAND} command is available, use it in preference to python
+if command -v ${PYTHON_COMMAND} >/dev/null 2>&1; then
+ python_exe=${PYTHON_COMMAND}
+fi
+
+full_cmd=${BASH_SOURCE:-$0} # see http://mywiki.wooledge.org/BashFAQ/028 for a discussion of why $0 is not a good choice here
+dir=$(dirname "$full_cmd")
+cmd=${full_cmd##*/}
+
+export PYTHONPATH="$dir/../../Source/Python"
+exec "${python_exe:-python}" "$dir/../../Source/Python/$cmd/$cmd.py" "$@"
diff --git a/roms/edk2/BaseTools/Bin/Darwin-i386/Arm/DEBUG_XCODE31/CompilerIntrinsicsLib.lib b/roms/edk2/BaseTools/Bin/Darwin-i386/Arm/DEBUG_XCODE31/CompilerIntrinsicsLib.lib
new file mode 100644
index 000000000..79964fe1b
--- /dev/null
+++ b/roms/edk2/BaseTools/Bin/Darwin-i386/Arm/DEBUG_XCODE31/CompilerIntrinsicsLib.lib
Binary files differ
diff --git a/roms/edk2/BaseTools/Bin/Darwin-i386/Arm/DEBUG_XCODE32/CompilerIntrinsicsLib.lib b/roms/edk2/BaseTools/Bin/Darwin-i386/Arm/DEBUG_XCODE32/CompilerIntrinsicsLib.lib
new file mode 100644
index 000000000..79964fe1b
--- /dev/null
+++ b/roms/edk2/BaseTools/Bin/Darwin-i386/Arm/DEBUG_XCODE32/CompilerIntrinsicsLib.lib
Binary files differ
diff --git a/roms/edk2/BaseTools/Bin/Darwin-i386/Arm/RELEASE_XCODE31/CompilerIntrinsicsLib.lib b/roms/edk2/BaseTools/Bin/Darwin-i386/Arm/RELEASE_XCODE31/CompilerIntrinsicsLib.lib
new file mode 100644
index 000000000..c82c915b8
--- /dev/null
+++ b/roms/edk2/BaseTools/Bin/Darwin-i386/Arm/RELEASE_XCODE31/CompilerIntrinsicsLib.lib
Binary files differ
diff --git a/roms/edk2/BaseTools/Bin/Darwin-i386/Arm/RELEASE_XCODE32/CompilerIntrinsicsLib.lib b/roms/edk2/BaseTools/Bin/Darwin-i386/Arm/RELEASE_XCODE32/CompilerIntrinsicsLib.lib
new file mode 100644
index 000000000..c82c915b8
--- /dev/null
+++ b/roms/edk2/BaseTools/Bin/Darwin-i386/Arm/RELEASE_XCODE32/CompilerIntrinsicsLib.lib
Binary files differ
diff --git a/roms/edk2/BaseTools/Bin/gcc_aarch64_linux_ext_dep.yaml b/roms/edk2/BaseTools/Bin/gcc_aarch64_linux_ext_dep.yaml
new file mode 100644
index 000000000..e81223fd9
--- /dev/null
+++ b/roms/edk2/BaseTools/Bin/gcc_aarch64_linux_ext_dep.yaml
@@ -0,0 +1,21 @@
+## @file
+# Download GCC AARCH64 compiler from Linaro's release site
+# Set shell variable GCC5_AARCH64_INSTALL to this folder
+#
+# This is only downloaded when a build activates scope gcc_aarch64_linux
+#
+# Copyright (c) Microsoft Corporation.
+# SPDX-License-Identifier: BSD-2-Clause-Patent
+##
+{
+ "scope": "gcc_aarch64_linux",
+ "type": "web",
+ "name": "gcc_aarch64_linux",
+ "source": "http://releases.linaro.org/components/toolchain/binaries/7.4-2019.02/aarch64-linux-gnu/gcc-linaro-7.4.1-2019.02-x86_64_aarch64-linux-gnu.tar.xz",
+ "version": "7.4.1",
+ "sha256": "27f1dc2c491ed61ae8f0d4b0c11de59cd2f7dd9c94761ee7153006fcac1bf9ab",
+ "compression_type": "tar",
+ "internal_path": "/gcc-linaro-7.4.1-2019.02-x86_64_aarch64-linux-gnu/",
+ "flags": ["set_shell_var", ],
+ "var_name": "GCC5_AARCH64_INSTALL"
+}
diff --git a/roms/edk2/BaseTools/Bin/gcc_arm_linux_ext_dep.yaml b/roms/edk2/BaseTools/Bin/gcc_arm_linux_ext_dep.yaml
new file mode 100644
index 000000000..09481ceae
--- /dev/null
+++ b/roms/edk2/BaseTools/Bin/gcc_arm_linux_ext_dep.yaml
@@ -0,0 +1,21 @@
+## @file
+# Download GCC ARM compiler from Linaro's release site
+# Set shell variable GCC5_ARM_INSTALL to this folder
+#
+# This is only downloaded when a build activates scope gcc_arm_linux
+#
+# Copyright (c) Microsoft Corporation.
+# SPDX-License-Identifier: BSD-2-Clause-Patent
+##
+{
+ "scope": "gcc_arm_linux",
+ "type": "web",
+ "name": "gcc_arm_linux",
+ "source": "https://releases.linaro.org/components/toolchain/binaries/7.4-2019.02/arm-linux-gnueabihf/gcc-linaro-7.4.1-2019.02-x86_64_arm-linux-gnueabihf.tar.xz",
+ "version": "7.4.1",
+ "sha256": "3C951CF1941D0FA06D64CC0D5E88612B209D8123B273FA26C16D70BD7BC6B163",
+ "compression_type": "tar",
+ "internal_path": "/gcc-linaro-7.4.1-2019.02-x86_64_arm-linux-gnueabihf/",
+ "flags": ["set_shell_var", ],
+ "var_name": "GCC5_ARM_INSTALL"
+}
diff --git a/roms/edk2/BaseTools/Bin/gcc_riscv64_unknown_ext_dep.yaml b/roms/edk2/BaseTools/Bin/gcc_riscv64_unknown_ext_dep.yaml
new file mode 100644
index 000000000..8abbcd7ba
--- /dev/null
+++ b/roms/edk2/BaseTools/Bin/gcc_riscv64_unknown_ext_dep.yaml
@@ -0,0 +1,22 @@
+## @file
+# Download GCC RISCV64 compiler from RISC-V Organization release site
+# Set shell variable GCC5_RISCV64_INSTALL to this folder
+#
+# This is only downloaded when a build activates scope gcc_riscv64_unknown
+#
+# Copyright (c) Microsoft Corporation.
+# Copyright (c) 2020, Hewlett Packard Enterprise Development LP. All rights reserved.<BR>
+# SPDX-License-Identifier: BSD-2-Clause-Patent
+##
+{
+ "scope": "gcc_riscv64_unknown",
+ "type": "web",
+ "name": "gcc_riscv64_unknown",
+ "source": "https://raw.githubusercontent.com/riscv/riscv-uefi-edk2-docs/master/gcc-riscv-edk2-ci-toolchain/gcc-riscv-9.2.0-2020.04-x86_64_riscv64-unknown-gnu.tar.xz",
+ "version": "9.2.0",
+ "compression_type": "tar",
+ "sha256": "28373643b69f0ce008273c3dc63f172aa1121952f1b9ae94d7485ac94af7f344",
+ "internal_path": "/gcc-riscv-9.2.0-2020.04-x86_64_riscv64-unknown-gnu",
+ "flags": ["set_shell_var", ],
+ "var_name": "GCC5_RISCV64_INSTALL"
+}
diff --git a/roms/edk2/BaseTools/Bin/iasl_ext_dep.yaml b/roms/edk2/BaseTools/Bin/iasl_ext_dep.yaml
new file mode 100644
index 000000000..1d81e89cf
--- /dev/null
+++ b/roms/edk2/BaseTools/Bin/iasl_ext_dep.yaml
@@ -0,0 +1,21 @@
+## @file
+# Download iasl executable tool from a nuget.org package
+# - package contains different binaries based on host
+# Add the folder with the tool to the path
+#
+# This is only downloaded for scope cibuild thus
+# should have no impact on the asl compiler used by any
+# given platform to build.
+#
+# Copyright (c) Microsoft Corporation.
+# SPDX-License-Identifier: BSD-2-Clause-Patent
+##
+{
+ "id": "iasl-ci-1",
+ "scope": "cibuild",
+ "type": "nuget",
+ "name": "iasl",
+ "source": "https://api.nuget.org/v3/index.json",
+ "version": "20190215.0.0",
+ "flags": ["set_path", "host_specific"]
+}
diff --git a/roms/edk2/BaseTools/Bin/nasm_ext_dep.yaml b/roms/edk2/BaseTools/Bin/nasm_ext_dep.yaml
new file mode 100644
index 000000000..60b1f71b5
--- /dev/null
+++ b/roms/edk2/BaseTools/Bin/nasm_ext_dep.yaml
@@ -0,0 +1,18 @@
+## @file
+# Download nasm x86 assembler executable tool from a nuget.org package
+# - package contains different binaries based on host
+# Put on the tool on the path
+#
+#
+# Copyright (c) Microsoft Corporation.
+# SPDX-License-Identifier: BSD-2-Clause-Patent
+##
+{
+ "id": "nasm-1",
+ "scope": "edk2-build",
+ "type": "nuget",
+ "name": "mu_nasm",
+ "source": "https://api.nuget.org/v3/index.json",
+ "version": "2.14.02",
+ "flags": ["set_path", "host_specific"]
+}