diff --git a/gnu/local.mk b/gnu/local.mk index 0ead43acd9..4bca986619 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1115,7 +1115,6 @@ dist_patch_DATA = \ %D%/packages/patches/reptyr-fix-gcc-7.patch \ %D%/packages/patches/ripperx-missing-file.patch \ %D%/packages/patches/rpcbind-CVE-2017-8779.patch \ - %D%/packages/patches/rsem-makefile.patch \ %D%/packages/patches/rtags-separate-rct.patch \ %D%/packages/patches/racket-store-checksum-override.patch \ %D%/packages/patches/ruby-rubygems-276-for-ruby24.patch \ diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 67f24a6170..10330cd8b2 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -4800,66 +4800,79 @@ phylogenies.") (define-public rsem (package (name "rsem") - (version "1.2.20") + (version "1.3.1") (source (origin - (method url-fetch) - (uri - (string-append "http://deweylab.biostat.wisc.edu/rsem/src/rsem-" - version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/deweylab/RSEM.git") + (commit (string-append "v" version)))) (sha256 - (base32 "0nzdc0j0hjllhsd5f2xli95dafm3nawskigs140xzvjk67xh0r9q")) - (patches (search-patches "rsem-makefile.patch")) + (base32 "1jlq11d1p8qp64w75yj8cnbbd1a93viq10pzsbwal7vdn8fg13j1")) + (file-name (git-file-name name version)) (modules '((guix build utils))) (snippet '(begin - ;; remove bundled copy of boost + ;; remove bundled copy of boost and samtools (delete-file-recursively "boost") + (delete-file-recursively "samtools-1.3") #t)))) (build-system gnu-build-system) (arguments `(#:tests? #f ;no "check" target + #:make-flags + (list (string-append "BOOST=" + (assoc-ref %build-inputs "boost") + "/include/") + (string-append "SAMHEADERS=" + (assoc-ref %build-inputs "htslib") + "/include/htslib/sam.h") + (string-append "SAMLIBS=" + (assoc-ref %build-inputs "htslib") + "/lib/libhts.a")) #:phases (modify-phases %standard-phases ;; No "configure" script. ;; Do not build bundled samtools library. (replace 'configure - (lambda _ - (substitute* "Makefile" - (("^all : sam/libbam.a") "all : ")) - #t)) + (lambda _ + (substitute* "Makefile" + (("^all : \\$\\(PROGRAMS\\).*") "all: $(PROGRAMS)\n") + (("^\\$\\(SAMLIBS\\).*") "")) + #t)) (replace 'install - (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (string-append (assoc-ref outputs "out"))) - (bin (string-append out "/bin/")) - (perl (string-append out "/lib/perl5/site_perl"))) - (mkdir-p bin) - (mkdir-p perl) - (for-each (lambda (file) - (install-file file bin)) - (find-files "." "rsem-.*")) - (install-file "rsem_perl_utils.pm" perl)) - #t)) - (add-after - 'install 'wrap-program - (lambda* (#:key outputs #:allow-other-keys) - (let ((out (assoc-ref outputs "out"))) - (for-each (lambda (prog) - (wrap-program (string-append out "/bin/" prog) - `("PERL5LIB" ":" prefix - (,(string-append out "/lib/perl5/site_perl"))))) - '("rsem-plot-transcript-wiggles" - "rsem-calculate-expression" - "rsem-generate-ngvector" - "rsem-run-ebseq" - "rsem-prepare-reference"))) - #t))))) + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (string-append (assoc-ref outputs "out"))) + (bin (string-append out "/bin/")) + (perl (string-append out "/lib/perl5/site_perl"))) + (mkdir-p bin) + (mkdir-p perl) + (for-each (lambda (file) + (install-file file bin)) + (find-files "." "rsem-.*")) + (install-file "rsem_perl_utils.pm" perl)) + #t)) + (add-after 'install 'wrap-program + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (for-each (lambda (prog) + (wrap-program (string-append out "/bin/" prog) + `("PERL5LIB" ":" prefix + (,(string-append out "/lib/perl5/site_perl"))))) + '("rsem-calculate-expression" + "rsem-control-fdr" + "rsem-generate-data-matrix" + "rsem-generate-ngvector" + "rsem-plot-transcript-wiggles" + "rsem-prepare-reference" + "rsem-run-ebseq" + "rsem-run-prsem-testing-procedure"))) + #t))))) (inputs `(("boost" ,boost) - ("ncurses" ,ncurses) ("r-minimal" ,r-minimal) ("perl" ,perl) - ("samtools" ,samtools-0.1) + ("htslib" ,htslib-1.3) ("zlib" ,zlib))) (home-page "http://deweylab.biostat.wisc.edu/rsem/") (synopsis "Estimate gene expression levels from RNA-Seq data") diff --git a/gnu/packages/patches/rsem-makefile.patch b/gnu/packages/patches/rsem-makefile.patch deleted file mode 100644 index 5481dc685f..0000000000 --- a/gnu/packages/patches/rsem-makefile.patch +++ /dev/null @@ -1,682 +0,0 @@ -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 -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 -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 -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 -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 -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 -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 -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 -