2016-08-04 11:33:18 +02:00
|
|
|
TARGET := test
|
|
|
|
|
|
|
|
CFILES := $(wildcard *.c) $(wildcard ../../source/maths/*.c)
|
|
|
|
CXXFILES := $(wildcard *.cpp)
|
2016-08-04 21:23:28 +02:00
|
|
|
OFILES := $(addprefix build/,$(CXXFILES:.cpp=.o)) \
|
|
|
|
$(patsubst ../../source/maths/%,build/%,$(CFILES:.c=.o))
|
|
|
|
DFILES := $(wildcard build/*.d)
|
2016-08-04 11:33:18 +02:00
|
|
|
|
2016-08-05 06:42:03 +02:00
|
|
|
CFLAGS := -Wall -g -pipe -I../../include --coverage
|
2021-06-17 20:51:26 +02:00
|
|
|
CXXFLAGS := $(CFLAGS) $(CPPFLAGS) -std=gnu++11 -DGLM_FORCE_RADIANS -DGLM_FORCE_CTOR_INIT
|
2016-08-05 06:42:03 +02:00
|
|
|
LDFLAGS := $(ARCH) -pipe -lm --coverage
|
2016-08-04 11:33:18 +02:00
|
|
|
|
2016-08-05 06:42:03 +02:00
|
|
|
.PHONY: all clean lcov
|
2016-08-04 11:33:18 +02:00
|
|
|
|
|
|
|
all: $(TARGET)
|
|
|
|
|
|
|
|
$(TARGET): $(OFILES)
|
|
|
|
@echo "Linking $@"
|
|
|
|
$(CXX) -o $@ $^ $(LDFLAGS)
|
|
|
|
|
2016-08-05 06:42:03 +02:00
|
|
|
lcov: all
|
|
|
|
@./$(TARGET)
|
|
|
|
@lcov --capture --no-external --directory ../../include --directory ../../source --directory ../../test/pc --output-file coverage.info
|
|
|
|
@genhtml coverage.info --output-directory lcov
|
|
|
|
|
2016-08-04 21:23:28 +02:00
|
|
|
$(OFILES): | build
|
|
|
|
|
|
|
|
build:
|
|
|
|
@[ -d build ] || mkdir build
|
|
|
|
|
|
|
|
build/%.o : %.cpp $(wildcard *.h)
|
2016-08-04 11:33:18 +02:00
|
|
|
@echo "Compiling $@"
|
2016-08-04 21:23:28 +02:00
|
|
|
@$(CXX) -o $@ -c $< $(CXXFLAGS) -MMD -MP -MF build/$*.d
|
2016-08-04 11:33:18 +02:00
|
|
|
|
2016-08-04 21:23:28 +02:00
|
|
|
build/%.o : ../../source/maths/%.c $(wildcard *.h)
|
2016-08-04 11:33:18 +02:00
|
|
|
@echo "Compiling $@"
|
2016-08-04 21:23:28 +02:00
|
|
|
@$(CC) -o $@ -c $< $(CFLAGS) -MMD -MP -MF build/$*.d
|
2016-08-04 11:33:18 +02:00
|
|
|
|
|
|
|
clean:
|
2016-08-05 06:42:03 +02:00
|
|
|
$(RM) -r $(TARGET) build/ coverage.info lcov/
|
2016-08-04 11:33:18 +02:00
|
|
|
|
|
|
|
-include $(DFILES)
|