]> git.vpit.fr Git - perl/modules/Lexical-Types.git/blobdiff - Makefile.PL
This is 0.16
[perl/modules/Lexical-Types.git] / Makefile.PL
index e7593bc1bf699df83e4c084ee0f4e5e38b9cba2c..46288e5af54f1a20e086221ff15e0a1f358fd154 100644 (file)
@@ -1,4 +1,4 @@
-use 5.008003;
+use 5.008_004;
 
 use strict;
 use warnings;
@@ -6,6 +6,28 @@ 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;
 my %macro;
 
@@ -23,19 +45,28 @@ if ($^O eq 'MSWin32' and not grep /^LD[A-Z]*=/, @ARGV) {
                   @Config{qw<bin sitebin>};
   $macro{LDDLFLAGS}    = "$lddlflags $libdirs $libperl";
   $macro{LDFLAGS}      = "$ldflags $libdirs $libperl";
-  $macro{PERL_ARCHIVE} = '',
+  eval <<'  MY_SECTION';
+   package MY;
+   sub dynamic_lib {
+    my $self = shift;
+    my $inherited = $self->SUPER::dynamic_lib(@_);
+    $inherited =~ s/"?\$\(PERL_ARCHIVE\)"?//g;
+    return $inherited;
+   }
+  MY_SECTION
+  die $@ if $@;
  }
 }
 print $is_gcc_34 ? "yes\n" : "no\n";
 
 # Threads, Windows and 5.8.x don't seem to be best friends
 if ($^O eq 'MSWin32' && "$]" < 5.009) {
- push @DEFINES, '-DLT_MULTIPLICITY=0';
+ push @DEFINES, '-DXSH_MULTIPLICITY=0';
 }
 
 # Fork emulation got "fixed" in 5.10.1
-if ($^O eq 'MSWin32' && "$]" < 5.010001) {
- push @DEFINES, '-DLT_FORKSAFE=0';
+if ($^O eq 'MSWin32' && "$]" < 5.010_001) {
+ push @DEFINES, '-DXSH_FORKSAFE=0';
 }
 
 @DEFINES = (DEFINE => join ' ', @DEFINES) if @DEFINES;
@@ -53,21 +84,27 @@ my %PREREQ_PM = (
  'XSLoader' => 0,
 );
 
+my %BUILD_REQUIRES = (
+ 'Config'              => 0,
+ 'ExtUtils::MakeMaker' => 0,
+ 'File::Spec'          => 0,
+ 'Test::More'          => 0,
+ 'constant'            => 0,
+ 'lib'                 => 0,
+ %PREREQ_PM,
+);
+
 my %META = (
  configure_requires => {
   'Config'              => 0,
   'ExtUtils::MakeMaker' => 0,
  },
  build_requires => {
-  'Config'              => 0,
-  'ExtUtils::MakeMaker' => 0,
-  'Test::More'          => 0,
-  'constant'            => 0,
-  %PREREQ_PM,
+  %BUILD_REQUIRES,
  },
  dynamic_config => 1,
  resources => {
-  bugtracker => "http://rt.cpan.org/NoAuth/ReportBug.html?Queue=$dist",
+  bugtracker => "http://rt.cpan.org/Dist/Display.html?Name=$dist",
   homepage   => "http://search.cpan.org/dist/$dist/",
   license    => 'http://dev.perl.org/licenses/',
   repository => "http://git.profvince.com/?p=perl%2Fmodules%2F$dist.git",
@@ -82,15 +119,16 @@ WriteMakefile(
  ABSTRACT_FROM    => $file,
  PL_FILES         => {},
  @DEFINES,
+ BUILD_REQUIRES   => \%BUILD_REQUIRES,
  PREREQ_PM        => \%PREREQ_PM,
- MIN_PERL_VERSION => 5.008003,
+ MIN_PERL_VERSION => '5.008004',
  META_MERGE       => \%META,
  dist             => {
   PREOP    => "pod2text -u $file > \$(DISTVNAME)/README",
   COMPRESS => 'gzip -9f', SUFFIX => 'gz'
  },
  clean            => {
-  FILES => "$dist-* *.gcov *.gcda *.gcno cover_db Debian_CPANTS.txt"
+  FILES => "$dist-* *.gcov *.gcda *.gcno cover_db Debian_CPANTS.txt*"
  },
  %macro,
 );