summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makefile.fetch1
-rw-r--r--RepositoryExternal.mk11
-rw-r--r--download.lst5
-rw-r--r--external/Module_external.mk1
-rw-r--r--external/zxcvbn-c/ExternalProject_zxcvbn-c.mk35
-rw-r--r--external/zxcvbn-c/Makefile14
-rw-r--r--external/zxcvbn-c/Module_zxcvbn-c.mk18
-rw-r--r--external/zxcvbn-c/README.md3
-rw-r--r--external/zxcvbn-c/StaticLibrary_zxcvbn-c.mk26
-rw-r--r--external/zxcvbn-c/UnpackedTarball_zxcvbn-c.mk18
-rw-r--r--external/zxcvbn-c/zxcvbn-c-2.5-do-not-use-stdafx.patch13
-rw-r--r--readlicense_oo/license/license.xml24
-rw-r--r--solenv/gbuild/extensions/pre_BuildTools.mk1
13 files changed, 170 insertions, 0 deletions
diff --git a/Makefile.fetch b/Makefile.fetch
index 8cd2c543891f..d445898c94c6 100644
--- a/Makefile.fetch
+++ b/Makefile.fetch
@@ -171,6 +171,7 @@ $(WORKDIR)/download: $(BUILDDIR)/config_$(gb_Side).mk $(SRCDIR)/download.lst $(S
$(call fetch_Optional,LXML,LXML_TARBALL) \
$(call fetch_Optional,MARIADB_CONNECTOR_C,MARIADB_CONNECTOR_C_TARBALL) \
$(call fetch_Optional,MDDS,MDDS_TARBALL) \
+ ZXCVBN_C_TARBALL \
$(call fetch_Optional,ZXING,ZXING_TARBALL) \
$(call fetch_Optional,MDNSRESPONDER,MDNSRESPONDER_TARBALL) \
$(call fetch_Optional,MORE_FONTS,FONT_CALADEA_TARBALL) \
diff --git a/RepositoryExternal.mk b/RepositoryExternal.mk
index 744353b58fe3..0a0be689fd07 100644
--- a/RepositoryExternal.mk
+++ b/RepositoryExternal.mk
@@ -4287,6 +4287,17 @@ endef
endif # SYSTEM_BOX2D
+define gb_LinkTarget__use_zxcvbn-c
+$(call gb_LinkTarget_use_unpacked,$(1),zxcvbn-c)
+$(call gb_LinkTarget_set_include,$(1),\
+ -I$(call gb_UnpackedTarball_get_dir,zxcvbn-c)\
+ $$(INCLUDE) \
+)
+$(call gb_LinkTarget_use_static_libraries,$(1),\
+ zxcvbn-c \
+)
+endef
+
ifneq ($(SYSTEM_ZXING),)
define gb_LinkTarget__use_zxing
diff --git a/download.lst b/download.lst
index d83931988bdd..b85d4bd437e9 100644
--- a/download.lst
+++ b/download.lst
@@ -640,6 +640,11 @@ ZMF_TARBALL := libzmf-0.0.2.tar.xz
# three static lines
# so that git cherry-pick
# will not run into conflicts
+ZXCVBN_C_SHA256SUM := 77d6c6ecb35952a8d8ce7f736b7a2bf466275c48210e309b73782d6b7e84dffd
+ZXCVBN_C_TARBALL := zxcvbn-c-2.5.tar.gz
+# three static lines
+# so that git cherry-pick
+# will not run into conflicts
ZXING_SHA256SUM := 6d54e403592ec7a143791c6526c1baafddf4c0897bb49b1af72b70a0f0c4a3fe
ZXING_TARBALL := zxing-cpp-2.1.0.tar.gz
# three static lines
diff --git a/external/Module_external.mk b/external/Module_external.mk
index 366509f8960e..2b2cd99ff399 100644
--- a/external/Module_external.mk
+++ b/external/Module_external.mk
@@ -90,6 +90,7 @@ $(eval $(call gb_Module_add_moduledirs,external,\
$(call gb_Helper_optional,POSTGRESQL,postgresql) \
$(call gb_Helper_optional,PYTHON,python3) \
$(call gb_Helper_optional,QXP,libqxp) \
+ zxcvbn-c \
$(call gb_Helper_optional,ZXING,zxing) \
$(call gb_Helper_optional,REDLAND,redland) \
$(call gb_Helper_optional,REVENGE,librevenge) \
diff --git a/external/zxcvbn-c/ExternalProject_zxcvbn-c.mk b/external/zxcvbn-c/ExternalProject_zxcvbn-c.mk
new file mode 100644
index 000000000000..51b60a9c2ecb
--- /dev/null
+++ b/external/zxcvbn-c/ExternalProject_zxcvbn-c.mk
@@ -0,0 +1,35 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t; fill-column: 100 -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_ExternalProject_ExternalProject,zxcvbn-c))
+
+$(eval $(call gb_ExternalProject_register_targets,zxcvbn-c,\
+ generate-dictionary-nodes \
+))
+
+$(call gb_ExternalProject_get_state_target,zxcvbn-c,generate-dictionary-nodes): \
+ $(call gb_Executable_get_runtime_dependencies,gcc-wrapper) \
+ $(call gb_Executable_get_runtime_dependencies,g++-wrapper) \
+ $(if $(CROSS_COMPILING),$(call gb_ExternalProject_get_target_for_build,zxcvbn-c))
+ $(call gb_Trace_StartRange,zxcvbn-c,EXTERNAL)
+ $(call gb_ExternalProject_run,generate-dictionary-nodes,\
+ $(if $(CROSS_COMPILING),\
+ cp $(WORKDIR_FOR_BUILD)/UnpackedTarball/zxcvbn-c/dict-src.h \
+ $(WORKDIR)/UnpackedTarball/zxcvbn-c/dict-src.h \
+ ,\
+ $(MAKE) dict-src.h \
+ AR="$(gb_AR)" \
+ CFLAGS="$(gb_CFLAGS)" \
+ CXXFLAGS="$(gb_CXXFLAGS)" \
+ $(if $(filter MSC,$(COM)),$(gb_AUTOCONF_WRAPPERS) )\
+ )\
+ )
+ $(call gb_Trace_EndRange,zxcvbn-c,EXTERNAL)
+
+# vim: set noet sw=4 ts=4:
diff --git a/external/zxcvbn-c/Makefile b/external/zxcvbn-c/Makefile
new file mode 100644
index 000000000000..6427d44e3790
--- /dev/null
+++ b/external/zxcvbn-c/Makefile
@@ -0,0 +1,14 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t; fill-column: 100 -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+module_directory:=$(dir $(realpath $(firstword $(MAKEFILE_LIST))))
+
+include $(module_directory)/../../solenv/gbuild/partial_build.mk
+
+# vim: set noet sw=4 ts=4:
diff --git a/external/zxcvbn-c/Module_zxcvbn-c.mk b/external/zxcvbn-c/Module_zxcvbn-c.mk
new file mode 100644
index 000000000000..14d5dfbe6abc
--- /dev/null
+++ b/external/zxcvbn-c/Module_zxcvbn-c.mk
@@ -0,0 +1,18 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t; fill-column: 100 -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_Module_Module,zxcvbn-c))
+
+$(eval $(call gb_Module_add_targets,zxcvbn-c,\
+ UnpackedTarball_zxcvbn-c \
+ ExternalProject_zxcvbn-c \
+ StaticLibrary_zxcvbn-c \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/external/zxcvbn-c/README.md b/external/zxcvbn-c/README.md
new file mode 100644
index 000000000000..6193c7307e85
--- /dev/null
+++ b/external/zxcvbn-c/README.md
@@ -0,0 +1,3 @@
+C/C++ version of the zxcvbn password strength estimator.
+
+zxcvbn-c is available from [ https://github.com/tsyrogit/zxcvbn-c ].
diff --git a/external/zxcvbn-c/StaticLibrary_zxcvbn-c.mk b/external/zxcvbn-c/StaticLibrary_zxcvbn-c.mk
new file mode 100644
index 000000000000..9748ef850c55
--- /dev/null
+++ b/external/zxcvbn-c/StaticLibrary_zxcvbn-c.mk
@@ -0,0 +1,26 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t; fill-column: 100 -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_StaticLibrary_StaticLibrary,zxcvbn-c))
+
+$(eval $(call gb_StaticLibrary_use_unpacked,zxcvbn-c,zxcvbn-c))
+
+# zxcvbn-c static library depends on generation of dictionary nodes resulting in dict-src.h
+$(eval $(call gb_StaticLibrary_use_external_project,zxcvbn-c,zxcvbn-c,full))
+
+$(eval $(call gb_StaticLibrary_set_include,zxcvbn-c,\
+ -I$(call gb_UnpackedTarball_get_dir,zxcvbn-c)\
+ $$(INCLUDE)\
+))
+
+$(eval $(call gb_StaticLibrary_add_generated_cobjects,zxcvbn-c,\
+ UnpackedTarball/zxcvbn-c/zxcvbn \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/external/zxcvbn-c/UnpackedTarball_zxcvbn-c.mk b/external/zxcvbn-c/UnpackedTarball_zxcvbn-c.mk
new file mode 100644
index 000000000000..b6eba6b8cb3a
--- /dev/null
+++ b/external/zxcvbn-c/UnpackedTarball_zxcvbn-c.mk
@@ -0,0 +1,18 @@
+# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t; fill-column: 100 -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+$(eval $(call gb_UnpackedTarball_UnpackedTarball,zxcvbn-c))
+
+$(eval $(call gb_UnpackedTarball_set_tarball,zxcvbn-c,$(ZXCVBN_C_TARBALL)))
+
+$(eval $(call gb_UnpackedTarball_add_patches,zxcvbn-c,\
+ external/zxcvbn-c/zxcvbn-c-2.5-do-not-use-stdafx.patch \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/external/zxcvbn-c/zxcvbn-c-2.5-do-not-use-stdafx.patch b/external/zxcvbn-c/zxcvbn-c-2.5-do-not-use-stdafx.patch
new file mode 100644
index 000000000000..1b5151995067
--- /dev/null
+++ b/external/zxcvbn-c/zxcvbn-c-2.5-do-not-use-stdafx.patch
@@ -0,0 +1,13 @@
+--- a/zxcvbn-c/zxcvbn.c
++++ b/zxcvbn-c/zxcvbn.c
+@@ -44,11 +44,6 @@
+ #endif
+ #endif
+
+-/* For pre-compiled headers under windows */
+-#ifdef _WIN32
+-#include "stdafx.h"
+-#endif
+-
+ /* Minimum number of characters in a incrementing/decrementing sequence match */
+ #define MIN_SEQUENCE_LEN 3
diff --git a/readlicense_oo/license/license.xml b/readlicense_oo/license/license.xml
index 57d270e15b94..2e61d6f82e75 100644
--- a/readlicense_oo/license/license.xml
+++ b/readlicense_oo/license/license.xml
@@ -1815,6 +1815,30 @@
PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.</p>
</div>
+ <h2>zxcvbn-c</h2>
+ <p>The following software may be included in this product: zxcvbn-c.</p>
+ <p>zxcvbn-c code is covered by the MIT license:</p>
+ <blockquote>
+ <p>Copyright (c) 2015-2017 Tony Evans </p>
+
+ <p>Permission is hereby granted, free of charge, to any person obtaining a copy
+ of this software and associated documentation files (the "Software"), to deal
+ in the Software without restriction, including without limitation the rights
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ copies of the Software, and to permit persons to whom the Software is
+ furnished to do so, subject to the following conditions:</p>
+
+ <p>The above copyright notice and this permission notice shall be included in
+ all copies or substantial portions of the Software.</p>
+
+ <p>THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ THE SOFTWARE.</p>
+ </blockquote>
<h2>Dragonbox</h2>
<p>The following software may be included in this product: Dragonbox.</p>
<p>Dragonbox code is covered by the following license:</p>
diff --git a/solenv/gbuild/extensions/pre_BuildTools.mk b/solenv/gbuild/extensions/pre_BuildTools.mk
index 0a83545cf748..891d478262b5 100644
--- a/solenv/gbuild/extensions/pre_BuildTools.mk
+++ b/solenv/gbuild/extensions/pre_BuildTools.mk
@@ -48,6 +48,7 @@ gb_BUILD_TOOLS = \
$(foreach executable,$(gb_BUILD_TOOLS_executables),$(call gb_Executable_get_runtime_dependencies,$(executable))) \
$(foreach executable,$(gb_BUILD_TOOLS_executables_extern),$(call gb_ExternalExecutable_get_dependencies,$(executable))) \
$(INSTROOT)/$(LIBO_URE_ETC_FOLDER)/$(call gb_Helper_get_rcfile,uno) \
+ $(call gb_ExternalProject_get_target_for_build,zxcvbn-c) \
endif