#
# Makefile - Main Makefile for documents of Platon SDG
#
# Developed by Lubomir Host 'rajo' <rajo AT platon.sk>
# Copyright (c) 2005 Platon SDG
# Licensed under terms of GNU General Public License.
# All rights reserved.
#
# $Platon: doc/laboratorne-prace-rajo/Makefile,v 1.1 2005/04/23 23:36:36 rajo Exp $
#

PACKAGE = laboratorne-prace-rajo
VERSION = $(shell date "+%y-%m-%d")
distdir = $(PACKAGE)-$(VERSION)
srcdir  = .
TOP_DIR = .


TEX            = csplain
PDFTEX         = pdfcsplain
LATEX          = latex
#LATEX          = cslatex
PDFLATEX       = pdflatex
#PDFLATEX       = pdfcslatex
DVIPS          = dvips
GV             = gv
GNUPLOT        = gnuplot
CC             = gcc
TAR            = tar
ZIP            = zip
ZIP_ENV        = -r9
GZIP_ENV       = --best

SUBDIRS = $(shell cat SUBDIRS 2>/dev/null)

# DISTFILES {{{
DISTFILES = \
			Makefile \
			SUBDIRS \
			mikr1 \
			mikr1/1.dat \
			mikr1/Makefile \
			mikr1/graf-fit.gp \
			mikr1/graf.gp \
			mikr1/graf1.gp \
			mikr1/graf2.gp \
			mikr1/graf3.gp \
			mikr1/img1.eps \
			mikr1/img1.fig \
			mikr1/intersection.dat \
			mikr1/labak.sty \
			mikr1/mikr1.tex \
			mikr1/schema.eps \
			mikr1/trieda-kmitania-fit.c \
			mikr1/errata \
			mikr1/errata/Makefile \
			mikr1/errata/errata.tex \
			mikr1/errata/graf-fit1.gp \
			mikr1/errata/graf-fit2.gp \
			mikr1/errata/labak.sty \
			mikr1/errata/trieda-kmitania-fit.c \
			mikr2 \
			mikr2/1.dat \
			mikr2/2.dat \
			mikr2/3.dat \
			mikr2/Makefile \
			mikr2/graf.gp \
			mikr2/graf1.gp \
			mikr2/graf2.gp \
			mikr2/graf3.gp \
			mikr2/kalibracia.dat \
			mikr2/labak.sty \
			mikr2/linear-reg.awk \
			mikr2/mikr2.tex \
			mikr2/schema.eps \
			mikr2/schema.fig \
			mikr3 \
			mikr3/Makefile \
			mikr3/labak.sty \
			mikr3/mikr3.tex \
			mikr3/schema.eps \
			mikr3/schema.fig \
			mikr4 \
			mikr4/1.dat \
			mikr4/2.dat \
			mikr4/Makefile \
			mikr4/clonky.eps \
			mikr4/clonky.fig \
			mikr4/compute.awk \
			mikr4/graf.gp \
			mikr4/labak.sty \
			mikr4/mikr4.tex \
			mikr4/obvod.eps \
			mikr4/obvod.fig \
			mikr5 \
			mikr5/Makefile \
			mikr5/labak.sty \
			mikr5/mikr5.tex \
			mikr5/schema.eps \
			mikr5/schema.fig \
			mikr67 \
			mikr67/1.dat \
			mikr67/Makefile \
			mikr67/graf.fig \
			mikr67/graf.gp \
			mikr67/kalibracia-rezonatora.awk \
			mikr67/kvalita.awk \
			mikr67/labak.sty \
			mikr67/linear-reg.awk \
			mikr67/mikr67.tex \
			mikr67/quadrat.awk \
			mikr67/r-from-kappa.awk \
			mikr67/schema.eps \
			mikr67/schema.fig \
			mikr9 \
			mikr9/Makefile \
			mikr9/labak.sty \
			mikr9/mikr9.tex \
			mikr9/odbocnica.eps \
			mikr9/odbocnica.fig \
			mikr9/schema.eps \
			mikr9/schema.fig \
			plazma12 \
			plazma12/Makefile \
			plazma12/argon.dat \
			plazma12/argon.gp \
			plazma12/dusik.dat \
			plazma12/dusik.gp \
			plazma12/kyslik.dat \
			plazma12/kyslik.gp \
			plazma12/labak.sty \
			plazma12/linear-reg.awk \
			plazma12/plazma12.tex \
			plazma12/schema.eps \
			plazma12/schema.fig \
			plazma12/sf5.dat \
			plazma12/sf5.gp \
			plazma12/sf6-asc.gp \
			plazma12/sf6-dat.gp \
			plazma12/sf6.asc \
			plazma12/sf6.dat \
			plazma12/vzduch.asc \
			plazma12/vzduch.gp \
			plazma3 \
			plazma3/Makefile \
			plazma3/frekv.dat \
			plazma3/frekv.gp \
			plazma3/graf-all.gp \
			plazma3/graf-porovnanie.gp \
			plazma3/graf-sf6.gp \
			plazma3/graf-vzduch.gp \
			plazma3/labak.sty \
			plazma3/my.dat \
			plazma3/plazma3.tex \
			plazma3/schema-old.fig \
			plazma3/schema.eps \
			plazma3/schema.fig \
			plazma3/vzduch11.dat \
			plazma3/vzduch12.dat \
			plazma3/vzduch21.dat \
			plazma3/vzduch22.dat \
			plazma3/vzduch31.dat \
			plazma3/vzduch32.dat \
			plazma3/vzduch41.dat \
			plazma3/vzduch42.dat \
			plazma3/vzduch51.dat \
			plazma3/vzduch61.dat \
			plazma5 \
			plazma5/Makefile \
			plazma5/README \
			plazma5/Run.R \
			plazma5/U-distrib.dat \
			plazma5/UI-histogram.dat \
			plazma5/UI-histogram.gp \
			plazma5/UI-histogram.sh \
			plazma5/arc1sk.dat.bin \
			plazma5/compute-cathode-fall.sh \
			plazma5/convert-notscaled.c \
			plazma5/convert.c \
			plazma5/figure5.awk \
			plazma5/figure5.dat \
			plazma5/figure5.gp.preprocess \
			plazma5/histogram-contour.eps \
			plazma5/histogram.R \
			plazma5/histogram.pm \
			plazma5/histogram.pm-old-universal \
			plazma5/histogram.sh \
			plazma5/histogram3D-3.eps \
			plazma5/integral.awk \
			plazma5/labak.sty \
			plazma5/linear-aprox.sh \
			plazma5/linear-reg.awk \
			plazma5/plazma5.tex \
			plazma6 \
			plazma6/Makefile \
			plazma6/aparatura.eps \
			plazma6/aparatura.fig \
			plazma6/integral.awk \
			plazma6/integral.sh \
			plazma6/koncentracie.sh \
			plazma6/labak.sty \
			plazma6/meranie1.asc \
			plazma6/meranie2.asc \
			plazma6/meranie3.asc \
			plazma6/meranif1.asc \
			plazma6/meranif2.asc \
			plazma6/meranif3.asc \
			plazma6/meranig1.asc \
			plazma6/meranig2.asc \
			plazma6/meranig3.asc \
			plazma6/plazma6.tex \
			plazma6/prechody.eps \
			plazma6/prechody.fig \
			plazma7 \
			plazma7/1.dat \
			plazma7/2.dat \
			plazma7/3.dat \
			plazma7/4.dat \
			plazma7/Makefile \
			plazma7/data.dat \
			plazma7/data1.gp \
			plazma7/data2.gp \
			plazma7/labak.sty \
			plazma7/plazma7.tex

