Follow-up Comment #4, bug #31847 (project make):

Providing a specific target for each .o seems to workaround the issue. So the
failing example contains this rule...

# Link apps
app%: app%.o lib.a
        ${CC} ${@:app%=app%.o} lib.a -o $@

The problem is that app1 may be linked before app1.o have been created. The
workaround is to add an explicit target for app1.o...

app1.o:

I think this workaround might be effective because it prevents the file from
being treated as intermediate. The manual says this, "a file cannot be
intermediate if it is mentioned in the makefile as a target or prerequisite."


    _______________________________________________________

Reply to this item at:

  <http://savannah.gnu.org/bugs/?31847>

_______________________________________________
  Message sent via/by Savannah
  http://savannah.gnu.org/


_______________________________________________
Bug-make mailing list
Bug-make@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-make

Reply via email to