Michael G Schwern wrote:
On Fri, Dec 17, 2004 at 03:53:32AM -0500, Randy W. Sims wrote:
Macro expressions specified on the command line allow the
macro value to be redefined within the makefile only if
the macro is defined using the '+=' and '+:=' operators.
Other operators will define a macro that cannot be further
modified.
BTW, I did test earlier today with nmake on 5.6 and 5.8 and found no
problems. The above problem only affects dmake.
This can't be right. Could you try something simple like
dmake test TEST_VERBOSE=1
dmake.exe: makefile: line 807: Warning -- Macro `TEST_VERBOSE' cannot
be redefined
...
Manually changing the generated F<Makefile> to use the C<MACRO *= LINE>
form of assignment fixes the problem. But that seems like a PITA to have
to specify this alternative syntax for all possible commandline macros.
How is MakeMaker different now than before? I scanned the dmake docs,
hoping to find some type of directive to change the behavior, but I
don't see anything.
Further, note that the latest trunk tarball fails F<basic.t> test #74,
but only with dmake. As before, all tests pass with nmake. Note that
this is the same perl; I just changed Config.pm to switch dmake/nmake.
ok 73 - init_dirscan skipped distdir
# Failed test (t/basic.t at line 271)
# got: '65280'
# expected: '0'
# C:\devel\perl\bin\perl.exe -e "chdir 'Liar'; system
'x:\opt\dmake\dmake.exe -S clean' if -f 'Makefile';"
<snip extraneous output>
not ok 74 - realclean
ok 75
|
Try Searching:
servers, voip, java, networking, microsoft ...
|
|
|
|