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
|
#!/usr/bin/make -Rrf
SHELL=/bin/bash -o pipefail
#------------------------------------------------------------
# simulated test data
#------------------------------------------------------------
# yeast chromosome III, 50X coverage
ref_url?='http://www.ebi.ac.uk/ena/data/view/X59720&display=fasta'
ref:=ref.fa
read_len:=100
cov:=50
num_read_pairs:=316600
test_read1:=read1.fq
test_read2:=read2.fq
#------------------------------------------------------------
# assembly outputs
#------------------------------------------------------------
standard_assembly_dir?=standard-assembly
dida_assembly_dir?=dida-assembly
assembly_name?=test
#------------------------------------------------------------
# assembly params
#------------------------------------------------------------
k?=30
in?=../$(test_read1) ../$(test_read2)
abyss_opt=v=-v k=$k name='$(assembly_name)' in='$(in)'
#------------------------------------------------------------
# meta rules
#------------------------------------------------------------
.PHONY: clean fasta_identity_test
default: fasta_identity_test
clean:
rm -rf $(standard_assembly_dir)/* $(dida_assembly_dir)/* \
$(test_read1) $(test_read2)
#------------------------------------------------------------
# rules for downloading data
#------------------------------------------------------------
$(ref):
curl $(ref_url) > $@
$(test_read1) $(test_read2): $(ref)
wgsim -N $(num_read_pairs) -1 $(read_len) -2 $(read_len) \
$^ $(test_read1) $(test_read2)
#------------------------------------------------------------
# rules for running assemblies
#------------------------------------------------------------
$(standard_assembly_dir):
mkdir -p $@
$(dida_assembly_dir):
mkdir -p $@
$(standard_assembly_dir)/$(assembly_name)-8.fa: $(test_read1) $(test_read2) \
| $(standard_assembly_dir)
abyss-pe -C $(standard_assembly_dir) $(abyss_opt) $(ABYSS_OPT)
$(dida_assembly_dir)/$(assembly_name)-8.fa: $(test_read1) $(test_read2) \
| $(dida_assembly_dir)
abyss-pe -C $(dida_assembly_dir) $(abyss_opt) $(ABYSS_OPT) \
aligner=dida
#------------------------------------------------------------
# test rules
#------------------------------------------------------------
fasta_identity_test: \
$(dida_assembly_dir)/$(assembly_name)-8.fa \
$(standard_assembly_dir)/$(assembly_name)-8.fa
compare-fastx $^
@echo '$@: PASSED!'
|