7
|
1 DEBUG ?= 0
|
|
2 PARALLEL ?= 0
|
|
3
|
|
4 # External Libraries
|
|
5 BOOST_ROOT ?= /g/solexa/bin/software/boost_1_53_0/
|
|
6 BAMTOOLS_ROOT ?= /g/solexa/bin/software/bamtools-2.3.0/
|
|
7 SEQTK_ROOT ?= /g/solexa/bin/software/kseq/
|
|
8
|
|
9 # Flags
|
|
10 CXX=g++
|
|
11 CXXFLAGS += -isystem ${BOOST_ROOT}/include -isystem ${BAMTOOLS_ROOT}/include -isystem ${SEQTK_ROOT} -pedantic -W -Wall -Wno-unknown-pragmas
|
|
12 LDFLAGS += -L${BOOST_ROOT}/lib -lboost_iostreams -lboost_filesystem -lboost_system -lboost_program_options -lboost_date_time -L${BAMTOOLS_ROOT}/lib -lbamtools -lz -Wl,-rpath,${BAMTOOLS_ROOT}/lib,-rpath,${BOOST_ROOT}/lib
|
|
13
|
|
14 # Additional flags for release/debug
|
|
15 ifeq (${PARALLEL}, 1)
|
|
16 CXXFLAGS += -fopenmp -DOPENMP
|
|
17 else
|
|
18 CXXFLAGS += -DNOPENMP
|
|
19 endif
|
|
20
|
|
21 # Additional flags for release/debug
|
|
22 ifeq (${DEBUG}, 1)
|
|
23 CXXFLAGS += -g -O0 -fno-inline -DDEBUG
|
|
24 else ifeq (${DEBUG}, 2)
|
|
25 CXXFLAGS += -g -O0 -fno-inline -DPROFILE
|
|
26 LDFLAGS += -lprofiler -ltcmalloc
|
|
27 else
|
|
28 CXXFLAGS += -O9 -DNDEBUG
|
|
29 #LDFLAGS += --static
|
|
30 endif
|
|
31
|
|
32 # External sources
|
|
33 HTSLIBSOURCES = $(wildcard src/htslib/*.c) $(wildcard src/htslib/*.h)
|
|
34 BAMTOOLSSOURCES = $(wildcard src/bamtools/src/api/*.h) $(wildcard src/bamtools/src/api/*.cpp)
|
|
35 DELLYSOURCES = $(wildcard src/*.h) $(wildcard src/*.cpp)
|
|
36
|
|
37 # Targets
|
|
38 TARGETS = src/delly src/extract src/cov src/iover src/stats
|
|
39
|
|
40 all: $(TARGETS)
|
|
41
|
|
42 src/delly: $(DELLYSOURCES)
|
|
43 $(CXX) $(CXXFLAGS) $@.cpp -o $@ $(LDFLAGS)
|
|
44
|
|
45 src/extract: $(DELLYSOURCES)
|
|
46 $(CXX) $(CXXFLAGS) $@.cpp -o $@ $(LDFLAGS)
|
|
47
|
|
48 src/cov: $(DELLYSOURCES)
|
|
49 $(CXX) $(CXXFLAGS) $@.cpp -o $@ $(LDFLAGS)
|
|
50
|
|
51 src/iover: $(DELLYSOURCES)
|
|
52 $(CXX) $(CXXFLAGS) $@.cpp -o $@ $(LDFLAGS)
|
|
53
|
|
54 src/stats: $(DELLYSOURCES)
|
|
55 $(CXX) $(CXXFLAGS) $@.cpp -o $@ $(LDFLAGS)
|
|
56
|
|
57 clean:
|
|
58 rm -f $(TARGETS) $(TARGETS:=.o)
|