[Libreoffice-commits] core.git: Branch 'distro/collabora/co-22.05' - external/freetype external/pdfium

2022-12-07 Thread Andras Timar (via logerrit)
 external/freetype/ExternalProject_freetype.mk |1 -
 external/pdfium/Library_pdfium.mk |1 +
 2 files changed, 1 insertion(+), 1 deletion(-)

New commits:
commit 085d5100a5ff3260bd4a58f15ecea66ad546fb2f
Author: Andras Timar 
AuthorDate: Wed Dec 7 20:18:42 2022 +0100
Commit: Andras Timar 
CommitDate: Thu Dec 8 07:26:47 2022 +

[cp] Revert "Explicitly build external/freetype --without-png"

This reverts commit b48cb69dae4118fe4a471921510281bbd16f5c4f.
Reason: there is no support for color emojis without libpng.
I checked our use case and this revert seems to be safe,
because we build without system libpng. In this case we have the
LIBPNG_CFLAGS and LIBPNG_LIBS variables defined in config_host.mk
and those point to the internal libpng headers and static libs in
workdir. These variables are used by configure script of freetype,
and freetype will link our internal libpng statically.
The link problem with libpdfium is also addressed.

Change-Id: I565832e8a32597dde6eb9fb64c522c62233c3097
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/143799
Tested-by: Jenkins CollaboraOffice 
Reviewed-by: Tor Lillqvist 

