TODO: mention that there are new background subtraction methods available
[experiments/opencv_trail_effect.git] / Makefile
index de166de..4e316b9 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -18,18 +18,29 @@ 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
 
+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 opencv)
 LDLIBS += $(shell pkg-config --libs opencv)
 
-opencv_trail_effect: $(wildcard *.hpp)
+LINK.o = $(LINK.cpp)
+opencv_trail_effect:
 
+opencv_trail_effect.o: $(wildcard *.hpp)
 
 # Some command lines to imitate different trail styles
 
@@ -46,7 +57,7 @@ average: opencv_trail_effect
        ./opencv_trail_effect -l 10 -s background -d average -B
 
 clean:
-       rm -f opencv_trail_effect vgdump gtk.suppression
+       rm -f *.o opencv_trail_effect vgdump gtk.suppression
 
 test: opencv_trail_effect
        [ -f gtk.suppression ] || wget -nv https://people.gnome.org/~johan/gtk.suppression