# Compiler CC=g++ AR=ar CFLAGS=-c -Wall -O2 SOURCES=CornerTableAdaptiveRefinement.cpp ManagerTriangleLevels.cpp CornerTable.cpp UndoRedoRefinement.cpp ManagerUndoOperations.cpp MAIN=main.cpp OBJECTS=$(SOURCES:.cpp=.o) OBJECTMAIN=$(MAIN:.cpp=.o) OBJECTSFPIC=$(SOURCES:.cpp=.o) TARGET=ARTMe SHARED=shared STATIC=static CHOICE= $(SOURCES) $(MAIN) $(TARGET) ifeq ($(LIB), shared) CFLAGS=-c -Wall -O2 -fPIC CHOICE=$(SHARED) else ifeq ($(LIB), static) CHOICE=$(STATIC) endif all: $(CHOICE) $(TARGET): $(OBJECTS) $(OBJECTMAIN) $(CC) $(OBJECTS) $(OBJECTMAIN) -o $@ $(SHARED): $(OBJECTSFPIC) $(CC) -shared $(OBJECTSFPIC) -o libartme.so $(STATIC): $(OBJECTS) $(AR) -cvq libartme.a $(OBJECTS) .cpp.o: $(CC) $(CFLAGS) $< -o $@ clean: rm -rf *.o *~