diff --git a/external/freetype/ExternalProject_freetype.mk 
b/external/freetype/ExternalProject_freetype.mk
index 4cb2920ae923..a3e0a7ca3e4b 100644
--- a/external/freetype/ExternalProject_freetype.mk
+++ b/external/freetype/ExternalProject_freetype.mk
@@ -23,7 +23,6 @@ $(call gb_ExternalProject_get_state_target,freetype,build) :
--without-brotli \
--without-bzip2 \
--without-harfbuzz \
-   --without-png \
--prefix=$(call 
gb_UnpackedTarball_get_dir,freetype/instdir) \
--build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM) \
CFLAGS="$(CFLAGS) $(if $(debug),-g) 
$(gb_VISIBILITY_FLAGS)" \
diff --git a/external/pdfium/Library_pdfium.mk 
b/external/pdfium/Library_pdfium.mk
index c00a5f8f89e3..c8ee10fe2c04 100644
--- a/external/pdfium/Library_pdfium.mk
+++ b/external/pdfium/Library_pdfium.mk
@@ -612,6 +612,7 @@ $(eval $(call gb_Library_add_libs,pdfium,\
 endif
 
 $(eval $(call gb_Library_use_external,pdfium,freetype))
+$(eval $(call gb_Library_use_external,pdfium,libpng))
 $(eval $(call gb_Library_add_defs,pdfium,\
 -DDEFINE_PS_TABLES_DATA \
 ))


[Libreoffice-commits] core.git: Branch 'distro/collabora/co-22.05' - external/freetype

2022-11-21 Thread Miklos Vajna (via logerrit)
 external/freetype/UnpackedTarball_freetype.mk |3 +++
 external/freetype/ubsan.patch |   12 
 2 files changed, 15 insertions(+)

New commits:
commit 709973084ef694f98076e6d4cbac7135722a8517
Author: Miklos Vajna 
AuthorDate: Thu Nov 17 16:54:09 2022 +0100
Commit: Miklos Vajna 
CommitDate: Mon Nov 21 11:17:51 2022 +0100

exteral/freetype: -fsanitize=non-null-attribute

Crashreport log:

workdir/UnpackedTarball/freetype/src/psaux/psobjs.c:204:5: runtime error: 
null pointer passed as argument 1, which is declared to never be null
/usr/include/string.h:44:28: note: nonnull attribute specified here
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior
   workdir/UnpackedTarball/freetype/src/psaux/psobjs.c:204:5 in

Change-Id: Ib2ae396ba640129a8bc1c937ce41a38b6279a2ae
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/142894
Tested-by: Jenkins CollaboraOffice 
Reviewed-by: Tor Lillqvist 

diff --git a/external/freetype/UnpackedTarball_freetype.mk 
b/external/freetype/UnpackedTarball_freetype.mk
index 0b521cb934d0..8a6c7f852242 100644
--- a/external/freetype/UnpackedTarball_freetype.mk
+++ b/external/freetype/UnpackedTarball_freetype.mk
@@ -14,6 +14,9 @@ $(eval $(call 
gb_UnpackedTarball_set_tarball,freetype,$(FREETYPE_TARBALL),,freet
 $(eval $(call gb_UnpackedTarball_add_patches,freetype,\
external/freetype/freetype-2.6.5.patch.1 \
external/freetype/freetype-fd-hack.patch.0 \
+   external/freetype/ubsan.patch \
 ))
 
+$(eval $(call gb_UnpackedTarball_set_patchlevel,freetype,0))
+
 # vim: set noet sw=4 ts=4:
diff --git a/external/freetype/ubsan.patch b/external/freetype/ubsan.patch
new file mode 100644
index ..4a743f3ef3f6
--- /dev/null
+++ b/external/freetype/ubsan.patch
@@ -0,0 +1,12 @@
+--- src/psaux/psobjs.c.orig2022-11-17 16:52:21.913211573 +0100
 src/psaux/psobjs.c 2022-11-17 16:53:17.905127207 +0100
+@@ -201,7 +201,8 @@
+ /* add the object to the base block and adjust offset */
+ table->elements[idx] = FT_OFFSET( table->block, table->cursor );
+ table->lengths [idx] = length;
+-FT_MEM_COPY( table->block + table->cursor, object, length );
++if (table->block + table->cursor)
++  FT_MEM_COPY( table->block + table->cursor, object, length );
+ 
+ table->cursor += length;
+ return FT_Err_Ok;


[Libreoffice-commits] core.git: Branch 'distro/collabora/co-22.05' - external/freetype

2022-10-12 Thread Tor Lillqvist (via logerrit)
 external/freetype/ExternalPackage_freetype.mk|   16 
 external/freetype/ExternalProject_freetype.mk|5 +
 external/freetype/Module_freetype.mk |1 -
 external/freetype/UnpackedTarball_freetype.mk|1 -
 external/freetype/libfreetype-bundled-soname.patch.0 |   11 ---
 5 files changed, 1 insertion(+), 33 deletions(-)

New commits:
commit dd522fc58e37b149c7e31bad931e82b72c9f4db5
Author: Tor Lillqvist 
AuthorDate: Wed Oct 12 17:22:30 2022 +0300
Commit: Tor Lillqvist 
CommitDate: Wed Oct 12 17:34:54 2022 +0200

No need to build bundled freetype as shared even with the fd hack

Change-Id: I1aea8ecf55aafbcb68d2cd99f57756d18bc2c4d1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/141258
Tested-by: Jenkins CollaboraOffice 
Reviewed-by: Tor Lillqvist 

diff --git a/external/freetype/ExternalPackage_freetype.mk 
b/external/freetype/ExternalPackage_freetype.mk
deleted file mode 100644
index 4709c60415c0..
--- a/external/freetype/ExternalPackage_freetype.mk
+++ /dev/null
@@ -1,16 +0,0 @@
-# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
-#
-# 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_ExternalPackage_ExternalPackage,freetype,freetype))
-
-$(eval $(call gb_ExternalPackage_use_external_project,freetype,freetype))
-
-$(eval $(call 
gb_ExternalPackage_add_file,freetype,$(LIBO_LIB_FOLDER)/libfreetype-lo.so.6.18.0,instdir/lib/libfreetype-lo.so.6.18.0))
-
-# vim: set noet sw=4 ts=4:
diff --git a/external/freetype/ExternalProject_freetype.mk 
b/external/freetype/ExternalProject_freetype.mk
index 8cf533d8dfb4..4cb2920ae923 100644
--- a/external/freetype/ExternalProject_freetype.mk
+++ b/external/freetype/ExternalProject_freetype.mk
@@ -17,10 +17,7 @@ $(call gb_ExternalProject_get_state_target,freetype,build) :
$(call gb_Trace_StartRange,freetype,EXTERNAL)
$(call gb_ExternalProject_run,build,\
$(gb_RUN_CONFIGURE) ./configure \
-   $(if $(filter LINUX,$(OS)), \
-   --disable-static, \
-   --disable-shared \
-   ) \
+   --disable-shared \
--with-pic \
--without-zlib \
--without-brotli \
diff --git a/external/freetype/Module_freetype.mk 
b/external/freetype/Module_freetype.mk
index 8552511e1674..290014c47dfd 100644
--- a/external/freetype/Module_freetype.mk
+++ b/external/freetype/Module_freetype.mk
@@ -12,7 +12,6 @@ $(eval $(call gb_Module_Module,freetype))
 $(eval $(call gb_Module_add_targets,freetype,\
ExternalProject_freetype \
UnpackedTarball_freetype \
-   $(if $(filter LINUX,$(OS)),ExternalPackage_freetype) \
 ))
 
 # vim: set noet sw=4 ts=4:
diff --git a/external/freetype/UnpackedTarball_freetype.mk 
b/external/freetype/UnpackedTarball_freetype.mk
index c4c2da5a28fa..0b521cb934d0 100644
--- a/external/freetype/UnpackedTarball_freetype.mk
+++ b/external/freetype/UnpackedTarball_freetype.mk
@@ -14,7 +14,6 @@ $(eval $(call 
gb_UnpackedTarball_set_tarball,freetype,$(FREETYPE_TARBALL),,freet
 $(eval $(call gb_UnpackedTarball_add_patches,freetype,\
external/freetype/freetype-2.6.5.patch.1 \
external/freetype/freetype-fd-hack.patch.0 \
-   external/freetype/libfreetype-bundled-soname.patch.0 \
 ))
 
 # vim: set noet sw=4 ts=4:
diff --git a/external/freetype/libfreetype-bundled-soname.patch.0 
b/external/freetype/libfreetype-bundled-soname.patch.0
deleted file mode 100644
index 5b864be562b8..
--- a/external/freetype/libfreetype-bundled-soname.patch.0
+++ /dev/null
@@ -1,11 +0,0 @@
-# -*- Mode: Diff -*-
 builds/unix/unix-cc.in
-+++ builds/unix/unix-cc.in
-@@ -123,6 +123,7 @@
- LINK_LIBRARY = $(LIBTOOL) --mode=link $(CCraw) -o $@ $(OBJECTS_LIST) \
-   -rpath $(libdir) -version-info $(version_info) \
-   $(LDFLAGS) -no-undefined \
-+  -release lo -Wl,-soname 
-Wl,libfreetype-lo.so.6.18.0 \
-   -export-symbols $(EXPORTS_LIST)
- 
- # EOF


[Libreoffice-commits] core.git: Branch 'distro/collabora/co-22.05' - external/freetype

2022-09-26 Thread Stephan Bergmann (via logerrit)
 external/freetype/ExternalProject_freetype.mk |1 +
 1 file changed, 1 insertion(+)

New commits:
commit b48cb69dae4118fe4a471921510281bbd16f5c4f
Author: Stephan Bergmann 
AuthorDate: Wed Jan 5 08:07:11 2022 +0100
Commit: Tor Lillqvist 
CommitDate: Mon Sep 26 20:56:42 2022 +0200

Explicitly build external/freetype --without-png

...instead of having its configure.ac determine whether to support png 
based on
it being installed on the system, but which then might cause a Linux
--without-system-freetype build to fail to link Library_pdfium with

> workdir/UnpackedTarball/freetype/src/sfnt/pngshim.c:199: error: undefined 
reference to 'png_get_error_ptr'

etc.

Change-Id: Idf47ba5252b8f4d7f2e295f7adf6b761dbee4d2f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127985
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann 
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/140053
Tested-by: Jenkins CollaboraOffice 
Reviewed-by: Tor Lillqvist 

diff --git a/external/freetype/ExternalProject_freetype.mk 
b/external/freetype/ExternalProject_freetype.mk
index a3e0a7ca3e4b..4cb2920ae923 100644
--- a/external/freetype/ExternalProject_freetype.mk
+++ b/external/freetype/ExternalProject_freetype.mk
@@ -23,6 +23,7 @@ $(call gb_ExternalProject_get_state_target,freetype,build) :
--without-brotli \
--without-bzip2 \
--without-harfbuzz \
+   --without-png \
--prefix=$(call 
gb_UnpackedTarball_get_dir,freetype/instdir) \
--build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM) \
CFLAGS="$(CFLAGS) $(if $(debug),-g) 
$(gb_VISIBILITY_FLAGS)" \


[Libreoffice-commits] core.git: Branch 'distro/collabora/co-22.05' - external/freetype

2022-09-26 Thread Stephan Bergmann (via logerrit)
 external/freetype/ExternalProject_freetype.mk |1 +
 1 file changed, 1 insertion(+)

New commits:
commit ac891f0ba9d4c2675d7dae8390a28f44a7a83eaf
Author: Stephan Bergmann 
AuthorDate: Sun Jan 2 12:31:14 2022 +0100
Commit: Tor Lillqvist 
CommitDate: Mon Sep 26 20:56:16 2022 +0200

Make external/freetype use -fPIC

...to prevent Library_pdfium from failing to link with

> ld.lld: error: relocation R_X86_64_64 cannot be used against local 
symbol; recompile with -fPIC
> >>> defined in 
workdir/UnpackedTarball/freetype/instdir/lib/libfreetype.a(ftinit.o)
> >>> referenced by ftinit.c:89 (src/base/ftinit.c:89)
> >>>   ftinit.o:(FT_Add_Default_Modules) in archive 
workdir/UnpackedTarball/freetype/instdir/lib/libfreetype.a

etc., presumably since 8677e994d37329a28ca8278358a99d18b9cada69 "Simplify
FONTCONFIG and FREETYPE tests" no longer implicitly forces use of system
freetype on Linux

Change-Id: I2743619768e2dd636ec431408fcb2871871504f1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127864
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann 
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/140052
Tested-by: Jenkins CollaboraOffice 
Reviewed-by: Tor Lillqvist 

diff --git a/external/freetype/ExternalProject_freetype.mk 
b/external/freetype/ExternalProject_freetype.mk
index 032e0362917a..a3e0a7ca3e4b 100644
--- a/external/freetype/ExternalProject_freetype.mk
+++ b/external/freetype/ExternalProject_freetype.mk
@@ -18,6 +18,7 @@ $(call gb_ExternalProject_get_state_target,freetype,build) :
$(call gb_ExternalProject_run,build,\
$(gb_RUN_CONFIGURE) ./configure \
--disable-shared \
+   --with-pic \
--without-zlib \
--without-brotli \
--without-bzip2 \