File: Makefile

package info (click to toggle)
augustus 3.5.0%2Bdfsg-5
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 777,052 kB
  • sloc: cpp: 80,066; perl: 21,491; python: 4,368; ansic: 1,244; makefile: 1,141; sh: 171; javascript: 32
file content (85 lines) | stat: -rw-r--r-- 2,704 bytes parent folder | download | duplicates (2)
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
#
# Makefile for Augustus
#
include common.mk

.PHONY: all augustus auxprogs clean install release test unit_test

all: augustus auxprogs

augustus:
	mkdir -p bin
	cd src && ${MAKE}

auxprogs:
	mkdir -p bin
	cd auxprogs && ${MAKE}

clean:
	cd src && ${MAKE} clean
	cd auxprogs && ${MAKE} clean
	@if [ -n $(shell which python3) ] ; then \
		cd tests/short && \
		./execute_test.py --clean examples && \
		./execute_test.py --clean bam2hints && \
		./execute_test.py --clean bam2wig; \
		cd .. && ./pyclean.sh; \
	fi

PREFIX = /usr
INSTALLDIR = debian/augustus-$(AUGVERSION)

install:
	if [ ! $(PWD) -ef $(INSTALLDIR) ] ; then \
		install -d $(INSTALLDIR) && \
		cp -a config bin scripts $(INSTALLDIR) ; \
	fi
	ln -sf $(INSTALLDIR)/bin/augustus $(PREFIX)/bin/augustus
	ln -sf $(INSTALLDIR)/bin/etraining $(PREFIX)/bin/etraining
	ln -sf $(INSTALLDIR)/bin/prepareAlign $(PREFIX)/bin/prepareAlign
	ln -sf $(INSTALLDIR)/bin/fastBlockSearch $(PREFIX)/bin/fastBlockSearch
	if [ -f $(INSTALLDIR)/bin/load2db ] ; then ln -sf $(INSTALLDIR)/bin/load2db $(PREFIX)/bin/load2db ; fi
	if [ -f $(INSTALLDIR)/bin/getSeq ] ; then ln -sf $(INSTALLDIR)/bin/getSeq $(PREFIX)/bin/getSeq ; fi

# for internal purposes:
release:
	find . -name "*~" | xargs rm -f
	rm .travis.yml
	rm -rf .git
	rm -rf .github
	rm -f src/makedepend.pl
	cd docs/tutorial2015/results; ls | grep -v do.sh | grep -v README | xargs rm; cd -
	rm -r auxprogs/utrrnaseq/input/human-chr19
	rm -r docs/tutorial-cgp/results/cactusout
	make clean all
	rm config/species/generic/*.pbl
	cd src/parser; rm Makefile; cd -
	cd ..; tar -czf augustus-$(AUGVERSION).tar.gz augustus-$(AUGVERSION)

check-python3:
	@if [ -z $(shell which python3) ] ; then \
		echo "warning: Python3 is required for the execution of the test cases!"; \
		exit 1; \
	fi

test: check-python3 all
ifeq ("$(shell uname -s -m)","Linux x86_64")
	cd tests/short && ./execute_test.py --html examples
	cd tests/short && ./execute_test.py --html bam2hints
	cd tests/short && ./execute_test.py --html bam2wig
	cd tests/short && ./execute_test.py --html filterbam
else ifeq ("$(shell uname -s -m)", "Linux s390x")
	cd tests/short && ./execute_test.py examples
	cd tests/short && ./execute_test.py --html bam2hints
	cd tests/short && ./execute_test.py --html bam2wig
else
	$(info If you run make test on a non-AMD64 architecture or a non-Linux system (like macOS), most tests will run without the --compare option!)
	cd tests/short && ./execute_test.py examples
	cd tests/short && ./execute_test.py --html bam2hints
	cd tests/short && ./execute_test.py --html bam2wig
	cd tests/short && ./execute_test.py --html filterbam
endif

unit_test:
	cd src && ${MAKE} unittest
	cd src/unittests && ./unittests