]> git.vpit.fr Git - perl/modules/autovivification.git/blobdiff - Makefile.PL
This is 0.18
[perl/modules/autovivification.git] / Makefile.PL
index 72bad649e4d27837cf6ceaeaf9a74a94e9ece0dd..1a7a80b1d769417172a246b0083c6d5ab9c21544 100644 (file)
@@ -1,4 +1,4 @@
-use 5.008003;
+use 5.008_003;
 
 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, '-DA_MULTIPLICITY=0';
+ push @DEFINES, '-DXSH_MULTIPLICITY=0';
 }
 
 # Fork emulation got "fixed" in 5.10.1
-if ($^O eq 'MSWin32' && "$]" < 5.010001) {
- push @DEFINES, '-DA_FORKSAFE=0';
+if ($^O eq 'MSWin32' && "$]" < 5.010_001) {
+ push @DEFINES, '-DXSH_FORKSAFE=0';
 }
 
 @DEFINES = (DEFINE => join ' ', @DEFINES) if @DEFINES;
@@ -56,6 +87,7 @@ my %BUILD_REQUIRES = (
  'Config'              => 0,
  'Exporter'            => 0,
  'ExtUtils::MakeMaker' => 0,
+ 'POSIX'               => 0,
  'Test::More'          => 0,
  %PREREQ_PM,
 );
@@ -69,7 +101,7 @@ my %META = (
  },
  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",
@@ -97,3 +129,12 @@ WriteMakefile(
  },
  %macro,
 );
+
+package MY;
+
+sub postamble {
+ return <<'POSTAMBLE';
+testdeb: all
+       PERL_DL_NONLAZY=1 PERLDB_OPTS="NonStop=1" $(FULLPERLRUN) -MTAP::Harness -e 'TAP::Harness->new({verbosity => q{$(VERBOSE)}, lib => [ q{$(INST_LIB)}, q{$(INST_ARCHLIB)} ], switches => [ q{-d} ]})->runtests(@ARGV)' $(TEST_FILES)
+POSTAMBLE
+}