On 30/10/02 11:38 +0100, Nadim Khemir wrote: > > Brian Ingerson sent the following bits through the ether: > > > > I'm looking into building a pure Perl version of gmake. It will use > > object > > oriented modules. You could use these yourself to parse and rewrite the > > Makefile. And you could always serialize the object in YAML. > > My advice is don't, even if I understand why you want to do that.
I won't. Now. I just wanted an nmake replacement for building Perl extensions. pmake works great. > MakePP is a very serious Make written in perl makepp blows goats. here's what it does: > h2xs -AXn TestModule Defaulting to backwards compatibility with perl 5.8.0 If you intend this module to be compatible with earlier perl versions, please specify a minimum perl version with the -b option. Writing TestModule/TestModule.pm Writing TestModule/Makefile.PL Writing TestModule/README Writing TestModule/t/1.t Writing TestModule/Changes Writing TestModule/MANIFEST (macingy) ingy /Users/ingy > cd TestModule/ (macingy) ingy /Users/ingy/TestModule > perl Makefile.PL Checking if your kit is complete... Looks good Writing Makefile for TestModule (macingy) ingy /Users/ingy/TestModule > makepp Loading makefile /Users/ingy/TestModule/makefile makepp: warning: conflicting rules (/Users/ingy/TestModule/makefile:304 and /Users/ingy/TestModule/makefile:301 for target /Users/ingy/TestModule/config Use of uninitialized value in numeric lt (<) at /Users/ingy/build/makepp-1.18/FileInfo_makepp.pm line 485. Use of uninitialized value in numeric gt (>) at /Users/ingy/build/makepp-1.18/FileInfo_makepp.pm line 485. makepp: warning: conflicting rules (/Users/ingy/TestModule/makefile:307 and /Users/ingy/TestModule/makefile:304 for target /Users/ingy/TestModule/config Use of uninitialized value in numeric lt (<) at /Users/ingy/build/makepp-1.18/FileInfo_makepp.pm line 485. Use of uninitialized value in numeric gt (>) at /Users/ingy/build/makepp-1.18/FileInfo_makepp.pm line 485. makepp: warning: conflicting rules (/Users/ingy/TestModule/makefile:328 and /Users/ingy/TestModule/makefile:307 for target /Users/ingy/TestModule/config Use of uninitialized value in numeric lt (<) at /Users/ingy/build/makepp-1.18/FileInfo_makepp.pm line 485. Use of uninitialized value in numeric gt (>) at /Users/ingy/build/makepp-1.18/FileInfo_makepp.pm line 485. makepp: Entering directory `/Users/ingy/TestModule' cp TestModule.pm blib/lib/TestModule.pm makepp: warning: I attempted to build /Users/ingy/TestModule/subdirs, but after successfully executing the commands, the target does not exist. Perhaps it is a phony target? If so, the rule defining it should be modified like this: $(phony subdirs): dependencies actions or you could also declare it as phony like this: .PHONY: subdirs Makefile out-of-date with respect to Makefile.PL /usr/local/perl580/lib/5.8.0/darwin/Config.pm /usr/local/perl580/lib/5.8.0/darwin/CORE/config.h Cleaning current config before rebuilding Makefile... /usr/bin/perl -/Users/ingy/build/makepp-1.18/recursive_makepp -f Makefile.old clean > /dev/null 2>&1 || /bin/sh -c true /usr/local/perl580/bin/perl Makefile.PL Checking if your kit is complete... Looks good Writing Makefile for TestModule ==> Your Makefile has been rebuilt. <== ==> Please rerun the make command. <== false makepp: error (1), stopping now I wrote the author to tell him, but no response. Cheers, Brian