[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Make Manual Example -- Please Explain
From: |
hotquietday |
Subject: |
Make Manual Example -- Please Explain |
Date: |
Thu, 15 Jul 2004 15:55:27 -0700 (PDT) |
Hi,
I'm trying to understand this example (form the GNU
manual), which creates dependency files:
%.d: %.c
@set -e; rm -f $@; \
$(CC) -M $(CPPFLAGS) $< > address@hidden; \
sed 's,\($*\)\.o[ :]*,\1.o $@ : ,g' < address@hidden
> $@; \
rm -f address@hidden
Here are my questions:
1. What does "@set -e;" do? Is that a shell command
or make command? I couldn't find anything in man
about it.
2. What is "address@hidden;"? I know that "$@", when used
alone, represents the target, but what's with all
those dollar signs?
3. Can someone break down the sed command:
sed 's,\($*\)\.o[ :]*,\1.o $@ : ,g' < address@hidden > $@;
I've never seen sed used this way before. Eg, I can't
see how the commas are specifying a range, and there
is no -e flag.
Thanks for any clarification,
John
__________________________________
Do you Yahoo!?
Yahoo! Mail - 50x more storage than other providers!
http://promotions.yahoo.com/new_mail
- Make Manual Example -- Please Explain,
hotquietday <=