summaryrefslogtreecommitdiff
path: root/dist/ExtUtils-CBuilder
Commit message (Collapse)AuthorAgeFilesLines
* ExtUtils-CBuilder: Remove image-base generation on Win32/gccZakariyya Mughal2021-02-1215-25/+23
| | | | | | | | | | Switches from generating an image-base address using the basename of the output file to using GCC's built-in `--enable-auto-image-base` linker option. This aligns the linking behaviour for Win32/gcc with that of ExtUtils-MakeMaker which removed image-base generation in commit <https://github.com/Perl-Toolchain-Gang/ExtUtils-MakeMaker/commit/343d21a453c4d03cf7304dbd4c4dd8180df574ad>.
* add gitignore exclusions for files in gitGraham Knop2020-11-231-0/+1
| | | | | | | | There are a number of files excluded using gitignore rules that are included in the repository. This can lead to confusion if something other than git tries to read the ignore files. Add rules to the gitignore files so that these files won't be ignored.
* Update ExtUtils-CBuilder to CPAN version 0.280235Chris 'BinGOs' Williams2020-11-1416-16/+27
| | | | | | | | | | | [DELTA] 0.280235 - 2020-11-01 Fix: - Fix compilation on darwin with XCode 12 (-Werror=implicit-function-declaration) Thanks to DrHyde for the patch.
* Update ExtUtils-CBuilder to 0.280234Alberto Simoes2020-01-2117-19/+25
|
* Change bug URL from http://rt.perl.org to https://rt.perl.orgMax Maischein2019-10-111-2/+2
| | | | | | | | | | | | | This updates the bug tracker URL from http://rt.perl.org to https://rt.perl.org. There is a place in the code, in corelist.pl, that is sensitive to the URL of the bug tracker. This now understands both versions of the bug tracker URL. Ideally, this will be consolidated once the dust settles. This patch also updates ExtUtils::CBuilder, Safe, threads and threads::shared to point to the new bug tracker URL.
* Perl5 git is on httpsMax Maischein2019-10-111-1/+1
|
* ExtUtils::CBuilder: Add L<> around a link in the podKarl Williamson2019-05-251-2/+2
|
* Update EU::CBuilder to 0.280231Alberto Simões2019-03-3114-13/+20
| | | | Committer: additional email address for contributor
* quotemeta the stuff intended literally in REEd J2019-03-302-3/+3
| | | | | | For: RT 133966 Committer: Bump $VERSION in dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Base.pm
* Sync ExtUtils-CBuilder with CPAN release 0.280230Alberto Simões2017-11-2215-16/+45
| | | | | | | | | 0.280230 - 2017-11-22 Fixed: - Updated Changes - Used OurPkgVersion instead of PkgVersion
* Replace multiple 'use vars' by 'our' in distNicolas R2017-11-1111-32/+22
| | | | | | | | | | | | | | | | | | | | Using vars pragma is discouraged and has been superseded by 'our' declarations available in Perl v5.6.0 or later. Additionally using 'vars' pragma increase the memory consumption of a program by about 700 kB for no good reason. This commit is about replacing the usage of 'vars' pragma by 'our' in blead where it makes sense. ( leaving 'cpan' directory outside of the scope ) -- using vars perl -e 'use vars qw(@ISA $AUTOLOAD $VERSION); print qx{grep RSS /proc/$$/status} ' VmRSS: 2588 kB -- using our instead perl -e 'our (@ISA, $AUTOLOAD, $VERSION); print qx{grep RSS /proc/$$/status} ' VmRSS: 1864 kB
* Redirect STDERR to /dev/null instead of just closing itSteve Hay2017-10-251-4/+4
| | | | | See perl #132358: Just closing it leaves that file descriptor available for use by the next open(), which can have unforeseen consequences...
* ExtUtils::CBuilder - Fix link() on Windows, broken in version 0.280226Steve Hay2017-07-2016-16/+22
|
* fix ExtUtils-CBuilder tests for Perl 5.6Zefram2017-07-1917-21/+27
|
* perldelta for c7ac81d9d79d22d7d1133b804e5f8dc4a641fe39James E Keenan2017-07-151-1/+1
| | | | Signed-off-by: James E Keenan <jkeenan@cpan.org>
* Update to ExtUtils::CBuilder 0.280226Alberto Simões2017-07-1517-27/+44
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | File::Basename::fileparse(), when called with two arguments, is documented to return a list of three elements: The non-suffix part of the file's basename. The file's dirname, plus trailing path separator. The suffix part of the file's basename. Thus, my ($name,$path,$suffix) = fileparse('/tmp/perl/p5p/foo.patch', qr/\.[^.]*/); returns: $name: foo $path: /tmp/perl/p5p/ $suffix: .patch If we want to take those values and compose a path with File::Spec->catfile(), we have to bear in mind that File::Spec generally expects to have directories precede filenames in its arguments. Thus, the correct way to use the values returned by fileparse() would be: my $cf = File::Spec->catfile($path, $name . $suffix); In ExtUtils::CBuilder::Base::new(), however, the return values from fileparse() were named in a way that suggested that the first value would be the dirname and the second would be the non-suffix part of the basename: my ($ccpath, $ccbase, $ccsfx ) = fileparse($self->{config}{cc}, qr/\.[^.]*/); $ccpath -- which here is really a basename -- was then used as the first argument to catfile(): File::Spec->catfile( $ccpath, $cxx, $ccsfx ) In addition, in the above $ccsfx should not have been a separate argument. Rather, it should have been concatenated without a path separator to the second argument. For: RT # 131749. See also: https://github.com/Perl-Toolchain-Gang/ExtUtils-CBuilder/pull/6 (thanks to stphnlyd of Perl Toolchain Gang). Signed-off-by: James E Keenan <jkeenan@cpan.org>
* Switch most open() calls to three-argument form.John Lightsey2016-12-233-3/+3
| | | | | | | | | | Switch from two-argument form. Filehandle cloning is still done with the two argument form for backward compatibility. Committer: Get all porting tests to pass. Increment some $VERSIONs. Run: ./perl -Ilib regen/mk_invlists.pl; ./perl -Ilib regen/regcharclass.pl For: RT #130122
* add parallelness to win32/GNUmakefileDaniel Dragan2016-01-2516-17/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | -.UPDATEALL is dmake only, doesn't exist in gmake, create more targets instead GNUmakefile:1319: warning: overriding recipe for target '.UPDATEALL' GNUmakefile:1024: warning: ignoring old recipe for target '.UPDATEALL' -fix ok/nok targets on dmake and gmake -dont delete old mini config.h, the copy overwrites it, for dmake and gmake 1 less process to run this way -modify whitespace and comments between 2 makesfiles so there are less delta lines if the 2 are diffed, this aids in diagnostics -remove perlmainst.c/perlmain.c build products, just use runperl.c directly 1 less disk file to create and later clean and git status and 2 less nodes in the make graph to traverse, also better for C debugger, since "runperl.c" is around after a git clean of the source tree, and runperl.c is in every single callstack in perl. -remove copying mini config.h to CORE dir, pointless since (mini) config.h isn't an input to config_h.PL, remove the exit 1 from commit 137443ea0a from 5.003, rewriting config.h is not a reason to stop the build with a fatal error, vivify CORE dir or else sub copy() fails -deshell UNIDATAFILES/mktables, 1 less cmd.exe process and 1 less .bat file written to disk for gmake (dmake always uses cmd.exe ATM) -combining mini config.h AKA $(MINIDIR)\.exists shell append lines is for another commit -perlglob.exe is not installed, it doesn't need to be rebased, it is only needed for module building, removing the dep makes the dep graph simpler -rename PERLIMPLIB so the lib is built in its final location in CORE dir this removes an extra xcopy process run. Since perl dll's .a/.lib is not longer in the root of the source tree, change the 2 tests and ExtUtils::CBuilder::Platform::Windows to look at the uninstalled final location dir, not the root dir -fix typo 0.282224->0.280224 in dist/ExtUtils-CBuilder/Changes -for GCC PERLEXPLIB must be used, passing "perldll.def" on cmd line to g++ means all data globals with EXTCONST are exported (which have dllexport on their declaration) instead of just what is in perldll.def and globvar.sym, INTERN/EXTERN.h could be revised to fix that, but I am not doing that at this time. Also drop linking GCC perl523.dll from 3 processes to just 1 process like with VC builds. Removing 2nd run of dlltool fixes a race condition where libperl523.a was generated twice. This caused a race condition failure where linking a XS DLL failed because the GCC linker of the XS DLL saw a partially written libperl523.a. -Relocation was tested with $(LINK32) -v -mdll -o $@ -Wl,--disable-auto-image-base -Wl,--image-base -Wl,0x400000 $(BLINK_FLAGS) $(PERLDLL_OBJ) $(shell @type Extensions_static) $(LIBFILES) $(PERLEXPLIB) to g++ linker to force an address conflict and verified with VMMap (unrelocated perl523.dll has ~40KB private memory, relocated has ~240KB private memory on Win 7 32b), historically there are problems with dllexport and dlltool and relocation problems with mingw -$(COREDIR)\ppport.h in gmake is separate lines since gmake normally launches processes directly, not through the shell, so it is more efficent to keep it as multiple lines for gmake, while dmake likes to burn CPU and IO between each line, and runs each line through cmd.exe -disable parallel building in make_ext.pl by not passing MAKEFLAGS env var to any subprocess, EUMM is not ready for parallelness inside a module building on Win32 -have harness proc and child .t procs share same disk perl.exe and perl523.dll files, this way they share memory pages, makefile.mk does the same thing
* ExtUtils::CBuilder: silence noisy testDavid Mitchell2015-11-241-6/+26
| | | | | | | | 00-have-compiler.t deliberately does something that tries to fork and exec a non-existent file. Stop spurious 'Can't exec "djaadjfkadjkfajdf"' appearing on stderr by temporaily closing it before running the relevant tests.
* dist/ExtUtils-CBuilder/t/02-link.t: Skip on os390Karl Williamson2015-10-261-2/+2
| | | | | This module needs a little work for os390. But until someone wants/needs to have it done, we'll simply skip the test.
* Upgrade ExtUtils::CBuilder from version 0.280223 to 0.280224Steve Hay2015-10-1316-27/+53
|
* Update ExtUtils-CBuilder to CPAN version 0.280223Chris 'BinGOs' Williams2015-06-0317-27/+35
| | | | | | | | | | | | | | | | | | [DELTA] 0.280223 - 2015-06-02 Fixed: - Impose deterministic order on cpp-definition options. Heretofore, ExtUtils::CBuilder put cpp-definition options into the cc command line in non-deterministic order. This produced noise when diffing build logs. Make this order deterministic. (RT #124106) Added: - Add tests for ascii-betical order in t/04-base.t.
* Impose deterministic order on cpp-definition options.Zefram2015-06-014-45/+58
| | | | | | | | | | | Heretofore, ExtUtils::CBuilder put cpp-definition options into the cc command line in non-deterministic order. This produced noise when diffing build logs. Make this order deterministic. Add tests for ascii-betical order in t/04-base.t. Increment $VERSION in three packages. Remove commented-out line. For: RT #124106
* dist/ExtUtils-CBuilder/t/04-base.t: os390 fixKarl Williamson2015-03-171-1/+9
|
* Corrections to spelling and grammatical errors.Lajos Veres2015-01-291-1/+1
| | | | | | | | | Extracted from patch submitted by Lajos Veres in RT #123693. This commit applies those patches to files under dist/ *other than* those pertaining to Tie-File. Update $VERSION in Dumper.pm and Storable.pm after re-applying patches from RT
* Revert "Corrections to spelling and grammatical errors."James E Keenan2015-01-291-1/+1
| | | | | | | | | | | | | This reverts commit 5bf4b3bf13bc4055684a48448b05920845ef7764. On p5p-list, Steve Hay wrote on 2015-01-29: "... these and other changes to Tie-File could break backwards compatibility. The keys of %opt are passed in from user code, so we can't change the expected key from "autodefer_threshhold" to "autodefer_threshold" without also asking users to change their code, which is probably more hassle than it's worth." Parts of the reverted commit will be re-committed from a new patch.
* Corrections to spelling and grammatical errors.Lajos Veres2015-01-281-1/+1
| | | | Extracted from patch submitted by Lajos Veres in RT #123693.
* Version bump for ExtUtils::CBuilder.Craig A. Berry2014-12-1312-12/+12
|
* Remove VAXC special cases from ExtUtils::CBuilder.Craig A. Berry2014-12-131-4/+1
| | | | | | VAX C was a pre-ANSI compiler that was superceded about fifteen years ago, so there is no reason to include special cases for it now.
* Tru64: the cluster filesystem is special.Jarkko Hietaniemi2014-10-071-1/+7
| | | | | (It has non-POSIX interfaces and semantics which probably should be left outside e.g. Cwd::realpath()).
* Adds a missing 'use Config' on android.pm file.Alberto Simões2014-09-2815-14/+21
| | | | | | Update $VERSION in each platform-specific module. For: RT #122860
* Upgrade ExtUtils::CBuilder from version 0.280217 to 0.280219Steve Hay2014-09-121-5/+4
|
* Update ExtUtils::CBuilder to version 0.280219. Correct one test.Alberto Simões2014-09-0117-50/+46
| | | | | | | | Switch to using VERSION_FROM in Makefile.PL. For: RT #122675 Add update to ExtUtils::CBuilder to perldelta.
* ExtUtils::CBuilder: On Android, link to both -lperl and $Config{perllibs}Brian Fraser2014-08-0914-14/+16
| | | | | | | This is done because quite a bit of CPAN assumes that if libperl.so links to something, then you'll get those functions for free, but that is not the case on Android.
* Incorporate changes from CPAN release of ExtUtils-CBuilderChris 'BinGOs' Williams2014-03-083-28/+34
|
* CBuilder::Android: fix ->link() to respect wantarray.Brian Fraser2014-02-0516-15/+17
|
* CBuilder, link: On Android, always return absolute paths to librariesBrian Fraser2014-02-0314-15/+25
| | | | | | | | | | | | Several modules on CPAN expect being able to pass the library name returned by ->link to DynaLoader::dl_load_file and have it Just Work. However, because ->link returns relative paths, those modules ran afoul of Android's linker, which will only look in a handful of hardcoded system directories for relative libraries, plus whatever LD_LIBRARY_PATH pointed to at the start of execution. This commit makes ->link on Android always return an absolute path, which will be found by the linker.
* Up the version of ExtUtils::CBuilderBrian Fraser2014-01-2614-14/+14
|
* CBuilder, android: Fix the useshrplib checkBrian Fraser2014-01-261-1/+1
|
* ExtUtils::CBuilder: Android with useshrplib needs -lperlPiotr Roszatycki2014-01-261-0/+27
|
* Teach ExtUtils::CBuilder to handle mod2fname properlyBrian Fraser2014-01-0315-40/+31
|
* Upgrade ExtUtils::CBuilder from version 0.280210 to 0.280212Steve Hay2013-09-0919-43/+81
|
* Updated ExtUtils::CBuilder to 0.280210Leon Timmermans2013-09-071-0/+7
|
* Prevent ExtUtils-CBuilder leaving test output on WindowsSteve Hay2013-08-291-16/+39
| | | | | | | | | | The link function call in the have_compiler and have_cplusplus tests create a compilet.def file on Windows which is correctly recorded for cleaning up when the EU::CB object is destroyed, but if another one gets made in the meantime then ExtUtils::Mksymlists::Mksymlists moves the first one to compilet_def.old, which isn't recorded for cleaning up and gets left behind when the test script has finished. Using a new object each time, destroying the previous one first, prevents this.
* typo fix for ExtUtils::CBuilderDavid Steinbrunner2013-05-251-2/+2
| | | | Bump $VERSION.
* Remove 2 superfluous use lines from ExtUtils::CBuilder.Nicholas Clark2013-05-211-3/+1
| | | | | | | | | use IO::File was added with the upgrade to 0.23 (commit c3fb68a339256eb3 in April 2008), but the use of IO::File in the code was eliminated by the upgrade to 0.2800 (commit 06e8058f27e4269b in Dec 2010), which replaced the code in question with use of File::Temp. The latter refactoring also added the use Data::Dumper; line, but did not add any code which uses Data::Dumper.
* Subject: [PATCH] Update INSTALLDIRS to favor installation under 'site'.James E Keenan2013-04-142-1/+2
| | | | For: RT #116479
* Bump $ExtUtils::CBuilder::VERSION and add Changes entry for prelink() fixSteve Hay2012-10-0314-13/+20
|
* Add missing Changes entries for ExtUtils-CBuilder per its README.patchingSteve Hay2012-10-031-0/+14
|
* Allow a list of symbols to export to be passed to link() when on Windows, as ↵Eric Brine2012-10-031-1/+2
| | | | on other OSes.