use new ENABLE_NSS for code which needs nss

which isn't available on a static-only build (iOS and fuzzing) and
android

Change-Id: I99bb7c0b45d4499579ddf73f469a762ddcae99ab
Reviewed-on: https://gerrit.libreoffice.org/32182
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
This commit is contained in:
Caolán McNamara
2016-12-19 13:19:57 +00:00
parent 862ae89a14
commit 8092d344fa
9 changed files with 34 additions and 33 deletions

View File

@@ -1069,7 +1069,7 @@ $(eval $(call gb_Helper_register_resources,\
vcl \
writerperfect \
wzi \
$(if $(filter-out ANDROID IOS,$(OS)),xmlsec) \
$(if $(ENABLE_NSS),xmlsec) \
xsltdlg \
))
@@ -1116,7 +1116,7 @@ $(eval $(call gb_Helper_register_uiconfigs,\
uui \
vcl \
writerperfect \
$(if $(filter-out ANDROID IOS,$(OS)),xmlsec) \
$(if $(ENABLE_NSS),xmlsec) \
))
ifeq ($(gb_GBUILDSELFTEST),t)

View File

@@ -151,6 +151,7 @@ export ENABLE_LWP=@ENABLE_LWP@
export ENABLE_MACOSX_SANDBOX=@ENABLE_MACOSX_SANDBOX@
export ENABLE_MEDIAWIKI=@ENABLE_MEDIAWIKI@
export ENABLE_MARIADBC=@ENABLE_MARIADBC@
export ENABLE_NSS=@ENABLE_NSS@
export ENABLE_ONLINE_UPDATE=@ENABLE_ONLINE_UPDATE@
export ENABLE_ONLINE_UPDATE_MAR=@ENABLE_ONLINE_UPDATE_MAR@
export ENABLE_EXTENSION_UPDATE=@ENABLE_EXTENSION_UPDATE@

View File

@@ -8989,6 +8989,28 @@ fi
fi
AC_SUBST(SYSTEM_OPENLDAP)
dnl ===================================================================
dnl Check for system NSS
dnl ===================================================================
if test $_os != iOS -a $_os != Android -a "$enable_fuzzers" != "yes"; then
libo_CHECK_SYSTEM_MODULE([nss],[NSS],[nss >= 3.9.3 nspr >= 4.8])
AC_DEFINE(HAVE_FEATURE_NSS)
ENABLE_NSS="TRUE"
AC_DEFINE(ENABLE_NSS)
else
with_tls=openssl
fi
if test "$with_system_nss" = "yes"; then
libo_MINGW_CHECK_DLL([libnspr4])
libo_MINGW_CHECK_DLL([libplc4])
libo_MINGW_CHECK_DLL([libplds4])
libo_MINGW_CHECK_DLL([nss3])
libo_MINGW_CHECK_DLL([nssutil3])
libo_MINGW_CHECK_DLL([smime3])
libo_MINGW_CHECK_DLL([ssl3])
fi
AC_SUBST(ENABLE_NSS)
dnl ===================================================================
dnl Check for TLS/SSL and cryptographic implementation to use
dnl ===================================================================
@@ -9018,10 +9040,6 @@ nss - Mozilla's Network Security Services (NSS)
])
;;
esac
elif test $_os = iOS -o $_os = Android; then
# We don't build NSS for iOS and Android
AC_DEFINE(USE_TLS_OPENSSL)
TLS=OPENSSL
else
# default to using NSS, it results in smaller oox lib
AC_DEFINE(USE_TLS_NSS)
@@ -9030,23 +9048,6 @@ fi
AC_MSG_RESULT([$TLS])
AC_SUBST(TLS)
dnl ===================================================================
dnl Check for system NSS
dnl ===================================================================
if test $_os != iOS -a "$enable_fuzzers" != "yes"; then
libo_CHECK_SYSTEM_MODULE([nss],[NSS],[nss >= 3.9.3 nspr >= 4.8])
AC_DEFINE(HAVE_FEATURE_NSS)
fi
if test "$with_system_nss" = "yes"; then
libo_MINGW_CHECK_DLL([libnspr4])
libo_MINGW_CHECK_DLL([libplc4])
libo_MINGW_CHECK_DLL([libplds4])
libo_MINGW_CHECK_DLL([nss3])
libo_MINGW_CHECK_DLL([nssutil3])
libo_MINGW_CHECK_DLL([smime3])
libo_MINGW_CHECK_DLL([ssl3])
fi
dnl ===================================================================
dnl Check for system sane
dnl ===================================================================

