Follow-up Comment #3, bug #15718 (project make):

If you want to have Perl execute a program on the command line you have to
give it the -e option (see the Perl manual).  Running "perl foo" causes Perl
to try to execute the file named "foo".  If you want to run a Perl script on
the command line, which is what make wants to do, then you have to use -e.

Now the bad news: make doesn't support this.  Make always invokes its
commands using the syntax "$(SHELL) -c <script>", and there's no way to
change that -c to anything else.  This is something I've long considered
fixing, by adding a SHELLFLAGS variable or something that could be overridden
by the makefile--even in UNIX without changing SHELL this is handy; some
people would prefer to invoke /bin/sh with the -e option as well as the -c
option.

The only way to get around it right now is write a little script wrapper that
takes arguments of the form make provides, then invokes Perl with the proper
translation of those arguments.

    _______________________________________________________

Reply to this item at:

  <http://savannah.gnu.org/bugs/?func=detailitem&item_id=15718>

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



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

Reply via email to