Follow-up Comment #6, bug #28456 (project make):

The handling of *$<* under *SECONDEXPANSION* seems well broken as of 4.2.1.

With an implicit rule:


    $ cat Makefile
    .SECONDEXPANSION:
    %.2: %.1 $$(info [$$<] [$$@]) ; : $@ Success

    $ ls
    foo.1 Makefile

    $ make foo.2
    [foo.2] [foo.2]
    : foo.2 Success


Notice that $< expands to the target rather than a pre-requisite (!).

The situation for explicit rules is arguably worse:


    $ cat Makefile
    .SECONDEXPANSION:
    foo.2: %.2: %.1 $$(info [$$<] [$$@]) ; : $@ Success

    $ ls
    foo.1 Makefile

    $ make foo.2
    [] [foo.2]
    : foo.2 Success


$< is now empty. Can't find any syntax to change this.

Current cygwin make BTW


    $ make --version
    GNU Make 4.2.1
    Built for x86_64-unknown-cygwin
    Copyright (C) 1988-2016 Free Software Foundation, Inc.


    _______________________________________________________

Reply to this item at:

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

_______________________________________________
  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