3 COFLAGS = -Wall -O3 -ffast-math -c -I.
4 PROGRAMS = rsem-extract-reference-transcripts rsem-synthesis-reference-transcripts rsem-preref rsem-parse-alignments rsem-build-read-index rsem-run-em rsem-tbam2gbam rsem-run-gibbs rsem-calculate-credibility-intervals rsem-simulate-reads rsem-bam2wig rsem-get-unique rsem-bam2readdepth
7 all : build-sam $(PROGRAMS)
12 Transcript.h : utils.h
14 Transcripts.h : Transcript.h
16 rsem-extract-reference-transcripts : utils.h GTFItem.h Transcript.h Transcripts.h extractRef.cpp
17 $(CC) -Wall -O3 extractRef.cpp -o rsem-extract-reference-transcripts
19 rsem-synthesis-reference-transcripts : utils.h Transcript.h Transcripts.h synthesisRef.cpp
20 $(CC) -Wall -O3 synthesisRef.cpp -o rsem-synthesis-reference-transcripts
22 BowtieRefSeqPolicy.h : RefSeqPolicy.h
26 Refs.h : utils.h RefSeq.h RefSeqPolicy.h PolyARules.h
29 rsem-preref : preRef.o
30 $(CC) preRef.o -o rsem-preref
32 preRef.o : utils.h RefSeq.h Refs.h PolyARules.h RefSeqPolicy.h AlignerRefSeqPolicy.h preRef.cpp
33 $(CC) $(COFLAGS) preRef.cpp
38 SingleReadQ.h : Read.h
40 PairedEndRead.h : Read.h SingleRead.h
42 PairedEndReadQ.h : Read.h SingleReadQ.h
45 PairedEndHit.h : SingleHit.h
47 HitContainer.h : GroupInfo.h
50 SamParser.h : sam/sam.h sam/bam.h utils.h SingleRead.h SingleReadQ.h PairedEndRead.h PairedEndReadQ.h SingleHit.h PairedEndHit.h RefSeq.h Refs.h
53 rsem-parse-alignments : parseIt.o sam/libbam.a
54 $(CC) -o rsem-parse-alignments parseIt.o sam/libbam.a -lz
56 parseIt.o : utils.h GroupInfo.h Read.h SingleRead.h SingleReadQ.h PairedEndRead.h PairedEndReadQ.h SingleHit.h PairedEndHit.h HitContainer.h SamParser.h RefSeq.h Refs.h sam/sam.h sam/bam.h parseIt.cpp
57 $(CC) $(COFLAGS) parseIt.cpp
60 rsem-build-read-index : utils.h buildReadIndex.cpp
61 $(CC) -O3 buildReadIndex.cpp -o rsem-build-read-index
64 simul.h : boost/random.hpp
66 ReadReader.h : SingleRead.h SingleReadQ.h PairedEndRead.h PairedEndReadQ.h ReadIndex.h
68 SingleModel.h : utils.h Orientation.h LenDist.h RSPD.h Profile.h NoiseProfile.h ModelParams.h RefSeq.h Refs.h SingleRead.h SingleHit.h ReadReader.h simul.h
70 SingleQModel.h : utils.h Orientation.h LenDist.h RSPD.h QualDist.h QProfile.h NoiseQProfile.h ModelParams.h RefSeq.h Refs.h SingleReadQ.h SingleHit.h ReadReader.h simul.h
72 PairedEndModel.h : utils.h Orientation.h LenDist.h RSPD.h Profile.h NoiseProfile.h ModelParams.h RefSeq.h Refs.h SingleRead.h PairedEndRead.h PairedEndHit.h ReadReader.h simul.h
74 PairedEndQModel.h : utils.h Orientation.h LenDist.h RSPD.h QualDist.h QProfile.h NoiseQProfile.h ModelParams.h RefSeq.h Refs.h SingleReadQ.h PairedEndReadQ.h PairedEndHit.h ReadReader.h simul.h
76 HitWrapper.h : HitContainer.h
78 sam_rsem_aux.h : sam/bam.h
80 sam_rsem_cvt.h : sam/bam.h Transcript.h Transcripts.h
82 BamWriter.h : sam/sam.h sam/bam.h sam_rsem_aux.h sam_rsem_cvt.h SingleHit.h PairedEndHit.h HitWrapper.h Transcript.h Transcripts.h
84 sampling.h : boost/random.hpp
86 rsem-run-em : EM.o sam/libbam.a
87 $(CC) -o rsem-run-em EM.o sam/libbam.a -lz -lpthread
89 EM.o : utils.h Read.h SingleRead.h SingleReadQ.h PairedEndRead.h PairedEndReadQ.h SingleHit.h PairedEndHit.h Model.h SingleModel.h SingleQModel.h PairedEndModel.h PairedEndQModel.h Refs.h GroupInfo.h HitContainer.h ReadIndex.h ReadReader.h Orientation.h LenDist.h RSPD.h QualDist.h QProfile.h NoiseQProfile.h ModelParams.h RefSeq.h RefSeqPolicy.h PolyARules.h Profile.h NoiseProfile.h Transcript.h Transcripts.h HitWrapper.h BamWriter.h sam/bam.h sam/sam.h simul.h sam_rsem_aux.h sampling.h boost/random.hpp EM.cpp
90 $(CC) $(COFLAGS) EM.cpp
94 BamConverter.h : utils.h sam/sam.h sam/bam.h sam_rsem_aux.h sam_rsem_cvt.h bc_aux.h Transcript.h Transcripts.h
96 rsem-tbam2gbam : utils.h Transcripts.h Transcript.h bc_aux.h BamConverter.h sam/sam.h sam/bam.h sam/libbam.a sam_rsem_aux.h sam_rsem_cvt.h tbam2gbam.cpp sam/libbam.a
97 $(CC) -O3 -Wall tbam2gbam.cpp sam/libbam.a -lz -o $@
99 rsem-bam2wig : wiggle.h wiggle.o sam/libbam.a bam2wig.cpp
100 $(CC) -O3 -Wall bam2wig.cpp wiggle.o sam/libbam.a -lz -o $@
102 rsem-bam2readdepth : wiggle.h wiggle.o sam/libbam.a bam2readdepth.cpp
103 $(CC) -O3 -Wall bam2readdepth.cpp wiggle.o sam/libbam.a -lz -o $@
105 wiggle.o: sam/bam.h sam/sam.h wiggle.cpp wiggle.h
106 $(CC) $(COFLAGS) wiggle.cpp
108 rsem-simulate-reads : simulation.o
109 $(CC) -o rsem-simulate-reads simulation.o
111 simulation.o : utils.h Read.h SingleRead.h SingleReadQ.h PairedEndRead.h PairedEndReadQ.h Model.h SingleModel.h SingleQModel.h PairedEndModel.h PairedEndQModel.h Refs.h RefSeq.h GroupInfo.h Transcript.h Transcripts.h Orientation.h LenDist.h RSPD.h QualDist.h QProfile.h NoiseQProfile.h Profile.h NoiseProfile.h simul.h boost/random.hpp simulation.cpp
112 $(CC) $(COFLAGS) simulation.cpp
114 rsem-run-gibbs : Gibbs.o
115 $(CC) -o rsem-run-gibbs Gibbs.o -lpthread
117 #some header files are omitted
118 Gibbs.o : utils.h Model.h SingleModel.h SingleQModel.h PairedEndModel.h PairedEndQModel.h RefSeq.h RefSeqPolicy.h PolyARules.h Refs.h GroupInfo.h sampling.h boost/random.hpp Gibbs.cpp
119 $(CC) $(COFLAGS) Gibbs.cpp
121 rsem-calculate-credibility-intervals : calcCI.o
122 $(CC) -o rsem-calculate-credibility-intervals calcCI.o
124 #some header files are omitted
125 calcCI.o : utils.h Model.h SingleModel.h SingleQModel.h PairedEndModel.h PairedEndQModel.h RefSeq.h RefSeqPolicy.h PolyARules.h Refs.h GroupInfo.h calcCI.cpp boost/random.hpp
126 $(CC) $(COFLAGS) calcCI.cpp
128 rsem-get-unique : sam/bam.h sam/sam.h getUnique.cpp sam/libbam.a
129 $(CC) -O3 -Wall getUnique.cpp sam/libbam.a -lz -o $@
132 rm -f *.o *~ $(PROGRAMS)
133 cd sam ; ${MAKE} clean