ABC := ../xtest_abc

ulm.path := $(patsubst %/,%,$(shell cat "path-to-ulm"))

AS  := $(ulm.path)/ulmas
ULM := $(ulm.path)/ulm

io.hack.s := getuint64.s printuint64.s

example.src := $(wildcard *.abc)
example.s   := $(patsubst %.abc,%.s,$(example.src))
example     := $(patsubst %.abc,%,$(example.src))

all: $(example)

%.s : %.abc $(ABC)
        $(ABC) $@ < $<

% : %.s
        $(AS) $^ $(io.hack.s)
        (echo "#! $(ULM)"; cat a.out) > $@
        $(RM) a.out
        chmod +x $@

clean:
        $(RM) $(example)
