瀏覽代碼

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

Fabian Peter Hammerle 6 年之前
父節點
當前提交
15fc6becaf
共有 1 個文件被更改,包括 13 次插入7 次删除
  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 $^