Permalink
Switch branches/tags
Nothing to show
Find file
Fetching contributors…
Cannot retrieve contributors at this time
127 lines (100 sloc) 3.84 KB
# 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 handalign:
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
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
# 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
# protpal: phylogenetic ancestral reconstruction using transducers
protpal:
cd $(SRCDIR)/protpal; $(MAKE) -k $(RELEASE) dep $@
# darts: dart-enhanced Scheme interpreter (requires guile)
darts:
cd $(SRCDIR)/guile; $(MAKE) -k $(RELEASE) dep $@
# 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
# Bob Edgar's muscle
MUSCLE = muscle_src_3.8.1551.tar.gz
muscle bin/muscle:
mkdir muscle; cd muscle; curl -O http://www.drive5.com/muscle/$(MUSCLE); tar xvzf $(MUSCLE); perl -i.bak -pe 's/-static//g' Makefile; make
mv muscle/muscle bin/muscle