summaryrefslogtreecommitdiff
path: root/make_ext.pl
Commit message (Collapse)AuthorAgeFilesLines
* Push the atime and mtime of generated Makefile.PLs back 4 seconds in make_ext.plChris 'BinGOs' Williams2011-06-271-1/+5
| | | | | | | In certain circumstances ( on virtual machines ) the generated Makefile.PL can produce a Makefile that is older than the Makefile.PL Altering the atime and mtime backwards by 4 seconds seems to resolve the issue.
* Don't quote target name in make_ext.pl.Craig A. Berry2011-06-251-2/+0
| | | | | | Even though it's presumably doing case-blind lookups of target names, MMS currently (V3.9-00) falls down hard when passed a target name in lower case.
* Use a buildcustomize.pl to set @INC in miniperl when building extensions.Nicholas Clark2011-02-151-35/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | With the build tools now shipped in various subdirectories of cpan/ and dist/ we need to add several paths to @INC when invoking MakeMaker (etc) to build extensions. The previous approach of using $ENV{PERL5LIB} was fragile, because: a: It was hitting the length limit for %ENV variables on VMS b: It was running the risk of race conditions in a parallel build - ExtUtils::Makemaker "knows" to add -I../..lib, which puts lib at the *front* of @INC, but if one parallel process happens to copy a module into lib/ whilst another is searching for it, the second may get a partial read c: Overwriting $ENV{PERL5LIB} breaks any system where any of the installed build tools are actually implemented in Perl, if they are relying on $ENV{PERL5LIB} for setup This approach a: Doesn't have %ENV length limits b: Ensures that lib/ is last, so copy targets are always shadowing copy sources c: Only affects miniperl, and doesn't touch $ENV{PERL5LIB} Approaches that turned out to have fatal flaws: 1: Using $ENV{PERL5OPT} with a module fails because ExtUtils::MakeMaker searches for the build perl without setting lib, and treats the error caused by a failed -M as "not a valid perl 5 binary" 2: Refactoring ExtUtils::MakeMaker to *not* use -I for lib, and instead rely on $ENV{PERL5LIB} [which includes "../../lib"] fails because: some extensions have subdirectories, and on these EU::MM correctly uses -I../../../lib, where as $ENV{PERL5LIB} only has space for relative paths, and only with two levels. This approach actually takes advantage of ExtUtils::MakeMaker setting an -I option correct for the depth of directory being built.
* In make_ext.pl, on Win32 avoid calling getcwd() twice in quick succession.Nicholas Clark2011-02-141-2/+3
|
* Fix typos (spelling errors) in misc. files.Peter J. Acklam) (via RT2011-01-071-3/+3
| | | | | | | | | # New Ticket Created by (Peter J. Acklam) # Please include the string: [perl #81894] # in the subject line of all future correspondence about this issue. # <URL: http://rt.perl.org/rt3/Ticket/Display.html?id=81894 > Signed-off-by: Abigail <abigail@abigail.be>
* Move ExtUtils-Command from cpan/ to dist/Florian Ragwitz2010-11-091-1/+1
| | | | Randy Kobes passed away recently, so let's have p5p maintain it for now.
* Move ExtUtils-Manifest from cpan/ to dist/Florian Ragwitz2010-11-091-1/+1
| | | | Randy Kobes passed away recently, so let's have p5p maintain it for now.
* No distinction between .PL and .pl if case is not preserved.Craig A. Berry2010-10-061-1/+1
| | | | | | | | Follow-up to 13b5e8d8173af2197798ae78b4520ece8cb1151c. On VMS, the CRTL downcases filenames by default, so pod2foo.PL comes through as pod2foo.pl. We need to match that so we paste on the right extension for the generated command procedure.
* Generate the core-only Makefile.PL for podlators using make_ext.Nicholas Clark2010-10-051-19/+29
| | | | | Using make_ext to generate it uses less code than committing a special core-only Makefile.PL to the repository, and is no more complex.
* make_ext.pl now writes Makefile.PL that cope with pod*.PL self-extractors.Nicholas Clark2010-10-051-6/+41
| | | | | | | The "fun" comes because 1: these extract as pod2foo.com on VMS, pod2foo everywhere else 2: these contain a chdir, which messes up relative paths in @INC
* Move PathTools from cpan/ to dist/Florian Ragwitz2010-07-241-3/+3
|
* We don't actually need constant to bootstrap the nonxs extensions.Nicholas Clark2009-10-021-1/+0
|
* Change 204606f4 ommited to update make_ext.pl's path to Text::ParseWordsNicholas Clark2009-10-021-1/+1
|
* removed PERL5LIB diagnostic output from make_ext.plDavid Golden2009-10-011-1/+1
|
* Move ExtUtils::Manifest from ext/ to cpan/Nicholas Clark2009-10-011-1/+1
|
* Move ExtUtils::Command from ext/ to cpan/Nicholas Clark2009-10-011-1/+1
|
* Move ExtUtils::MakeMaker from ext/ to cpan/Nicholas Clark2009-10-011-1/+2
|
* Tidy make_ext.pl, particularly the OS-specific code.Nicholas Clark2009-09-301-15/+23
|
* Refactor the code for determining where an extension is on disk.Nicholas Clark2009-09-301-16/+15
|
* On Win32, load File::Spec::Functions before chdir()ing somewhere where theSteve Hay2009-09-291-6/+7
| | | | relative paths in @INC don't work.
* Only require File::Spec::Functions on Win32, as only it needs rel2abs().Nicholas Clark2009-09-291-2/+6
| | | | | This seems easier than changing @INC so that it loads, but causing all other platforms to have to load a module they don't need.
* Fix distclean on Win32Steve Hay2009-09-291-31/+37
| | | | | | | | | | | | nmake realclean in the Encode sub-dirs didn't work because it needed an extra ../ on the relative paths in @INC. Make the paths absolute instead. nmake realclean in DynaLoader didn't work either because it tried to make DynaLoader.c... three times. Move the loop over @ext out of the loop over @dirs to fix the repetitions, but don't add DynaLoader.c anyway when just making a 'clean' target. Also clean up the XSLoader.pm that gets left behind.
* Move ExtUtils::Install from ext/ to dist/Nicholas Clark2009-09-291-1/+1
|
* Move Cwd from ext/ to cpan/Nicholas Clark2009-09-291-2/+3
|
* fix up ABSTRACT_FROMRobin Barker2009-09-271-1/+4
|
* Support building extensions in dist/ as well as cpan/ and ext/Nicholas Clark2009-09-261-1/+1
|
* Move File::Path from ext/ to cpan/Nicholas Clark2009-09-261-1/+1
|
* Move AutoLoader from ext/ to cpan/Nicholas Clark2009-09-261-1/+1
|
* Stop empty top-level directories in ext/ being treated as old-style extensions.Nicholas Clark2009-09-251-1/+4
| | | | | This is a work-around to cope with smokers that are not deleting directories that have been moved.
* Process the extension directories in alphabetical order.Nicholas Clark2009-09-251-2/+2
|
* Support building nonxs extensions from cpan/ on Unix.Nicholas Clark2009-09-251-1/+2
|
* Make make_ext changedir work with multiple scanned directories on Win32Max Maischein2009-09-241-3/+7
|
* Fix a22f28a4268aa03c - array, not array reference. (gnat would be proud)Nicholas Clark2009-09-241-1/+1
| | | | | Just because it's syntactically valid and "works on my machine", er OS, doesn't mean that it's bug free, even after careful inspection.
* Allow make_ext.pl to take multiple --dir options, and honour them all.Nicholas Clark2009-09-241-30/+32
|
* Support building extensions in cpan/ as well as ext/Nicholas Clark2009-09-241-1/+12
|
* Correct d6897368 - Win32 requires the correct path for -I for lib/Nicholas Clark2009-09-231-1/+1
|
* Following b0e687f7 Win32 requires an -Ilib to run pl2bat.pl with miniperl.Nicholas Clark2009-09-231-1/+1
|
* Reuinte File::Spec with the rest of the PathTools distribution in ext.Nicholas Clark2009-09-191-1/+1
| | | | | | | | | | It can't really be renamed from ext/Cwd to ext/PathTools, because Configure and Makefile.SH need to know the name of the shared object produced, and they infer this from the name of the directory. This concludes the migration of modules from lib to ext. Exporter and version remain in lib, but I don't think that there is any benefit in trying to move either of them.
* Make make_ext.pl set PERL_CORE=1 in the environment.Nicholas Clark2009-09-181-0/+1
| | | | | This simplifies the check in Makefile.PL, and means that "I'm building in the core" is passed down to build scripts invoked from the Makefile.
* Convert win32 to build DynaLoader with EU::MM in ext/DynaLoaderNicholas Clark2009-09-171-2/+9
| | | | | With help from Steve Hay. This converges the win32 build process with the ./Configure-based approach.
* Cwd.pm needs to be installed in lib before Encode recurses. Mark the dependencyNicholas Clark2009-09-151-0/+14
|
* Fix Win32 buildSteve Hay2009-09-131-1/+1
| | | | | | | | 1. Revert 7d8fed6 (rendered redundant by c3ef65f) 2. Change path to Cwd in make_ext.pl on Win32--Win32 runs make_ext.pl from the win32/ sub-directory, not from the top-level directory. 3. Likewise change path to Cwd in makefile invocations of xsubpp and splittree.pl.
* Avoid using 'lib' in make_ext.pl.Nicholas Clark2009-09-121-1/+3
| | | | This reduces ordering constraints in the build process.
* Move Cwd from lib to ext.Nicholas Clark2009-09-121-1/+2
| | | | | Obviously, it's going to take a bit more work to piece the PathTools distribution back together.
* Moved AutoLoader from lib/ to ext/Chris Williams2009-09-121-1/+1
|
* Avoid a parallel make race condition where we load a half-copied module.Nicholas Clark2009-09-121-1/+4
|
* Move File-Path from lib/ to ext/Chris Williams2009-09-111-1/+2
|
* Move ExtUtils::MakeMaker from lib to ext.Nicholas Clark2009-09-101-2/+2
| | | | | | | | | | t/lib/TieOut.pm is now from Test::Simple. Only the tests needed changing. The exceptions to BEGIN/PERL_CORE/INC boilerplate removal were two instances of "../.." becoming "../../../..", and changing an %INC test from "strict.pm" to "less.pm", as TestInit causes strict to be loaded via a relative path, when it loads File::Spec to convert all paths from relative to absolute.
* Move ExtUtils::Manifest from lib to ext.Nicholas Clark2009-09-101-1/+1
|
* Move ExtUtils::Install from lib to ext.Nicholas Clark2009-09-101-0/+1
|