X-Git-Url: https://git.proxmox.com/?a=blobdiff_plain;f=DuetPkg%2FCreateBootDisk.bat;h=cee04b8cc56edde28d4be5b7c9c00109e6d06b09;hb=bab82372a9e6ce066fa725a792e71d07191046ca;hp=b82b22abdf469de057c4c0b24df3dcb9197acac9;hpb=b1f700a8593435e2bdc8f9b3dc21bced4774c80f;p=mirror_edk2.git
diff --git a/DuetPkg/CreateBootDisk.bat b/DuetPkg/CreateBootDisk.bat
index b82b22abdf..cee04b8cc5 100644
--- a/DuetPkg/CreateBootDisk.bat
+++ b/DuetPkg/CreateBootDisk.bat
@@ -1,6 +1,7 @@
+@echo off
@REM ## @file
@REM #
-@REM # Copyright (c) 2010, Intel Corporation. All rights reserved.
+@REM # Copyright (c) 2010 - 2016, Intel Corporation. All rights reserved.
@REM #
@REM # This program and the accompanying materials
@REM # are licensed and made available under the terms and conditions of the BSD License
@@ -12,138 +13,133 @@
@REM #
@REM ##
-@REM Set up environment at fisrt.
-
-@set BASETOOLS_DIR=%WORKSPACE_TOOLS_PATH%\Bin\Win32
-@set BOOTSECTOR_BIN_DIR=%WORKSPACE%\DuetPkg\BootSector\bin
-@set DISK_LABEL=DUET
-@set PROCESSOR=""
-
-@echo on
-
-@if "%1"=="" goto Help
-@if "%2"=="" goto Help
-@if "%3"=="" goto Help
-@if "%4"=="" goto NoArch
-@set EFI_BOOT_DISK=%2
-@if "%4"=="IA32" set PROCESSOR=IA32
-@if "%4"=="X64" set PROCESSOR=X64
-@if %PROCESSOR%=="" goto WrongArch
-@set BUILD_DIR=%WORKSPACE%\Build\DuetPkg%PROCESSOR%\DEBUG_MYTOOLS
-
-@if "%1"=="floppy" goto CreateFloppy
-@if "%1"=="file" goto CreateFile
-@if "%1"=="usb" goto CreateUsb
-@if "%1"=="ide" goto CreateIde
+@REM Set up environment at first.
+
+set BASETOOLS_DIR=%EDK_TOOLS_BIN%
+set BOOTSECTOR_BIN_DIR=%WORKSPACE%\DuetPkg\BootSector\bin
+set DISK_LABEL=DUET
+set PROCESSOR=""
+set STEP=1
+
+if "%1"=="" goto Help
+if "%2"=="" goto Help
+if "%3"=="" goto Help
+if "%4"=="" goto Set_BootDisk
+if "%4"=="step2" (@set STEP=2) else @set TARGET_ARCH=%4
+if "%5"=="step2" @set STEP=2
+:Set_BootDisk
+set EFI_BOOT_DISK=%2
+if "%TARGET_ARCH%"=="IA32" set PROCESSOR=IA32
+if "%TARGET_ARCH%"=="X64" set PROCESSOR=X64
+if %PROCESSOR%=="" goto WrongArch
+call %WORKSPACE%\DuetPkg\SetEnv_%PROCESSOR%.bat
+set BUILD_DIR=%WORKSPACE%\Build\DuetPkg%PROCESSOR%\%TARGET%_%TOOL_CHAIN_TAG%
+
+if "%1"=="floppy" goto CreateFloppy
+if "%1"=="file" goto CreateFile
+if "%1"=="usb" goto CreateUsb
+if "%1"=="ide" goto CreateIde
goto Help
:CreateFloppy
-@if NOT "%3"=="FAT12" goto WrongFATType
-@echo Start to create floppy boot disk ...
-@echo Format %EFI_BOOT_DISK% ...
-@echo.> FormatCommandInput.txt
-@echo.n>> FormatCommandInput.txt
-@format /v:%DISK_LABEL% /q %EFI_BOOT_DISK% < FormatCommandInput.txt > NUL
-@del FormatCommandInput.txt
-@echo Create boot sector ...
+if NOT "%3"=="FAT12" goto WrongFATType
+echo Start to create floppy boot disk ...
+echo Format %EFI_BOOT_DISK% ...
+echo.> FormatCommandInput.txt
+echo.n>> FormatCommandInput.txt
+format /v:%DISK_LABEL% /q %EFI_BOOT_DISK% < FormatCommandInput.txt > NUL
+del FormatCommandInput.txt
+echo Create boot sector ...
%BASETOOLS_DIR%\Genbootsector.exe -i %EFI_BOOT_DISK% -o FDBs.com
-%BASETOOLS_DIR%\Bootsectimage.exe -g FDBs.com %BOOTSECTOR_BIN_DIR%\Bootsect.com -f
+copy %BOOTSECTOR_BIN_DIR%\Bootsect.com FDBs-1.com
+%BASETOOLS_DIR%\Bootsectimage.exe -g FDBs.com FDBs-1.com -f
@REM @del FDBS.com
-%BASETOOLS_DIR%\Genbootsector.exe -o %EFI_BOOT_DISK% -i %BOOTSECTOR_BIN_DIR%\Bootsect.com
-@echo Done.
+%BASETOOLS_DIR%\Genbootsector.exe -o %EFI_BOOT_DISK% -i FDBs-1.com
+del FDBs-1.com
+echo Done.
copy %BUILD_DIR%\FV\EfiLdr %EFI_BOOT_DISK%
-mkdir %EFI_BOOT_DISK%\efi\boot
-@if "%PROCESSOR%"=="IA32" goto CreateBootFileForIA32
-@if "%PROCESSOR%"=="X64" goto CreateBootFileForX64
-@goto end
+goto CreateBootFile
:CreateFile
-@if NOT "%3"=="FAT12" goto WrongFATType
-@echo Start to create file boot disk ...
-@echo Create boot sector ...
+if NOT "%3"=="FAT12" goto WrongFATType
+echo Start to create file boot disk ...
+echo Create boot sector ...
%BASETOOLS_DIR%\Genbootsector.exe -i %EFI_BOOT_DISK% -o FDBs.com
-%BASETOOLS_DIR%\Bootsectimage.exe -g FDBs.com %BOOTSECTOR_BIN_DIR%\Bootsect.com -f
-@REM @del FDBS.com
-%BASETOOLS_DIR%\Genbootsector.exe -o %EFI_BOOT_DISK% -i %BOOTSECTOR_BIN_DIR%\Bootsect.com
-@echo Done.
-@goto end
+copy %BOOTSECTOR_BIN_DIR%\Bootsect.com FDBs-1.com
+%BASETOOLS_DIR%\Bootsectimage.exe -g FDBs.com FDBs-1.com -f
+REM @del FDBS.com
+%BASETOOLS_DIR%\Genbootsector.exe -o %EFI_BOOT_DISK% -i FDBs-1.com
+del FDBs-1.com
+echo Done.
+goto end
:CreateUsb
-@echo Start to create usb boot disk ...
-@if "%3"=="FAT16" goto CreateUsb_FAT16
-@if "%3"=="FAT32" goto CreateUsb_FAT32
-@if "%3"=="FAT12" goto WrongFATType
+echo Start to create usb boot disk ...
+if "%3"=="FAT16" goto CreateUsb_FAT16
+if "%3"=="FAT32" goto CreateUsb_FAT32
+if "%3"=="FAT12" goto WrongFATType
:CreateUsb_FAT16
-@if "%5"=="step2" goto CreateUsb_FAT16_step2
-@echo Format %EFI_BOOT_DISK% ...
-@echo.> FormatCommandInput.txt
-@format /FS:FAT /v:%DISK_LABEL% /q %EFI_BOOT_DISK% < FormatCommandInput.txt > NUL
-@del FormatCommandInput.txt
-@echo Create boot sector ...
-@%BASETOOLS_DIR%\Genbootsector.exe -i %EFI_BOOT_DISK% -o UsbBs16.com
-@%BASETOOLS_DIR%\Bootsectimage.exe -g UsbBs16.com %BOOTSECTOR_BIN_DIR%\Bs16.com -f
-@%BASETOOLS_DIR%\Genbootsector.exe -o %EFI_BOOT_DISK% -i %BOOTSECTOR_BIN_DIR%\Bs16.com
-@%BASETOOLS_DIR%\Genbootsector.exe -m -o %EFI_BOOT_DISK% -i %BOOTSECTOR_BIN_DIR%\Mbr.com
-@echo Done.
-@echo PLEASE UNPLUG USB, THEN PLUG IT AGAIN!
-@goto end
+if "%STEP%"=="2" goto CreateUsb_FAT16_step2
+echo Format %EFI_BOOT_DISK% ...
+echo.> FormatCommandInput.txt
+format /FS:FAT /v:%DISK_LABEL% /q %EFI_BOOT_DISK% < FormatCommandInput.txt > NUL
+del FormatCommandInput.txt
+echo Create boot sector ...
+%BASETOOLS_DIR%\Genbootsector.exe -i %EFI_BOOT_DISK% -o UsbBs16.com
+copy %BOOTSECTOR_BIN_DIR%\Bs16.com Bs16-1.com
+%BASETOOLS_DIR%\Bootsectimage.exe -g UsbBs16.com Bs16-1.com -f
+%BASETOOLS_DIR%\Genbootsector.exe -o %EFI_BOOT_DISK% -i Bs16-1.com
+del Bs16-1.com
+%BASETOOLS_DIR%\Genbootsector.exe -m -o %EFI_BOOT_DISK% -i %BOOTSECTOR_BIN_DIR%\Mbr.com
+echo Done.
+echo PLEASE UNPLUG USB, THEN PLUG IT AGAIN!
+goto end
:CreateUsb_FAT16_step2
-@copy %BUILD_DIR%\FV\EfiLdr16 %EFI_BOOT_DISK%
-@mkdir %EFI_BOOT_DISK%\efi\boot
-@if "%PROCESSOR%"=="IA32" goto CreateBootFileForIA32
-@if "%PROCESSOR%"=="X64" goto CreateBootFileForX64
-@goto end
+copy %BUILD_DIR%\FV\EfiLdr16 %EFI_BOOT_DISK%
+goto CreateBootFile
:CreateUsb_FAT32
-@if "%5"=="step2" goto CreateUsb_FAT32_step2
-@echo Format %EFI_BOOT_DISK% ...
-@echo.> FormatCommandInput.txt
-@format /FS:FAT32 /v:%DISK_LABEL% /q %EFI_BOOT_DISK% < FormatCommandInput.txt > NUL
-@del FormatCommandInput.txt
-@echo Create boot sector ...
-@%BASETOOLS_DIR%\Genbootsector.exe -i %EFI_BOOT_DISK% -o UsbBs32.com
-@%BASETOOLS_DIR%\Bootsectimage.exe -g UsbBs32.com %BOOTSECTOR_BIN_DIR%\Bs32.com -f
-@del UsbBs32.com
-@%BASETOOLS_DIR%\Genbootsector.exe -o %EFI_BOOT_DISK% -i %BOOTSECTOR_BIN_DIR%\Bs32.com
-@%BASETOOLS_DIR%\Genbootsector.exe -m -o %EFI_BOOT_DISK% -i %BOOTSECTOR_BIN_DIR%\Mbr.com
-@echo Done.
-@echo PLEASE UNPLUG USB, THEN PLUG IT AGAIN!
-@goto end
+if "%STEP%"=="2" goto CreateUsb_FAT32_step2
+echo Format %EFI_BOOT_DISK% ...
+echo.> FormatCommandInput.txt
+format /FS:FAT32 /v:%DISK_LABEL% /q %EFI_BOOT_DISK% < FormatCommandInput.txt > NUL
+del FormatCommandInput.txt
+echo Create boot sector ...
+%BASETOOLS_DIR%\Genbootsector.exe -i %EFI_BOOT_DISK% -o UsbBs32.com
+copy %BOOTSECTOR_BIN_DIR%\Bs32.com Bs32-1.com
+%BASETOOLS_DIR%\Bootsectimage.exe -g UsbBs32.com Bs32-1.com -f
+del UsbBs32.com
+%BASETOOLS_DIR%\Genbootsector.exe -o %EFI_BOOT_DISK% -i Bs32-1.com
+del Bs32-1.com
+%BASETOOLS_DIR%\Genbootsector.exe -m -o %EFI_BOOT_DISK% -i %BOOTSECTOR_BIN_DIR%\Mbr.com
+echo Done.
+echo PLEASE UNPLUG USB, THEN PLUG IT AGAIN!
+goto end
:CreateUsb_FAT32_step2
-@copy %BUILD_DIR%\FV\EfiLdr20 %EFI_BOOT_DISK%
-@mkdir %EFI_BOOT_DISK%\efi\boot
-@if "%PROCESSOR%"=="IA32" goto CreateBootFileForIA32
-@if "%PROCESSOR%"=="X64" goto CreateBootFileForX64
-@goto end
+copy %BUILD_DIR%\FV\EfiLdr20 %EFI_BOOT_DISK%
+goto CreateBootFile
:CreateIde
-@goto end
-
-:CreateBootFileForIA32
-copy %WORKSPACE%\EdkShellBinPkg\MinimumShell\IA32\Shell.efi %EFI_BOOT_DISK%\efi\boot\bootia32.efi /y
-@goto end
+goto end
-:CreateBootFileForX64
-copy %WORKSPACE%\EdkShellBinPkg\MinimumShell\X64\Shell.efi %EFI_BOOT_DISK%\efi\boot\bootx64.efi /y
-@goto end
+:CreateBootFile
+mkdir %EFI_BOOT_DISK%\efi\boot
+copy %WORKSPACE%\ShellBinPkg\UefiShell\%PROCESSOR%\Shell.efi %EFI_BOOT_DISK%\efi\boot\boot%PROCESSOR%.efi /y
+goto end
:WrongFATType
-@echo Wrong FAT type %3 for %1
-@goto end
-
-:NoArch
-@echo Error! Please specific the architecture.
-@goto Help
+echo Wrong FAT type %3 for %1
+goto end
:WrongArch
-@echo Error! Wrong architecture.
-@goto Help
+echo Error! Wrong architecture.
+goto Help
:Help
-@echo "Usage: CreateBootDisk [usb|floppy|ide] DiskNumber [FAT12|FAT16|FAT32] [IA32|X64]"
+echo "Usage: CreateBootDisk [usb|floppy|ide] DiskNumber [FAT12|FAT16|FAT32] [IA32|X64]"
:end
-@echo on
\ No newline at end of file
+echo on