argument protection

This commit is contained in:
Mylloon 2024-05-05 19:02:19 +02:00
parent 5d46d6605f
commit 34a996e9f6
Signed by: Anri
GPG key ID: A82D63DFF8D1317F
2 changed files with 9 additions and 3 deletions

View file

@ -2,6 +2,7 @@ CONVERTER = python converter.py
VALIDATE = xmllint --schema
SAXON = java -jar $(wildcard saxon*.jar)
RM = rm
ECHO = echo -e
SYSTEMS = l-systems
TORTUE = tortue
@ -17,7 +18,12 @@ generation:
$(VALIDATE) $(SYSTEMS).xsd $(SYSTEMS).xml 1>/dev/null
tortue:
$(SAXON) -s:$(SYSTEMS).xml -xsl:$(TORTUE).xsl -o:$(TORTUE).xml nom=$(NOM) n=$(N)
ifeq ($(and $(nom),$(n)),)
@$(ECHO) "Il manque des arguments, par exemple :\n" \
" make $(MAKECMDGOALS) nom=snow n=3"
@false
endif
$(SAXON) -s:$(SYSTEMS).xml -xsl:$(TORTUE).xsl -o:$(TORTUE).xml nom=$(nom) n=$(n)
$(VALIDATE) $(TORTUE).xsd $(TORTUE).xml 1>/dev/null
traceur:

View file

@ -26,14 +26,14 @@ $ python converter.py l-systems.csv
Autrement, pour aider à l'utilisation, il est possible d'utiliser le Makefile.
```sh
$ make NOM=snow N=3 # génère une image.svg de "snow" avec 3 itérations
$ make nom=snow n=3 # génère une image.svg de "snow" avec 3 itérations
```
Il est également possible de le faire étape par étape
```sh
$ make generation # génère le fichier XML des L-systèmes
$ make tortue NOM=snow N=3 # génère tortue.xml de "snow" avec 3 itérations
$ make tortue nom=snow n=3 # génère tortue.xml de "snow" avec 3 itérations
$ make traceur # génère traceur.xml
$ make svg # génère image.svg
```