add script to build grub for galileo
This script will download and build grub.efi which can be used on galileo for booting Zephyr. Change-Id: Iba8777ae3868befa3bcd3972813779dbecd9c947 Signed-off-by: Anas Nashif <anas.nashif@intel.com>
This commit is contained in:
parent
9b9ab3767a
commit
e4fe55c8e8
1
.gitignore
vendored
1
.gitignore
vendored
|
@ -19,3 +19,4 @@ xml
|
|||
html/
|
||||
doc/latex/
|
||||
sanity-out/
|
||||
scripts/grub
|
||||
|
|
64
scripts/build_grub.sh
Executable file
64
scripts/build_grub.sh
Executable file
|
@ -0,0 +1,64 @@
|
|||
#!/bin/bash
|
||||
|
||||
# Originally from the Galileo port in contiki
|
||||
# https://github.com/otcshare/contiki-x86
|
||||
|
||||
set -e
|
||||
|
||||
JOBS=5
|
||||
HEAD="bac5d1a64ab4191058a8fd4c05f6b3b339e249e7"
|
||||
SCRIPT_DIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )
|
||||
|
||||
prepare() {
|
||||
if [[ ! -d ./src ]]; then
|
||||
git clone git://git.savannah.gnu.org/grub.git src
|
||||
fi
|
||||
|
||||
pushd src
|
||||
git checkout $HEAD
|
||||
git clean -fdx
|
||||
popd
|
||||
}
|
||||
|
||||
build() {
|
||||
pushd src
|
||||
|
||||
./autogen.sh
|
||||
./configure --with-platform=efi --target=i386
|
||||
|
||||
make -j${JOBS}
|
||||
|
||||
./grub-mkimage -p /EFI/BOOT -d ./grub-core/ -O i386-efi -o grub.efi \
|
||||
boot efifwsetup efi_gop efinet efi_uga lsefimmap lsefi lsefisystab \
|
||||
exfat fat multiboot2 multiboot terminal part_msdos part_gpt normal \
|
||||
all_video aout configfile echo file fixvideo fshelp gfxterm gfxmenu \
|
||||
gfxterm_background gfxterm_menu legacycfg video_bochs video_cirrus \
|
||||
video_colors video_fb videoinfo video
|
||||
|
||||
popd
|
||||
}
|
||||
|
||||
setup() {
|
||||
mkdir -p bin
|
||||
cp src/grub.efi bin/
|
||||
}
|
||||
|
||||
cleanup() {
|
||||
rm -rf ./src
|
||||
rm -rf ./bin
|
||||
}
|
||||
|
||||
# This script will always run on its own basepath, no matter where you call it from.
|
||||
mkdir -p ${SCRIPT_DIR}/grub
|
||||
pushd ${SCRIPT_DIR}/grub
|
||||
|
||||
case $1 in
|
||||
-c | --cleanup)
|
||||
cleanup
|
||||
;;
|
||||
*)
|
||||
prepare && build && setup
|
||||
;;
|
||||
esac
|
||||
|
||||
popd
|
Loading…
Reference in a new issue