# DISTFILES }}}

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

all: doc

# include rules from Rules.make:
#include $(TOP_DIR)/_templates/Rules.make

#
# A rule to do nothing
#
dummy:

ifdef SUBDIRS

doc: doc-subdirs

subdir-list-doc = $(sort $(patsubst %,_subdir_doc_%,$(SUBDIRS)))
doc-subdirs: dummy $(subdir-list-doc)

$(subdir-list-doc) : dummy
	@if [ -d "$(patsubst _subdir_doc_%,%,$@)" ]; then \
		echo -en "[32;1mMaking documents in directory [35;1m'$(patsubst _subdir_doc_%,%,$@)'[0m"; echo; \
		$(MAKE) -C $(patsubst _subdir_doc_%,%,$@) ; \
		echo -en "[32;1mMake in directory [35;1m'$(patsubst _subdir_doc_%,%,$@)'[32;1m done.[0m"; echo; \
	else \
		echo -en "[31;1mSkipping nonexistent directory [35;1m'$(patsubst _subdir_doc_%,%,$@)'[0m"; echo; \
	fi

else

doc: all
	
endif # ifdef SUBDIRS

# Clean {{{

#
# A rule to make clean in subdirectories
#
ifdef SUBDIRS

clean: clean-subdirs clean-tex-logs clean-graphs clean-postscript clean-pdf
	-rm -f .first.* .second.* .third.* core core.* missfont.log

