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