Makefile: display a minimal help message

- Creates the Makefile.
- Adds a way to display a minimal help message. This part comes entirely
  from
  <https://www.thapaliya.com/en/writings/well-documented-makefiles>.
- Documents the requirements and the usage in the README.
- Closes #2.

Co-Authored-by: iGor milhit <igor@milhit.ch>
pull/7/head
iGor milhit 2022-10-31 16:45:55 +01:00
parent b95a5a819c
commit 8ea1b50cbc
Signed by: igor
GPG Key ID: 692D97C3D0228A99
2 changed files with 55 additions and 0 deletions

15
Makefile 100644
View File

@ -0,0 +1,15 @@
# Sources of inspiration:
# https://makefiletutorial.com/
# https://code.larlet.fr/makefile/
# https://www.thapaliya.com/en/writings/well-documented-makefiles/
.DEFAULT_GOAL:=help
SHELL:=/bin/bash
.PHONY: help deps
help: ## Display this help
@awk 'BEGIN {FS = ":.*##"; printf "\nUsage:\n make \033[36m<target>\033[0m\n\nTargets:\n"} /^[a-zA-Z_-]+:.*?##/ { printf " \033[36m%-10s\033[0m %s\n", $$1, $$2 }' $(MAKEFILE_LIST)
deps: ## Check dependencies
$(info Checking and getting dependencies)

View File

@ -34,6 +34,42 @@ avenir incertain il devrait être en mesure de générer une version `HTML` d'un
arborescence de fichiers Markdown, en offrant une navigation, la mise en forme
des citations et des références, des notes.
## Requis
- Un système \*nix-like, comme une distribution Linux[^1] ou Mac OS.
- La commande `make`. [GNU Make][gm] est en général disponible dans les dépôts
des distribution Linux ainsi que pour Mac OS.
- L'utilitaire `awk`, lui aussi facilement disponible sur Linux ou Mac OS.
## Usage
Il faut d'abord cloner le projet, par exemple avec la commande suivante:
```bash
git clone https://git.milhit.ch/igor/make-pandoc.git
```
Cette commande va créer un dossier nommé `make-pandoc` à l'endroit où elle a
été lancée. Une fois le projet cloné, naviguer dans ce dossier.
```bash
cd make-pandoc
```
Une fois dans le bon dossier, lancer la commande `make` ou `make help`. Elle
devrait afficher l'aide.
```bash
make help
Usage:
make <target>
Targets:
help Display this help
deps Check dependencies
```
## Feuille de route
La liste des [tickets][tickets] permet de se faire une idée. C'est peu
@ -49,3 +85,7 @@ contribution][contribution].
[zotero]: https://zotero.org "Site officiel de Zotero"
[tickets]: https://git.milhit.ch/igor/make-pandoc/issues
[contribution]: https://git.milhit.ch/igor/make-pandoc/issues/4
[gm]: https://www.gnu.org/software/make/ "Site officiel"
[^1]: J'imagine que c'est valable également pour l'univers BSD, mais je ne le
sais pas. Si tu connais BSD, tu devrais le savoir mieux que moi je pense.