From ce51805d9345aeaeeb0cfbde25fea37dea083e00 Mon Sep 17 00:00:00 2001 From: Michael Kohlhase Date: Mon, 4 Dec 2017 13:32:26 +0100 Subject: [PATCH] sharing parts of the Makefiles --- README.md | 21 ++++-- examples/dfg/proposal/Makefile | 71 ++------------------ examples/dfg/proposal/proposal.pdf | Bin 109043 -> 109043 bytes examples/dfg/report/Makefile | 77 ++++------------------ examples/dfg/report/finalreport.pdf | Bin 76118 -> 76118 bytes examples/dfg/simple-proposal/Makefile | 69 ++----------------- examples/dfg/simple-proposal/proposal.pdf | Bin 104463 -> 104463 bytes 7 files changed, 36 insertions(+), 202 deletions(-) diff --git a/README.md b/README.md index 7bc24ee..30846b4 100644 --- a/README.md +++ b/README.md @@ -17,12 +17,12 @@ keeping information consistent. In the simplest case, just clone the repository, and extend your `TEXINPUTS` environment variable so that it can find it. On a UNIX system something like the following should work. -` -cd /path/to/your/setup +``` +cd /path/to/your/project git clone https://github.com/KWARC/LaTeX-proposal -echo 'export TEXINPUTS = "$(TEXINPUTS):/path/to/your/setup/LaTeX-proposal//:"' >> ~/.bashrc -` -Of course you will have to replace `/path/to/your/setup` with a path appropriate to +echo 'export TEXINPUTS = "$(TEXINPUTS):/path/to/your/project/LaTeX-proposal//:"' >> ~/.bashrc +``` +Of course you will have to replace `/path/to/your/project` with a path appropriate to your system. A simple `git pull` will update you to the newest version. ## Getting Started with a New Proposal @@ -33,6 +33,17 @@ the three variables in the upper section of the `Makefile` accordingly, if you w (UNIX) `Makefile` automation (recommended). If you want to use the LaTeX proposal class in a revision control system for a larger group, read (far) below. +Here is what you would do on a UNIX system after the initial steps above to prepare a DFG +proposal (or an EU proposal the same setup works as well, but with suitably adapted +paths). +``` +cp examples/dfg/proposal . +sed -i .bak s/PROP.dir = ..\/..\/..\//Prop.dir = ./ proposal/Makefile +sed -i .bak s/BIB = ..\/lib/BIB = ./ proposal/Makefile + +``` + + ## Disclaimer The LaTeX proposal class has been developed to "scratch my own itch" over many proposals diff --git a/examples/dfg/proposal/Makefile b/examples/dfg/proposal/Makefile index 2ad9240..6c1edc2 100644 --- a/examples/dfg/proposal/Makefile +++ b/examples/dfg/proposal/Makefile @@ -1,73 +1,12 @@ ########################################################################### -# Automating proposal management by make. +# Automating LaTeX-proposal management by make. # The participants work on proposal.tex in "draft" mode, which gives a lot # of information to the developers. Variants submit.tex and public.tex are # used to prepare official versions (hiding development/private info). ########################################################################### # possibly customize the following variables to your setting -PROPOSAL = proposal.tex # the proposal -BIB = ../lib/dummy.bib # bibTeX databases -PROP.dir = ../../.. +PROPOSAL = proposal.tex# # the proposal +BIB = ../lib# # bibTeX databases +PROP.dir = ../../..# # The LaTeX-proposal class directory ########################################################################### -# the following are computed -TARGET = $(PROPOSAL) # all pdflatex targets -TARGET.pdf = $(TARGET:%.tex=%.pdf) # PDFs to be produced -TARGET.aux = $(TARGET:%.tex=%.aux) # their aux files. -PDATA = $(PROPOSAL:%.tex=%.pdata) # the proposal project data -SRC = $(filter-out $(TARGET),$(shell ls *.tex)) # included files -PDFLATEX = pdflatex -interaction batchmode -file-line-error -BBL = $(PROPOSAL:%.tex=%.bbl) -PROPCLS.dir = $(PROP.dir)/base -PROPETC.dir = $(PROP.dir)/etc -DFGPROPCLS.dir = $(PROP.dir)/dfg -TEXINPUTS := .//:$(PROPCLS.dir)//:$(DFGPROPCLS.dir)//:$(PROPETC.dir)//: -BIBINPUTS := ../lib:$(BIBINPUTS) -PROPCLS.clssty = proposal.cls pdata.sty -PROPETC.sty = workaddress.sty metakeys.sty sref.sty -DFGPROPCLS.clssty = dfgproposal.cls dfgpdata.sty -PROPCLS = $(PROPCLS.clssty:%=$(PROPCLS.dir)/%) $(DFGPROPCLS.clssty:%=$(DFGPROPCLS.dir)/%) $(PROPETC.sty:%=$(PROPETC.dir)/%) - -all: $(TARGET.pdf) - -submit: - $(MAKE) -w PROPOSAL=submit.tex all - -public: - $(MAKE) -w PROPOSAL=public.tex all - -cd: # make cd will prepare CD for burning - mkdir CD;make $(TARGET.pdf); cp $(TARGET.pdf) CD - -bbl: $(BBL) -$(BBL): %.bbl: %.aux - bibtex -min-crossrefs=100 -terse $< - -$(PDATA): %.pdata: %.tex - $(PDFLATEX) $< - -$(TARGET.aux): %.aux: %.tex - $(PDFLATEX) $< - -$(TARGET.pdf): %.pdf: %.tex $(SRC) $(BIB) $(PROPCLS) - $(PDFLATEX) $< || $(RM) $@ -# sort $(PROPOSAL:%.tex=%.delivs) > $(PROPOSAL:%.tex=%.deliverables) - @if (test -e $(patsubst %.tex, %.idx, $<));\ - then makeindex $(patsubst %.tex, %.idx, $<); fi -# bbl is up to date $(MAKE) -$(MAKEFLAGS) $(BBL) - @if (grep "(re)run BibTeX" $(patsubst %.tex, %.log, $<)> /dev/null);\ - then $(MAKE) -B $(BBL); fi - $(PDFLATEX) $< || $(RM) $@ - @if (grep Rerun $(patsubst %.tex, %.log, $<) > /dev/null);\ - then $(PDFLATEX) $< || $(RM) $@; fi - @if (grep Rerun $(patsubst %.tex, %.log, $<) > /dev/null);\ - then $(PDFLATEX) $< || $(RM) $@; fi - -clean: - rm -f *~ *.log *.ilg *.out *.glo *.idx *.ilg *.blg *.run.xml *.synctex.gz *.cut - -distclean: clean - rm -f *.aux *.ind *.gls *.ps *.dvi *.thm *.out *.run.xml *.bbl *.toc *.deliv* *.pdata *-blx.bib - rm -Rf auto - -echo: - @echo $(BIBINPUTS) +include $(PROP.dir)/lib/Makefile.dfgproposal diff --git a/examples/dfg/proposal/proposal.pdf b/examples/dfg/proposal/proposal.pdf index a5a09828345956bffc55eefbff84448ce805e697..b6122672b1053201ab5fc1cb35a34a55caae6e30 100644 GIT binary patch delta 132 zcmex-neFpswuUW?XQycx8ygr~Y8x1;8yKi-a_Rf#r?@1Rq$+5*SQ!}@nj0D!m>7bU zZ2vlqaT>p~tGTg>tAVAZqoa#~v$?sGfw_~Rld*}3o3WF*i>s-Loq`P^CEL#}V^n1Z E0Q-0&)Bpeg delta 132 zcmex-neFpswuUW?XQycx7?_(FX&V@-8yKi-a_Rf#r?@1Rq$+5*SQ!}@nj0D!m>7bU zZ2vlqaT>p~p^JgDvze)*qlvSri;0D^tFe)hrIVSNp^=lTxsi#1oq`P^CEL#}V^n1Z E0P=t%kN^Mx diff --git a/examples/dfg/report/Makefile b/examples/dfg/report/Makefile index 6a39952..3b87b11 100644 --- a/examples/dfg/report/Makefile +++ b/examples/dfg/report/Makefile @@ -1,67 +1,12 @@ -# possibly customize the following variables to your setting -REPORT = finalreport.tex # the report -BIB = ../lib/dummy.bib # bibTeX databases -PROP.dir = ../../.. ########################################################################### -# the following are computed -#CVP = $(shell ls CV_PubList*.tex) # CVs of the proposers -#TSIMP = letter_submission.tex # pdflatex Targets without bibTeX -#TSIMP.pdf = $(TSIMP:%.tex=%.pdf) # PDFs to be produced -TBIB = $(REPORT) #$(CVP) # pdflatex Targets with bibTeX -TARGET = $(TSIMP) $(TBIB) # all pdflatex targets -TBIB.pdf = $(TBIB:%.tex=%.pdf) # PDFs to be produced -TBIB.aux = $(TBIB:%.tex=%.aux) # their aux files. -PDATA = $(REPORT:%.tex=%.pdata) # the proposal project data -SRC = $(filter-out $(TARGET),$(shell ls *.tex)) # included files -PDFLATEX = pdflatex -interaction batchmode -file-line-error -BBL = $(REPORT:%.tex=%.bbl) -PROPCLS.dir = $(PROP.dir)/base -PROPETC.dir = $(PROP.dir)/etc -DFGPROPCLS.dir = $(PROP.dir)/dfg -TEXINPUTS := .//:$(PROPCLS.dir)//:$(DFGPROPCLS.dir)//:$(PROPETC.dir)//: -BIBINPUTS := ../lib:$(BIBINPUTS) -PROPCLS.clssty = reporting.cls pdata.sty -PROPETC.sty = workaddress.sty metakeys.sty sref.sty -DFGPROPCLS.clssty = dfgreporting.cls dfgpdata.sty -PROPCLS = $(PROPCLS.clssty:%=$(PROPCLS.dir)/%) $(DFGPROPCLS.clssty:%=$(DFGPROPCLS.dir)/%) $(PROPETC.sty:%=$(PROPETC.dir)/%) - -all: $(TBIB.pdf) $(TSIMP.pdf) - -cd: # make cd will prepare CD for burning - mkdir CD;make $(TARGET.pdf); cp $(TARGET.pdf) CD - -$(BBL): %.bbl: %.aux - bibtex -min-crossrefs=100 -terse $< - -$(TSIMP.pdf): %.pdf: %.tex $(PROPCLS) $(PDATA) - $(PDFLATEX) $< || $(RM) $@ - -$(PDATA): %.pdata: %.tex - $(PDFLATEX) $< - -$(TBIB.aux): %.aux: %.tex - $(PDFLATEX) $< - -$(TBIB.pdf): %.pdf: %.tex $(SRC) $(BIB) $(PROPCLS) - $(PDFLATEX) $< || $(RM) $@ -# sort $(REPORT:%.tex=%.delivs) > $(REPORT:%.tex=%.deliverables) - @if (test -e $(patsubst %.tex, %.idx, $<));\ - then makeindex $(patsubst %.tex, %.idx, $<); fi - $(MAKE) -$(MAKEFLAGS) $(BBL) - @if (grep "(re)run BibTeX" $(patsubst %.tex, %.log, $<)> /dev/null);\ - then $(MAKE) -B $(BBL); fi - $(PDFLATEX) $< || $(RM) $@ - @if (grep Rerun $(patsubst %.tex, %.log, $<) > /dev/null);\ - then $(PDFLATEX) $< || $(RM) $@; fi - @if (grep Rerun $(patsubst %.tex, %.log, $<) > /dev/null);\ - then $(PDFLATEX) $< || $(RM) $@; fi - -clean: - rm -f *~ *.log *.ilg *.out *.glo *.idx *.ilg *.blg *.run.xml *.synctex.gz *.cut - -distclean: clean - rm -f *.aux *.ind *.gls *.ps *.dvi *.thm *.out *.run.xml *.bbl *.toc *.deliv* *.pdata *-blx.bib - rm -Rf auto - -echo: - echo $(BIBINPUTS) +# Automating LaTeX-proposal management by make. +# The participants work on proposal.tex in "draft" mode, which gives a lot +# of information to the developers. Variants submit.tex and public.tex are +# used to prepare official versions (hiding development/private info). +########################################################################### +# possibly customize the following variables to your setting +REPORT = finalreport.tex# # the report +BIB = ../lib/dummy.bib# # bibTeX databases +PROP.dir = ../../..# +########################################################################### +include $(PROP.dir)/lib/Makefile.dfgproposal diff --git a/examples/dfg/report/finalreport.pdf b/examples/dfg/report/finalreport.pdf index eee2eca55539e06251745437f0af085922258041..b6294984905e63ff452e466e47e85c5fded72136 100644 GIT binary patch delta 108 zcmcb1iRIcQmWC~iL8`3A#s(%P)5BF6!oM diff --git a/examples/dfg/simple-proposal/Makefile b/examples/dfg/simple-proposal/Makefile index ca0c67d..4af7ec6 100644 --- a/examples/dfg/simple-proposal/Makefile +++ b/examples/dfg/simple-proposal/Makefile @@ -1,73 +1,12 @@ ########################################################################### -# Automating proposal management by make. +# Automating LaTeX-proposal management by make. # The participants work on proposal.tex in "draft" mode, which gives a lot # of information to the developers. Variants submit.tex and public.tex are # used to prepare official versions (hiding development/private info). ########################################################################### # possibly customize the following variables to your setting -PROPOSAL = proposal.tex # the proposal -BIB = ../lib/dummy.bib # bibTeX databases +PROPOSAL = proposal.tex# # the proposal +BIB = ../lib/dummy.bib# # bibTeX databases PROP.dir = ../../.. ########################################################################### -# the following are computed -TARGET = $(PROPOSAL) # all pdflatex targets -TARGET.pdf = $(TARGET:%.tex=%.pdf) # PDFs to be produced -TARGET.aux = $(TARGET:%.tex=%.aux) # their aux files. -PDATA = $(PROPOSAL:%.tex=%.pdata) # the proposal project data -SRC = $(filter-out $(TARGET),$(shell ls *.tex)) # included files -PDFLATEX = pdflatex# -interaction batchmode -file-line-error -BBL = $(PROPOSAL:%.tex=%.bbl) -PROPCLS.dir = $(PROP.dir)/base -PROPETC.dir = $(PROP.dir)/etc -DFGPROPCLS.dir = $(PROP.dir)/dfg -TEXINPUTS := .//:$(PROPCLS.dir)//:$(DFGPROPCLS.dir)//:$(PROPETC.dir)//: -BIBINPUTS := ../lib:$(BIBINPUTS) -PROPCLS.clssty = proposal.cls pdata.sty -PROPETC.sty = workaddress.sty metakeys.sty sref.sty -DFGPROPCLS.clssty = dfgproposal.cls dfgpdata.sty -PROPCLS = $(PROPCLS.clssty:%=$(PROPCLS.dir)/%) $(DFGPROPCLS.clssty:%=$(DFGPROPCLS.dir)/%) $(PROPETC.sty:%=$(PROPETC.dir)/%) - -all: $(TARGET.pdf) - -submit: - $(MAKE) -w PROPOSAL=final.tex all - -public: - $(MAKE) -w PROPOSAL=public.tex all - -cd: # make cd will prepare CD for burning - mkdir CD;make $(TARGET.pdf); cp $(TARGET.pdf) CD - -bbl: $(BBL) -$(BBL): %.bbl: %.aux - bibtex -min-crossrefs=100 -terse $< - -$(PDATA): %.pdata: %.tex - $(PDFLATEX) $< - -$(TARGET.aux): %.aux: %.tex - $(PDFLATEX) $< - -$(TARGET.pdf): %.pdf: %.tex $(SRC) $(BIB) $(PROPCLS) - $(PDFLATEX) $< || $(RM) $@ -# sort $(PROPOSAL:%.tex=%.delivs) > $(PROPOSAL:%.tex=%.deliverables) - @if (test -e $(patsubst %.tex, %.idx, $<));\ - then makeindex $(patsubst %.tex, %.idx, $<); fi - $(MAKE) -$(MAKEFLAGS) $(BBL) - @if (grep "(re)run BibTeX" $(patsubst %.tex, %.log, $<)> /dev/null);\ - then $(MAKE) -B $(BBL); fi - $(PDFLATEX) $< || $(RM) $@ - @if (grep Rerun $(patsubst %.tex, %.log, $<) > /dev/null);\ - then $(PDFLATEX) $< || $(RM) $@; fi - @if (grep Rerun $(patsubst %.tex, %.log, $<) > /dev/null);\ - then $(PDFLATEX) $< || $(RM) $@; fi - -clean: - rm -f *~ *.log *.ilg *.out *.glo *.idx *.ilg *.blg *.run.xml *.synctex.gz *.cut - -distclean: clean - rm -f *.aux *.ind *.gls *.ps *.dvi *.thm *.out *.run.xml *.bbl *.toc *.deliv* *.pdata *-blx.bib - rm -Rf auto - -echo: - @echo $(BIBINPUTS) +include $(PROP.dir)/lib/Makefile.dfgproposal diff --git a/examples/dfg/simple-proposal/proposal.pdf b/examples/dfg/simple-proposal/proposal.pdf index 5ab1275eaee1bad960ef285b9c0b0644260824c1..2a322dbef8979d31136ceadc6bdb877ea1711ebc 100644 GIT binary patch delta 108 zcmeC*z}CNktziozR}ZVPv4M%@bp9SjIS6yRQ4iyG4reoCV+%twQ&(e4GeZ+gCld=J dGYdB(Ljxx>XJ?>@tDS-kAtl>&rZPTe0s#448yf%s delta 108 zcmeC*z}CNktziozR}ZU!fw`&Kbp9SjIS6yRQ4iyG4rfPWV>eeb3lnoQXA=`M6LWJj eM-vNYR~IK2X9EKROG7&a8$wF9>r7>Q%me@sHye=v