components/apache2-modules/mod_perl/patches/TestConfigParse.patch
author Petr Sumbera <petr.sumbera@oracle.com>
Tue, 11 Aug 2015 02:10:37 -0700
changeset 4788 159f02dfcdd3
parent 3563 a34ad418afb9
permissions -rw-r--r--
21613799 mod_perl upgrade to version 2.0.9 + provide Apache 2.4 module
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
3563
a34ad418afb9 20229478 mod_perl test suite wouldn't start/pass due number of reasons
Petr Sumbera <petr.sumbera@oracle.com>
parents: 278
diff changeset
     1
Patch origin: in-house
a34ad418afb9 20229478 mod_perl test suite wouldn't start/pass due number of reasons
Petr Sumbera <petr.sumbera@oracle.com>
parents: 278
diff changeset
     2
Patch status: Solaris-specific; not suitable for upstream
a34ad418afb9 20229478 mod_perl test suite wouldn't start/pass due number of reasons
Petr Sumbera <petr.sumbera@oracle.com>
parents: 278
diff changeset
     3
4788
159f02dfcdd3 21613799 mod_perl upgrade to version 2.0.9 + provide Apache 2.4 module
Petr Sumbera <petr.sumbera@oracle.com>
parents: 3563
diff changeset
     4
For Apache 2.2 distinguishes 32bit and 64bit modules.
159f02dfcdd3 21613799 mod_perl upgrade to version 2.0.9 + provide Apache 2.4 module
Petr Sumbera <petr.sumbera@oracle.com>
parents: 3563
diff changeset
     5
For Apache 2.4 removes all MPMs modules except event MPM.
3563
a34ad418afb9 20229478 mod_perl test suite wouldn't start/pass due number of reasons
Petr Sumbera <petr.sumbera@oracle.com>
parents: 278
diff changeset
     6
4788
159f02dfcdd3 21613799 mod_perl upgrade to version 2.0.9 + provide Apache 2.4 module
Petr Sumbera <petr.sumbera@oracle.com>
parents: 3563
diff changeset
     7
--- Apache-Test/lib/Apache/TestConfigParse.pm
159f02dfcdd3 21613799 mod_perl upgrade to version 2.0.9 + provide Apache 2.4 module
Petr Sumbera <petr.sumbera@oracle.com>
parents: 3563
diff changeset
     8
+++ Apache-Test/lib/Apache/TestConfigParse.pm
159f02dfcdd3 21613799 mod_perl upgrade to version 2.0.9 + provide Apache 2.4 module
Petr Sumbera <petr.sumbera@oracle.com>
parents: 3563
diff changeset
     9
@@ -20,6 +20,7 @@
159f02dfcdd3 21613799 mod_perl upgrade to version 2.0.9 + provide Apache 2.4 module
Petr Sumbera <petr.sumbera@oracle.com>
parents: 3563
diff changeset
    10
 
159f02dfcdd3 21613799 mod_perl upgrade to version 2.0.9 + provide Apache 2.4 module
Petr Sumbera <petr.sumbera@oracle.com>
parents: 3563
diff changeset
    11
 use strict;
159f02dfcdd3 21613799 mod_perl upgrade to version 2.0.9 + provide Apache 2.4 module
Petr Sumbera <petr.sumbera@oracle.com>
parents: 3563
diff changeset
    12
 use warnings FATAL => 'all';
159f02dfcdd3 21613799 mod_perl upgrade to version 2.0.9 + provide Apache 2.4 module
Petr Sumbera <petr.sumbera@oracle.com>
parents: 3563
diff changeset
    13
+use Cwd;
159f02dfcdd3 21613799 mod_perl upgrade to version 2.0.9 + provide Apache 2.4 module
Petr Sumbera <petr.sumbera@oracle.com>
parents: 3563
diff changeset
    14
 
159f02dfcdd3 21613799 mod_perl upgrade to version 2.0.9 + provide Apache 2.4 module
Petr Sumbera <petr.sumbera@oracle.com>
parents: 3563
diff changeset
    15
 use Apache::TestTrace;
159f02dfcdd3 21613799 mod_perl upgrade to version 2.0.9 + provide Apache 2.4 module
Petr Sumbera <petr.sumbera@oracle.com>
parents: 3563
diff changeset
    16
 
