X-Git-Url: https://git.distorted.org.uk/~mdw/fringe/blobdiff_plain/e62da1cffe38e72a832ea39c0e293f4db9848cf1..8a4f4f075a6e2e90039b172242097a4eca48d60b:/Makefile diff --git a/Makefile b/Makefile index 7a4f553..0d87af1 100644 --- a/Makefile +++ b/Makefile @@ -123,7 +123,7 @@ cl-fringe: cl-fringe.fasl ###-------------------------------------------------------------------------- ### F#. -FSC = fsc +FSC = fsharpc FSCFLAGS = CLEANFILES += *.exe .SUFFIXES: .fs .exe @@ -138,7 +138,7 @@ f\#-fringe: f\#-fringe.exe ### Scheme. SCMC = csc -SCMFLAGS = -c -O2 +SCMFLAGS = -c -O2 .SUFFIXES: .scm .scm.o:; $(call v_echo,SCMC)$(SCMC) $(SCMFLAGS) -o $@ $< @@ -150,17 +150,11 @@ scheme-fringe: scheme-fringe.o ###-------------------------------------------------------------------------- ### Go. -GOOBJ = 8 -GOC = $(GOOBJ)g -GOLINK = $(GOOBJ)l -CLEANFILES += *.$(GOOBJ) -.SUFFIXES: .$(GOOBJ) .go -.go.$(GOOBJ):; $(call v_echo,GOC)$(GOC) $(GOFLAGS) $< - +GOBUILD = go build LANGS += go SOURCES += go-fringe.go -go-fringe: go-fringe.$(GOOBJ) - $(call v_echo,GOLD)$(GOLINK) -o $@ $^ +go-fringe: go-fringe.go + $(call v_echo,GO)$(GOBUILD) -o $@ $^ ###-------------------------------------------------------------------------- ### Smalltalk. @@ -178,6 +172,61 @@ smalltalk-fringe: } >$@.new $(V_HIDE)chmod +x $@.new && mv $@.new $@ +###-------------------------------------------------------------------------- +### Forth. + +LANGS += forth +TARGETS += forth-fringe +SOURCES += forth-fringe.fth +forth-fringe: forth-fringe.fth + $(call v_echo,FORTHI)gforthmi $@ $< + +###-------------------------------------------------------------------------- +### Erlang. + +ERLC = erlc +CLEANFILES += *.beam erl_crash.dump +.SUFFIXES: .erl .beam +.erl.beam:; $(call v_echo,ERLC)$(ERLC) $(ERLCFLAGS) $< + +LANGS += erlang +TARGETS += erlang-fringe.beam +SOURCES += erlang-fringe.erl +erlang-fringe: + $(call v_echo,GENSH){ echo '#! /bin/sh'; \ + echo 'exec erl -pa . -noshell -run erlang-fringe main -extra "$$@"'; \ + } >$@.new + $(V_HIDE)chmod +x $@.new && mv $@.new $@ + +###-------------------------------------------------------------------------- +### Algol 68. + +ALGOL68 = /usr/local/bin/a68g + +LANGS += algol68 +TARGETS += algol68-fringe +SOURCES += algol68-fringe.a68 + +algol68-fringe: algol68-fringe.a68 + $(call v_echo,GENSH){ echo '#! $(ALGOL68) --script'; \ + cat $<; \ + } >$@.new + $(V_HIDE)chmod +x $@.new && mv $@.new $@ + +###-------------------------------------------------------------------------- +### Dylan. + +D2C = d2c +CLEANFILES += dylan-*.c *.mak + +LANGS += dylan +TARGETS += dylan-fringe +SOURCES += dylan-fringe.dylan dylan-fringe-exports.dylan +SOURCES += dylan-fringe.lid + +dylan-fringe: dylan-fringe.lid dylan-fringe.dylan dylan-fringe-exports.dylan + $(call v_echo,D2C)d2c -g $< + ###----- That's all, folks -------------------------------------------------- all:: $(TARGETS)