1Revision history for Perl extension ExtUtils::CBuilder. 2 30.280216 - 2014-03-07 4 5 Added: 6 7 - Android support [Brian Fraser and Piotr Roszatycki] 8 9 Fixed: 10 11 - Teach ExtUtils::CBuilder to handle mod2fname properly [Brian Fraser] 12 130.280212 - 2013-09-08 14 15 Fixed: 16 17 - Reversion all modules. 18 190.280211 - 2013-09-08 20 21 Fixed: 22 23 - Missing dependency Perl::OSType [Leon Timmermans] 24 - Fixed repository location [Alberto Simões] 25 260.280210 - 2013-09-06 27 28 Fixed: 29 30 - Update INSTALLDIRS to favor installation under 'site' (perl 116479) 31 [James E Keenan] 32 330.280209 - 2012-10-20 (Perl v5.17.5) 34 35 Fixed: 36 37 - Allow options to be passed to prelink in Windows (perl #115100) 38 [Eric Brine] 39 400.280208 - 2012-06-20 (Perl v5.17.1) 41 42 Fixed: 43 44 - Corrected location in which manifest file is looked for on 45 Windows (RT#35943, perl #111798) [snaury@gmail.com] 46 470.280207 (Not released) 48 49 Fixed: 50 51 - Corrected test for existence of manifest file on Windows 52 (perl #111782) [Steve Hay] 53 540.280206 - 2012-03-20 (Perl v5.15.9) 55 56 Documented: 57 58 - Added a SUPPORT section to indicate that upstream is Perl 5 core 59 600.280205 - 2011-12-20 (Perl v5.15.6) 61 62 Fixed: 63 64 - Fixed bug picking up ccflags from Config 65 660.280204 - 2011-06-20 (Perl v5.15.0) 67 68 Minor: 69 70 - Quotation style cleanup 71 720.280203 - 2011-05-14 (Perl v5.14.0) 73 74 Fixed: 75 76 - Appends CFLAGS and LDFLAGS environments instead of overriding 77 78 - Reset ccflags on compilation for VMS. 79 80 Changed: 81 82 - Refactored OS name mapping to use Perl::OSType 83 840.280202 - Sun Jan 23 10:47:51 EST 2011 85 86 - Different file names used for test files; allows EU::CB tests 87 to be run in parallel. [Florian Ragwitz] 88 890.280201 - Fri Jan 21 15:16:36 EST 2011 90 91 Fixed: 92 93 - t/04-base.t no longer attempt to compile or link as this provokes 94 failures on main platforms 95 96 - Various typo fixes in Pod or comments 97 980.2802 - Sun Dec 12 07:22:43 EST 2010 99 100 Fixed: 101 102 - Incorporated another t/04-base.t fix from bleadperl 103 [Chris Williams] 104 1050.2801 - Wed Dec 8 21:36:56 EST 2010 106 107 Fixed: 108 109 - Fixed spurious t/04-base.t failure when run from Perl core 110 [David Golden] 111 1120.2800 - Mon Dec 6 16:05:46 EST 2010 113 114 - No changes from 0.27_07 115 1160.27_07 - Wed Sep 29 21:48:55 EDT 2010 117 118 Fixed: 119 120 - Fixed t/02-link.t on perl < 5.8 121 1220.27_06 - Mon Sep 27 15:29:54 EDT 2010 123 124 Fixed: 125 126 - Preserves exit status on VMS [Craig Berry] 127 128 - Fix Win32 split_like_shell escaping [Christian Walde] 129 1300.27_05 - Wed Jul 28 15:29:59 EDT 2010 131 132 Fixed: 133 134 - Tests no longer fail if user has set the CC environment variable 135 1360.27_04 - Mon Jul 26 22:41:43 EDT 2010 137 138 Added: 139 - handle c compiler and c++ compiler separately 140 (adds requirement for IPC::Cmd) [Jens Rehsack] 141 142 Others: 143 - rely on File::Temp::tempfile and File::Spec::tmpdir to 144 get unique file name for checking for compiler 145 [Jens Rehsack] 146 147 - Code base modernization and substantial code coverage improvments 148 [Jim Keenan] 149 1500.2703 - Tue Mar 16 17:10:55 EDT 2010 151 152 Bugs fixed: 153 - fixed tests for Windows and MSVC [Jan Dubois] 154 1550.2702 - Mon Feb 22 15:10:52 EST 2010 156 157 Bugs fixed: 158 - compile() changes in 0.2701 did not work on Windows. Now fixed. 159 1600.2701 - Tue Feb 16 09:12:45 EST 2010 161 162 Bugs fixed: 163 - compile() now accepts both string & array for 'include_dirs' 164 argument, as documented.(RT#54606) [Alberto Simões] 165 1660.27 - Thu Oct 29 21:29:56 EDT 2009 167 168 Other: 169 - Removed Build.PL to avoid creating a circular dependency 170 - Added version numbers to Windows compiler driver modules 171 1720.26_05 - Sun Oct 25 17:29:02 EDT 2009 173 174 Bugs fixed: 175 - Fixed t/02link.t failures on cygwin with Perl 5.8 [David Golden] 176 177 Other: 178 - Made have_compiler (and have_cplusplus) quiet without echoing 179 the test command to STDOUT [David Golden] 180 1810.26_04 - Mon Oct 19 21:57:46 EDT 2009 182 183 Enhancements: 184 - Added 'have_cplusplus()' method to check for C++ support 185 - Added patches for building Perl with mingw64 [Sisyphus] 186 - Allow CC environment variable to override $Config{cc} 187 188 Bugs fixed: 189 - Fixed link executable command for Win32 MSVC (RT#40819) [Cosimo 190 Streppone] 191 - Removed MSVC version check when embedding a manifest file 192 (RT #43002) [Steve Hay] 193 194 Other: 195 - Split Windows compiler driver packages into individual *.pm files 196 1970.260301 - Sat Aug 29 11:04:41 EDT 2009 198 199 Bugs fixed: 200 - Fixed linking error on Win32 with gcc compiler (RT#49000) 201 [kmx] 202 2030.2603 - Sat Jul 18 06:56:06 EDT 2009 204 205 Bugs fixed: 206 - Makefile.PL had wrong INSTALLDIRS setting for older Perls 207 (RT#47985) [David Golden] 208 2090.2602 - Sat Jul 4 10:57:12 EDT 2009 210 211 Bugs fixed: 212 - Fixed 00-have-compiler.t if $^X is a relative path [David Wheeler] 213 2140.2601 - Wed Jul 1 09:37:39 EDT 2009 215 216 Bugs fixed: 217 - On VMS, cleans up extra files generated during testing 218 [John E. Malmberg, Craig Berry] 219 2200.26 - Mon Jun 29 20:11:52 EDT 2009 221 222 - No changes from 0.25_01 223 2240.25_01 - Sat Jun 27 23:13:20 EDT 2009 225 226 - Changed test library to Test::More 227 228 - Added tests for have_compiler 229 230 - Skips tests that need a compiler if have_compiler is false 231 232 - have_compiler will try to compile in the current directory 233 if compiling in tmpdir fails for whatever reason 234 2350.25 - Fri Jun 26 16:18:13 EDT 2009 236 237 - Slight diagnostic improvements in link.t 238 2390.24_01 - Sun Mar 8 14:50:10 2009 240 241 - On Windows, don't generate "mt" command when CRT is statically 242 linked. [Jan Dubois] 243 244 - On Cygwin, examine $Config{useshrplib} to see whether we're 245 supposed to be linking with a shared perl library or not. [Reini 246 Urban] 247 248 - In link_executable() on Cygwin, trust $Config{ld} rather than using 249 $Config{cc} for linking. [Reini Urban] 250 251 - Add 'haiku' as a Unix-like platform. [Ingo Weinhold] 252 2530.24 - Fri Aug 15 22:01:48 2008 254 255 - Added 'gnu' and 'gnukfreebsd' as Unix variants. [Niko Tyni] 256 257 - Brought in some VMS fixes from bleadperl: "Correct and complete 258 CBuilder's handling of external libraries when linking on VMS." 259 [Craig Berry] 260 2610.23 - Sat Apr 19 22:28:03 2008 262 263 - Fixed some problems (some old, some new) with Strawberry Perl on 264 Windows. [Alberto Simo~es] 265 266 - Will now install in the core perl lib directory when the user's 267 perl is new enough to have us in core. [Yi Ma Mao] 268 2690.22 - Fri Feb 8 21:52:21 2008 270 271 - Replaced the split_like_shell() method on Windows with a 272 near-no-op, which is probably more correct and has the benefit of 273 not messing up UNC paths. [John R. LoVerso, see 274 http://rt.cpan.org/Ticket/Display.html?id=26545] 275 276 - Fixed extra_compiler_flags on Windows, they were being 277 ignored. [Robert May] 278 2790.21 - Tue Oct 30 06:46:01 2007 280 281 - Clean up perl_src path using Cwd::realpath(). Only affects usage 282 as part of the perl core. 283 284 - Protect $., $@, $!, $^E, and $? from any clobbering that might 285 occur in our DESTROY method. [Zefram] 286 287 - From bleadperl, a patch to clean up debug symbol files (.pdb for 288 VC++, .tds for BCC) when running have_compiler(). [Steve Hay & 289 Steve Peters] 290 2910.19 - Sun May 13 14:29:18 2007 292 293 - When building as part of the perl core (so this is irrelevant for 294 people downloading from CPAN) we now try a little harder to find 295 the perl sources. [Jos Boumans] 296 297 - Fixed a part of the manifest thingy that got broken on 64-bit 298 Windows platforms in version 0.18. [Steve Hay, Jan Dubois] 299 3000.18 - Mon Mar 26 21:29:09 2007 301 302 - Various OS/2 fixes: 303 + Put .LIB file near .DEF file 304 + Got library-file building working better 305 + Handled libperl_overrides better 306 [Ilya Zakharevich] 307 308 - On Windows: embed manifest files in DLLs built with Module-Build 309 when using VC8. [Steve Hay] 310 311 - Added a workaround for a config error on dec_osf: the linker is 312 $Config{cc}, not $Config{ld}. [Jarkko Hietaniemi] 313 314 - Borland's compiler "response files" will not pass through macro 315 definitions that contain quotes. The quotes get stripped and there 316 seems to be no way to escape them. So we leave macros on the 317 command line. [Randy W. Sims] 318 3190.18 Sat Mar 25 13:35:47 CST 2006 320 321 - Yet more fixes for arg_defines() on VMS. [Craig A. Berry and John 322 E. Malmberg] 323 3240.17 Wed Mar 15 22:46:15 CST 2006 325 326 - When we're being run from an uninstalled perl distribution 327 (e.g. one that's in the process of being built and tested), we 328 search for perl first in the current working directory. [Randy 329 Sims] 330 331 - More fixing of the arg_defines() method on VMS. [Craig A. Berry and 332 John E. Malmberg] 333 3340.16 Mon Mar 13 17:08:21 CST 2006 335 336 - Fix quoting of command line arguments on Windows. [Yitzchak 337 Scott-Thoennes] 338 339 - Provided a custom arg_defines() on VMS that does essentially the 340 same thing for /define that version 0.14 did for /include. [Craig 341 A. Berry] 342 343 - Documented the existing 'quiet' parameter, which silences the 344 printing of system() commands. [Suggested by Yitzchak 345 Scott-Thoennes] 346 3470.15 Mon Oct 3 17:10:32 CDT 2005 348 349 - Several OS/2 fixes have been made, including: 1) adding the 350 necessary version string to DLLs, 2) passing the executable's name 351 to 'ldopts' without the .exe extension, 3) avoiding calling 'env' 352 via the 'shrpenv' thingy, since it triggers a fork() bug. [Ilya 353 Zakharevich] 354 355 - Integrate a couple cleanup-related changes from bleadperl that 356 somehow never got into this copy. [Steve Hay] 357 358 - Added a new 'defines' parameter to compile(), which gives a 359 platform-independant way to specify various -Dfoo=bar (or the 360 equivalent) compiler defines. [Randy W. Sims] 361 3620.14 Mon Sep 19 13:40:37 CDT 2005 363 364 - Several fixes have been made for VMS, including: 1) there can only 365 be one /include qualifier, so merge multiple /includes into one; 2) 366 make sure the executable is named the same way that dynaloader will 367 look for it; 3) make sure the option files for the exported symbols 368 and the PERLSHR image are passed properly to the linker. [John 369 E. Malmberg] 370 3710.13 Wed Aug 24 20:05:59 CDT 2005 372 373 - Several temporary files weren't being cleaned up during testing, 374 because the 'cleanup' mechanism was never properly implemented. 375 This is now fixed. [Steve Hay] 376 3770.12 Mon May 30 16:40:10 CDT 2005 378 379 - In order to integrate into the perl core, patches were contributed 380 that a) put a $VERSION variable in each .pm file, b) add a 'quiet' 381 parameter to new() to shut up some of the command-echoing, c) 382 checks for the perl source headers in the CORE/ directory in the 383 perl source tree, not in the post-installation location, and d) 384 adjusts the CWD when running the regression tests under the perl 385 core. [Yitzchak Scott-Thoennes] 386 387 - Various parts of the code were looking for the CORE/ directory in 388 $Config{archlib}, $Config{installarchlib}, and $Config{archlibexp}. 389 Only the latter is correct, so we use that everywhere now. 390 [Curt Tilmes] 391 392 - For Unix-ish platforms, link_executable() will now prefer 393 $Config{cc} to $Config{ld}, because that typically works 394 better. [Jarkko Hietaniemi and H.Merijn Brand] 395 396 - Prelinking (invoking ExtUtils::Mksymlists to create options-files) 397 is now only done when we're building dynamic libraries. [Yitzchak 398 Scott-Thoennes] 399 4000.11 Tue Apr 5 20:58:41 CDT 2005 401 402 - Added a licensing statement to CBuilder.pm. [Spotted by Chip 403 Salzenberg] 404 4050.10 Mon Mar 14 20:18:19 CST 2005 406 407 - Split out a few simple routines that format how compile switches 408 are formatted, so that we can override them for platforms like VMS 409 where they're very different. 410 411 - Fix compile() and link() on VMS. [Help from Michael Schwern and 412 Peter Prymmer] 413 4140.09 Tue Feb 8 17:57:41 CST 2005 415 416 - Fixed a broken link_executable() method on cygwin - it now uses 417 'gcc' instead of $Config{ld} for the linking, because the latter is 418 actually a shell script which calls a perl script which calls gcc 419 in a way that only works for creating shared libraries, not 420 executables. 421 4220.08 Tue Jan 18 21:54:11 CST 2005 423 424 - Fixed a testing error in which I had the prototype wrong for the 425 main() function. [Jose Pedro Oliveira] 426 4270.07 Wed Jan 12 21:50:34 CST 2005 428 429 - Added the link_executable() method, which provides the ability to 430 create standalone executables. This is NOT yet implemented on 431 Windows, and therefore the tests for it are skipped on Win32. 432 [Alberto Manuel Brandao Simoes] 433 434 - Integrated the latest split_like_shell() for Windows from 435 Module::Build (really need to find a better home for this code...), 436 which now does a much better job of handling quotes and backslashes 437 and so on. [Randy Sims] 438 439 - Fixed a couple of Windows problems related to the output-file name 440 in link(), and some clobbering of the 'include_dirs' parameter to 441 compile(). [Randy Sims] 442 4430.06 Mon Dec 27 22:51:36 CST 2004 444 445 - Fixed a bug on Unix environments in which our work-around for 446 shell-commands like "FOO=BAR cc" (which is supposed to be turned 447 into "env FOO=BAR cc" to actually work) wasn't being called. 448 4490.05 Wed Oct 13 23:09:09 CDT 2004 450 451 - Fixed a bug in split_like_shell() in which leading whitespace was 452 creating an empty word, manifesting as something like "gcc - no 453 such file or directory" during tests. [Spotted by Warren L. Dodge] 454 455 - Incorporate another split_like_shell() fix from Module::Build. 456 4570.04 Sun Oct 10 00:31:08 CDT 2004 458 459 - Changed the split_like_shell() method to use the shellwords() 460 function from Text::ParseWords (a core module since 5.0), which 461 does a much better job than the split() we were using. 462 463 4640.03 Fri May 14 23:12:23 CDT 2004 465 466 - Fixed minor problems with the Build.PL file, the module names 467 should be quoted. 468 469 - The VMS module declared itself with the wrong package name. 470 471 4720.02 Fri Feb 20 10:17:40 CST 2004 473 474 - Fixed a bug in .../Platform/Windows.pm, in which compile() was 475 ignoring an 'include_dirs' argument. [Randy Sims] 476 477 - Fixed a bug in .../Platform/Windows.pm, in which output files were 478 being created in the root directory \ when they should be created 479 in the current directory. [Randy Sims] 480 481 4820.01 Mon Jan 12 08:12:35 CST 2004 483 484 - Original release, taken from Module::Build's C-building code, with 485 patching help from Randy Sims. 486