CONFIG := clang-debug # CONFIG := gcc-debug # CONFIG := profile # CONFIG := release CC = clang CXX = clang++ CXXFLAGS = -MD -Wall -Wextra -ggdb LIBS = -lstdc++ ifeq ($(CONFIG),clang-debug) CXXFLAGS += -std=c++11 -O0 endif ifeq ($(CONFIG),gcc-debug) CC = gcc CXX = g++ CXXFLAGS += -std=gnu++0x -O0 endif ifeq ($(CONFIG),profile) CC = gcc CXX = g++ CXXFLAGS += -std=gnu++0x -Os -DNDEBUG endif ifeq ($(CONFIG),release) CC = gcc CXX = g++ CXXFLAGS += -std=gnu++0x -march=native -O3 -DNDEBUG endif all: demo scshell demo: demo.o subcircuit.o scshell: scshell.o subcircuit.o test: scshell ./scshell < test_macc22.txt ./scshell < test_mine.txt perl test_perm.pl | ./scshell splrun test_shorts.spl | ./scshell splrun test_large.spl | ./scshell clean: rm -f demo scshell *.o *.d .PHONY: all test clean -include *.d