smarter makefile
This commit is contained in:
15
Makefile
15
Makefile
@@ -2,23 +2,20 @@ MAKEFLAGS := --jobs=16
|
||||
# MAKEFLAGS += --output-sync=target
|
||||
|
||||
# compiling with C++26
|
||||
CXXFLAGS := -std=c++2c -fdiagnostics-color=always -Iinclude -lwebsockets
|
||||
CXXFLAGS := -std=c++2c -fdiagnostics-color=always -Iinclude -lwebsockets -lz
|
||||
CXXFLAGS += -MMD -MP
|
||||
CXXFLAGS += -O2 -s
|
||||
|
||||
SOURCES := main.cpp $(wildcard src/*.cpp)
|
||||
SOURCES := $(wildcard src/*.cpp)
|
||||
OBJECTS := $(SOURCES:.cpp=.o)
|
||||
DEPS := $(OBJECTS:.o=.d)
|
||||
|
||||
TEST_SRC := test.cpp $(wildcard src/*.cpp)
|
||||
TEST_OBJS := $(TEST_SRC:.cpp=.o)
|
||||
|
||||
# glowny target, linkuje linuxSmartie, potrzebuje ${OBJECTS}
|
||||
linuxSmartie: $(OBJECTS)
|
||||
# glowny target, linkuje linuxSmartie, potrzebuje ${OBJECTS}, jest na samej górze wiec jest domyslny
|
||||
linuxSmartie: main.o $(OBJECTS)
|
||||
g++ $(CXXFLAGS) -o $@ $^
|
||||
|
||||
# kompiluje test.cpp zamiast main.cpp
|
||||
test: $(TEST_OBJS)
|
||||
test: test.o $(OBJECTS)
|
||||
g++ $(CXXFLAGS) -o $@ $^
|
||||
|
||||
# kompiluje obiekty, potrzebuje zrodel cpp
|
||||
@@ -27,7 +24,7 @@ test: $(TEST_OBJS)
|
||||
|
||||
-include $(DEPS)
|
||||
|
||||
.PHONY: clean cleanobj
|
||||
.PHONY: clean cleanobj install_service
|
||||
|
||||
cleanobj:
|
||||
rm -f $(OBJECTS) $(DEPS) $(TEST_OBJS)
|
||||
|
||||
Reference in New Issue
Block a user