Contenu et fonctionnalités de makefile NMAKE
Un makefile contient :
Pour obtenir un exemple, consultez l’exemple de makefile.
NMAKE prend en charge d’autres fonctionnalités, telles que les caractères génériques, les noms de fichiers longs, les commentaires et les échappements pour les caractères spéciaux.
NMAKE et les caractères génériques
NMAKE développe les caractères génériques de nom de fichier (*
et ?
) dans les lignes de dépendance. Un caractère générique spécifié dans une commande est passé à la commande ; NMAKE ne l’étend pas.
Noms de fichiers longs dans un makefile
Placez les noms de fichiers longs entre guillemets doubles, comme suit :
all : "VeryLongFileName.exe"
Commentaires dans un makefile
Précèdez un commentaire avec un signe numérique (#
). NMAKE ignore le texte du signe numérique au caractère de nouvelle ligne suivant.
Exemples :
# Comment on line by itself
OPTIONS = /MAP # Comment on macro definition line
all.exe : one.obj two.obj # Comment on dependency line
link one.obj two.obj
# Comment in commands block
# copy *.obj \objects # Command turned into comment
copy one.exe \release
.obj.exe: # Comment on inference rule line
link $<
my.exe : my.obj ; link my.obj # Err: cannot comment this
# Error: # must be the first character
.obj.exe: ; link $< # Error: cannot comment this
Pour spécifier un signe numérique littéral, faites-le précéder d’un signe de signe (^
), comme suit :
DEF = ^#define #Macro for a C preprocessing directive
Caractères spéciaux dans un makefile
Pour utiliser un caractère spécial NMAKE comme caractère littéral, placez un point (^
) devant lui comme une échappement. NMAKE ignore les carets qui précèdent d’autres caractères. Les caractères spéciaux sont les suivants :
: ; # ( ) $ ^ \ { } ! @ —
Un caret (^
) dans une chaîne entre guillemets est traité comme un caractère d’insertion littéral. Un caret à la fin d’une ligne insère un caractère littéral de nouvelle ligne dans une chaîne ou une macro.
Dans les macros, une barre oblique inverse (\
) suivie d’un caractère de nouvelle ligne est remplacée par un espace.
Dans les commandes, un symbole de pourcentage (%
) est un spécificateur de fichier. Pour représenter %
littéralement dans une commande, spécifiez un signe double pourcentage (%%
) à la place d’un seul. Dans d’autres situations, NMAKE interprète un seul %
littéral, mais il interprète toujours un double %%
comme un seul %
. Par conséquent, pour représenter un littéral %%
, spécifiez trois pour cent des signes, %%%
ou quatre pour cent, %%%%
.
Pour utiliser le signe dollar ($
) comme caractère littéral dans une commande, spécifiez deux signes dollar ($$
). Cette méthode peut également être utilisée dans d’autres situations où ^$
fonctionne.