summaryrefslogtreecommitdiff
path: root/makedef.pl
diff options
context:
space:
mode:
authorSteve Hay <SteveHay@planit.com>2005-07-21 17:01:33 +0000
committerSteve Hay <SteveHay@planit.com>2005-07-21 17:01:33 +0000
commit17bdc114163535a73d3e2fdde10eb61bdbc86f05 (patch)
treebc603fb154cb52de217738df36b94f963c1c9598 /makedef.pl
parentd64224560bf29cbbdc5245117235a9787cb49f58 (diff)
downloadperl-17bdc114163535a73d3e2fdde10eb61bdbc86f05.tar.gz
Make makedef.pl read "miniperl -V" on Win32
Perhaps other platforms that use makedef.pl also need a similar change (currently required to pick up PERL_DONT_CREATE_GVSV), but it also requires them to have minimal canned configs (if they are using canned configs like Win32 does) and I don't have any of the affected platforms (AIX, WinCE, OS/2, MacOS Classic and NetWare) for testing, so play it safe instead p4raw-id: //depot/perl@25209
Diffstat (limited to 'makedef.pl')
-rw-r--r--makedef.pl16
1 files changed, 16 insertions, 0 deletions
diff --git a/makedef.pl b/makedef.pl
index bc47833ea2..b460beec39 100644
--- a/makedef.pl
+++ b/makedef.pl
@@ -36,6 +36,22 @@ my %PLATFORM;
defined $PLATFORM || die "PLATFORM undefined, must be one of: @PLATFORM\n";
exists $PLATFORM{$PLATFORM} || die "PLATFORM must be one of: @PLATFORM\n";
+if ($PLATFORM eq 'win32') {
+ # Add the compile-time options that miniperl was built with to %define.
+ # These are not the same options as perl itself will be built with since
+ # miniperl is built with a canned config (one of the win32/config_H.*)
+ # and none of the BUILDOPT's that are set in the makefiles, but they do
+ # include some #define's that are hard-coded in various source files and
+ # header files and don't include any BUILDOPT's that the user might have
+ # chosen to disable because the canned configs are minimal configs that
+ # don't include any of those options.
+ my $config = `$^X -V`;
+ my($options) = $config =~ /^ Compile-time options: (.*?)^ \S/ms;
+ foreach (split /\s+/, $options) {
+ $define{$_} = 1;
+ }
+}
+
my %exportperlmalloc =
(
Perl_malloc => "malloc",