LATEX = latex DVIPS = dvips GV = gv GNUPLOT = gnuplot # Nazov vystupneho PostScriptoveho suboru OUTPUT = plazma5.ps OTHERS = katodovy_spad.txt # meno programu na vygenerovanie arc1sk.dat PROG = ./convert # Vstupne data, z ktorych sa na zaklade *.gp suborov generuju grafy DATA = arc1sk.dat UI-histogram.dat figure5.dat # Grafy, ktore sa maju vytvorit z *.gp suborov (mazane pri make clean !!) GRAPHS = UI-histogram.eps figure5.eps # Dalsie pridavne obrazky alebo vstupne subory, ktore sa nijako nevytvaraju IMG = histogram-contour.eps \ histogram3D-3.eps # histogram3D-2.eps \ # histogram3D-4.eps \ # histogram3D-5.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 && make ; \ done katodovy_spad.txt: compute-cathode-fall.sh figure5.gp ./compute-cathode-fall.sh > $@ cat $@ $(OUTPUT): $(DEPEND) %.ps: %.dvi $(DEPEND) $(DVIPS) -o $@ $< view: $(OUTPUT) $(GV) $(OUTPUT) & %.dvi: %.tex $(DEPEND) $(LATEX) $< $(LATEX) $< > /dev/null $(LATEX) $< > /dev/null # data vygenerovane programom: arc1sk.dat: $(PROG) arc1sk.dat.bin $(PROG) arc1sk.dat.bin > $@ # program: $(PROG): $(PROG).c $(CC) -Wall -pedantic -o $@ $< histogram: UI-histogram.eps histogram.R: histogram.pm arc1sk.dat.bin convert-notscaled ./convert-notscaled arc1sk.dat.bin | ./histogram.pm > $@ UI-histogram.dat: UI-histogram.sh ./histogram.pm-old-universal ./UI-histogram.sh figure5.gp: linear-aprox.sh figure5.gp.preprocess figure5.dat ./linear-aprox.sh figure5.dat: arc1sk.dat figure5.awk integral.awk histogram.pm-old-universal Makefile awk -f figure5.awk arc1sk.dat | ./histogram.pm-old-universal | sort -g -r | tee U-distrib.dat |\ awk -f integral.awk >> $@ NAQ=`grep NAQ $@ | awk '{print $$4}'`; \ TIME_STEP=`grep TIME_STEP $@ | awk '{print $$4}'`; \ mv $@ $@.tmp; \ awk "BEGIN{ NAQ=$$NAQ; TIME_STEP=$$TIME_STEP;} /^#/{ print; next;} ! /^#/ { printf \"%6g\t%6g\n\", -\$$2*TIME_STEP/NAQ, \$$1 ; next;}" $@.tmp > $@ rm -f $@.tmp # Vytvaranie grafov programom gnuplot %.eps: %.gp $(DATA) $(GNUPLOT) $< # v ostatnych Makefiloch $(IMG) nezavisi od nicoho, ale tuto je to nutne $(IMG): histogram.R Run.R -./Run.R || cat Run.Rout # zmazanie docasnych suborov clean: clean-tex-logs clean-graphs rm -f *.Rout .*.Rout $(OTHERS) figure5.gp # vycistenenie vsetkych podadresarov clean-recurse: for dir in `find . -type d -print`; do \ cd $$dir && make clean ; \ 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 {} \; \)