View File

@@ -1,6 +1,5 @@
--enable-fuzzers
--disable-dynamic-loading
--with-tls=openssl
--with-locales=en
--enable-mergelibs
--disable-runtime-optimizations

View File

@@ -10,7 +10,7 @@
$(eval $(call gb_ExternalProject_ExternalProject,curl))
$(eval $(call gb_ExternalProject_use_externals,curl,\
$(if $(filter TRUE,$(DISABLE_DYNLOADING)),,nss3) \
$(if $(ENABLE_NSS),nss3) \
zlib \
))
@@ -44,7 +44,7 @@ $(call gb_ExternalProject_get_state_target,curl,build):
./configure \
$(if $(filter IOS MACOSX,$(OS)),\
--with-darwinssl,\
$(if $(filter TRUE,$(DISABLE_DYNLOADING)),--without-nss,--with-nss$(if $(SYSTEM_NSS),,="$(call gb_UnpackedTarball_get_dir,nss)/dist/out"))) \
$(if $(ENABLE_NSS),--with-nss$(if $(SYSTEM_NSS),,="$(call gb_UnpackedTarball_get_dir,nss)/dist/out"),--without-nss)) \
--without-ssl --without-gnutls --without-polarssl --without-cyassl --without-axtls \
--without-libidn --enable-ftp --enable-ipv6 --enable-http --disable-gopher \
--disable-file --disable-ldap --disable-telnet --disable-dict --without-libssh2 \

View File

@@ -109,7 +109,7 @@ $(eval $(call gb_Rdb_add_components,services,\
xmloff/source/transform/xof \
xmloff/util/xo \
xmlscript/util/xmlscript \
$(if $(filter-out ANDROID IOS,$(OS)), \
$(if $(ENABLE_NSS), \
xmlsecurity/util/xmlsecurity \
xmlsecurity/util/xsec_fw \
xmlsecurity/util/xsec_xmlsec$(if $(filter WNT,$(OS)),.windows)) \

View File

@@ -94,7 +94,7 @@ $(eval $(call gb_Library_use_libraries,sd,\
ucbhelper \
utl \
vcl \
$(if $(filter-out ANDROID IOS,$(OS)),xmlsecurity) \
$(if $(ENABLE_NSS),xmlsecurity) \
$(gb_UWINAPI) \
))

View File

@@ -48,10 +48,10 @@ core_factory_list = [
("libunordflo.a", "unordf_component_getFactory"),
("libunoxmllo.a", "unoxml_component_getFactory"),
("libutllo.a", "utl_component_getFactory"),
("libxmlsecurity.a", "xmlsecurity_component_getFactory", "#if !defined ANDROID && HAVE_FEATURE_NSS"),
("libxmlsecurity.a", "xmlsecurity_component_getFactory", "#if HAVE_FEATURE_NSS"),
("libxoflo.a", "xof_component_getFactory"),
("libxolo.a", "xo_component_getFactory"),
("libxsec_xmlsec.a", "xsec_xmlsec_component_getFactory", "#if !defined ANDROID && HAVE_FEATURE_NSS"),
("libxsec_xmlsec.a", "xsec_xmlsec_component_getFactory", "#if HAVE_FEATURE_NSS"),
("libxstor.a", "xstor_component_getFactory"),
("libvclcanvaslo.a", "vclcanvas_component_getFactory"),
("libmtfrendererlo.a", "mtfrenderer_component_getFactory"),

View File

@@ -9,7 +9,9 @@
$(eval $(call gb_Module_Module,xmlsecurity))
ifneq (,$(filter-out ANDROID IOS,$(OS)))
ifeq ($(ENABLE_NSS),TRUE)
#FIXME: ^^^, get nss&libxmlsec building on ios and android
#chromium has patches to build statically FWIW
$(eval $(call gb_Module_add_targets,xmlsecurity,\
Library_xmlsecurity \
@@ -27,8 +29,6 @@ $(eval $(call gb_Module_add_l10n_targets,xmlsecurity,\
UIConfig_xmlsec \
))
#FIXME: ^^^, get nss&libxmlsec building on ios and android
# failing
#$(eval $(call gb_Module_add_check_targets,xmlsecurity,\
CppunitTest_qa_certext \