You are viewing a plain text version of this content. The canonical link for it is here.
Posted to embperl-cvs@perl.apache.org by ri...@apache.org on 2010/03/18 14:38:01 UTC

svn commit: r924770 - in /perl/embperl/trunk: Changes.pod Embperl.pm Makefile.PL

Author: richter
Date: Thu Mar 18 13:38:01 2010
New Revision: 924770

URL: http://svn.apache.org/viewvc?rev=924770&view=rev
Log:
    - Support for CGI.pm 3.43 (included within Perl 5.10.1)
      for file uplaods. CGI.pm < 2.43 is not supported anymore.
    - Makefile.PL can now cope with OpenSuSE 11.2, if perl,
      mod_perl and apache are installed from OpenSuSE packages.



Modified:
    perl/embperl/trunk/Changes.pod
    perl/embperl/trunk/Embperl.pm
    perl/embperl/trunk/Makefile.PL

Modified: perl/embperl/trunk/Changes.pod
URL: http://svn.apache.org/viewvc/perl/embperl/trunk/Changes.pod?rev=924770&r1=924769&r2=924770&view=diff
==============================================================================
--- perl/embperl/trunk/Changes.pod (original)
+++ perl/embperl/trunk/Changes.pod Thu Mar 18 13:38:01 2010
@@ -2,10 +2,14 @@
 
 =head 2.4.0
 
+    - Support for CGI.pm 3.43 (included within Perl 5.10.1)
+      for file uplaods. CGI.pm < 2.43 is not supported anymore.
     - Increased size limit for errormessage from 1024 to 4096
     - Makefile.PL can now handle compiling 32Bit code on 64Bit 
       sytsem if Perl was compiled as 32Bit application
     - Adaption of tests to changed error messages of perl 5.10
+    - Makefile.PL can now cope with OpenSuSE 11.2, if perl,
+      mod_perl and apache are installed from OpenSuSE packages.
 
 =head1 2.3.1
 

Modified: perl/embperl/trunk/Embperl.pm
URL: http://svn.apache.org/viewvc/perl/embperl/trunk/Embperl.pm?rev=924770&r1=924769&r2=924770&view=diff
==============================================================================
--- perl/embperl/trunk/Embperl.pm (original)
+++ perl/embperl/trunk/Embperl.pm Thu Mar 18 13:38:01 2010
@@ -318,8 +318,8 @@ sub get_multipart_formdata
     foreach ( @$ffld )
 	{
     	# the param_fetch needs CGI.pm 2.43
-	#$params = $cgi->param_fetch( $_ ) ;
-    	$params = $cgi->{$_} ;
+	$params = $cgi->param_fetch( $_ ) ;
+    	#$params = $cgi->{$_} ;
 	if ($#$params > 0)
 	    {
 	    $fdat->{ $_ } = join ("\t", @$params) ;

Modified: perl/embperl/trunk/Makefile.PL
URL: http://svn.apache.org/viewvc/perl/embperl/trunk/Makefile.PL?rev=924770&r1=924769&r2=924770&view=diff
==============================================================================
--- perl/embperl/trunk/Makefile.PL (original)
+++ perl/embperl/trunk/Makefile.PL Thu Mar 18 13:38:01 2010
@@ -848,6 +848,14 @@ if ($b && $apache)
         $EPHTTPD = $ENV{EPHTTPD} if (defined ($ENV{EPHTTPD})) ;
         $EPHTTPD = "$apache_src/httpsd" if (!-e $EPHTTPD && -e "$apache_src/httpsd") ;
         $EPHTTPD = "$apache_src/bin/httpd" if (!-e $EPHTTPD && -e "$apache_src/bin/httpd") ;
+
+	if (!-e $EPHTTPD && $mp2cfg)
+	    {
+	    my $sbindir = `$mp2cfg->{MP_APXS} -q SBINDIR` ;
+	    chomp ($sbindir) ;
+	    $EPHTTPD = "$sbindir/httpd" ;
+	    $EPHTTPD = "$sbindir/httpd2" if (-e "$sbindir/httpd2") ;
+	    }
         
         if (!-e $EPHTTPD)
             {
@@ -882,6 +890,9 @@ if ($b && $apache)
     
     @EPAPACHEVERSION = start ("\"$EPHTTPD\" -v") ;
     @modules         = start ("\"$EPHTTPD\" -l") ;
+    @apacheinfo      = start ("\"$EPHTTPD\" -V") ;
+
+    my ($mpm) = grep /Server MPM/, @apacheinfo ; 
 
     chomp ($EPAPACHEVERSION[0]) ;
     print "Apache Version $EPAPACHEVERSION[0]\n" ;
@@ -894,6 +905,12 @@ if ($b && $apache)
     $EPMODPERL	  = '' ;
     
     $addmodpath = $mp2cfg?$mp2cfg -> {MODPERL_AP_LIBEXECDIR}:'' ;
+    if ($addmodpath && $mpm)
+	{
+	# openSuSE has some modules in special directory for MPM
+	$mpm =~ /Server MPM:\s+(.+)$/ ;
+	$addmodpath2 = $addmodpath . '-' . lc($1) ;
+	} 	
     while (($mod, $opt) = each %neededmodules)
 	{
 	if (!grep (/$mod/, @modules))
@@ -921,6 +938,21 @@ if ($b && $apache)
 			    }
 		        }
                     }
+		if ($addmodpath2)
+		    {
+                    foreach $modfile (@{$opt->{file}})
+                        {
+		        $path = cnvpath ("$addmodpath2/$modfile") ;
+		        #print "path = $_ -> $path\n" ;
+		        if (-f $path)
+			    { ## module fould
+	    		    $EPMODPERL .= "\r\nLoadModule ". ($mp2cfg?($opt->{name2} || $opt->{name}):$opt->{name}) . " \"$path\"" ;
+			    print " + Load dynamic module $mod\n   ($path)\n" ;
+			    $found = 1 ;
+			    last searchmod ;
+			    }
+		        }
+                    }
 		foreach (@$paths)
 		    {
 		    $path = cnvpath (eval "\"$_\"") ;
@@ -1106,7 +1138,15 @@ if ($b && $apache)
         print "-> EmbperlObject requires File::Spec 0.8 or higher, found $FSVer, please upgrade!\n" ;
         }
         
-    CheckModule ("CGI", "-> File Upload will not work without CGI.pm installed") ;
+    if (my $CGIVer = CheckModule ("CGI", "-> File Upload will not work without CGI.pm installed"))
+	{
+        $CGIVer =~ /(\d+)\.(\d+)/ ;
+	if ($1 < 2 || ($1 == 2 && $2 < 43))
+	    {
+	    print "-> File Upload will not work with CGI.pm < 2.43, please upgrade!\n" ;
+	    }
+
+	} ;
 
     ### write out test configuration file ###
 



---------------------------------------------------------------------
To unsubscribe, e-mail: embperl-cvs-unsubscribe@perl.apache.org
For additional commands, e-mail: embperl-cvs-help@perl.apache.org