From 5cf4f991cb3906dbe31baff8ce7282c2ee299a0c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Maciej=20Krzy=C5=BCanowski?= Date: Mon, 17 Feb 2025 01:03:46 +0100 Subject: [PATCH] Add Makefile --- Makefile | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 Makefile diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..6bd154c --- /dev/null +++ b/Makefile @@ -0,0 +1,37 @@ +CC = gcc +CCFLAGS = -Wall +BUILDDIR = build +SRCS = main.c +OBJS = $(addprefix $(BUILDDIR)/, $(patsubst %.c,%.o,$(SRCS))) +OUT = cvec +INSTALL_PATH?=/usr/local +INSTALL_PATH_BIN=$(INSTALL_PATH)/bin + +.PHONY: all debug format clean +.PRECIOUS: $(BUILDDIR)/. $(BUILDDIR)%/. + +all: $(OUT) + +debug: CCFLAGS += -g +debug: all + +$(BUILDDIR)/.: + mkdir -p $@ + +$(BUILDDIR)%/.: + mkdir -p $@ + +$(OUT): $(OBJS) + $(CC) $^ -o $(OUT) + +.SECONDEXPANSION: + +$(BUILDDIR)/%.o: %.c | $$(@D)/. + $(CC) $(CCFLAGS) -c $< -o $@ + +format: + clang-format -i *.c *.h + +clean: + rm -rf $(BUILDDIR) + rm -f $(OUT)