help-make
[Top][All Lists]
Advanced

[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




reply via email to

[Prev in Thread] Current Thread [Next in Thread]