X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=blobdiff_plain;f=DuetPkg%2FCreateBootDisk.bat;h=cee04b8cc56edde28d4be5b7c9c00109e6d06b09;hp=9a421d7ea7538edcbabc73aa4d725c129a3baa27;hb=bab82372a9e6ce066fa725a792e71d07191046ca;hpb=7708d081953fd7541cbcf233904c854a1800780e diff --git a/DuetPkg/CreateBootDisk.bat b/DuetPkg/CreateBootDisk.bat index 9a421d7ea7..cee04b8cc5 100644 --- a/DuetPkg/CreateBootDisk.bat +++ b/DuetPkg/CreateBootDisk.bat @@ -1,6 +1,7 @@ +@echo off @REM ## @file @REM # -@REM # Copyright (c) 2010 - 2011, 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 @@ -14,137 +15,131 @@ @REM Set up environment at first. -@set BASETOOLS_DIR=%WORKSPACE_TOOLS_PATH%\Bin\Win32 -@set BOOTSECTOR_BIN_DIR=%WORKSPACE%\DuetPkg\BootSector\bin -@set DISK_LABEL=DUET -@set PROCESSOR="" -@set STEP=1 -@call %WORKSPACE%\DuetPkg\GetVariables.bat - -@echo on - -@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 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 -@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 +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 "%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 -@%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 "%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 -@%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 +goto end -:CreateBootFileForIA32 -copy %WORKSPACE%\EdkShellBinPkg\MinimumShell\IA32\Shell.efi %EFI_BOOT_DISK%\efi\boot\bootia32.efi /y -@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 +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