Added generic makefile

This commit is contained in:
crt0mega 2023-10-25 20:12:38 +02:00
parent 76df21b0b4
commit 6f5e8bfe7e
Signed by: crt0mega
GPG Key ID: 7F512C892B9C60CD
1 changed files with 25 additions and 0 deletions

25
makefile Normal file
View File

@ -0,0 +1,25 @@
CC := gcc #clang
PKGS :=
SRCDIR := .
BUILDDIR := build
CFLAGS := -g -Wall -std=c99 `pkg-config --cflags $(PKGS)`
LIBS := `pkg-config --libs $(PKGS)`
TARGET := esrpatch
SRCEXT = c
SOURCES := $(shell find $(SRCDIR) -type f -name *.$(SRCEXT))
OBJECTS := $(patsubst $(SRCDIR)/%,$(BUILDDIR)/%,$(SOURCES:.$(SRCEXT)=.o))
DEPS := $(OBJECTS:.o=.deps)
$(TARGET): $(OBJECTS)
@echo " Linking..."; $(CC) $^ -o $(TARGET) $(LIBS)
$(BUILDDIR)/%.o: $(SRCDIR)/%.$(SRCEXT)
@mkdir -p $(BUILDDIR)
@echo " CC $<"; $(CC) $(CFLAGS) -MD -MF $(@:.o=.deps) -c -o $@ $<
clean:
@echo " Cleaning..."; $(RM) -r $(BUILDDIR) $(TARGET)
-include $(DEPS)
.PHONY: clean