From: Graham Leggett Date: Fri, 27 Dec 2019 23:00:53 +0000 (+0000) Subject: Add support for cross compiling to apxs. If apxs is being executed from somewhere X-Git-Tag: 2.5.0-alpha2-ci-test-only~1742 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=c7d7b6d1a3b3c4b2c7ad19258fd0d388901a1c9d;p=thirdparty%2Fapache%2Fhttpd.git Add support for cross compiling to apxs. If apxs is being executed from somewhere other than its target location, add that prefix to includes and library directories. Without this, apxs would fail to find config_vars.mk and exit. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1872042 13f79535-47bb-0310-9956-ffa450edef68 --- diff --git a/CHANGES b/CHANGES index e86ae23a235..292f93e0458 100644 --- a/CHANGES +++ b/CHANGES @@ -1,6 +1,10 @@ -*- coding: utf-8 -*- Changes with Apache 2.5.1 + *) Add support for cross compiling to apxs. If apxs is being executed from somewhere + other than its target location, add that prefix to includes and library directories. + Without this, apxs would fail to find config_vars.mk and exit. [Graham Leggett] + *) Add a config layout for OpenWRT. [Graham Leggett] *) mod_http2: Fixed rare cases where a h2 worker could deadlock the main connection. diff --git a/support/apxs.in b/support/apxs.in index ad1287ffb13..e159418b625 100644 --- a/support/apxs.in +++ b/support/apxs.in @@ -23,10 +23,15 @@ package apxs; ## Configuration ## +# are we building in a cross compile environment? If so, destdir contains +# the base directory of the cross compiled environment, otherwise destdir +# is the empty string. +my $destdir = substr($0, 0, rindex($0, "@exp_bindir@")); + my %config_vars = (); my $installbuilddir = "@exp_installbuilddir@"; -get_config_vars("$installbuilddir/config_vars.mk",\%config_vars); +get_config_vars($destdir . "$installbuilddir/config_vars.mk",\%config_vars); # read the configuration variables once @@ -41,10 +46,10 @@ my $CFG_CFLAGS = join ' ', map { get_vars($_) } qw(SHLTCFLAGS CFLAGS NOTEST_CPPFLAGS EXTRA_CPPFLAGS EXTRA_CFLAGS); my $CFG_LDFLAGS = join ' ', map { get_vars($_) } qw(LDFLAGS NOTEST_LDFLAGS SH_LDFLAGS); -my $includedir = get_vars("includedir"); +my $includedir = $destdir . get_vars("includedir"); my $CFG_INCLUDEDIR = eval qq("$includedir"); my $CFG_CC = get_vars("CC"); -my $libexecdir = get_vars("libexecdir"); +my $libexecdir = $destdir . get_vars("libexecdir"); my $CFG_LIBEXECDIR = eval qq("$libexecdir"); my $sbindir = get_vars("sbindir"); my $CFG_SBINDIR = eval qq("$sbindir"); @@ -335,7 +340,7 @@ if ($opt_q) { } } -my $apr_config = get_vars("APR_CONFIG"); +my $apr_config = $destdir . get_vars("APR_CONFIG"); if (! -x "$apr_config") { error("$apr_config not found!"); @@ -346,7 +351,7 @@ my $apr_major_version = (split /\./, `$apr_config --version`)[0]; my $apu_config = ""; if ($apr_major_version < 2) { - $apu_config = get_vars("APU_CONFIG"); + $apu_config = $destdir . get_vars("APU_CONFIG"); if (! -x "$apu_config") { error("$apu_config not found!");