110 votes

Comment puis-je imprimer un message dans Makefile ?

Je veux imprimer un message lors du processus de construction avec un fichier makefile . Le suivant peut imprimer le message, mais il n'exécutera pas le script qui le suit. Comment puis-je résoudre ce problème ?

ifeq (yes, ${TEST})
        CXXFLAGS := ${CXXFLAGS} -DDESKTOP_TEST
test:
        @echo '************  TEST VERSION ************'
else
release:
        @echo "************ RELEASE VERSIOIN **********"
endif

132voto

Vishnu N K Points 1100

$(info your_text) : Information . Cela n'arrête pas l'exécution.

$(warning your_text) : Avertissement . Le texte apparaît alors comme un avertissement.

$(error your_text) : Erreur fatale . Cela arrêtera l'exécution.

src : https://www.gnu.org/software/make/manual/make.html#Make-Control-Functions

123voto

Beta Points 37745

Ce que vous voulez, ou si vous voulez que cette astuce fonctionne avec différentes cibles, ou si vous avez défini ces cibles ailleurs, ou quelle version de Make vous utilisez, n'est pas clair, mais bon, je vais tenter le coup :

ifeq (yes, ${TEST})
CXXFLAGS := ${CXXFLAGS} -DDESKTOP_TEST
test:
$(info ************  TEST VERSION ************)
else
release:
$(info ************ RELEASE VERSIOIN **********)
endif

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X