159f02dfcdd3 21613799 mod_perl upgrade to version 2.0.9 + provide Apache 2.4 module
Petr Sumbera <petr.sumbera@oracle.com>
parents: 3563
diff changeset
    17
@@ -185,7 +186,7 @@
159f02dfcdd3 21613799 mod_perl upgrade to version 2.0.9 + provide Apache 2.4 module
Petr Sumbera <petr.sumbera@oracle.com>
parents: 3563
diff changeset
    18
 # - mod_fcgid causes https://rt.cpan.org/Public/Bug/Display.html?id=54476
159f02dfcdd3 21613799 mod_perl upgrade to version 2.0.9 + provide Apache 2.4 module
Petr Sumbera <petr.sumbera@oracle.com>
parents: 3563
diff changeset
    19
 # - mod_modnss.c and mod_rev.c require further configuration
159f02dfcdd3 21613799 mod_perl upgrade to version 2.0.9 + provide Apache 2.4 module
Petr Sumbera <petr.sumbera@oracle.com>
parents: 3563
diff changeset
    20
 my @autoconfig_skip_module = qw(mod_jk.c mod_casp2.c mod_bwshare.c
159f02dfcdd3 21613799 mod_perl upgrade to version 2.0.9 + provide Apache 2.4 module
Petr Sumbera <petr.sumbera@oracle.com>
parents: 3563
diff changeset
    21
-    mod_fcgid.c mod_evasive20.c mod_modnss.c mod_rev.c);
159f02dfcdd3 21613799 mod_perl upgrade to version 2.0.9 + provide Apache 2.4 module
Petr Sumbera <petr.sumbera@oracle.com>
parents: 3563
diff changeset
    22
+    mod_fcgid.c mod_evasive20.c mod_modnss.c mod_rev.c mod_mpm_prefork.c mod_mpm_worker.c);
159f02dfcdd3 21613799 mod_perl upgrade to version 2.0.9 + provide Apache 2.4 module
Petr Sumbera <petr.sumbera@oracle.com>
parents: 3563
diff changeset
    23
 
159f02dfcdd3 21613799 mod_perl upgrade to version 2.0.9 + provide Apache 2.4 module
Petr Sumbera <petr.sumbera@oracle.com>
parents: 3563
diff changeset
    24
 # add modules to be not inherited from the existing config.
159f02dfcdd3 21613799 mod_perl upgrade to version 2.0.9 + provide Apache 2.4 module
Petr Sumbera <petr.sumbera@oracle.com>
parents: 3563
diff changeset
    25
 # e.g. prevent from LoadModule perl_module to be included twice, when
159f02dfcdd3 21613799 mod_perl upgrade to version 2.0.9 + provide Apache 2.4 module
Petr Sumbera <petr.sumbera@oracle.com>
parents: 3563
diff changeset
    26
@@ -212,10 +213,26 @@
159f02dfcdd3 21613799 mod_perl upgrade to version 2.0.9 + provide Apache 2.4 module
Petr Sumbera <petr.sumbera@oracle.com>
parents: 3563
diff changeset
    27
 #inherit LoadModule
