diff options
author | Thomas Letan <lthms@soap.coffee> | 2020-02-20 18:09:35 +0100 |
---|---|---|
committer | Thomas Letan <lthms@soap.coffee> | 2020-02-20 18:09:35 +0100 |
commit | 36b9264cc8eedcc6f4d3f8499b3d627e4ffae52b (patch) | |
tree | ecebd53849f7f5e9d8d96bbe91cd60d7cf98d706 | |
parent | Make cleopatra extensible (diff) |
Make an heavy use of Makefile variables
-rw-r--r-- | .gitignore | 29 | ||||
-rw-r--r-- | Makefile | 16 | ||||
-rw-r--r-- | site/posts/meta/Bootstrap.org | 33 | ||||
-rw-r--r-- | site/posts/meta/Contents.org | 21 |
4 files changed, 52 insertions, 47 deletions
@@ -11,25 +11,26 @@ node_modules/ package-lock.json # begin generated files +scripts/tangle-org.el +bootstrap.mk +scripts/export-org.el +org.mk +coq.mk site/style/main.css -site/posts.html +soupault.conf site/news/ColorlessThemes-0.2.html -site/posts/meta/Contents.html -site/posts/meta/Bootstrap.html -site/posts/meta/Soupault.html -site/posts/Thanks.html site/posts/meta.html -site/posts/DiscoveringCommonLisp.html site/posts/ExtensibleTypeSafeErrorHandling.html +site/posts/DiscoveringCommonLisp.html site/posts/MonadTransformers.html -site/posts/StronglySpecifiedFunctionsProgram.html -site/posts/MiniHTTPServer.html -site/posts/StronglySpecifiedFunctions.html +site/posts/meta/Soupault.html +site/posts/meta/Bootstrap.html +site/posts/meta/Contents.html +site/posts/Thanks.html +site/posts.html site/posts/RewritingInCoq.html +site/posts/StronglySpecifiedFunctions.html site/posts/Ltac101.html -bootstrap.mk -org.mk -coq.mk -scripts/tangle-org.el -scripts/export-org.el +site/posts/StronglySpecifiedFunctionsProgram.html +site/posts/MiniHTTPServer.html # begin generated files @@ -1,16 +1,14 @@ -SASS := $(shell find site/ -name "*.sass") -INPUTS := $(SASS:.sass=.css) -MAKEFILES := bootstrap.mk ROOT := $(shell pwd) -GEN_SCRIPTS := scripts/tangle-org.el -EMACSARGS := --batch --eval "(require 'org)" \ - --eval "(org-babel-do-load-languages 'org-babel-load-languages '((shell . t)))" \ - --eval "(org-babel-tangle)" +CLEODIR := site/posts/meta/ +GENFILES := scripts/tangle-org.el bootstrap.mk -include ${MAKEFILES} +include bootstrap.mk bootstrap.mk scripts/tangle-org.el &: site/posts/meta/Bootstrap.org @echo " tangle $<" - @ROOT="${ROOT}" emacs $< ${EMACSARGS} 2>/dev/null + @ROOT="${ROOT}" emacs $< --batch \ + --eval "(require 'org)" \ + --eval "(setq org-src-preserve-indentation t)" \ + --eval "(org-babel-tangle)" .PHONY: clean build force diff --git a/site/posts/meta/Bootstrap.org b/site/posts/meta/Bootstrap.org index a6ced60..9765d56 100644 --- a/site/posts/meta/Bootstrap.org +++ b/site/posts/meta/Bootstrap.org @@ -3,40 +3,43 @@ #+END_EXPORT #+BEGIN_SRC emacs-lisp :tangle (concat (getenv "ROOT") "/scripts/tangle-org.el") + (require 'org) (setq org-src-preserve-indentation t) (org-babel-tangle) #+END_SRC #+BEGIN_SRC makefile :tangle (concat (getenv "ROOT") "/bootstrap.mk") -GEN_SCRIPTS += scripts/export-org.el -MAKEFILES += org.mk coq.mk +SASS := $(shell find site/ -name "*.sass") + +GENFILES += scripts/export-org.el org.mk coq.mk \ + $(SASS:.sass=.css) soupault.conf + +EMACS := ROOT="${ROOT}" emacs include org.mk coq.mk -build : ${INPUTS} soupault.conf +TANGLEARGS := --batch \ + --load="${ROOT}/scripts/tangle-org.el" + +build : ${GENFILES} @echo " run soupault" @soupault @echo " update .gitignore" - @scripts/update-gitignore.sh ${INPUTS} ${MAKEFILES} ${GEN_SCRIPTS} + @scripts/update-gitignore.sh ${GENFILES} clean : - @echo " remove generated makefiles" - @rm -f ${MAKEFILES} - @echo " remove generated files in site/" - @rm -f ${INPUTS} - @echo " remove build/ directory" - @rm -rf build + @echo " remove generated files" + @rm -rf ${GENFILES} build/ force : clean build -soupault.conf : site/posts/meta/Soupault.org +soupault.conf : ${CLEODIR}/Soupault.org @echo " tangle $<" - @emacs $< --batch --load="${ROOT}/scripts/tangle-org.el" 2>/dev/null - + @${EMACS} $< ${TANGLEARGS} -org.mk coq.mk scripts/export-org.el &: site/posts/meta/Contents.org +org.mk coq.mk scripts/export-org.el &: ${CLEODIR}/Contents.org @echo " tangle $<" - @emacs $< --batch --load="${ROOT}/scripts/tangle-org.el" 2>/dev/null + @${EMACS} $< ${TANGLEARGS} %.css : %.sass @echo " compile $*.sass" diff --git a/site/posts/meta/Contents.org b/site/posts/meta/Contents.org index 4aa2d54..ffb3a8e 100644 --- a/site/posts/meta/Contents.org +++ b/site/posts/meta/Contents.org @@ -8,20 +8,22 @@ ** Generation Process -#+BEGIN_SRC emacs-lisp :tangle ../../../scripts/export-org.el +#+BEGIN_SRC emacs-lisp :tangle (concat (getenv "ROOT") "/scripts/export-org.el") (setq org-html-htmlize-output-type nil) (setq org-export-with-toc nil) (org-html-export-to-html nil nil nil t) #+END_SRC -#+BEGIN_SRC makefile :tangle ../../../org.mk +#+BEGIN_SRC makefile :tangle (concat (getenv "ROOT") "/org.mk") ORG_POSTS := $(shell find site/ -name "*.org") -INPUTS += $(ORG_POSTS:.org=.html) +GENFILES += $(ORG_POSTS:.org=.html) + +EXPORTARGS := --batch \ + --load="${ROOT}/scripts/export-org.el" %.html : %.org scripts/export-org.el @echo " export $*.org" - @emacs $< --batch --kill \ - --load="${ROOT}/scripts/export-org.el" \ + @${EMACS} $< ${EXPORTARGS} #+END_SRC * Using Coq files @@ -30,14 +32,15 @@ INPUTS += $(ORG_POSTS:.org=.html) ** Generation Process -#+BEGIN_SRC makefile :tangle ../../../coq.mk +#+BEGIN_SRC makefile :tangle (concat (getenv "ROOT") "/coq.mk") COQ_POSTS := $(shell find site/ -name "*.v") -INPUTS += $(COQ_POSTS:.v=.html) +GENFILES += $(COQ_POSTS:.v=.html) +COQLIB := "https://coq.inria.fr/distrib/current/stdlib/" COQCARG := -async-proofs-cache force \ -w -custom-entry-overriden -COQDOCARG := --no-index --charset utf8 --short --body-only \ - --coqlib "https://coq.inria.fr/distrib/current/stdlib/" +COQDOCARG := --no-index --charset utf8 --short \ + --body-only --coqlib "${COQLIB}" %.html : %.v @echo " export $*.v" |