X-Git-Url: https://git.distorted.org.uk/~mdw/fringe/blobdiff_plain/8f12efe51a97516c5a099121985ea3c878aebd42..23416a991adb0a708812ab87e9554f7e7fcc3374:/Makefile diff --git a/Makefile b/Makefile index 82f588e..d08ed09 100644 --- a/Makefile +++ b/Makefile @@ -70,7 +70,7 @@ c-fringe: c-fringe.o ### Haskell. HC = ghc -HFLAGS = -O2 -XFlexibleInstances +HFLAGS = -O2 CLEANFILES += *.hi *.hc .SUFFIXES: .hs .hs.o:; $(HC) -c $(HFLAGS) -o $@ $< @@ -94,13 +94,16 @@ icon-fringe: icon-fringe.icn ###-------------------------------------------------------------------------- ### Common Lisp. -CLEANFILES += *.core +CLEANFILES += *.core *.fasl + +.SUFFIXES: .lisp .fasl +.lisp.fasl:; sbcl --eval '(quit :unix-status (if (compile-file "$<") 0 1))' LANGS += cl SOURCES += cl-fringe.lisp -cl-fringe: cl-fringe.lisp -## cl-launch -R -o $@ -f `pwd`/$^ -- slow to start - cl-launch -o $@ -f `pwd`/$^ +I -r launch -d $@.core +cl-fringe: cl-fringe.fasl + cp $< $@.new && chmod +x $@.new && mv $@.new $@ +## cl-launch -o $@ -f `pwd`/$^ +I -r launch -d $@.core ###-------------------------------------------------------------------------- ### F#. @@ -121,7 +124,7 @@ f\#-fringe: f\#-fringe.exe SCMC = csc SCMFLAGS = -c -O2 -.SUFFIXES: .scm .o +.SUFFIXES: .scm .scm.o:; $(SCMC) $(SCMFLAGS) -o $@ $< LANGS += scheme @@ -130,6 +133,21 @@ scheme-fringe: scheme-fringe.o $(SCMC) -o $@ $^ ###-------------------------------------------------------------------------- +### Go. + +GOOBJ = 8 +GOC = $(GOOBJ)g +GOLINK = $(GOOBJ)l +CLEANFILES += *.$(GOOBJ) +.SUFFIXES: .$(GOOBJ) .go +.go.$(GOOBJ):; $(GOC) $(GOFLAGS) $< + +LANGS += go +SOURCES += go-fringe.go +go-fringe: go-fringe.$(GOOBJ) + $(GOLINK) -o $@ $^ + +###-------------------------------------------------------------------------- ### Smalltalk. LANGS += smalltalk