Newer
Older
Master_thesis / thesis / Makefile
# $Id: Makefile 87305 2016-02-08 13:50:32Z lafferty $
# ===============================================================================
# Purpose: simple Makefile to streamline processing latex document (just say "make" to execute)
# Author: Tomasz Skwarnicki
# Created on: 2010-09-24
# A few changes by Patrick Koppenburg on 2015-06-26
# ===============================================================================

# name of the main latex file (do not include .tex)
MAIN = main

# name of the target - change that to something descriptive, like paper-v0, Bs2PhiPhi-ANA-v1, etc...
TARGET = template

# name of command to perform Latex (either pdflatex or latex)
LATEX = pdflatex

ifeq ($(LATEX),pdflatex)
	FIGEXT = .pdf
	MAINEXT= .pdf
	BUILDCOMMAND=rm -f $(MAIN).aux && $(LATEX) $(MAIN) && bibtex $(MAIN) && $(LATEX) $(MAIN) && $(LATEX) $(MAIN)
	BUILDCOMMANDPRL=rm -f $(MAIN)-prl.aux && $(LATEX) $(MAIN)-prl && bibtex $(MAIN)-prl && $(LATEX) $(MAIN)-prl && $(LATEX) $(MAIN)-prl
	MAKEMAINCOUNT= sed 's\#{wordcount}{false}\#{wordcount}{true}\#' main-prl.tex > main-count.tex
	BUILDCOMMANDCOUNT= $(MAKEMAINCOUNT) && rm -f $(MAIN)-count.aux && $(LATEX) $(MAIN)-count && bibtex $(MAIN)-count >/dev/null; true && $(LATEX) $(MAIN)-count && ./wordcount.sh $(MAIN)-count && rm wordcount.pdf main-count* 
else
	FIGEXT = .eps
	MAINEXT= .pdf
	BUILDCOMMAND=rm -f $(MAIN).aux && $(LATEX) $(MAIN) && bibtex $(MAIN) && $(LATEX) $(MAIN) && $(LATEX) $(MAIN) && dvips -z -o $(MAIN).ps $(MAIN) && ps2pdf $(MAIN).ps && rm -f head.tmp body.tmp
	BUILDCOMMANDPRL=rm -f $(MAIN)-prl.aux && $(LATEX) $(MAIN)-prl && bibtex $(MAIN)-prl && $(LATEX) $(MAIN)-prl && $(LATEX) $(MAIN)-prl && dvips -z -o $(MAIN)-prl.ps $(MAIN)-prl && ps2pdf $(MAIN)-prl.ps && rm -f head.tmp body.tmp
	BUILDCOMMANDCOUNT=
endif

# list of all source files
TEXSOURCES = $(wildcard *.tex) $(wildcard *.bib) $(wildcard *.bst)
FIGSOURCES = $(wildcard figs/*$(FIGEXT))
SOURCES    = $(TEXSOURCES) $(FIGSOURCES)

# define output (could be making .ps instead)
OUTPUT = $(TARGET)$(MAINEXT)

# cp temporary main.pdf to target.
$(OUTPUT): $(MAIN)$(MAINEXT)
	cp $(MAIN)$(MAINEXT) $(OUTPUT)

# prescription how to make output (your favorite commands to process latex)
# do latex twice to make sure that all cross-references are updated 
$(MAIN)$(MAINEXT): $(SOURCES) Makefile
	$(BUILDCOMMAND)

# just so we can say "make all" without knowing the output name
all: $(OUTPUT)

# remove temporary files (good idea to say "make clean" before putting things back into repository)
.PHONY : clean
clean:
	rm -f *~ *.aux *.log *.bbl *.blg *.dvi *.tmp *.out *.blg *.bbl $(OUTPUT) $(MAIN)$(MAINEXT) $(MAIN).ps $(MAIN)-prl.ps $(MAIN)-prlNotes.bib

# remove output file
rmout: 
	rm $(OUTPUT) $(MAIN)$(MAINEXT)

# Make the PRL version
prl: 
	$(BUILDCOMMANDPRL)

# Make the PRL version
count: 
	$(BUILDCOMMANDCOUNT)
	@echo ''
	@echo 'Figures:   Add 20+150/(aspect ratio) per figure'
	@echo 'Equations: Add 16 words per row (single column) '
	@echo 'Tables:    Add 13 words plus 6.5 words per line (single column)'
	@echo