From e45ac9f074a62a0dab26e4de86e4c97458384d18 Mon Sep 17 00:00:00 2001 From: Mohammad Akhlaghi Date: Thu, 15 Feb 2018 12:06:31 +0100 Subject: Choice to build final PDF removed from LOCAL settings The previous change where we had set the building of the PDF as a local (and thus not version controlled) setting was not good, because different commits might be made without the high-level preparations for the final PDF (especially during the initial/testing phases of a research). Therefore, if the runner of the pipeline is ignorant to this, they may hit some errors in LaTeX which can be frustrating. To have a clean reproduction, it is thus necessary to have the choice of pdf-building under version control along with the rest of the pipeline. --- Makefile | 12 ++++++------ configure | 4 ++-- reproduce/config/pipeline/LOCAL.mk.in | 19 ------------------- reproduce/config/pipeline/pdf-build.mk | 14 ++++++++++++++ 4 files changed, 22 insertions(+), 27 deletions(-) create mode 100644 reproduce/config/pipeline/pdf-build.mk diff --git a/Makefile b/Makefile index 856e23c..ee9db57 100644 --- a/Makefile +++ b/Makefile @@ -33,7 +33,7 @@ # # Note that if you don't have LaTeX to build the PDF or generally are just # interested in the processing, you can skip create the final PDF creation -# with `BUILD-FINAL-PDF' of `reproduce/config/pipeline/LOCAL.mk'. +# with `pdf-build-final' of `reproduce/config/pipeline/pdf-build.mk'. all: reproduce/build paper.pdf @@ -82,18 +82,18 @@ include $(foreach f, initialize download paper, reproduce/src/make/$(f).mk) # top-level dependencies clearly. # # Note that if you don't want the final PDF and just want the processing -# and file outputs, you can remove the value of the `BUILD-FINAL-PDF' -# variable in `reproduce/config/LOCAL.mk'. +# and file outputs, you can remove the value of the `pdf-build-final' +# variable in `reproduce/config/pdf-build.mk'. tex/pipeline.tex: $(foreach f, initialize download, $(mtexdir)/$(f).tex) # If no PDF is requested, then just exit here. -ifeq ($(BUILD-FINAL-PDF),) +ifeq ($(pdf-build-final),) @echo @echo @echo "-----" @echo "Everything is OK until this point, but not building PDF." - @echo "To do so, give a value to the 'BUILD-FINAL-PDF' variable." - @echo "It is defined in 'reproduce/config/pipeline/LOCAL.mk'." + @echo "To do so, give a value to the 'pdf-build-final' variable." + @echo "It is defined in 'reproduce/config/pipeline/pdf-build.mk'." @echo @exit 1 endif diff --git a/configure b/configure index 8ecb8fa..43083df 100755 --- a/configure +++ b/configure @@ -46,7 +46,7 @@ else while [ "$userread" != "y" -a "$userread" != "n" ] do echo - echo "------------------------------------" + echo "-----------------------------------------" echo "Reproduction pipeline local configuration" echo "-----------------------------------------" echo @@ -55,7 +55,7 @@ else echo echo "Pressing 'y' will open the local settings file in an editor" echo "so you can modify the default values if you want. Each" - echo "variable is also thoroughly described in the comments (lines" + echo "variable is thoroughly described in the comments (lines" echo "starting with a '#') above it." echo read -p"Edit the default local configuration (y/n)? " userread diff --git a/reproduce/config/pipeline/LOCAL.mk.in b/reproduce/config/pipeline/LOCAL.mk.in index e5a9f96..896df2f 100644 --- a/reproduce/config/pipeline/LOCAL.mk.in +++ b/reproduce/config/pipeline/LOCAL.mk.in @@ -48,22 +48,3 @@ SURVEY = reproduce/SURVEY # more easy: the contents of the build directory do not need to be backed # up since they can be reproduced and they can be large. BDIR = reproduce/BDIR - - - - - -# Make the final PDF? -# ------------------- -# -# During the testing a pipeline, it is usually not necessary to build -# the PDF file (which makes a lot of output lines on the command-line -# and can make it hard to find the commands and possible errors (and -# their outputs). Also, in some cases, only the produced results may -# be of interest and not the final PDF, so LaTeX (and its necessary -# packages) may not be installed. -# -# If this variable is given any string, a PDF will be made with -# LaTeX. Otherwise, a notice will just printed that for now, no PDF -# will be created. -BUILD-FINAL-PDF = yes diff --git a/reproduce/config/pipeline/pdf-build.mk b/reproduce/config/pipeline/pdf-build.mk new file mode 100644 index 0000000..504d0bd --- /dev/null +++ b/reproduce/config/pipeline/pdf-build.mk @@ -0,0 +1,14 @@ +# Make the final PDF? +# ------------------- +# +# During the testing a pipeline, it is usually not necessary to build +# the PDF file (which makes a lot of output lines on the command-line +# and can make it hard to find the commands and possible errors (and +# their outputs). Also, in some cases, only the produced results may +# be of interest and not the final PDF, so LaTeX (and its necessary +# packages) may not be installed. +# +# If this variable is given any string, a PDF will be made with +# LaTeX. Otherwise, a notice will just printed that for now, no PDF +# will be created. +pdf-build-final = yes -- cgit v1.2.1