summaryrefslogtreecommitdiff
path: root/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile26
1 files changed, 16 insertions, 10 deletions
diff --git a/Makefile b/Makefile
index b3f91cb..c8ce5b4 100644
--- a/Makefile
+++ b/Makefile
@@ -1,14 +1,20 @@
-all: libcppbuild.a cppbuild
+all: libcppbuild.a
-libcppbuild.a: libcppbuild.cc libcppbuild.h task_cc.cc task_cc.h task_ld.cc task_ld.h task.h execute.cc execute.h
- g++ -g -std=c++17 libcppbuild.cc -c -o libcppbuild.o
- g++ -g -std=c++17 task_cc.cc -c -o task_cc.o
- g++ -g -std=c++17 task_ld.cc -c -o task_ld.o
- g++ -g -std=c++17 execute.cc -c -o execute.o
- ar rcs libcppbuild.a libcppbuild.o task_cc.o task_ld.o execute.o
+SRC = \
+ libcppbuild.cc \
+ task_cc.cc \
+ task_ld.cc \
+ execute.cc \
-cppbuild: cppbuild.cc libcppbuild.h libcppbuild.a
- g++ -g -std=c++17 cppbuild.cc libcppbuild.a -pthread -o cppbuild
+OBJ = $(patsubst %.cc,%.o,$(SRC))
+
+CXXFLAGS = -s -O3 -std=c++17
+
+%.o: %.cc
+ g++ $(CXXFLAGS) -c $< -o $@
+
+libcppbuild.a: $(OBJ)
+ ar rcs $@ $(OBJ)
clean:
- rm -f cppbuild libcppbuild.o task_cc.o task_ld.o libcppbuild.a
+ rm -f libcppbuild.a $(OBJ)