From: Tom Tromey Date: Sat, 10 Apr 1999 22:51:51 +0000 (+0000) Subject: * depend2.am (%.o): Use `$(*D)/$(*F)', not just `$(*F)'. X-Git-Tag: v1.10.2~2644 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=aa1855930f066044f5904ffaeb6040193c4ac2a6;p=platform%2Fupstream%2Fautomake.git * depend2.am (%.o): Use `$(*D)/$(*F)', not just `$(*F)'. (%.lo): Likewise. --- diff --git a/ChangeLog b/ChangeLog index bf5b1e4..f6af931 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,8 @@ 1999-04-10 Tom Tromey + * depend2.am (%.o): Use `$(*D)/$(*F)', not just `$(*F)'. + (%.lo): Likewise. + * automake.in (am_install_var): Remove redundancies from the result. Fixes test cond8.test. diff --git a/depend2.am b/depend2.am index dec3e82..be93a8b 100644 --- a/depend2.am +++ b/depend2.am @@ -26,34 +26,34 @@ ## -MM, not -M (despite what the docs say). ## - Using -M directly means running the compiler twice (even worse ## than renaming). - $(@PFX@COMPILE) -Wp,-MD,.deps/$(*F).pp -c $< + $(@PFX@COMPILE) -Wp,-MD,.deps/$(*D)/$(*F).pp -c $< ## This next piece of magic avoids the `deleted header file' problem. ## The problem is that when a header file which appears in a .P file ## is deleted, the dependency causes make to die (because there is ## typically no way to rebuild the header). We avoid this by adding ## dummy dependencies for each header file. Too bad gcc doesn't do ## this for us directly. - @-cp .deps/$(*F).pp .deps/$(*F).P; \ - tr ' ' '\012' < .deps/$(*F).pp \ + @-cp .deps/$(*D)/$(*F).pp .deps/$(*D)/$(*F).P; \ + tr ' ' '\012' < .deps/$(*D)/$(*F).pp \ ## Some versions of gcc put a space before the `:'. On the theory ## that the space means something, we add a space to the output as ## well. | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ - >> .deps/$(*F).P; \ - rm .deps/$(*F).pp + >> .deps/$(*D)/$(*F).P; \ + rm .deps/$(*D)/$(*F).pp %.lo: %@EXT@ @echo '$(LT@PFX@COMPILE) -c $<'; \ ## See above to understand implementation weirdness. - $(LT@PFX@COMPILE) -Wp,-MD,.deps/$(*F).pp -c $< + $(LT@PFX@COMPILE) -Wp,-MD,.deps/$(*D)/$(*F).pp -c $< ## Account for versions of gcc that put a space before the `:'. @-sed -e 's/^\([^:]*\)\.o[ ]*:/\1.lo \1.o :/' \ - < .deps/$(*F).pp > .deps/$(*F).P; \ + < .deps/$(*D)/$(*F).pp > .deps/$(*D)/$(*F).P; \ ## See above to understand deleted header file trick. - tr ' ' '\012' < .deps/$(*F).pp \ + tr ' ' '\012' < .deps/$(*D)/$(*F).pp \ ## Some versions of gcc put a space before the `:'. On the theory ## that the space means something, we add a space to the output as ## well. | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ - >> .deps/$(*F).P; \ - rm -f .deps/$(*F).pp + >> .deps/$(*D)/$(*F).P; \ + rm -f .deps/$(*D)/$(*F).pp diff --git a/lib/am/depend2.am b/lib/am/depend2.am index dec3e82..be93a8b 100644 --- a/lib/am/depend2.am +++ b/lib/am/depend2.am @@ -26,34 +26,34 @@ ## -MM, not -M (despite what the docs say). ## - Using -M directly means running the compiler twice (even worse ## than renaming). - $(@PFX@COMPILE) -Wp,-MD,.deps/$(*F).pp -c $< + $(@PFX@COMPILE) -Wp,-MD,.deps/$(*D)/$(*F).pp -c $< ## This next piece of magic avoids the `deleted header file' problem. ## The problem is that when a header file which appears in a .P file ## is deleted, the dependency causes make to die (because there is ## typically no way to rebuild the header). We avoid this by adding ## dummy dependencies for each header file. Too bad gcc doesn't do ## this for us directly. - @-cp .deps/$(*F).pp .deps/$(*F).P; \ - tr ' ' '\012' < .deps/$(*F).pp \ + @-cp .deps/$(*D)/$(*F).pp .deps/$(*D)/$(*F).P; \ + tr ' ' '\012' < .deps/$(*D)/$(*F).pp \ ## Some versions of gcc put a space before the `:'. On the theory ## that the space means something, we add a space to the output as ## well. | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ - >> .deps/$(*F).P; \ - rm .deps/$(*F).pp + >> .deps/$(*D)/$(*F).P; \ + rm .deps/$(*D)/$(*F).pp %.lo: %@EXT@ @echo '$(LT@PFX@COMPILE) -c $<'; \ ## See above to understand implementation weirdness. - $(LT@PFX@COMPILE) -Wp,-MD,.deps/$(*F).pp -c $< + $(LT@PFX@COMPILE) -Wp,-MD,.deps/$(*D)/$(*F).pp -c $< ## Account for versions of gcc that put a space before the `:'. @-sed -e 's/^\([^:]*\)\.o[ ]*:/\1.lo \1.o :/' \ - < .deps/$(*F).pp > .deps/$(*F).P; \ + < .deps/$(*D)/$(*F).pp > .deps/$(*D)/$(*F).P; \ ## See above to understand deleted header file trick. - tr ' ' '\012' < .deps/$(*F).pp \ + tr ' ' '\012' < .deps/$(*D)/$(*F).pp \ ## Some versions of gcc put a space before the `:'. On the theory ## that the space means something, we add a space to the output as ## well. | sed -e 's/^\\$$//' -e '/^$$/ d' -e '/:$$/ d' -e 's/$$/ :/' \ - >> .deps/$(*F).P; \ - rm -f .deps/$(*F).pp + >> .deps/$(*D)/$(*F).P; \ + rm -f .deps/$(*D)/$(*F).pp