
# `pst-pdf' -- Rolf Niepraschk, 2006/07/23, Rolf.Niepraschk@ptb.de


.SUFFIXES : .tex .ltx .dvi .ps .pdf .eps

PACKAGE = pst-pdf

PDFLATEX = pdflatex

LATEX = latex

ARCHNAME = $(PACKAGE)-$(shell date +"%y%m%d")
#ARCHNAME = $(PACKAGE)-$(shell date +"%y%m%d-%H%M")

EXAMPLE = $(PACKAGE)-example.tex 

ADDINPUTS = penguin.eps elephant.ps knuth.png psf-demo.eps \
  insect1.eps insect15.eps

PDF_CONTAINER = $(EXAMPLE:.tex=-pics.pdf)

ARCHFILES = $(PACKAGE).dtx $(PACKAGE).ins $(ADDINPUTS) Makefile \
            README CHANGES CHANGES.tex \
            $(PACKAGE).pdf $(PACKAGE)-DE.pdf $(EXAMPLE:.tex=.pdf) \
            scripts/ps4pdf \
            scripts/ps4pdf.bat \
            scripts/ps4pdf.bat.noMiKTeX \
            scripts/ps4pdf.bat.w95 \

PS2PDF = GS_OPTIONS=-dPDFSETTINGS=/prepress ps2pdf

all : pdf doc example

pdf : $(EXAMPLE:.tex=.pdf)

doc : $(PACKAGE).pdf

doc-DE : $(PACKAGE)-DE.pdf

example : $(EXAMPLE:.tex=.pdf)

$(EXAMPLE:.tex=.pdf) : $(EXAMPLE) $(ADDINPUTS) $(PDF_CONTAINER) $(PACKAGE).sty
	$(PDFLATEX) $<
        
dist : doc doc-DE pdf example
	tar cvzf $(ARCHNAME).tar.gz $(ARCHFILES)
	@ echo
	@ echo $(ARCHNAME).tar.gz

%.gls %.pdf : %.dtx $(PACKAGE).sty 
	test -f $(basename $<).glo || touch -f $(basename $<).glo
	test -f $(basename $<).idx || touch -f $(basename $<).idx
	makeindex -s gglo.ist -t $(basename $<).glg -o $(basename $<).gls \
		$(basename $<).glo
	makeindex -s gind.ist -t $(basename $<).ilg -o $(basename $<).ind \
		$(basename $<).idx
	$(PDFLATEX) $<

$(PACKAGE)-DE.gls $(PACKAGE)-DE.pdf : $(PACKAGE).dtx $(PACKAGE).sty 
	test -f $(basename $@).glo || touch -f $(basename $@).glo
	test -f $(basename $@).idx || touch -f $(basename $@).idx
	makeindex -s gglo.ist -t $(basename $@).glg -o $(basename $@).gls \
		$(basename $@).glo
	makeindex -s gind.ist -t $(basename $@).ilg -o $(basename $@).ind \
		$(basename $@).idx
	cp $< $(basename $@).dtx
	$(PDFLATEX) '\newcommand*{\mainlang}{ngerman}\input{$(basename $@).dtx}'
	$(RM) $(basename $@).dtx
        
%.pdf : %.tex 
	$(PDFLATEX) $<

$(PACKAGE).sty $(EXAMPLE) : $(PACKAGE).ins $(PACKAGE).dtx
	tex $<

$(EXAMPLE:.tex=.dvi) : $(EXAMPLE) $(ADDINPUTS) $(PACKAGE).sty
	$(LATEX) $<

$(PDF_CONTAINER:.pdf=.ps) : $(EXAMPLE:.tex=.dvi)
	dvips -Ppdf -o $@ $<

$(PDF_CONTAINER) : $(PDF_CONTAINER:.pdf=.ps)
	@ if grep "needs cropping" $(<:-pics.ps=.log) > /dev/null; \
	then \
	  $(PS2PDF) $< $@.tmp; pdfcrop $@.tmp $@ ; rm $@.tmp; \
	else \
	  $(PS2PDF) $< $@; \
	fi

CHANGES : CHANGES.pdf 
	pdftotext -layout -nopgbrk $< $@
	
CHANGES.pdf : CHANGES.tex $(PACKAGE).gls
	$(PDFLATEX) $<
        
arch : CHANGES
	zip $(ARCHNAME).zip $(ARCHFILES)

clean :
	$(RM) $(addprefix $(PACKAGE), \
	      .dvi .log .aux .bbl .blg .idx .ind .ilg .gls .glg .glo) \
	      $(addprefix $(basename $(EXAMPLE)), .ps .dvi .log .aux) \
	      $(EXAMPLE) $(PDF_CONTAINER:.pdf=.ps) $(PDF_CONTAINER) \
              CHANGES.pdf

veryclean : clean
	$(RM) $(PACKAGE).pdf pst-pdf-DE.pdf $(EXAMPLE:.tex=.pdf) CHANGES  

# EOF
