2013-01-18 18 views
7

C'è un modo per dire fare a lamentarsi quando uso variabili non impostate? Qualcosa di simile a set -u in bash?Posso avvisarmi quando uso variabili non impostate?

Ho appena trascorso venti minuti nel debug del mio Makefile, perché c'era un errore di battitura nel simbolo della variabile.

+1

Alcune combinazioni di 'if' e' $ (errore ...) 'dovrebbero farlo per voi. –

risposta

10

Sì, c'è un modo:

make --warn-undefined-variables 

ho appena provato con la versione make 3,81

EDIT:

È inoltre possibile impostare nel makefile, a proteggiti nel futuro da errori stupidi. Per farlo basta mettere questo da qualche parte vicino alla parte superiore del vostro makefile (questo sarà passato al ricorsive rendere i processi troppo):

MAKEFLAGS=--warn-undefined-variables 
+0

Sai se esiste un modo per attivarlo nel Makefile stesso, piuttosto che usare l'opzione della riga di comando? –

+1

Sì, puoi inserirlo anche nei tuoi makefile, per favore vedi la modifica della mia risposta. – sirgeorge

+2

Btw, non dovresti fare + = invece di =? Sono ancora confuso con gli operatori di assegnazione del make. –

0

Ecco come si può fare per rendere il make sicuro subito:

ifndef PSWD 
$(error PSWD is undefined) 
endif 
Problemi correlati