summaryrefslogtreecommitdiffstats
path: root/httpd-2.1.10-apxs.patch
diff options
context:
space:
mode:
Diffstat (limited to 'httpd-2.1.10-apxs.patch')
-rw-r--r--httpd-2.1.10-apxs.patch97
1 files changed, 97 insertions, 0 deletions
diff --git a/httpd-2.1.10-apxs.patch b/httpd-2.1.10-apxs.patch
new file mode 100644
index 0000000..5881276
--- /dev/null
+++ b/httpd-2.1.10-apxs.patch
@@ -0,0 +1,97 @@
+
+- remove unnecessary stuff which runs httpd during build
+- drop unnecessary --libs output from ap?-?-config
+- make multilib-safe
+
+Upstream-Status: The is-mod_so-linked-in hack is done better on trunk.
+ The multilib hack is awful and can't go upstream.
+
+--- httpd-2.2.2/support/apxs.in.apxs
++++ httpd-2.2.2/support/apxs.in
+@@ -25,7 +25,18 @@
+
+ my %config_vars = ();
+
+-my $installbuilddir = "@exp_installbuilddir@";
++# Awful hack to make apxs libdir-agnostic:
++my $pkg_config = "/usr/bin/pkg-config";
++if (! -x "$pkg_config") {
++ error("$pkg_config not found!");
++ exit(1);
++}
++
++my $libdir = `pkg-config --variable=libdir apr-1`;
++chomp $libdir;
++
++my $installbuilddir = $libdir . "/httpd/build";
++
+ get_config_vars("$installbuilddir/config_vars.mk",\%config_vars);
+
+ # read the configuration variables once
+@@ -184,34 +195,6 @@
+ }
+ }
+
+-##
+-## Initial shared object support check
+-##
+-my $httpd = get_vars("sbindir") . "/" . get_vars("progname");
+-$httpd = eval qq("$httpd");
+-$httpd = eval qq("$httpd");
+-my $envvars = get_vars("sbindir") . "/envvars";
+-$envvars = eval qq("$envvars");
+-$envvars = eval qq("$envvars");
+-
+-#allow apxs to be run from the source tree, before installation
+-if ($0 =~ m:support/apxs$:) {
+- ($httpd = $0) =~ s:support/apxs$::;
+-}
+-
+-unless (-x "$httpd") {
+- error("$httpd not found or not executable");
+- exit 1;
+-}
+-
+-unless (grep /mod_so/, `. $envvars && $httpd -l`) {
+- error("Sorry, no shared object support for Apache");
+- error("available under your platform. Make sure");
+- error("the Apache module mod_so is compiled into");
+- error("your server binary `$httpd'.");
+- exit 1;
+-}
+-
+ sub get_config_vars{
+ my ($file, $rh_config) = @_;
+
+@@ -291,7 +274,7 @@
+ $data =~ s|%NAME%|$name|sg;
+ $data =~ s|%TARGET%|$CFG_TARGET|sg;
+ $data =~ s|%PREFIX%|$prefix|sg;
+- $data =~ s|%INSTALLBUILDDIR%|$installbuilddir|sg;
++ $data =~ s|%LIBDIR%|$libdir|sg;
+
+ my ($mkf, $mods, $src) = ($data =~ m|^(.+)-=#=-\n(.+)-=#=-\n(.+)|s);
+
+@@ -433,9 +416,9 @@
+
+ if ($opt_p == 1) {
+
+- my $apr_libs=`$apr_config --cflags --ldflags --link-libtool --libs`;
++ my $apr_libs=`$apr_config --cflags --ldflags --link-libtool`;
+ chomp($apr_libs);
+- my $apu_libs=`$apu_config --ldflags --link-libtool --libs`;
++ my $apu_libs=`$apu_config --ldflags --link-libtool`;
+ chomp($apu_libs);
+
+ $opt .= " ".$apu_libs." ".$apr_libs;
+@@ -646,8 +629,8 @@
+
+ builddir=.
+ top_srcdir=%PREFIX%
+-top_builddir=%PREFIX%
+-include %INSTALLBUILDDIR%/special.mk
++top_builddir=%LIBDIR%/httpd
++include %LIBDIR%/httpd/build/special.mk
+
+ # the used tools
+ APXS=apxs