cpan Module-Build 0.22

latest releases: 2.232012, 0.1.11, 0.5...
20 years ago
  • 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 '. [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.

Don't miss a new Module-Build release

NewReleases is sending notifications on new releases.