-The binaries of EdkShellBinPkg are generated with Efi-Shell-Dev-Snapshot-20091214.zip (plus a security hot-fix see EdkShellbinPkg\SecurityPatch.diff) and build with Edk Compatibility & BaseTools Package\r
-(r9623)\r
+The binaries of EdkShellBinPkg are generated with Efi-Shell-Dev-Snapshot-20091214.zip (plus a hot-fix see EdkShellbinPkg\HotFix.diff) and build with Edk Compatibility & BaseTools Package (r9623). The binaries are built with no debug information by building with "RELEASE" target.\r
\r
The following steps can help to re-generate these binaries for customization:\r
-1. Check out EdkCompatibilityPkg (r9623) to $(WORKSPACE)\EdkCompatibilityPkg (svn https://edk2.tianocore.org/svn/edk2/trunk/edk2/EdkCompatibilityPkg).\r
-2. Check out EdkShellPkg(r9623) to $(WORKSPACE)\EdkShellPkg (svn https://edk2.tianocore.org/svn/edk2/trunk/edk2/EdkShellPkg).\r
-3a.Check out Edk Shell project source (r36) to $(WORKSPACE) (svn https://efi-shell.tianocore.org/svn/efi-shell/trunk/Shell). It is read-only and current revison (r36) is identical to Efi-Shell-Dev-Snapshot-20091214.zip. \r
-3b.Apply the security hot fix in EdkShellBinPkg\SecurityPatch.diff to patch in Shell\shellenv\exec.c\r
-4. Update to the newest BaseTools package. (r9623 or later)\r
+1. Check out EdkCompatibilityPkg (r9623) to $(WORKSPACE)\EdkCompatibilityPkg (svn http://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2/EdkCompatibilityPkg).\r
+2. Check out EdkShellPkg(r9623) to $(WORKSPACE)\EdkShellPkg (svn http://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2/EdkShellPkg).\r
+3a.Check out Edk Shell project source (r36) to $(WORKSPACE) (svn http://efi-shell.svn.sourceforge.net/svnroot/efi-shell/trunk/Shell). It is read-only and current revison (r36) is identical to Efi-Shell-Dev-Snapshot-20091214.zip. \r
+3b.Apply the hot fix in EdkShellBinPkg\HotFix.diff to fix the following issues:\r
+ Security hole in LoadImage() when EFI_SECURITY_VIOLATION status is returned.\r
+ Load.efi to load 32bit driver in 64bit platform causing system hang.\r
+ Fix for PCI multi-segment support.\r
+4. Update to the newest BaseTools package (r9623) to $(WORKSPACE) (svn http://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2/BaseTools).\r
5. Under workspace directory (i.e. c:\EdkII), \r
- To generate Minimum Shell, execute: "build -a IA32 -a X64 -a IPF -p EdkShellPkg\EdkShellPkg.dsc -m EdkShellPkg\Shell\Shell.inf" \r
- To generate Full Shell, execute: "build -a IA32 -a X64 -a IPF -p EdkShellPkg\EdkShellPkg.dsc -m EdkShellPkg\Shell\ShellFull.inf" \r
+ To generate Minimum Shell, execute: "build -a IA32 -a X64 -a IPF -p EdkShellPkg\EdkShellPkg.dsc -m EdkShellPkg\Shell\Shell.inf -b RELEASE" \r
+ To generate Full Shell, execute: "build -a IA32 -a X64 -a IPF -p EdkShellPkg\EdkShellPkg.dsc -m EdkShellPkg\Shell\ShellFull.inf -b RELEASE" \r
6. In EdkShellBinPkg\Bin, we only provides the binary files of those applications which haven't been contained in Minmum Shell but in Full Shell.\r
- To generate them, execute: "build -a IA32 -a X64 -a IPF -p EdkShellPkg\EdkShellPkg.dsc -m EdkShellPkg\Xxx\Xxx.inf". Xxx means the corresponding module name.
\ No newline at end of file
+ To generate them, execute: "build -a IA32 -a X64 -a IPF -p EdkShellPkg\EdkShellPkg.dsc -m EdkShellPkg\Xxx\Xxx.inf -b RELEASE". Xxx means the corresponding module name.
\ No newline at end of file
+++ /dev/null
-Index: shellenv/exec.c\r
-===================================================================\r
---- shellenv/exec.c (revision 36)\r
-+++ shellenv/exec.c (working copy)\r
-@@ -2079,6 +2079,10 @@\r
- if (!EFI_ERROR (Status)) {
- goto Done;
- } else {
-+ //
-+ // Set ImageHandle to NULL if any error status is returned.
-+ //
-+ ImageHandle = NULL;
- Status = LibGetImageHeader (
- DevicePath,
- &DosHeader,