subdir-list-clean = $(sort $(patsubst %,_subdir_clean_%,$(SUBDIRS)))
clean-subdirs: dummy $(subdir-list-clean)

$(subdir-list-clean) : dummy
	@if [ -d "$(patsubst _subdir_clean_%,%,$@)" ]; then \
		echo -en "[32;1mCleaning documents in directory [35;1m'$(patsubst _subdir_clean_%,%,$@)'[0m"; echo; \
		$(MAKE) -C $(patsubst _subdir_clean_%,%,$@) clean; \
		echo -en "[32;1mClean in directory [35;1m'$(patsubst _subdir_clean_%,%,$@)'[32;1m done.[0m"; echo; \
	else \
		echo -en "[31;1mSkipping nonexistent directory [35;1m'$(patsubst _subdir_clean_%,%,$@)'[0m"; echo; \
	fi

else

clean:               clean-tex-logs clean-graphs clean-postscript clean-pdf
	-rm -f .first.* .second.* .third.* core core.*

endif # ifdef SUBDIRS

ifdef PREFIX
clean-postscript:
	-rm -rf PostScript/
	-rm -f $(prefix_ps__OUTPUT)

clean-pdf:
	-rm -rf PDF/
	-rm -f $(prefix_pdf_OUTPUT)
else
clean-postscript:
	-rm -rf PostScript/

clean-pdf:
	-rm -rf PDF/
endif

# zmazanie docasnych suborov vytvorenych LaTeXom
ifdef OUTPUT
clean-tex-logs:
	@for OUT in $(OUTPUT); \
	do \
		file="$${OUT%.ps}"; \
		file_list=""; \
		for i in $${file%.pdf}{.aux,.brf,.log,.lof,.lot,.out,.toc,.dvi,.ps,.pdf} ; \
		do \
			file_list="$$file_list $$i"; \
		done; \
	done; \
	filelist="`echo $$file_list | awk -v RS=' ' '{print}' | sort -u | awk -v ORS=' ' '{print}'`"; \
	echo -en "[36mDeleting extensions `echo $$asdf{.aux,.brf,.log,.lof,.lot,.out,.toc,.dvi,.ps,.pdf} `[0m"; echo; \
	echo "rm -f $$filelist"; \
	rm -f $$filelist;
else
clean-tex-logs:
	@filelist="`ls *{.aux,.brf,.log,.lof,.lot,.out,.toc,.dvi,.ps,.pdf} 2>/dev/null`"; \
	if [ ! -z "$$filelist" ]; then \
		echo -en "[36mDeleting files `echo $$asdf{.aux,.brf,.log,.lof,.lot,.out,.toc,.dvi,.ps,.pdf} `[0m"; echo; \
		echo "rm -f $$filelist"; \
		rm -f $$filelist; \
	fi
endif

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

# Distribution {{{
dist: distdir
	GZIP=$(GZIP_ENV) $(TAR) chozf $(distdir).tar.gz  $(distdir)
	@#BZIP=$(GZIP_ENV) $(TAR) chojf $(distdir).tar.bz2 $(distdir)
	-rm -rf $(distdir)
	@#-@banner="md5sum is: `md5sum $(distdir).tar.gz |tee md5sum.$(distdir)`"; \
	dashes=`echo "$$banner" | sed s/./=/g`; \
	echo "$$dashes"; \
	echo "$$banner"; \
	echo "$$dashes"

distdir: $(DISTFILES)
	-rm -rf $(distdir)
	mkdir $(distdir)
	-chmod a+rx $(distdir)
	@here=`cd $(top_builddir) && pwd`; \
	top_distdir=`cd $(distdir) && pwd`; \
	distdir=`cd $(distdir) && pwd`; \
	umask 022; \
	for file in $(DISTFILES); do \
	  d=$(srcdir); \
	  if test -d $$d/$$file; then \
	    mkdir $(distdir)/$$file; \
	  else \
	    test -f $(distdir)/$$file \
	    || cp $$d/$$file $(distdir)/$$file || :; \
	  fi; \
	done

# }}}

# vim: ts=4 isk+=- ft=make
# vim600: fdm=marker fdc=3

