1
|
os = $(shell uname)
|
2
|
|
3
|
SED = sed -$(if $(filter Darwin,$(os)),E,r)
|
4
|
|
5
|
#####
|
6
|
|
7
|
all: _not_file misc
|
8
|
$(MAKE) plots
|
9
|
./join VegX VegBank
|
10
|
./join VegX VegBIEN
|
11
|
./review
|
12
|
|
13
|
.SUFFIXES:
|
14
|
|
15
|
_not_file:
|
16
|
.PHONY: _not_file
|
17
|
|
18
|
misc = schemas/vegbien.sql schemas/vegbien_empty.sql VegX-VegBIEN.organisms.csv
|
19
|
|
20
|
all =\
|
21
|
$(wildcard for_review/*.csv) \
|
22
|
$(filter-out VegX-% VegBank-%,$(wildcard *-VegBank.*.csv *-VegBIEN.*.csv)) \
|
23
|
VegX-*.plots.csv $(misc)
|
24
|
|
25
|
clean: _not_file
|
26
|
$(RM) $(all)
|
27
|
|
28
|
#####
|
29
|
|
30
|
misc: $(misc)
|
31
|
.PRECIOUS: $(misc)
|
32
|
|
33
|
bin = ../bin
|
34
|
repl = $(bin)/repl
|
35
|
sort = $(bin)/sort 1 0
|
36
|
chRoot = $(bin)/ch_root <$< >$@
|
37
|
empty = $(SED) -n \
|
38
|
's/^CREATE TABLE ([0-9A-Za-z_]+) \($$/TRUNCATE \1 CASCADE;/p' <$< >$@
|
39
|
|
40
|
VegBank-VegBIEN.%.csv: VegBank-VegBIEN.csv VegBank-VegBIEN.%_only.csv
|
41
|
$(bin)/cat_csv <$+ >$@
|
42
|
.PRECIOUS: VegBank-VegBIEN.%.csv
|
43
|
|
44
|
schemas/vegbien.sql: schemas/vegbank.sql VegBank-VegBIEN.schema.csv
|
45
|
$(repl) <$+ >$@
|
46
|
|
47
|
schemas/vegbien_empty.sql: schemas/vegbien.sql
|
48
|
$(empty)
|
49
|
|
50
|
VegX-VegBank.organisms.csv: _not_file
|
51
|
$(bin)/in_place $@ $(sort)
|
52
|
|
53
|
VegX-VegBIEN.organisms.csv: VegX-VegBank.organisms.csv VegBank-VegBIEN.map.csv
|
54
|
$(repl) <$+ 1|$(sort) >$@
|
55
|
|
56
|
#####
|
57
|
|
58
|
plots: _not_file $(subst .organisms.,.plots.,$(wildcard VegX-*.organisms.csv))
|
59
|
|
60
|
chRoot2PlotsLeftVegx =\
|
61
|
env \
|
62
|
left_in_root='/*s/individualOrganismObservation/*ID->/*s/plotObservation' \
|
63
|
left_out_root='/*s/plotObservation' \
|
64
|
$(chRoot)
|
65
|
|
66
|
VegX-VegBank.plots.csv: VegX-VegBank.organisms.csv
|
67
|
$(chRoot2PlotsVegxVegbank)
|
68
|
chRoot2PlotsVegxVegbank =\
|
69
|
env \
|
70
|
right_in_root='/taxonObservation/*_ID/observation' \
|
71
|
right_out_root='/observation' \
|
72
|
$(chRoot2PlotsLeftVegx)
|
73
|
|
74
|
VegX-VegBIEN.plots.csv: VegX-VegBIEN.organisms.csv
|
75
|
$(chRoot2PlotsVegxVegbien)
|
76
|
chRoot2PlotsVegxVegbien =\
|
77
|
env \
|
78
|
right_in_root='/taxonoccurrence/*_ID/plotevent' \
|
79
|
right_out_root='/plotevent' \
|
80
|
$(chRoot2PlotsLeftVegx)
|