390a144903
nginx module selection is, by default, the same as the one sets by the upstream configure script. Patches improving the cross-compilation support have already been sent upstream for integration [1-5]. All these patches are needed because nginx uses its own handwritten build-system, which is cross-platform, but does not properly support cross-compilation. Fixes bug: #3427 [6] [1] http://mailman.nginx.org/pipermail/nginx-devel/2014-August/005722.html [2] http://mailman.nginx.org/pipermail/nginx-devel/2014-August/005724.html [3] http://mailman.nginx.org/pipermail/nginx-devel/2014-August/005725.html [4] http://mailman.nginx.org/pipermail/nginx-devel/2014-August/005723.html [5] http://mailman.nginx.org/pipermail/nginx-devel/2014-August/005726.html [6] https://bugs.uclibc.org/show_bug.cgi?id=3427 Signed-off-by: Samuel Martin <s.martin49@gmail.com> Cc: Daniele Salvatore Albano <info@daccii.it> Cc: Maxime Hadjinlian <maxime.hadjinlian@gmail.com> Cc: Johan Oudinet <johan.oudinet@gmail.com> Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Cc: Gustavo Zacarias <gustavo@zacarias.com.ar> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Tested-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
210 lines
7.6 KiB
Diff
210 lines
7.6 KiB
Diff
From 7d1bc0364feab22299abeeb29ae2cfdcabd7e2c0 Mon Sep 17 00:00:00 2001
|
|
From: Samuel Martin <s.martin49@gmail.com>
|
|
Date: Thu, 29 May 2014 18:52:10 +0200
|
|
Subject: [PATCH 3/5] auto/*: set ngx_feature_run_force_result for each feature
|
|
requiring run test
|
|
|
|
Each feature requiring a run test has a matching preset variable (called
|
|
ngx_force_*) used to set ngx_feature_run_force_result.
|
|
|
|
These ngx_force_* variables are passed through the environment at configure
|
|
time.
|
|
|
|
Signed-off-by: Samuel Martin <s.martin49@gmail.com>
|
|
---
|
|
auto/cc/conf | 3 +++
|
|
auto/cc/name | 1 +
|
|
auto/lib/libatomic/conf | 1 +
|
|
auto/os/darwin | 3 +++
|
|
auto/os/linux | 4 ++++
|
|
auto/unix | 8 ++++++++
|
|
6 files changed, 20 insertions(+)
|
|
|
|
diff --git a/auto/cc/conf b/auto/cc/conf
|
|
index edc6d74..a61ade4 100644
|
|
--- a/auto/cc/conf
|
|
+++ b/auto/cc/conf
|
|
@@ -159,6 +159,7 @@ if [ "$NGX_PLATFORM" != win32 ]; then
|
|
ngx_feature="gcc builtin atomic operations"
|
|
ngx_feature_name=NGX_HAVE_GCC_ATOMIC
|
|
ngx_feature_run=yes
|
|
+ ngx_feature_run_force_result="$ngx_force_gcc_have_atomic"
|
|
ngx_feature_incs=
|
|
ngx_feature_path=
|
|
ngx_feature_libs=
|
|
@@ -179,6 +180,7 @@ if [ "$NGX_PLATFORM" != win32 ]; then
|
|
ngx_feature="C99 variadic macros"
|
|
ngx_feature_name="NGX_HAVE_C99_VARIADIC_MACROS"
|
|
ngx_feature_run=yes
|
|
+ ngx_feature_run_force_result="$ngx_force_c99_have_variadic_macros"
|
|
ngx_feature_incs="#include <stdio.h>
|
|
#define var(dummy, ...) sprintf(__VA_ARGS__)"
|
|
ngx_feature_path=
|
|
@@ -193,6 +195,7 @@ if [ "$NGX_PLATFORM" != win32 ]; then
|
|
ngx_feature="gcc variadic macros"
|
|
ngx_feature_name="NGX_HAVE_GCC_VARIADIC_MACROS"
|
|
ngx_feature_run=yes
|
|
+ ngx_feature_run_force_result="$ngx_force_gcc_have_variadic_macros"
|
|
ngx_feature_incs="#include <stdio.h>
|
|
#define var(dummy, args...) sprintf(args)"
|
|
ngx_feature_path=
|
|
diff --git a/auto/cc/name b/auto/cc/name
|
|
index 51a7ed9..d237d47 100644
|
|
--- a/auto/cc/name
|
|
+++ b/auto/cc/name
|
|
@@ -8,6 +8,7 @@ if [ "$NGX_PLATFORM" != win32 ]; then
|
|
ngx_feature="C compiler"
|
|
ngx_feature_name=
|
|
ngx_feature_run=yes
|
|
+ ngx_feature_run_force_result="$ngx_force_c_compiler"
|
|
ngx_feature_incs=
|
|
ngx_feature_path=
|
|
ngx_feature_libs=
|
|
diff --git a/auto/lib/libatomic/conf b/auto/lib/libatomic/conf
|
|
index d1e484a..3724916 100644
|
|
--- a/auto/lib/libatomic/conf
|
|
+++ b/auto/lib/libatomic/conf
|
|
@@ -15,6 +15,7 @@ else
|
|
ngx_feature="atomic_ops library"
|
|
ngx_feature_name=NGX_HAVE_LIBATOMIC
|
|
ngx_feature_run=yes
|
|
+ ngx_feature_run_force_result="$ngx_force_have_libatomic"
|
|
ngx_feature_incs="#define AO_REQUIRE_CAS
|
|
#include <atomic_ops.h>"
|
|
ngx_feature_path=
|
|
diff --git a/auto/os/darwin b/auto/os/darwin
|
|
index b97518a..30f323c 100644
|
|
--- a/auto/os/darwin
|
|
+++ b/auto/os/darwin
|
|
@@ -27,6 +27,7 @@ NGX_KQUEUE_CHECKED=YES
|
|
ngx_feature="kqueue's EVFILT_TIMER"
|
|
ngx_feature_name="NGX_HAVE_TIMER_EVENT"
|
|
ngx_feature_run=yes
|
|
+ngx_feature_run_force_result="$ngx_force_have_timer_event"
|
|
ngx_feature_incs="#include <sys/event.h>
|
|
#include <sys/time.h>"
|
|
ngx_feature_path=
|
|
@@ -57,6 +58,7 @@ ngx_feature_test="int kq;
|
|
ngx_feature="Darwin 64-bit kqueue millisecond timeout bug"
|
|
ngx_feature_name=NGX_DARWIN_KEVENT_BUG
|
|
ngx_feature_run=bug
|
|
+ngx_feature_run_force_result="$ngx_force_kevent_bug"
|
|
ngx_feature_incs="#include <sys/event.h>
|
|
#include <sys/time.h>"
|
|
ngx_feature_path=
|
|
@@ -87,6 +89,7 @@ CC_AUX_FLAGS="$CC_AUX_FLAGS"
|
|
ngx_feature="sendfile()"
|
|
ngx_feature_name="NGX_HAVE_SENDFILE"
|
|
ngx_feature_run=yes
|
|
+ngx_feature_run_force_result="$ngx_force_have_sendfile"
|
|
ngx_feature_incs="#include <sys/types.h>
|
|
#include <sys/socket.h>
|
|
#include <sys/uio.h>
|
|
diff --git a/auto/os/linux b/auto/os/linux
|
|
index 19bf832..16848b2 100644
|
|
--- a/auto/os/linux
|
|
+++ b/auto/os/linux
|
|
@@ -49,6 +49,7 @@ fi
|
|
ngx_feature="epoll"
|
|
ngx_feature_name="NGX_HAVE_EPOLL"
|
|
ngx_feature_run=yes
|
|
+ngx_feature_run_force_result="$ngx_force_have_epoll"
|
|
ngx_feature_incs="#include <sys/epoll.h>"
|
|
ngx_feature_path=
|
|
ngx_feature_libs=
|
|
@@ -106,6 +107,7 @@ CC_AUX_FLAGS="$cc_aux_flags -D_GNU_SOURCE"
|
|
ngx_feature="sendfile()"
|
|
ngx_feature_name="NGX_HAVE_SENDFILE"
|
|
ngx_feature_run=yes
|
|
+ngx_feature_run_force_result="$ngx_force_have_sendfile"
|
|
ngx_feature_incs="#include <sys/sendfile.h>
|
|
#include <errno.h>"
|
|
ngx_feature_path=
|
|
@@ -127,6 +129,7 @@ CC_AUX_FLAGS="$cc_aux_flags -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64"
|
|
ngx_feature="sendfile64()"
|
|
ngx_feature_name="NGX_HAVE_SENDFILE64"
|
|
ngx_feature_run=yes
|
|
+ngx_feature_run_force_result="$ngx_force_have_sendfile64"
|
|
ngx_feature_incs="#include <sys/sendfile.h>
|
|
#include <errno.h>"
|
|
ngx_feature_path=
|
|
@@ -145,6 +148,7 @@ ngx_include="sys/prctl.h"; . auto/include
|
|
ngx_feature="prctl(PR_SET_DUMPABLE)"
|
|
ngx_feature_name="NGX_HAVE_PR_SET_DUMPABLE"
|
|
ngx_feature_run=yes
|
|
+ngx_feature_run_force_result="$ngx_force_have_pr_set_dumpable"
|
|
ngx_feature_incs="#include <sys/prctl.h>"
|
|
ngx_feature_path=
|
|
ngx_feature_libs=
|
|
diff --git a/auto/unix b/auto/unix
|
|
index 10fd3d2..b7cc9cb 100755
|
|
--- a/auto/unix
|
|
+++ b/auto/unix
|
|
@@ -99,6 +99,7 @@ if test -z "$NGX_KQUEUE_CHECKED"; then
|
|
ngx_feature="kqueue's EVFILT_TIMER"
|
|
ngx_feature_name="NGX_HAVE_TIMER_EVENT"
|
|
ngx_feature_run=yes
|
|
+ ngx_feature_run_force_result="$ngx_force_have_timer_event"
|
|
ngx_feature_incs="#include <sys/event.h>
|
|
#include <sys/time.h>"
|
|
ngx_feature_path=
|
|
@@ -544,6 +545,7 @@ ngx_feature_test="char buf[1]; ssize_t n; n = pwrite(1, buf, 1, 0);
|
|
ngx_feature="sys_nerr"
|
|
ngx_feature_name="NGX_SYS_NERR"
|
|
ngx_feature_run=value
|
|
+ngx_feature_run_force_result="$ngx_force_sys_nerr"
|
|
ngx_feature_incs='#include <errno.h>
|
|
#include <stdio.h>'
|
|
ngx_feature_path=
|
|
@@ -558,6 +560,7 @@ if [ $ngx_found = no ]; then
|
|
ngx_feature="_sys_nerr"
|
|
ngx_feature_name="NGX_SYS_NERR"
|
|
ngx_feature_run=value
|
|
+ ngx_feature_run_force_result="$ngx_force_sys_nerr"
|
|
ngx_feature_incs='#include <errno.h>
|
|
#include <stdio.h>'
|
|
ngx_feature_path=
|
|
@@ -573,6 +576,7 @@ if [ $ngx_found = no ]; then
|
|
ngx_feature='maximum errno'
|
|
ngx_feature_name=NGX_SYS_NERR
|
|
ngx_feature_run=value
|
|
+ ngx_feature_run_force_result="$ngx_force_sys_nerr"
|
|
ngx_feature_incs='#include <errno.h>
|
|
#include <string.h>
|
|
#include <stdio.h>'
|
|
@@ -631,6 +635,7 @@ ngx_feature_test="void *p; p = memalign(4096, 4096);
|
|
ngx_feature="mmap(MAP_ANON|MAP_SHARED)"
|
|
ngx_feature_name="NGX_HAVE_MAP_ANON"
|
|
ngx_feature_run=yes
|
|
+ngx_feature_run_force_result="$ngx_force_have_map_anon"
|
|
ngx_feature_incs="#include <sys/mman.h>"
|
|
ngx_feature_path=
|
|
ngx_feature_libs=
|
|
@@ -644,6 +649,7 @@ ngx_feature_test="void *p;
|
|
ngx_feature='mmap("/dev/zero", MAP_SHARED)'
|
|
ngx_feature_name="NGX_HAVE_MAP_DEVZERO"
|
|
ngx_feature_run=yes
|
|
+ngx_feature_run_force_result="$ngx_force_have_map_devzero"
|
|
ngx_feature_incs="#include <sys/mman.h>
|
|
#include <sys/stat.h>
|
|
#include <fcntl.h>"
|
|
@@ -659,6 +665,7 @@ ngx_feature_test='void *p; int fd;
|
|
ngx_feature="System V shared memory"
|
|
ngx_feature_name="NGX_HAVE_SYSVSHM"
|
|
ngx_feature_run=yes
|
|
+ngx_feature_run_force_result="$ngx_force_have_sysvshm"
|
|
ngx_feature_incs="#include <sys/ipc.h>
|
|
#include <sys/shm.h>"
|
|
ngx_feature_path=
|
|
@@ -673,6 +680,7 @@ ngx_feature_test="int id;
|
|
ngx_feature="POSIX semaphores"
|
|
ngx_feature_name="NGX_HAVE_POSIX_SEM"
|
|
ngx_feature_run=yes
|
|
+ngx_feature_run_force_result="$ngx_force_have_posix_sem"
|
|
ngx_feature_incs="#include <semaphore.h>"
|
|
ngx_feature_path=
|
|
ngx_feature_libs=
|
|
--
|
|
1.9.2
|
|
|