perl-modperl mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Philippe M. Chiasson" <go...@apache.org>
Subject Re: [RELEASE CANDIDATE] mod_perl-1.31 RC7
Date Fri, 03 Apr 2009 02:29:03 GMT
On 2/4/09 15:11, David E. Wheeler wrote:
> On Apr 2, 2009, at 10:42 AM, Philippe M. Chiasson wrote:
> 
>> The mod_perl 1.31 release candidate 7 is ready. It can be downloaded  
>> here:
>>
>> http://www.apache.org/~gozer/mp1/mod_perl-1.31-rc7.tar.gz
> 
> I'm still getting a failure to make. :-(
> 
> % perl -v | grep This
> This is perl, v5.10.0 built for darwin-2level
> % uname -a
> Darwin benedict.local 9.6.0 Darwin Kernel Version 9.6.0: Mon Nov 24  
> 17:37:00 PST 2008; root:xnu-1228.9.59~1/RELEASE_I386 i386
> % USER=dougm /usr/local/bin/perl Makefile.PL \
>    USE_APXS=1 \
>    WITH_APXS=/usr/local/apache/bin/apxs \
>    USE_DSO=1 \
>    EVERYTHING=1
> [...]
> % make
> (cd ./apaci && PERL5LIB=/usr/local/src/mod_perl-1.31-rc7/lib: make)
> make[1]: *** No rule to make target `libperl.so', needed by `lib'.   
> Stop.
> make: *** [apxs_libperl] Error 2

Now that I've had a chance to look into this, I swear I've debugged this
problem before, and I just can't find trace of it, or no patches.

In any case, can you try this 1-liner patch? I believe it would do the
trick just fine, it's because on OS X there are .so/.dylib/.bundles and
we made the wrong assumption that perl's dlext would always be .so, but
it's not on recent OS X, it's .bundle.

The simplest trick I can think of is to just blindly normalize perl's
dlext to .so, and it works just fine. It's not that important, as that
value is only used to pick the right libperl.* make rule to build libperl,
so should be safe.

Index: apaci/mod_perl.config.sh
===================================================================
--- apaci/mod_perl.config.sh    (revision 753086)
+++ apaci/mod_perl.config.sh    (working copy)
@@ -123,6 +123,14 @@
 perl_lddlflags="`$perl_config 'lddlflags'`"
 perl_dlext="`$perl_config 'dlext'`"

+# OS X has .bundle's, .so's and .dylib's, but we need to normalize
+# to .so, so keep it simple, and blindly normalize
+case "$os_version" in
+    darwin*)
+        perl_dlext="`echo $perl_dlext | sed -e's/bundle/so/' | sed -e's/dylib/so/'`"
+        ;;
+esac
+
 case "$os_version" in
     aix*)
        case "$perl_cc" in

-- 
Philippe M. Chiasson     GPG: F9BFE0C2480E7680 1AE53631CB32A107 88C3A5A5
http://gozer.ectoplasm.org/       m/gozer\@(apache|cpan|ectoplasm)\.org/


Mime
View raw message