Next version of JABA
[jabaws.git] / binaries / src / probcons / Makefile
1 ################################################################################
2 # Makefile for probcons
3 ################################################################################
4
5 ################################################################################
6 # 1) Choose C++ compiler.
7 ################################################################################
8
9 CXX = g++
10
11 ################################################################################
12 # 2) Set C++ flags.
13 #    a) DEBUG mode -- no optimizations, enable SafeVector checking, no inlining
14 #    b) PROFILE mode -- for gprof
15 #    c) RELEASE mode
16 ################################################################################
17
18 OTHERFLAGS = -DNumInsertStates=2 -DVERSION="1.12"
19
20 # debug mode    
21 #CXXFLAGS = -g -W -Wall -pedantic -DENABLE_CHECKS -fno-inline $(OTHERFLAGS)
22
23 # profile mode
24 #CXXFLAGS = -pg -W -Wall -pedantic $(OTHERFLAGS)
25
26 # release mode
27 #CXXFLAGS = -O3 -W -Wall -pedantic -DNDEBUG $(OTHERFLAGS) -mmmx -msse -msse2 -mfpmath=sse -march=pentium4 -mcpu=pentium4 -funroll-loops -fomit-frame-pointer 
28 CXXFLAGS = -O3 -W -Wall -pedantic -DNDEBUG $(OTHERFLAGS) -funroll-loops
29
30 ################################################################################
31 # 3) Dependencies
32 ################################################################################
33
34 TARGETS = probcons compare project makegnuplot
35
36 .PHONY : all
37 all : $(TARGETS)
38
39 probcons : MultiSequence.h ProbabilisticModel.h ScoreType.h Sequence.h FileBuffer.h SparseMatrix.h EvolutionaryTree.h Defaults.h SafeVector.h Main.cc
40         $(CXX) $(CXXFLAGS) -lm -o probcons Main.cc 
41
42 compare : MultiSequence.h Sequence.h FileBuffer.h SafeVector.h CompareToRef.cc
43         $(CXX) $(CXXFLAGS) -o compare CompareToRef.cc
44
45 fixref : MultiSequence.h ProbabilisticModel.h ScoreType.h Sequence.h FileBuffer.h SparseMatrix.h EvolutionaryTree.h Defaults.h SafeVector.h FixRef.cc
46         $(CXX) $(CXXFLAGS) -o fixref FixRef.cc
47
48 project : MultiSequence.h Sequence.h SafeVector.h ProjectPairwise.cc
49         $(CXX) $(CXXFLAGS) -o project ProjectPairwise.cc
50
51 makegnuplot : MakeGnuPlot.cc
52         $(CXX) $(CXXFLAGS) -o makegnuplot MakeGnuPlot.cc
53
54 .PHONY : clean
55 clean:
56         rm -f $(TARGETS)