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@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		\
