summaryrefslogtreecommitdiff
path: root/sys/src/9/port/mkrootall
blob: 77fbfd9b73afa58c4d955a82ff4c20f383c7b55f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#!/bin/rc

rfork e
n=`{echo $#*^'%3' | hoc}
if(! ~ $n 0){
	echo 'usage: mkrootall [name cname file]...' >[1=2]
	exit usage
}

tmp=mkroot.$pid.out
fn sigexit {
	rm -f $tmp
}

allcname=()
while(! ~ $#* 0){
	name=$1
	cname=$2
	file=$3
	shift
	shift 
	shift
	allcname=($allcname $cname)
	cp $file $tmp
	t=`{file $tmp}
	# do not strip venti - it uses its own symbols
	if(~ $"t *executable* && ! ~ $name venti)
		strip $tmp
	aux/data2s $cname < $tmp
}
exit 0