@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
+@%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
@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
+@%BASETOOLS_DIR%\Genbootsector.exe -o %EFI_BOOT_DISK% -i FDBs-1.com\r
@del FDBs-1.com\r
@echo Done.\r
@goto end\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
+@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
@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
+@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
+@goto end\r
\r
:CreateUsb_FAT32_step2\r
@copy %BUILD_DIR%\FV\EfiLdr20 %EFI_BOOT_DISK%\r
"$*" = "--help" \
]
then
- echo "Usage: CreateBootDisk [usb|floppy|ide|file] MediaPath DevicePath [FAT12|FAT16|FAT32] [IA32|X64] [GCC44|UNIXGCC]"
- echo "e.g. : CreateBootDisk floppy /media/floppy0 /dev/fd0 FAT12 IA32"
- PROCESS_MARK=FALSE
+ echo "Usage: CreateBootDisk [usb|floppy|ide|file] MediaPath DevicePath [FAT12|FAT16|FAT32] [IA32|X64] [GCC44|UNIXGCC]"
+ echo "e.g. : CreateBootDisk floppy /media/floppy0 /dev/fd0 FAT12 IA32"
+ PROCESS_MARK=FALSE
fi
case "$5" in
if [ "$PROCESS_MARK" = TRUE ]
then
- case "$1" in
- floppy)
- if [ "$4" = FAT12 ]
- then
- echo Start to create floppy boot disk ...
- echo Format $EFI_BOOT_MEDIA ...
- ## Format floppy disk
- umount $EFI_BOOT_MEDIA
- mkfs.msdos $EFI_BOOT_DEVICE
- mount $EFI_BOOT_DEVICE $EFI_BOOT_MEDIA
- echo Create boot sector ...
- ## Linux version of GenBootSector has not pass build yet.
- $BASETOOLS_DIR/GnuGenBootSector -i $EFI_BOOT_DEVICE -o FDBs.com
- cp $BOOTSECTOR_BIN_DIR/bootsect.com FDBs-1.com
- $BASETOOLS_DIR/BootSectImage -g FDBs.com FDBs-1.com -f
- $BASETOOLS_DIR/GnuGenBootSector -o $EFI_BOOT_DEVICE -i FDBs-1.com
- rm FDBs-1.com
- cp $BUILD_DIR/FV/Efildr $EFI_BOOT_MEDIA
-
- mkdir -p $EFI_BOOT_MEDIA/efi
- mkdir -p $EFI_BOOT_MEDIA/efi/boot
- if [ "$5" = IA32 ]
- then
- cp $WORKSPACE/ShellBinPkg/UefiShell/Ia32/Shell.efi $EFI_BOOT_MEDIA/efi/boot/boot$5.efi
- else
- if [ "$5" = X64 ]
- then
- cp $WORKSPACE/ShellBinPkg/UefiShell/X64/Shell.efi $EFI_BOOT_MEDIA/efi/boot/boot$5.efi
- else
- echo Wrong Arch!
- fi
- fi
- echo Done.
- else
- echo "Wrong FAT type $4 for floppy!"
- fi
- ;;
-
- file) # CreateFile
- if [ "$4" = FAT12 ]
- then
- echo "Start to create file boot disk ..."
- dd bs=512 count=2880 if=/dev/zero of=$EFI_BOOT_MEDIA
- mkfs.msdos -F 12 $EFI_BOOT_MEDIA
-
- mcopy -i $EFI_BOOT_MEDIA $BUILD_DIR/FV/Efildr ::/Efildr
- mmd -i $EFI_BOOT_MEDIA ::/efi ::/efi/boot
- if [ "$5" = IA32 ]
- then
- mcopy -i $EFI_BOOT_MEDIA $WORKSPACE/ShellBinPkg/UefiShell/Ia32/Shell.efi ::/efi/boot/boot$5.efi
- elif [ "$5" = X64 ]
- then
- mcopy -i $EFI_BOOT_MEDIA $WORKSPACE/ShellBinPkg/UefiShell/X64/Shell.efi ::/efi/boot/boot$5.efi
- else
- echo Wrong Arch!
- fi
- mdir -i $EFI_BOOT_MEDIA -s ::
-
- ## Linux version of GenBootSector has not pass build yet.
- $BASETOOLS_DIR/GnuGenBootSector -i $EFI_BOOT_MEDIA -o $EFI_BOOT_MEDIA.bs0
- cp $BOOTSECTOR_BIN_DIR/bootsect.com $EFI_BOOT_MEDIA.bs1
- $BASETOOLS_DIR/BootSectImage -g $EFI_BOOT_MEDIA.bs0 $EFI_BOOT_MEDIA.bs1
- $BASETOOLS_DIR/GnuGenBootSector -o $EFI_BOOT_MEDIA -i $EFI_BOOT_MEDIA.bs1
- rm $EFI_BOOT_MEDIA.bs[0-1]
- echo Done.
- else
- echo "Wrong FAT type" $4 "for floppy!"
- fi
- ;;
-
- usb) # CreateUsb
-
- if [ "$4" = FAT16 ]
- then
- if [ "$6" = step2 ]
- then
- cp $BUILD_DIR/FV/Efildr16 $EFI_BOOT_MEDIA
- mkdir $EFI_BOOT_MEDIA/efi/boot
- if [ "$5" = IA32 ]
- then
- cp $WORKSPACE/ShellBinPkg/UefiShell/Ia32/Shell.efi $EFI_BOOT_MEDIA/efi/boot/boot$5.efi
- else
- if [ "$5" = X64 ]
- then
- cp $WORKSPACE/ShellBinPkg/UefiShell/X64/Shell.efi $EFI_BOOT_MEDIA/efi/boot/boot$5.efi
- else
- echo Wrong Arch!
- fi
- fi
- echo "step2 Done!"
- else
- echo Format $EFI_BOOT_DEVICE ...
- #Do format command.
- echo Create boot sector ...
- ## Linux version of GenBootSector & Bootsectimage has not pass build yet.
- $BASETOOLS_DIR/GnuGenBootSector -i $EFI_BOOT_DEVICE -o UsbBs16.com
- cp $BOOTSECTOR_BIN_DIR/bs16.com Bs16-1.com
- $BASETOOLS_DIR/BootSectImage -g UsbBs16.com Bs16-1.com -f
- $BASETOOLS_DIR/GnuGenBootSector -o $EFI_BOOT_DEVICE -i Bs16-1.com
- rm Bs16-1.com
- $BASETOOLS_DIR/GnuGenBootSector -m -o $EFI_BOOT_DEVICE -i $BOOTSECTOR_BIN_DIR/Mbr.com
- echo Done.
- echo PLEASE UNPLUG USB, THEN PLUG IT AGAIN TO DO STEP2!
- fi
- elif [ "$4" = FAT32 ]
- then
- if [ "$6" = step2 ]
- then
- cp $BUILD_DIR/FV/Efildr20 $EFI_BOOT_MEDIA
- mkdir $EFI_BOOT_MEDIA/efi/boot
- if [ "$5" = IA32 ]
- then
- cp $WORKSPACE/ShellBinPkg/UefiShell/Ia32/Shell.efi $EFI_BOOT_MEDIA/efi/boot/boot$5.efi
- else
- if [ "$5" = X64 ]
- then
- cp $WORKSPACE/ShellBinPkg/UefiShell/X64/Shell.efi $EFI_BOOT_MEDIA/efi/boot/boot$5.efi
- else
- echo Wrong Arch!
- fi
- fi
- echo "step2 Done!"
- else
- echo Format $EFI_BOOT_DEVICE ...
- #Do format command.
- echo Create boot sector ...
- ## Linux version of GenBootSector & Bootsectimage has not pass build yet.
- $BASETOOLS_DIR/GnuGenBootSector -i $EFI_BOOT_DEVICE -o UsbBs32.com
- cp $BOOTSECTOR_BIN_DIR/bs32.com Bs32-1.com
- $BASETOOLS_DIR/BootSectImage -g UsbBs32.com Bs32-1.com -f
- $BASETOOLS_DIR/GnuGenBootSector -o $EFI_BOOT_DEVICE -i Bs32-1.com
- rm Bs32-1.com
- $BASETOOLS_DIR/GnuGenBootSector -m -o $EFI_BOOT_DEVICE -i $BOOTSECTOR_BIN_DIR/Mbr.com
- echo Done.
- echo PLEASE UNPLUG USB, THEN PLUG IT AGAIN TO DO STEP2!
- fi
- else
- echo "Wrong FAT type $1 for floppy!"
- fi
-
- ;;
-
- ide) # CreateIde
- echo "Not support yet!"
- ;;
- *)
- echo "Arg1 should be [floppy | file | usb | ide] !"
-
- esac
+ case "$1" in
+ floppy)
+ if [ "$4" = FAT12 ]
+ then
+ echo Start to create floppy boot disk ...
+ echo Format $EFI_BOOT_MEDIA ...
+ ## Format floppy disk
+ umount $EFI_BOOT_MEDIA
+ mkfs.msdos $EFI_BOOT_DEVICE
+ mount $EFI_BOOT_DEVICE $EFI_BOOT_MEDIA
+ echo Create boot sector ...
+ ## Linux version of GenBootSector has not pass build yet.
+ $BASETOOLS_DIR/GnuGenBootSector -i $EFI_BOOT_DEVICE -o FDBs.com
+ cp $BOOTSECTOR_BIN_DIR/bootsect.com FDBs-1.com
+ $BASETOOLS_DIR/BootSectImage -g FDBs.com FDBs-1.com -f
+ $BASETOOLS_DIR/GnuGenBootSector -o $EFI_BOOT_DEVICE -i FDBs-1.com
+ rm FDBs-1.com
+ cp $BUILD_DIR/FV/Efildr $EFI_BOOT_MEDIA
+
+ mkdir -p $EFI_BOOT_MEDIA/efi
+ mkdir -p $EFI_BOOT_MEDIA/efi/boot
+ if [ "$5" = IA32 ]
+ then
+ cp $WORKSPACE/ShellBinPkg/UefiShell/Ia32/Shell.efi $EFI_BOOT_MEDIA/efi/boot/boot$5.efi
+ else
+ if [ "$5" = X64 ]
+ then
+ cp $WORKSPACE/ShellBinPkg/UefiShell/X64/Shell.efi $EFI_BOOT_MEDIA/efi/boot/boot$5.efi
+ else
+ echo Wrong Arch!
+ fi
+ fi
+ echo Done.
+ else
+ echo "Wrong FAT type $4 for floppy!"
+ fi
+ ;;
+
+ file) # CreateFile
+ if [ "$4" = FAT12 ]
+ then
+ echo "Start to create file boot disk ..."
+ dd bs=512 count=2880 if=/dev/zero of=$EFI_BOOT_MEDIA
+ mkfs.msdos -F 12 $EFI_BOOT_MEDIA
+
+ mcopy -i $EFI_BOOT_MEDIA $BUILD_DIR/FV/Efildr ::/Efildr
+ mmd -i $EFI_BOOT_MEDIA ::/efi ::/efi/boot
+ if [ "$5" = IA32 ]
+ then
+ mcopy -i $EFI_BOOT_MEDIA $WORKSPACE/ShellBinPkg/UefiShell/Ia32/Shell.efi ::/efi/boot/boot$5.efi
+ elif [ "$5" = X64 ]
+ then
+ mcopy -i $EFI_BOOT_MEDIA $WORKSPACE/ShellBinPkg/UefiShell/X64/Shell.efi ::/efi/boot/boot$5.efi
+ else
+ echo Wrong Arch!
+ fi
+ mdir -i $EFI_BOOT_MEDIA -s ::
+
+ ## Linux version of GenBootSector has not pass build yet.
+ $BASETOOLS_DIR/GnuGenBootSector -i $EFI_BOOT_MEDIA -o $EFI_BOOT_MEDIA.bs0
+ cp $BOOTSECTOR_BIN_DIR/bootsect.com $EFI_BOOT_MEDIA.bs1
+ $BASETOOLS_DIR/BootSectImage -g $EFI_BOOT_MEDIA.bs0 $EFI_BOOT_MEDIA.bs1
+ $BASETOOLS_DIR/GnuGenBootSector -o $EFI_BOOT_MEDIA -i $EFI_BOOT_MEDIA.bs1
+ rm $EFI_BOOT_MEDIA.bs[0-1]
+ echo Done.
+ else
+ echo "Wrong FAT type" $4 "for floppy!"
+ fi
+ ;;
+
+ usb) # CreateUsb
+
+ if [ "$4" = FAT16 ]
+ then
+ if [ "$6" = step2 ]
+ then
+ cp $BUILD_DIR/FV/Efildr16 $EFI_BOOT_MEDIA
+ mkdir $EFI_BOOT_MEDIA/efi/boot
+ if [ "$5" = IA32 ]
+ then
+ cp $WORKSPACE/ShellBinPkg/UefiShell/Ia32/Shell.efi $EFI_BOOT_MEDIA/efi/boot/boot$5.efi
+ else
+ if [ "$5" = X64 ]
+ then
+ cp $WORKSPACE/ShellBinPkg/UefiShell/X64/Shell.efi $EFI_BOOT_MEDIA/efi/boot/boot$5.efi
+ else
+ echo Wrong Arch!
+ fi
+ fi
+ echo "step2 Done!"
+ else
+ echo Format $EFI_BOOT_DEVICE ...
+ #Do format command.
+ echo Create boot sector ...
+ ## Linux version of GenBootSector & Bootsectimage has not pass build yet.
+ $BASETOOLS_DIR/GnuGenBootSector -i $EFI_BOOT_DEVICE -o UsbBs16.com
+ cp $BOOTSECTOR_BIN_DIR/bs16.com Bs16-1.com
+ $BASETOOLS_DIR/BootSectImage -g UsbBs16.com Bs16-1.com -f
+ $BASETOOLS_DIR/GnuGenBootSector -o $EFI_BOOT_DEVICE -i Bs16-1.com
+ rm Bs16-1.com
+ $BASETOOLS_DIR/GnuGenBootSector -m -o $EFI_BOOT_DEVICE -i $BOOTSECTOR_BIN_DIR/Mbr.com
+ echo Done.
+ echo PLEASE UNPLUG USB, THEN PLUG IT AGAIN TO DO STEP2!
+ fi
+ elif [ "$4" = FAT32 ]
+ then
+ if [ "$6" = step2 ]
+ then
+ cp $BUILD_DIR/FV/Efildr20 $EFI_BOOT_MEDIA
+ mkdir $EFI_BOOT_MEDIA/efi/boot
+ if [ "$5" = IA32 ]
+ then
+ cp $WORKSPACE/ShellBinPkg/UefiShell/Ia32/Shell.efi $EFI_BOOT_MEDIA/efi/boot/boot$5.efi
+ else
+ if [ "$5" = X64 ]
+ then
+ cp $WORKSPACE/ShellBinPkg/UefiShell/X64/Shell.efi $EFI_BOOT_MEDIA/efi/boot/boot$5.efi
+ else
+ echo Wrong Arch!
+ fi
+ fi
+ echo "step2 Done!"
+ else
+ echo Format $EFI_BOOT_DEVICE ...
+ #Do format command.
+ echo Create boot sector ...
+ ## Linux version of GenBootSector & Bootsectimage has not pass build yet.
+ $BASETOOLS_DIR/GnuGenBootSector -i $EFI_BOOT_DEVICE -o UsbBs32.com
+ cp $BOOTSECTOR_BIN_DIR/bs32.com Bs32-1.com
+ $BASETOOLS_DIR/BootSectImage -g UsbBs32.com Bs32-1.com -f
+ $BASETOOLS_DIR/GnuGenBootSector -o $EFI_BOOT_DEVICE -i Bs32-1.com
+ rm Bs32-1.com
+ $BASETOOLS_DIR/GnuGenBootSector -m -o $EFI_BOOT_DEVICE -i $BOOTSECTOR_BIN_DIR/Mbr.com
+ echo Done.
+ echo PLEASE UNPLUG USB, THEN PLUG IT AGAIN TO DO STEP2!
+ fi
+ else
+ echo "Wrong FAT type $1 for floppy!"
+ fi
+
+ ;;
+
+ ide) # CreateIde
+ echo "Not support yet!"
+ ;;
+ *)
+ echo "Arg1 should be [floppy | file | usb | ide] !"
+
+ esac
fi
@REM ## @file\r
@REM #\r
-@REM # Currently, Build system does not provide post build mechanism for module \r
+@REM # Currently, Build system does not provide post build mechanism for module\r
@REM # and platform building, so just use a bat file to do post build commands.\r
@REM # Originally, following post building command is for EfiLoader module.\r
@REM #\r
## @file
#
-# Currently, Build system does not provide post build mechanism for module
+# Currently, Build system does not provide post build mechanism for module
# and platform building, so just use a sh file to do post build commands.
# Originally, following post building command is for EfiLoader module.
#
"$1" = "--help" \
]
then
- echo Error! Please specific the architecture.
- echo Usage: "./PostBuild.sh [IA32|X64] [UNIXGCC|GCC44]"
+ echo Error! Please specific the architecture.
+ echo Usage: "./PostBuild.sh [IA32|X64] [UNIXGCC|GCC44]"
fi
case "$1" in
$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
+$BASETOOLS_DIR/LzmaCompress -e -o $BUILD_DIR/FV/DxeIpl.z $BUILD_DIR/$PROCESSOR/DxeIpl.efi
echo Generate Loader Image ...
if [ $PROCESSOR = IA32 ]
then
- $BASETOOLS_DIR/GenFw --rebase 0x10000 -o $BUILD_DIR/$PROCESSOR/EfiLoader.efi $BUILD_DIR/$PROCESSOR/EfiLoader.efi
- $BASETOOLS_DIR/EfiLdrImage -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
- cat $BOOTSECTOR_BIN_DIR/Start.com $BOOTSECTOR_BIN_DIR/efi32.com2 $BUILD_DIR/FV/Efildr32 > $BUILD_DIR/FV/Efildr
- #
- # It is safe to use "bcat" to cat following binary file, if bcat command is avaiable for your system
- #
- #bcat -o $BUILD_DIR/FV/Efildr.bcat $BOOTSECTOR_BIN_DIR/start.com $BOOTSECTOR_BIN_DIR/efi32.com2 $BUILD_DIR/FV/Efildr32
- cat $BOOTSECTOR_BIN_DIR/Start16.com $BOOTSECTOR_BIN_DIR/efi32.com2 $BUILD_DIR/FV/Efildr32 > $BUILD_DIR/FV/Efildr16
- #bcat -o $BUILD_DIR/FV/Efildr16.bcat $BOOTSECTOR_BIN_DIR/start16.com $BOOTSECTOR_BIN_DIR/efi32.com2 $BUILD_DIR/FV/Efildr32
- cat $BOOTSECTOR_BIN_DIR/Start32.com $BOOTSECTOR_BIN_DIR/efi32.com2 $BUILD_DIR/FV/Efildr32 > $BUILD_DIR/FV/Efildr20
- #bcat -o $BUILD_DIR/FV/Efildr20.bcat $BOOTSECTOR_BIN_DIR/start32.com $BOOTSECTOR_BIN_DIR/efi32.com2 $BUILD_DIR/FV/Efildr32
- echo Done!
+ $BASETOOLS_DIR/GenFw --rebase 0x10000 -o $BUILD_DIR/$PROCESSOR/EfiLoader.efi $BUILD_DIR/$PROCESSOR/EfiLoader.efi
+ $BASETOOLS_DIR/EfiLdrImage -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
+ cat $BOOTSECTOR_BIN_DIR/Start.com $BOOTSECTOR_BIN_DIR/efi32.com2 $BUILD_DIR/FV/Efildr32 > $BUILD_DIR/FV/Efildr
+ #
+ # It is safe to use "bcat" to cat following binary file, if bcat command is avaiable for your system
+ #
+ #bcat -o $BUILD_DIR/FV/Efildr.bcat $BOOTSECTOR_BIN_DIR/start.com $BOOTSECTOR_BIN_DIR/efi32.com2 $BUILD_DIR/FV/Efildr32
+ cat $BOOTSECTOR_BIN_DIR/Start16.com $BOOTSECTOR_BIN_DIR/efi32.com2 $BUILD_DIR/FV/Efildr32 > $BUILD_DIR/FV/Efildr16
+ #bcat -o $BUILD_DIR/FV/Efildr16.bcat $BOOTSECTOR_BIN_DIR/start16.com $BOOTSECTOR_BIN_DIR/efi32.com2 $BUILD_DIR/FV/Efildr32
+ cat $BOOTSECTOR_BIN_DIR/Start32.com $BOOTSECTOR_BIN_DIR/efi32.com2 $BUILD_DIR/FV/Efildr32 > $BUILD_DIR/FV/Efildr20
+ #bcat -o $BUILD_DIR/FV/Efildr20.bcat $BOOTSECTOR_BIN_DIR/start32.com $BOOTSECTOR_BIN_DIR/efi32.com2 $BUILD_DIR/FV/Efildr32
+ echo Done!
fi
if [ $PROCESSOR = X64 ]
then
- $BASETOOLS_DIR/GenFw --rebase 0x10000 -o $BUILD_DIR/$PROCESSOR/EfiLoader.efi $BUILD_DIR/$PROCESSOR/EfiLoader.efi
- $BASETOOLS_DIR/EfiLdrImage -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
- cat $BOOTSECTOR_BIN_DIR/Start64.com $BOOTSECTOR_BIN_DIR/efi64.com2 $BUILD_DIR/FV/Efildr64 > $BUILD_DIR/FV/EfildrPure
- #bcat -o $BUILD_DIR/FV/EfildrPure $BOOTSECTOR_BIN_DIR/start64.com $BOOTSECTOR_BIN_DIR/efi64.com2 $BUILD_DIR/FV/Efildr64
- $BASETOOLS_DIR/GenPage $BUILD_DIR/FV/EfildrPure -o $BUILD_DIR/FV/Efildr
- cat $BOOTSECTOR_BIN_DIR/St16_64.com $BOOTSECTOR_BIN_DIR/efi64.com2 $BUILD_DIR/FV/Efildr64 > $BUILD_DIR/FV/Efildr16Pure
- #bcat -o $BUILD_DIR/FV/Efildr16Pure $BOOTSECTOR_BIN_DIR/st16_64.com $BOOTSECTOR_BIN_DIR/efi64.com2 $BUILD_DIR/FV/Efildr64
- $BASETOOLS_DIR/GenPage $BUILD_DIR/FV/Efildr16Pure -o $BUILD_DIR/FV/Efildr16
- cat $BOOTSECTOR_BIN_DIR/St32_64.com $BOOTSECTOR_BIN_DIR/efi64.com2 $BUILD_DIR/FV/Efildr64 > $BUILD_DIR/FV/Efildr20Pure
- #bcat -o $BUILD_DIR/FV/Efildr20Pure $BOOTSECTOR_BIN_DIR/st32_64.com $BOOTSECTOR_BIN_DIR/efi64.com2 $BUILD_DIR/FV/Efildr64
- $BASETOOLS_DIR/GenPage $BUILD_DIR/FV/Efildr20Pure -o $BUILD_DIR/FV/Efildr20
-
- echo Done!
+ $BASETOOLS_DIR/GenFw --rebase 0x10000 -o $BUILD_DIR/$PROCESSOR/EfiLoader.efi $BUILD_DIR/$PROCESSOR/EfiLoader.efi
+ $BASETOOLS_DIR/EfiLdrImage -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
+ cat $BOOTSECTOR_BIN_DIR/Start64.com $BOOTSECTOR_BIN_DIR/efi64.com2 $BUILD_DIR/FV/Efildr64 > $BUILD_DIR/FV/EfildrPure
+ #bcat -o $BUILD_DIR/FV/EfildrPure $BOOTSECTOR_BIN_DIR/start64.com $BOOTSECTOR_BIN_DIR/efi64.com2 $BUILD_DIR/FV/Efildr64
+ $BASETOOLS_DIR/GenPage $BUILD_DIR/FV/EfildrPure -o $BUILD_DIR/FV/Efildr
+ cat $BOOTSECTOR_BIN_DIR/St16_64.com $BOOTSECTOR_BIN_DIR/efi64.com2 $BUILD_DIR/FV/Efildr64 > $BUILD_DIR/FV/Efildr16Pure
+ #bcat -o $BUILD_DIR/FV/Efildr16Pure $BOOTSECTOR_BIN_DIR/st16_64.com $BOOTSECTOR_BIN_DIR/efi64.com2 $BUILD_DIR/FV/Efildr64
+ $BASETOOLS_DIR/GenPage $BUILD_DIR/FV/Efildr16Pure -o $BUILD_DIR/FV/Efildr16
+ cat $BOOTSECTOR_BIN_DIR/St32_64.com $BOOTSECTOR_BIN_DIR/efi64.com2 $BUILD_DIR/FV/Efildr64 > $BUILD_DIR/FV/Efildr20Pure
+ #bcat -o $BUILD_DIR/FV/Efildr20Pure $BOOTSECTOR_BIN_DIR/st32_64.com $BOOTSECTOR_BIN_DIR/efi64.com2 $BUILD_DIR/FV/Efildr64
+ $BASETOOLS_DIR/GenPage $BUILD_DIR/FV/Efildr20Pure -o $BUILD_DIR/FV/Efildr20
+
+ echo Done!
fi
To build DUET image, following tools are required:\r
\r
1). *Visual Studio 2005*\r
- Assume installed at <VS_PATH>, \r
+ Assume installed at <VS_PATH>,\r
e.g.: C:\Program Files\Microsoft Visual Studio .NET 2003\.\r
2). WinDDK\r
Assume installed at <WIN_DDK_PATH>, e.g.: C:\WINDDK\3790.1830\.\r
- \r
+\r
2. Build steps\r
\r
-2.1 Build Duet Platform module \r
+2.1 Build Duet Platform module\r
\r
1). run cmd.exe to open command line window.\r
2). enter workspace root directory such as c:\edk2_tree\r
2). run "edksetup.bat"\r
- 3). run "build -p DuetPkg\DuetPkg.dsc -a IA32" for IA32 architecture platform or \r
+ 3). run "build -p DuetPkg\DuetPkg.dsc -a IA32" for IA32 architecture platform or\r
"build -p DuetPkg\DuetPkg.dsc -a X64" for X64 architecture platform.\r
- \r
-2.2 Execute post build actions \r
+\r
+2.2 Execute post build actions\r
1). enter <Workspace>\DuetPkg directory.\r
- 2). run "PostBuild.bat IA32" for IA32 architecture platform or \r
+ 2). run "PostBuild.bat IA32" for IA32 architecture platform or\r
"PostBuild.bat X64" for X64 architecture platform.\r
\r
Create bootable disk\r
======================\r
- \r
+\r
3. Create boot disk\r
The following steps are same for IA32 architecture platform or X64 architecture platform.\r
- \r
+\r
3.1 Create floppy boot disk\r
1). enter <Workspace>\DuetPkg directory.\r
2). Insert a floppy disk to drive\r
or "CreateBootDisk.bat usb e: FAT16 X64 step2" if usb drive is e: and FAT format is FAT16 and Arch to boot is X64.\r
or "CreateBootDisk.bat usb e: FAT32 IA32 step2" if usb drive is e: and FAT format is FAT32 and Arch to boot is IA32.\r
or "CreateBootDisk.bat usb e: FAT32 X64 step2" if usb drive is e: and FAT format is FAT32 and Arch to boot is X64.\r
- \r
+\r
B. Build DUET image on Linux Platform\r
-====================================== \r
+======================================\r
1. Tools preparation\r
\r
To build DUET image, GCC44 is required:\r
\r
2. Build steps\r
\r
-2.1 Build Duet Platform module \r
+2.1 Build Duet Platform module\r
\r
1). Open the terminal.\r
2). enter workspace root directory such as /edk2_tree\r
3). run ". edksetup.sh BaseTools"\r
- 4). run "build -p DuetPkg/DuetPkg.dsc -a IA32 -t GCC44" for IA32 architecture platform or \r
+ 4). run "build -p DuetPkg/DuetPkg.dsc -a IA32 -t GCC44" for IA32 architecture platform or\r
"build -p DuetPkg/DuetPkg.dsc -a X64 -t GCC44" for X64 architecture platform.\r
- \r
-2.2 Execute post build actions \r
+\r
+2.2 Execute post build actions\r
1). enter /edk2_tree/DuetPkg directory.\r
- 2). run "./PostBuild.sh IA32 GCC44" for IA32 architecture platform or \r
+ 2). run "./PostBuild.sh IA32 GCC44" for IA32 architecture platform or\r
"./PostBuild.sh X64 GCC44" for X64 architecture platform.\r
\r
NOTE: After post build action, you should check the size of EfiLdr at $WORKSPACE/Build/DuetPkg/DEBUG_GCC44 directory, it must less than 470k.\r
If not, you should manually remove some unnecessary drivers at DuetPkg.fdf file.\r
- \r
+\r
3. Create bootable disk\r
The following steps are same for IA32 architecture platform or X64 architecture platform.\r
Now only support floopy.\r
- \r
+\r
3.1 Create floppy boot disk\r
- 1). enter /edk2_tree/DuetPkg directory.\r
- 2). Insert a floppy disk to drive\r
- 3). run "CreateBootDisk.sh" to build floppy drive\r
- such as "./CreateBootDisk.sh floppy /media/floppy0 /dev/fd0 FAT12 IA32"
\ No newline at end of file
+ 1). enter /edk2_tree/DuetPkg directory.\r
+ 2). Insert a floppy disk to drive\r
+ 3). run "CreateBootDisk.sh" to build floppy drive\r
+ such as "./CreateBootDisk.sh floppy /media/floppy0 /dev/fd0 FAT12 IA32"\r