diff mbox series

[meta-webserver,1/1] nginx: add configure option

Message ID 20231004161345.322169-1-joe.slater@windriver.com
State Under Review
Headers show
Series [meta-webserver,1/1] nginx: add configure option | expand

Commit Message

Slater, Joseph Oct. 4, 2023, 4:13 p.m. UTC
From: Joe Slater <joe.slater@windriver.com>

Support --with-http_xslt_module configure option via a PACKAGECONFIG
option.  The option is not added to the defaults.

Signed-off-by: Joe Slater <joe.slater@windriver.com>
---
 .../files/0001-configure-libxslt-conf.patch   | 39 +++++++++++++++++++
 meta-webserver/recipes-httpd/nginx/nginx.inc  |  3 ++
 2 files changed, 42 insertions(+)
 create mode 100644 meta-webserver/recipes-httpd/nginx/files/0001-configure-libxslt-conf.patch

Comments

Khem Raj Oct. 4, 2023, 4:57 p.m. UTC | #1
On Wed, Oct 4, 2023 at 9:13 AM Joe Slater via lists.openembedded.org
<joe.slater=windriver.com@lists.openembedded.org> wrote:
>
> From: Joe Slater <joe.slater@windriver.com>
>
> Support --with-http_xslt_module configure option via a PACKAGECONFIG
> option.  The option is not added to the defaults.
>
> Signed-off-by: Joe Slater <joe.slater@windriver.com>
> ---
>  .../files/0001-configure-libxslt-conf.patch   | 39 +++++++++++++++++++
>  meta-webserver/recipes-httpd/nginx/nginx.inc  |  3 ++
>  2 files changed, 42 insertions(+)
>  create mode 100644 meta-webserver/recipes-httpd/nginx/files/0001-configure-libxslt-conf.patch
>
> diff --git a/meta-webserver/recipes-httpd/nginx/files/0001-configure-libxslt-conf.patch b/meta-webserver/recipes-httpd/nginx/files/0001-configure-libxslt-conf.patch
> new file mode 100644
> index 0000000000..7ba2a1fb85
> --- /dev/null
> +++ b/meta-webserver/recipes-httpd/nginx/files/0001-configure-libxslt-conf.patch
> @@ -0,0 +1,39 @@
> +From 0c3c669464a514cf8d0cac08282ecb2b486f440f Mon Sep 17 00:00:00 2001
> +From: Joe Slater <joe.slater@windriver.com>
> +Date: Tue, 3 Oct 2023 19:21:17 +0000
> +Subject: [PATCH] configure: libxslt conf
> +
> +Modify to find libxslt related include files under sysroot.
> +
> +Upstream-Status: Pending
> +
> +Signed-off-by: Joe Slater <joe.slater@windriver.com>
> +---
> + auto/lib/libxslt/conf | 4 ++--
> + 1 file changed, 2 insertions(+), 2 deletions(-)
> +
> +diff --git a/auto/lib/libxslt/conf b/auto/lib/libxslt/conf
> +index 3063ac7..eb77886 100644
> +--- a/auto/lib/libxslt/conf
> ++++ b/auto/lib/libxslt/conf
> +@@ -12,7 +12,7 @@
> +                       #include <libxslt/xsltInternals.h>
> +                       #include <libxslt/transform.h>
> +                       #include <libxslt/xsltutils.h>"
> +-    ngx_feature_path="/usr/include/libxml2"
> ++    ngx_feature_path="=/usr/include/libxml2"

For OE usecase, this might be enough, however, upstream might support
different compilers or even older gcc or clang where sysroot support is not
there or are configures with sysroot support disabled so =incpath syntax may
not work universally.  Perhaps adding a new case where PREFIX is set
then prepend
that to path if not them proceed as normal might make it easier to not rely on
tool features.

