Subject: | [PATCH] Add options for Win32 gcc4 compilation to Test::Smoke::Util |
This patch adds the ability to define the new options in
win32\makefile.mk in blead that allow building with 4.x.x builds of gcc
(including setting the libgcc helper dll that allows cross-DLL
exceptions on Win32 systems.)
Subject: | Test-Smoke-GCC4.patch |
Index: lib/Test/Smoke/Util.pm
===================================================================
--- lib/Test/Smoke/Util.pm (revision 1272)
+++ lib/Test/Smoke/Util.pm (working copy)
@@ -188,6 +188,9 @@
"-DIS_WIN95" => "IS_WIN95",
"-DCRYPT_SRC" => "CRYPT_SRC",
"-DCRYPT_LIB" => "CRYPT_LIB",
+ "-DGCC_4XX" => "GCC_4XX",
+ "-DGCCHELPERDLL" => "GCCHELPERDLL",
+ "-DEXTRALIBDIRS" => "EXTRALIBDIRS"
);
# %opts hash-values:
# undef => leave option as-is when no override (makefile default)
@@ -215,9 +218,12 @@
IS_WIN95 => 0,
CRYPT_SRC => undef,
CRYPT_LIB => undef,
+ GCC_4XX => 0,
+ GCCHELPERDLL => undef,
+ EXTRALIBDIRS => undef,
);
-# my $def_re = qr/((?:(?:PERL|USE|IS)_\w+)|BCCOLD)/;
- my $def_re = '((?:(?:PERL|USE|IS)_\w+)|BCCOLD)';
+# my $def_re = qr/((?:(?:PERL|USE|IS|GCC)_\w+)|BCCOLD)/;
+ my $def_re = '((?:(?:PERL|USE|IS|GCC)_\w+)|BCCOLD)';
my @w32_opts = grep ! /^$def_re/, keys %opts;
my $config_args = join " ",
grep /^-[DU][a-z_]+/, quotewords( '\s+', 1, $command );
@@ -254,6 +260,9 @@
# If you -Dgcc_v3_2 you 'll *want* CCTYPE = GCC
$opts{CCTYPE} = "GCC" if $opts{USE_GCC_V3_2};
+ # If you -DGCC_4XX you 'll *want* CCTYPE = GCC
+ $opts{CCTYPE} = "GCC" if $opts{GCC_4XX};
+
# If you -Dbccold you 'll *want* CCTYPE = BORLAND
$opts{CCTYPE} = "BORLAND" if $opts{BCCOLD};