makefile: ajout aide
David Valentine

David Valentine commited on 2026-01-24 21:04:02
Showing 2 changed files, with 35 additions and 10 deletions.

... ...
@@ -0,0 +1,7 @@
1
+Utilisation :
2
+	make build PROJET=<nom-du-projet>
3
+
4
+Utilitaires :
5
+	antidote
6
+        serve
7
+        wordcount
... ...
@@ -1,15 +1,33 @@
1 1
 # Makefile
2
-# documents
2
+# Espace de recherche
3
+
4
+# @todo faire des cibles print et screen (par exemple) au lieu de all pour choisir
5
+# make [screen|print] PROJET=name
6
+
7
+#############################################################
8
+# Aide
9
+#############################################################
10
+
11
+# make
12
+# Recette par défaut, si aucune n’est mentionnée
13
+.DEFAULT_GOAL := aide
14
+
15
+# make aide
16
+#
17
+# Aide-mémoire
18
+.PHONY: aide
19
+aide:
20
+	@cat aide.txt | ccze -A
3 21
 
4 22
 #############################################################
5 23
 # 1. argument obligatoire en ligne de commande
6 24
 #############################################################
7
-# Passer le nom du projet à traiter :
8
-# avec la variable PROJET.
9
-# Le nom du projet doit correspondre avec le nom d'un dossier de ./src/
25
+# Passer le nom du projet à traiter : avec la variable PROJET.
10 26
 # exemple    : $ make PROJET=proposition
11
-# remarque  : variable à spécifier pour toutes les recettes
27
+# remarques  : variable à spécifier pour toutes les recettes
12 28
 #              qui l'utilisent.
29
+#              le nom du projet doit correspondre avec le nom
30
+#              d’un dossier dans ./src/
13 31
 
14 32
 #############################################################
15 33
 # variables
... ...
@@ -31,7 +49,7 @@ name = $(PROJET)
31 49
 config_screen = ./src/config-screen.yml
32 50
 config_print  = ./src/config-print.yml
33 51
 src_dir       = ./src/$(name)
34
-src           = $(src_dir)/*.md # *.md important, sinon il traite les dossiers
52
+src_files     = $(shell ls $(src_dir)/*.md | grep -v '/_') # les fichiers qui commencent par '_' sont ignorés
35 53
 
36 54
 # Variables pour les extrants
37 55
 zip   = ./archives/$(name).zip
... ...
@@ -45,8 +63,8 @@ print = ./dist/$(name)/$(name).html
45 63
 
46 64
 # $(zip) est une dépendance de $(print)
47 65
 # c'est pourquoi $(zip) s'exécute avec all, avant $(print)
48
-.PHONY: all
49
-all: projet $(print)
66
+.PHONY: build
67
+build: projet $(print)
50 68
 
51 69
 # Validation
52 70
 #
... ...
@@ -64,7 +82,7 @@ endif
64 82
 # Créer la version HTML pour l'écran
65 83
 #
66 84
 $(zip): $(src_dir)/* $(config_screen)
67
-	pandoc $(src) \
85
+	pandoc $(src_files) \
68 86
    --defaults $(config_screen) \
69 87
    --metadata-file ./src/global-metadata.yml \
70 88
    --metadata-file $(<D)/abstract.yml \
... ...
@@ -82,7 +100,7 @@ $(zip): $(src_dir)/* $(config_screen)
82 100
 # Créer la version HTML pour l'impression
83 101
 #
84 102
 $(print): $(zip) $(config_print)
85
-	pandoc $(src) \
103
+	pandoc $(src_files) \
86 104
    --defaults $(config_print) \
87 105
    --metadata-file ./src/global-metadata.yml \
88 106
    --metadata-file $(src_dir)/abstract.yml \
89 107