| use ExtUtils::MakeMaker; |
| |
| use strict; |
| use lib qw(../lib); |
| use Apache::libapreq qw(xsubpp); |
| |
| my $Is_Win32 = ($^O eq "MSWin32") || $ENV{WIN32_TEST}; |
| my @mm_args = ( |
| 'NAME' => 'Apache::Request', |
| 'VERSION_FROM' => 'Request.pm', |
| ); |
| |
| if ($Is_Win32) { |
| win32_setup(@mm_args); |
| # xsubpp("Request"); |
| } |
| else { |
| require Apache::src; |
| my $src = Apache::src->new; |
| use File::Path 'mkpath'; |
| my $root = "../blib/arch/auto/libapreq"; |
| mkpath $root, 1, 0755 unless -d $root; |
| |
| #grr, must trick ExtUtils::Liblist |
| system "touch $root/libapreq.a"; |
| WriteMakefile( |
| @mm_args, |
| 'INC' => "-I../c ". $src->inc, |
| 'TYPEMAPS' => $src->typemaps, |
| 'OBJECT' => "Request.o $root/libapreq.a", |
| 'dynamic_lib' => { |
| 'OTHERLDFLAGS' => $src->otherldflags, |
| }, |
| ); |
| unlink "$root/libapreq.a"; |
| } |
| |
| sub win32_setup { |
| my @mm_args = @_; |
| WriteMakefile( |
| @mm_args, |
| 'TYPEMAPS' => [ "$ENV{MP_INC}/typemap" ], |
| 'INC' => qq{ -I../c -I"$ENV{AP_INC}" -I"$ENV{AP_INC}/../os/win32" -I"$ENV{MP_INC}" }, |
| 'LIBS' => qq{ -L"$ENV{MP_LIB}" -lmod_perl -L"$ENV{APREQ_LIB}" -llibapreq -L"$ENV{AP_LIB}" -lApacheCore }, |
| 'OBJECT' => 'Request.o', |
| ); |
| } |