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