27 lines
580 B
Makefile
27 lines
580 B
Makefile
JC ?= jasmin/compiler/jasminc
|
|
CC ?= gcc
|
|
MAKE ?= make
|
|
|
|
.PHONY: clean run $(JC)
|
|
|
|
all: build
|
|
@true
|
|
|
|
build: build/agent.o syscall/jasmin_syscall.o
|
|
ar -crs build/libagent.a build/agent.o syscall/jasmin_syscall.o
|
|
|
|
build/%.o: build/%.S
|
|
$(CC) $< -c -o $@
|
|
|
|
clean:
|
|
rm build/* 2> /dev/null || true
|
|
|
|
$(JC):
|
|
nix-shell jasmin/default.nix --command 'make -C jasmin/compiler CIL -j$(nproc) && make -C jasmin/compiler'
|
|
|
|
build/%.S: src/%.jazz $(JC)
|
|
JASMINPATH="Jade=libjade/src/" $(JC) $< -o $@
|
|
|
|
syscall/jasmin_syscall.o: syscall/jasmin_syscall.c syscall/jasmin_syscall.h
|
|
$(MAKE) -C syscall
|