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 pg...@apache.org on 2007/04/19 04:28:34 UTC

svn commit: r530240 - in /perl/modperl/branches/1.x: Changes apaci/Makefile.tmpl apaci/configure apaci/mod_perl.config.sh

Author: pgollucci
Date: Wed Apr 18 19:28:33 2007
New Revision: 530240

URL: http://svn.apache.org/viewvc?view=rev&rev=530240
Log:
Fix shared library extensions on Win32 to use .dll not .so.

Submitted by: Nikolay Ananiev <an...@thegdb.com>
Reviewed by: pgollucci

Message-Id: <eu...@sea.gmane.org>


Modified:
    perl/modperl/branches/1.x/Changes
    perl/modperl/branches/1.x/apaci/Makefile.tmpl
    perl/modperl/branches/1.x/apaci/configure
    perl/modperl/branches/1.x/apaci/mod_perl.config.sh

Modified: perl/modperl/branches/1.x/Changes
URL: http://svn.apache.org/viewvc/perl/modperl/branches/1.x/Changes?view=diff&rev=530240&r1=530239&r2=530240
==============================================================================
--- perl/modperl/branches/1.x/Changes (original)
+++ perl/modperl/branches/1.x/Changes Wed Apr 18 19:28:33 2007
@@ -10,6 +10,9 @@
 
 =item 1.31-dev
 
+Fix shared libary extensions on Win32 to be .dll not .so
+[Nikolay Ananiev <an...@thegdb.com>]
+
 Patch to mod_perl.dsp to remove /D _WINSOCK2API_ on Win32
 for perl >= 5.8.6 [Steve Hay]
 

Modified: perl/modperl/branches/1.x/apaci/Makefile.tmpl
URL: http://svn.apache.org/viewvc/perl/modperl/branches/1.x/apaci/Makefile.tmpl?view=diff&rev=530240&r1=530239&r2=530240
==============================================================================
--- perl/modperl/branches/1.x/apaci/Makefile.tmpl (original)
+++ perl/modperl/branches/1.x/apaci/Makefile.tmpl Wed Apr 18 19:28:33 2007
@@ -56,7 +56,7 @@
 	$(MP_AR) crv $@ $(MP_OBJS)
 	$(MP_RANLIB) $@
 
-libperl.so: $(MP_OBJS_PIC)
+libperl.$(LIBEXT): $(MP_OBJS_PIC)
 	$(MP_RM) $@
 	$(MP_LD) $(MP_LDFLAGS_SHLIB) -o $@ $(MP_OBJS_PIC) $(MP_LIBS)
 
@@ -94,7 +94,7 @@
 
 #   FOR STAND-ALONE BUILDING ONLY
 install:
-	$(APXS) -i -a -n perl libperl.so
+	$(APXS) -i -a -n perl libperl.$(LIBEXT)
 
 depend:
 	cp Makefile.tmpl Makefile.tmpl.bak \

Modified: perl/modperl/branches/1.x/apaci/configure
URL: http://svn.apache.org/viewvc/perl/modperl/branches/1.x/apaci/configure?view=diff&rev=530240&r1=530239&r2=530240
==============================================================================
--- perl/modperl/branches/1.x/apaci/configure (original)
+++ perl/modperl/branches/1.x/apaci/configure Wed Apr 18 19:28:33 2007
@@ -22,6 +22,18 @@
 my_sourcedir="../src/modules/perl"
 my_sourcefiles="`./find_source`"
 my_typemapdir="../Apache"
+my_soext=""
+my_os=`uname`
+
+case $my_os in
+    CYGWIN*)
+        my_soext="dll"
+    ;;
+    
+    *)
+        my_soext="so"
+    ;;
+esac
 
 #   find APXS
 my_apxs=""
@@ -94,7 +106,7 @@
 echo "AP_CFLAGS=-DMOD_PERL $my_apxs_cflags" >>$my_makefileconf
 echo "INCLUDES=$my_apxs_includes" >>$my_makefileconf
 echo "RANLIB=ranlib" >>$my_makefileconf
-echo "LIBEXT=so" >>$my_makefileconf
+echo "LIBEXT=$my_soext" >>$my_makefileconf
 echo "APACHEEXT=$my_apxs_sourcedir/src" >>$my_makefileconf
 echo "APACHELIBEXEC=$my_apxs_libexec" >>$my_makefileconf
 echo "BASEEXT=mod_perl" >>$my_makefileconf

Modified: perl/modperl/branches/1.x/apaci/mod_perl.config.sh
URL: http://svn.apache.org/viewvc/perl/modperl/branches/1.x/apaci/mod_perl.config.sh?view=diff&rev=530240&r1=530239&r2=530240
==============================================================================
--- perl/modperl/branches/1.x/apaci/mod_perl.config.sh (original)
+++ perl/modperl/branches/1.x/apaci/mod_perl.config.sh Wed Apr 18 19:28:33 2007
@@ -131,6 +131,11 @@
 	esac
     	perl_lddlflags="$perl_lddlflags $XLINKER-bI:\$(APACHELIBEXEC)/httpd.exp"
 	;;
+    
+    cygwin*)
+	perl_ld="gcc -shared"
+	;;
+	
     * )    ;;
 esac
 
@@ -152,6 +157,18 @@
 	(my $repl = $cp) =~ s/,/ /g;
 	$ldopts =~ s/\Q$cp/$repl/;
     }
+}
+
+# add httpd.dll for cygwin
+if($ARGV[0] eq 'DSO' && $^O eq cygwin) {
+    chomp $ldopts;
+    $ldopts .= join (' ', '', 
+        '-Wl,--out-implib=libperl.dll.a',
+        '-Wl,--export-all-symbols',
+        '-Wl,--enable-auto-import',
+        '-Wl,--stack,8388608',
+        '-Wl,--enable-auto-image-base',
+        '-lhttpd');
 }
 
 print $ldopts;