# Makefile to run the various scripts needed once CVS updates have been performed.

dataset_path = ../loser
surveydir_path = ../surveys
cavern_flags = -qq -s -v7
tar_flags = -cz --exclude "*/CVS" --ignore-case -f
svxtrace_cmd = ./svxtrace.py

#things needed to run this stuff
#python imaging library, freesans or arial truetype font, dump3d, cavestats
#Debian packages: python-imaging, ttf-freefont, perl, python
#dump3d needs to be built in configured survex sources with cd src;make dump3d
#

###########

#everything: autogen_pages folklist 3dfiles tarfiles surveytable qmlists prospecting_guide
everything: autogen_pages folklist 3dfiles tarfiles qmlists

###########

autogen_pages: noinfo/lengths.dat noinfo/all.pos noinfo/cavestats

# cavestats should be BUILT AUTOMATICALLY rather than having to be
# built manually in a survex build tree.
#indxal.htm: noinfo/CAVETAB2.CSV noinfo/all.pos noinfo/make-indxal4.pl noinfo/areapage_skeletons/*.html noinfo/lengths.dat
#	python noinfo/make-areaindices.py noinfo/cavestats
#	cd noinfo; perl ./make-indxal4.pl -q CAVETAB2.CSV

noinfo/lengths.dat:
	python noinfo/create_dplong_table.py

noinfo/all.pos: noinfo/all.3d
	3dtopos noinfo/all.3d noinfo/all.pos

noinfo/cavestats:
	# This needs a built copy of survex sources. See
	# noinfo/cavestats.build for details

###########

folklist: folk/index.htm

folk/index.htm: noinfo/folk.csv noinfo/make-folklist.py
	python noinfo/make-folklist.py < noinfo/folk.csv > folk/index.htm

###########

#This is now part of separate repo and should be built separately 
#surveytable:
#	cd $(surveydir_path); perl tablize-csv.pl Surveys.csv; perl tablizebyname-csv.pl Surveys.csv --quiet



# Output depends on entire contents of the survey tree;
# there appears to be no sensible way to run this at need.

###########

qmlists: 1623/204/qm.html 1623/204/atoz.html 1623/234/qm.html 1623/258/qm.html

1623/204/qm.html: 1623/204/qm.csv 1623/204/tablize-qms.pl
	cd 1623/204; perl tablize-qms.pl qm.csv

1623/234/qm.html: 1623/234/qm.csv 1623/234/tablize-qms.pl
	cd 1623/234; perl tablize-qms.pl qm.csv

1623/258/qm.html: 1623/258/qm.csv 1623/258/tablize-qms.pl
	cd 1623/258; perl tablize-qms.pl qm.csv

1623/204/atoz.html: 1623/204/glossary.csv 1623/204/make-glossary.pl
	cd 1623/204; perl make-glossary.pl glossary.csv

###########

3dfiles: noinfo/all.3d 1623/204/204.3d 1623/234/234.3d 1623/76/76.3d noinfo/alltracks.3d

noinfo/all.3d: $(shell $(svxtrace_cmd) $(dataset_path)/all)
	cavern $(cavern_flags) $(dataset_path)/all -o noinfo/all.3d

1623/204/204.3d: $(shell $(svxtrace_cmd) $(dataset_path)/caves/204/204)
	cavern $(cavern_flags) $(dataset_path)/caves/204/204 -o 1623/204/204.3d

1623/234/234.3d: $(shell $(svxtrace_cmd) $(dataset_path)/caves/234/234)
	cavern $(cavern_flags) $(dataset_path)/caves/234/234 -o 1623/234/234.3d

1623/76/76.3d: $(shell $(svxtrace_cmd) $(dataset_path)/caves/76/76)
	cavern $(cavern_flags) $(dataset_path)/caves/76/76 -o 1623/76/76.3d

noinfo/alltracks.3d: $(shell $(svxtrace_cmd) $(dataset_path)/fixedpts/gps/tracks/alltracks)
	cavern $(cavern_flags) $(dataset_path)/fixedpts/gps/tracks/alltracks.svx -o noinfo/alltracks.3d

###########

#this requires ttf-freefont package to be installed
#And dump3d from survex
prospecting_guide: 3dfiles freefont noinfo/lengths.dat
	cd noinfo/prospecting_guide_scripts && python make-prospectingguide-new.py
	cd noinfo/prospecting_guide_scripts && python make-prospectingguide-new.py --white

freefont: /usr/share/fonts/truetype/freefont/FreeSans.ttf
        # ttf-freefont needs to be installed (or MS corefonts) 


dump3d: noinfo/prospecting_guide_scripts/dump3d
       # apt-get source survex && sudo apt-get build-dep survex
       # cd survex-* && debuild
       # make dump3d && cp dump3d $(pwd)/noinfo/prospecting_guide_scripts/dump3d

###########

tarfiles: noinfo/all.tgz 1623/204/surveydata.tgz 1623/234/surveydata.tgz 1623/76/surveydata.tgz

noinfo/all.tgz: noinfo/all.3d
	tar $(tar_flags) noinfo/all.tgz -C $(dataset_path)/.. loser

1623/204/surveydata.tgz: 1623/204/204.3d
	tar $(tar_flags) 1623/204/surveydata.tgz -C $(dataset_path)/caves/ 204

1623/234/surveydata.tgz: 1623/234/234.3d
	tar $(tar_flags) 1623/234/surveydata.tgz -C $(dataset_path)/caves/ 234

1623/76/surveydata.tgz: 1623/76/76.3d
	tar $(tar_flags) 1623/76/surveydata.tgz -C $(dataset_path)/caves/ 76

# (tarfiles depend on 3d files to avoid running the
# expensive $(shell ...) commands more than necessary.)

###########

clean:
	cut -d "," -f 6 noinfo/CAVETAB2.CSV | xargs rm -f
	rm -f indxal.htm folk/index.htm noinfo/all.pos
	rm -f noinfo/all.3d 1623/204/204.3d 1623/234/234.3d 1623/76/76.3d
	rm -f 1623/204/surveydata.tgz 1623/234/surveydata.tgz 1623/76/surveydata.tgz noinfo/all.tgz
	rm -f $(surveydir_path)/surveytable.html
	rm -f report.html
	find . -name ".cvsignore" | xargs rm -f

###########

report: everything
	rm -f report.html
	bigbro -ohtml report.html -local -fragments -failures -rec .* -ignore ".*/jnl/.*" -ignore ".*/icons/.*" -ignore ".*rdmap.*" -ignore ".*/cp/.*" -ignore ".*/surveys/.*" index.htm