forked from ihh/dart
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Makefile.in
118 lines (93 loc) · 3.54 KB
/
Makefile.in
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
# All Targets
# NB indiegram is not included in the target list by default, since it takes forever to compile
all: stemloc xrate protpal simgram handel evoldoer psw weighbor utils
@echo All targets built
# files & paths
TESTS =
TARGETS =
DIRNAME =
DEPS =
CCDIR = $(shell pwd)
SRCDIR = $(CCDIR)/src
# autoconf expansions for guile
GUILE_INCLUDED = @GUILE_INCLUDED@
# Makefile magic: get a list of subdirectories of the src directory
# NB the following pattern also picks up files in the src directory,
# so we later need to test for directories using 'test -d'
SUBDIRS = $(filter-out %CVS,$(wildcard $(SRCDIR)/*))
# Debug or release?
# The following conditional syntax allows constructs like 'make release all', 'make profile all' or 'make debug all' with GNU make.
ifneq (,$(findstring debug,$(MAKECMDGOALS)))
RELEASE = debug
else
ifneq (,$(findstring profile,$(MAKECMDGOALS)))
RELEASE = profile
else
ifneq (,$(findstring noopt,$(MAKECMDGOALS)))
RELEASE = noopt
else
RELEASE = release
endif
endif
endif
# Dummy pseudotargets for 'make debug ...', 'make release ...', etc:
debug profile release:
echo Top-level makefile: compiling in '$@' mode
# Include defs
include $(SRCDIR)/make.defs
# TARGETS
# Clean up
# NB the definition of $(SUBDIRS) also picks up files in the src directory,
# so we need to test for directories using 'test -d'
clean:
for SUBDIR in $(SUBDIRS); do test -d $$SUBDIR && (cd $$SUBDIR; $(MAKE) $(RELEASE) clean); done
cleanlib:
for SUBDIR in $(SUBDIRS); do test -d $$SUBDIR && (cd $$SUBDIR; $(MAKE) $(RELEASE) cleanlib); done
# Handel : MCMC statistical alignment package
# Includes tkfalign, tkfemit, tkfdistance
Handel handel:
cd $(SRCDIR)/handel; $(MAKE) -k $(RELEASE) dep handel
cd $(SRCDIR)/tkf; $(MAKE) -k $(RELEASE) dep tkfhandel
# xrate : fast phylo-grammar training & annotation using EM
XRATE Xrate xrate:
cd $(SRCDIR)/ecfg; $(MAKE) -k $(RELEASE) dep xrate
# Tests (xrate, SCFGs)
test:
$(MAKE) $(RELEASE) all
cd $(SRCDIR)/ecfg; $(MAKE) $(RELEASE) test
cd $(SRCDIR)/scfg; $(MAKE) $(RELEASE) test
# stemloc: multiple alignment of RNA sequences
StemLoc Stemloc stemloc:
cd $(SRCDIR)/stemloc; $(MAKE) -k $(RELEASE) dep stemloc
# dense-stemloc
# Use dense(faster,fatter) rather than sparse(slower,slimmer) DP matrices for Pair SCFGs
# Also uses explicit enumeration of bifurcations (see above)
dense-stemloc:
cd $(SRCDIR)/stemloc; $(MAKE) -k $(RELEASE) alloc_dense dep stemloc
# evoldoer: pairwise statistical alignment of RNA sequences
evoldoer:
cd $(SRCDIR)/evoldoer; $(MAKE) -k $(RELEASE) dep evoldoer
# Indiegram: three-way statistical alignment of RNA sequences
indiegram:
cd $(SRCDIR)/indiegram; $(MAKE) -k $(RELEASE) workaround dep indiegram
# protpal: approximate statistical alignment with sequence profiles
protpal:
cd $(SRCDIR)/protpal; $(MAKE) -k $(RELEASE) dep protpal
# simgram: generate simulated sample alignments from xrate grammars
simgram:
cd $(SRCDIR)/ecfg; $(MAKE) -k $(RELEASE) dep $@
# Probabilistic Smith-Waterman (PSW) implementations
psw: ppsw dpsw
ppsw:
cd $(SRCDIR)/psw; $(MAKE) -k $(RELEASE) dep ppswalign ppswtrain
dpsw:
cd $(SRCDIR)/psw; $(MAKE) -k $(RELEASE) dep dpswalign dpswtrain
# Utility programs
utils:
cd $(SRCDIR)/seq; $(MAKE) -k $(RELEASE) dep wordcount cmpalign cmpfold aligncluster
cd $(SRCDIR)/stemloc; $(MAKE) -k $(RELEASE) dep gc2gr-ss
cd $(SRCDIR)/tree; $(MAKE) -k $(RELEASE) dep drawpstree eztree reroot getinsertions
@echo All utilities built
# Bill Bruno's weighbor (distributed with DART for historical reasons)
Weighbor weighbor:
cd $(SRCDIR)/Weighbor; $(MAKE) -k weighbor