LATEX   = latex
DVIPS   = dvips
GV      = gv
GNUPLOT = gnuplot

# Nazov vystupneho PostScriptoveho suboru
OUTPUT = plazma12.ps
OTHERS =

# Vstupne data, z ktorych sa na zaklade *.gp suborov generuju grafy
DATA = argon.dat \
	   dusik.dat \
	   kyslik.dat \
	   sf5.dat \
	   sf6.asc \
	   sf6.dat \
	   vzduch.asc

# Grafy, ktore sa maju vytvorit z *.gp suborov (mazane pri make clean !!)
GRAPHS = argon.eps \
		 dusik.eps \
		 kyslik.eps \
		 sf5.eps \
		 sf6-asc.eps \
		 sf6-dat.eps \
		 vzduch.eps

# Dalsie pridavne obrazky alebo vstupne subory, ktore sa nijako nevytvaraju
IMG = schema.eps

# Toto popisuje zavislosti
DEPEND = labak.sty Makefile $(IMG) $(DATA) $(GRAPHS)


## END of user setup
####################

all: $(OUTPUT) $(OTHERS)

# spravenie vsetkeho v podadresaroch
all-recurse:
	for dir in `find . -type d -print`; do \
		cd $$dir && \
		if [ -f Makefile ]; then make ; fi \
	done

integraly.txt: integral.awk integral.sh $(DATA)
	./integral.sh > $@

koncentracie.txt: koncentracie.sh $(DATA)
	./koncentracie.sh | tee $@

$(OUTPUT): $(DEPEND)

%.ps: %.dvi $(DEPEND)
	$(DVIPS) -o $@ $<

view: $(OUTPUT)
	$(GV) $(OUTPUT) &

%.dvi: %.tex $(DEPEND)
	$(LATEX) $<
	$(LATEX) $< > /dev/null
	$(LATEX) $< > /dev/null

# Vytvaranie grafov programom gnuplot
%.eps: %.gp $(DATA)
	$(GNUPLOT) $<

# zmazanie docasnych suborov
clean: clean-tex-logs clean-graphs
	rm -f $(OTHERS)

# vycistenenie vsetkych podadresarov
clean-recurse:
	for dir in `find . -type d -print`; do \
		cd $$dir && \
		if [ -f Makefile ]; then make ; fi \
	done

# zmazanie docasnych suborov vytvorenych programom latex
clean-tex-logs:
	@for OUT in $(OUTPUT); \
	do \
		for i in $${OUT%.ps}{.aux,.dvi,.log,.toc,.lof,.lot,.ps} ; \
		do \
			echo "rm -f $$i"; rm -f $$i; \
		done \
	done

# zmazanie vytvorenych grafov
clean-graphs:
	@test -z "$(GRAPHS)" || \
	for i in "$(GRAPHS)" ; \
	do \
		echo "rm -f $$i"; rm -f $$i; \
	done \

# upload labaku na web
html:
	make clean-recurse && \
	HTML_DIR="$$HOME/public_html" && \
	DIR=`pwd | sed "s@^$$HOME@$$HTML_DIR@g;"` && \
	umask 072 && cp -uvR * $$DIR && \
	umask 077 &&  make && umask 072 && \
	cp $(OUTPUT) $$DIR && \
	find $$DIR \( -type d -exec chmod 705 {} \; \) -o \( -type f -exec chmod 604 {} \; \)
	
