## Makefile for the installation of the `mflogo' package: ## ## Note: this Makefile is *totally unsupported* as it is ## my first attempt at writing an installation Makefile. ## ## This assumes that you have a TDS-compliant Unix/Web2C ## installation, such as e.g. teTeX and that some common ## Unix utilities like 'cp', 'tar', 'mkdir', or 'test' ## are available. ## Usage: ## ## say 'make' or 'make all' to unpack the macros and produce ## the documentation ## ## say 'make install' to install everything except the fonts ## ## say 'make install-fonts' to install the fonts if needed ### package specifics (don't change!): # package name, used in directories PACKAGE = mflogo # file names, used in dependencies SRCFILES = mflogo.dtx mflogo.ins TEXFILES = mflogo.sty Ulogo.fd DOCFILES = mflogo.dvi # install $(FONTARCHIVE), if $(FONT_TO_TRY) isn't found FONT_TO_TRY = logod10.tfm FONTARCHIVE = logofont.tar ### customizable variables: # Where the TeX installation resides: TEXMF = /usr/local/tex/texmf SRCDIR = $(TEXMF)/source/latex/$(PACKAGE) TEXDIR = $(TEXMF)/tex/latex/$(PACKAGE) DOCDIR = $(TEXMF)/doc/latex/misc FONTDIR = $(TEXMF)/fonts/source/public/$(PACKAGE) TFMDIR = $(TEXMF)/fonts/tfm/public/$(PACKAGE) # How to run LaTeX(2e): LATEX = yes | latex #LATEX = latex # How to install the files: INSTALL = cp -p #INSTALL = install -c # How to update the directory database: TEXHASH = texhash #TEXHASH = (cd $(TEXMF); ls -R $(TEXMF) > ls-R) # How to check if the required fonts are installed: # KPSEWHICHCMD = kpsewhich tfm $(FONT_TO_TRY) #KPSEWHICHCMD = kpsewhich $(FONT_TO_TRY) #KPSEWHICHCMD = find $(TEXMF)/fonts -name "$(FONT_TO_TRY)" -print ### unpack targets: default: all all: check-fonts make-sty make-doc make-sty: $(TEXFILES) make-doc: $(DOCFILES) .PHONY: make-sty make-doc # Procude LaTeX macros: $(TEXFILES): $(SRCFILES) $(LATEX) $(PACKAGE).ins # Produce documentation: $(DOCFILES): $(SRCFILES) $(TEXFILES) $(LATEX) $(PACKAGE).dtx # Check if the required fonts are installed: check-fonts: $(KPSEWHICHCMD) > /dev/null || $(MAKE) install-fonts .PHONY: check-fonts ### install targets: install: install-sty install-doc # install-fonts $(MAKE) post-install .PHONY: install # Install LaTeX macros: install-sty: $(TEXFILES) test -d $(TEXDIR) || mkdir $(TEXDIR) (for f in $(TEXFILES); do $(INSTALL) $$f $(TEXDIR); done) .PHONY: install-sty # Install documentation: install-doc: $(DOCFILES) test -d $(DOCDIR) || mkdir $(DOCDIR) (for f in $(DOCFILES); do $(INSTALL) $$f $(DOCDIR); done) .PHONY: install-doc # Install font sources and TFM files: install-fonts: $(FONTARCHIVE) (cd $(TEXMF); tar xvf $(SRCDIR)/$(FONTARCHIVE) ) $(MAKE) post-install .PHONY: install-fonts # Update the directory database: post-install: $(TEXHASH) .PHONY: post-install ### clean targets: clean: rm -f *.log *.aux *.toc *.lof *.lot *.bbl *.blg rm -f *.idx *.ind *.ilg *.glo *.gls distclean: clean rm -f $(TEXFILES) $(DOCFILES) uninstall: (for f in $(TEXFILES); do rm -f $(TEXDIR)/$$f; done) (for f in $(DOCFILES); do rm -f $(DOCDIR)/$$f; done)