Hi,

I'm currently trying to backport this patch onto a BSP based on an older
PTXdist. I'll shorten the context to the relevant parts:

On 03.08.2017 16:49, Clemens Gruber wrote:
> Also update patches from buildroot and replace the missing --with-ipv6
> flag by overriding the feature build test results for IPv6 depending on
> the GLOBAL_IPV6_OPTION in PTXdist.
> 
> Signed-off-by: Clemens Gruber <clemens.gru...@pqgruber.com>
> ---
> 
> Changes since v1:
> - Do not depend on build-time autodetection and force IPv6 test result
> - Readd buildroot git-ptx-patches tag after base
> 

[...]

> diff --git 
> a/patches/nginx-1.12.1/0101-auto-unix-allow-overriding-the-IPv6-build-test.patch
>  
> b/patches/nginx-1.12.1/0101-auto-unix-allow-overriding-the-IPv6-build-test.patch
> new file mode 100644
> index 000000000..93813beb7
> --- /dev/null
> +++ 
> b/patches/nginx-1.12.1/0101-auto-unix-allow-overriding-the-IPv6-build-test.patch
> @@ -0,0 +1,33 @@
> +From: Clemens Gruber <clemens.gru...@pqgruber.com>
> +Date: Thu, 3 Aug 2017 15:47:08 +0200
> +Subject: [PATCH] auto/unix: allow overriding the IPv6 build tests
> +
> +Signed-off-by: Clemens Gruber <clemens.gru...@pqgruber.com>
> +---
> + auto/unix | 7 ++++---
> + 1 file changed, 4 insertions(+), 3 deletions(-)
> +
> +diff --git a/auto/unix b/auto/unix
> +index ed821b5a5aaa..dba1be478b9d 100644
> +--- a/auto/unix
> ++++ b/auto/unix
> +@@ -412,7 +412,8 @@ ngx_feature_test="setsockopt(0, IPPROTO_IP, IP_PKTINFO, 
> NULL, 0)"
> + 
> + ngx_feature="IPV6_RECVPKTINFO"
> + ngx_feature_name="NGX_HAVE_IPV6_RECVPKTINFO"
> +-ngx_feature_run=no
> ++ngx_feature_run_force_result="$ngx_force_ipv6"
> ++ngx_feature_run=value
> + ngx_feature_incs="#include <sys/socket.h>
> +                   #include <netinet/in.h>"
> + ngx_feature_path=
> +@@ -640,7 +640,8 @@ ngx_param=NGX_MAX_TIME_T_VALUE; 
> ngx_value=$ngx_max_value; . auto/types/value
> + 
> + ngx_feature="AF_INET6"
> + ngx_feature_name="NGX_HAVE_INET6"
> +-ngx_feature_run=no
> ++ngx_feature_run_force_result="$ngx_force_ipv6"
> ++ngx_feature_run=value
> + ngx_feature_incs="#include <sys/socket.h>
> +                   #include <netinet/in.h>
> +                   #include <arpa/inet.h>"

[...]

> diff --git a/rules/nginx.make b/rules/nginx.make
> index ef98c0adb..0f8ce65f2 100644
> --- a/rules/nginx.make
> +++ b/rules/nginx.make
> @@ -17,8 +17,8 @@ PACKAGES-$(PTXCONF_NGINX) += nginx
>  #
>  # Paths and names
>  #
> -NGINX_VERSION        := 1.10.3
> -NGINX_MD5    := 204a20cb4f0b0c9db746c630d89ff4ea
> +NGINX_VERSION        := 1.12.1
> +NGINX_MD5    := a307e74aca95403e5ee00f153807ce58
>  NGINX                := nginx-$(NGINX_VERSION)
>  NGINX_SUFFIX := tar.gz
>  NGINX_URL    := https://nginx.org/download/$(NGINX).$(NGINX_SUFFIX)
> @@ -44,7 +44,8 @@ NGINX_CONF_ENV := \
>       ngx_force_have_map_anon=yes \
>       ngx_force_have_map_devzero=yes \
>       ngx_force_have_sysvshm=yes \
> -     ngx_force_have_posix_sem=yes
> +     ngx_force_have_posix_sem=yes \

I cannot get IPv6 to work, because nginx complains about "the INET6
sockets are not supported on this platform" when I try to have it listen
on [::]:443. This happens because NGX_HAVE_INET6 apparently gets defined
to "yes" in objs/ngx_auto_config.h, and it works well if I change this line:

> +     ngx_force_ipv6=$(call ptx/ifdef, PTXCONF_GLOBAL_IPV6, yes, no)

to
        ngx_force_ipv6=$(call ptx/ifdef, PTXCONF_GLOBAL_IPV6, 1, 0)

Can you reproduce this?

 - Roland

-- 
Pengutronix e.K.                  | Roland Hieber               |
Industrial Linux Solutions        | http://www.pengutronix.de/  |
Peiner Str. 6-8, 31137 Hildesheim | Phone: +49-5121-206917-5086 |
Amtsgericht Hildesheim, HRA 2686  | Fax:   +49-5121-206917-5555 |

_______________________________________________
ptxdist mailing list
ptxdist@pengutronix.de

Reply via email to