X-Git-Url: https://git.proxmox.com/?a=blobdiff_plain;f=DuetPkg%2FPostBuild.bat;h=43f7de94643963d78a1a9631d4b06201e9aa80ae;hb=bc252e8ea4fbf56f0899c923d08bf72153b8e2eb;hp=52cf07a94284e3f420e8ac7eec423d2c5042ba92;hpb=3da85e633e2589a312fb3646660ef68e6a0bf18b;p=mirror_edk2.git diff --git a/DuetPkg/PostBuild.bat b/DuetPkg/PostBuild.bat index 52cf07a942..43f7de9464 100644 --- a/DuetPkg/PostBuild.bat +++ b/DuetPkg/PostBuild.bat @@ -1,15 +1,58 @@ -# -# Currently, Build system does not provide post build mechanism for module -# and platform building, so just use a bat file to do post build commands. -# Originally, following post building command is for EfiLoader module. -# - -set BUILD_DIR=%WORKSPACE%\Build\DuetPkg\DEBUG_MYTOOLS -set BASETOOLS_DIR=%WORKSPACE_TOOLS_PATH%\Bin\Win32 -set OUTPUT_DIR=%BUILD_DIR%\IA32\DuetPkg\BootSector\BootSector\OUTPUT - -%BASETOOLS_DIR%\TianoCompress -e -o %BUILD_DIR%\FV\DUETEFIMAINFV.z %BUILD_DIR%\FV\DUETEFIMAINFV.Fv -%BASETOOLS_DIR%\TianoCompress -e -o %BUILD_DIR%\FV\DxeMain.z %BUILD_DIR%\IA32\DxeMain.efi -%BASETOOLS_DIR%\TianoCompress -e -o %BUILD_DIR%\FV\DxeIpl.z %BUILD_DIR%\IA32\DxeIpl.efi -%BASETOOLS_DIR%\EfiLdrImage.exe -o %BUILD_DIR%\FV\Efildr32 %BUILD_DIR%\IA32\EfiLoader.efi %BUILD_DIR%\FV\DxeIpl.z %BUILD_DIR%\FV\DxeMain.z %BUILD_DIR%\FV\DUETEFIMAINFV.z -copy /b %OUTPUT_DIR%\Start.com+%OUTPUT_DIR%\Efi32.com2+%BUILD_DIR%\FV\Efildr32 %BUILD_DIR%\FV\Efildr +@REM +@REM Currently, Build system does not provide post build mechanism for module +@REM and platform building, so just use a bat file to do post build commands. +@REM Originally, following post building command is for EfiLoader module. +@REM + +@set BUILD_DIR=%WORKSPACE%\Build\DuetPkg\DEBUG_MYTOOLS +@set BASETOOLS_DIR=%WORKSPACE_TOOLS_PATH%\Bin\Win32 +@set BOOTSECTOR_BIN_DIR=%WORKSPACE%\DuetPkg\BootSector\bin +@set PROCESSOR="" + +@if "%1"=="" goto NoArch +@if "%1"=="IA32" set PROCESSOR=IA32 +@if "%1"=="X64" set PROCESSOR=X64 +@if %PROCESSOR%=="" goto WrongArch + +@echo Compressing DUETEFIMainFv.FV ... +@%BASETOOLS_DIR%\LzmaCompress -e -o %BUILD_DIR%\FV\DUETEFIMAINFV.z %BUILD_DIR%\FV\DUETEFIMAINFV.Fv + +@echo Compressing DxeMain.efi ... +@%BASETOOLS_DIR%\LzmaCompress -e -o %BUILD_DIR%\FV\DxeMain.z %BUILD_DIR%\%PROCESSOR%\DxeCore.efi + +@echo Compressing DxeIpl.efi ... +@%BASETOOLS_DIR%\LzmaCompress -e -o %BUILD_DIR%\FV\DxeIpl.z %BUILD_DIR%\%PROCESSOR%\DxeIpl.efi + +@echo Generate Loader Image ... +@if "%PROCESSOR%"=="IA32" goto GENERATE_IMAGE_IA32 +@if "%PROCESSOR%"=="X64" goto GENERATE_IMAGE_X64 + +:GENERATE_IMAGE_IA32 +@%BASETOOLS_DIR%\EfiLdrImage.exe -o %BUILD_DIR%\FV\Efildr32 %BUILD_DIR%\%PROCESSOR%\EfiLoader.efi %BUILD_DIR%\FV\DxeIpl.z %BUILD_DIR%\FV\DxeMain.z %BUILD_DIR%\FV\DUETEFIMAINFV.z +@copy /b %BOOTSECTOR_BIN_DIR%\Start.com+%BOOTSECTOR_BIN_DIR%\Efi32.com2+%BUILD_DIR%\FV\Efildr32 %BUILD_DIR%\FV\Efildr +@copy /b %BOOTSECTOR_BIN_DIR%\Start16.com+%BOOTSECTOR_BIN_DIR%\Efi32.com2+%BUILD_DIR%\FV\Efildr32 %BUILD_DIR%\FV\Efildr16 +@copy /b %BOOTSECTOR_BIN_DIR%\Start32.com+%BOOTSECTOR_BIN_DIR%\Efi32.com2+%BUILD_DIR%\FV\Efildr32 %BUILD_DIR%\FV\Efildr20 +@goto end + +:GENERATE_IMAGE_X64 +@%BASETOOLS_DIR%\EfiLdrImage.exe -o %BUILD_DIR%\FV\Efildr64 %BUILD_DIR%\%PROCESSOR%\EfiLoader.efi %BUILD_DIR%\FV\DxeIpl.z %BUILD_DIR%\FV\DxeMain.z %BUILD_DIR%\FV\DUETEFIMAINFV.z +@copy /b %BOOTSECTOR_BIN_DIR%\Start64.com+%BOOTSECTOR_BIN_DIR%\Efi64.com2+%BUILD_DIR%\FV\Efildr64 %BUILD_DIR%\FV\EfildrPure +@%BASETOOLS_DIR%\GenPage.exe %BUILD_DIR%\FV\EfildrPure -o %BUILD_DIR%\FV\Efildr +@copy /b %BOOTSECTOR_BIN_DIR%\St16_64.com+%BOOTSECTOR_BIN_DIR%\Efi64.com2+%BUILD_DIR%\FV\Efildr64 %BUILD_DIR%\FV\Efildr16Pure +@%BASETOOLS_DIR%\GenPage.exe %BUILD_DIR%\FV\Efildr16Pure -o %BUILD_DIR%\FV\Efildr16 +@copy /b %BOOTSECTOR_BIN_DIR%\St32_64.com+%BOOTSECTOR_BIN_DIR%\Efi64.com2+%BUILD_DIR%\FV\Efildr64 %BUILD_DIR%\FV\Efildr20Pure +@%BASETOOLS_DIR%\GenPage.exe %BUILD_DIR%\FV\Efildr20Pure -o %BUILD_DIR%\FV\Efildr20 +@goto end + + +:NoArch +@echo Error! Please specific the architecture. +@goto Help + +:WrongArch +@echo Error! Wrong architecture. +@goto Help + +:Help +@echo Usage: "PostBuild [IA32|X64]" +:end \ No newline at end of file