Makefile: add a target for an "accumulate" effect
[experiments/opencv_trail_effect.git] / Makefile
index a008ba9..195d157 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -1,4 +1,4 @@
-CXXFLAGS = -ansi -pedantic -pedantic-errors -Wall -g3 -O2 -D_ANSI_SOURCE_
+CXXFLAGS = -std=c++11 -pedantic -pedantic-errors -Wall -g3 -O2 -D_ANSI_SOURCE_
 CXXFLAGS += -fno-common \
            -fvisibility=hidden \
            -Wall \
@@ -18,15 +18,24 @@ CXXFLAGS += -fno-common \
            -Wswitch-enum \
            -Wundef \
            -Wunreachable-code \
-           -Wunsafe-loop-optimizations \
-           -Wunused-but-set-variable \
            -Wwrite-strings \
            -Wp,-D_FORTIFY_SOURCE=2 \
            -fstack-protector \
            --param=ssp-buffer-size=4
 
-CXXFLAGS += $(shell pkg-config --cflags opencv)
-LDLIBS += $(shell pkg-config --libs opencv)
+COMPILER = $(shell $(CXX) -v 2>&1 | grep -q "clang version" && echo clang || echo gcc)
+
+ifeq ($(COMPILER), gcc)
+  CXXFLAGS += -Wunsafe-loop-optimizations \
+             -Wunused-but-set-variable
+endif
+
+ifeq ($(COMPILER), clang)
+  LDFLAGS += -Qunused-arguments
+endif
+
+CXXFLAGS += $(shell pkg-config --cflags opencv4 | sed -e 's/-I/-isystem/g')
+LDLIBS += $(shell pkg-config --libs opencv4)
 
 LINK.o = $(LINK.cpp)
 opencv_trail_effect:
@@ -47,6 +56,9 @@ l_anima_vola: opencv_trail_effect
 average: opencv_trail_effect
        ./opencv_trail_effect -l 10 -s background -d average -B
 
+accumulate: opencv_trail_effect
+       ./opencv_trail_effect -b 0 -t 5 -l 25 -s threshold -d accumulate
+
 clean:
        rm -f *.o opencv_trail_effect vgdump gtk.suppression