From 0b69ee0f3686a5e1eded84fbc64d8f5afa35bce2 Mon Sep 17 00:00:00 2001 From: MrBesen Date: Mon, 21 Sep 2020 15:56:17 +0200 Subject: [PATCH] =?UTF-8?q?unn=C3=B6tige=20flags=20aus=20Makefile=20genomm?= =?UTF-8?q?en?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Makefile | 150 +++++++++++++++++++++++++++---------------------------- 1 file changed, 75 insertions(+), 75 deletions(-) diff --git a/Makefile b/Makefile index 8e6adf3..64475ea 100644 --- a/Makefile +++ b/Makefile @@ -1,75 +1,75 @@ -# Author Yannis Gerlach -# Hochschule Osnabrück -# 29.04.2020 - -# `make clean all` nicht mit -j verwenden! -> race condition im make file -# statdessen: `make clean; make all -j` verwenden - -NAME = %NAME% -NAMETEST = test -CFLAGS = -std=c++17 -O2 -g -pipe -Wall -Wextra -Wno-unused-parameter -Wpedantic -rdynamic -msse2 -mavx2 #-march=native -Wall -CXX = g++ -SRCF = src/ -BUILDDIR = build/ -TESTF = tests/ -DEPF = $(BUILDDIR)deps/ - -LOGF = ./Log/ -LOGO = $(LOGF)Log.o - -INCLUDES = -I$(LOGF) -Iminiaudio/ -LDFLAGS = -lGL -lglfw -lfreeimage -lGLEW -lassimp -lpthread -lm -ldl - -SRCFILES = $(shell find $(SRCF) -name "*.cpp") -OBJFILES = $(patsubst $(SRCF)%, $(BUILDDIR)%, $(patsubst %.cpp, %.o, $(SRCFILES))) $(LOGO) -DEPFILES = $(wildcard $(DEPF)*.d) - -SOURCEDIRS = $(shell find $(SRCF) -type d -printf "%p/\n") -BUILDDIRS = $(patsubst $(SRCF)%, $(BUILDDIR)%, $(SOURCEDIRS)) - -OBJFILESTEST = $(filter-out $(BUILDDIR)main.o, $(OBJFILES)) - -INCLUDES += $(addprefix -I, $(SOURCEDIRS)) - -all: $(NAME) runtest - -$(NAME): $(BUILDDIRS) $(DEPF) $(OBJFILES) - @echo "Linking $@" - @$(CXX) $(CFLAGS) -o $@ $(filter %.o, $^) $(LDFLAGS) - -$(BUILDDIR)%.o: $(SRCF)%.cpp - @echo "Compiling: $@" - @$(CXX) $(CFLAGS) $(INCLUDES) $< -MM -MT $@ > $(DEPF)$(subst /,_,$*).d - @$(CXX) -c -o $@ $(CFLAGS) $(INCLUDES) $< - -$(NAME)_strip: $(NAME) - @echo "Strip $<" - @strip -o $@ $< - -%/: - mkdir -p $@ - -clean-depends: - $(RM) -r $(DEPF) - -$(LOGO): - $(MAKE) -C $(LOGF) all - -clean: - $(RM) -r $(NAME) $(BUILDDIR) $(NAMETEST) $(NAME)_strip shader/debug/ - $(MAKE) -C $(LOGF) $@ - -$(NAMETEST): $(BUILDDIRS) $(DEPF) $(TESTF)*.cpp $(OBJFILESTEST) - @echo "Compiling tests" - @$(CXX) -o $@ $(filter %.o, $^) $(filter %.cpp, $^) $(CFLAGS) -I$(SRCF) $(INCLUDES) $(LDFLAGS) - -runtest: $(NAMETEST) - @echo "Running tests" - ./$< - -# fix assets : -# find assets/ -name '*.*' -exec sh -c 'a=$(echo "$0" | sed -r "s/([^.]*)\$/\L\1/"); [ "$a" != "$0" ] && mv "$0" "$a" ' {} \; - -.PHONY: clean all $(NAMETEST) clean-depends runtest - -include $(DEPFILES) +# Author Yannis Gerlach +# Hochschule Osnabrück +# 29.04.2020 + +# `make clean all` nicht mit -j verwenden! -> race condition im make file +# statdessen: `make clean; make all -j` verwenden + +NAME = %NAME% +NAMETEST = test +CFLAGS = -std=c++17 -O2 -g -pipe -Wall -Wextra -Wno-unused-parameter -Wpedantic -rdynamic #-march=native -Wall +CXX = g++ +SRCF = src/ +BUILDDIR = build/ +TESTF = tests/ +DEPF = $(BUILDDIR)deps/ + +LOGF = ./Log/ +LOGO = $(LOGF)Log.o + +INCLUDES = -I$(LOGF) -Iminiaudio +LDFLAGS = + +SRCFILES = $(shell find $(SRCF) -name "*.cpp") +OBJFILES = $(patsubst $(SRCF)%, $(BUILDDIR)%, $(patsubst %.cpp, %.o, $(SRCFILES))) $(LOGO) +DEPFILES = $(wildcard $(DEPF)*.d) + +SOURCEDIRS = $(shell find $(SRCF) -type d -printf "%p/\n") +BUILDDIRS = $(patsubst $(SRCF)%, $(BUILDDIR)%, $(SOURCEDIRS)) + +OBJFILESTEST = $(filter-out $(BUILDDIR)main.o, $(OBJFILES)) + +INCLUDES += $(addprefix -I, $(SOURCEDIRS)) + +all: $(NAME) runtest + +$(NAME): $(BUILDDIRS) $(DEPF) $(OBJFILES) + @echo "Linking $@" + @$(CXX) $(CFLAGS) -o $@ $(filter %.o, $^) $(LDFLAGS) + +$(BUILDDIR)%.o: $(SRCF)%.cpp + @echo "Compiling: $@" + @$(CXX) $(CFLAGS) $(INCLUDES) $< -MM -MT $@ > $(DEPF)$(subst /,_,$*).d + @$(CXX) -c -o $@ $(CFLAGS) $(INCLUDES) $< + +$(NAME)_strip: $(NAME) + @echo "Strip $<" + @strip -o $@ $< + +%/: + mkdir -p $@ + +clean-depends: + $(RM) -r $(DEPF) + +$(LOGO): + $(MAKE) -C $(LOGF) all + +clean: + $(RM) -r $(NAME) $(BUILDDIR) $(NAMETEST) $(NAME)_strip shader/debug/ + $(MAKE) -C $(LOGF) $@ + +$(NAMETEST): $(BUILDDIRS) $(DEPF) $(TESTF)*.cpp $(OBJFILESTEST) + @echo "Compiling tests" + @$(CXX) -o $@ $(filter %.o, $^) $(filter %.cpp, $^) $(CFLAGS) -I$(SRCF) $(INCLUDES) $(LDFLAGS) + +runtest: $(NAMETEST) + @echo "Running tests" + ./$< + +# fix assets : +# find assets/ -name '*.*' -exec sh -c 'a=$(echo "$0" | sed -r "s/([^.]*)\$/\L\1/"); [ "$a" != "$0" ] && mv "$0" "$a" ' {} \; + +.PHONY: clean all $(NAMETEST) clean-depends runtest + +include $(DEPFILES)