2011-06-27 13 views
15

निष्पादित इस makefile मेंMakefile: शो और

dirs = $(shell ls) 
clean: 
    $(foreach dir,$(dirs),echo $(dir);) 

उत्पादन

$ make clean 
echo bin; echo install.sh; echo Makefile; echo README.md; echo utils; 
bin 
install.sh 
Makefile 
README.md 
utils 

क्यों यह पहली आदेश दिखाता है, तो यह निष्पादित है? मैं पहली पंक्ति को कैसे छोड़ सकता हूं?

उत्तर

30

@ चरित्र के साथ आदेश तैयार करें। उदाहरण:

dirs = $(shell ls) 
clean: 
    @$(foreach dir,$(dirs),echo $(dir);) 
+5

क्या आप स्पष्टीकरण जोड़ सकते हैं! – DarthSpeedious

+2

@ डार्थस्पीडियस: स्पष्टीकरण निहित है। सवाल "कैसे दिखाना और निष्पादित करना" था? जवाब है "@ चरित्र तैयार करें" – Flimzy

संबंधित मुद्दे