-
Notifications
You must be signed in to change notification settings - Fork 39
/
Makefile
49 lines (33 loc) · 973 Bytes
/
Makefile
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
rootDir = .
include include.mk
modules = api stats randgen validate mutations fasta alignmentDepth liftover lod maf blockViz extract analysis phyloP modify assemblyHub synteny paf
.PHONY: all libs %.libs progs %.progs clean %.clean doxy %.doxy
all : libs progs
libs: ${modules:%=%.libs}
%.libs:
cd $* && ${MAKE} libs
progs: ${modules:%=%.progs}
%.progs: libs
cd $* && ${MAKE} progs
clean: ${modules:%=%.clean}
rm -f hal
rm -rf lib bin objs
rm -f *.pyc */*.pyc */*/*.pyc
rm -rf __pycache__ */__pycache__ */*/__pycache__
%.clean:
cd $* && ${MAKE} clean
# create symbolic links for test so that python packages work without assuming name of
# directory, but then remove, as it can cause grief for naive copy programs
test:
rm -f hal
ln -sf . hal
${MAKE} doTests
rm -f hal
doTests: ${modules:%=%.test}
%.test: all
cd $* && ${MAKE} test
doxy : ${modules:%=doxy.%}
doxy.%:
cd api && ${MAKE} doxy
etags:
etags $$(find . -name '*.h' -o -name '*.cpp')