diff options
-rw-r--r-- | Makefile | 26 | ||||
-rw-r--r-- | cppbuild.cc | 2 |
2 files changed, 17 insertions, 11 deletions
@@ -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) diff --git a/cppbuild.cc b/cppbuild.cc index 3604260..eb8b78e 100644 --- a/cppbuild.cc +++ b/cppbuild.cc @@ -2,7 +2,7 @@ if [ "cppbuild" -ot "$0" ] then echo "Rebuilding cppbuild" - g++ -std=c++17 -pthread $0 libcppbuild.a -o cppbuild + g++ -s -O3 -std=c++17 -pthread $0 libcppbuild.a -o cppbuild [ $? != 0 ] && exit 1 fi |