makefile est un outil conçu pour lancer des commandes (compilation, archivage, sauvegarde...) à partir de dépendances entre fichiers.
Ainsi, lorsqu'un fichier est modifié, seuls les fichiers concernés par cette modification seront recréés.
On lance l'exécution d'un makefile à l'aide de la commande make dans le dossier qui contient le fichier makefile.
Exemple
Latex
LC=pdflatex
LFLAGS=-interaction=nonstopmode
SRC= $(wildcard page*.tex)
OBJ= $(SRC:.tex=.pdf)
all: $(OBJ) repport.pdf
repport.pdf: repport.tex $(SRC)
$(LC) $(LFLAGS) $<
%.pdf: %.tex repport.tex
$(LC) $(LFLAGS) $<
clean:
rm -rf *.log *.aux *.synctex.gz