Browse Source

refactor makefile: define & use CC, LD, CFLAGS & LIBS

Fabian Peter Hammerle 5 years ago
parent
commit
15fc6becaf
1 changed files with 13 additions and 7 deletions
  1. 13 7
      Makefile

+ 13 - 7
Makefile

@@ -1,19 +1,25 @@
+CC ?= gcc
+LD = gcc
+
+CFLAGS := ${CFLAGS} -Wall -Werror -I"$(CURDIR)"
+CFLAGS += $(shell gpgme-config --cflags)
+CFLAGS += $(shell pkg-config fuse3 --cflags)
+
+LIBS += $(shell gpgme-config --libs)
+LIBS += $(shell pkg-config fuse3 --libs)
+
 .PHONY = default format
 
 default : rgpgfs
 
 src/fs.o : src/fs.c src/fs.h
-	gcc -Wall -Werror -I"$(CURDIR)" -c $< -o $@
+	$(CC) $(CFLAGS) -c $< -o $@
 
 src/main.o : src/main.c src/fs.h
-	gcc -Wall -Werror -I"$(CURDIR)" -c $< -o $@ \
-		$(shell pkg-config fuse3 --cflags) \
-		$(shell gpgme-config --cflags)
+	$(CC) $(CFLAGS) -c $< -o $@
 
 rgpgfs : src/*.o
-	gcc $^ -o $@ \
-		$(shell pkg-config fuse3 --libs) \
-		$(shell gpgme-config --libs)
+	$(LD) $^ -o $@ $(LIBS)
 
 format : src/*.c
 	clang-format -i -verbose $^