#9 MAKEFLAGS interpreted incorrectly

closed-fixed
nobody
None
5
2005-01-03
2004-09-16
Scott Johnson
No

I'm running makepp from within a GNU Makefile (since my entire
build flow is not [yet] converted to makepp at this time).

The GNU Makefile was run with some command-line args set, like
this:

make CONFIG=foo

So GNU Make sets $MAKEFLAGS which makepp sees.

Unfortunately line 1077 of makepp (1.40beta1) adds a '-' character to
the front of MAKEFLAGS, if one doesn't already exist. This causes
CONFIG=foo to become -CONFIG=foo, which tells makepp to try to
find a directory named ONFIG=foo:

makepp: error: No rule to make
/home/scottj/makepp/makeflags_bug/ONFIG=foo/all
makepp: error: status (-1), stopping now
make: *** [all] Error 1

Discussion

  • Scott Johnson
    Scott Johnson
    2004-09-16

    Makefile and Makeppfile to reproduce: run 'make CONFIG=foo'

     
    Attachments
  • Gary Holt
    Gary Holt
    2005-01-03

    Logged In: YES
    user_id=421740

    Ok, this is now fixed in the CVS version (but not in 1.40).
    The fix is to not add the '-' character if it contains an
    equals sign. Another workaround is to set MAKEPPFLAGS to
    something non-blank (pick some harmless option); if you do
    this, MAKEFLAGS is ignored.

    Thanks for submitting the nice test case.

    Sorry it took so long to respond to this one.

     
  • Gary Holt
    Gary Holt
    2005-01-03

    • status: open --> closed-fixed