Catturo l'intento del Makefile in pseudo codice, quindi indico i problemi che ho. Sto cercando un Makefile che sia più user-friendly in un ambiente di test. L'uso corretto del Makefile è uno dei seguenti.Uso di regole condizionali in un makefile
make CATEGORY=parser TEST=basic.
make ALL
Se un utente dà "solo" i comandi, come indicato qui di seguito, si deve stampare un messaggio che dice "categoria di prova non definito definito" e viceversa
make CATEGORY=parser
make TEST=basic
ho provato a scrivere il Makefile in seguito modi, ma errori fuori:
help:
echo"Usage: make CATEGORY=<advanced|basic> TEST=<test-case>
echo" make ALL
ifdef CATEGORY
ifdef TEST
CATEGORY_TEST_DEFINED = 1
else
echo "TEST not defined"
else
echo "CATEGORY not defined"
endif
ifeq ($(CATEGORY_TEST_DEFINED), 1)
$(CATEGORY):
cd $(PROJ)/$(CATEGORY)
make -f test.mk $(TEST)
endif
ifdef ALL
$(ALL):
for i in `ls`
cd $$(i)
make all
endif
domande che ho sono:
Se le regole in un Makefile possono essere selettive (utilizzando ifdef per selezionare le regole e le destinazioni).
echo non funziona. echo dovrebbe aiutare l'utente con l'uso corretto.
Seguendo il punto di @ Beta, dovresti guardare le [FAQ] (http://stackoverflow.com/faq) e soprattutto la sezione [Come faccio a porre domande qui?] (Http://stackoverflow.com/faq # howtoask). –