pass-lang/Makefile

30 lines
602 B
Makefile

SHELL = /bin/sh
.SUFFIXES:
.SUFFIXES: .c .o
CFLAGS = -std=c99 -pedantic -Wextra -Os
LDFLAGS = -lc
OBJECTS = asm.o format.o io.o ir.o lex.o lex/indent.o lang.o main.o parse.o x86encode.o
.PHONY: passc
passc: .bin $(OBJECTS)
$(CC) -o bin/passc $(addprefix bin/obj/,$(OBJECTS)) $(LDFLAGS)
.PHONY: .bin
.bin:
@mkdir -p bin/obj bin/obj/lex
%.o : src/%.c
$(CC) -c $(CFLAGS) $< -o bin/obj/$@
# if you know how to avoid this duplication for subdirectories,
# please send a patch or tell me how!
lex/indent.o : src/lex/indent.c
$(CC) -c $(CFLAGS) $< -o bin/obj/$@
.PHONY: clean
clean:
@-rm -rf bin