mirror of https://github.com/acidanthera/audk.git
remove --image-base option EfiLdr.inf, and use GenFw to do image base relocation
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10571 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
parent
8850ca7536
commit
63c89e0468
|
@ -57,4 +57,3 @@
|
|||
MSFT:*_*_IA32_ASM_FLAGS == /nologo /W3 /WX /c /coff /Cx /Zd /W0 /Zi
|
||||
MSFT:*_*_IA32_ASMLINK_FLAGS == /link /nologo /tiny
|
||||
MSFT:*_*_*_DLINK_FLAGS = /BASE:0x10000
|
||||
GCC:*_*_*_DLINK_FLAGS = --image-base 0x10000
|
||||
|
|
|
@ -30,7 +30,7 @@ if [ \
|
|||
]
|
||||
then
|
||||
echo Error! Please specific the architecture.
|
||||
echo Usage: "./PostBuild.sh [IA32|X64]"
|
||||
echo Usage: "./PostBuild.sh [IA32|X64] [UNIXGCC|GCC44]"
|
||||
fi
|
||||
|
||||
case "$1" in
|
||||
|
@ -45,7 +45,19 @@ case "$1" in
|
|||
return 1
|
||||
esac
|
||||
|
||||
export BUILD_DIR=$WORKSPACE/Build/DuetPkg$PROCESSOR/DEBUG_UNIXGCC
|
||||
case "$2" in
|
||||
UNIXGCC)
|
||||
export TOOLTAG=UNIXGCC
|
||||
;;
|
||||
GCC44)
|
||||
export TOOLTAG=GCC44
|
||||
;;
|
||||
*)
|
||||
echo Invalid tool tag, should be only UNIXGCC or GCC44
|
||||
return 1
|
||||
esac
|
||||
|
||||
export BUILD_DIR=$WORKSPACE/Build/DuetPkg$PROCESSOR/DEBUG_$TOOLTAG
|
||||
|
||||
|
||||
#
|
||||
|
@ -65,21 +77,23 @@ 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
|
||||
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
|
||||
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
|
||||
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
|
||||
|
|
Loading…
Reference in New Issue