> +     ngx_feature_libs="-lxml2 -lxslt"
> +     ngx_feature_test="xmlParserCtxtPtr    ctxt = NULL;
> +                       xsltStylesheetPtr   sheet = NULL;
> +@@ -100,7 +100,7 @@ fi
> +     ngx_feature_name=NGX_HAVE_EXSLT
> +     ngx_feature_run=no
> +     ngx_feature_incs="#include <libexslt/exslt.h>"
> +-    ngx_feature_path="/usr/include/libxml2"
> ++    ngx_feature_path="=/usr/include/libxml2"
> +     ngx_feature_libs="-lexslt"
> +     ngx_feature_test="exsltRegisterAll();"
> +     . auto/feature
> +--
> +2.35.5
> +
> diff --git a/meta-webserver/recipes-httpd/nginx/nginx.inc b/meta-webserver/recipes-httpd/nginx/nginx.inc
> index 1ea32f7c94..8890e0bea1 100644
> --- a/meta-webserver/recipes-httpd/nginx/nginx.inc
> +++ b/meta-webserver/recipes-httpd/nginx/nginx.inc
> @@ -22,6 +22,7 @@ SRC_URI = " \
>      file://nginx-volatile.conf \
>      file://nginx.service \
>      file://nginx-fix-pidfile.patch \
> +    file://0001-configure-libxslt-conf.patch \
>  "
>
>  inherit siteinfo update-rc.d useradd systemd
> @@ -47,6 +48,8 @@ PACKAGECONFIG[ipv6] = "--with-ipv6,,"
>  PACKAGECONFIG[webdav] = "--with-http_dav_module,,"
>  PACKAGECONFIG[stream] = "--with-stream,,"
>
> +PACKAGECONFIG[xslt] = "--with-http_xslt_module,,libxslt"
> +
>  do_configure () {
>      if [ "${SITEINFO_BITS}" = "64" ]; then
>          PTRSIZE=8
> --
> 2.25.1
>
>
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#105337): https://lists.openembedded.org/g/openembedded-devel/message/105337
> Mute This Topic: https://lists.openembedded.org/mt/101758666/1997914
> Group Owner: openembedded-devel+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-devel/unsub [raj.khem@gmail.com]
> -=-=-=-=-=-=-=-=-=-=-=-
>
Slater, Joseph Oct. 4, 2023, 10:10 p.m. UTC | #2
> -----Original Message-----
> From: Khem Raj <raj.khem@gmail.com>
> Sent: Wednesday, October 4, 2023 9:58 AM
> To: Slater, Joseph <joe.slater@windriver.com>
> Cc: openembedded-devel@lists.openembedded.org; MacLeod, Randy
> <Randy.MacLeod@windriver.com>
> Subject: Re: [oe] [meta-webserver][PATCH 1/1] nginx: add configure option
> 
> On Wed, Oct 4, 2023 at 9:13 AM Joe Slater via lists.openembedded.org
> <joe.slater=windriver.com@lists.openembedded.org> wrote:
> >
> > From: Joe Slater <joe.slater@windriver.com>
> >
> > Support --with-http_xslt_module configure option via a PACKAGECONFIG
> > option.  The option is not added to the defaults.
> >
> > Signed-off-by: Joe Slater <joe.slater@windriver.com>
> > ---
> >  .../files/0001-configure-libxslt-conf.patch   | 39 +++++++++++++++++++
> >  meta-webserver/recipes-httpd/nginx/nginx.inc  |  3 ++
> >  2 files changed, 42 insertions(+)
> >  create mode 100644
> > meta-webserver/recipes-httpd/nginx/files/0001-configure-libxslt-conf.p
> > atch
> >
> > diff --git
> > a/meta-webserver/recipes-httpd/nginx/files/0001-configure-libxslt-conf
> > .patch
> > b/meta-webserver/recipes-httpd/nginx/files/0001-configure-libxslt-conf
> > .patch
> > new file mode 100644
> > index 0000000000..7ba2a1fb85
> > --- /dev/null
> > +++ b/meta-webserver/recipes-httpd/nginx/files/0001-configure-libxslt-
> > +++ conf.patch
> > @@ -0,0 +1,39 @@
> > +From 0c3c669464a514cf8d0cac08282ecb2b486f440f Mon Sep 17 00:00:00
> > +2001
> > +From: Joe Slater <joe.slater@windriver.com>
> > +Date: Tue, 3 Oct 2023 19:21:17 +0000
> > +Subject: [PATCH] configure: libxslt conf
> > +
> > +Modify to find libxslt related include files under sysroot.
> > +
> > +Upstream-Status: Pending
> > +
> > +Signed-off-by: Joe Slater <joe.slater@windriver.com>
> > +---
> > + auto/lib/libxslt/conf | 4 ++--
> > + 1 file changed, 2 insertions(+), 2 deletions(-)
> > +
> > +diff --git a/auto/lib/libxslt/conf b/auto/lib/libxslt/conf index
> > +3063ac7..eb77886 100644
> > +--- a/auto/lib/libxslt/conf
> > ++++ b/auto/lib/libxslt/conf
> > +@@ -12,7 +12,7 @@
> > +                       #include <libxslt/xsltInternals.h>
> > +                       #include <libxslt/transform.h>
> > +                       #include <libxslt/xsltutils.h>"
> > +-    ngx_feature_path="/usr/include/libxml2"
> > ++    ngx_feature_path="=/usr/include/libxml2"
> 
> For OE usecase, this might be enough, however, upstream might support different
> compilers or even older gcc or clang where sysroot support is not there or are
> configures with sysroot support disabled so =incpath syntax may not work
> universally.  Perhaps adding a new case where PREFIX is set then prepend that to
> path if not them proceed as normal might make it easier to not rely on tool
> features.

The objs/Makefile in the source code uses the "=" syntax to add the libxml2 include path,
so that would break, too.  I hadn't checked that before.

Joe

> 
> > +     ngx_feature_libs="-lxml2 -lxslt"
> > +     ngx_feature_test="xmlParserCtxtPtr    ctxt = NULL;
> > +                       xsltStylesheetPtr   sheet = NULL;
> > +@@ -100,7 +100,7 @@ fi
> > +     ngx_feature_name=NGX_HAVE_EXSLT
> > +     ngx_feature_run=no
> > +     ngx_feature_incs="#include <libexslt/exslt.h>"
> > +-    ngx_feature_path="/usr/include/libxml2"
> > ++    ngx_feature_path="=/usr/include/libxml2"
> > +     ngx_feature_libs="-lexslt"
> > +     ngx_feature_test="exsltRegisterAll();"
> > +     . auto/feature
> > +--
> > +2.35.5
> > +
> > diff --git a/meta-webserver/recipes-httpd/nginx/nginx.inc
> > b/meta-webserver/recipes-httpd/nginx/nginx.inc
> > index 1ea32f7c94..8890e0bea1 100644
> > --- a/meta-webserver/recipes-httpd/nginx/nginx.inc
> > +++ b/meta-webserver/recipes-httpd/nginx/nginx.inc
> > @@ -22,6 +22,7 @@ SRC_URI = " \
> >      file://nginx-volatile.conf \
> >      file://nginx.service \
> >      file://nginx-fix-pidfile.patch \
> > +    file://0001-configure-libxslt-conf.patch \
> >  "
> >
> >  inherit siteinfo update-rc.d useradd systemd @@ -47,6 +48,8 @@
> > PACKAGECONFIG[ipv6] = "--with-ipv6,,"
> >  PACKAGECONFIG[webdav] = "--with-http_dav_module,,"
> >  PACKAGECONFIG[stream] = "--with-stream,,"
> >
> > +PACKAGECONFIG[xslt] = "--with-http_xslt_module,,libxslt"
> > +
> >  do_configure () {
> >      if [ "${SITEINFO_BITS}" = "64" ]; then
> >          PTRSIZE=8
> > --
> > 2.25.1
> >
> >
> > -=-=-=-=-=-=-=-=-=-=-=-
> > Links: You receive all messages sent to this group.
> > View/Reply Online (#105337):
> > https://lists.openembedded.org/g/openembedded-devel/message/105337
> > Mute This Topic: https://lists.openembedded.org/mt/101758666/1997914
> > Group Owner: openembedded-devel+owner@lists.openembedded.org
> > Unsubscribe: https://lists.openembedded.org/g/openembedded-devel/unsub
> > [raj.khem@gmail.com]
> > -=-=-=-=-=-=-=-=-=-=-=-
> >
diff mbox series

Patch

diff --git a/meta-webserver/recipes-httpd/nginx/files/0001-configure-libxslt-conf.patch b/meta-webserver/recipes-httpd/nginx/files/0001-configure-libxslt-conf.patch
new file mode 100644
index 0000000000..7ba2a1fb85
--- /dev/null
+++ b/meta-webserver/recipes-httpd/nginx/files/0001-configure-libxslt-conf.patch
@@ -0,0 +1,39 @@ 
+From 0c3c669464a514cf8d0cac08282ecb2b486f440f Mon Sep 17 00:00:00 2001
+From: Joe Slater <joe.slater@windriver.com>
+Date: Tue, 3 Oct 2023 19:21:17 +0000
+Subject: [PATCH] configure: libxslt conf
+
+Modify to find libxslt related include files under sysroot.
+
+Upstream-Status: Pending
+
+Signed-off-by: Joe Slater <joe.slater@windriver.com>
+---
+ auto/lib/libxslt/conf | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/auto/lib/libxslt/conf b/auto/lib/libxslt/conf
+index 3063ac7..eb77886 100644
+--- a/auto/lib/libxslt/conf
++++ b/auto/lib/libxslt/conf
+@@ -12,7 +12,7 @@
+                       #include <libxslt/xsltInternals.h>
+                       #include <libxslt/transform.h>
+                       #include <libxslt/xsltutils.h>"
+-    ngx_feature_path="/usr/include/libxml2"
++    ngx_feature_path="=/usr/include/libxml2"
+     ngx_feature_libs="-lxml2 -lxslt"
+     ngx_feature_test="xmlParserCtxtPtr    ctxt = NULL;
+                       xsltStylesheetPtr   sheet = NULL;
+@@ -100,7 +100,7 @@ fi
+     ngx_feature_name=NGX_HAVE_EXSLT
+     ngx_feature_run=no
+     ngx_feature_incs="#include <libexslt/exslt.h>"
+-    ngx_feature_path="/usr/include/libxml2"
++    ngx_feature_path="=/usr/include/libxml2"
+     ngx_feature_libs="-lexslt"
+     ngx_feature_test="exsltRegisterAll();"
+     . auto/feature
+-- 
+2.35.5
+
diff --git a/meta-webserver/recipes-httpd/nginx/nginx.inc b/meta-webserver/recipes-httpd/nginx/nginx.inc
index 1ea32f7c94..8890e0bea1 100644
--- a/meta-webserver/recipes-httpd/nginx/nginx.inc
+++ b/meta-webserver/recipes-httpd/nginx/nginx.inc
@@ -22,6 +22,7 @@  SRC_URI = " \
     file://nginx-volatile.conf \
     file://nginx.service \
     file://nginx-fix-pidfile.patch \
+    file://0001-configure-libxslt-conf.patch \
 "
 
 inherit siteinfo update-rc.d useradd systemd
@@ -47,6 +48,8 @@  PACKAGECONFIG[ipv6] = "--with-ipv6,,"
 PACKAGECONFIG[webdav] = "--with-http_dav_module,,"
 PACKAGECONFIG[stream] = "--with-stream,,"
 
+PACKAGECONFIG[xslt] = "--with-http_xslt_module,,libxslt"
+
 do_configure () {
     if [ "${SITEINFO_BITS}" = "64" ]; then
         PTRSIZE=8