ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/gclib/tophat_cpp/Makefile
Revision: 200
Committed: Fri Mar 9 22:25:25 2012 UTC (12 years, 5 months ago) by gpertea
File size: 3651 byte(s)
Log Message:
Line File contents
1 # Directories to search for header files
2 SEQAN = ./SeqAn-1.3
3 SEARCHDIRS := -I. -I${SEQAN} -I.. -I/opt/geo/include
4
5 SYSTYPE := $(shell uname)
6
7 # C compiler
8
9 MACHTYPE := $(shell uname -m)
10 ifeq ($(MACHTYPE), i686)
11 MARCH = -march=i686
12 else
13 MARCH =
14 endif
15
16 CC := g++
17 BASEFLAGS = -Wall -pthread ${SEARCHDIRS} $(MARCH) -DHAVE_CONFIG_H \
18 -fno-strict-aliasing -D_REENTRANT
19
20
21 ifeq ($(findstring nodebug,$(MAKECMDGOALS)),)
22 CFLAGS = -g -DMEM_DEBUG -DDEBUG $(BASEFLAGS)
23 LDFLAGS = -g -L/opt/geo/lib
24 else
25 CFLAGS = -O2 -DNDEBUG $(BASEFLAGS)
26 LDFLAGS = -L/opt/geo/lib
27 endif
28
29 %.o : %.c
30 ${CC} ${CFLAGS} -c $< -o $@
31
32 %.o : %.cc
33 ${CC} ${CFLAGS} -c $< -o $@
34
35 %.o : %.C
36 ${CC} ${CFLAGS} -c $< -o $@
37
38 %.o : %.cpp
39 ${CC} ${CFLAGS} -c $< -o $@
40
41 %.o : %.cxx
42 ${CC} ${CFLAGS} -c $< -o $@
43
44 # C/C++ linker
45
46 LINKER := g++
47 LIBS = -lz -lbam
48 BLIBS = ${LIBS} -lpthread -lboost_thread
49
50 COM_OBJS = common.o reads.o tokenize.o utils.o
51 PREP_OBJS = ${COM_OBJS} qual.o
52 GFF_OBJS = GBase.o GStr.o codons.o gdna.o GFaSeqGet.o gff.o
53 SEG_OBJS = ${COM_OBJS} bwt_map.o junctions.o insertions.o coverage.o \
54 fragments.o align_status.o deletions.o fusions.o
55
56 ALL_EXE = fix_map_ordering map2gtf gtf_to_fasta bam_merge bam2fastx \
57 prep_reads extract_reads juncs_db long_spanning_reads gtf_juncs segment_juncs \
58 tophat_reports
59
60 .PHONY : all
61 #all: fix_map_ordering
62 all: bam2fastx
63 #.PHONY : nodebug
64 nodebug : all
65 #all: prep_reads
66 #debug: prep_reads
67
68 all_exe: $(ALL_EXE)
69 #all: $(ALL_EXE)
70 #debug: $(ALL_EXE)
71 #all: segment_juncs
72 #debug: segment_juncs
73 #all: bam_dump
74 #all: sam2bam
75 #debug: sam2bam
76 #all: prep_reads
77 #debug: prep_reads
78 sam2bam: ./sam2bam.o
79 ${LINKER} ${LDFLAGS} -o $@ ${filter-out %.a %.so, $^} ${LIBS}
80 bam_dump: ./bam_dump.o
81 ${LINKER} ${LDFLAGS} -o $@ ${filter-out %.a %.so, $^} ${LIBS}
82 #all: prep_reads
83 #debug: prep_reads
84 all_bin: ${ALL_EXE}
85 bwt2sam: ${COM_OBJS} bwt_map.o bwt2sam.o
86 ${LINKER} ${LDFLAGS} -o $@ ${filter-out %.a %.so, $^} ${LIBS}
87 bam2bed: ./bam2bed.o
88 ${LINKER} ${LDFLAGS} -o $@ ${filter-out %.a %.so, $^} ${LIBS}
89 bam2fastx: ./bam2fastx.o
90 ${LINKER} ${LDFLAGS} -o $@ ${filter-out %.a %.so, $^} ${LIBS}
91 bam_merge: ./common.o ./GBase.o ./bam_merge.o
92 ${LINKER} ${LDFLAGS} -o $@ ${filter-out %.a %.so, $^} ${LIBS}
93 bwt_map.o: bwt_map.h
94 fix_map_ordering: ${COM_OBJS} bwt_map.o fix_map_ordering.o
95 ${LINKER} ${LDFLAGS} -o $@ ${filter-out %.a %.so, $^} ${LIBS}
96 long_spanning_reads: ${SEG_OBJS} fusions.o long_spanning_reads.o
97 ${LINKER} ${LDFLAGS} -o $@ ${filter-out %.a %.so, $^} ${BLIBS}
98 prep_reads: ${PREP_OBJS} prep_reads.o
99 ${LINKER} ${LDFLAGS} -o $@ ${filter-out %.a %.so, $^} ${LIBS}
100 extract_reads: ${COM_OBJS} extract_reads.o
101 ${LINKER} ${LDFLAGS} -o $@ ${filter-out %.a %.so, $^} ${LIBS}
102 gtf_to_fasta: ${COM_OBJS} bwt_map.o ${GFF_OBJS} FastaTools.o GTFToFasta.o
103 ${LINKER} ${LDFLAGS} -o $@ ${filter-out %.a %.so, $^} ${LIBS}
104 map2gtf: ${COM_OBJS} bwt_map.o ${GFF_OBJS} map2gtf.o
105 ${LINKER} ${LDFLAGS} -o $@ ${filter-out %.a %.so, $^} ${LIBS}
106 gtf_juncs: ${COM_OBJS} bwt_map.o ${GFF_OBJS} gtf_juncs.o
107 ${LINKER} ${LDFLAGS} -o $@ ${filter-out %.a %.so, $^} ${LIBS}
108 segment_juncs: ${SEG_OBJS} segment_juncs.o
109 ${LINKER} ${LDFLAGS} -o $@ ${filter-out %.a %.so, $^} ${BLIBS}
110 juncs_db: ${SEG_OBJS} juncs_db.o
111 ${LINKER} ${LDFLAGS} -o $@ ${filter-out %.a %.so, $^} ${LIBS}
112 tophat_reports: ${SEG_OBJS} inserts.o tophat_reports.o
113 ${LINKER} ${LDFLAGS} -o $@ ${filter-out %.a %.so, $^} ${BLIBS}
114 tophat_reports.o prep_reads.o fix_map_ordering.o map2gtf.o bam_merge.o bam2fastx.o bwt_map.o common.o: common.h
115 bwt_map.o: common.h bwt_map.h
116
117 # target for removing all object files
118
119 .PHONY : clean
120 clean::
121 ${RM} *.o sam2bam core core.* ${ALL_EXE}