मैं सैकड़ों उपनिर्देशिकाओं में लक्ष्य उत्पन्न करने के लिए एक मेकफ़ाइल का उपयोग करना चाहता हूं। प्रत्येक उपनिर्देशिका इस तरह की दिनांक/समय टिकट है: 20120119_153957
, जो निम्न पैटर्न ????????_??????
से मेल खाता है। इस पैटर्न से मेल खाने वाली कोई अन्य उपनिर्देशिका नहीं है।उपनिर्देशिका globbing द्वारा स्वचालित रूप से लक्ष्य बनाने की सूची कैसे उत्पन्न करें?
एक लक्ष्य जिसे मैं उत्पन्न करना चाहता हूं उसे ????????_??????/graph.pdf
कहा जाता है। मेरे पास make_graph
नामक एक स्क्रिप्ट है जो ग्राफ को उपनिर्देशिका नाम देगी। लेकिन मुझे यकीन नहीं है कि मेकफ़ाइल कैसे लिखना है जो स्वचालित रूप से सभी उपनिर्देशिकाओं को ग्लोब करेगा और इन लक्ष्यों को प्रोग्रामेटिक रूप से उत्पन्न करेगा।
उदाहरण के लिए, कोड SUBDIRS:=????????_??????
सभी उपनिर्देशिकाओं को सही ढंग से ग्लोब करने लगता है। मैं इस नियम के साथ देख सकते हैं:
.PHONY: print
print:
echo $(SUBDIRS)
हालांकि इस चर काम
TARGETS:=$(SUBDIRS:%=%/graph.pdf)
मैं क्या उम्मीद और आवंटित बहुत सारे और लक्ष्य के बहुत सारे करने के लिए प्रतीत नहीं होता। इसके बजाय निम्नलिखित नियम सिर्फ एक लक्ष्य प्रिंट करता है।
.PHONY: print
print:
echo $(TARGETS)
यह बहुत भ्रामक है कि SUBDIRS
सही उपनिर्देशिका होना चाहिए है, लेकिन TARGET
केवल एक फ़ाइल है।
क्या यह डुप्लिकेट है [बनाने के साथ वाइल्डकार्ड का उपयोग कैसे करें?] (Http://stackoverflow.com/questions/8937430/how-to-use-wildcard-with-make) –
हां यह पूरा सवाल है। मैंने गलती से शीर्षक के साथ आंशिक प्रश्न पोस्ट किया "बनाने के साथ वाइल्डकार्ड का उपयोग कैसे करें?"। मैंने उस दूसरे प्रश्न को बंद करने या हटाने की कोशिश की और लोगों को इस पर निर्देशित किया। आह। –
मैंने पहले से ही उस प्रश्न का उत्तर दिया है। :( –