mirror of
https://github.com/janet-lang/janet
synced 2024-12-24 23:40:27 +00:00
38 lines
679 B
Makefile
38 lines
679 B
Makefile
# TIL
|
|
|
|
CFLAGS=-std=c99 -Wall -Wextra -Wpedantic -g -O3
|
|
|
|
TARGET=interp
|
|
PREFIX=/usr/local
|
|
|
|
# C sources
|
|
HEADERS=vm.h ds.h compile.h parse.h value.h disasm.h datatypes.h gc.h util.h
|
|
SOURCES=main.c parse.c value.c vm.c ds.c compile.c disasm.c gc.c
|
|
OBJECTS=$(patsubst %.c,%.o,$(SOURCES))
|
|
|
|
all: $(TARGET)
|
|
|
|
$(TARGET): $(OBJECTS)
|
|
$(CC) $(CFLAGS) -o $(TARGET) $(OBJECTS)
|
|
|
|
%.o : %.c $(HEADERS)
|
|
$(CC) $(CFLAGS) -o $@ -c $<
|
|
|
|
install: $(TARGET)
|
|
cp $(TARGET) $(PREFIX)/bin
|
|
|
|
clean:
|
|
rm $(TARGET) || true
|
|
rm $(OBJECTS) || true
|
|
|
|
run: $(TARGET)
|
|
./$(TARGET)
|
|
|
|
debug: $(TARGET)
|
|
gdb $(TARGET)
|
|
|
|
valgrind: $(TARGET)
|
|
valgrind ./$(TARGET) --leak-check=full
|
|
|
|
.PHONY: clean install run debug valgrind
|