PORTDIR	= ../unixport

LDCC = ${CC}
# begin makedefs
GCLDIR=/d11/wfs/newakcl
SHELL=/bin/sh
MACHINE=sun4

LBINDIR=/usr/local/bin
OFLAG	=  -O
LIBS	= -lm 

#include "sparc.h"

# the commercial (for money) C compiler has never been able
# to compile akcl/gcl correctly.  Perhaps it does not like the idea
# that this is free software.   However the standard C compiler is ok.

CC = cc  -DVOL=  -I$(GCLDIR)/o -Bstatic -temp=. -pipe
CC = cc  -DVOL=  -I$(GCLDIR)/o -Bstatic  -pipe
ODIR_DEBUG=-O4

#gcc 2.1 and 2.2 compile gcl correctly as far as I have been able to determine.
#gcc 2.3.3 does not compile gcl correctly
# gcc 2.5.7 is correct as far as I can tell
#CC = gcc -I${GCLDIR}/o -static -DVOL=volatile -W 

AS=as -P

CFLAGS	= -c $(DEFS)  -I../h

MAIN    = ../o/main.o

MPFILES=$(MPDIR)/mpi-sparc.o $(MPDIR)/sparcdivul3.o $(MPDIR)/libmport.a
#MPFILES=${MPDIR}/mpi.o ${MPDIR}/libmport.a

RSYM	= rsym
SFASL	= $(ODIR)/sfasl.o

# This function will be run before dumping.
# When using SFASL it is good to have (si::build-symbol-table)
INITFORM=(si::build-symbol-table)



# Use symbolic links
SYMB=-s
# the  make to use for saved_kcp the profiler.
KCP=kcp-sun

NULLFILE = ../h/secondary_sun_magic

# end makedefs

OBJS =	../o/main.o ../o/alloc.o ../o/gbc.o  ../o/typespec.o ../o/eval.o ../o/macros.o ../o/lex.o ../o/bds.o ../o/frame.o ../o/predicate.o ../o/reference.o ../o/assignment.o ../o/bind.o ../o/let.o ../o/conditional.o ../o/block.o ../o/iteration.o ../o/mapfun.o ../o/prog.o ../o/multival.o ../o/catch.o ../o/symbol.o ../o/cfun.o ../o/cmpaux.o ../o/package.o ../o/big.o ../o/number.o ../o/num_pred.o ../o/num_comp.o ../o/num_arith.o ../o/num_sfun.o ../o/num_co.o ../o/num_log.o ../o/num_rand.o ../o/earith.o ../o/character.o ../o/sequence.o ../o/list.o ../o/hash.o ../o/array.o ../o/string.o ../o/structure.o ../o/toplevel.o ../o/file.o ../o/read.o ../o/backq.o ../o/print.o ../o/format.o ../o/pathname.o ../o/unixfsys.o ../o/unixfasl.o ../o/error.o ../o/unixtime.o ../o/unixsys.o ../o/unixsave.o ../o/unixint.o $(SFASL) ../o/funlink.o ../o/fat_string.o \
	sys_kcn.o ../lsp/defmacro.o ../lsp/evalmacros.o ../lsp/top.o ../lsp/module.o ../o/run_process.o ../o/init_pari.o  $(MPFILES)

OPTIONAL  =	../lsp/predlib.o ../lsp/setf.o ../lsp/arraylib.o ../lsp/assert.o ../lsp/defstruct.o ../lsp/describe.o ../lsp/iolib.o ../lsp/listlib.o ../lsp/mislib.o ../lsp/numlib.o ../lsp/packlib.o ../lsp/seq.o ../lsp/seqlib.o ../lsp/trace.o 

ODIR=../o

saved_kcn: raw_kcn init_kcn.lsp ../lsp/autoload.lsp ../lsp/auto.lsp
	cat init_kcn.lsp | sed -e "sDATE`date`g" \
	-e 'slinks t)links t)(setq compiler::*cc* "$(CC)")$(INITFORM)g' \
	| raw_kcn $(PORTDIR)/

raw_kcn: $(OBJS) $(OPTIONAL) 
	$(LDCC)  -o raw_kcn $(OBJS) $(LIBS) ../o/akcllib.a

KCND = .

sys_kcn.o: $(KCND)/sys_kcn.c
	$(CC) $(OFLAGS) $(DEFS) -c $(KCND)/sys_kcn.c



