################################################################################ # Makefile for probcons ################################################################################ ################################################################################ # 1) Choose C++ compiler. ################################################################################ CXX = g++ ################################################################################ # 2) Set C++ flags. # a) DEBUG mode -- no optimizations, enable SafeVector checking, no inlining # b) PROFILE mode -- for gprof # c) RELEASE mode ################################################################################ BIG_INLINE_LIMIT = 20000 PROBCONS = ./probconsRNA VIENNA = ./vienna # no -Wall option for warning CXXFLAGS = -O3 -funroll-loops -finline-limit=$(BIG_INLINE_LIMIT) OFLAGS = -DNDEBUG -DNumInsertStates=1 -DVERSION="2.0" $(CXXFLAGS) $(CFLAGS1) LIBS = -L$(PROBCONS) -L./ INCL = -I$(PROBCONS) -I$(VIENNA) -I./ ################################################################################ # 3) Dependencies ################################################################################ TARGETS = mxscarna OBJS = Main.o McCaskill.o vienna/energy_param.o seq2scs.o Globaldp.o postProcessings.o AlifoldMEA.o .PHONY : all all : $(TARGETS) mxscarna : $(OBJS) $(CXX) $(LIBS) $(OFLAGS) -lm -o $@ $(OBJS) rfold: cd $(RFOLD); \ make; \ cd .. \ cd .. probcons: cd $(PROBCONS); \ make; \ cd .. #probcons : MultiSequence.h ProbabilisticModel.h ScoreType.h Sequence.h FileBuffer.h SparseMatrix.h EvolutionaryTree.h Defaults.h SafeVector.h Main.cc # $(CXX) -lm -o probcons $(OBJS) #Main.cc Main.o : $(PROBCONS)/SafeVector.h $(PROBCONS)/FileBuffer.h $(PROBCONS)/Sequence.h $(PROBCONS)/MultiSequence.h $(PROBCONS)/EvolutionaryTree.h scarna.hpp BPPMatrix.hpp StemCandidate.hpp Globaldp.hpp AlifoldMEA.h Main.cc $(CXX) $(INCL) $(OFLAGS) -c Main.cc -o Main.o McCaskill.o: McCaskill.hpp $(VIENNA)/energy_param.hpp Util.hpp Beta.hpp ScoreType.hpp McCaskill.cpp $(CXX) $(INCL) $(OFLAGS) -c McCaskill.cpp -o McCaskill.o $(VIENNA)/energy_param.o: $(VIENNA)/energy_param.hpp $(VIENNA)/energy_param.cpp $(CXX) $(INCL) $(OFLAGS) -c $(VIENNA)/energy_param.cpp -o $(VIENNA)/energy_param.o seq2scs.o: $(PROBCONS)/SafeVector.h StemCandidate.hpp $(PROBCONS)/Sequence.h $(PROBCONS)/MultiSequence.h BPPMatrix.hpp nrutil.h seq2scs.cpp $(CXX) $(INCL) $(OFLAGS) -c seq2scs.cpp -o seq2scs.o Globaldp.o: Globaldp.hpp nrutil.h Util.hpp Beta.hpp scarna.hpp StemCandidate.hpp $(PROBCONS)/MultiSequence.h $(PROBCONS)/Sequence.h BPPMatrix.hpp $(CXX) $(INCL) $(OFLAGS) -c Globaldp.cpp -o Globaldp.o GlobalParameters.o: scarna.hpp $(CXX) $(INCL) $(OFLAGS) -c GlobalParameters.cpp -o GlobalParameters.o postProcessings.o: StemCandidate.hpp scarna.hpp $(CXX) $(INCL) $(OFLAGS) -c postProcessings.cpp -o postProcessings.o AlifoldMEA.o: nrutil.h Util.hpp Beta.hpp BPPMatrix.hpp $(PROBCONS)/MultiSequence.h $(PROBCONS)/Sequence.h $(PROBCONS)/SafeVector.h $(CXX) $(INCL) $(OFLAGS) -c AlifoldMEA.cpp -o AlifoldMEA.o .PHONY : clean clean: rm -f $(TARGETS) *.o *.h~ *.hpp~ *.cpp~ *.cc~ $(VIENNA)/*.o $(MAKE) -C $(PROBCONS) clean