summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makefile.fetch1
-rw-r--r--RepositoryExternal.mk10
-rw-r--r--download.lst5
-rw-r--r--external/Module_external.mk1
-rw-r--r--external/frozen/Module_frozen.mk16
-rw-r--r--external/frozen/README.md7
-rw-r--r--external/frozen/UnpackedTarball_frozen.mk18
-rw-r--r--external/frozen/defines_h_constexpr_string.patch.011
8 files changed, 69 insertions, 0 deletions
diff --git a/Makefile.fetch b/Makefile.fetch
index c8c5c91941f2..625e781dc36a 100644
--- a/Makefile.fetch
+++ b/Makefile.fetch
@@ -125,6 +125,7 @@ $(WORKDIR)/download: $(BUILDDIR)/config_$(gb_Side).mk $(SRCDIR)/download.lst $(S
$(call fetch_Optional,FONTCONFIG,FONTCONFIG_TARBALL) \
$(call fetch_Optional,FREEHAND,FREEHAND_TARBALL) \
$(call fetch_Optional,FREETYPE,FREETYPE_TARBALL) \
+ FROZEN_TARBALL \
$(call fetch_Optional,EPOXY,EPOXY_TARBALL) \
$(call fetch_Optional,GLM,GLM_TARBALL) \
$(call fetch_Optional,GPGMEPP,GPGME_TARBALL) \
diff --git a/RepositoryExternal.mk b/RepositoryExternal.mk
index 3ec3cd924395..631466f0001a 100644
--- a/RepositoryExternal.mk
+++ b/RepositoryExternal.mk
@@ -4297,4 +4297,14 @@ endif # ENABLE_ZXING
endif # SYSTEM_ZXING
+
+define gb_LinkTarget__use_frozen
+$(call gb_LinkTarget_use_unpacked,$(1),frozen)
+$(call gb_LinkTarget_set_include,$(1),\
+ -I$(call gb_UnpackedTarball_get_dir,frozen/include/)\
+ $$(INCLUDE) \
+)
+endef
+
+
# vim: set noet sw=4 ts=4:
diff --git a/download.lst b/download.lst
index 80edf6a84a49..b0cfdf278d08 100644
--- a/download.lst
+++ b/download.lst
@@ -202,6 +202,11 @@ FREETYPE_TARBALL := freetype-2.13.0.tar.xz
# three static lines
# so that git cherry-pick
# will not run into conflicts
+FROZEN_SHA256SUM := f7c7075750e8fceeac081e9ef01944f221b36d9725beac8681cbd2838d26be45
+FROZEN_TARBALL := frozen-1.1.1.tar.gz
+# three static lines
+# so that git cherry-pick
+# will not run into conflicts
GLM_SHA256SUM := 6bba5f032bed47c73ad9397f2313b9acbfb56253d0d0576b5873d3dcb25e99ad
GLM_TARBALL := glm-0.9.9.8.zip
# three static lines
diff --git a/external/Module_external.mk b/external/Module_external.mk
index 73d6530ac10f..cd9c5924d71d 100644
--- a/external/Module_external.mk
+++ b/external/Module_external.mk
@@ -41,6 +41,7 @@ $(eval $(call gb_Module_add_moduledirs,external,\
$(call gb_Helper_optional,FONTCONFIG,fontconfig) \
$(call gb_Helper_optional,FREEHAND,libfreehand) \
$(call gb_Helper_optional,FREETYPE,freetype) \
+ frozen \
$(call gb_Helper_optional,GLM,glm) \
$(call gb_Helper_optional,GPGMEPP,gpgmepp) \
$(call gb_Helper_optional,GRAPHITE,graphite) \
diff --git a/external/frozen/Module_frozen.mk b/external/frozen/Module_frozen.mk
new file mode 100644
index 000000000000..10fa0997e0ed
--- /dev/null
+++ b/external/frozen/Module_frozen.mk
@@ -0,0 +1,16 @@
+# -*- 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,frozen))
+
+$(eval $(call gb_Module_add_targets,frozen,\
+ UnpackedTarball_frozen \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/external/frozen/README.md b/external/frozen/README.md
new file mode 100644
index 000000000000..56b011a771b6
--- /dev/null
+++ b/external/frozen/README.md
@@ -0,0 +1,7 @@
+External header only library frozen
+
+Header-only library that provides 0 cost initialization for immutable containers, fixed-size containers, and various algorithms.
+
+https://github.com/serge-sans-paille/frozen
+
+Release archives at: https://github.com/serge-sans-paille/frozen/tags
diff --git a/external/frozen/UnpackedTarball_frozen.mk b/external/frozen/UnpackedTarball_frozen.mk
new file mode 100644
index 000000000000..41ddb0fed85a
--- /dev/null
+++ b/external/frozen/UnpackedTarball_frozen.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,frozen))
+
+$(eval $(call gb_UnpackedTarball_set_tarball,frozen,$(FROZEN_TARBALL)))
+
+$(eval $(call gb_UnpackedTarball_add_patches,frozen,\
+ external/frozen/defines_h_constexpr_string.patch.0 \
+))
+
+# vim: set noet sw=4 ts=4:
diff --git a/external/frozen/defines_h_constexpr_string.patch.0 b/external/frozen/defines_h_constexpr_string.patch.0
new file mode 100644
index 000000000000..d911ce3f9fa5
--- /dev/null
+++ b/external/frozen/defines_h_constexpr_string.patch.0
@@ -0,0 +1,11 @@
+--- include/frozen/bits/defines.h
++++ include/frozen/bits/defines.h
+@@ -59,7 +59,7 @@
+ #define FROZEN_LETITGO_HAS_DEDUCTION_GUIDES
+ #endif
+
+-#if __cpp_lib_constexpr_string >= 201907L
++#if defined(__cpp_lib_constexpr_string) && __cpp_lib_constexpr_string >= 201907L
+ #define FROZEN_LETITGO_HAS_CONSTEXPR_STRING
+ #endif
+