On Mon, 2006-02-13 at 12:46 -0600, Tommy Reynolds wrote:
Uttered "Paul W. Frields" (pfrields)
<fedora-docs-commits(a)redhat.com>, spake thus:
> Log Message:
> Oops, remember Tommy's rule of good behavior in targets
>
> Index: Makefile.common
> ')' -prune -o -print | cpio -pamdv $(DOCBASE)-$(VERSION)
> - tar -zcvf $@ $(DOCBASE)-$(VERSION)/
> + tar -zcvf $(DOCBASE)-$(VERSION).src.tar.gz $(DOCBASE)-$(VERSION)/
Is that my rule?
Nothing wrong with the original line; I _like_ shorthands like "$@".
The problem is when $*, $@ and the like appear in a template; then
they must be written like this:
define FOO_template
target-${1}:: file.foo
cp $$< $$@
endef
$(foreach F,abc def,$(eval $(call FOO_template,${F})))
That is, you must escape the '$@' in the template because we don't
want it expanded as part of the template expansion, but later when
the target is evaluated.
Uh... yeah... that's what I meant, even if I didn't mean it that
way. :-D
Didn't mean to attribute a bad rule to you. But since I don't want to
build files called "src-tarball" this was a good change to make,
regardless!
--
Paul W. Frields, RHCE
http://paul.frields.org/
gpg fingerprint: 3DA6 A0AC 6D58 FEC4 0233 5906 ACDB C937 BD11 3717
Fedora Documentation Project:
http://fedora.redhat.com/projects/docs/