You are viewing a plain text version of this content. The canonical link for it is here.
Posted to modperl-cvs@perl.apache.org by st...@apache.org on 2003/07/28 19:32:35 UTC
cvs commit: modperl-2.0/xs/APR/APR Makefile.PL
stas 2003/07/28 10:32:34
Modified: . Makefile.PL Changes
xs/APR/APR Makefile.PL
Log:
move the definition of DEFINE='-DMP_HAVE_APR_LIBS' to the top level
Makefile.PL, since it overrides MY::pasthru target which makes it
impossible to define local DEFINE in subdirs.
Revision Changes Path
1.107 +21 -0 modperl-2.0/Makefile.PL
Index: Makefile.PL
===================================================================
RCS file: /home/cvs/modperl-2.0/Makefile.PL,v
retrieving revision 1.106
retrieving revision 1.107
diff -u -r1.106 -r1.107
--- Makefile.PL 18 Jun 2003 08:55:56 -0000 1.106
+++ Makefile.PL 28 Jul 2003 17:32:33 -0000 1.107
@@ -74,6 +74,7 @@
NAME => 'mod_perl',
VERSION => $VERSION,
EXE_FILES => \@exe_files,
+ DEFINE => get_DEFINE(),
macro => {
MODPERL_SRC => $code->path,
MODPERL_MAKEFILE => basename($build->default_file('makefile')),
@@ -94,6 +95,26 @@
);
post_configure();
+
+sub get_DEFINE {
+
+ # do we have apr libs?
+ # XXX: this define is really needed in xs/APR/APR/Makefile.PL, but this
+ # top-level Makefile.PL overrides MY::pasthru, and defines DEFINE= which
+ # overrides any local definition, not sure what's the right fix, for
+ # now just define it here
+ my $bin_prefix = $build->apxs(-q => 'PREFIX');
+ my @apr_libs = grep $_, map { -x $_ && qx{$_ --link-ld} }
+ map { qq{$bin_prefix/bin/$_-config} } qw(apr apu);
+ my $opt_define = @apr_libs ? '-DMP_HAVE_APR_LIBS' : '';
+
+ # preserve any DEFINE opts from outside and combine them with our
+ # local DEFINE
+ @ARGV = grep defined,
+ map { (/^DEFINE=(.*)/ && ($opt_define .= " $1")) ? undef : $_ } @ARGV;
+
+ return $opt_define;
+}
sub configure {
set_modperl_version();
1.199 +4 -0 modperl-2.0/Changes
Index: Changes
===================================================================
RCS file: /home/cvs/modperl-2.0/Changes,v
retrieving revision 1.198
retrieving revision 1.199
diff -u -r1.198 -r1.199
--- Changes 28 Jul 2003 13:38:07 -0000 1.198
+++ Changes 28 Jul 2003 17:32:33 -0000 1.199
@@ -12,6 +12,10 @@
=item 1.99_10-dev
+move the definition of DEFINE='-DMP_HAVE_APR_LIBS' to the top level
+Makefile.PL, since it overrides MY::pasthru target which makes it
+impossible to define local DEFINE in subdirs. [Stas]
+
make APR perl functions work outside mod_perl: several libraries
weren't linked. Also LIBS needs to receive all libs in one
string. [Stas]
1.10 +0 -3 modperl-2.0/xs/APR/APR/Makefile.PL
Index: Makefile.PL
===================================================================
RCS file: /home/cvs/modperl-2.0/xs/APR/APR/Makefile.PL,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- Makefile.PL 28 Jul 2003 13:38:05 -0000 1.9
+++ Makefile.PL 28 Jul 2003 17:32:34 -0000 1.10
@@ -9,11 +9,8 @@
map { qq{$prefix/bin/$_-config} } qw(apr apu);
chomp @libs;
-my $define = @libs ? '-DMP_HAVE_APR_LIBS' : '';
-
ModPerl::BuildMM::WriteMakefile(
'NAME' => 'APR',
'VERSION_FROM' => 'APR.pm',
'LIBS' => [join ' ', @libs],
- 'DEFINE' => $define,
);