guix-play/gnu/packages/patches/rsem-makefile.patch

683 lines
24 KiB
Diff
Raw Normal View History

This patch simplifies the Makefile, making it much easier to build rsem
without the bundled version of samtools. It has already been submitted
upstream: https://github.com/bli25wisc/RSEM/pull/11
From 161894e91a16c7e15af57e4fcfe8cb613711c7fa Mon Sep 17 00:00:00 2001
From: Ricardo Wurmus <ricardo.wurmus@mdc-berlin.de>
Date: Wed, 22 Apr 2015 14:51:07 +0200
Subject: [PATCH 1/7] remove all headers from Makefile
---
Makefile | 95 +++++++++++-----------------------------------------------------
1 file changed, 16 insertions(+), 79 deletions(-)
diff --git a/Makefile b/Makefile
index 54e2603..3a55ed8 100644
--- a/Makefile
+++ b/Makefile
@@ -10,133 +10,70 @@ all : $(PROGRAMS)
sam/libbam.a :
cd sam ; ${MAKE} all
-Transcript.h : utils.h
-
-Transcripts.h : utils.h my_assert.h Transcript.h
-
-rsem-extract-reference-transcripts : utils.h my_assert.h GTFItem.h Transcript.h Transcripts.h extractRef.cpp
+rsem-extract-reference-transcripts : extractRef.cpp
$(CC) -Wall -O3 extractRef.cpp -o rsem-extract-reference-transcripts
-rsem-synthesis-reference-transcripts : utils.h my_assert.h Transcript.h Transcripts.h synthesisRef.cpp
+rsem-synthesis-reference-transcripts : synthesisRef.cpp
$(CC) -Wall -O3 synthesisRef.cpp -o rsem-synthesis-reference-transcripts
-BowtieRefSeqPolicy.h : RefSeqPolicy.h
-
-RefSeq.h : utils.h
-
-Refs.h : utils.h RefSeq.h RefSeqPolicy.h PolyARules.h
-
-
rsem-preref : preRef.o
$(CC) preRef.o -o rsem-preref
-preRef.o : utils.h RefSeq.h Refs.h PolyARules.h RefSeqPolicy.h AlignerRefSeqPolicy.h preRef.cpp
+preRef.o : preRef.cpp
$(CC) $(COFLAGS) preRef.cpp
-
-SingleRead.h : Read.h
-
-SingleReadQ.h : Read.h
-
-PairedEndRead.h : Read.h SingleRead.h
-
-PairedEndReadQ.h : Read.h SingleReadQ.h
-
-
-PairedEndHit.h : SingleHit.h
-
-HitContainer.h : GroupInfo.h
-
-
-SamParser.h : sam/sam.h sam/bam.h utils.h my_assert.h SingleRead.h SingleReadQ.h PairedEndRead.h PairedEndReadQ.h SingleHit.h PairedEndHit.h Transcripts.h
-
-
rsem-parse-alignments : parseIt.o sam/libbam.a
$(CC) -o rsem-parse-alignments parseIt.o sam/libbam.a -lz -lpthread
-parseIt.o : utils.h GroupInfo.h Read.h SingleRead.h SingleReadQ.h PairedEndRead.h PairedEndReadQ.h SingleHit.h PairedEndHit.h HitContainer.h SamParser.h Transcripts.h sam/sam.h sam/bam.h parseIt.cpp
+parseIt.o : parseIt.cpp
$(CC) -Wall -O2 -c -I. parseIt.cpp
-
-rsem-build-read-index : utils.h buildReadIndex.cpp
+rsem-build-read-index : buildReadIndex.cpp
$(CC) -O3 buildReadIndex.cpp -o rsem-build-read-index
-
-simul.h : boost/random.hpp
-
-ReadReader.h : SingleRead.h SingleReadQ.h PairedEndRead.h PairedEndReadQ.h ReadIndex.h
-
-SingleModel.h : utils.h my_assert.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
-
-SingleQModel.h : utils.h my_assert.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
-
-PairedEndModel.h : utils.h my_assert.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
-
-PairedEndQModel.h : utils.h my_assert.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
-
-HitWrapper.h : HitContainer.h
-
-sam_rsem_aux.h : sam/bam.h
-
-sam_rsem_cvt.h : sam/bam.h Transcript.h Transcripts.h
-
-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
-
-sampling.h : boost/random.hpp
-
-WriteResults.h : utils.h my_assert.h GroupInfo.h Transcript.h Transcripts.h RefSeq.h Refs.h Model.h SingleModel.h SingleQModel.h PairedEndModel.h PairedEndQModel.h
-
rsem-run-em : EM.o sam/libbam.a
$(CC) -o rsem-run-em EM.o sam/libbam.a -lz -lpthread
-EM.o : utils.h my_assert.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 WriteResults.h EM.cpp
+EM.o : EM.cpp
$(CC) $(COFLAGS) EM.cpp
-bc_aux.h : sam/bam.h
-
-BamConverter.h : utils.h my_assert.h sam/sam.h sam/bam.h sam_rsem_aux.h sam_rsem_cvt.h bc_aux.h Transcript.h Transcripts.h
-
-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
+rsem-tbam2gbam : tbam2gbam.cpp sam/libbam.a
$(CC) -O3 -Wall tbam2gbam.cpp sam/libbam.a -lz -lpthread -o $@
-rsem-bam2wig : utils.h my_assert.h wiggle.h wiggle.o sam/libbam.a bam2wig.cpp
+rsem-bam2wig : wiggle.o sam/libbam.a bam2wig.cpp
$(CC) -O3 -Wall bam2wig.cpp wiggle.o sam/libbam.a -lz -lpthread -o $@
-rsem-bam2readdepth : utils.h my_assert.h wiggle.h wiggle.o sam/libbam.a bam2readdepth.cpp
+rsem-bam2readdepth : wiggle.o sam/libbam.a bam2readdepth.cpp
$(CC) -O3 -Wall bam2readdepth.cpp wiggle.o sam/libbam.a -lz -lpthread -o $@
-wiggle.o: sam/bam.h sam/sam.h wiggle.cpp wiggle.h
+wiggle.o: wiggle.cpp
$(CC) $(COFLAGS) wiggle.cpp
rsem-simulate-reads : simulation.o
$(CC) -o rsem-simulate-reads simulation.o
-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 WriteResults.h simulation.cpp
+simulation.o : simulation.cpp
$(CC) $(COFLAGS) simulation.cpp
rsem-run-gibbs : Gibbs.o
$(CC) -o rsem-run-gibbs Gibbs.o -lpthread
-#some header files are omitted
-Gibbs.o : utils.h my_assert.h boost/random.hpp sampling.h Model.h SingleModel.h SingleQModel.h PairedEndModel.h PairedEndQModel.h RefSeq.h RefSeqPolicy.h PolyARules.h Refs.h GroupInfo.h WriteResults.h Gibbs.cpp
+Gibbs.o : Gibbs.cpp
$(CC) $(COFLAGS) Gibbs.cpp
-Buffer.h : my_assert.h
-
rsem-calculate-credibility-intervals : calcCI.o
$(CC) -o rsem-calculate-credibility-intervals calcCI.o -lpthread
-#some header files are omitted
-calcCI.o : utils.h my_assert.h boost/random.hpp sampling.h Model.h SingleModel.h SingleQModel.h PairedEndModel.h PairedEndQModel.h RefSeq.h RefSeqPolicy.h PolyARules.h Refs.h GroupInfo.h WriteResults.h Buffer.h calcCI.cpp
+calcCI.o : calcCI.cpp
$(CC) $(COFLAGS) calcCI.cpp
-rsem-get-unique : sam/bam.h sam/sam.h getUnique.cpp sam/libbam.a
+rsem-get-unique : getUnique.cpp sam/libbam.a
$(CC) -O3 -Wall getUnique.cpp sam/libbam.a -lz -lpthread -o $@
-rsem-sam-validator : sam/bam.h sam/sam.h my_assert.h samValidator.cpp sam/libbam.a
+rsem-sam-validator : samValidator.cpp sam/libbam.a
$(CC) -O3 -Wall samValidator.cpp sam/libbam.a -lz -lpthread -o $@
-rsem-scan-for-paired-end-reads : sam/bam.h sam/sam.h my_assert.h scanForPairedEndReads.cpp sam/libbam.a
+rsem-scan-for-paired-end-reads : scanForPairedEndReads.cpp sam/libbam.a
$(CC) -O3 -Wall scanForPairedEndReads.cpp sam/libbam.a -lz -lpthread -o $@
ebseq :
From ec136638a727632e20abfaeb65c22c46d15ca8c4 Mon Sep 17 00:00:00 2001
From: Ricardo Wurmus <ricardo.wurmus@mdc-berlin.de>
Date: Wed, 22 Apr 2015 15:06:41 +0200
Subject: [PATCH 2/7] include current dir, ./sam and ./boost by default
---
Makefile | 48 ++++++++++++++++++++++++------------------------
1 file changed, 24 insertions(+), 24 deletions(-)
diff --git a/Makefile b/Makefile
index 3a55ed8..1dd97ca 100644
--- a/Makefile
+++ b/Makefile
@@ -1,6 +1,6 @@
CC = g++
-CFLAGS = -Wall -c -I.
-COFLAGS = -Wall -O3 -ffast-math -c -I.
+CFLAGS = -Wall -I. -I./sam -I./boost
+COFLAGS = -O3 -ffast-math -c
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 rsem-sam-validator rsem-scan-for-paired-end-reads
.PHONY : all ebseq clean
@@ -11,70 +11,70 @@ sam/libbam.a :
cd sam ; ${MAKE} all
rsem-extract-reference-transcripts : extractRef.cpp
- $(CC) -Wall -O3 extractRef.cpp -o rsem-extract-reference-transcripts
+ $(CC) $(CFLAGS) -O3 extractRef.cpp -o rsem-extract-reference-transcripts
rsem-synthesis-reference-transcripts : synthesisRef.cpp
- $(CC) -Wall -O3 synthesisRef.cpp -o rsem-synthesis-reference-transcripts
+ $(CC) $(CFLAGS) -O3 synthesisRef.cpp -o rsem-synthesis-reference-transcripts
rsem-preref : preRef.o
- $(CC) preRef.o -o rsem-preref
+ $(CC) $(CFLAGS) preRef.o -o rsem-preref
preRef.o : preRef.cpp
- $(CC) $(COFLAGS) preRef.cpp
+ $(CC) $(CFLAGS) $(COFLAGS) preRef.cpp
rsem-parse-alignments : parseIt.o sam/libbam.a
- $(CC) -o rsem-parse-alignments parseIt.o sam/libbam.a -lz -lpthread
+ $(CC) $(CFLAGS) -o rsem-parse-alignments parseIt.o sam/libbam.a -lz -lpthread
parseIt.o : parseIt.cpp
- $(CC) -Wall -O2 -c -I. parseIt.cpp
+ $(CC) $(CFLAGS) -O2 -c parseIt.cpp
rsem-build-read-index : buildReadIndex.cpp
- $(CC) -O3 buildReadIndex.cpp -o rsem-build-read-index
+ $(CC) $(CFLAGS) -O3 buildReadIndex.cpp -o rsem-build-read-index
rsem-run-em : EM.o sam/libbam.a
- $(CC) -o rsem-run-em EM.o sam/libbam.a -lz -lpthread
+ $(CC) $(CFLAGS) -o rsem-run-em EM.o sam/libbam.a -lz -lpthread
EM.o : EM.cpp
- $(CC) $(COFLAGS) EM.cpp
+ $(CC) $(CFLAGS) $(COFLAGS) EM.cpp
rsem-tbam2gbam : tbam2gbam.cpp sam/libbam.a
- $(CC) -O3 -Wall tbam2gbam.cpp sam/libbam.a -lz -lpthread -o $@
+ $(CC) $(CFLAGS) -O3 tbam2gbam.cpp sam/libbam.a -lz -lpthread -o $@
rsem-bam2wig : wiggle.o sam/libbam.a bam2wig.cpp
- $(CC) -O3 -Wall bam2wig.cpp wiggle.o sam/libbam.a -lz -lpthread -o $@
+ $(CC) $(CFLAGS) -O3 bam2wig.cpp wiggle.o sam/libbam.a -lz -lpthread -o $@
rsem-bam2readdepth : wiggle.o sam/libbam.a bam2readdepth.cpp
- $(CC) -O3 -Wall bam2readdepth.cpp wiggle.o sam/libbam.a -lz -lpthread -o $@
+ $(CC) $(CFLAGS) -O3 bam2readdepth.cpp wiggle.o sam/libbam.a -lz -lpthread -o $@
wiggle.o: wiggle.cpp
- $(CC) $(COFLAGS) wiggle.cpp
+ $(CC) $(CFLAGS) $(COFLAGS) wiggle.cpp
rsem-simulate-reads : simulation.o
- $(CC) -o rsem-simulate-reads simulation.o
+ $(CC) $(CFLAGS) -o rsem-simulate-reads simulation.o
simulation.o : simulation.cpp
- $(CC) $(COFLAGS) simulation.cpp
+ $(CC) $(CFLAGS) $(COFLAGS) simulation.cpp
rsem-run-gibbs : Gibbs.o
- $(CC) -o rsem-run-gibbs Gibbs.o -lpthread
+ $(CC) $(CFLAGS) -o rsem-run-gibbs Gibbs.o -lpthread
Gibbs.o : Gibbs.cpp
- $(CC) $(COFLAGS) Gibbs.cpp
+ $(CC) $(CFLAGS) $(COFLAGS) Gibbs.cpp
rsem-calculate-credibility-intervals : calcCI.o
- $(CC) -o rsem-calculate-credibility-intervals calcCI.o -lpthread
+ $(CC) $(CFLAGS) -o rsem-calculate-credibility-intervals calcCI.o -lpthread
calcCI.o : calcCI.cpp
- $(CC) $(COFLAGS) calcCI.cpp
+ $(CC) $(CFLAGS) $(COFLAGS) calcCI.cpp
rsem-get-unique : getUnique.cpp sam/libbam.a
- $(CC) -O3 -Wall getUnique.cpp sam/libbam.a -lz -lpthread -o $@
+ $(CC) $(CFLAGS) -O3 getUnique.cpp sam/libbam.a -lz -lpthread -o $@
rsem-sam-validator : samValidator.cpp sam/libbam.a
- $(CC) -O3 -Wall samValidator.cpp sam/libbam.a -lz -lpthread -o $@
+ $(CC) $(CFLAGS) -O3 samValidator.cpp sam/libbam.a -lz -lpthread -o $@
rsem-scan-for-paired-end-reads : scanForPairedEndReads.cpp sam/libbam.a
- $(CC) -O3 -Wall scanForPairedEndReads.cpp sam/libbam.a -lz -lpthread -o $@
+ $(CC) $(CFLAGS) -O3 scanForPairedEndReads.cpp sam/libbam.a -lz -lpthread -o $@
ebseq :
cd EBSeq ; ${MAKE} all
From d366614ea50f79fdd93e3c76383ccb6fcdeaa8e0 Mon Sep 17 00:00:00 2001
From: Ricardo Wurmus <ricardo.wurmus@mdc-berlin.de>
Date: Wed, 22 Apr 2015 15:10:49 +0200
Subject: [PATCH 3/7] separate object rules from rules for executables
---
Makefile | 50 ++++++++++++++++++++++++++------------------------
1 file changed, 26 insertions(+), 24 deletions(-)
diff --git a/Makefile b/Makefile
index 1dd97ca..ae4de3b 100644
--- a/Makefile
+++ b/Makefile
@@ -10,6 +10,32 @@ all : $(PROGRAMS)
sam/libbam.a :
cd sam ; ${MAKE} all
+ebseq :
+ cd EBSeq ; ${MAKE} all
+
+
+calcCI.o : calcCI.cpp
+ $(CC) $(CFLAGS) $(COFLAGS) calcCI.cpp
+
+EM.o : EM.cpp
+ $(CC) $(CFLAGS) $(COFLAGS) EM.cpp
+
+Gibbs.o : Gibbs.cpp
+ $(CC) $(CFLAGS) $(COFLAGS) Gibbs.cpp
+
+preRef.o : preRef.cpp
+ $(CC) $(CFLAGS) $(COFLAGS) preRef.cpp
+
+parseIt.o : parseIt.cpp
+ $(CC) $(CFLAGS) -O2 -c parseIt.cpp
+
+simulation.o : simulation.cpp
+ $(CC) $(CFLAGS) $(COFLAGS) simulation.cpp
+
+wiggle.o: wiggle.cpp
+ $(CC) $(CFLAGS) $(COFLAGS) wiggle.cpp
+
+
rsem-extract-reference-transcripts : extractRef.cpp
$(CC) $(CFLAGS) -O3 extractRef.cpp -o rsem-extract-reference-transcripts
@@ -19,24 +45,15 @@ rsem-synthesis-reference-transcripts : synthesisRef.cpp
rsem-preref : preRef.o
$(CC) $(CFLAGS) preRef.o -o rsem-preref
-preRef.o : preRef.cpp
- $(CC) $(CFLAGS) $(COFLAGS) preRef.cpp
-
rsem-parse-alignments : parseIt.o sam/libbam.a
$(CC) $(CFLAGS) -o rsem-parse-alignments parseIt.o sam/libbam.a -lz -lpthread
-parseIt.o : parseIt.cpp
- $(CC) $(CFLAGS) -O2 -c parseIt.cpp
-
rsem-build-read-index : buildReadIndex.cpp
$(CC) $(CFLAGS) -O3 buildReadIndex.cpp -o rsem-build-read-index
rsem-run-em : EM.o sam/libbam.a
$(CC) $(CFLAGS) -o rsem-run-em EM.o sam/libbam.a -lz -lpthread
-EM.o : EM.cpp
- $(CC) $(CFLAGS) $(COFLAGS) EM.cpp
-
rsem-tbam2gbam : tbam2gbam.cpp sam/libbam.a
$(CC) $(CFLAGS) -O3 tbam2gbam.cpp sam/libbam.a -lz -lpthread -o $@
@@ -46,27 +63,15 @@ rsem-bam2wig : wiggle.o sam/libbam.a bam2wig.cpp
rsem-bam2readdepth : wiggle.o sam/libbam.a bam2readdepth.cpp
$(CC) $(CFLAGS) -O3 bam2readdepth.cpp wiggle.o sam/libbam.a -lz -lpthread -o $@
-wiggle.o: wiggle.cpp
- $(CC) $(CFLAGS) $(COFLAGS) wiggle.cpp
-
rsem-simulate-reads : simulation.o
$(CC) $(CFLAGS) -o rsem-simulate-reads simulation.o
-simulation.o : simulation.cpp
- $(CC) $(CFLAGS) $(COFLAGS) simulation.cpp
-
rsem-run-gibbs : Gibbs.o
$(CC) $(CFLAGS) -o rsem-run-gibbs Gibbs.o -lpthread
-Gibbs.o : Gibbs.cpp
- $(CC) $(CFLAGS) $(COFLAGS) Gibbs.cpp
-
rsem-calculate-credibility-intervals : calcCI.o
$(CC) $(CFLAGS) -o rsem-calculate-credibility-intervals calcCI.o -lpthread
-calcCI.o : calcCI.cpp
- $(CC) $(CFLAGS) $(COFLAGS) calcCI.cpp
-
rsem-get-unique : getUnique.cpp sam/libbam.a
$(CC) $(CFLAGS) -O3 getUnique.cpp sam/libbam.a -lz -lpthread -o $@
@@ -76,9 +81,6 @@ rsem-sam-validator : samValidator.cpp sam/libbam.a
rsem-scan-for-paired-end-reads : scanForPairedEndReads.cpp sam/libbam.a
$(CC) $(CFLAGS) -O3 scanForPairedEndReads.cpp sam/libbam.a -lz -lpthread -o $@
-ebseq :
- cd EBSeq ; ${MAKE} all
-
clean :
rm -f *.o *~ $(PROGRAMS)
cd sam ; ${MAKE} clean
From 6ba1c33cccdf7c8e7df7a3189e7db204be3b1e8d Mon Sep 17 00:00:00 2001
From: Ricardo Wurmus <ricardo.wurmus@mdc-berlin.de>
Date: Wed, 22 Apr 2015 15:28:30 +0200
Subject: [PATCH 4/7] add ./sam to library directories, link with -lbam
---
Makefile | 36 ++++++++++++++++++------------------
1 file changed, 18 insertions(+), 18 deletions(-)
diff --git a/Makefile b/Makefile
index ae4de3b..a87cc4d 100644
--- a/Makefile
+++ b/Makefile
@@ -1,11 +1,11 @@
CC = g++
-CFLAGS = -Wall -I. -I./sam -I./boost
+CFLAGS = -Wall -I. -I./sam -I./boost -L./sam
COFLAGS = -O3 -ffast-math -c
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 rsem-sam-validator rsem-scan-for-paired-end-reads
.PHONY : all ebseq clean
-all : $(PROGRAMS)
+all : sam/libbam.a $(PROGRAMS)
sam/libbam.a :
cd sam ; ${MAKE} all
@@ -45,23 +45,23 @@ rsem-synthesis-reference-transcripts : synthesisRef.cpp
rsem-preref : preRef.o
$(CC) $(CFLAGS) preRef.o -o rsem-preref
-rsem-parse-alignments : parseIt.o sam/libbam.a
- $(CC) $(CFLAGS) -o rsem-parse-alignments parseIt.o sam/libbam.a -lz -lpthread
+rsem-parse-alignments : parseIt.o
+ $(CC) $(CFLAGS) -o rsem-parse-alignments parseIt.o -lbam -lz -lpthread
rsem-build-read-index : buildReadIndex.cpp
$(CC) $(CFLAGS) -O3 buildReadIndex.cpp -o rsem-build-read-index
-rsem-run-em : EM.o sam/libbam.a
- $(CC) $(CFLAGS) -o rsem-run-em EM.o sam/libbam.a -lz -lpthread
+rsem-run-em : EM.o
+ $(CC) $(CFLAGS) -o rsem-run-em EM.o -lbam -lz -lpthread
-rsem-tbam2gbam : tbam2gbam.cpp sam/libbam.a
- $(CC) $(CFLAGS) -O3 tbam2gbam.cpp sam/libbam.a -lz -lpthread -o $@
+rsem-tbam2gbam : tbam2gbam.cpp
+ $(CC) $(CFLAGS) -O3 tbam2gbam.cpp -lbam -lz -lpthread -o $@
-rsem-bam2wig : wiggle.o sam/libbam.a bam2wig.cpp
- $(CC) $(CFLAGS) -O3 bam2wig.cpp wiggle.o sam/libbam.a -lz -lpthread -o $@
+rsem-bam2wig : wiggle.o bam2wig.cpp
+ $(CC) $(CFLAGS) -O3 bam2wig.cpp wiggle.o -lbam -lz -lpthread -o $@
-rsem-bam2readdepth : wiggle.o sam/libbam.a bam2readdepth.cpp
- $(CC) $(CFLAGS) -O3 bam2readdepth.cpp wiggle.o sam/libbam.a -lz -lpthread -o $@
+rsem-bam2readdepth : wiggle.o bam2readdepth.cpp
+ $(CC) $(CFLAGS) -O3 bam2readdepth.cpp wiggle.o -lbam -lz -lpthread -o $@
rsem-simulate-reads : simulation.o
$(CC) $(CFLAGS) -o rsem-simulate-reads simulation.o
@@ -72,14 +72,14 @@ rsem-run-gibbs : Gibbs.o
rsem-calculate-credibility-intervals : calcCI.o
$(CC) $(CFLAGS) -o rsem-calculate-credibility-intervals calcCI.o -lpthread
-rsem-get-unique : getUnique.cpp sam/libbam.a
- $(CC) $(CFLAGS) -O3 getUnique.cpp sam/libbam.a -lz -lpthread -o $@
+rsem-get-unique : getUnique.cpp
+ $(CC) $(CFLAGS) -O3 getUnique.cpp -lbam -lz -lpthread -o $@
-rsem-sam-validator : samValidator.cpp sam/libbam.a
- $(CC) $(CFLAGS) -O3 samValidator.cpp sam/libbam.a -lz -lpthread -o $@
+rsem-sam-validator : samValidator.cpp
+ $(CC) $(CFLAGS) -O3 samValidator.cpp -lbam -lz -lpthread -o $@
-rsem-scan-for-paired-end-reads : scanForPairedEndReads.cpp sam/libbam.a
- $(CC) $(CFLAGS) -O3 scanForPairedEndReads.cpp sam/libbam.a -lz -lpthread -o $@
+rsem-scan-for-paired-end-reads : scanForPairedEndReads.cpp
+ $(CC) $(CFLAGS) -O3 scanForPairedEndReads.cpp -lbam -lz -lpthread -o $@
clean :
rm -f *.o *~ $(PROGRAMS)
From 5402b88c269df79ee245c1c59e15f3c8282a0220 Mon Sep 17 00:00:00 2001
From: Ricardo Wurmus <ricardo.wurmus@mdc-berlin.de>
Date: Wed, 22 Apr 2015 15:33:02 +0200
Subject: [PATCH 5/7] do not repeat target name, use $@ instead
---
Makefile | 18 +++++++++---------
1 file changed, 9 insertions(+), 9 deletions(-)
diff --git a/Makefile b/Makefile
index a87cc4d..7ec90a3 100644
--- a/Makefile
+++ b/Makefile
@@ -37,22 +37,22 @@ wiggle.o: wiggle.cpp
rsem-extract-reference-transcripts : extractRef.cpp
- $(CC) $(CFLAGS) -O3 extractRef.cpp -o rsem-extract-reference-transcripts
+ $(CC) $(CFLAGS) -O3 extractRef.cpp -o $@
rsem-synthesis-reference-transcripts : synthesisRef.cpp
- $(CC) $(CFLAGS) -O3 synthesisRef.cpp -o rsem-synthesis-reference-transcripts
+ $(CC) $(CFLAGS) -O3 synthesisRef.cpp -o $@
rsem-preref : preRef.o
- $(CC) $(CFLAGS) preRef.o -o rsem-preref
+ $(CC) $(CFLAGS) preRef.o -o $@
rsem-parse-alignments : parseIt.o
- $(CC) $(CFLAGS) -o rsem-parse-alignments parseIt.o -lbam -lz -lpthread
+ $(CC) $(CFLAGS) -o $@ parseIt.o -lbam -lz -lpthread
rsem-build-read-index : buildReadIndex.cpp
- $(CC) $(CFLAGS) -O3 buildReadIndex.cpp -o rsem-build-read-index
+ $(CC) $(CFLAGS) -O3 buildReadIndex.cpp -o $@
rsem-run-em : EM.o
- $(CC) $(CFLAGS) -o rsem-run-em EM.o -lbam -lz -lpthread
+ $(CC) $(CFLAGS) -o $@ EM.o -lbam -lz -lpthread
rsem-tbam2gbam : tbam2gbam.cpp
$(CC) $(CFLAGS) -O3 tbam2gbam.cpp -lbam -lz -lpthread -o $@
@@ -64,13 +64,13 @@ rsem-bam2readdepth : wiggle.o bam2readdepth.cpp
$(CC) $(CFLAGS) -O3 bam2readdepth.cpp wiggle.o -lbam -lz -lpthread -o $@
rsem-simulate-reads : simulation.o
- $(CC) $(CFLAGS) -o rsem-simulate-reads simulation.o
+ $(CC) $(CFLAGS) -o $@ simulation.o
rsem-run-gibbs : Gibbs.o
- $(CC) $(CFLAGS) -o rsem-run-gibbs Gibbs.o -lpthread
+ $(CC) $(CFLAGS) -o $@ Gibbs.o -lpthread
rsem-calculate-credibility-intervals : calcCI.o
- $(CC) $(CFLAGS) -o rsem-calculate-credibility-intervals calcCI.o -lpthread
+ $(CC) $(CFLAGS) -o $@ calcCI.o -lpthread
rsem-get-unique : getUnique.cpp
$(CC) $(CFLAGS) -O3 getUnique.cpp -lbam -lz -lpthread -o $@
From f60784bc7aa303cc825bd87dd3f5d7d26c51bded Mon Sep 17 00:00:00 2001
From: Ricardo Wurmus <ricardo.wurmus@mdc-berlin.de>
Date: Wed, 22 Apr 2015 15:44:53 +0200
Subject: [PATCH 6/7] use automatic variables to refer to prerequisites
---
Makefile | 44 ++++++++++++++++++++++----------------------
1 file changed, 22 insertions(+), 22 deletions(-)
diff --git a/Makefile b/Makefile
index 7ec90a3..6540d81 100644
--- a/Makefile
+++ b/Makefile
@@ -15,71 +15,71 @@ ebseq :
calcCI.o : calcCI.cpp
- $(CC) $(CFLAGS) $(COFLAGS) calcCI.cpp
+ $(CC) $(CFLAGS) $(COFLAGS) $<
EM.o : EM.cpp
- $(CC) $(CFLAGS) $(COFLAGS) EM.cpp
+ $(CC) $(CFLAGS) $(COFLAGS) $<
Gibbs.o : Gibbs.cpp
- $(CC) $(CFLAGS) $(COFLAGS) Gibbs.cpp
+ $(CC) $(CFLAGS) $(COFLAGS) $<
preRef.o : preRef.cpp
- $(CC) $(CFLAGS) $(COFLAGS) preRef.cpp
+ $(CC) $(CFLAGS) $(COFLAGS) $<
parseIt.o : parseIt.cpp
- $(CC) $(CFLAGS) -O2 -c parseIt.cpp
+ $(CC) $(CFLAGS) -O2 -c $<
simulation.o : simulation.cpp
- $(CC) $(CFLAGS) $(COFLAGS) simulation.cpp
+ $(CC) $(CFLAGS) $(COFLAGS) $<
wiggle.o: wiggle.cpp
- $(CC) $(CFLAGS) $(COFLAGS) wiggle.cpp
+ $(CC) $(CFLAGS) $(COFLAGS) $<
rsem-extract-reference-transcripts : extractRef.cpp
- $(CC) $(CFLAGS) -O3 extractRef.cpp -o $@
+ $(CC) $(CFLAGS) -O3 $< -o $@
rsem-synthesis-reference-transcripts : synthesisRef.cpp
- $(CC) $(CFLAGS) -O3 synthesisRef.cpp -o $@
+ $(CC) $(CFLAGS) -O3 $< -o $@
rsem-preref : preRef.o
- $(CC) $(CFLAGS) preRef.o -o $@
+ $(CC) $(CFLAGS) $< -o $@
rsem-parse-alignments : parseIt.o
- $(CC) $(CFLAGS) -o $@ parseIt.o -lbam -lz -lpthread
+ $(CC) $(CFLAGS) -o $@ $< -lbam -lz -lpthread
rsem-build-read-index : buildReadIndex.cpp
- $(CC) $(CFLAGS) -O3 buildReadIndex.cpp -o $@
+ $(CC) $(CFLAGS) -O3 $< -o $@
rsem-run-em : EM.o
- $(CC) $(CFLAGS) -o $@ EM.o -lbam -lz -lpthread
+ $(CC) $(CFLAGS) -o $@ $< -lbam -lz -lpthread
rsem-tbam2gbam : tbam2gbam.cpp
- $(CC) $(CFLAGS) -O3 tbam2gbam.cpp -lbam -lz -lpthread -o $@
+ $(CC) $(CFLAGS) -O3 $< -lbam -lz -lpthread -o $@
rsem-bam2wig : wiggle.o bam2wig.cpp
- $(CC) $(CFLAGS) -O3 bam2wig.cpp wiggle.o -lbam -lz -lpthread -o $@
+ $(CC) $(CFLAGS) -O3 $^ -lbam -lz -lpthread -o $@
rsem-bam2readdepth : wiggle.o bam2readdepth.cpp
- $(CC) $(CFLAGS) -O3 bam2readdepth.cpp wiggle.o -lbam -lz -lpthread -o $@
+ $(CC) $(CFLAGS) -O3 $^ -lbam -lz -lpthread -o $@
rsem-simulate-reads : simulation.o
- $(CC) $(CFLAGS) -o $@ simulation.o
+ $(CC) $(CFLAGS) -o $@ $<
rsem-run-gibbs : Gibbs.o
- $(CC) $(CFLAGS) -o $@ Gibbs.o -lpthread
+ $(CC) $(CFLAGS) -o $@ $< -lpthread
rsem-calculate-credibility-intervals : calcCI.o
- $(CC) $(CFLAGS) -o $@ calcCI.o -lpthread
+ $(CC) $(CFLAGS) -o $@ $< -lpthread
rsem-get-unique : getUnique.cpp
- $(CC) $(CFLAGS) -O3 getUnique.cpp -lbam -lz -lpthread -o $@
+ $(CC) $(CFLAGS) -O3 $< -lbam -lz -lpthread -o $@
rsem-sam-validator : samValidator.cpp
- $(CC) $(CFLAGS) -O3 samValidator.cpp -lbam -lz -lpthread -o $@
+ $(CC) $(CFLAGS) -O3 $< -lbam -lz -lpthread -o $@
rsem-scan-for-paired-end-reads : scanForPairedEndReads.cpp
- $(CC) $(CFLAGS) -O3 scanForPairedEndReads.cpp -lbam -lz -lpthread -o $@
+ $(CC) $(CFLAGS) -O3 $< -lbam -lz -lpthread -o $@
clean :
rm -f *.o *~ $(PROGRAMS)
From 0cf9721077f67fb4ca15fdc59cbfbf24a944debd Mon Sep 17 00:00:00 2001
From: Ricardo Wurmus <ricardo.wurmus@mdc-berlin.de>
Date: Wed, 22 Apr 2015 15:49:19 +0200
Subject: [PATCH 7/7] split long line
---
Makefile | 17 ++++++++++++++++-
1 file changed, 16 insertions(+), 1 deletion(-)
diff --git a/Makefile b/Makefile
index 6540d81..0ab04a5 100644
--- a/Makefile
+++ b/Makefile
@@ -1,7 +1,22 @@
CC = g++
CFLAGS = -Wall -I. -I./sam -I./boost -L./sam
COFLAGS = -O3 -ffast-math -c
-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 rsem-sam-validator rsem-scan-for-paired-end-reads
+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 \
+ rsem-sam-validator \
+ rsem-scan-for-paired-end-reads
.PHONY : all ebseq clean