📄 changes
字号:
through the subclass() method, passthrough Makefile.PLs (of type 'passthrough' or 'small') didn't work properly, because the custom builder module wouldn't be loaded at the right time. This has been fixed. [Reported by Toby Ovod-Everett] - In M::B-generated 'traditional' Makefile.PLs, the entries in 'PREREQ_PM' are now sorted ASCIIbetically rather than randomly. - The install_types() method will now return any additional types given as 'install_path' arguments, as well as all elements of the current 'install_sets' entry. This makes it easier to add new types of installable objects to the mix. - As a consequence of the previous change, there is no longer any need to have an explicit 'install_types' data member, so it has been removed. - In the second example code for the Module::Build->subclass() method, the Module::Build module needed to be loaded before calling its methods. [John Peacock] - Fixed minor error in the POD structure of Module::Build and Module::Build::Platform::VMS docs.0.24 Wed Feb 25 15:57:00 CST 2004 - Fixed a problem with incude_dirs not being propagated to the 'ccs' file when compiling XS files on Win32. [Randy Sims and Steve Hay] - In 0.23, Module::Build::Compat->fake_makefile() started choking when no 'build_class' parameter was supplied in the Makefile.PL. Since these Makefile.PLs still exist on CPAN, we now default 'build_class' to 'Module::Build', which was the old 0.22 behavior anyway. [Reported by Martin Titz and Jeremy Seitz] - Added documentation for the 'include_dirs' parameter to new(). [Steve Hay] - Changed the no-op command on Win32 from 'rem' to 'rem>nul' inside pass-through Makefiles. [Randy Sims] - The 'autosplit' parameter now accepts an array reference if multiple files should be split. [Jaap Karssenberg] - find_perl_interpreter() will now use $^X (if absolute), $ENV{PATH} (if $^X isn't absolute), and $Config{perlpath}, in that order. Also, we now make darn sure the result is the same version of perl, by checking Config::myconfig() for a match against the current perl. [Reported by Edward Sabol] - Fixed a fatal error on Win32 (and any other platform that doesn't define an installation location for Unix-style man pages) during installation.0.23 Sun Feb 8 22:01:18 CST 2004 - Fixed a compatibility problem in pass-through Makefiles (created by Module::Build::Compat). Some 'make' utilities (for example, BSD make) didn't like a '@' by itself on a line, so we stole some 'NOOP' code from MakeMaker to fix it. [Reported by Mathieu Arnold] - Added a 'ppm_dist' action, which just makes the PPD file and then makes a tarball out of the blib/ directory. [Randy Sims] - The @INC of the parent process is now propagated to child processes when processing *.PL files. [Reported by Jaap Karssenberg] - We now only attempt to fix the shebang line on a script if the shebang line matches the regex /perl/i . This fixes some instances where people put shell scripts in their distributions. [Jaap Karssenberg] - We no longer generate a 'requires', 'recommends', 'conflicts', etc. entry in the META.yml file if there's no data to go in it. - Added a documentation reference to Michael Schwern's wiki for tips on conversion from MakeMaker to M::B. [Randy Sims] - If there are script_files, we now add EXE_FILES to the 'traditional' Makefile.PL generated by M::B::Compat. [Suggested by Yuval Kogman] - Documented the 'test_files' parameter to new(). [Reported by Tony Bowden] - Fixed a problem in "Build help <action>", which didn't find the correct help chunk if <action> was the final element in a POD list. [Jaap Karssenberg] - Fixed a problem in the get_action_docs() method which gave incorrect results if the method was called more than once in the same program. - Fixed a problem in which actions defined by user subclasses wouldn't be available via the pass-through Makefiles created by Module::Build::Compat. [Reported by Jaap Karssenberg] - We now use Data::Dumper instead of our own ad-hoc serialization routines to create the 'traditional' Makefile.PL arguments. [Suggested by Yuval Kojman]0.22 Sat Jan 10 22:05:39 CST 2004 - On Unixish platforms, the syntax "FOO=BAR /bin/baz arg arg" now works when present in $Config{ld}. This solves a problem on Mac OS X 10.3. [Reported by Adam Foxson] - The have_c_compiler() now also tests whether the linker seems to work too. - Fixed a problem with creating the distribution tarball in which permissions would usually be all read-only. We now use our own file-copying routines rather than those in ExtUtils::Manifest, because those do some annoying extra permissions-setting stuff for no apparent reason. It makes me happy that this was a very very easy patch to make. [Reported by Thomas Klausner] - The compile_c() method now includes $Config{cccdlflags} in its command invocation. It's usually empty, but not always, so we didn't notice for a while. [Richard Clamp] - On some platforms it's common to have a $Config{make} defined, but no 'make' utility actually available. We now detect this and skip some 'make' compatibility tests. [Randy Sims] - Fixed a spurious testing failure on non-Unix platforms that happened because we accidentally call localize_file_path() on empty strings in the test suite. [Spotted by Randy Sims on Windows] - Made the 'name', 'abstract', 'author', and 'version' properties required when building a PPD file. [Spotted by Randy Sims, Dave Rolsky, & Glenn Linderman] - When building a 'traditional' Makefile.PL with Module::Build::Compat, we now use 'VERSION_FROM' when possible, rather than always using 'VERSION'. This way the Makefile.PL doesn't have to get modified every release. - Made some fixups to the 'PPM' info-file, improving compatibility with ActiveState's PPM tools. [Randy Sims, Glenn Linderman] - The 'dist_author' property can now accept multiple authors, see the docs for more info. [Randy Sims] - If the user doesn't have YAML.pm installed during ACTION_dist, we now create a minimal YAML.pm anyway, without any dependency information. - The 'distribution_type' field is no longer created in META.yml files, in accordance with the finding made at the London CLPAN meeting that it's essentially meaningless and ill-defined. - The 'dist' action now accepts an optional 'tar' parameter to use a system utility for building the tarball, and a 'gzip' parameter for compressing it. If these are used, Archive::Tar won't be invoked. This was added because Archive::Tar is producing some very non-cross-platform tarballs that many tar utilities can't handle. - During testing, if YAML.pm isn't installed, then we won't try making a tarball either, since this would invoke YAML to create the META.yml file. - Fixed a problem with chmod() being called incorrectly on MacOS (i.e. MacPerl, not Mac OS X). [Spotted by Paul Sanford Toney] - Fixed a problem with the --config flag not being treated properly (essentially ignored) on the command line for 'perl Build.PL' or 'Build <action>'. [Spotted by Jakub Bogusz] - Added a new config() method to get at the Build object's notion of the %Config hash. - Test::Harness is starting to contend for the Most Crotchety Module Award. Work around a few of its nits when setting harness switches. [Spotted by Diab Jerius] - Now the Build script will die() if we're run from the wrong directory, rather than trying to chdir() to what it thinks is the right directory and do its work there. See https://rt.cpan.org/Ticket/Display.html?id=4039 . [Chris Dolan] - Changed the manpage separator on OS/2 to '.'. [Ilya Zakharevich] - On OS/2, disable C compilation, since apparently it isn't working there. [Reported by Ilya Zakharevich] - Inserted a comment into auto-generated Makefile.PLs saying it was auto-generated. [Randy Sims] - Fixed some annoying behavior in generated passthrough Makefile.PLs when the user chose not to install Module::Build, or if installation failed. [Reported by Ilya Zakharevich and Richard Clamp] - Moved the documentation for 'codebase' to the section where it's relevant. [Randy Sims, Glenn Linderman] - Fixed a have_c_compiler() failure on some platforms, we now define a boot_compilet() function (since we're compiling a library, not an executable). [Randy Sims] - Added a recipe to the Module::Build::Cookbook describing how to maintain compatibility with older versions of CPAN.pm [Jim Cromie] - Removed caveat about "looking for alternatives" in how hashes are specified on the command line, since an alternative has been found. - Previously most warnings about optional prerequisites looked like they were actually error messages about required prerequisites. This has been corrected. [Reported again by Sagar Shah] - Added support for building XS (and C in general) stuff on AIX. This was done by a small reorganization of prelink_c() method from Windows.pm to Build.pm, and it is only invoked for the platforms that need it invoked. AIX also massages some very naughty bits (MakeMaker macro variables) in $Config{lddlflags} that should never have been put there, but alas, they're there, so we find & resolve them. - Added OS/2 ($^O = 'os2') to the list of Unix-like platforms. This basically means that most platform-specific operations will be done in a Unix-like manner. - Pass-through Makefiles will now die() when they're given a PREFIX parameter, and suggest using 'destdir' or 'install_base' instead. Previously they just ignored the parameter and tried to install to the default location, which is clearly not what the user wanted. - Updated my email address in the documentation to a more recent variant. - Add NetBSD to the list of Unix-like systems. [Adrian Bunk] - Add SVR5 to the list of Unix-like systems. [Rafael Garcia-Suarez] - We now use Pod::Parser to find the ABSTRACT and AUTHOR when it's available on the system. [initial patch by Randy Sims] - Fixed a little scalar/list buglet in a documentation example.0.21 Wed Oct 15 20:47:05 CDT 2003 - Added a have_c_compiler() method. - Added documentation for the requires(), recommends(), build_requires(), and conflicts() methods. - On Unix platforms, we now create the "Build" script with a #! line matching the perl interpreter that was used to invoke the Build.PL script, rather than whatever is in $Config{startperl}. This avoids a potential warning about the interpreters not matching. [Spotted by Ken Y. Clark] - The Unix version now uses the safer multi-argument form of system() when building distribution tarballs. - Added a regression test for the 'dist' action to the t/runthrough.t test. - Fixed a problem with File::Spec usage when creating the names of 'libdoc' manual pages - the code wasn't dealing with the volume or file portions correctly on certain platforms. - When creating the names of the 'libdoc' manual pages, we no longer assume that pods are under the hard-coded paths 'blib/lib' or 'blib/arch'. - Fixed a crashing bug that could sometimes occur when the distribution contained no 'lib' directory. [Chris Dolan] - Fixed a crashing bug that happened when the user had .PL files in the lib/ directory and didn't explicitly name them in a hash reference to the new() constructor. [Chris Reinhardt, bug #4036] - .PL files are now passed the names of their target file(s) on the command line when they run. - When YAML.pm wasn't installed, t/runthrough.t wasn't properly skipping some tests that required YAML. This is now fixed. [Stephen J. Smith] - Added documentation for the dist_version() and dist_name() methods. [Spotted by Johan Vromans] - Existing values in $ENV{HARNESS_PERL_SWITCHES} are now respected and not squashed when we run the 'test' action. [Paul Johnson] - On cygwin, the separator string for manual page names has been set to '.'. Previously it was '::', inherited from Unix. [Yitzchak Scott-Thoennes] - Avoid a warning when Build.PL is run (i.e. when the new() method is called) and no MANIFEST file exists. [Michael Schwern and Kevin Ruscoe] - Added documentation for the 'code' and 'docs' actions. [Steve Purkis and Mark Stosberg] - The internal method compile_support_files() has been renamed to process_support_files() in order to make it consistent with other processing methods. Note that it was never documented using the old name. It's still not documented, actually. Maybe later. - Skip the 'write' pseudo-entry in the 'diff' acti
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -