diff options
author | Jacob Janzen <jacob.a.s.janzen@gmail.com> | 2024-02-14 12:01:03 -0600 |
---|---|---|
committer | Jacob Janzen <jacob.a.s.janzen@gmail.com> | 2024-02-14 12:01:03 -0600 |
commit | b5b4a5d66deefa3858bedf7bc58e6c96340e829b (patch) | |
tree | 4aa42f746be3c6ce409938796ca95175dfd1da86 /Makefile | |
parent | 8bd664e467f760db6f689eb9d30c3d685abe6de5 (diff) |
major refactor
Diffstat (limited to 'Makefile')
-rw-r--r-- | Makefile | 30 |
1 files changed, 21 insertions, 9 deletions
@@ -1,15 +1,27 @@ -all: main +CC=clang +SRCDIR=src +BUILDDIR=build +TARGET=$(BUILDDIR)/main -CFLAGS=-g +INCLUDE_PATHS=-Iinclude +LDFLAGS=-lcurses -main: main.c cavegen.o ht.o - $(CC) main.c cavegen.o ht.o -lcurses -o main -D_XOPEN_SOURCE_EXTENDED $(CFLAGS) +SRCS=$(wildcard $(SRCDIR)/*.c) +OBJS=$(patsubst $(SRCDIR)/%.c,$(BUILDDIR)/%.o,$(SRCS)) -cavegen.o: cavegen.c - $(CC) cavegen.c -c -o cavegen.o $(CFLAGS) +all: $(TARGET) -ht.o: ht.c - $(CC) ht.c -c -o ht.o $(CFLAGS) +$(BUILDDIR)/%.o: $(SRCDIR)/%.c + mkdir -p $(BUILDDIR) + $(CC) -c $(CFLAGS) $(INCLUDE_PATHS) $^ -o $@ + +$(BUILDDIR)/main.o: main.c + mkdir -p $(BUILDDIR) + $(CC) -c $(CFLAGS) $(INCLUDE_PATHS) $^ -o $@ + +$(TARGET): $(OBJS) $(BUILDDIR)/main.o + mkdir -p $(BUILDDIR) + $(CC) -o $@ $(LDFLAGS) $^ clean: - rm -rf main cavegen.o + rm -rf $(BUILDDIR) |