Files
linux-kernel-module-cheat/rungem5
Ciro Santilli 9e5173f324 GEM5 checkpoint
Add gem5 as buildroot package to cross compile m5.

Add gem5 as a submodule.

Split gem5 from arch on CLI with "-a arm -g" instead of "-a arm-gem5".
2018-02-21 10:19:35 +00:00

37 lines
907 B
Bash
Executable File

#!/usr/bin/env bash
arch=arm
while getopts 'a:' OPT; do
case "$OPT" in
a)
arch="$OPTARG"
;;
esac
done
shift "$(($OPTIND - 1))"
outdir="$(pwd)/buildroot/output.${arch}-gem5~"
gem5_dir="$(pwd)/gem5/gem5"
if [ "$arch" = x86_64 ]; then
cmd="\
M5_PATH='$(pwd)/gem5/gem5-system' \
'${gem5_dir}/build/X86/gem5.opt' \
'${gem5_dir}/configs/example/fs.py' \
--disk-image='${outdir}/images/rootfs.ext2' \
--kernel='${outdir}/build/linux-custom/vmlinux' \
--root-device=/dev/sda \
"
elif [ "$arch" = arm ]; then
cmd="\
M5_PATH='$(pwd)/gem5/gem5-system' \
'${gem5_dir}/build/ARM/gem5.opt' \
'${gem5_dir}/configs/example/fs.py' \
--disk-image='${outdir}/images/rootfs.ext2' \
--dtb-file='${gem5_dir}/system/arm/dt/armv7_gem5_v1_1cpu.dtb' \
--kernel='${outdir}/build/linux-custom/vmlinux' \
--machine-type=VExpress_GEM5_V1 \
--root-device=/dev/sda \
"
fi
cmd="$cmd \"\$@\""
echo "$cmd"
eval "$cmd"