arm-sdk

os build toolkit for various embedded devices
git clone https://git.parazyd.org/arm-sdk
Log | Files | Refs | Submodules | README | LICENSE

commit 397332e937352835ab8db0cac87d1ff61693f90a
parent 9a257e450cb0715a6405ddbeb1b1b4bc3758dac4
Author: parazyd <parazyd@dyne.org>
Date:   Fri, 30 Sep 2016 10:50:36 +0200

add prebuild and postbuild at kernel

Diffstat:
Mboards/example.sh | 18++++++++++++++++++
Mboards/raspberry-pi.sh | 35++++++++++++++++++++++++++++++++++-
2 files changed, 52 insertions(+), 1 deletion(-)

diff --git a/boards/example.sh b/boards/example.sh @@ -46,6 +46,20 @@ custmodules=() # add the snd module here perhaps gitkernel="https://github.com/raspberrypi/linux.git" gitbranch="rpi-4.4.y" +## things you need to do before building the kernel +prebuild() { + fn prebuild + notice "executing $device_name prebuild" + return 0 +} + +## things you need to do after building the kernel +postbuild() { + fn postbuild + notice "executing $device_name postbuild" + return 0 +} + ## kernel build function build_kernel_armhf() { fn build_kernel_armhf @@ -53,6 +67,8 @@ build_kernel_armhf() { req+=(workdir strapdir) ckreq || return 1 + prebuild + notice "building $arch kernel" act "grabbing kernel sources" @@ -73,4 +89,6 @@ are sudo rm -rf $strapdir/lib/firmware get-kernel-firmware sudo cp -ra $R/tmp/linux-firmware $strapdir/lib/firmware + + postbuild } diff --git a/boards/raspberry-pi.sh b/boards/raspberry-pi.sh @@ -20,7 +20,7 @@ ## kernel build script for Raspberry Pi 2/3 boards ## settings & config -vars+=(device_name arch size parted_boot parted_root inittab) +vars+=(device_name arch size parted_type parted_boot parted_root inittab) vars+=(gitkernel gitbranch rpifirmware) arrs+=(custmodules extra_packages) @@ -29,6 +29,7 @@ arch="armhf" size=1337 inittab="T0:23:respawn:/sbin/agetty -L ttyAMA0 115200 vt100" +parted_type="dos" parted_boot="fat32 0 64" parted_root="ext4 64 -1" @@ -39,12 +40,42 @@ gitkernel="https://github.com/raspberrypi/linux.git" gitbranch="rpi-4.4.y" rpifirmware="https://github.com/raspberrypi/firmware.git" +prebuild() { + fn prebuild + req=(device_name strapdir) + ckreq || return 1 + + notice "executing $device_name prebuild" + + ## fstab + cat <<EOF | sudo tee ${strapdir}/etc/fstab +## <file system> <mount point> <type> <options> <dump><pass> +## proc +proc /proc proc nodev,noexec,nosuid 0 0 + +## rootfs +/dev/mmcblk0p2 / ext4 errors=remount-ro 0 1 + +## bootfs +/dev/mmcblk0p1 /boot vfat noauto 0 0 +EOF +} + +postbuild() { + fn postbuild + + notice "executing $device_name postbuild" + return 0 +} + build_kernel_armhf() { fn build_kernel_armhf req=(R arch device_name gitkernel gitbranch MAKEOPTS rpifirmware) req+=(workdir strapdir) ckreq || return 1 + prebuild || zerr + notice "building $arch kernel" act "grabbing kernel sources" @@ -97,4 +128,6 @@ EOF sudo mkdir -p $strapdir/lib/firmware/brcm sudo cp -v $R/extra/rpi3/brcmfmac43430-sdio.txt $strapdir/lib/firmware/brcm/ sudo cp -v $R/extra/rpi3/brcmfmac43430-sdio.bin $strapdir/lib/firmware/brcm/ + + postbuild || zerr }