From 08516255b1cf366069770026503986f12d59bcc1 Mon Sep 17 00:00:00 2001 From: Mohammad Akhlaghi Date: Wed, 4 Nov 2020 22:40:47 +0000 Subject: Appendix of long paper added, optionally we can disable it Given the referee reports, after discussing with the editors of CiSE, we decided that it is important to include the complete appendix we had before that included a thorough review of existing tools and methods. However, the appendix will not be published in the paper (due to the strict word-count limit). It will only be used in the arXiv/Zenodo versions of the paper. This actually created a technical problem: we want the commit hash of the project source to remain the same when the paper is built with an appendix or without it. To fix this problem the choice of including an appendix has gone into the 'project' script as a run-time option called '--no-appendix'. So by default (when someone just runs './project make'), the PDF will have an appendix, but when we want to submit to the journal, or when the appendix isn't needed for a certain reason, we can use this new option. The appendix also has its own separate bibliography. Some other corrections made in this commit: 1. Some new references were added that had an '_' in their source, they were corrected in 'references.tex'. 2. I noticed that 'preamble-style.tex' is not actually used in this paper, so it has been deleted. --- reproduce/analysis/make/paper.mk | 17 +++++++++++++++-- reproduce/software/config/texlive-packages.conf | 3 ++- 2 files changed, 17 insertions(+), 3 deletions(-) (limited to 'reproduce') diff --git a/reproduce/analysis/make/paper.mk b/reproduce/analysis/make/paper.mk index f363b6f..29a1ea0 100644 --- a/reproduce/analysis/make/paper.mk +++ b/reproduce/analysis/make/paper.mk @@ -48,10 +48,18 @@ $(mtexdir)/project.tex: $(mtexdir)/verify.tex # Put a LaTeX input command for all the necessary macro files. # 'hardware-parameters.tex' is created in 'configure.sh'. - rm -f $(mtexdir)/project.tex + projecttex=$(mtexdir)/project.tex + rm -f $$projecttex for t in $(subst paper,,$(makesrc)) hardware-parameters; do - echo "\input{tex/build/macros/$$t.tex}" >> $(mtexdir)/project.tex + echo "\input{tex/build/macros/$$t.tex}" >> $$projecttex done + + # Add the necessary macro to include appendix or not. + if [ x"$(noappendix)" = x1 ]; then + echo "\newcommand{\noappendix}{}" >> $$projecttex + fi + + # The paper shouldn't be built. else echo echo "-----" @@ -129,7 +137,12 @@ $(texbdir)/paper.bbl: tex/src/references.tex $(mtexdir)/dependencies-bib.tex \ # option for better security. See # https://savannah.nongnu.org/task/?15694 for details. latex -shell-escape -halt-on-error "$$p"/paper.tex + + # Since we have multiple bibliographies (one for the main body, + # and one for the appendix), we use 'multibib'. Multibib creates + # a separate '.aux' file for each bibliography. bibtex paper + bibtex appendix # Hack: tidy up eprint+doi style that didn't work in .bst file. # TODO (better): read Part 4 of diff --git a/reproduce/software/config/texlive-packages.conf b/reproduce/software/config/texlive-packages.conf index d88a0bf..fd66da9 100644 --- a/reproduce/software/config/texlive-packages.conf +++ b/reproduce/software/config/texlive-packages.conf @@ -18,4 +18,5 @@ # want their versions. texlive-typewriter-pkgs = courier inconsolata xkeyval upquote texlive-packages = times IEEEtran cite xcolor pgfplots ps2eps \ - listings ulem etoolbox $(texlive-typewriter-pkgs) + listings ulem etoolbox multibib \ + $(texlive-typewriter-pkgs) -- cgit v1.2.1