diff options
Diffstat (limited to 'reproduce/analysis/make')
-rw-r--r-- | reproduce/analysis/make/download.mk | 2 | ||||
-rw-r--r-- | reproduce/analysis/make/initialize.mk | 30 | ||||
-rw-r--r-- | reproduce/analysis/make/paper.mk | 17 | ||||
-rw-r--r-- | reproduce/analysis/make/prepare.mk | 2 | ||||
-rw-r--r-- | reproduce/analysis/make/top-make.mk | 2 | ||||
-rw-r--r-- | reproduce/analysis/make/top-prepare.mk | 2 | ||||
-rw-r--r-- | reproduce/analysis/make/verify.mk | 2 |
7 files changed, 38 insertions, 19 deletions
diff --git a/reproduce/analysis/make/download.mk b/reproduce/analysis/make/download.mk index fb3f21e..ea70fca 100644 --- a/reproduce/analysis/make/download.mk +++ b/reproduce/analysis/make/download.mk @@ -5,7 +5,7 @@ # recipes in this Makefile all use a single file lock to have one download # script running at every instant. # -# Copyright (C) 2018-2020 Mohammad Akhlaghi <mohammad@akhlaghi.org> +# Copyright (C) 2018-2021 Mohammad Akhlaghi <mohammad@akhlaghi.org> # # 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 diff --git a/reproduce/analysis/make/initialize.mk b/reproduce/analysis/make/initialize.mk index 0cc04ee..4bae0a4 100644 --- a/reproduce/analysis/make/initialize.mk +++ b/reproduce/analysis/make/initialize.mk @@ -1,6 +1,6 @@ # Project initialization. # -# Copyright (C) 2018-2020 Mohammad Akhlaghi <mohammad@akhlaghi.org> +# Copyright (C) 2018-2021 Mohammad Akhlaghi <mohammad@akhlaghi.org> # # 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 @@ -491,13 +491,31 @@ $(mtexdir)/initialize.tex: | $(mtexdir) # Calculate the latest Maneage commit used to build this # project: + # - The project may not have the 'maneage' branch (for example + # after cloning from a fork that didn't include it!). In this + # case, we'll print a descriptive warning, telling the user what + # should be done (reporting the last merged commit and its date + # is very useful for the future). # - The '--dirty' option (used in 'project-commit-hash') isn't # applicable to "commit-ishes" (direct quote from Git's error # message!). - # - The project may not have the 'maneage' branch (for example - # after cloning from a fork that didn't include it!). In this - # case, we'll just return the string a clear string. - v=$$(git describe --always --long maneage) || v=maneage-ref-missing - d=$$(git show -s --format=%aD $$v | awk '{print $$2, $$3, $$4}') + if git log maneage -1 &> /dev/null; then + c=$$(git merge-base HEAD maneage) + v=$$(git describe --always --long $$c) + d=$$(git show -s --format=%aD $$v | awk '{print $$2, $$3, $$4}') + else + echo + echo "WARNING: no 'maneage' branch found! Without it, the latest merge of " + echo "this project with Maneage can't be reported in the paper (which is bad " + echo "for your readers; that includes yourself in a few years). Please run " + echo "the commands below to fetch the 'maneage' branch from its own server " + echo "and remove this warning (these commands will not affect your project):" + echo " $ git remote add origin-maneage http://git.maneage.org/project.git" + echo " $ git fetch origin-maneage" + echo " $ git branch maneage --track origin-maneage/maneage" + echo + v="\textcolor{red}{NO-MANEAGE-BRANCH (see printed warning to fix this)}" + d="\textcolor{red}{NO-MANEAGE-DATE}" + fi echo "\newcommand{\maneagedate}{$$d}" >> $@ echo "\newcommand{\maneageversion}{$$v}" >> $@ diff --git a/reproduce/analysis/make/paper.mk b/reproduce/analysis/make/paper.mk index 1776363..00bd3b5 100644 --- a/reproduce/analysis/make/paper.mk +++ b/reproduce/analysis/make/paper.mk @@ -1,6 +1,6 @@ # Build the final PDF paper/report. # -# Copyright (C) 2018-2020 Mohammad Akhlaghi <mohammad@akhlaghi.org> +# Copyright (C) 2018-2021 Mohammad Akhlaghi <mohammad@akhlaghi.org> # # 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 @@ -78,14 +78,15 @@ $(mtexdir)/project.tex: $(mtexdir)/verify.tex echo "LaTeX-built PDF paper will not be built." echo if [ x$(more-on-building-pdf) = x1 ]; then - echo "To build the PDF, make sure you have LaTeX within the " - echo "project (you can check by running " - echo "'./.local/bin/latex --version'), _AND_ make sure that " - echo "the 'pdf-build-final' variable has a value of 'yes', it " - echo "is defined in: 'reproduce/analysis/config/pdf-build.conf'." + echo "To build the PDF, make sure that the 'pdf-build-final' " + echo "variable has a value of 'yes' (it is defined in this file)" + echo " reproduce/analysis/config/pdf-build.conf" echo - echo "If you don't have LaTeX within the project, please re-run" - echo "'./project configure -e' when you have internet access." + echo "If you still see this message, there was a problem with " + echo "building LaTeX within the project. You can re-try building" + echo "it when you have internet access with the two commands below:" + echo " $ rm .local/version-info/tex/texlive*" + echo " $./project configure -e" else echo "For more, run './project make more-on-building-pdf=1'" fi diff --git a/reproduce/analysis/make/prepare.mk b/reproduce/analysis/make/prepare.mk index 0391956..995132c 100644 --- a/reproduce/analysis/make/prepare.mk +++ b/reproduce/analysis/make/prepare.mk @@ -1,6 +1,6 @@ # Basic preparations, called by `./project prepare'. # -# Copyright (C) 2019-2020 Mohammad Akhlaghi <mohammad@akhlaghi.org> +# Copyright (C) 2019-2021 Mohammad Akhlaghi <mohammad@akhlaghi.org> # # 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 diff --git a/reproduce/analysis/make/top-make.mk b/reproduce/analysis/make/top-make.mk index d552dc1..6b055f7 100644 --- a/reproduce/analysis/make/top-make.mk +++ b/reproduce/analysis/make/top-make.mk @@ -1,6 +1,6 @@ # Top-level Makefile (first to be loaded). # -# Copyright (C) 2018-2020 Mohammad Akhlaghi <mohammad@akhlaghi.org> +# Copyright (C) 2018-2021 Mohammad Akhlaghi <mohammad@akhlaghi.org> # # 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 diff --git a/reproduce/analysis/make/top-prepare.mk b/reproduce/analysis/make/top-prepare.mk index 0f4f124..f81ac07 100644 --- a/reproduce/analysis/make/top-prepare.mk +++ b/reproduce/analysis/make/top-prepare.mk @@ -4,7 +4,7 @@ # are not included here. Please see that file for thorough comments on each # step. # -# Copyright (C) 2019-2020 Mohammad Akhlaghi <mohammad@akhlaghi.org> +# Copyright (C) 2019-2021 Mohammad Akhlaghi <mohammad@akhlaghi.org> # # 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 diff --git a/reproduce/analysis/make/verify.mk b/reproduce/analysis/make/verify.mk index 35f49db..6503172 100644 --- a/reproduce/analysis/make/verify.mk +++ b/reproduce/analysis/make/verify.mk @@ -1,6 +1,6 @@ # Verify the project outputs before building the paper. # -# Copyright (C) 2020 Mohammad Akhlaghi <mohammad@akhlaghi.org> +# Copyright (C) 2020-2021 Mohammad Akhlaghi <mohammad@akhlaghi.org> # # 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 |