# # Le Makefile du systeme Le_Lisp [sun4] # # SYSTEM=sun4 # # Le directory racine du syste`me # # Mis a jour par la commande newdir # # # Les tailles par de'faut des zones de donne'es # SIZE= -stack 6 -code 800 -heap 256 -number 0 -float 1 \ -vector 4 -string 5 -symbol 5 -cons 10 SIZEX= -stack 6 -code 800 -heap 256 -number 0 -float 1 \ -vector 5 -string 4 -symbol 4 -cons 7 SIZEP= -stack 6 -code 800 -heap 256 -number 0 -float 1 \ -vector 8 -string 6 -symbol 6 -cons 4 SIZEH= -stack 12 -code 1200 -heap 512 -number 0 -float 1 \ -vector 8 -string 12 -symbol 10 -cons 8 # For debugging use -g CDEBUG= # For optimization use -O COPT= -O LLINCLUDE=`pwd`/../common SUNOS= -DSUNOS40 -Bstatic CFLAGS= $(CDEBUG) $(COPT) \ -DSUN4 -DNBSYST=35 -DBSD42 -DBSD4x -Dx11r2 -DTIMEUNIT=60. -DINRIA \ $(SUNOS) -I$(LLINCLUDE) \ -DFILEINI=\"../llib/startup.ll\" cobj= o/llmain.o o/lelisp.o o/llstdio.o o/llfloat.o o/llnumb.o obj= lelispbin.o $(cobj) xobj= o/x11.o o/cstruct.o $(cobj) testextobj= o/testf.o o/testext.o lelispbin.o o/cstruct.o $(cobj) lelispbin: $(obj) cc $(LDFLAGS) $(obj) $(LDLIBS) -o lelispbin BITMAP=X11 leX11bin: $(xobj) lelispbin.o cc $(LDFLAGS) lelispbin.o $(xobj) \ $(XLDLIBS) -o leX11bin letestextbin: $(testextobj) cc $(testextobj) $(LDLIBS) $(LDFLAGS) -o letestextbin # -X to keep local symbols in the executable. -x to save space. LDFLAGS= -x LDLIBS= -lm -lc XLDLIBS= -lX11 $(LDLIBS) # Entry to create 3 standard memory images all: lelisp cmplc lelispX11 # Entry to create standard binaries tout: lelispbin leX11bin o/llmain.o: ../common/llmain.c cc $(CFLAGS) -c $? mv llmain.o o o/lelisp.o: ../common/lelisp.c cc $(CFLAGS) -c $? mv lelisp.o o o/llstdio.o: ../common/llstdio.c cc $(CFLAGS) -c $? mv llstdio.o o o/llfloat.o: ../common/llfloat.c cc $(CFLAGS) -c $? mv llfloat.o o o/llnumb.o: c/llnumb.c cc $(CFLAGS) -c $? mv llnumb.o o o/cstruct.o: ../common/cstruct.c cc $(CFLAGS) -c ../common/cstruct.c mv cstruct.o o/cstruct.o o/x11.o: ../virbitmap/X11/x11.c (CFLAGS="$(CFLAGS)"; \ cd ../virbitmap/X11 ; \ $(MAKE) ../../$(SYSTEM)/o/x11.o SYSTEM=$(SYSTEM) CFLAGS="$$CFLAGS") o/testext.o: ../lltest/testext.c cc $(CFLAGS) -c ../lltest/testext.c mv testext.o o # # Le point d'entre'e permettant de faire le syste`me # lelisp: makefile conf/lelispconf.ll lelispbin ./config lelisp lelispbin lelispconf.ll $(SIZE) lelisp-: makefile conf/lelisp-conf.ll lelispbin ./config lelisp- lelispbin lelisp-conf.ll $(SIZE) lelisp+: makefile conf/lelispconf.ll lelispbin ./config lelisp+ lelispbin lelispconf.ll $(SIZEP) lelisp++: makefile conf/lelispconf.ll lelispbin ./config lelisp++ lelispbin lelispconf.ll $(SIZEH) cmplc: makefile conf/cmplcconf.ll lelispbin ./config cmplc lelispbin cmplcconf.ll $(SIZE) cmplc++: makefile conf/cmplcconf.ll lelispbin ./config cmplc++ lelispbin cmplcconf.ll $(SIZEH) lelispX11: makefile conf/lelispX11conf.ll leX11bin ./config lelispX11 leX11bin lelispX11conf.ll $(SIZEX) # make target that removes all the files that can be regenerated by the # user. clean: rm -f $(cobj) $(xobj) lelisp cmplc lelispX11 lelispbin leX11bin include makesop