]> git.vpit.fr Git - perl/modules/re-engine-Plugin.git/blobdiff - Makefile.PL
Protect against d_cplusplus perls
[perl/modules/re-engine-Plugin.git] / Makefile.PL
index 05a4878bbd41d5dde8508a2c70772345fa222d19..f82c8e507d1bfece6affc034efb0234a3841b38f 100644 (file)
@@ -4,6 +4,30 @@ use strict;
 use warnings;
 use ExtUtils::MakeMaker;
 
+use Config;
+
+if ($Config{d_cplusplus}) {
+ print STDERR <<'FAILPLUSPLUS';
+Configuration aborted: C++ compilers are not supported
+
+    Your perl has been built with a C++ compiler, which is then handed to
+    XS extensions as if it were a proper C compiler. This extension is
+    written in C, and naturally only supports C compilers, so it cannot be
+    built with your perl.
+
+    Note that building perl with a C++ compiler is only supposed to be done
+    by core developers in order to check that the perl headers can be
+    included from C++ code. Its use in the wild is not supported by the
+    perl5 porters. If your vendor has built its perl binary with a C++
+    compiler, please consider reporting this issue to them.
+
+    This text will be displayed 10 seconds, and then the configuration
+    script will exit.
+FAILPLUSPLUS
+ sleep 10;
+ exit 0;
+}
+
 my @DEFINES;
 
 # Fork emulation got "fixed" in 5.10.1
@@ -39,9 +63,17 @@ my %META = (
  },
 );
 
+my @AUTHORS = (
+ "\x{C6}var Arnfj\x{F6}r\x{F0} Bjarmason <avar\@cpan.org>",
+ 'Vincent Pit <perl@profvince.com>',
+);
+
+my $AUTHOR = $ExtUtils::MakeMaker::VERSION < 6.58 ? $AUTHORS[0]
+                                                  : \@AUTHORS;
+
 WriteMakefile(
  NAME             => $name,
- AUTHOR           => 'Vincent Pit <perl@profvince.com>',
+ AUTHOR           => $AUTHOR,
  LICENSE          => 'perl',
  ABSTRACT_FROM    => 'Plugin.pod',
  VERSION_FROM     => 'Plugin.pm',