This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Upgrade to ExtUtils::MakeMaker 6.19
[perl5.git] / lib / ExtUtils / Changes
1 6.19 Mon Nov  3 22:53:56 PST 2003
2     - Removed 00setup_dummy.t and zz_cleanup_dummy.t.  Tests now setup and
3       teardown the dummy modules as needed.
4     - Little test glitch on systems without $Config{usevendorprefix} set
5     - INSTALL(SITE|VENDOR)MAN*DIR now fall back to $(INSTALLMAN*DIR)
6       instead of copying its value.  This lets "perl Makefile.PL 
7       INSTALLMAN1DIR=/some/man/man1" work like expected.
8
9 6.18 Mon Nov  3 20:09:51 PST 2003
10     - parse_version() was blowing over $_ (Ilya Zakharevich)
11     - 5.6.2 has the same Cygwin shared lib name fix as 5.7.0. (Gerrit Haase)
12     * When $Config{install(site|vendor)man*dir} aren't set it will now
13       fall back to $Config{installman*dir}.  Similar for 
14       $Config{install(site|vendor)bin}.  This preserves behavior for older
15       Perls.
16     * Eliminated the dependency on perl.h for pure-perl builds.
17     * Eliminated .exists files.  Added blibdirs target using MKPATH instead.
18     - Removed now unused dir_target() method.
19     - Added a little documentation to instmodsh.
20     * Made sure PREFIX always has something in it.  Module authors like to use
21       it when extending MakeMaker.  Currently using one of 
22       PERL/SITE/VENDORPREFIX based on the value of INSTALLDIRS.
23     * Added SIGN to generate module signatures with cpansign (Autrijus Tang)
24     - Slight tweaks to MAKEFILE_OLD and MAKE_APERL_FILE restoring a mistake
25       made around 6.06 to fix static builds on OS/2
26     - Added ExtUtils::Command::dos2unix()
27     * manicopy() would make the copied files read-only if 'cp' was used.
28     * Fixed prereq check for modules which are also keywords like if.pm and
29       open.pm (Autrijus Tang)
30     - Made ExtUtils::Command mv and cp return whether or not they succeeded.
31     * metafile_addtomanifest now mentions what its doing.
32     * metafile will not die if it can't write to META.yml, just emit a 
33       warning.  This lets 'make dist' continue with a read-only META.yml
34     - Small fix to identify UWIN on NT (Randy Sims)
35     * metafile will not touch the META.yml if it does not need to be changed
36       (Thanks to Tim Bunce for this idea)
37     * Fixed 'make uninstall' which looks like its been broken since last
38       November and nobody noticed.
39     - Fixing minor bug in VMS prefixification logic when PREFIX was not set
40       by the user.
41     - Fixing potential bug in prefixification for relative directories
42     * Documented UNINST=1
43
44 6.17 Sun Sep 14 20:52:45 PDT 2003
45     - Fixing LD so it can be set properly on Win32. (Orton Yves)
46     * Fixing the init_PERL() "tack $Config{exe_ext} onto $^X" logic so 
47       it works on VMS allowing $^X to be found.
48     * Fixing make install UNINST=1 on Windows so it can search PERL5LIB
49       (Orton Yves)
50     - Fixing "could not open MANIFEST" test for OS/2 (and probably others) 
51       where a read-only file cannot be deleted.
52     - Hacking around the fact that when built for debugging, VMS creates
53       ndbgperl.exe.
54     - Eliminating the never implemented "help" argument.
55
56 6.16 Mon Aug 18 01:39:51 PDT 2003
57     * Fixing the max exec length for Windows to account for old
58       versions of nmake (the one you can download for free from MS).
59     - Hack to normalize //foo//bar paths in ExtUtils::Installed.
60       [Sreeji K Das]
61     * Adding Module::Build utility files to MANIFEST.SKIP
62     - PREREQ_PRINT is supposed to exit after dumping. (Wolfgang Friebel
63       bleadperl@20530)
64     - maniadd() was trying to open the MANIFEST even if it didn't need to
65       causing unnecessary errors for read-only MANIFESTs (rt.cpan.org 3180)
66
67 6.15 Sun Aug  3 16:41:05 PDT 2003
68     - Make FIXIN on Win32 use the new pl2bat rather than an already
69       installed one when building the core (Mattia Barbon)
70
71 6.14 Sun Aug  3 16:23:27 PDT 2003
72     - Adding a reference to the Module::Build META.yml spec in the META.yml
73       itself and the metafile documentation.
74     - Removed Begin/End comments from manifypods that were getting in the
75       way of users adding code to the manifypods target.
76     - Putting a POD2MAN macro back as an alias to POD2MAN_EXE and using
77       it instead of POD2MAN.  This allows people to generate their own man 
78       installation targets in a backwards compatible way.
79     * Adding reference to the Module::Build META file spec in the docs.
80
81 6.13 Thu Jul 31 16:48:01 PDT 2003
82     - Generated META.yml now has the prereqs in sorted order (Andy Lester)
83     - Arguments to child Makefile.PLs were still having .. prepended.  This
84       was exposed by the earlier fix of rt.perl.org 4345.
85     - extralibs.ld (for static builds) wasn't being cleaned up.
86
87 6.12 Tue Jul 29 22:19:38 PDT 2003
88     - Should any of your prefixes be /, MakeMaker might lose this and
89       prepend your prefix as "prefixyour/directory" rather than
90       "prefix/your/directory" (Ed Moy bleadperl 20283)
91     - Reversing "realclean was duplicating work already done by clean"
92       (CVS 1.124 MM_Unix.pm).  Turns out it wasn't a duplication and this
93       was causing INST_* files to be left behind if your INST_LIB wasn't
94       blib/* as in the perl core.  realclean now removes the files copied
95       to INST_*.
96     - Eliminating xsubpp_version().  No longer relevant.  It was checking
97       for a feature added to xsubpp before 5.003_07 and doing it in a
98       really bizarre way.
99
100 6.11 Thu Jul 24 01:24:37 PDT 2003
101     - Small grammatical doc touch up by Sean Burke
102     - Making basic.t clean up better after itself so it can be run
103       twice without setting up and cleaning up Big-Dummy again.
104     * Noting where to find make in the README
105     * Noting that MakeMaker does not produce a GNU make compatible Makefile
106       on Windows.
107
108 6.10_08 Mon Jul 21 18:17:06 PDT 2003
109     * $Config{installvendorman*dir} was being ignored and our default
110       always used. [rt.cpan.org #2949]
111     * Setting NORECURS to true was still resulting in a Makefile which
112       tried to recurse into subdirectories which contained a Makefile.PL
113       (it simply wouldn't have run them to generate Makefile's).
114       This appears to be a rather old bug.
115       [rt.cpan.org #2951]
116     * [rt.perl.org #4345] Arguments passed to WriteMakefile() would get
117       stopped upon by $self->{PARENT} in recursive builds in the process
118       of prepending a .. onto it.
119     - Command.t now using its own temp directory when testing 
120       expand_wildcards() so no stray files confuse it.
121     * No longer warning about 'postamble' attribute.
122     - Added installvars() to list INSTALL* variables so we don't keep
123       repeating the list all over the code.
124     - Added init_DEST() to create DESTINSTALL* variables for installing
125       with DESTDIR set.
126     * DESTDIR + PREFIX now does not duplicate DESTDIR.  [Redhat #91892
127       and part of rt.cpan.org #2954]
128     * DESTDIR is now not directly prepended to the INSTALL* variables.
129       installation targets now use DESTINSTALL* instead.  This prevents
130       the DESTDIR from showing up in places it shouldn't like perllocal.pod.
131       DESTDIR is still appearing in .packlist (bug). [rt.cpan.org #2954]
132     - MM_VMS->prefixify() wasn't honoring the %Config_Override causing
133       some MakeMaker generated config variables to be ignored.
134     - MM_VMS->prefixify() was only VMSifying part of its filepaths causing 
135       internal comparisions to get confused and think it had to prefixify 
136       when it didn't.
137
138 6.10_07 Sat Jul  5 16:12:52 PDT 2003
139     * Fixing location of perllocal.pod so its always in INSTALLARCHLIB
140       instead of one for each perl, site and vendor.
141     - Sun's make treats escaped newlines oddly.  Switching oneliner() back
142       to using multiple -e's.
143     * Bug in libscan() meant that any .pm containing RCS or CVS or SCCS
144       in its name (for example, RCS.pm) would be skipped.
145     - Command.t was getting confused in the core because it was reading
146       files from the core t/ directory, not MakeMaker's t/ directry.
147     - MM_OS2 PERL_ARCHIVE_AFTER test wrong for a.out systems (Ilya)
148     - Fixing perllocal.pod and XS installation on VMS.  An extraneous
149       newline was introduced when changing the install macros over to
150       $(ECHO).
151     - Added $(ECHO_N) macro to emulate 'echo -n'
152
153 6.10_06 Sat Jun  7 00:55:29 PDT 2003
154     - Whoops, Liblist.t busted on VMS after I turned strict on in
155       ExtUtils::Liblist::Kid.  Merely a test bug, not a real bug.
156     - Fixed metafile_addtomanifest failure so the proper error shows.
157     - Fixed metafile_addtomanifest failure diagnostic leaking out during
158       the basic.t test on Windows.
159
160 6.10_05 Fri Jun  6 18:15:30 PDT 2003
161     * Documenting META.yml, NO_META
162     * Documenting the fact that distdir will auto generate META.yml and 
163       alter your manifest.
164     * Adding META.yml autogeneration to the FAQ
165     - Recognizing comments with leading whitespace in MANIFESTs better.
166     - Small ExtUtils::Liblist::Kid problem on VMS (Craig Berry)
167     * Fixed "make install UNINST=1".  Appears to have been broken somewhere
168       around 6.06_01.
169     - Documented the fourth argument to ExtUtils::Install::install()
170     - install() will now honor a PERL5LIB change between ExtUtils::Install
171       loading and install() running when uninstalling shadows.
172     - META.yml generation deals gracefully when the MANIFEST is read-only
173       (Slaven rt.cpan.org 2723)
174     - Fixing tests on limited dir depth VMS systems by moving the 
175       dummy-install dir one level up (Craig Berry rt.cpan.org 2747)
176
177 6.10_04 Fri May 23 01:13:04 PDT 2003
178     - Working around BSD threaading bug in version check. [from bleadperl]
179     - Added the Makefile to the dist dependencies. (Slaven Rezic)
180     - Reversing the find_perl() version check failure warning introced in
181       6.10_03.  Too talkative, warned when nothing was wrong.
182     * Fixing META.yml auto-addition when there's no newline at the end 
183       of the MANIFEST [rt.cpan.org 2444]
184     * Making it a bit more obvious in the MANIFEST where META.yml comes from.
185     - Fixed $_ clobbering in ExtUtils::Manifest functions.
186     - [rt.cpan.org 2591] some LD_RUN_PATH thing (Marek Rouchal)
187     - Added core.\d+ files to 'make clean' [rt.cpan.org 2543] (Slaven Rezic)
188     - INST_* targets were expanded too early (Stas Bekman)
189     - Adding ExtUtils::MakeMaker::bytes (bytes.pm backwards compat wrapper)
190     - Fixing MM_MacOS so it will compile on 5.5.x machines (use bytes wrapper)
191     * Reducing perldepend set of CORE/*.h dependencies to what 5.5.3 has.
192       5.5.3 should be able to compile XS again.
193     * Eliminating fakethr.h and perlsfio.h from VMS's perldepend as they
194       sometimes don't get installed.
195     - ExtUtils::Install was making a few directories even with the
196       "don't really do it" switch on (Slaven Rezic)
197     * can build static linked perl binaries again.  Probably damaged in
198       6.06_01 when $self->{MAKEFILE} became FIRST_MAKEFILE. (Nick Clark)
199
200 6.10_03 Fri Apr 11 00:21:25 PDT 2003
201     * Added NO_META WriteMakefile() option to suppress generation of
202       META.yml. (Spoon, rt.cpan.org 2359)
203     - Spurious linebreak in uninstall_from_sitedirs on VMS (Craig Berry)
204     * A bit after 6.05 man page names would come out as lib::Foo::Bar
205       if the module name didn't contain a ::.  Found with podulators.
206       Fixed.
207     * Skipping installation of RCS ,v files.
208     * 'make ci' was busted between 6.05 and 6.06_01.  Fixed. (Andreas)
209     - 'make test' was broken when there's no tests.  Introduced in 6.06_03.
210       (Stas Bekman)
211     - Solving some directory depth problems in tests on oldish VMS systems.
212       (Craig Berry)
213     - Fixing MM_MacOS so it compiles on UTF-8 systems. (Jarkko)
214     - Making find_perl() more talkative when the version check fails
215       miserably.
216     - Fixing PERL_ARCHIVE on VMS so XS can compile again (Craig Berry)
217
218 6.10_02 Mon Apr  7 00:57:15 PDT 2003
219     * Removed 2>&1 experiment introduced in 6.10_01 for all non-Unixen
220       except for OS/2.  Thought Perl might emulate `... 2>&1`.  It doesn't.
221       Just on OS/2.
222
223 6.10_01 Sun Apr  6 19:31:42 PDT 2003
224     - Making install "Skip ... (unchanged)" message happen consistently
225     - Checking file sizes as well as modification times when deciding
226       to skip installing a file.
227     - OS/2 was using $(RM) instead of $(RM_F) (Ilya)
228     - OS/2 needs .dll removed on failed build (Ilya)
229     - fixin() was assuming that rename() can overwrite the target (Ilya)
230     - manifypods target was empty if there are no pods to manify.  Put in
231       at least $(NOECHO) $(NOOP)
232     - Cygwin test to check for finding pod2man when building the perl core
233       removed.  No longer relevent.
234     - Small fixes for dmake (Mattia Barbon)
235     * Added "Reporting bugs" section to the PATCHING doc.
236     - Minor bug in compile test missed ExtUtils::Liblist::Kid
237     - Removing $(VERSION_FROM) from Makefile dependency.  It was too
238       annoying to rebuild the Makefile every time the module changed.
239       Mentioned it in the FAQ instead.
240     - Fixing PERL_ARCHIVE macro on VMS.  Apparently it never appeared
241       properly before. (Craig Berry)
242     - Fixing ECHO on dmake.
243     - Adding os_flavor() and os_flavor_is()
244     - Making basic.t error output combine STDOUT & STDERR for easier 
245       reading.
246     * ExtUtils::Manifest will now work case insensitively.
247     - Fixed 'subroutine redefined' warnings in 00compile.t
248     - Fixed it so typemaps are only looked for in the perl core library.
249     * Hacking around VMS filesystem problems reconstructing package names
250       from filenames in ExtUtils::Installed.  (Jesper Naur)
251
252 # There was no 6.06, I jumped straight to 6.10_XX because there's been
253 # so much change between 6.05 and now.
254
255 6.06_05 Mon Mar 31 02:44:11 PST 2003
256     - Syncing into bleadperl.  Minor nits revealed...
257     - AutoSplit open filehandle bug was fixed in bleadperl.  Averted a
258       warning because of this.
259     - hint files were only being loaded if . happened to be in @INC.
260       A bug/feature of File::Spec was stripping off the current dir from
261       the front of hintfile paths causing Perl to look for them in @INC.
262       Worked around.
263     - Now checking $! for errors if a hint file returns undef
264     - compile test was testing all of perl!  Scaling back to just ExtUtils/
265
266 6.06_04 Sun Mar 30 20:34:39 PST 2003
267     - Now looking for ExtUtils::xsubpp through @INC rather than just
268       the perl core directories.  This helps ExtUtils::ParseXS.
269     - Systems which don't put their libraries under their $Config{prefix}
270       (OS X, Debian) weren't putting their libraries in the spot declared
271       in Config.  It was going under $Config{prefix}.
272     - Prerequisites check now deals better with X.Y_Z style alpha versions
273     - ExtUtils::Liblist->ext() was using $Config{perllibs} which is a 5.6.1
274       thing.  Falling back to $Config{libs} if perllibs isn't there.
275     - ExtUtils::Command::MM now reads from @ARGV if called with no
276       args.  Makes the one liner a bit simpler.
277     * Restored ExtUtils::Liblist::ext() for backwards compatibility.
278       Missing since 5.6.1.
279     - Switching to relative dirs for self-building to shorten
280       command line lengths.
281     - Fixing minor test warning on VMS when compiling ExtUtils::Manifest
282     - Skipping STDIN read prompt() tests on 5.5.3.  Can't test due to
283       eof() not honor tied handles.
284     - Config.pm on 5.5.3 doesn't have any concept of vendor*.  This was
285       causing warnings when generating the Makefile.
286
287 6.06_03 Sat Mar 29 19:44:53 PST 2003
288     - Added AUTHOR and ABSTRACT_FROM info for ppd generation.
289     - Added echo() method to portably echo text to a file.
290     - Worked around 5.8.0 eval 'require Foo::Bar' bug causing MakeMaker
291       to think modules weren't installed.
292     - Modernized VMS doc_*_install targets
293     - Changed some $(PERL) -e "print ..." code to use $(ECHO).
294     - Replaced uses of Delete/NoLog/NoConfirm with $(RM_F) in MM_VMS
295     - Fixed some duplicate macros making MMS happy.
296     - Fixed $ExtUtils::MM_VMS::Revision.  It was just the $VERSION before.
297     - Fixed ExtUtils::Command::MM::perllocal_install(), uninstall(),
298       warn_if_old_packlist().
299     * Pulling File::Spec::VMS::fixpath() and eliminate_macros() into MM_VMS
300       as the new cannonical location.  They never should have been in F::S
301       in the first place.
302     * ExtUtils::Command::eqtime() would truncate the file being equalized!
303       Holdover from exclusive .exists usage.
304     - Cleaned up hard coded 'echo' and '@' to $(ECHO) and $(NOECHO)
305     - $(SAY) is now $(ECHO) on VMS
306     - Moved rogue initializations from tools_other() to init_others()
307     - Normalized MM_VMS's tools_other() to mostly use its superclass.
308     - split_command() was off-by-one when calculating max command line
309       lengths causing it to run over on VMS
310     - made split_command() a bit smarter, taking into account some macro
311       expansion
312     - Fixed initialization of OBJECT, DISTNAME and LDFROM on VMS
313     - Fixed *_install target uses of File::Spec.
314     - Added ExtUtils::MakeMaker::vmsish wrapper around vmsish so MM_VMS
315       can be compiled on non-VMS machines.  For testing.
316     * Added ExtUtils::MakeMaker::Tutorial about writing modules with
317       MakeMaker.
318     - Removed "always use h2xs" dogma.
319     - Added compile & POD test
320     * 'make distdir' now generates META.yml module meta-data file.
321       Proof of concept.  Have to syncronize with Module::Build.
322     * Added maniadd() to ExtUtils::Manifest to add entries to the MANIFEST
323     * ExtUtils::Command::chmod was not interpreting file permissions as
324       octal.  Also, docs & tests slightly wrong (thanks Stas Bekman).
325     - ExtUtils::Install was hard coding blib/lib and blib/arch, unportable
326       [perl #21526]
327
328 6.06_02 Mon Dec 23 20:39:57 PST 2002
329     * Lots of Win32 fixes busted between 6.05 and 6.06_01.  
330     * split_command() tests still not happy on Win32.  Problems with
331       shell vs Makefile escaping makes testing difficult.
332     * VMS still broken.  Need to convert File::Spec method calls back to
333       object method calls so the weird FS::VMS->eliminate_macros() and 
334       fixpath() work again.
335
336 6.06_01 Thu Dec 19 00:14:49 PST 2002
337     - Andreas found that when building the core it is desirable for
338       MakeMaker to use a relative path to perl.
339     - File::Spec->catfile() has a bug where the resulting file may not be
340       canonicalized.  This was causing problems when generating manpaths.
341       MakeMaker now uses its own fixed override for catfile().
342     - Fixed the POD recognition regex to properly catch /=head\d/ tags.
343     * Added a PATCHING guideline document.
344     - Updated the class hierarchy in NOTES.
345     - Installed.t now cleans up after itself better.
346     - Steve Purkis rewrote the manifypods system to use Pod::Man
347       rather than pod2man.  Its now portable and manifypods() moved from 
348       MM_Unix to MM_Any.  As a result, lots of icky and redudant code went
349       away.  This also removes the POD2MAN macro, but noone should be
350       using that.  
351     - "make manifypods" now works on Win32
352     - "make manifypods" is now be faster
353     - Made MM_Unix->find_perl more portable.  Eliminated MM_Win32->find_perl
354       override.  MM_VMS->find_perl remains.
355     * find_perl() can now handle filenames with spaces in them (RT448)
356     * find_perl() on Win32 no longer produces spurious "File Creation error"
357       messages (perlbug ID 20020709.001)
358     - Removed unfinished and unused maybe_command_in_dirs()
359     - Removed dead SelfLoader cruft from MM_Unix.
360     - Fixed PPD generation when the ppd contains quotes (RT1473)
361     - Fixed PPD generation on VMS
362     - Moved Win9x specific subdir_x() code from MM_Unix to MM_Win95
363     * Craig Berry fixed hint files on VMS
364     - Added the perl_onliner() method to generate portable, safe one-liners
365     - Changing hardcoded $self->{MAKEFILE} to $(FIRST_MAKEFILE).
366     * Rafael Garcia-Suarez made MakeMaker ignore Subversion control files
367       by default.
368     - Added MAKEFILE_OLD macro.
369     * No longer generating man pages by default on VMS.
370     - Improved DISTNAME docs
371     * Documented DISTVNAME and VERSION_SYM
372     * Documented dist()
373     - Seperated dist_core() into dist, tardist, uutardist, tarfile,
374       zipdist, zipfile and shdist_target methods.  Allows elimination
375       of redundant code in MM_VMS.
376     - Replaced WARN_IF_OLD_PACKLIST, DOC_INSTALL and UNINSTALL
377       one-liners with ExtUtils::Command::MM functions
378     - Replaced VMS hand-rolled perl code for TOUCH, CHMOD, RM_F and RM_RF
379       with ExtUtils::Command functions.  Added TEST_F.
380     - Adding clean_subdirs target and clean_subdirs_target() method to
381       generate same.  This allows easier overriding of an unportable part
382       of the clean target.
383     - Defined DEV_NULL for MacOS
384     - Removed ROOTEXT from MM_MacOS, apparently unused
385     - Added $(DIRFILESEP) macro and init_DIRFILESEP to avoid
386       hardcoding / or \.  Reduces code duplication in the MM_* modules.
387     - Added init_platform() and platform_constants() for OS specific
388       macros.  Moved OS specific macros from constants() overrides there.
389     - Added init_VERSION() to setup various *VERSION* macros.
390     - Added default wraplist() to make porting easier.
391     - Added makemakerdflt_target() to guarantee 'all' is the default
392       target.
393     - Added special_targets() to handle things like .PHONY and make sure
394       they come first.
395     - Added init_linker() to initialize linker relatied macros.
396     - MM_MacOS constants() disolves
397         Moved MACPERL_SRC, MACPERL_LIB, MACPERL_INC from init_main() to 
398           init_platform().
399         Moved DEFINE and INC tweaking from constants() to init_main()
400         Moved DEFINE_VERSION & XS_DEFINE_VERSION from constants() to
401           init_VERSION().
402         Eliminated MODULES.  Unused and its the same as TO_INST_PM
403         Moved .INCLUDE from constants() to special_targets()
404
405     - MM_NW5 constants() & init_others() disolves
406         Moved LIBPTH, BASE_IMPORT, NLM_VERSION, MPKTOOL, TOOLPATH from 
407           init_others() to init_platform()
408         Moved INCLUDE and PATH definitions from constants() to 
409           init_platform()
410         Moved BOOT_SYMBOL, NLM_SHORT_NAME, PATH and INCLUDE from
411           constants() to init_platform()
412
413     - MM_Unix constants() goes on a diet
414         Moved all macro definitions to init_* methods.
415         Added MM_REVISION for completeness
416         Using wraplist() instead of manual joining
417         Moved .NO_CONFIG_REC, .SUFFIXES and .PHONY to special_targets()
418         Moved makemakerdflt: to makemakerdeflt_target()
419         Moved INST_{STATIC,DYNAMIC,BOOT} to init_INST()
420         Moved EXPORT_LIST, PERL_ARCHIVE & PERL_ARCHIVE_AFTER to init_linker().
421         Moved PERL_MALLOC_DEF to init_platform()
422
423     - MM_VMS constants() goes on a diet
424         Moved DEFINE from constants() to init_main()
425         Moved OBJECT & LDFROM from constants() to init_others()
426         Moved MM_VMS_REVISION and PERL_VMS to init_platform
427         Added MM_VMS_VERSION
428         Moved DEFINE_VERSION, XS_DEFINE_VERSION and MAKEMAKER changes to
429             init_VERSION
430         Moved .SUFFIXES changes to special_targets() override.
431         Eliminated $self->{PM_TO_BLIB}.  Its redundant with $self->{PM}.
432         constants() now consists only of fixpath() calls.
433
434     - MM_Win32 constants() goes away
435         Moved .USESHELL to special_targets() override.
436         Everything else was redundant.
437
438     - Added $(VERSION_FROM) to $(MAKEFILE) dependencies.  Helpful for
439       XS builds where the version number is very sensitive.
440     - export_list(), perl_archive() and perl_archive_after() consolodated
441       into init_linker().
442     - Added MM_NW5_VERSION, MM_Unix_VERSION, MM_Win32_VERSION, 
443       MM_VMS_VERSION.
444     - Eliminated duplicate code in constants() overrides
445     - Added all_target() for easier customization of what's run by default
446     - Eliminated duplicate top_targets() overrides
447     - Made tool_autosplit() method portable.  Moved to MM_Any.  Eliminated
448       overrides.
449     - Adding realclean_subdirs target and realclean_subdirs_target()
450       method to generate same.  This allows easier overriding of an 
451       unportable part of the realclean target.    
452     - Added oneliner() to create portable perl one-liners.
453     - Craig Berry found some typos in ExtUtils::Liblist::Kid's VMS part
454     * ExtUtils::Install did not work on MacPerl due to a hardcoded '.'
455     * prompt() will now read from STDIN.
456     - Craig Berry made sure extliblist() is always called even if LIBS
457       is explicitly set to empty.
458     * Added DESTDIR to make repacking easier.
459     * $(*PREFIX) are returned to the INSTALL* variables.
460     * Split $(PREFIX) into $(PERLPREFIX) and $(PREFIX).  The former
461       holds the location of the core libraries.  The latter is the
462       optional override prefix supplied by the user.
463     * PREFIX overrides all other *PREFIXes when set in the Makefile.PL.
464       This restores "make install PREFIX=foo".
465     - Added quote_literal() to handle some shell quoting.
466     - ExtUtils::MM_VMS now compilable on non-VMS platforms.
467     - J. D. Laub made MakeMaker honor $Config{installstyle}
468     - Renaming on OS/2 requires the target file to be removed.  
469       Partially fixed by Ilya, should be applied universally later.
470     - Default MANIFEST.SKIP not catching files in subdirs.  Fixed by Ilya.
471     - Ilya fixed ExtUtils::Liblist->ext when called outside MakeMaker.
472     - realclean was duplicating work already done by clean
473     - Adding an explicit LICENSE
474     - Cleaning up ExtUtils::Install docs.
475     - ExtUtils::Install::uninstall() now has default verbose and
476       dont_execute arguments.
477     - Added some basic ExtUtils::Install tests
478     - Fixed ExtUtils::Install::install() for relative dirs
479     - Added split_command() and max_exec_len() to deal with long
480       commands.
481     - Seperated escape_newlines() from quote_literal().  This may
482       be pointless.
483     - pm_to_blib() now generated with split_command().  3x speedup.
484     - added init_dist() to initialize distribution constants
485     - ExtUtils::Install::pm_to_blib() working around open filehandle
486       bug in AutoSplit for systems with mandatory file locking.
487
488 6.05 Tue Aug 27 16:09:51 PDT 2002
489     - Output format of the hint file verbose diagnostic is now in
490       a format native to the OS, so it broke a test on non-Unixen.
491
492 6.04 Mon Aug 26 18:31:11 PDT 2002 
493     - Little fix for pre-5.8 Cygwin test to get the shared library names 
494       right.
495     * disttest on Win9X broken because of forgotten tabs
496     * WriteMakefile argument verification should now be accurate
497     - Documented the LD flag.
498     * Documented prompt()
499     * vendor install was not adding to packlist or updating perllocal.
500     - Supporting $Config{vendorarchexp} and $Config{vendorlibexp}.
501     - Fixed conflict on VMS between logical names and directories 
502       (bleadperl 17488)
503     - Fixed space-vs-tab bug on Netware (bleadperl 17579)
504     - Mysterious NetWare fix from Ananth (bleadperl 17376)
505     - Support OPTIMIZE in MacOS (bleadperl 17347)
506     - Support hints in MacOS (mutation of bleadperl 17347)
507     * Default man installation directories were using $(MAN*EXT) to
508       generate the directory name.  This turned out to be wrong more
509       often than right, so we'll use man1 and man3 hard-coded.
510     - Debian folks fixed the doc_install targets so the Appending
511       diagnostic gives the correct directory for perllocal.pod
512     * Added ExtUtils::MakeMaker::FAQ
513     - Quieted some warnings on MacOS (bleadperl 17669)
514
515 6.03 Wed Jun 19 17:06:14 EDT 2002
516     - Documented that we're clamping down on cargo-cult MakeMaker
517       programming.
518     - Eased up the parameter verification to leave errant values alone.
519     - Doug MacEachern documented LDDLFLAGS and added to known parameters.
520     - Possible fix for XS compiles on Cygwin for pre 5.8 perls.
521
522 6.02 Sat Jun 15 19:46:06 EDT 2002
523     - ExtUtils::Installed->modules() was broken in scalar context
524     - Sync bleadperl 16922:  Netware updates from Ananth Kesari.
525     - Sync bleadperl 16922:  MM_NW5 tests
526     - Sync bleadperl 16938 & 16974:  MM_MacOS->macify fixes from pudge.
527     - Sync bleadperl 16989 & 16942:  Small test fixes for MacPerl from pudge.
528     - Improved WriteMakefile param verification to differenciate between
529       parameters which don't exist and those that just take strings/numbers.
530       [RT #707]
531     * Documented TEST_VERBOSE
532
533 6.01 Thu May 30 14:48:57 EDT 2002
534     - MacOS Classic fixes from Pudge: recursive make repair,
535       post_initialize() now used, DEFINE & INC work with relative paths,
536       removed dead hybrid method/function call code.
537     * WriteMakefile now a bit more tolerant of wrong arguments, it will
538       warn and try to soldier on rather than just vomiting.
539     - Netware whitespace nits (bleadperl@16811)
540     - Netware Perl version number tag when building dynamic libraries
541       needs to match the current perl version instead of being hard coded
542       (a mutation of bleadperl@16851)
543     - OS/2 bug in TEST_F target found by John Poltorak (bleadperl@16839)
544     - README in 6.00 still declared this as alpha.
545
546 6.00 Sat May 25 17:14:09 EDT 2002
547     - VMS 8-level limit test tweak (bleadperl@16764)
548     * Here goes nothing.
549
550 5.96_01 Wed May 22 19:11:09 EDT 2002
551     - Fixed ExtUtils::testlib so it doesn't taint @INC.
552     - Fixed ExtUtils::Command so it groks % shell wildcard on VMS.
553       [RT 625]
554     - MM now depends on Test::Harness 2.00 on VMS else tests with -T
555       won't work, command line too long.
556     - Added Craig's patch to fix limited level VMSs in the core.
557
558 5.95_01 Sat May 18 14:40:12 EDT 2002
559     - Fixed ExtUtils::testlib so it has a reasonable chance of working
560       under taint mode.
561
562 5.94_02 Fri May 17 17:16:04 EDT 2002
563     - Fixing Manifest.t test for relative @INC when core testing.
564
565 5.94_01 Fri May 17 14:53:54 EDT 2002
566     - Small NetWare change from Novell.
567     - worked around 5.005_03's lack of a $Config{siteprefix} and
568       $Config{sitebin}.
569     - Small cross compilation changes (bleadperl 16582, 16548)
570
571     [[ Test Fixes ]]
572     - Fixing ExtUtils::Command tests for VMS shell wildcard differences.
573     - Fixing ExtUtils::Installed tests so they don't go looking at already
574       installed installed lists.
575
576 5.93_01 Mon May  6 00:54:39 EDT 2002
577     - fixed basic.t for limited depth VMS systems
578     * MM_BeOS was totally hosed by a typo.
579     - Made the ExtUtils::Command docs clear about how things come
580       from @ARGV not @_.
581     - Quieted nmake banners in disttest
582
583     * Backporting to 5.005_03
584     - 'require 5.006' statements to 5.00503
585     - Removing uses of File::Spec::Functions
586     - Adding MODE arg to mkdir()
587     - Changing uses of 'our' to 'use vars'
588     - Changing uses of 'no warnings' to 'local $SIG{__WARN__}'
589     - Changing 3-arg opens to 2-arg
590     - Changing 'open my $fh' to 'open FH'
591     - 5.005_03's File::Find doesn't have 'no_chdir'
592
593 5.92_01 Mon Apr 29 23:09:38 EDT 2002
594     - Fixing case of modules with no .pm files on VMS.
595     - LDLOADLIBS fix for NetBSD and easier overriding (bleadperl 16233)
596     * syncing in MM_MacOS from pudge.
597     - syncing in NetWare fixes (16266 & 16190)
598     - Cleaning up MM_NW5.pm somewhat.
599
600 5.91_02 Wed Apr 24 01:29:56 EDT 2002
601     - Adjustments to tests for inclusion in the core.
602
603 5.91_01 Wed Apr 24 00:11:06 EDT 2002
604     [[ API Changes ]]
605     * A failing Makefile.PL in a subdir will now kill the whole
606       makefile making process.
607     * "make install PREFIX=something" will no longer work.  Sorry.
608     - Now supporting the usevendorprefix %Config setting
609     - Tests now guaranteed to run in alphabetical order.
610     - Allowing $VERSION = 0.
611
612     [[ Bug Fixes ]]
613     - Missing prerequisite warning malformatted.
614     - INSTALL*MAN*DIR and INST_MAN*DIR weren't allowed on the command 
615       line.
616     * For years now skipcheck() has been returning a different
617       value than what was documented.
618     - Partially reversing Ken's "speed up ExtUtils::Manifest" patch
619       from 5.51_01 so MANIFEST overrides MANIFEST.SKIP.
620     * Fixed PREFIXification so it works on Win32.
621     * Fixed PREFIXification so it works on VMS.
622     - Fixed INSTALLMAN*DIR=none on VMS.
623     * NetWare fixes (bleadperl@16076)
624     - Craig Berry fixed some macro corruption on VMS.
625     - Systems configured to not have man pages now honored thanks to
626       Paul Green
627     - Hack to allow 5.6.X versions of ExtUtils::Embed use MY implicitly.
628     - Moved use of glob out of MM_Unix so MacPerl could build
629
630     [[ Test Changes ]]
631     - Shortening directory levels to accomodate old VMS's
632     - was using a slightly wrong prefix for the prefix tests
633
634     [[ Doc Fixes ]]
635     - Documenting VERBINST
636
637 5.90_01 Thu Apr 11 01:11:54 EDT 2002
638     [[ API Changes ]]
639     * Implementation of the new PREFIX logic.
640     * Added new INSTALL targets:
641         INSTALLSITEBIN
642         INSTALLSITEMAN1DIR   INSTALLSITEMAN3DIR 
643         INSTALLVENDORMAN1DIR INSTALLVENDORMAN3DIR
644         INSTALLVENDORBIN INSTALLVENDORLIB INSTALLVENDORARCH
645         SITEPREFIX VENDORPREFIX
646     * INSTALLDIRS=site now properly using $Config{siteprefixexp}
647       (Thieved from Debian.  Thanks!)
648     * Added INSTALLDIRS=vendor & support for vendor directories
649       (Thieved from Debian.  Thanks!)
650
651     [[ Bug Fixes ]]
652     - nmake syntax nits from Mattia Barbon
653     - ExtUtils::Packlist fix for files with spaces in them from Jan Dubois
654       (bleadperl@15800)
655     - Old, old, old dmake bug in MM_Win32->pm_to_blib fixed by Nick
656       (bleadperl 15847)
657
658     [[ Internals ]]
659     - Purging leftover PDP compiler flags.
660
661 5.55_03 Sat Apr  6 21:57:01 EST 2002
662     - Reversing "fix" for RT 444.  It wasn't really fixed and it
663       caused havoc with Compress::Zlib and Tk.
664
665 5.55_02 Sat Apr  6 03:09:15 EST 2002
666     [[ Bug Fixes ]]
667     - Craig Berry fixed install on VMS (again, I munged the last patch)
668     - MakeMaker might not be recognizing it's in PERL_SRC on Win32.
669       Made safer.
670     - For some reason MM_VMS was using $Config{arch} instead of
671       $Config{archname}
672     - Fix (well, hack) for creating ABSPERL on VMS.
673     - Quieting some warnings revealed by ExtUtils::Constant
674     - test_via_script had a typo and forgot INST_ARCHLIB
675
676     [[ Test Fixes ]]
677     - INST.t has to tell MakeMaker it's in the PERL_CORE
678     - Fixing expected values of INST_* when building the core.
679
680 5.55_01 Thu Apr  4 23:58:06 EST 2002
681     [[ API Changes ]]
682     * Long deprecated INST_EXE completely removed.
683     - Removing TEST_LIBS constant (never seen in a stable MM anyway)
684     - Added $default argument to prefixify() for safer prefixification.
685
686     [[ Bug Fixes ]]
687     - $mm->{PERM_*} were not being set
688     - fixin() redundantly chmod'ing scripts.  Let the Makefile do that.
689     - The above means MM_Unix will now compile cleanly under strict
690     * init_dirscan's search for Makefile.PL's will no longer look
691       inside a distdir.
692     * Fixed running tests when there are t/'s in subdirs.
693     - MM_DOS inheriting from MM_Unix instead of MM_Win32.  DJGPP
694       appears to be unix-like (bleadperl@15650)
695     - Escaping constants with # in them so they're not confused as
696       make comments (bleadperl)
697     * ExtUtils::MM_Win95 didn't return a true value
698     - Fixing disttest when perl is a relative path.
699     * Fixed disttest & tests in subdirs on Win95
700     - Fixed recursive Makefile.PL scan on VMS so it skips the distdir
701     - Fixed a bug when an alternative MAKEFILE is specified and you're
702       using something other than a Makefile.PL (RT 444)
703     - Quieting uninit warning when there are no tests.
704
705     [[ Doc Fixes ]]
706     - Documented INSTALLMAN*DIR == 'none' feature.
707
708     [[ Test Fixes ]]
709     - Paul Green's which_perl patch to build a proper Perl on systems
710       that use command extensions.
711     - basic.t's Makefile.PL PREFIX call wasn't properly quoted for VMS
712       (Craig Berry)
713     - little initialization glitch in MM_Win32.t
714
715     [[ Internals ]]
716     - INST_* constants moved to init_INST
717     - INSTALL* constants moved to inst_INSTALL
718     * Internal warning supression removed.
719     - Temporarily turning off SelfLoader in MM_Unix so warnings
720       have the right line numbers.
721
722 5.54_01 Sat Mar 30 02:32:44 EST 2002
723     [[ New Features ]]
724     * Added FULLPERLRUN and FULLPERLRUNINST
725
726     [[ Bug Fixes ]]
727     - hint files were made a little too noisy in 5.53_01
728
729     [[ Test Fixes ]]
730     - adjusting for NFS time drift
731     - basic.t was finding the wrong perl in the core
732
733     [[ Internals ]]
734     - FULLPERL* PERL* setup moved to init_PERL
735
736 5.53_02 Fri Mar 29 04:47:44 EST 2002
737     - Adjusted for Perl core.  Synced into bleadperl.
738
739 5.53_01 Fri Mar 29 00:13:02 EST 2002
740     [[ Bug Fixes ]]
741     - Removed duplicate NAME macro definition
742     - Fixed makemakerdflt target for VMS
743     * bleadperl@11460 introduced a bug with recursive Makefile.PL's not
744       having '.' in @INC.  PDL should build now.
745     * MANIFEST.SKIP only working on file names, not full relative paths.
746       Only since 5.51_01  (RT 413)
747     * make test TEST_VERBOSE=1 was busted by 5.50_01 (RT 423)
748     * Error messages from dying Makefile.PL's and hint files were
749       accidentally supressed in 5.48_04.  Fixed.
750     * Makefile.PL's are supposed to be run in package main.  5.48_04
751       broke this.  Fixed.
752     * Fixing installing on VMS.
753
754 5.52_01 Tue Mar 26 00:24:26 EST 2002
755     [[ Bug Fixes ]]
756     * ActivePerl 5.6.1/build 631 now 100%
757     - Fixed some SelfLoader warnings
758     * ExtUtils::MM_Win32 not subclassed off of ExtUtils::MM_Any properly
759     - Bug in local $ENV{FOO} was causing failures in MM_Win32 tests.
760       Compensating for the bug.
761     - $Config{prefixexp} is sometimes bad on ActivePerl, compensating
762     - Accidentally left htmlifypods tests in MM_Win32 tests
763
764     [[ Doc Changes ]]
765     - Expanding Known Good list
766     - Adding Known Programs to README
767
768 5.51_01 Mon Mar 18 01:37:02 EST 2002
769     [[ API Changes ]]
770     - Removing xsubpp and typemap from the distribution.  These are not
771       Perl version independent files and should not be upgraded.
772     - Removing ExtUtils::Embed.  Version specific module and should
773       not be updated.
774     - Removing ExtUtils::Constant.  Not directly tied to MakeMaker.
775       Will be distributed seperately by Nick Clark.
776
777     [[ New Features ]]
778     * realclean now deletes 'dist' directory.
779
780     [[ Bug Fixes ]]
781     * Fixing ExtUtils::Installed for VMS
782     * Fixed it so MakeMaker can build itself without needing an eariler
783       version installed
784     * Fixed ExtUtils::Installed so packlists work on VMS
785     * ExtUtils::MM_VMS test had a stupid typo that prevented most
786       of the tests from running.
787     - Fixing VMS so 'mmk' is always 'mmk all' (bleadperl 15218)
788     - ExtUtils::MM_Any->catfile was calling catdir
789     - Added Ken William's "speed up ExtUtils::Manifest" patch.
790     - Added Nick Clark's return value of manifest routines patch
791       (bleadperl@14978)
792     - Merging in bleadperl changes (14438, 14453, 14611, 14612, 14622,
793       14655, 14677, 14688, 14902, 15023, 15187, 15367)
794     - bleadperl change 15325 (VMS 'mmk all' hack) rejected.
795     - ExtUtils::MM_Any->test_via_harness() now using -MExtUtils::testlib
796       instead of -I's.  This keeps the command line shorter on VMS, but
797       it means TEST_LIB doesn't work anymore.  May prove problematic.
798     - PERLRUN now uses FULLPERL instead of PERL.  This avoids 
799       accidental use of miniperl.  May cause problems in the core.
800     - Fixed test_via_harness() on VMS so it uses PERLRUN.
801     - ExtUtils::Manifest wrongly handling MANIFEST on VMS.
802     - ExtUtils::Manifest::maniskip broken due to misuse of /o on a regex.
803
804 5.50_01 Mon Mar  4 23:44:48 EST 2002
805     [[ API Changes ]]
806     - htmlifypods and all HTML targets have been removed.  It didn't
807       work properly.  A target for HTMLifying of docs will be
808       added sometime in the future (read: send a patch).
809     - Deprecated ROOTEXT variable removed (its been deprecated for
810       more than five years).
811     - Removed ExtUtils::Miniperl from the CPAN distribution.  Can't
812       see how its useful outside the core.
813
814     [[ New Features ]]
815     * Emacs backup files (ie. *~) are no longer copied into blib
816       (this means you won't get Foo.pm~ accidentally installed anymore).
817     - prefixify() now returns if the prefixification worked or not.
818     - added the Perl patchlevel info to the description embedded in DLLs
819       (Ilya Zakharevich perl change 14810)
820
821     [[ Bug Fixes ]]
822     * 5.49_01 broke anything that depended on the MM class to be loaded
823       with ExtUtils::MakeMaker, like CPAN.  Temporarily fixed.
824     * Many places wrongfully assume MM methods can be called as class
825       methods!  Inside and outside of MakeMaker.
826     * DOS now acts like Win32 instead of Unix.  This should be less wrong.
827     - Netware tweak from Ananth Kesari (perl change 14780)
828
829     [[ Doc Changes ]]
830     * made the docs about the behavior of PREFIX a bit more vague
831       reflecting its odd behavior.    
832     - Replaced references to %Config with things people are more likely
833       to understand in PREFIX & LIB docs.
834     - Put PREFIX before LIB in the docs.
835
836     [[ Internal Refactorings ]]
837     - File::Spec wrappers consolidated in MM_Any
838     - test_via_harness/script consolidated in MM_Any
839     * Added ExtUtils::Command::MM to replace large -e "one-liners"
840     * Added ExtUtils::MM_UWIN, took UWIN specific code out of MM_Unix.
841     * Added ExtUtils::MM_DOS, took some DOS specific code out of MM_Unix
842     - Added a dist() override to MM_OS2.
843     - Took the OS/2 specific code out of MM_Unix's dist()
844     - Starting to quote as many command line switches as possible
845       to make VMS have to override less of MM_Unix.
846
847 5.49_01 Mon Feb  4 00:42:40 EST 2002
848     - Default TEST_LIBS now contains absolute paths, so tests can
849       chdir without breaking @INC.
850     - Some bug fixes in MM_Win32 were missing in MM_NW5.
851     - LLIBPERL was not being set.
852     - Gisle Aas fixed a warning in prompt when the user hits ctrl-D
853       or pipes STDIN to /dev/null.
854     - VMS's test is now a proper ->can check.
855     - Stray newline in Command.t causing havoc (bleadperl 14441)
856
857     * Lots of internal changes.  Everything from here on is an internal
858       change.
859     - Broke ExtUtils::Liblist::Kid out into its own .pm.  Temporary.
860     - Broke MM and MY out into their own .pm's.  Possibly temporary.
861     - Broke ExtUtils::MM_Win95 out of ExtUtils::MM_Win32.  MM_Win95
862       is now an MM_Win32 subclass.
863     - Removed wrapper methods from ExtUtils::Liblist that were
864       defering File::Spec loading.  Almost everything uses File::Spec
865     - Changed most of the 'our's to 'use vars' in prep for 5.005_03
866       backporting
867     - Changed ExtUtils::MakeMaker->import(...) cargo-cultery in MM_* 
868       modules to proper "use ExtUtils::MakeMaker qw(...)"
869     - All non-Unix MM_* modules now directly inherit from MM_Unix.
870       They did this before, but in a round-about way.
871     - MM_* modules no longer directly muck with @MM::ISA.  Instead
872       @MM::ISA does that itself.
873     - Removed unnecessary require of Exporter in many MM_* modules.
874     - MM_Cygwin was using an MM_Unix function directly without have
875       explicitly required MM_Unix.
876     - Most of MM_NW5 was redundant with MM_Win32.  So MM_NW5 is now
877       a subclass of Win32 and the reduendant code has been deleted.
878     - Replaced lots of calls to File::Spec->updir, curdir and rootdir
879       with a global in MM_Unix.  Should make things a bit faster.
880     - Untabified ExtUtils::MakeMaker.  I hate tabs.
881     - "Which MM subclass should I use" logic moved from EU::MakeMaker
882       to EU::MM.
883     - Deprecated EU::MakeMaker::Version_check deleted.
884
885 5.48_04 Mon Jan 21 19:28:38 EST 2002
886     - No longer requiring Test::More
887     - Now tested to work with a clean 5.6.1
888     - Stripped out $Revision based $VERSIONs.
889     - Rolled in patches from p5p, vmsperl & VOS (14325, 14338, 14360, 14364)
890     * hint files now run in a safer context.  Only $self is available.
891     - ExtUtils::testlib now provides absolute paths into @INC.
892       No longer obsolete
893     - Little test fixes
894
895 5.48_03 Thu Jan 17 23:44:38 EST 2002
896     * moved bin/inst to bin/instmodsh
897     * Some Win32 backporting fixes.  The -x switch doesn't seem to
898       work on Win32/5.6.1.
899     * Bug on Win32.  MAKEMAKER variable not set properly.
900     * _02 broke hints files.  Now fixed.
901     - Minor prereq error formatting glitch
902     - ExtUtils::testlib no longer a thin wrapper around blib, now a 
903       thin wrapper around lib like it was.  blib is noisy on 5.6.1.
904     - Nick and chromatic found and fixed some warnings in the tests
905
906 5.48_02 Wed Jan 16 19:11:26 EST 2002
907     - Fixed some Win32 warnings.  Needs more work.
908
909 5.48_01 Wed Jan 16 15:10:28 EST 2002
910     * Adapted from bleadperl@14303
911     * Backported to 5.6.1
912     - inst and xsubpp moved out of lib/ and into bin/
913     - ExtUtils::testlib obsoleted.  Now a thin wrapper around blib.pm
914     ***--> Non-Unix platforms not tested at all!  Please test and report
915            back.  Tests probably only need minor fixes.
916