हाँ, आप खोल पुनर्निर्देशन स्रोत फ़ाइल में चर लिखने के लिए उपयोग कर सकते हैं:
VAR1=foobar
all:
@echo "char *variable1 = \"$(VAR1)\"" > generated.c
(@ चिह्न यहाँ नहीं कर द्वारा प्रदर्शित गूंज आदेश के लिए है)।
संपादित करें: मैं क्या आपके इरादे यहाँ है पता नहीं है, लेकिन यह मैक्रो के रूप में संकलक करने के लिए Makefile चर पारित करने के लिए आसान हो सकता है:
VAR="toco.conf"
CFLAGS = -DVAR='$(VAR)'
all:
gcc $(CFLAGS) prog.c
prog.c से किया जा रहा है:
#include <stdio.h>
int main(int ac, char **av)
{
printf("%s\n", VAR);
exit(0);
}
देखें इस [सवाल] (http://stackoverflow.com/questions/1327998/calling-sed-for-a-source-in-makefile-am) आप कैसे पर एक मेकफ़ाइल में sed का उपयोग कर सकते हैं। – kgiannakakis