1Revision history for Perl extension ExtUtils::CBuilder.
2
30.280236 - 2021-02-12
4
5  Fix:
6
7  - Remove image-base generation on Win32/gcc and instead use GCC's built-in
8    `--enable-auto-image-base` linker option.
9
100.280235 - 2020-11-01
11
12  Fix:
13
14  - Fix compilation on darwin with XCode 12 (-Werror=implicit-function-declaration)
15    Thanks to DrHyde for the patch.
16
170.280234 - 2020-01-21
18
19  Update:
20
21  - Updated standalone module from blead.
22
230.280231 - 2019-03-31
24
25  Fixed:
26
27  - Protected RE interpolation in Base.pm
28
29
300.280230 - 2017-11-22
31
32  Fixed:
33
34  - Updated Changes
35  - Used OurPkgVersion instead of PkgVersion
36
370.280229 - 2017-10-13
38
39  Fixed:
40
41  - Remove dependency to 'vars' package.
42
430.280228 - 2017-07-20
44
45  Fixed:
46
47  - Fix link() on Windows, broken in version 0.280226.
48
490.280227 - 2017-07-19
50
51  Fixed:
52
53  - Restore compatibility of test suite to Perl 5.6.
54
550.280226 - 2017-07-14
56
57  Fixed:
58
59  - Fix C++ compiler detection (RT #131749)
60    (thanks to stphnlyd)
61
620.280225 - 2016-01-04
63
64  Fixed:
65
66  - New location of libperl on Win32 when building core (RT #126632)
67
680.280224 - 2015-10-09
69
70  Enhancements:
71
72  - Use warnings/strict on all modules.
73
740.280223 - 2015-06-02
75
76  Fixed:
77
78  - Impose deterministic order on cpp-definition options.
79    Heretofore, ExtUtils::CBuilder put cpp-definition options
80    into the cc command line in non-deterministic order. This
81    produced noise when diffing build logs.
82    Make this order deterministic.  (RT #124106)
83
84  Added:
85
86  - Add tests for ascii-betical order in t/04-base.t.
87
880.280220 - 2014-09-27
89
90  Fixed:
91
92  - Added missing 'use Config' from 'android.pm' (thanks Debian community)
93
940.280219 - 2014-09-01
95
96  Fixed:
97
98  - Fixed regression on Android (thanks to Brian Fraser)
99
1000.280218 - 2014-09-01
101
102  Fixed:
103
104  - Mispelled 'starup' key in BCC support was fixed. #79574
105  - Fixed the version in the PM file (thanks to Jim Keenan)
106
1070.280217 - 2014-08-22
108
109  Fixed:
110
111  - Quoted perl path for Windows support #98245 [Alberto Simões]
112
1130.280216 - 2014-03-07
114
115  Added:
116
117  - Android support [Brian Fraser and Piotr Roszatycki]
118
119  Fixed:
120
121  - Teach ExtUtils::CBuilder to handle mod2fname properly [Brian Fraser]
122
1230.280212 - 2013-09-08
124
125  Fixed:
126
127  - Reversion all modules.
128
1290.280211 - 2013-09-08
130
131  Fixed:
132
133  - Missing dependency Perl::OSType [Leon Timmermans]
134  - Fixed repository location [Alberto Simões]
135
1360.280210 - 2013-09-06
137
138  Fixed:
139
140  - Update INSTALLDIRS to favor installation under 'site' (perl 116479)
141    [James E Keenan]
142
1430.280209 - 2012-10-20 (Perl v5.17.5)
144
145  Fixed:
146
147  - Allow options to be passed to prelink in Windows (perl #115100)
148    [Eric Brine]
149
1500.280208 - 2012-06-20 (Perl v5.17.1)
151
152  Fixed:
153
154  - Corrected location in which manifest file is looked for on
155    Windows (RT#35943, perl #111798) [snaury@gmail.com]
156
1570.280207 (Not released)
158
159  Fixed:
160
161  - Corrected test for existence of manifest file on Windows
162    (perl #111782) [Steve Hay]
163
1640.280206 - 2012-03-20 (Perl v5.15.9)
165
166  Documented:
167
168  - Added a SUPPORT section to indicate that upstream is Perl 5 core
169
1700.280205 - 2011-12-20 (Perl v5.15.6)
171
172  Fixed:
173
174  - Fixed bug picking up ccflags from Config
175
1760.280204 - 2011-06-20 (Perl v5.15.0)
177
178  Minor:
179
180  - Quotation style cleanup
181
1820.280203 - 2011-05-14 (Perl v5.14.0)
183
184  Fixed:
185
186  - Appends CFLAGS and LDFLAGS environments instead of overriding
187
188  - Reset ccflags on compilation for VMS.
189
190  Changed:
191
192  - Refactored OS name mapping to use Perl::OSType
193
1940.280202 - Sun Jan 23 10:47:51 EST 2011
195
196  - Different file names used for test files; allows EU::CB tests
197    to be run in parallel. [Florian Ragwitz]
198
1990.280201 - Fri Jan 21 15:16:36 EST 2011
200
201  Fixed:
202
203  - t/04-base.t no longer attempt to compile or link as this provokes
204    failures on main platforms
205
206  - Various typo fixes in Pod or comments
207
2080.2802 - Sun Dec 12 07:22:43 EST 2010
209
210  Fixed:
211
212  - Incorporated another t/04-base.t fix from bleadperl
213    [Chris Williams]
214
2150.2801 - Wed Dec  8 21:36:56 EST 2010
216
217  Fixed:
218
219  - Fixed spurious t/04-base.t failure when run from Perl core
220    [David Golden]
221
2220.2800 - Mon Dec  6 16:05:46 EST 2010
223
224  - No changes from 0.27_07
225
2260.27_07 - Wed Sep 29 21:48:55 EDT 2010
227
228  Fixed:
229
230  - Fixed t/02-link.t on perl < 5.8
231
2320.27_06 - Mon Sep 27 15:29:54 EDT 2010
233
234  Fixed:
235
236  - Preserves exit status on VMS [Craig Berry]
237
238  - Fix Win32 split_like_shell escaping [Christian Walde]
239
2400.27_05 - Wed Jul 28 15:29:59 EDT 2010
241
242  Fixed:
243
244  - Tests no longer fail if user has set the CC environment variable
245
2460.27_04 - Mon Jul 26 22:41:43 EDT 2010
247
248  Added:
249  - handle c compiler and c++ compiler separately
250    (adds requirement for IPC::Cmd) [Jens Rehsack]
251
252  Others:
253  - rely on File::Temp::tempfile and File::Spec::tmpdir to
254    get unique file name for checking for compiler
255    [Jens Rehsack]
256
257  - Code base modernization and substantial code coverage improvments
258    [Jim Keenan]
259
2600.2703 - Tue Mar 16 17:10:55 EDT 2010
261
262 Bugs fixed:
263 - fixed tests for Windows and MSVC [Jan Dubois]
264
2650.2702 - Mon Feb 22 15:10:52 EST 2010
266
267 Bugs fixed:
268 - compile() changes in 0.2701 did not work on Windows.  Now fixed.
269
2700.2701 - Tue Feb 16 09:12:45 EST 2010
271
272 Bugs fixed:
273 - compile() now accepts both string & array for 'include_dirs'
274   argument, as documented.(RT#54606) [Alberto Simões]
275
2760.27 - Thu Oct 29 21:29:56 EDT 2009
277
278 Other:
279 - Removed Build.PL to avoid creating a circular dependency
280 - Added version numbers to Windows compiler driver modules
281
2820.26_05 - Sun Oct 25 17:29:02 EDT 2009
283
284 Bugs fixed:
285 - Fixed t/02link.t failures on cygwin with Perl 5.8 [David Golden]
286
287 Other:
288 - Made have_compiler (and have_cplusplus) quiet without echoing
289   the test command to STDOUT [David Golden]
290
2910.26_04 - Mon Oct 19 21:57:46 EDT 2009
292
293 Enhancements:
294 - Added 'have_cplusplus()' method to check for C++ support
295 - Added patches for building Perl with mingw64 [Sisyphus]
296 - Allow CC environment variable to override $Config{cc}
297
298 Bugs fixed:
299 - Fixed link executable command for Win32 MSVC (RT#40819) [Cosimo
300   Streppone]
301 - Removed MSVC version check when embedding a manifest file
302   (RT #43002) [Steve Hay]
303
304 Other:
305 - Split Windows compiler driver packages into individual *.pm files
306
3070.260301 - Sat Aug 29 11:04:41 EDT 2009
308
309 Bugs fixed:
310 - Fixed linking error on Win32 with gcc compiler (RT#49000)
311   [kmx]
312
3130.2603 - Sat Jul 18 06:56:06 EDT 2009
314
315 Bugs fixed:
316 - Makefile.PL had wrong INSTALLDIRS setting for older Perls
317   (RT#47985) [David Golden]
318
3190.2602 - Sat Jul  4 10:57:12 EDT 2009
320
321 Bugs fixed:
322 - Fixed 00-have-compiler.t if $^X is a relative path [David Wheeler]
323
3240.2601 - Wed Jul  1 09:37:39 EDT 2009
325
326 Bugs fixed:
327 - On VMS, cleans up extra files generated during testing
328   [John E. Malmberg, Craig Berry]
329
3300.26 - Mon Jun 29 20:11:52 EDT 2009
331
332 - No changes from 0.25_01
333
3340.25_01 - Sat Jun 27 23:13:20 EDT 2009
335
336 - Changed test library to Test::More
337
338 - Added tests for have_compiler
339
340 - Skips tests that need a compiler if have_compiler is false
341
342 - have_compiler will try to compile in the current directory
343   if compiling in tmpdir fails for whatever reason
344
3450.25 - Fri Jun 26 16:18:13 EDT 2009
346
347 - Slight diagnostic improvements in link.t
348
3490.24_01 - Sun Mar  8 14:50:10 2009
350
351 - On Windows, don't generate "mt" command when CRT is statically
352   linked. [Jan Dubois]
353
354 - On Cygwin, examine $Config{useshrplib} to see whether we're
355   supposed to be linking with a shared perl library or not. [Reini
356   Urban]
357
358 - In link_executable() on Cygwin, trust $Config{ld} rather than using
359   $Config{cc} for linking. [Reini Urban]
360
361 - Add 'haiku' as a Unix-like platform. [Ingo Weinhold]
362
3630.24 - Fri Aug 15 22:01:48 2008
364
365 - Added 'gnu' and 'gnukfreebsd' as Unix variants. [Niko Tyni]
366
367 - Brought in some VMS fixes from bleadperl: "Correct and complete
368   CBuilder's handling of external libraries when linking on VMS."
369   [Craig Berry]
370
3710.23 - Sat Apr 19 22:28:03 2008
372
373 - Fixed some problems (some old, some new) with Strawberry Perl on
374   Windows. [Alberto Simo~es]
375
376 - Will now install in the core perl lib directory when the user's
377   perl is new enough to have us in core. [Yi Ma Mao]
378
3790.22 - Fri Feb  8 21:52:21 2008
380
381 - Replaced the split_like_shell() method on Windows with a
382   near-no-op, which is probably more correct and has the benefit of
383   not messing up UNC paths. [John R. LoVerso, see
384   http://rt.cpan.org/Ticket/Display.html?id=26545]
385
386 - Fixed extra_compiler_flags on Windows, they were being
387   ignored. [Robert May]
388
3890.21 - Tue Oct 30 06:46:01 2007
390
391 - Clean up perl_src path using Cwd::realpath().  Only affects usage
392   as part of the perl core.
393
394 - Protect $., $@, $!, $^E, and $? from any clobbering that might
395   occur in our DESTROY method. [Zefram]
396
397 - From bleadperl, a patch to clean up debug symbol files (.pdb for
398   VC++, .tds for BCC) when running have_compiler(). [Steve Hay &
399   Steve Peters]
400
4010.19 - Sun May 13 14:29:18 2007
402
403 - When building as part of the perl core (so this is irrelevant for
404   people downloading from CPAN) we now try a little harder to find
405   the perl sources. [Jos Boumans]
406
407 - Fixed a part of the manifest thingy that got broken on 64-bit
408   Windows platforms in version 0.18. [Steve Hay, Jan Dubois]
409
4100.18 - Mon Mar 26 21:29:09 2007
411
412 - Various OS/2 fixes:
413   + Put .LIB file near .DEF file
414   + Got library-file building working better
415   + Handled libperl_overrides better
416   [Ilya Zakharevich]
417
418 - On Windows: embed manifest files in DLLs built with Module-Build
419   when using VC8. [Steve Hay]
420
421 - Added a workaround for a config error on dec_osf: the linker is
422   $Config{cc}, not $Config{ld}. [Jarkko Hietaniemi]
423
424 - Borland's compiler "response files" will not pass through macro
425   definitions that contain quotes. The quotes get stripped and there
426   seems to be no way to escape them. So we leave macros on the
427   command line. [Randy W. Sims]
428
4290.18  Sat Mar 25 13:35:47 CST 2006
430
431 - Yet more fixes for arg_defines() on VMS. [Craig A. Berry and John
432   E. Malmberg]
433
4340.17  Wed Mar 15 22:46:15 CST 2006
435
436 - When we're being run from an uninstalled perl distribution
437   (e.g. one that's in the process of being built and tested), we
438   search for perl first in the current working directory. [Randy
439   Sims]
440
441 - More fixing of the arg_defines() method on VMS. [Craig A. Berry and
442   John E. Malmberg]
443
4440.16  Mon Mar 13 17:08:21 CST 2006
445
446 - Fix quoting of command line arguments on Windows. [Yitzchak
447   Scott-Thoennes]
448
449 - Provided a custom arg_defines() on VMS that does essentially the
450   same thing for /define that version 0.14 did for /include. [Craig
451   A. Berry]
452
453 - Documented the existing 'quiet' parameter, which silences the
454   printing of system() commands. [Suggested by Yitzchak
455   Scott-Thoennes]
456
4570.15  Mon Oct  3 17:10:32 CDT 2005
458
459 - Several OS/2 fixes have been made, including: 1) adding the
460   necessary version string to DLLs, 2) passing the executable's name
461   to 'ldopts' without the .exe extension, 3) avoiding calling 'env'
462   via the 'shrpenv' thingy, since it triggers a fork() bug. [Ilya
463   Zakharevich]
464
465 - Integrate a couple cleanup-related changes from bleadperl that
466   somehow never got into this copy. [Steve Hay]
467
468 - Added a new 'defines' parameter to compile(), which gives a
469   platform-independent way to specify various -Dfoo=bar (or the
470   equivalent) compiler defines. [Randy W. Sims]
471
4720.14  Mon Sep 19 13:40:37 CDT 2005
473
474 - Several fixes have been made for VMS, including: 1) there can only
475   be one /include qualifier, so merge multiple /includes into one; 2)
476   make sure the executable is named the same way that dynaloader will
477   look for it; 3) make sure the option files for the exported symbols
478   and the PERLSHR image are passed properly to the linker. [John
479   E. Malmberg]
480
4810.13  Wed Aug 24 20:05:59 CDT 2005
482
483 - Several temporary files weren't being cleaned up during testing,
484   because the 'cleanup' mechanism was never properly implemented.
485   This is now fixed. [Steve Hay]
486
4870.12  Mon May 30 16:40:10 CDT 2005
488
489 - In order to integrate into the perl core, patches were contributed
490   that a) put a $VERSION variable in each .pm file, b) add a 'quiet'
491   parameter to new() to shut up some of the command-echoing, c)
492   checks for the perl source headers in the CORE/ directory in the
493   perl source tree, not in the post-installation location, and d)
494   adjusts the CWD when running the regression tests under the perl
495   core. [Yitzchak Scott-Thoennes]
496
497 - Various parts of the code were looking for the CORE/ directory in
498   $Config{archlib}, $Config{installarchlib}, and $Config{archlibexp}.
499   Only the latter is correct, so we use that everywhere now.
500   [Curt Tilmes]
501
502 - For Unix-ish platforms, link_executable() will now prefer
503   $Config{cc} to $Config{ld}, because that typically works
504   better. [Jarkko Hietaniemi and H.Merijn Brand]
505
506 - Prelinking (invoking ExtUtils::Mksymlists to create options-files)
507   is now only done when we're building dynamic libraries. [Yitzchak
508   Scott-Thoennes]
509
5100.11  Tue Apr  5 20:58:41 CDT 2005
511
512 - Added a licensing statement to CBuilder.pm. [Spotted by Chip
513   Salzenberg]
514
5150.10  Mon Mar 14 20:18:19 CST 2005
516
517 - Split out a few simple routines that format how compile switches
518   are formatted, so that we can override them for platforms like VMS
519   where they're very different.
520
521 - Fix compile() and link() on VMS. [Help from Michael Schwern and
522   Peter Prymmer]
523
5240.09  Tue Feb  8 17:57:41 CST 2005
525
526 - Fixed a broken link_executable() method on cygwin - it now uses
527   'gcc' instead of $Config{ld} for the linking, because the latter is
528   actually a shell script which calls a perl script which calls gcc
529   in a way that only works for creating shared libraries, not
530   executables.
531
5320.08  Tue Jan 18 21:54:11 CST 2005
533
534 - Fixed a testing error in which I had the prototype wrong for the
535   main() function. [Jose Pedro Oliveira]
536
5370.07  Wed Jan 12 21:50:34 CST 2005
538
539 - Added the link_executable() method, which provides the ability to
540   create standalone executables.  This is NOT yet implemented on
541   Windows, and therefore the tests for it are skipped on Win32.
542   [Alberto Manuel Brandao Simoes]
543
544 - Integrated the latest split_like_shell() for Windows from
545   Module::Build (really need to find a better home for this code...),
546   which now does a much better job of handling quotes and backslashes
547   and so on. [Randy Sims]
548
549 - Fixed a couple of Windows problems related to the output-file name
550   in link(), and some clobbering of the 'include_dirs' parameter to
551   compile(). [Randy Sims]
552
5530.06  Mon Dec 27 22:51:36 CST 2004
554
555 - Fixed a bug on Unix environments in which our work-around for
556   shell-commands like "FOO=BAR cc" (which is supposed to be turned
557   into "env FOO=BAR cc" to actually work) wasn't being called.
558
5590.05  Wed Oct 13 23:09:09 CDT 2004
560
561 - Fixed a bug in split_like_shell() in which leading whitespace was
562   creating an empty word, manifesting as something like "gcc - no
563   such file or directory" during tests. [Spotted by Warren L. Dodge]
564
565 - Incorporate another split_like_shell() fix from Module::Build.
566
5670.04  Sun Oct 10 00:31:08 CDT 2004
568
569 - Changed the split_like_shell() method to use the shellwords()
570   function from Text::ParseWords (a core module since 5.0), which
571   does a much better job than the split() we were using.
572
573
5740.03  Fri May 14 23:12:23 CDT 2004
575
576 - Fixed minor problems with the Build.PL file, the module names
577   should be quoted.
578
579 - The VMS module declared itself with the wrong package name.
580
581
5820.02  Fri Feb 20 10:17:40 CST 2004
583
584 - Fixed a bug in .../Platform/Windows.pm, in which compile() was
585   ignoring an 'include_dirs' argument.  [Randy Sims]
586
587 - Fixed a bug in .../Platform/Windows.pm, in which output files were
588   being created in the root directory \ when they should be created
589   in the current directory. [Randy Sims]
590
591
5920.01  Mon Jan 12 08:12:35 CST 2004
593
594 - Original release, taken from Module::Build's C-building code, with
595   patching help from Randy Sims.
596