159f02dfcdd3 21613799 mod_perl upgrade to version 2.0.9 + provide Apache 2.4 module
Petr Sumbera <petr.sumbera@oracle.com>
parents: 3563
diff changeset
    28
 sub inherit_load_module {
159f02dfcdd3 21613799 mod_perl upgrade to version 2.0.9 + provide Apache 2.4 module
Petr Sumbera <petr.sumbera@oracle.com>
parents: 3563
diff changeset
    29
     my($self, $c, $directive) = @_;
159f02dfcdd3 21613799 mod_perl upgrade to version 2.0.9 + provide Apache 2.4 module
Petr Sumbera <petr.sumbera@oracle.com>
parents: 3563
diff changeset
    30
+    my $httpd64bit = 0;
159f02dfcdd3 21613799 mod_perl upgrade to version 2.0.9 + provide Apache 2.4 module
Petr Sumbera <petr.sumbera@oracle.com>
parents: 3563
diff changeset
    31
+    my $cwd = getcwd();
159f02dfcdd3 21613799 mod_perl upgrade to version 2.0.9 + provide Apache 2.4 module
Petr Sumbera <petr.sumbera@oracle.com>
parents: 3563
diff changeset
    32
+    if (index($cwd, "amd64") != -1 or index($cwd, "sparcv9") != -1) {
159f02dfcdd3 21613799 mod_perl upgrade to version 2.0.9 + provide Apache 2.4 module
Petr Sumbera <petr.sumbera@oracle.com>
parents: 3563
diff changeset
    33
+        $httpd64bit = 1;
159f02dfcdd3 21613799 mod_perl upgrade to version 2.0.9 + provide Apache 2.4 module
Petr Sumbera <petr.sumbera@oracle.com>
parents: 3563
diff changeset
    34
+    }
159f02dfcdd3 21613799 mod_perl upgrade to version 2.0.9 + provide Apache 2.4 module
Petr Sumbera <petr.sumbera@oracle.com>
parents: 3563
diff changeset
    35
 
278
77b380ba9d84 7045614 Move Apache Web server to userland
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff changeset
    36
     for my $args (@{ $c->{$directive} }) {
77b380ba9d84 7045614 Move Apache Web server to userland
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff changeset
    37
         my $modname = $args->[0];
77b380ba9d84 7045614 Move Apache Web server to userland
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff changeset
    38
         my $file = $self->server_file_rel2abs($args->[1]);
4788
159f02dfcdd3 21613799 mod_perl upgrade to version 2.0.9 + provide Apache 2.4 module
Petr Sumbera <petr.sumbera@oracle.com>
parents: 3563
diff changeset
    39
+        if ($httpd64bit == 0) {
159f02dfcdd3 21613799 mod_perl upgrade to version 2.0.9 + provide Apache 2.4 module
Petr Sumbera <petr.sumbera@oracle.com>
parents: 3563
diff changeset
    40
+            unless ($file !~ m/\/64\//) {
159f02dfcdd3 21613799 mod_perl upgrade to version 2.0.9 + provide Apache 2.4 module
Petr Sumbera <petr.sumbera@oracle.com>
parents: 3563
diff changeset
    41
+                debug "$file is 64 bit module (we don't want it)";
159f02dfcdd3 21613799 mod_perl upgrade to version 2.0.9 + provide Apache 2.4 module
Petr Sumbera <petr.sumbera@oracle.com>
parents: 3563
diff changeset
    42
+                next;
159f02dfcdd3 21613799 mod_perl upgrade to version 2.0.9 + provide Apache 2.4 module
Petr Sumbera <petr.sumbera@oracle.com>
parents: 3563
diff changeset
    43
+            }
159f02dfcdd3 21613799 mod_perl upgrade to version 2.0.9 + provide Apache 2.4 module
Petr Sumbera <petr.sumbera@oracle.com>
parents: 3563
diff changeset
    44
+        } else {
159f02dfcdd3 21613799 mod_perl upgrade to version 2.0.9 + provide Apache 2.4 module
Petr Sumbera <petr.sumbera@oracle.com>
parents: 3563
diff changeset
    45
+            unless ($file =~ m/\/64\// || $file =~ m/\/2\.4\//) {
159f02dfcdd3 21613799 mod_perl upgrade to version 2.0.9 + provide Apache 2.4 module
Petr Sumbera <petr.sumbera@oracle.com>
parents: 3563
diff changeset
    46
+                debug "$file is 32 bit module (we don't want it)";
159f02dfcdd3 21613799 mod_perl upgrade to version 2.0.9 + provide Apache 2.4 module
Petr Sumbera <petr.sumbera@oracle.com>
parents: 3563
diff changeset
    47
+                next;
159f02dfcdd3 21613799 mod_perl upgrade to version 2.0.9 + provide Apache 2.4 module
Petr Sumbera <petr.sumbera@oracle.com>
parents: 3563
diff changeset
    48
+            }
3563
a34ad418afb9 20229478 mod_perl test suite wouldn't start/pass due number of reasons
Petr Sumbera <petr.sumbera@oracle.com>
parents: 278
diff changeset
    49
+        }
278
77b380ba9d84 7045614 Move Apache Web server to userland
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff changeset
    50
 
77b380ba9d84 7045614 Move Apache Web server to userland
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff changeset
    51
         unless (-e $file) {
77b380ba9d84 7045614 Move Apache Web server to userland
Petr Sumbera <petr.sumbera@oracle.com>
parents:
diff changeset
    52
             debug "$file does not exist, skipping LoadModule";