dougm       00/05/30 11:33:21

  Modified:    lib/Apache Build.pm
  Log:
  always re-load Apache/BuildConfig.pm (from eric)
  adjust to new version #defines in httpd.conf and throw away old version parsing mess
  pass -typemap src/modules/perl/typemap to xsubpp if it exists
  
  Revision  Changes    Path
  1.17      +13 -22    modperl-2.0/lib/Apache/Build.pm
  
  Index: Build.pm
  ===================================================================
  RCS file: /home/cvs/modperl-2.0/lib/Apache/Build.pm,v
  retrieving revision 1.16
  retrieving revision 1.17
  diff -u -r1.16 -r1.17
  --- Build.pm  2000/04/30 18:36:51     1.16
  +++ Build.pm  2000/05/30 18:33:20     1.17
  @@ -249,6 +249,7 @@
   sub build_config {
       my $self = shift;
       unshift @INC, 'lib';
  +    delete $INC{'Apache/BuildConfig.pm'};
       eval { require Apache::BuildConfig; };
       shift @INC;
       return bless {}, (ref($self) || $self) if $@;
  @@ -541,31 +542,14 @@
       }
   
       open my $fh, "$dir/httpd.h" or return undef;
  -    my($server, $version, $rest);
  -    my($fserver, $fversion, $frest);
  -    my($string, $extra, @vers);
  +    my $version;
   
       while(<$fh>) {
  -     next unless /^\#define/;
  -     s/SERVER_PRODUCT \"/\"Apache/; #1.3.13+
  -     next unless s/^\#define\s+AP_SERVER_(BASE|)VERSION\s+"(.*)\s*".*/$2/;
  -     chomp($string = $_);
  -
  -     #print STDERR "Examining SERVER_VERSION '$string'...";
  -     #could be something like:
  -     #Stronghold-1.4b1-dev Ben-SSL/1.3 Apache/1.1.1 
  -     @vers = split /\s+/, $string;
  -     foreach (@vers) {
  -         next unless ($fserver,$fversion,$frest) =
  -             m,^([^/]+)/(\d\.\d+\.?\d*)([^ ]*),i;
  -
  -         if($fserver eq 'Apache') {
  -             ($server, $version) = ($fserver, $fversion);
  -             #$frest =~ s/^(a|b)(\d+).*/'_' . (length($2) > 1 ? $2 : "0$2")/e;
  -             $version .= $frest if $frest;
  -         }
  -     }
  +     next unless /^\#define\s+AP_SERVER_BASEREVISION\s+\"(.*)\"/;
  +     $version = $1;
  +        last;
       }
  +
       close $fh;
   
       $self->httpd_version_cache($dir, $version);
  @@ -586,6 +570,13 @@
       my $xsubpp = join ' ', '$(MODPERL_PERLPATH)',
         '$(MODPERL_PRIVLIBEXP)/ExtUtils/xsubpp',
           '-typemap', '$(MODPERL_PRIVLIBEXP)/ExtUtils/typemap';
  +
  +    my $typemap = $self->file_path('src/modules/perl/typemap');
  +    if (-e $typemap) {
  +        $xsubpp .= join ' ',
  +          '-typemap', '../src/modules/perl/typemap';
  +    }
  +
       $xsubpp;
   }
   
  
  
  

Reply via email to