#!/bin/sh
# Assemble a C source file from its component parts.
# The parts are stage2.{$base,$trial}/$testeddir/$module.c.part.{1,2,...$count}.
# Assemble uses the parts from stage2.$trial for the parts whose numbers are
# listed in $tested, and the parts from stage2.$base for the other parts.
# The patchwork file will be put in stage2/$testeddir/$module.c.

if test $# -le 5
then
	echo "Usage: assemble base trial testeddir module count testedparts ..."
	exit 1
fi

base="$1"
trial="$2"
testeddir="$3"
module="$4"
cnt="$5"
shift; shift; shift; shift; shift
tested="$@"

cat /dev/null > stage2/$testeddir/$module.c
i=0
while test $i -le $cnt
do
	if appears $i $tested
	then
		which="$trial"
	else
		which="$base"
	fi
	cat stage2.$which/$testeddir/$module.c.part.$i >> stage2/$testeddir/$module.c
	i=`expr $i + 1`
done
