shithub: ninethings

ref: e249da07af9609bbbb4a197ea20cb6f02816f29b
dir: /rc/sysbuild/

View raw version
#!/bin/rc -b
rfork en

flagfmt='f:force';
eval `''{aux/getflags $*} || exec aux/usage

cd /
if(! test -d .git)
	bind -ac /dist/plan9front /
branch=`{git/branch}
cid=`{cat /.git/refs/$branch}
ver=unknown

if(test -f /sys/version)
	ver=`{cat /sys/version}

if(! ~ $force 1){
	if(~ $ver $cid){
		echo System up-to-date: $ver
		exit 0
	}
}

fn build{
	mk && mk install
}

cd /sys/src
build

machine=`{echo $terminal | awk -F/ '{print $5}'}
switch($machine){
case imx8
	cd /sys/src/9/imx8
	build
	if(! test -f /srv/ext4)
		ext4srv
	mount /srv/ext4 /n/emmc /dev/sdO0/linux
	cp /arm64/9reform.u /n/emmc/
case pc64
	cd /sys/src/9/pc64
	build
	bind -a '#S' /dev
	9fs 9fat
	cp /amd64/9pc64 /n/9fat/
}

echo $cid >/sys/version
echo Updated to $cid