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