https://github.com/michelleblom/margin-irv
Tip revision: 8dab1759785d5e44321c512a17b8f6cb1fbfa52f authored by michelleblom on 18 September 2019, 07:20:29 UTC
Updated flags in Makefile and licence headers.
Updated flags in Makefile and licence headers.
Tip revision: 8dab175
Makefile
PROGRAM = marginirv
RM = rm -rf
OBJDIR = obj
CPLEX=/opt/ibm/ILOG/CPLEX_Studio129
CPLEXLIB=$(CPLEX)/cplex/lib/x86-64_linux/static_pic/
CONCERTLIB=$(CPLEX)/concert/lib/x86-64_linux/static_pic/
BASEDIRS = \
-I. \
-I$(CPLEX)/cplex/include \
-I$(CPLEX)/concert/include
INCLUDEDIRS = $(BASEDIRS)
CXX = g++
LD =
SUFFIX = o
CXXFLAGS = -Wall -pedantic -g $(INCLUDEDIRS) -m64 -fPIC \
-fexceptions -DNEBUG -DIL_STD -Wno-long-long \
-Wno-attributes -Wno-ignored-attributes -fpermissive -Wno-sign-compare
LDFLAGS = -lboost_system -lboost_filesystem \
-L$(CPLEXLIB) -lilocplex -lcplex \
-L$(CONCERTLIB) -lconcert -m64 -lm -pthread -lrt -ldl
RENAME = -o
CXXSOURCES = \
marginirv.cpp \
sim_irv.cpp \
model.cpp \
tree_irv.cpp \
irv_distance.cpp
CXXOBJECTS = $(patsubst %.cpp, $(OBJDIR)/%.$(SUFFIX), $(CXXSOURCES))
all : $(PROGRAM)
$(PROGRAM) : $(CXXOBJECTS)
$(CXX) -o ${@} $(CXXOBJECTS) $(LD) $(LDFLAGS)
$(OBJDIR)/%.$(SUFFIX) : %.cpp
@mkdir -p $(@D)
$(CXX) $(CXXFLAGS) $(RENAME) $(@D)/$(@F) -c $(<)
clean:
$(RM) $(CXXOBJECTS) $(PROGRAM) $(OBJDIR)