[Buildroot] [PATCH] libnss: Re-add ZLIB_INCLUDE_DIR varible

Giulio Benetti giulio.benetti at benettiengineering.com
Wed Jan 22 17:39:02 UTC 2020


Hi Thomas,

On 1/22/20 5:44 PM, Thomas Preston wrote:
> The libnss patch adding ZLIB_INCLUDE_DIR is added to upstream on
> 2020-01-07 but the 3.49.1 release on 2020-01-13 does not contain this
> patch, so we have actually prematurely removed it from Buildroot.
> 
> This only affects host-libnss when libzlib is not installed in the host
> system. When building for the target, the toolchain-wrapper already
> looks in the target sysroot default include path - where zlib.h is
> installed.
> 
> Re-add this patch, so that we can build host-libnss 3.49.1.
> 
> Signed-off-by: Thomas Preston <thomas.preston at codethink.co.uk>

You're right, it is because version 3.49.1 is not in master branch, so 
this will be fixed bumping to 3.50 when they release it(2020-02-07 
according to [1]).

Anyway I've built successfully with this buildroot patch and it builds 
correctly, so:

Reviewed-by: Giulio Benetti <giulio.benetti at benettiengineering.com>

And thank you :-)

[1]: https://wiki.mozilla.org/NSS:Release_Versions

Best regards
-- 
Giulio Benetti
Benetti Engineering sas

> ---
>   .../0001-add-zlib-include-dir-variable.patch  | 49 +++++++++++++++++++
>   1 file changed, 49 insertions(+)
>   create mode 100644 package/libnss/0001-add-zlib-include-dir-variable.patch
> 
> diff --git a/package/libnss/0001-add-zlib-include-dir-variable.patch b/package/libnss/0001-add-zlib-include-dir-variable.patch
> new file mode 100644
> index 0000000000..cd0bdeec31
> --- /dev/null
> +++ b/package/libnss/0001-add-zlib-include-dir-variable.patch
> @@ -0,0 +1,49 @@
> +Add ZLIB_INCLUDE_DIR variable
> +
> +On Linux platform[1], the build system forces to use zlib from the
> +system instead of compiling the one located intree.
> +
> +The following error is raised when the zlib header is installed
> +somewhere else than in the default system include path:
> +
> +	ssl3con.c:39:18: fatal error: zlib.h: No such file or directory
> +	 #include "zlib.h"
> +
> +The same trick setup for sqlite include directory is reproduced for
> +zlib. The build system disallows in any manner to give arguments to the
> +compiler explicity.
> +
> +The variable ZLIB_INCLUDE_DIR point to the directory where the zlib
> +header is located.
> +
> +[1]: https://hg.mozilla.org/projects/nss/file/NSS_3_33_BRANCH/coreconf/Linux.mk#l180
> +[2]: https://hg.mozilla.org/projects/nss/file/NSS_3_33_BRANCH/lib/softoken/manifest.mn#l17
> +
> +Signed-off-by: Gaël PORTAY <gael.portay at savoirfairelinux.com>
> +
> +--- libnss-3.33.orig/nss/lib/ssl/manifest.mn	2017-09-20 02:47:27.000000000 -0400
> ++++ libnss-3.33/nss/lib/ssl/manifest.mn	2018-02-16 16:45:41.512709898 -0500
> +@@ -6,6 +6,10 @@
> +
> + # DEFINES = -DTRACE
> +
> ++ifdef ZLIB_INCLUDE_DIR
> ++INCLUDES += -I$(ZLIB_INCLUDE_DIR)
> ++endif
> ++
> + EXPORTS = \
> +         ssl.h \
> +         sslt.h \
> +--- host-libnss-3.33.orig/nss/cmd/signtool/manifest.mn.orig	2018-02-16 17:08:58.474777871 -0500
> ++++ host-libnss-3.33/nss/cmd/signtool/manifest.mn	2018-02-16 17:09:22.603710963 -0500
> +@@ -6,6 +6,10 @@
> +
> + MODULE = nss
> +
> ++ifdef ZLIB_INCLUDE_DIR
> ++INCLUDES += -I$(ZLIB_INCLUDE_DIR)
> ++endif
> ++
> + EXPORTS =
> +
> + CSRCS = signtool.c		\
> 



More information about the buildroot mailing list