GitBucket
4.21.2
Toggle navigation
Snippets
Sign in
Files
Branches
1
Releases
Issues
1
Pull requests
Labels
Priorities
Milestones
Wiki
Forks
nigel.stanger
/
Handbook
Browse code
- Removed obsolete OmniGraffle rules.
master
1 parent
e8a7b9b
commit
6f25bd92801369f1feb3ef4459d84dcf25f0b0df
nstanger
authored
on 19 Jun 2009
Patch
Showing
4 changed files
make-includes/build_lecture_rules.make
make-includes/standard_paths.make
make-includes/standard_rules.make
make-includes/standard_suffixes.make
Ignore Space
Show notes
View
make-includes/build_lecture_rules.make
################################################################################ # # File: $Id$ # # Standard variables and rules for building a set of lecture files. # Altering these definitions will affect ALL LECTURE MAKEFILES FOR ALL # PAPERS!! If you need to do something specific for a particular paper, # include a custom rule in its makefile. DON'T add it here! # ################################################################################ ################################################################################ # # Add standard file suffixes. # include $(GLOBAL_HANDBOOK_INCLUDE)/standard_suffixes.make ################################################################################ # # Standard directories. # IMGDIR=images ################################################################################ # # Standard paths. # include $(GLOBAL_HANDBOOK_INCLUDE)/standard_paths.make ################################################################################ # # Files to be cleaned by the various "clean" targets. Note that we don't # "tidy" .aux files because they may be needed by the xr package for inter- # document cross references, but won't get regenerated if the final target # PDF files exist. They will be caught by by the "clean" target though. # TIDY_FILES+=*.tmp *.out *.log *.nav *.toc *.snm *.head *.dvi \ slides-combined.pdf slides-notes.pdf $(IMGDIR)/*-tmp.pdf CLEAN_FILES+=*.aux *.pdf ################################################################################ # # Various environment variables. # include $(GLOBAL_HANDBOOK_INCLUDE)/standard_environment.make # # Base file names for the various documents. # SLIDES?=Chapter$(CHAPTER)slides FIGURES?=Chapter$(CHAPTER)figures COMBINED?=Chapter$(CHAPTER)combined NOTES?=Chapter$(CHAPTER)notes # # Standard files to be installed on the web server. # ifneq ($(strip $(SLIDES)),) INSTALL_FILES+=$(SLIDES).pdf endif ifneq ($(strip $(FIGURES)),) INSTALL_FILES+=$(FIGURES).pdf $(FIGURES)-reduced.pdf endif ifneq ($(strip $(COMBINED)),) INSTALL_FILES+=$(COMBINED).pdf endif # # List of standard "phony" build targets. # TARGETS+=slides notes slides-combined slides-notes figures figures2up combined # .PHONY: $(TARGETS) ################################################################################ # # Display a message if someone tries to build a target that has been # disabled (by setting the appropriate variable to empty in the makefile). # disabled_message=@echo The \"$(1)\" target has been disabled for this chapter. ################################################################################ # # Build everything. # all: slides notes figures figures2up combined ################################################################################ # # Build presentation slides. If $(SLIDES) is empty, these rules are ignored. # ifneq ($(strip $(SLIDES)),) # # Set the prerequisites for the "slides" build target, depending on # whether the figures document exists. If $(FIGURES) is non-empty, we need # to include the figures .aux file for inter-document cross-references. # ifeq ($(strip $(FIGURES)),) SLIDES_PREREQS:=$(SLIDES).pdf else SLIDES_PREREQS:=figures $(SLIDES).pdf endif # # Build the slides for the presentation. # slides: $(SLIDES_PREREQS) $(SLIDES).pdf: $(SLIDES).tex $(SLIDE_IMAGES) $(SLIDE_BACKGROUNDS) $(SLIDE_FILES) pdflatex --jobname=$(SLIDES) '\documentclass[$(LATEX_OPTS)]{lectureslides}\input{$(SLIDES)}' pdflatex --jobname=$(SLIDES) '\documentclass[$(LATEX_OPTS)]{lectureslides}\input{$(SLIDES)}' else slides: $(call disabled_message,$@) endif ################################################################################ # # Build the presentation notes. If $(NOTES) is empty, these rules are # ignored. # ifneq ($(strip $(NOTES)),) # # Build the slides with notes. # slides-notes: slides-notes.pdf slides-notes.pdf: $(SLIDES).tex $(SLIDE_IMAGES) $(SLIDE_BACKGROUNDS) $(SLIDE_FILES) pdflatex --jobname=slides-notes '\documentclass[$(LATEX_OPTS),notes=onlyslideswithnotes]{lectureslides}\input{$(SLIDES)}' pdflatex --jobname=slides-notes '\documentclass[$(LATEX_OPTS),notes=onlyslideswithnotes]{lectureslides}\input{$(SLIDES)}' # # Build the slides with notes, 6-up. # notes: $(NOTES).pdf $(NOTES).pdf: $(NOTES).tex slides-notes.pdf pdflatex $< pdflatex $< else notes slides-notes: $(call disabled_message,$@) endif ################################################################################ # # Build the complete combined lecture document. If $(COMBINED) is empty, # these rules are ignored. # ifneq ($(strip $(COMBINED)),) # # Set the prerequisites for the "combined" build target, depending on # whether the figures document exists. If $(FIGURES) is empty, they are # omitted from the combined document. # ifeq ($(strip $(FIGURES)),) COMBINED_PREREQS:=$(COMBINED).tex slides-combined.pdf else COMBINED_PREREQS:=$(COMBINED).tex slides-combined.pdf $(FIGURES).pdf endif # # Build the slides for the combined document. # slides-combined: slides-combined.pdf slides-combined.pdf: $(SLIDES).tex $(SLIDE_IMAGES) $(SLIDE_BACKGROUNDS) pdflatex --jobname=slides-combined '\documentclass[$(LATEX_OPTS),handout]{lectureslides}\input{$(SLIDES)}' pdflatex --jobname=slides-combined '\documentclass[$(LATEX_OPTS),handout]{lectureslides}\input{$(SLIDES)}' # # Build the complete combined document. # combined: $(COMBINED).pdf $(COMBINED).pdf: $(COMBINED_PREREQS) $(COMBI_IMAGES) $(COMBI_FILES) pdflatex $< pdflatex $< else combined slides-combined: $(call disabled_message,$@) endif ################################################################################ # # Build the figures and examples document. If $(FIGURES) is empty, these # rules are ignored. # ifneq ($(strip $(FIGURES)),) figures: $(FIGURES).pdf $(FIGURES).pdf: $(FIGURES).tex $(FIG_IMAGES) $(FIG_FILES) pdflatex $< pdflatex $< figures2up: $(FIGURES)-reduced.pdf $(FIGURES)-reduced.pdf: $(FIGURES).pdf pdfnup $< --nup 2x1 --outfile $@ else figures figures2up: $(call disabled_message,$@) endif ################################################################################ # # Build the test document. # test: test.pdf test.pdf: test.tex ################################################################################ # # Install the appropriate files on the web server. This relies on the # environment variable HANDBOOK_INSTALL_DIRECTORY being defined, and # (assuming that this variable points to a directory on the network) the # appropriate share has been mounted. # # See build_document_rules.make for an explanation of why the install # uses a foreach. # # Note that this won't do anything clever if you give it files that are # in subdirectories of the current directory. Everything will be flattened # at the other end. That is, something like "images/foo.pdf" will go into # the installation directory as "foo.pdf", not "images/foo.pdf". # install: @announce "Copying files to web server --- make sure that you have the share mounted!" @test -d $(HANDBOOK_INSTALL_ROOT) @mkdir -p $(INSTALL_DIRECTORY) @$(foreach f,$(INSTALL_FILES),if test ! -f $(INSTALL_DIRECTORY)/$(f) -o $(f) -nt $(INSTALL_DIRECTORY)/$(f); then echo "Installing $(f)"; cp $(f) $(INSTALL_DIRECTORY); fi;) ################################################################################ # # Debugging: print the values of the standard variables. # debug: @announce Externally defined variables @echo "TEACHING_SHARED = [$(TEACHING_SHARED)]" @echo "HANDBOOK_INSTALL_ROOT = [$(HANDBOOK_INSTALL_ROOT)]" @echo "CHAPTER = [$(CHAPTER)]" @announce Internally defined variables @echo "SUBJECT_CODE = [$(SUBJECT_CODE)]" @echo "PAPER_NUMBER = [$(PAPER_NUMBER)]" @echo "GLOBAL_HANDBOOK_INCLUDE = [$(GLOBAL_HANDBOOK_INCLUDE)]" @echo "INSTALL_DIRECTORY = [$(INSTALL_DIRECTORY)]" @echo "INSTALL_FILES = [$(INSTALL_FILES)]" @echo "SLIDE_IMAGES = [$(SLIDE_IMAGES)]" @echo "SLIDE_BACKGROUNDS = [$(SLIDE_BACKGROUNDS)]" @echo "SLIDE_FILES = [$(SLIDE_FILES)]" @echo "FIG_IMAGES = [$(FIG_IMAGES)]" @echo "FIG_FILES = [$(FIG_FILES)]" @echo "TIDY_FILES = [$(TIDY_FILES)]" @echo "CLEAN_FILES = [$(CLEAN_FILES)]" @echo "DRAFT = [$(DRAFT)]" @echo "LATEX_OPTS = [$(LATEX_OPTS)]" @echo "SLIDES = [$(SLIDES)]" @echo "FIGURES = [$(FIGURES)]" @echo "COMBINED = [$(COMBINED)]" @echo "NOTES = [$(NOTES)]" @echo "SLIDES_PREREQS = [$(SLIDES_PREREQS)]" @echo "COMBINED_PREREQS = [$(COMBINED_PREREQS)]" @echo "TARGETS = [$(TARGETS)]" ################################################################################ # # Clean up: get rid of all the temporary files. # tidy: rm -f $(TIDY_FILES) # # Clean up: get rid of everything except the original source. # clean: tidy rm -f $(CLEAN_FILES) ################################################################################ # # List all "phony" build targets. # targets: @echo "targets: $(TARGETS)" ################################################################################ # # Standard default rules. # include $(GLOBAL_HANDBOOK_INCLUDE)/standard_rules.make
################################################################################ # # File: $Id$ # # Standard variables and rules for building a set of lecture files. # Altering these definitions will affect ALL LECTURE MAKEFILES FOR ALL # PAPERS!! If you need to do something specific for a particular paper, # include a custom rule in its makefile. DON'T add it here! # ################################################################################ ################################################################################ # # Add standard file suffixes. # include $(GLOBAL_HANDBOOK_INCLUDE)/standard_suffixes.make # .SUFFIXES: .svg .pdf .tex .dvi .graffle .png .tif .plo .jpg .pict .eps .ps ################################################################################ # # Standard directories. # IMGDIR=images ################################################################################ # # Standard paths. # include $(GLOBAL_HANDBOOK_INCLUDE)/standard_paths.make # vpath %.graffle $(IMGDIR) # vpath %.pdf $(IMGDIR) # vpath %.png $(IMGDIR) # vpath %.tif $(IMGDIR) # vpath %.jpg $(IMGDIR) # vpath %.plo $(IMGDIR) # vpath %.ps $(IMGDIR) # vpath %.eps $(IMGDIR) # vpath %.svg $(IMGDIR) # vpath %.pict $(IMGDIR) ################################################################################ # # Files to be cleaned by the various "clean" targets. Note that we don't # "tidy" .aux files because they may be needed by the xr package for inter- # document cross references, but won't get regenerated if the final target # PDF files exist. They will be caught by by the "clean" target though. # TIDY_FILES+=*.tmp *.out *.log *.nav *.toc *.snm *.head *.dvi \ slides-combined.pdf slides-notes.pdf $(IMGDIR)/*-tmp.pdf CLEAN_FILES+=*.aux *.pdf ################################################################################ # # Various environment variables. # include $(GLOBAL_HANDBOOK_INCLUDE)/standard_environment.make # # Base file names for the various documents. # SLIDES?=Chapter$(CHAPTER)slides FIGURES?=Chapter$(CHAPTER)figures COMBINED?=Chapter$(CHAPTER)combined NOTES?=Chapter$(CHAPTER)notes # # Standard files to be installed on the web server. # ifneq ($(strip $(SLIDES)),) INSTALL_FILES+=$(SLIDES).pdf endif ifneq ($(strip $(FIGURES)),) INSTALL_FILES+=$(FIGURES).pdf $(FIGURES)-reduced.pdf endif ifneq ($(strip $(COMBINED)),) INSTALL_FILES+=$(COMBINED).pdf endif # # List of standard "phony" build targets. # TARGETS+=slides notes slides-combined slides-notes figures figures2up combined # .PHONY: $(TARGETS) ################################################################################ # # Display a message if someone tries to build a target that has been # disabled (by setting the appropriate variable to empty in the makefile). # disabled_message=@echo The \"$(1)\" target has been disabled for this chapter. ################################################################################ # # Build everything. # all: slides notes figures figures2up combined ################################################################################ # # Build presentation slides. If $(SLIDES) is empty, these rules are ignored. # ifneq ($(strip $(SLIDES)),) # # Set the prerequisites for the "slides" build target, depending on # whether the figures document exists. If $(FIGURES) is non-empty, we need # to include the figures .aux file for inter-document cross-references. # ifeq ($(strip $(FIGURES)),) SLIDES_PREREQS:=$(SLIDES).pdf else SLIDES_PREREQS:=figures $(SLIDES).pdf endif # # Build the slides for the presentation. # slides: $(SLIDES_PREREQS) $(SLIDES).pdf: $(SLIDES).tex $(SLIDE_IMAGES) $(SLIDE_BACKGROUNDS) $(SLIDE_FILES) pdflatex --jobname=$(SLIDES) '\documentclass[$(LATEX_OPTS)]{lectureslides}\input{$(SLIDES)}' pdflatex --jobname=$(SLIDES) '\documentclass[$(LATEX_OPTS)]{lectureslides}\input{$(SLIDES)}' else slides: $(call disabled_message,$@) endif ################################################################################ # # Build the presentation notes. If $(NOTES) is empty, these rules are # ignored. # ifneq ($(strip $(NOTES)),) # # Build the slides with notes. # slides-notes: slides-notes.pdf slides-notes.pdf: $(SLIDES).tex $(SLIDE_IMAGES) $(SLIDE_BACKGROUNDS) $(SLIDE_FILES) pdflatex --jobname=slides-notes '\documentclass[$(LATEX_OPTS),notes=onlyslideswithnotes]{lectureslides}\input{$(SLIDES)}' pdflatex --jobname=slides-notes '\documentclass[$(LATEX_OPTS),notes=onlyslideswithnotes]{lectureslides}\input{$(SLIDES)}' # # Build the slides with notes, 6-up. # notes: $(NOTES).pdf $(NOTES).pdf: $(NOTES).tex slides-notes.pdf pdflatex $< pdflatex $< else notes slides-notes: $(call disabled_message,$@) endif ################################################################################ # # Build the complete combined lecture document. If $(COMBINED) is empty, # these rules are ignored. # ifneq ($(strip $(COMBINED)),) # # Set the prerequisites for the "combined" build target, depending on # whether the figures document exists. If $(FIGURES) is empty, they are # omitted from the combined document. # ifeq ($(strip $(FIGURES)),) COMBINED_PREREQS:=$(COMBINED).tex slides-combined.pdf else COMBINED_PREREQS:=$(COMBINED).tex slides-combined.pdf $(FIGURES).pdf endif # # Build the slides for the combined document. # slides-combined: slides-combined.pdf slides-combined.pdf: $(SLIDES).tex $(SLIDE_IMAGES) $(SLIDE_BACKGROUNDS) pdflatex --jobname=slides-combined '\documentclass[$(LATEX_OPTS),handout]{lectureslides}\input{$(SLIDES)}' pdflatex --jobname=slides-combined '\documentclass[$(LATEX_OPTS),handout]{lectureslides}\input{$(SLIDES)}' # # Build the complete combined document. # combined: $(COMBINED).pdf $(COMBINED).pdf: $(COMBINED_PREREQS) $(COMBI_IMAGES) $(COMBI_FILES) pdflatex $< pdflatex $< else combined slides-combined: $(call disabled_message,$@) endif ################################################################################ # # Build the figures and examples document. If $(FIGURES) is empty, these # rules are ignored. # ifneq ($(strip $(FIGURES)),) figures: $(FIGURES).pdf $(FIGURES).pdf: $(FIGURES).tex $(FIG_IMAGES) $(FIG_FILES) pdflatex $< pdflatex $< figures2up: $(FIGURES)-reduced.pdf $(FIGURES)-reduced.pdf: $(FIGURES).pdf pdfnup $< --nup 2x1 --outfile $@ else figures figures2up: $(call disabled_message,$@) endif ################################################################################ # # Build the test document. # test: test.pdf test.pdf: test.tex ################################################################################ # # Install the appropriate files on the web server. This relies on the # environment variable HANDBOOK_INSTALL_DIRECTORY being defined, and # (assuming that this variable points to a directory on the network) the # appropriate share has been mounted. # # See build_document_rules.make for an explanation of why the install # uses a foreach. # # Note that this won't do anything clever if you give it files that are # in subdirectories of the current directory. Everything will be flattened # at the other end. That is, something like "images/foo.pdf" will go into # the installation directory as "foo.pdf", not "images/foo.pdf". # install: @announce "Copying files to web server --- make sure that you have the share mounted!" @test -d $(HANDBOOK_INSTALL_ROOT) @mkdir -p $(INSTALL_DIRECTORY) @$(foreach f,$(INSTALL_FILES),if test ! -f $(INSTALL_DIRECTORY)/$(f) -o $(f) -nt $(INSTALL_DIRECTORY)/$(f); then echo "Installing $(f)"; cp $(f) $(INSTALL_DIRECTORY); fi;) ################################################################################ # # Debugging: print the values of the standard variables. # debug: @announce Externally defined variables @echo "TEACHING_SHARED = [$(TEACHING_SHARED)]" @echo "HANDBOOK_INSTALL_ROOT = [$(HANDBOOK_INSTALL_ROOT)]" @echo "CHAPTER = [$(CHAPTER)]" @announce Internally defined variables @echo "SUBJECT_CODE = [$(SUBJECT_CODE)]" @echo "PAPER_NUMBER = [$(PAPER_NUMBER)]" @echo "GLOBAL_HANDBOOK_INCLUDE = [$(GLOBAL_HANDBOOK_INCLUDE)]" @echo "INSTALL_DIRECTORY = [$(INSTALL_DIRECTORY)]" @echo "INSTALL_FILES = [$(INSTALL_FILES)]" @echo "SLIDE_IMAGES = [$(SLIDE_IMAGES)]" @echo "SLIDE_BACKGROUNDS = [$(SLIDE_BACKGROUNDS)]" @echo "SLIDE_FILES = [$(SLIDE_FILES)]" @echo "FIG_IMAGES = [$(FIG_IMAGES)]" @echo "FIG_FILES = [$(FIG_FILES)]" @echo "TIDY_FILES = [$(TIDY_FILES)]" @echo "CLEAN_FILES = [$(CLEAN_FILES)]" @echo "DRAFT = [$(DRAFT)]" @echo "LATEX_OPTS = [$(LATEX_OPTS)]" @echo "SLIDES = [$(SLIDES)]" @echo "FIGURES = [$(FIGURES)]" @echo "COMBINED = [$(COMBINED)]" @echo "NOTES = [$(NOTES)]" @echo "SLIDES_PREREQS = [$(SLIDES_PREREQS)]" @echo "COMBINED_PREREQS = [$(COMBINED_PREREQS)]" @echo "TARGETS = [$(TARGETS)]" ################################################################################ # # Clean up: get rid of all the temporary files. # tidy: rm -f $(TIDY_FILES) # # Clean up: get rid of everything except the original source. # clean: tidy rm -f $(CLEAN_FILES) ################################################################################ # # List all "phony" build targets. # targets: @echo "targets: $(TARGETS)" ################################################################################ # # Standard default rules. # include $(GLOBAL_HANDBOOK_INCLUDE)/standard_rules.make
Ignore Space
Show notes
View
make-includes/standard_paths.make
################################################################################ # # File: $Id$ # # Specify standard file path list. # ################################################################################ ################################################################################ # # Required make variables. These should be defined by the calling makefile. # # IMGDIR # The path to the directory that contains images, e.g., "images". # IMGDIR?=$(error The required make variable IMGDIR has not been defined. Please set it to the directory in which images are located) ################################################################################ # # Standard paths. # vpath %.pdf $(IMGDIR) vpath %.png $(IMGDIR) vpath %.tif $(IMGDIR) vpath %.jpg $(IMGDIR) vpath %.plo $(IMGDIR) vpath %.ps $(IMGDIR) vpath %.eps $(IMGDIR) vpath %.svg $(IMGDIR) vpath %.pict $(IMGDIR) vpath %.R $(IMGDIR)
################################################################################ # # File: $Id$ # # Specify standard file path list. # ################################################################################ ################################################################################ # # Required make variables. These should be defined by the calling makefile. # # IMGDIR # The path to the directory that contains images, e.g., "images". # IMGDIR?=$(error The required make variable IMGDIR has not been defined. Please set it to the directory in which images are located) ################################################################################ # # Standard paths. # vpath %.graffle $(IMGDIR) vpath %.pdf $(IMGDIR) vpath %.png $(IMGDIR) vpath %.tif $(IMGDIR) vpath %.jpg $(IMGDIR) vpath %.plo $(IMGDIR) vpath %.ps $(IMGDIR) vpath %.eps $(IMGDIR) vpath %.svg $(IMGDIR) vpath %.pict $(IMGDIR) vpath %.R $(IMGDIR)
Ignore Space
Show notes
View
make-includes/standard_rules.make
################################################################################ # # File: $Id$ # # Standard rules for a variety of situations. Includes standard suffixes and # paths. # # ################################################################################ ################################################################################ # # Required make variables. These should be defined by the calling makefile. # # SUBJECT_CODE # The paper number for the current paper, e.g., 212. # PAPER_NUMBER?=$(error The required make variable PAPER_NUMBER has not been defined. Please set it to the correct value) # # IMGDIR # The path to the directory that contains images, e.g., images. # IMGDIR?=$(error The required make variable IMGDIR has not been defined. Please set it to the directory in which images are located) ################################################################################ # # Default rules. # # # PDF from LaTeX via DVI, typically for images drawn using PSTricks). # %.pdf %-print.pdf: $(IMGDIR)/%.tex latex --jobname=$(IMGDIR)/$* $< dvips -q -f $(IMGDIR)/$* | ps2eps -q -l | epstopdf -f -o=$(IMGDIR)/$@ # # PDF from LaTeX. # %.pdf: %.tex pdflatex $< pdflatex $< # # 2-up PDF from 1-up PDF. # %-2up.pdf: %.pdf pdfnup $< --nup 2x1 --outfile $@ # # Derived XML with inclusions from source XML without inclusions. # %-derived.xml: %.xml xmllint --xinclude $< > $@ # # LaTeX from derived XML. # %.tex: %-derived.xml $(call xslt,$<,xml2latex.xsl,$(call xslt_parameter,paper,$(PAPER_NUMBER))) > $@ # # HTML from derived XML. # %.html: %-derived.xml $(call xslt,$<,xml2html.xsl,$(call xslt_parameter,paper,$(PAPER_NUMBER))) > $@ # # PNG from TIFF. # %.png %-print.png %-web.png: %.tif convert "$<" $(IMGDIR)/$@ # # PNG from PICT. # %.png %-print.png %-web.png: %.pict convert "$<" $(IMGDIR)/$@ # # PDF from Ploticus. # %.pdf %-print.pdf: %.plo ploticus -eps -tightcrop -o stdout $< | shiftbbox | epstopdf --filter --outfile=$(IMGDIR)/$@ # # PDF from PS # %.pdf %-print.pdf: %.ps ps2eps --ignoreBB --nohires --loose < $< | ps2pdf -dEPSCrop - $(IMGDIR)/$@ # # PDF from EPS # %.pdf %-print.pdf: %.eps ps2eps --ignoreBB --nohires --loose < $< | ps2pdf -dEPSCrop - $(IMGDIR)/$@ # # PDF from SVG (via Inkscape) # We remove the intermediate file manually rather than through the tidy/clean # mechanism. # %.pdf %-print.pdf: %.svg inkscape --file=$< --export-text-to-path --without-gui --export-pdf=$(IMGDIR)/$*-tmp.pdf pdfcrop $(IMGDIR)/$*-tmp.pdf $(IMGDIR)/$@ -rm -f $(IMGDIR)/$*-tmp.pdf # # PNG from SVG (via Inkscape) # %.png %-print.png %-web.png: %.svg inkscape --file=$< --without-gui --export-area-drawing --export-background-opacity=1.0 --export-dpi=96 --export-png=$(IMGDIR)/$@
################################################################################ # # File: $Id$ # # Standard rules for a variety of situations. Includes standard suffixes and # paths. # # ################################################################################ ################################################################################ # # Required make variables. These should be defined by the calling makefile. # # SUBJECT_CODE # The paper number for the current paper, e.g., 212. # PAPER_NUMBER?=$(error The required make variable PAPER_NUMBER has not been defined. Please set it to the correct value) # # IMGDIR # The path to the directory that contains images, e.g., images. # IMGDIR?=$(error The required make variable IMGDIR has not been defined. Please set it to the directory in which images are located) ################################################################################ # # Default rules. # # # PDF from LaTeX via DVI, typically for images drawn using PSTricks). # %.pdf %-print.pdf: $(IMGDIR)/%.tex latex --jobname=$(IMGDIR)/$* $< dvips -q -f $(IMGDIR)/$* | ps2eps -q -l | epstopdf -f -o=$(IMGDIR)/$@ # # PDF from LaTeX. # %.pdf: %.tex pdflatex $< pdflatex $< # # 2-up PDF from 1-up PDF. # %-2up.pdf: %.pdf pdfnup $< --nup 2x1 --outfile $@ # # Derived XML with inclusions from source XML without inclusions. # %-derived.xml: %.xml xmllint --xinclude $< > $@ # # LaTeX from derived XML. # %.tex: %-derived.xml $(call xslt,$<,xml2latex.xsl,$(call xslt_parameter,paper,$(PAPER_NUMBER))) > $@ # # HTML from derived XML. # %.html: %-derived.xml $(call xslt,$<,xml2html.xsl,$(call xslt_parameter,paper,$(PAPER_NUMBER))) > $@ # # PDF and PNG from OmniGraffle. (We can't automate this.) # %.pdf %-print.pdf %.png %-web.png: %.graffle @echo "$(notdir $<): regenerate $(notdir $@)" @exit 1 # # Various bitmap types embedded in OmniGraffle. (We can't automate this.) # %.graffle: %.png @echo "$(notdir $@): reinsert $(notdir $<)" @exit 1 %.graffle: %.jpg @echo "$(notdir $@): reinsert $(notdir $<)" @exit 1 # # PNG from TIFF. # %.png %-print.png %-web.png: %.tif convert "$<" $(IMGDIR)/$@ # # PNG from PICT. # %.png %-print.png %-web.png: %.pict convert "$<" $(IMGDIR)/$@ # # PDF from Ploticus. # %.pdf %-print.pdf: %.plo ploticus -eps -tightcrop -o stdout $< | shiftbbox | epstopdf --filter --outfile=$(IMGDIR)/$@ # # PDF from PS # %.pdf %-print.pdf: %.ps ps2eps --ignoreBB --nohires --loose < $< | ps2pdf -dEPSCrop - $(IMGDIR)/$@ # # PDF from EPS # %.pdf %-print.pdf: %.eps ps2eps --ignoreBB --nohires --loose < $< | ps2pdf -dEPSCrop - $(IMGDIR)/$@ # # PDF from SVG (via Inkscape) # We remove the intermediate file manually rather than through the tidy/clean # mechanism. # %.pdf %-print.pdf: %.svg inkscape --file=$< --export-text-to-path --without-gui --export-pdf=$(IMGDIR)/$*-tmp.pdf pdfcrop $(IMGDIR)/$*-tmp.pdf $(IMGDIR)/$@ -rm -f $(IMGDIR)/$*-tmp.pdf # # PNG from SVG (via Inkscape) # %.png %-print.png %-web.png: %.svg inkscape --file=$< --without-gui --export-area-drawing --export-background-opacity=1.0 --export-dpi=96 --export-png=$(IMGDIR)/$@
Ignore Space
Show notes
View
make-includes/standard_suffixes.make
################################################################################ # # File: $Id$ # # Specify standard file suffix list. # ################################################################################ ################################################################################ # # Add standard file suffixes. # .SUFFIXES: .svg .pdf .tex .dvi .png .tif .plo .jpg .pict .eps .ps .R
################################################################################ # # File: $Id$ # # Specify standard file suffix list. # ################################################################################ ################################################################################ # # Add standard file suffixes. # .SUFFIXES: .svg .pdf .tex .dvi .graffle .png .tif .plo .jpg .pict .eps .ps .R
Show line notes below