# Makefile for T3.1.
TMACHINE=sparc
# You define TSOURCES and TSYSTEM.
TSYSTEM		= .
TSOURCES	= $(TSYSTEM)/sources

BUILD		= $(TSOURCES)/comp/build
TOP		= $(TSOURCES)/comp/top
ORBIT_TOP	= $(TSOURCES)/comp/top
FRONT_END	= $(TSOURCES)/comp/front_end
BACK_END	= $(TSOURCES)/comp/back_end
ASSEMBLER	= $(TSOURCES)/comp/assembler
T3_PRIMOPS	= $(TSOURCES)/comp/primops
PRIMOP_SOURCE	= $(TSOURCES)/comp/primops
PRIMOP_DEST	= $(TSOURCES)/comp/primops
OSYS		= $(TSOURCES)/sys
LINK		= $(TSOURCES)/link
TSCHEME		= $(TSOURCES)/scheme

CFLAGS	= -O

all:	t localfs.t

t:	t.o $(TMACHINE)_start_t.o unassist.o expand.o dynload.o float.o 
	sh linkt t.o t

t.o:	new
	echo "((*value t-implementation-env 'load-and-suspend-system) \
		'(tsystem t) t) (exit)" | time new -h 8000000

new:	new.o $(TMACHINE)_start_t.o unassist.o expand.o dynload.o float.o 
	sh linkt new.o new

new.o:	xt
	echo "(load '(build $(TMACHINE)build) orbit-env) \
		(compile-support) (exit)" \
		| time xt
	echo "(load '(build $(TMACHINE)build) orbit-env) \
		(compile-sources) (exit)" \
		| time xt
	echo "(load '(build $(TMACHINE)build) orbit-env) \
		(link-t '(tsystem new)) (exit)" \
		| time xt -h 8000000

localfs.t:
	echo "(`hostname`)" > $@
