joes 2003/05/30 14:43:32
Modified: build xsbuilder.pl
Log:
Override find_includes to work around ParseSource.pm bug
Revision Changes Path
1.3 +29 -0 httpd-apreq-2/build/xsbuilder.pl
Index: xsbuilder.pl
===================================================================
RCS file: /home/cvs/httpd-apreq-2/build/xsbuilder.pl,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- xsbuilder.pl 30 May 2003 19:17:13 -0000 1.2
+++ xsbuilder.pl 30 May 2003 21:43:32 -0000 1.3
@@ -67,6 +67,35 @@
# ParseSource.pm v 0.23 bug: line 214 should read
# my @dirs = @{$self->include_dirs};
+# for now, we override it here just to work around the bug
+
+sub find_includes {
+ my $self = shift;
+ return $self->{includes} if $self->{includes};
+ require File::Find;
+ my(@dirs) = @{$self->include_dirs};
+ unless (-d $dirs[0]) {
+ die "could not find include directory";
+ }
+ # print "Will search @dirs for include files...\n" if ($verbose) ;
+ my @includes;
+ my $unwanted = join '|', @{$self -> unwanted_includes} ;
+
+ for my $dir (@dirs) {
+ File::Find::finddepth({
+ wanted => sub {
+ return unless /\.h$/;
+ return if ($unwanted &&
(/^($unwanted)/o));
+ my $dir = $File::Find::dir;
+ push @includes, "$dir/$_";
+ },
+ follow => $^O ne 'MSWin32',
+ }, $dir);
+ }
+ return $self->{includes} = $self -> sort_includes ([EMAIL PROTECTED]) ;
+}
+
+
sub include_dirs {["$base_dir/src",]}# "$base_dir/glue/perl/xsinclude"]}
sub preprocess