aboutsummaryrefslogtreecommitdiff
path: root/reproduce/src/make
diff options
context:
space:
mode:
Diffstat (limited to 'reproduce/src/make')
-rw-r--r--reproduce/src/make/download.mk5
-rw-r--r--reproduce/src/make/initialize.mk13
-rw-r--r--reproduce/src/make/paper.mk17
3 files changed, 26 insertions, 9 deletions
diff --git a/reproduce/src/make/download.mk b/reproduce/src/make/download.mk
index 378e5eb..9617a45 100644
--- a/reproduce/src/make/download.mk
+++ b/reproduce/src/make/download.mk
@@ -6,9 +6,10 @@
# script running at every instant.
#
# Original author:
-# Your name <your@email.address>
+# Mohammad Akhlaghi <mohammad@akhlaghi.org>
# Contributing author(s):
-# Copyright (C) YYYY, Your Name.
+# Your name <your@email.address>
+# Copyright (C) 2018, Your Name.
#
# This Makefile is free software: you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by the
diff --git a/reproduce/src/make/initialize.mk b/reproduce/src/make/initialize.mk
index 7854c2f..70d77ed 100644
--- a/reproduce/src/make/initialize.mk
+++ b/reproduce/src/make/initialize.mk
@@ -1,9 +1,10 @@
# Initialize the reproduction pipeline.
#
# Original author:
-# Your name <your@email.address>
+# Mohammad Akhlaghi <mohammad@akhlaghi.org>
# Contributing author(s):
-# Copyright (C) YYYY, Your Name.
+# Your name <your@email.address>
+# Copyright (C) 2018, Your Name.
#
# This Makefile is free software: you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by the
@@ -91,6 +92,14 @@ $(pconfdir)/LOCAL.mk:
# changes within that file and if they don't affect the pipeline. For
# example a change of the top $(BDIR) name, while the contents are the same
# as before.
+#
+# The `.SUFFIXES' rule with no prerequisite is defined to eliminate all the
+# default implicit rules. The default implicit rules are to do with
+# programming (for example converting `.c' files to `.o' files). The
+# problem they cause is when you want to debug the make command with `-d'
+# option: they add too many extra checks that make it hard to find what you
+# are looking for in this pipeline.
+.SUFFIXES:
$(mtexdir): | $(texdir); mkdir $@
$(BDIR): | $(pconfdir)/LOCAL.mk; mkdir $@
$(texdir) $(lockdir): | $(BDIR); mkdir $@
diff --git a/reproduce/src/make/paper.mk b/reproduce/src/make/paper.mk
index 0725ec8..db20279 100644
--- a/reproduce/src/make/paper.mk
+++ b/reproduce/src/make/paper.mk
@@ -1,9 +1,9 @@
# Build the final PDF paper/report.
#
# Original author:
-# Your name <your@email.address>
+# Mohammad Akhlaghi <mohammad@akhlaghi.org>
# Contributing author(s):
-# Copyright (C) YYYY, Your Name.
+# Copyright (C) 2018, Mohammad Akhlaghi.
#
# This script is free software: you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by the
@@ -27,8 +27,15 @@
#
# The commands to build the final report. We want the pipeline version to
# be checked everytime the final PDF is to be built.
-paper.pdf: tex/pipeline.tex paper.tex
+texbdir=$(texdir)/build
+tikzdir=$(texbdir)/tikz
+$(texbdir): | $(texdir); mkdir $@
+$(tikzdir): | $(texbdir); mkdir $@
+paper.pdf: tex/pipeline.tex paper.tex | $(tikzdir) $(texbdir)
# Make the report.
- @pdflatex -shell-escape -halt-on-error paper.tex
- @rm -f *.auxlock *.aux *.out *.log
+ p=$$(pwd); \
+ export TEXINPUTS=$$p:$$TEXINPUTS; \
+ cd $(texbdir); \
+ pdflatex -shell-escape -halt-on-error $$p/paper.tex
+ cp $(texbdir)/$@ $@