[Libreoffice-commits] core.git: external/cairo

2023-10-16 Thread Stephan Bergmann (via logerrit)
 external/cairo/pixman/pixman-ubsan.patch |9 +
 1 file changed, 9 insertions(+)

New commits:
commit f7371ed8c19be57a9dac02d143151556eaab523a
Author: Stephan Bergmann 
AuthorDate: Mon Oct 16 10:26:11 2023 +0200
Commit: Stephan Bergmann 
CommitDate: Mon Oct 16 14:08:05 2023 +0200

Silence UBSan misaligned-pointer-use

...as seen during CppunitTest_sd_import_tests2,

> pixman-sse2.c:522:16: runtime error: load of misaligned address 
0x517a4f83 for type 'const uint32_t *' (aka 'const unsigned int *'), which 
requires 4 byte alignment
> 0x517a4f83: note: pointer points here
>  00  b8 ff ff ff ff ff ff ff  ff ff ff ff ff ff ff ff  ff ff ff ff ff ff 
c0 00  b8 ff ff ff ff ff ff
>   ^
>  #0 in combine1 at 
workdir/UnpackedTarball/pixman/pixman/pixman-sse2.c:522:5
>  #1 in sse2_combine_add_u at 
workdir/UnpackedTarball/pixman/pixman/pixman-sse2.c:1366:6
>  #2 in sse2_composite_add_8_8 at 
workdir/UnpackedTarball/pixman/pixman/pixman-sse2.c:4490:2
>  #3 in add_glyphs at 
workdir/UnpackedTarball/pixman/pixman/pixman-glyph.c:615:6
>  #4 in pixman_composite_glyphs at 
workdir/UnpackedTarball/pixman/pixman/pixman-glyph.c:673:5
>  #5 in composite_glyphs at 
workdir/UnpackedTarball/cairo/src/cairo-image-compositor.c:941:2
>  #6 in composite_glyphs at 
workdir/UnpackedTarball/cairo/src/cairo-traps-compositor.c:2295:12
>  #7 in clip_and_composite at 
workdir/UnpackedTarball/cairo/src/cairo-traps-compositor.c:1049:15
>  #8 in _cairo_traps_compositor_glyphs at 
workdir/UnpackedTarball/cairo/src/cairo-traps-compositor.c:2331:11
>  #9 in _cairo_compositor_glyphs at 
workdir/UnpackedTarball/cairo/src/cairo-compositor.c:292:11
>  #10 in _cairo_image_surface_glyphs at 
workdir/UnpackedTarball/cairo/src/cairo-image-surface.c:1030:12
>  #11 in _cairo_surface_show_text_glyphs at 
workdir/UnpackedTarball/cairo/src/cairo-surface.c:2920:15
>  #12 in _cairo_gstate_show_text_glyphs at 
workdir/UnpackedTarball/cairo/src/cairo-gstate.c:2077:15
>  #13 in _cairo_default_context_glyphs at 
workdir/UnpackedTarball/cairo/src/cairo-default-context.c:1334:12
>  #14 in cairo_show_glyphs at 
workdir/UnpackedTarball/cairo/src/cairo.c:3670:14
>  #15 in CairoTextRender::DrawTextLayout(GenericSalLayout const&, 
SalGraphics const&) at vcl/unx/generic/gdi/cairotextrender.cxx:476:9
>  #16 in SvpSalGraphics::DrawTextLayout(GenericSalLayout const&) at 
vcl/headless/svptext.cxx:72:23
>  #17 in GenericSalLayout::DrawText(SalGraphics&) const at 
vcl/source/gdi/CommonSalLayout.cxx:171:18
>  #18 in OutputDevice::ImplDrawTextDirect(SalLayout&, bool) at 
vcl/source/outdev/text.cxx:331:16
>  #19 in OutputDevice::ImplDrawText(SalLayout&) at 
vcl/source/outdev/text.cxx:482:9
>  #20 in OutputDevice::DrawTextArray(Point const&, rtl::OUString const&, 
KernArraySpan, std::span, int, 
int, SalLayoutFlags, SalLayoutGlyphs const*) at vcl/source/outdev/text.cxx:951:9
>  #21 in 
drawinglayer::processor2d::VclProcessor2D::RenderTextSimpleOrDecoratedPortionPrimitive2D(drawinglayer::primitive2d::TextSimplePortionPrimitive2D
 const&) at drawinglayer/source/processor2d/vclprocessor2d.cxx:422:33
>  #22 in 
drawinglayer::processor2d::VclPixelProcessor2D::processTextSimplePortionPrimitive2D(drawinglayer::primitive2d::TextSimplePortionPrimitive2D
 const&) at drawinglayer/source/processor2d/vclpixelprocessor2d.cxx:404:9
>  #23 in 
drawinglayer::processor2d::VclPixelProcessor2D::processBasePrimitive2D(drawinglayer::primitive2d::BasePrimitive2D
 const&) at drawinglayer/source/processor2d/vclpixelprocessor2d.cxx:200:13
>  #24 in 
drawinglayer::processor2d::BaseProcessor2D::process(drawinglayer::primitive2d::Primitive2DContainer
 const&) at drawinglayer/source/processor2d/baseprocessor2d.cxx:68:21
>  #25 in 
drawinglayer::processor2d::BaseProcessor2D::visit(drawinglayer::primitive2d::Primitive2DContainer
 const&) at drawinglayer/source/processor2d/baseprocessor2d.cxx:56:13
>  #26 in 
drawinglayer::primitive2d::GroupPrimitive2D::getChildren(drawinglayer::primitive2d::Primitive2DDecompositionVisitor&)
 const at include/drawinglayer/primitive2d/groupprimitive2d.hxx:76:90
>  #27 in 
drawinglayer::primitive2d::GroupPrimitive2D::get2DDecomposition(drawinglayer::primitive2d::Primitive2DDecompositionVisitor&,
 drawinglayer::geometry::ViewInformation2D const&) const at 
drawinglayer/source/primitive2d/groupprimitive2d.cxx:53:13
>  #28 in 
drawinglayer::processor2d::BaseProcessor2D::process(drawinglayer::primitive2d::BasePrimitive2D
 const&) at drawinglayer/source/processor2d/baseprocessor2d.cxx:46:24
>  #29 in 
drawinglayer::processor2d::VclPixelProcessor2D::processBasePrimitive2D(drawinglayer::primitive2d::BasePrimitive2D
 const&) at drawinglayer/source/processor2d/vclpixelprocessor2d.cxx:378:13
>  #30 in 
drawinglayer::processor2d::BaseProcessor2D::process(drawinglayer::primitive2d::Primitive2DContainer

[Libreoffice-commits] core.git: external/cairo external/curl external/fontconfig external/freetype external/liblangtag external/nss external/openssl external/python3 external/redland external/xmlsec s

2023-09-14 Thread Stephan Bergmann (via logerrit)
 external/cairo/ExternalProject_cairo.mk   |1 +
 external/cairo/ExternalProject_pixman.mk  |1 +
 external/curl/ExternalProject_curl.mk |1 +
 external/fontconfig/ExternalProject_fontconfig.mk |1 +
 external/freetype/ExternalProject_freetype.mk |1 +
 external/liblangtag/ExternalProject_liblangtag.mk |1 +
 external/nss/ExternalProject_nss.mk   |2 +-
 external/openssl/ExternalProject_openssl.mk   |1 +
 external/python3/ExternalProject_python3.mk   |1 +
 external/redland/ExternalProject_raptor.mk|1 +
 external/redland/ExternalProject_rasqal.mk|1 +
 external/redland/ExternalProject_redland.mk   |1 +
 external/xmlsec/ExternalProject_xmlsec.mk |1 +
 solenv/sanitizers/ubsan-suppressions  |   13 -
 14 files changed, 13 insertions(+), 14 deletions(-)

New commits:
commit 233e0a009a6a22342a86a03eeb1349be2cd2d3eb
Author: Stephan Bergmann 
AuthorDate: Thu Sep 14 22:56:58 2023 +0200
Commit: Stephan Bergmann 
CommitDate: Fri Sep 15 07:58:37 2023 +0200

A more principled suppression of -fsanitize=function in external C code

...after


"-fsanitize=function: support C".

This includes reverts of 16af9e81863a80116f808ee3cfa4a1bab7c67ac5 "update 
clang
asan suppressions" and 151a43f3d00f6523079c53d6c2d064f80b9a55d6 ""update 
clang
asan suppressions".

Change-Id: I49740f5f3a784af1d62b830b47bfdfa27fe3e471
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/156935
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann 

diff --git a/external/cairo/ExternalProject_cairo.mk 
b/external/cairo/ExternalProject_cairo.mk
index b677098482ff..df6bd5a37b78 100644
--- a/external/cairo/ExternalProject_cairo.mk
+++ b/external/cairo/ExternalProject_cairo.mk
@@ -49,6 +49,7 @@ $(call gb_ExternalProject_get_state_target,cairo,build) :
$(if $(debug),STRIP=" ") \
$(if $(filter ANDROID iOS,$(OS)),CFLAGS="$(if $(debug),-g) 
$(ZLIB_CFLAGS) $(gb_VISIBILITY_FLAGS)") \
$(if $(filter EMSCRIPTEN,$(OS)),CFLAGS="-O3 -DCAIRO_NO_MUTEX 
$(ZLIB_CFLAGS) -Wno-enum-conversion $(gb_EMSCRIPTEN_CPPFLAGS)" ) \
+   $(if $(filter -fsanitize=undefined,$(CC)),CC='$(CC) 
-fno-sanitize=function') \
$(if $(filter-out EMSCRIPTEN ANDROID iOS,$(OS)), \
CFLAGS="$(CFLAGS) $(call 
gb_ExternalProject_get_build_flags,cairo) $(ZLIB_CFLAGS)" \
LDFLAGS="$(call 
gb_ExternalProject_get_link_flags,cairo)" \
diff --git a/external/cairo/ExternalProject_pixman.mk 
b/external/cairo/ExternalProject_pixman.mk
index 29902b4c1f5c..f95fcb626ccc 100644
--- a/external/cairo/ExternalProject_pixman.mk
+++ b/external/cairo/ExternalProject_pixman.mk
@@ -29,6 +29,7 @@ $(call gb_ExternalProject_get_state_target,pixman,build) :
$(gb_CONFIGURE_PLATFORMS) \
$(if $(CROSS_COMPILING),$(if $(filter INTEL 
ARM,$(CPUNAME)),ac_cv_c_bigendian=no)) \
$(if $(filter EMSCRIPTEN,$(OS)),CFLAGS="-O3 -pthread 
-msimd128") \
+   $(if $(filter -fsanitize=undefined,$(CC)),CC='$(CC) 
-fno-sanitize=function') \
&& $(MAKE) \
)
$(call gb_Trace_EndRange,pixman,EXTERNAL)
diff --git a/external/curl/ExternalProject_curl.mk 
b/external/curl/ExternalProject_curl.mk
index 087ea2c44b39..a4029c2fc4b2 100644
--- a/external/curl/ExternalProject_curl.mk
+++ b/external/curl/ExternalProject_curl.mk
@@ -76,6 +76,7 @@ $(call gb_ExternalProject_get_state_target,curl,build):
$(if $(filter 
MACOSX,$(OS)),--prefix=/@.__OOO)
 \
$(if $(filter MACOSX,$(OS)),CFLAGS='$(CFLAGS) \

-mmacosx-version-min=$(MACOSX_DEPLOYMENT_TARGET)') \
+   $(if $(filter -fsanitize=undefined,$(CC)),CC='$(CC) 
-fno-sanitize=function') \
CPPFLAGS='$(curl_CPPFLAGS)' \
CFLAGS="$(gb_CFLAGS) $(call 
gb_ExternalProject_get_build_flags,curl)" \
LDFLAGS='$(call gb_ExternalProject_get_link_flags,curl) 
$(curl_LDFLAGS)' \
diff --git a/external/fontconfig/ExternalProject_fontconfig.mk 
b/external/fontconfig/ExternalProject_fontconfig.mk
index efa812250db8..ee0301b251db 100644
--- a/external/fontconfig/ExternalProject_fontconfig.mk
+++ b/external/fontconfig/ExternalProject_fontconfig.mk
@@ -24,6 +24,7 @@ 
fontconfig_add_fonts=/usr/share/X11/fonts/Type1,/usr/share/X11/fonts/TTF,/usr/lo
 $(call gb_ExternalProject_get_state_target,fontconfig,build) :
$(call gb_Trace_StartRange,fontconfig,EXTERNAL)
$(call gb_ExternalProject_run,build,\
+   $(if $(filter -fsanitize=undefined,$(CC)),CC='$(CC) 
-fno-sanitize=function') \

[Libreoffice-commits] core.git: external/cairo

2023-07-06 Thread Caolán McNamara (via logerrit)
 external/cairo/cairo/cairo.GL_RGBA.patch |   15 +--
 1 file changed, 13 insertions(+), 2 deletions(-)

New commits:
commit 9b84955c11dc893901966b645a71b15436004751
Author: Caolán McNamara 
AuthorDate: Wed Jul 5 21:26:34 2023 +0100
Commit: Caolán McNamara 
CommitDate: Thu Jul 6 10:18:32 2023 +0200

cairo RGBA needs to take account of custom RGB24_888 format

Change-Id: I929d20f134c4fb7dedfd2c581263c303cae87eea
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/154080
Tested-by: Jenkins
Reviewed-by: Caolán McNamara 

diff --git a/external/cairo/cairo/cairo.GL_RGBA.patch 
b/external/cairo/cairo/cairo.GL_RGBA.patch
index b1a05feb4a15..648448e9de92 100644
--- a/external/cairo/cairo/cairo.GL_RGBA.patch
+++ b/external/cairo/cairo/cairo.GL_RGBA.patch
@@ -14,15 +14,26 @@
return CAIRO_FORMAT_RGB24;
  case PIXMAN_a8:
return CAIRO_FORMAT_A8;
-@@ -117,7 +117,7 @@
+@@ -109,7 +109,7 @@
+   return CAIRO_FORMAT_A1;
+ case PIXMAN_r5g6b5:
+   return CAIRO_FORMAT_RGB16_565;
+-  case PIXMAN_r8g8b8:
++  case PIXMAN_b8g8r8: //tweaked
+   return CAIRO_FORMAT_RGB24_888;
+ #if PIXMAN_VERSION >= PIXMAN_VERSION_ENCODE(0,22,0)
+ case PIXMAN_r8g8b8a8: case PIXMAN_r8g8b8x8:
+@@ -117,8 +117,8 @@
  #if PIXMAN_VERSION >= PIXMAN_VERSION_ENCODE(0,27,2)
  case PIXMAN_a8r8g8b8_sRGB:
  #endif
 -  case PIXMAN_a8b8g8r8: case PIXMAN_x8b8g8r8:
+-case PIXMAN_b8g8r8:   case PIXMAN_b5g6r5:
 +case PIXMAN_a8r8g8b8: case PIXMAN_x8r8g8b8: //tweaked
- case PIXMAN_b8g8r8:   case PIXMAN_b5g6r5:
++case PIXMAN_r8g8b8:   case PIXMAN_b5g6r5:
  case PIXMAN_a1r5g5b5: case PIXMAN_x1r5g5b5: case PIXMAN_a1b5g5r5:
  case PIXMAN_x1b5g5r5: case PIXMAN_a4r4g4b4: case PIXMAN_x4r4g4b4:
+ case PIXMAN_a4b4g4r4: case PIXMAN_x4b4g4r4: case PIXMAN_r3g3b2:
 @@ -320,7 +320,7 @@
ret = PIXMAN_a8;
break;


[Libreoffice-commits] core.git: external/cairo

2023-05-17 Thread Caolán McNamara (via logerrit)
 external/cairo/cairo/cairo.ofz57493-Timeout.patch.1 |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit 00ede35a5241925d7060dd44fb81b71f7b03091c
Author: Caolán McNamara 
AuthorDate: Wed May 17 09:55:20 2023 +0100
Commit: Caolán McNamara 
CommitDate: Wed May 17 13:59:50 2023 +0200

ofz#57493 reduce num_edges required to trigger

Change-Id: Idb6127d8943dbf62d8cacb7f2f5382a1e8619aae
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/151869
Tested-by: Jenkins
Reviewed-by: Caolán McNamara 

diff --git a/external/cairo/cairo/cairo.ofz57493-Timeout.patch.1 
b/external/cairo/cairo/cairo.ofz57493-Timeout.patch.1
index ba58973eee9c..6e8fd5127f14 100644
--- a/external/cairo/cairo/cairo.ofz57493-Timeout.patch.1
+++ b/external/cairo/cairo/cairo.ofz57493-Timeout.patch.1
@@ -5,7 +5,7 @@
return CAIRO_STATUS_SUCCESS;
  
 +#if defined(FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION)
-+if (unlikely (polygon->num_edges > 20))
++if (unlikely (polygon->num_edges > 10))
 +  return CAIRO_STATUS_SUCCESS;
 +#endif
 +


[Libreoffice-commits] core.git: external/cairo

2023-05-11 Thread Caolán McNamara (via logerrit)
 external/cairo/UnpackedTarball_cairo.mk |1 +
 external/cairo/cairo/cairo.ofz57493-Timeout.patch.1 |   14 ++
 2 files changed, 15 insertions(+)

New commits:
commit 354cfa20af48207ac35ac14b832b7e44836726d7
Author: Caolán McNamara 
AuthorDate: Thu May 11 10:39:01 2023 +0100
Commit: Caolán McNamara 
CommitDate: Thu May 11 14:38:36 2023 +0200

ofz#57493 Timeout in _cairo_bo_event_queue_sort with > 20 edges

Change-Id: Id925da604647973977c25bbbfa57b1a69382e063
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/151665
Tested-by: Jenkins
Reviewed-by: Caolán McNamara 

diff --git a/external/cairo/UnpackedTarball_cairo.mk 
b/external/cairo/UnpackedTarball_cairo.mk
index de1d9296434d..a3598f0d5150 100644
--- a/external/cairo/UnpackedTarball_cairo.mk
+++ b/external/cairo/UnpackedTarball_cairo.mk
@@ -30,6 +30,7 @@ $(eval $(call gb_UnpackedTarball_add_patches,cairo,\
external/cairo/cairo/0025-libtool-pass-use-ld.patch \
external/cairo/cairo/libcairo-bundled-soname.patch.0 \
external/cairo/cairo/cairo-fd-hack.patch.0 \
+   external/cairo/cairo/cairo.ofz57493-Timeout.patch.1 \
 ))
 
 ifeq ($(OS),iOS)
diff --git a/external/cairo/cairo/cairo.ofz57493-Timeout.patch.1 
b/external/cairo/cairo/cairo.ofz57493-Timeout.patch.1
new file mode 100644
index ..ba58973eee9c
--- /dev/null
+++ b/external/cairo/cairo/cairo.ofz57493-Timeout.patch.1
@@ -0,0 +1,14 @@
+--- a/src/cairo-bentley-ottmann-rectilinear.c  2023-05-11 10:34:16.206027850 
+0100
 b/src/cairo-bentley-ottmann-rectilinear.c  2023-05-11 10:34:21.480787694 
+0100
+@@ -455,6 +455,11 @@
+ if (unlikely (polygon->num_edges == 0))
+   return CAIRO_STATUS_SUCCESS;
+ 
++#if defined(FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION)
++if (unlikely (polygon->num_edges > 20))
++  return CAIRO_STATUS_SUCCESS;
++#endif
++
+ num_events = 2 * polygon->num_edges;
+ 
+ events = stack_events;


[Libreoffice-commits] core.git: external/cairo

2023-02-27 Thread Tor Lillqvist (via logerrit)
 external/cairo/pixman/pixman-wasm.patch |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit a62cb6db8210771c487dd934158e01c3d2db77af
Author: Tor Lillqvist 
AuthorDate: Mon Feb 27 11:37:35 2023 +0200
Commit: Tor Lillqvist 
CommitDate: Mon Feb 27 10:55:10 2023 +

It seems to work to compile also the MMX code for WASM

Change-Id: I27b56297a07e248102cae1bee4074b7be422ce23
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/147875
Tested-by: Tor Lillqvist 
Reviewed-by: Tor Lillqvist 

diff --git a/external/cairo/pixman/pixman-wasm.patch 
b/external/cairo/pixman/pixman-wasm.patch
index c76af875cd51..a04aa7ccca1b 100644
--- a/external/cairo/pixman/pixman-wasm.patch
+++ b/external/cairo/pixman/pixman-wasm.patch
@@ -45,7 +45,7 @@
  {
 +#if defined(__EMSCRIPTEN__)
 +
-+return X86_SSE | X86_SSE2 | X86_SSSE3;
++return X86_MMX | X86_MMX_EXTENSIONS | X86_SSE | X86_SSE2 | X86_SSSE3;
 +
 +#else
  uint32_t a, b, c, d;


[Libreoffice-commits] core.git: external/cairo

2023-02-13 Thread Stephan Bergmann (via logerrit)
 external/cairo/ExternalPackage_cairo.mk |3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

New commits:
commit 9eaa1325a014ff76acd3290752f842ed6bad89ac
Author: Stephan Bergmann 
AuthorDate: Mon Feb 13 15:52:53 2023 +0100
Commit: Stephan Bergmann 
CommitDate: Mon Feb 13 15:49:21 2023 +

Only package the external/cairo library that is named the same as the SONAME

Change-Id: Id97fe380c3e3976e56a6962eaebfbd696bab7332
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146908
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann 

diff --git a/external/cairo/ExternalPackage_cairo.mk 
b/external/cairo/ExternalPackage_cairo.mk
index 74a46688406a..6bd0800d9f21 100644
--- a/external/cairo/ExternalPackage_cairo.mk
+++ b/external/cairo/ExternalPackage_cairo.mk
@@ -12,8 +12,7 @@ $(eval $(call gb_ExternalPackage_ExternalPackage,cairo,cairo))
 $(eval $(call gb_ExternalPackage_use_external_project,cairo,cairo))
 
 ifneq ($(DISABLE_DYNLOADING),TRUE)
-$(eval $(call 
gb_ExternalPackage_add_file,cairo,$(LIBO_LIB_FOLDER)/libcairo-lo.so.2.1170$(CAIRO_VERSION_MICRO).0,src/.libs/libcairo-lo.so.2.1170$(CAIRO_VERSION_MICRO).0))
-$(eval $(call 
gb_ExternalPackage_add_file,cairo,$(LIBO_LIB_FOLDER)/libcairo-lo.so.2,src/.libs/libcairo-lo.so.2))
+$(eval $(call 
gb_ExternalPackage_add_file,cairo,$(LIBO_LIB_FOLDER)/libcairo-lo.so.2,src/.libs/libcairo-lo.so.2.1170$(CAIRO_VERSION_MICRO).0))
 endif
 
 # vim: set noet sw=4 ts=4:


[Libreoffice-commits] core.git: external/cairo

2023-02-09 Thread Tor Lillqvist (via logerrit)
 external/cairo/ExternalProject_pixman.mk |2 
 external/cairo/UnpackedTarball_pixman.mk |1 
 external/cairo/pixman/pixman-wasm.patch  |  108 +++
 3 files changed, 110 insertions(+), 1 deletion(-)

New commits:
commit d5f5f0984510d6c1b453e31c1ad58fb29fed278b
Author: Tor Lillqvist 
AuthorDate: Thu Feb 9 14:24:07 2023 +0200
Commit: Tor Lillqvist 
CommitDate: Thu Feb 9 14:55:26 2023 +

Use SIMD in pixman for WASM

Emscripten and WASM do have some support for SSSE3, so let's try to
use it, with -msimd128. See
https://emscripten.org/docs/porting/simd.html.

WASM is not x86, though, so avoid use of inline x86 assembly, like the
CPUID instruction.

Emscripten does not have  but does have ,
, and .

Change-Id: Ic3a47291f6c6dee6843e93ccecc92a643b269cb1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/146691
Tested-by: Tor Lillqvist 
Reviewed-by: Tor Lillqvist 

diff --git a/external/cairo/ExternalProject_pixman.mk 
b/external/cairo/ExternalProject_pixman.mk
index ac78b23d5c9e..29902b4c1f5c 100644
--- a/external/cairo/ExternalProject_pixman.mk
+++ b/external/cairo/ExternalProject_pixman.mk
@@ -28,7 +28,7 @@ $(call gb_ExternalProject_get_state_target,pixman,build) :
$(if $(filter ANDROID,$(OS)),--disable-arm-simd 
--disable-arm-neon --disable-arm-a64-neon --disable-arm-iwmmxt) \
$(gb_CONFIGURE_PLATFORMS) \
$(if $(CROSS_COMPILING),$(if $(filter INTEL 
ARM,$(CPUNAME)),ac_cv_c_bigendian=no)) \
-   $(if $(filter EMSCRIPTEN,$(OS)),CFLAGS="-O3 -pthread") \
+   $(if $(filter EMSCRIPTEN,$(OS)),CFLAGS="-O3 -pthread 
-msimd128") \
&& $(MAKE) \
)
$(call gb_Trace_EndRange,pixman,EXTERNAL)
diff --git a/external/cairo/UnpackedTarball_pixman.mk 
b/external/cairo/UnpackedTarball_pixman.mk
index 3f1f75616611..922ed9f24f22 100644
--- a/external/cairo/UnpackedTarball_pixman.mk
+++ b/external/cairo/UnpackedTarball_pixman.mk
@@ -14,6 +14,7 @@ $(eval $(call 
gb_UnpackedTarball_set_tarball,pixman,$(PIXMAN_TARBALL),,cairo))
 $(eval $(call gb_UnpackedTarball_add_patches,pixman,\
external/cairo/pixman/pixman-0.24.4.patch \
external/cairo/pixman/pixman-ubsan.patch \
+   external/cairo/pixman/pixman-wasm.patch \
 ))
 
 # vim: set noet sw=4 ts=4:
diff --git a/external/cairo/pixman/pixman-wasm.patch 
b/external/cairo/pixman/pixman-wasm.patch
new file mode 100644
index ..c76af875cd51
--- /dev/null
+++ b/external/cairo/pixman/pixman-wasm.patch
@@ -0,0 +1,108 @@
+--- a/pixman/pixman/pixman-x86.c
 b/pixman/pixman/pixman-x86.c
+@@ -77,13 +77,20 @@
+ 
+ #else
+ 
+-#define _PIXMAN_X86_64
\
+-(defined(__amd64__) || defined(__x86_64__) || defined(_M_AMD64))
++#if (defined(__amd64__) || defined(__x86_64__) || defined(_M_AMD64))
++#define _PIXMAN_X86_64 1
++#else
++#define _PIXMAN_X86_64 0
++#endif
+ 
+ static pixman_bool_t
+ have_cpuid (void)
+ {
+-#if _PIXMAN_X86_64 || defined (_MSC_VER)
++#if defined(__EMSCRIPTEN__)
++
++return FALSE;
++
++#elif _PIXMAN_X86_64 || defined (_MSC_VER)
+ 
+ return TRUE;
+ 
+@@ -109,6 +109,8 @@
+ #endif
+ }
+ 
++#if !defined(__EMSCRIPTEN__)
++
+ static void
+ pixman_cpuid (uint32_t feature,
+ uint32_t *a, uint32_t *b, uint32_t *c, uint32_t *d)
+@@ -156,10 +156,17 @@
+ #error Unknown compiler
+ #endif
+ }
++ 
++#endif // !__EMSCRIPTEN__
+ 
+ static cpu_features_t
+ detect_cpu_features (void)
+ {
++#if defined(__EMSCRIPTEN__)
++
++return X86_SSE | X86_SSE2 | X86_SSSE3;
++
++#else
+ uint32_t a, b, c, d;
+ cpu_features_t features = 0;
+ 
+@@ -202,6 +202,8 @@
+ }
+ 
+ return features;
++
++#endif // !__EMSCRIPTEN__
+ }
+ 
+ #endif
+--- a/pixman/pixman/pixman-ssse3.c
 b/pixman/pixman/pixman-ssse3.c
+@@ -28,7 +28,9 @@
+ #endif
+ 
+ #include 
++#if !defined(__EMSCRIPTEN__)
+ #include 
++#endif
+ #include 
+ #include 
+ #include 
+--- a/pixman/configure
 b/pixman/configure
+@@ -14207,7 +14207,11 @@
+ #if defined(__GNUC__) && (__GNUC__ < 3 || (__GNUC__ == 3 && __GNUC_MINOR__ < 
4))
+ #error "Need GCC >= 3.4 for MMX intrinsics"
+ #endif
++#if !defined(__EMSCRIPTEN__)
+ #include 
++#else
++#include 
++#endif
+ #include 
+ 
+ /* Check support for block expressions */
+@@ -14308,7 +14308,9 @@
+ #  error "Need GCC >= 4.2 for SSE2 intrinsics on x86"
+ #   endif
+ #endif
++#if !defined(__EMSCRIPTEN__)
+ #include 
++#endif
+ #include 
+ #include 
+ int param;
+@@ -14380,7 +14380,9 @@
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ /* end confdefs.h.  */
+ 
++#if !defined(__EMSCRIPTEN__)
+ #include 
++#endif
+ #include 
+ #include 
+ #include 


[Libreoffice-commits] core.git: external/cairo

2023-01-23 Thread Tor Lillqvist (via logerrit)
 external/cairo/ExternalProject_cairo.mk  |2 +-
 external/cairo/ExternalProject_pixman.mk |2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

New commits:
commit 5cd3a8ec6d36a389eb0be4d59f4570e3bda92dc5
Author: Tor Lillqvist 
AuthorDate: Mon Jan 23 16:29:42 2023 +0200
Commit: Tor Lillqvist 
CommitDate: Mon Jan 23 22:58:54 2023 +

Enforce compiling cairo and pixman for WASM with -O3

Earlier, no -O flag at all got used in the cairo and pixman
builds. Which was sad, as these two libraries are performance-critical.

Yes, this change is quick-and-dirty. The proper way would be to modify
things in solenv/gbuild. But that is somewhat complicated.

In general it seems fairly hard to make sure the same compiler flags
get used for every external bundled library. Each external library is
a special snowflake, more or less, with a differently structured
ExternalProject makefile.

For instance for the libwpd library (just picked randomly as an
example), even -O2 gets used. (Which as such is OK.) This despite
solenv/gbuild/platform/EMSCRIPTEN_INTEL_GCC.mk apparently trying to
enforce use of -O1 for Emscripten.

This change has a visible impact on the performance of COWASM.

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

diff --git a/external/cairo/ExternalProject_cairo.mk 
b/external/cairo/ExternalProject_cairo.mk
index fd934906343b..b677098482ff 100644
--- a/external/cairo/ExternalProject_cairo.mk
+++ b/external/cairo/ExternalProject_cairo.mk
@@ -48,7 +48,7 @@ $(call gb_ExternalProject_get_state_target,cairo,build) :
$(gb_RUN_CONFIGURE) ./configure \
$(if $(debug),STRIP=" ") \
$(if $(filter ANDROID iOS,$(OS)),CFLAGS="$(if $(debug),-g) 
$(ZLIB_CFLAGS) $(gb_VISIBILITY_FLAGS)") \
-   $(if $(filter EMSCRIPTEN,$(OS)),CFLAGS=-DCAIRO_NO_MUTEX" 
$(ZLIB_CFLAGS) -Wno-enum-conversion $(gb_EMSCRIPTEN_CPPFLAGS)" ) \
+   $(if $(filter EMSCRIPTEN,$(OS)),CFLAGS="-O3 -DCAIRO_NO_MUTEX 
$(ZLIB_CFLAGS) -Wno-enum-conversion $(gb_EMSCRIPTEN_CPPFLAGS)" ) \
$(if $(filter-out EMSCRIPTEN ANDROID iOS,$(OS)), \
CFLAGS="$(CFLAGS) $(call 
gb_ExternalProject_get_build_flags,cairo) $(ZLIB_CFLAGS)" \
LDFLAGS="$(call 
gb_ExternalProject_get_link_flags,cairo)" \
diff --git a/external/cairo/ExternalProject_pixman.mk 
b/external/cairo/ExternalProject_pixman.mk
index 9293b9234013..ac78b23d5c9e 100644
--- a/external/cairo/ExternalProject_pixman.mk
+++ b/external/cairo/ExternalProject_pixman.mk
@@ -28,7 +28,7 @@ $(call gb_ExternalProject_get_state_target,pixman,build) :
$(if $(filter ANDROID,$(OS)),--disable-arm-simd 
--disable-arm-neon --disable-arm-a64-neon --disable-arm-iwmmxt) \
$(gb_CONFIGURE_PLATFORMS) \
$(if $(CROSS_COMPILING),$(if $(filter INTEL 
ARM,$(CPUNAME)),ac_cv_c_bigendian=no)) \
-   $(if $(filter EMSCRIPTEN,$(OS)),CFLAGS="-pthread") \
+   $(if $(filter EMSCRIPTEN,$(OS)),CFLAGS="-O3 -pthread") \
&& $(MAKE) \
)
$(call gb_Trace_EndRange,pixman,EXTERNAL)


[Libreoffice-commits] core.git: external/cairo

2022-11-30 Thread Caolán McNamara (via logerrit)
 external/cairo/ExternalProject_pixman.mk |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit fc7068d648a98619827c2f94374549e3ae2fad65
Author: Caolán McNamara 
AuthorDate: Wed Nov 30 09:13:53 2022 +
Commit: Caolán McNamara 
CommitDate: Wed Nov 30 12:12:15 2022 +0100

if we --disable-arm-neon then also use the new --disable-arm-a64-neon

alternatively -fno-integrated-as is a suggestion at
https://gitlab.freedesktop.org/pixman/pixman/-/issues/45

Change-Id: I9b16d235d24f3d0a87507bdd0c6d5d397ac45d91
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/143481
Tested-by: Jenkins
Reviewed-by: Caolán McNamara 

diff --git a/external/cairo/ExternalProject_pixman.mk 
b/external/cairo/ExternalProject_pixman.mk
index 39d5beecf993..9293b9234013 100644
--- a/external/cairo/ExternalProject_pixman.mk
+++ b/external/cairo/ExternalProject_pixman.mk
@@ -25,7 +25,7 @@ $(call gb_ExternalProject_get_state_target,pixman,build) :
$(call gb_ExternalProject_run,build,\
$(gb_RUN_CONFIGURE) ./configure \
$(if $(filter 
TRUE,$(DISABLE_DYNLOADING)),--disable-shared,--disable-static) \
-   $(if $(filter ANDROID,$(OS)),--disable-arm-simd 
--disable-arm-neon --disable-arm-iwmmxt) \
+   $(if $(filter ANDROID,$(OS)),--disable-arm-simd 
--disable-arm-neon --disable-arm-a64-neon --disable-arm-iwmmxt) \
$(gb_CONFIGURE_PLATFORMS) \
$(if $(CROSS_COMPILING),$(if $(filter INTEL 
ARM,$(CPUNAME)),ac_cv_c_bigendian=no)) \
$(if $(filter EMSCRIPTEN,$(OS)),CFLAGS="-pthread") \


[Libreoffice-commits] core.git: external/cairo

2022-09-02 Thread Stephan Bergmann (via logerrit)
 external/cairo/cairo/cairo.RGB24_888.patch |3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

New commits:
commit ae3965f6cc87a7d57da319370ef1d783682100a8
Author: Stephan Bergmann 
AuthorDate: Thu Sep 1 15:54:14 2022 +0200
Commit: Stephan Bergmann 
CommitDate: Fri Sep 2 08:37:40 2022 +0200

external/cairo: Remove dead code from cairo.RGB24_888.patch

...now that ab157ab93e0c5a62927947a8d2b0c1c277e526ac "move part of sanitizer
patch to the patch that introduced the problem" unilaterally folded in here 
the
content of f5e1314ffa564077c27fb9c954c792b498bcae12 "external/cairo: Fix
previous -fsanitize=alignment fix", about which that commit's message had
stated:  "The following line

>   pixel &= 0x00ff; /* ignore next pixel bits */

should no longer be necessary now, and it is probably better to directly 
fix the
original code in external/cairo/cairo/cairo-1.10.2.patch, but I'll leave 
that
for a potential follow-up fix, once the provenance and assumed quality of 
that
original CAIRO_FORMAT_RGB24_888 code is clarified."  (The provenance and 
quality
of that code is still not clarified though, see the still unanswered 
question in
the comment at


"external/cairo: Fix previous -fsanitize=alignment fix".)

Change-Id: Ic729bff238a35fac69d048b7c3912dd706a5b601
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/139211
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann 

diff --git a/external/cairo/cairo/cairo.RGB24_888.patch 
b/external/cairo/cairo/cairo.RGB24_888.patch
index d4f31c5cb81d..b33bee411b9b 100644
--- a/external/cairo/cairo/cairo.RGB24_888.patch
+++ b/external/cairo/cairo/cairo.RGB24_888.patch
@@ -31,13 +31,12 @@ diff -ru cairo-1.17.4.orig/src/cairo.h 
cairo-1.17.4/src/cairo.h
 diff -ru cairo-1.17.4.orig/src/cairo-image-source.c 
cairo-1.17.4/src/cairo-image-source.c
 --- misc/cairo-1.17.4.orig/src/cairo-image-source.c2021-08-29 
19:43:26.979435585 +0100
 +++ misc/build/cairo-1.17.4/src/cairo-image-source.c   2021-08-29 
19:43:47.501506559 +0100
-@@ -509,6 +509,20 @@
+@@ -509,6 +509,19 @@
color.blue = expand_channel(pixel & 0x3fff, 10);
return pixman_image_create_solid_fill ();
  
 +case CAIRO_FORMAT_RGB24_888:
 +  pixel = (uint32_t)(image->data + y * image->stride + 3 * x)[0] | 
((uint32_t)(image->data + y * image->stride + 3 * x)[1] << 8) | 
((uint32_t)(image->data + y * image->stride + 3 * x)[2] << 16);
-+  pixel &= 0x00ff; /* ignore next pixel bits */
 +  if (pixel == 0)
 +  return _pixman_black_image ();
 +  if (pixel == 0x00ff)


[Libreoffice-commits] core.git: external/cairo

2022-08-31 Thread Caolán McNamara (via logerrit)
 external/cairo/UnpackedTarball_cairo.mk |4 
 1 file changed, 4 insertions(+)

New commits:
commit 08fc49843f2893a89b97c8e5f522d31a182bc282
Author: Caolán McNamara 
AuthorDate: Wed Aug 31 10:35:46 2022 +0100
Commit: Caolán McNamara 
CommitDate: Wed Aug 31 14:14:05 2022 +0200

document attempt to upstream cairo patches

Change-Id: If3fc80931a544030a6cef97978f9fed835b4530b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/139095
Tested-by: Jenkins
Reviewed-by: Caolán McNamara 

diff --git a/external/cairo/UnpackedTarball_cairo.mk 
b/external/cairo/UnpackedTarball_cairo.mk
index 5824d0bc0f2d..8353adb32035 100644
--- a/external/cairo/UnpackedTarball_cairo.mk
+++ b/external/cairo/UnpackedTarball_cairo.mk
@@ -15,6 +15,10 @@ $(eval $(call 
gb_UnpackedTarball_set_tarball,cairo,$(CAIRO_TARBALL),,cairo))
 # 
https://salsa.debian.org/mckinstry/libtool/-/commit/26c23f951d049241128e5e04a7bbc263e5b145f1
 # isn't applied, so add that in to avoid: /usr/bin/ld: unrecognized option 
'--gdb-index'
 
+# ofz50805.patch 
https://gitlab.freedesktop.org/cairo/cairo/-/merge_requests/350
+# ofz46165.patch upstreamed as 
https://gitlab.freedesktop.org/cairo/cairo/-/merge_requests/351
+# san.patch upstreamed as 
https://gitlab.freedesktop.org/cairo/cairo/-/merge_requests/352
+
 $(eval $(call gb_UnpackedTarball_add_patches,cairo,\
external/cairo/cairo/cairo.buildfix.patch \
external/cairo/cairo/cairo.RGB24_888.patch \


[Libreoffice-commits] core.git: external/cairo

2022-08-31 Thread Caolán McNamara (via logerrit)
 external/cairo/cairo/cairo.RGB24_888.patch |2 +-
 external/cairo/cairo/san.patch.0   |   11 ---
 2 files changed, 1 insertion(+), 12 deletions(-)

New commits:
commit ab157ab93e0c5a62927947a8d2b0c1c277e526ac
Author: Caolán McNamara 
AuthorDate: Wed Aug 31 10:20:34 2022 +0100
Commit: Caolán McNamara 
CommitDate: Wed Aug 31 14:13:50 2022 +0200

move part of sanitizer patch to the patch that introduced the problem

Change-Id: I3fdec4dd5ae93187aebb4a17f9fb01f0a536c9cf
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/139094
Tested-by: Caolán McNamara 
Reviewed-by: Caolán McNamara 

diff --git a/external/cairo/cairo/cairo.RGB24_888.patch 
b/external/cairo/cairo/cairo.RGB24_888.patch
index 6b2befabcc6c..d4f31c5cb81d 100644
--- a/external/cairo/cairo/cairo.RGB24_888.patch
+++ b/external/cairo/cairo/cairo.RGB24_888.patch
@@ -36,7 +36,7 @@ diff -ru cairo-1.17.4.orig/src/cairo-image-source.c 
cairo-1.17.4/src/cairo-image
return pixman_image_create_solid_fill ();
  
 +case CAIRO_FORMAT_RGB24_888:
-+  pixel = *(uint32_t *) (image->data + y * image->stride + 3 * x);
++  pixel = (uint32_t)(image->data + y * image->stride + 3 * x)[0] | 
((uint32_t)(image->data + y * image->stride + 3 * x)[1] << 8) | 
((uint32_t)(image->data + y * image->stride + 3 * x)[2] << 16);
 +  pixel &= 0x00ff; /* ignore next pixel bits */
 +  if (pixel == 0)
 +  return _pixman_black_image ();
diff --git a/external/cairo/cairo/san.patch.0 b/external/cairo/cairo/san.patch.0
index 54cf805d5865..aba2c2495e64 100644
--- a/external/cairo/cairo/san.patch.0
+++ b/external/cairo/cairo/san.patch.0
@@ -50,17 +50,6 @@
num_clusters * sizeof (cairo_text_cluster_t));
} else {
const cairo_glyph_t *cur_glyph;
 src/cairo-image-source.c
-+++ src/cairo-image-source.c
-@@ -509,7 +509,7 @@
-   return pixman_image_create_solid_fill ();
- 
- case CAIRO_FORMAT_RGB24_888:
--  pixel = *(uint32_t *) (image->data + y * image->stride + 3 * x);
-+  pixel = (uint32_t)(image->data + y * image->stride + 3 * x)[0] | 
((uint32_t)(image->data + y * image->stride + 3 * x)[1] << 8) | 
((uint32_t)(image->data + y * image->stride + 3 * x)[2] << 16);
-   pixel &= 0x00ff; /* ignore next pixel bits */
-   if (pixel == 0)
-   return _pixman_black_image ();
 --- src/cairo-surface.c
 +++ src/cairo-surface.c
 @@ -2849,7 +2849,7 @@


[Libreoffice-commits] core.git: external/cairo

2022-08-31 Thread Caolán McNamara (via logerrit)
 external/cairo/UnpackedTarball_cairo.mk |1 +
 external/cairo/cairo/cairo.ofz50805.patch.1 |   16 
 2 files changed, 17 insertions(+)

New commits:
commit 0a54d331f4fbc2df167b97a92e375dd6cafb5576
Author: Caolán McNamara 
AuthorDate: Wed Aug 31 09:52:15 2022 +0100
Commit: Caolán McNamara 
CommitDate: Wed Aug 31 14:13:32 2022 +0200

ofz#50805 crash seen in fuzzing libreoffice text rendering

Change-Id: I8af207ff21399f1bc3f36c01b7d2912692cbb06b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/139093
Tested-by: Caolán McNamara 
Reviewed-by: Caolán McNamara 

diff --git a/external/cairo/UnpackedTarball_cairo.mk 
b/external/cairo/UnpackedTarball_cairo.mk
index e746a48994ab..5824d0bc0f2d 100644
--- a/external/cairo/UnpackedTarball_cairo.mk
+++ b/external/cairo/UnpackedTarball_cairo.mk
@@ -22,6 +22,7 @@ $(eval $(call gb_UnpackedTarball_add_patches,cairo,\
external/cairo/cairo/cairo.oldfreetype.patch \
external/cairo/cairo/san.patch.0 \
external/cairo/cairo/cairo.ofz46165.patch.1 \
+   external/cairo/cairo/cairo.ofz50805.patch.1 \
external/cairo/cairo/0025-libtool-pass-use-ld.patch \
 ))
 
diff --git a/external/cairo/cairo/cairo.ofz50805.patch.1 
b/external/cairo/cairo/cairo.ofz50805.patch.1
new file mode 100644
index ..25bd6bb930df
--- /dev/null
+++ b/external/cairo/cairo/cairo.ofz50805.patch.1
@@ -0,0 +1,16 @@
+--- a/src/cairo-ft-font.c  2022-08-31 09:46:52.595160200 +0100
 b/src/cairo-ft-font.c  2022-08-31 09:47:41.623945654 +0100
+@@ -2568,9 +2568,11 @@
+   if (unlikely (status))
+   cairo_surface_destroy (>base);
+   }
+-  if (unlikely (status))
+-  return status;
+ }
++
++if (unlikely (status))
++  return status;
++
+ if (pixman_image_get_format (surface->pixman_image) == PIXMAN_a8r8g8b8 &&
+   !pixman_image_get_component_alpha (surface->pixman_image)) {
+   _cairo_scaled_glyph_set_color_surface (scaled_glyph,


[Libreoffice-commits] core.git: external/cairo

2022-08-27 Thread Caolán McNamara (via logerrit)
 external/cairo/cairo/san.patch.0 |   12 
 1 file changed, 12 insertions(+)

New commits:
commit 995ae3dc84a9c220b62086664c8ad4a161401cc7
Author: Caolán McNamara 
AuthorDate: Sat Aug 27 10:12:36 2022 +0100
Commit: Caolán McNamara 
CommitDate: Sat Aug 27 12:45:52 2022 +0200

ofz: -Wp,-D_FORTIFY_SOURCE=2 in cairo a problem with msan

Change-Id: I5c7bc7b9a370ee3a5c7dd3f7a2c92c5f2b193d58
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/138920
Tested-by: Caolán McNamara 
Reviewed-by: Caolán McNamara 

diff --git a/external/cairo/cairo/san.patch.0 b/external/cairo/cairo/san.patch.0
index 272fef628aee..54cf805d5865 100644
--- a/external/cairo/cairo/san.patch.0
+++ b/external/cairo/cairo/san.patch.0
@@ -1,3 +1,15 @@
+--- configure  2022-08-27 10:09:35.721992976 +0100
 configure  2022-08-27 10:10:00.363873391 +0100
+@@ -14940,7 +14940,8 @@
+ 
+ MAYBE_WARN="$MAYBE_WARN -fno-strict-aliasing -fno-common"
+ 
+-MAYBE_WARN="$MAYBE_WARN -Wp,-D_FORTIFY_SOURCE=2"
++# breaks msan
++# MAYBE_WARN="$MAYBE_WARN -Wp,-D_FORTIFY_SOURCE=2"
+ 
+ # invalidate cached value if MAYBE_WARN has changed
+ if test "x$cairo_cv_warn_maybe" != "x$MAYBE_WARN"; then
 --- src/cairo-fixed-private.h
 +++ src/cairo-fixed-private.h
 @@ -61,7 +61,7 @@


[Libreoffice-commits] core.git: external/cairo

2022-08-15 Thread Stephan Bergmann (via logerrit)
 external/cairo/UnpackedTarball_pixman.mk   |1 
 external/cairo/pixman/Wincompatible-function-pointer-types.patch.0 |   19 
++
 2 files changed, 20 insertions(+)

New commits:
commit 49f392feb98feb2f69fafbed45ad5aa60c179e64
Author: Stephan Bergmann 
AuthorDate: Mon Aug 15 08:16:45 2022 +0200
Commit: Stephan Bergmann 
CommitDate: Mon Aug 15 11:17:16 2022 +0200

external/cairo: Fix -Wincompatible-function-pointer-types

...with recent Clang 16 trunk since


"Default implicit function pointer conversions diagnostic to be an error",
causing

> pixman-bits-image.c:1184:39: error: incompatible function pointer types 
passing 'const float (int, int)' to parameter of type 'dither_factor_t' (aka 
'float (*)(int, int)') [-Wincompatible-function-pointer-types]
> buffer = dither_apply_ordered (iter, dither_factor_blue_noise_64);
>  ^~~
> pixman-bits-image.c:1130:60: note: passing argument to parameter 'factor' 
here
> dither_apply_ordered (pixman_iter_t *iter, dither_factor_t factor)
>^
> pixman-bits-image.c:1189:39: error: incompatible function pointer types 
passing 'const float (int, int)' to parameter of type 'dither_factor_t' (aka 
'float (*)(int, int)') [-Wincompatible-function-pointer-types]
> buffer = dither_apply_ordered (iter, dither_factor_bayer_8);
>  ^
> pixman-bits-image.c:1130:60: note: passing argument to parameter 'factor' 
here
> dither_apply_ordered (pixman_iter_t *iter, dither_factor_t factor)
>^

Change-Id: I3e28280c9c25dfb7cee5155719a71655db00e344
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/138265
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann 

diff --git a/external/cairo/UnpackedTarball_pixman.mk 
b/external/cairo/UnpackedTarball_pixman.mk
index 3f1f75616611..327041a1b141 100644
--- a/external/cairo/UnpackedTarball_pixman.mk
+++ b/external/cairo/UnpackedTarball_pixman.mk
@@ -14,6 +14,7 @@ $(eval $(call 
gb_UnpackedTarball_set_tarball,pixman,$(PIXMAN_TARBALL),,cairo))
 $(eval $(call gb_UnpackedTarball_add_patches,pixman,\
external/cairo/pixman/pixman-0.24.4.patch \
external/cairo/pixman/pixman-ubsan.patch \
+   external/cairo/pixman/Wincompatible-function-pointer-types.patch.0 \
 ))
 
 # vim: set noet sw=4 ts=4:
diff --git a/external/cairo/pixman/Wincompatible-function-pointer-types.patch.0 
b/external/cairo/pixman/Wincompatible-function-pointer-types.patch.0
new file mode 100644
index ..7f43a350af35
--- /dev/null
+++ b/external/cairo/pixman/Wincompatible-function-pointer-types.patch.0
@@ -0,0 +1,19 @@
+--- pixman/pixman-bits-image.c
 pixman/pixman-bits-image.c
+@@ -1851,14 +1851,14 @@
+ iter->y++;
+ }
+ 
+-static const float
++static float
+ dither_factor_blue_noise_64 (int x, int y)
+ {
+ float m = dither_blue_noise_64x64[((y & 0x3f) << 6) | (x & 0x3f)];
+ return m * (1. / 4096.f) + (1. / 8192.f);
+ }
+ 
+-static const float
++static float
+ dither_factor_bayer_8 (int x, int y)
+ {
+ uint32_t m;


[Libreoffice-commits] core.git: external/cairo

2022-05-05 Thread Stephan Bergmann (via logerrit)
 external/cairo/UnpackedTarball_cairo.mk |1 +
 1 file changed, 1 insertion(+)

New commits:
commit cf7e3ac040d1249f6df0d6796e11d834285680f0
Author: Stephan Bergmann 
AuthorDate: Thu May 5 15:20:49 2022 +0200
Commit: Stephan Bergmann 
CommitDate: Thu May 5 18:03:52 2022 +0200

Reinstate external/cairo/cairo/san.patch.0

(Instead of just removing any hunks that no longer applied,
86132d8188e5e76623dc8053e5a43c1d69eb0831 "upgrade to cairo 1.17.6" had 
dropped
it completely presumably in error.)

Change-Id: I98fe20fc96bd5ce9400b6ad6a9837b21f08cdff0
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133892
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann 

diff --git a/external/cairo/UnpackedTarball_cairo.mk 
b/external/cairo/UnpackedTarball_cairo.mk
index a30285d0a1bd..e746a48994ab 100644
--- a/external/cairo/UnpackedTarball_cairo.mk
+++ b/external/cairo/UnpackedTarball_cairo.mk
@@ -20,6 +20,7 @@ $(eval $(call gb_UnpackedTarball_add_patches,cairo,\
external/cairo/cairo/cairo.RGB24_888.patch \
external/cairo/cairo/cairo-libtool-rpath.patch.1 \
external/cairo/cairo/cairo.oldfreetype.patch \
+   external/cairo/cairo/san.patch.0 \
external/cairo/cairo/cairo.ofz46165.patch.1 \
external/cairo/cairo/0025-libtool-pass-use-ld.patch \
 ))


[Libreoffice-commits] core.git: external/cairo external/curl external/firebird external/fontconfig external/freetype external/harfbuzz external/hunspell external/hyphen external/icu external/libabw ex

2022-04-30 Thread Luboš Luňák (via logerrit)
 external/cairo/ExternalProject_cairo.mk |4 +++-
 external/curl/ExternalProject_curl.mk   |3 ++-
 external/firebird/ExternalProject_firebird.mk   |1 +
 external/fontconfig/ExternalProject_fontconfig.mk   |1 +
 external/freetype/ExternalProject_freetype.mk   |1 +
 external/harfbuzz/ExternalProject_harfbuzz.mk   |1 +
 external/hunspell/ExternalProject_hunspell.mk   |2 +-
 external/hyphen/ExternalProject_hyphen.mk   |1 +
 external/icu/ExternalProject_icu.mk |1 +
 external/libabw/ExternalProject_libabw.mk   |1 +
 external/libatomic_ops/ExternalProject_libatomic_ops.mk |7 ++-
 external/libcdr/ExternalProject_libcdr.mk   |1 +
 external/libebook/ExternalProject_libebook.mk   |1 +
 external/libepubgen/ExternalProject_libepubgen.mk   |1 +
 external/libexttextcat/ExternalProject_libexttextcat.mk |1 +
 external/libfreehand/ExternalProject_libfreehand.mk |1 +
 external/libmspub/ExternalProject_libmspub.mk   |1 +
 external/libnumbertext/ExternalProject_libnumbertext.mk |1 +
 external/liborcus/ExternalProject_liborcus.mk   |   10 ++
 external/libpagemaker/ExternalProject_libpagemaker.mk   |1 +
 external/libqxp/ExternalProject_libqxp.mk   |1 +
 external/libvisio/ExternalProject_libvisio.mk   |1 +
 external/libwebp/ExternalProject_libwebp.mk |1 +
 external/libwps/ExternalProject_libwps.mk   |   10 +-
 external/libxml2/ExternalProject_libxml2.mk |2 +-
 external/libzmf/ExternalProject_libzmf.mk   |1 +
 external/mythes/ExternalProject_mythes.mk   |1 +
 external/openldap/ExternalProject_openldap.mk   |2 +-
 external/xmlsec/ExternalProject_xmlsec.mk   |2 +-
 solenv/gbuild/ExternalProject.mk|4 
 30 files changed, 42 insertions(+), 24 deletions(-)

New commits:
commit 1ffd6897ddf15624e70585ab08e8af713114c938
Author: Luboš Luňák 
AuthorDate: Fri Apr 29 15:50:22 2022 +0200
Commit: Luboš Luňák 
CommitDate: Sun May 1 05:47:22 2022 +0200

try to use also proper debug LDFLAGS for externals libraries

This is basically ea68de2968c0dbcd8e7549435e829db06795c16d but
for LDFLAGS. A number of external libs cannot use this because
their libtool mishandles -fuse-ld.

Change-Id: Idee379eb0a3afb475b536519ee3de064b4e218f4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133639
Tested-by: Jenkins
Reviewed-by: Luboš Luňák 

diff --git a/external/cairo/ExternalProject_cairo.mk 
b/external/cairo/ExternalProject_cairo.mk
index 7ad9b0c4ca0c..53a51b5e45ea 100644
--- a/external/cairo/ExternalProject_cairo.mk
+++ b/external/cairo/ExternalProject_cairo.mk
@@ -50,7 +50,9 @@ $(call gb_ExternalProject_get_state_target,cairo,build) :
$(if $(filter ANDROID iOS,$(OS)),CFLAGS="$(if $(debug),-g) 
$(ZLIB_CFLAGS) $(gb_VISIBILITY_FLAGS)") \
$(if $(filter EMSCRIPTEN,$(OS)),CFLAGS=" $(ZLIB_CFLAGS) 
-Wno-enum-conversion $(gb_EMSCRIPTEN_CPPFLAGS)" --enable-pthread=yes 
PTHREAD_LIBS="") \
$(if $(filter-out EMSCRIPTEN ANDROID iOS,$(OS)), \
-   CFLAGS="$(CFLAGS) $(call 
gb_ExternalProject_get_build_flags,cairo) $(ZLIB_CFLAGS)" ) \
+   CFLAGS="$(CFLAGS) $(call 
gb_ExternalProject_get_build_flags,cairo) $(ZLIB_CFLAGS)" \
+   LDFLAGS="$(call 
gb_ExternalProject_get_link_flags,cairo)" \
+   ) \
$(if $(filter ANDROID iOS,$(OS)),PKG_CONFIG=./dummy_pkg_config) 
\
LIBS="$(ZLIB_LIBS)" \
$(if $(filter -fsanitize=%,$(LDFLAGS)),LDFLAGS="$(LDFLAGS) 
-fuse-ld=bfd") \
diff --git a/external/curl/ExternalProject_curl.mk 
b/external/curl/ExternalProject_curl.mk
index 3e63b402253d..6b524f4d5a1a 100644
--- a/external/curl/ExternalProject_curl.mk
+++ b/external/curl/ExternalProject_curl.mk
@@ -65,7 +65,8 @@ $(call gb_ExternalProject_get_state_target,curl,build):
$(if $(filter MACOSX,$(OS)),CFLAGS='$(CFLAGS) \

-mmacosx-version-min=$(MACOSX_DEPLOYMENT_TARGET)') \
CPPFLAGS='$(curl_CPPFLAGS)' \
-   LDFLAGS='$(curl_LDFLAGS)' \
+   CFLAGS="$(gb_CFLAGS) $(call 
gb_ExternalProject_get_build_flags,curl)" \
+   LDFLAGS='$(call gb_ExternalProject_get_link_flags,curl) 
$(curl_LDFLAGS)' \
ZLIB_CFLAGS='$(ZLIB_CFLAGS)' ZLIB_LIBS='$(ZLIB_LIBS)' \
&& cd lib \
&& $(MAKE) \
diff --git a/external/firebird/ExternalProject_firebird.mk 
b/external/firebird/ExternalProject_firebird.mk
index 76427f34a455..35511951528c 100644
--- a/external/firebird/ExternalProject_firebird.mk
+++ 

[Libreoffice-commits] core.git: external/cairo external/firebird external/fontconfig external/freetype external/gpgmepp external/harfbuzz external/hunspell external/hyphen external/icu external/lcms2

2022-04-12 Thread Luboš Luňák (via logerrit)
 external/cairo/ExternalProject_cairo.mk |3 ++-
 external/firebird/ExternalProject_firebird.mk   |9 -
 external/fontconfig/ExternalProject_fontconfig.mk   |6 +-
 external/freetype/ExternalProject_freetype.mk   |5 -
 external/gpgmepp/ExternalProject_gpgmepp.mk |   14 --
 external/harfbuzz/ExternalProject_harfbuzz.mk   |4 +---
 external/hunspell/ExternalProject_hunspell.mk   |3 +--
 external/hyphen/ExternalProject_hyphen.mk   |1 +
 external/icu/ExternalProject_icu.mk |6 ++
 external/lcms2/ExternalProject_lcms2.mk |2 +-
 external/libabw/ExternalProject_libabw.mk   |2 +-
 external/libassuan/ExternalProject_libassuan.mk |4 ++--
 external/libatomic_ops/ExternalProject_libatomic_ops.mk |2 +-
 external/libcdr/ExternalProject_libcdr.mk   |2 +-
 external/libebook/ExternalProject_libebook.mk   |2 +-
 external/libepubgen/ExternalProject_libepubgen.mk   |2 +-
 external/libetonyek/ExternalProject_libetonyek.mk   |2 +-
 external/libexttextcat/ExternalProject_libexttextcat.mk |2 +-
 external/libfreehand/ExternalProject_libfreehand.mk |2 +-
 external/libgpg-error/ExternalProject_libgpg-error.mk   |1 +
 external/liblangtag/ExternalProject_liblangtag.mk   |4 +---
 external/libmspub/ExternalProject_libmspub.mk   |2 +-
 external/libmwaw/ExternalProject_libmwaw.mk |2 +-
 external/libnumbertext/ExternalProject_libnumbertext.mk |4 +++-
 external/libodfgen/ExternalProject_libodfgen.mk |2 +-
 external/libpagemaker/ExternalProject_libpagemaker.mk   |2 +-
 external/libqxp/ExternalProject_libqxp.mk   |2 +-
 external/librevenge/ExternalProject_librevenge.mk   |2 +-
 external/libstaroffice/ExternalProject_libstaroffice.mk |2 +-
 external/libvisio/ExternalProject_libvisio.mk   |2 +-
 external/libwebp/ExternalProject_libwebp.mk |2 +-
 external/libwpd/ExternalProject_libwpd.mk   |2 +-
 external/libwpg/ExternalProject_libwpg.mk   |2 +-
 external/libwps/ExternalProject_libwps.mk   |2 +-
 external/libxml2/ExternalProject_libxml2.mk |4 +++-
 external/libzmf/ExternalProject_libzmf.mk   |2 +-
 external/lpsolve/ExternalProject_lpsolve.mk |2 +-
 external/mythes/ExternalProject_mythes.mk   |1 +
 external/openldap/ExternalProject_openldap.mk   |4 ++--
 external/redland/ExternalProject_raptor.mk  |4 +++-
 external/redland/ExternalProject_rasqal.mk  |2 +-
 external/redland/ExternalProject_redland.mk |2 +-
 external/xmlsec/ExternalProject_xmlsec.mk   |2 +-
 solenv/gbuild/CliLibrary.mk |2 +-
 solenv/gbuild/ExternalProject.mk|4 
 solenv/gbuild/LinkTarget.mk |   13 +++--
 solenv/gbuild/PrecompiledHeaders.mk |2 +-
 solenv/gbuild/gbuild.mk |7 +++
 48 files changed, 86 insertions(+), 71 deletions(-)

New commits:
commit ea68de2968c0dbcd8e7549435e829db06795c16d
Author: Luboš Luňák 
AuthorDate: Mon Apr 11 14:24:54 2022 +0200
Commit: Luboš Luňák 
CommitDate: Tue Apr 12 13:57:32 2022 +0200

use gb_DEBUGINFO_FLAGS consistently in gbuild ExternalProject's

A number of them didn't use it at all, others had it hand-written
in various ways.

Change-Id: Iaf86325f9cdc032926bac917dc3eef4e34661544
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132818
Tested-by: Jenkins
Reviewed-by: Luboš Luňák 

diff --git a/external/cairo/ExternalProject_cairo.mk 
b/external/cairo/ExternalProject_cairo.mk
index 0996572d63ba..7ad9b0c4ca0c 100644
--- a/external/cairo/ExternalProject_cairo.mk
+++ b/external/cairo/ExternalProject_cairo.mk
@@ -49,7 +49,8 @@ $(call gb_ExternalProject_get_state_target,cairo,build) :
$(if $(debug),STRIP=" ") \
$(if $(filter ANDROID iOS,$(OS)),CFLAGS="$(if $(debug),-g) 
$(ZLIB_CFLAGS) $(gb_VISIBILITY_FLAGS)") \
$(if $(filter EMSCRIPTEN,$(OS)),CFLAGS=" $(ZLIB_CFLAGS) 
-Wno-enum-conversion $(gb_EMSCRIPTEN_CPPFLAGS)" --enable-pthread=yes 
PTHREAD_LIBS="") \
-   $(if $(filter-out EMSCRIPTEN ANDROID 
iOS,$(OS)),CFLAGS="$(CFLAGS) $(if $(debug),-g) $(ZLIB_CFLAGS)" ) \
+   $(if $(filter-out EMSCRIPTEN ANDROID iOS,$(OS)), \
+   CFLAGS="$(CFLAGS) $(call 
gb_ExternalProject_get_build_flags,cairo) $(ZLIB_CFLAGS)" ) \
$(if $(filter ANDROID iOS,$(OS)),PKG_CONFIG=./dummy_pkg_config) 
\
LIBS="$(ZLIB_LIBS)" \
$(if $(filter -fsanitize=%,$(LDFLAGS)),LDFLAGS="$(LDFLAGS) 

[Libreoffice-commits] core.git: external/cairo

2022-03-30 Thread Caolán McNamara (via logerrit)
 external/cairo/UnpackedTarball_cairo.mk |1 +
 external/cairo/cairo/cairo.ofz46165.patch.1 |   16 
 2 files changed, 17 insertions(+)

New commits:
commit efb6845d42c44bbd75771cc1641bc5f2225d8a96
Author: Caolán McNamara 
AuthorDate: Wed Mar 30 09:53:43 2022 +0100
Commit: Caolán McNamara 
CommitDate: Wed Mar 30 12:20:52 2022 +0200

ofz#46165 ubsan Divide-by-zero

Change-Id: I5c56eae4456a03550770035610745de3be074679
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132299
Tested-by: Jenkins
Reviewed-by: Caolán McNamara 

diff --git a/external/cairo/UnpackedTarball_cairo.mk 
b/external/cairo/UnpackedTarball_cairo.mk
index 49a4a726bbe2..a2e9eb894d75 100644
--- a/external/cairo/UnpackedTarball_cairo.mk
+++ b/external/cairo/UnpackedTarball_cairo.mk
@@ -19,6 +19,7 @@ $(eval $(call gb_UnpackedTarball_add_patches,cairo,\
external/cairo/cairo/san.patch.0 \
external/cairo/cairo/0001-Fix-mask-usage-in-image-compositor.patch.1 \
 external/cairo/cairo/cairo-fix_function_signature.patch.1 \
+external/cairo/cairo/cairo.ofz46165.patch.1 \
 ))
 
 ifeq ($(OS),iOS)
diff --git a/external/cairo/cairo/cairo.ofz46165.patch.1 
b/external/cairo/cairo/cairo.ofz46165.patch.1
new file mode 100644
index ..948313c2a186
--- /dev/null
+++ b/external/cairo/cairo/cairo.ofz46165.patch.1
@@ -0,0 +1,16 @@
+--- a/src/cairo-pen.c  2022-03-30 09:48:14.702456922 +0100
 b/src/cairo-pen.c  2022-03-30 09:50:40.011793460 +0100
+@@ -289,7 +289,12 @@
+ } else if (tolerance >= major_axis) {
+   num_vertices = 4;
+ } else {
+-  num_vertices = ceil (2*M_PI / acos (1 - tolerance / major_axis));
++  double divisor = acos (1 - tolerance / major_axis);
++
++  if (divisor == 0.0)
++  return 4;
++
++  num_vertices = ceil (2*M_PI / divisor);
+ 
+   /* number of vertices must be even */
+   if (num_vertices % 2)


[Libreoffice-commits] core.git: external/cairo

2022-03-07 Thread Caolán McNamara (via logerrit)
 external/cairo/cairo/cairo.RGB24_888.patch |3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

New commits:
commit 2701a38cffd64853f881b3a4f81c49d64ee1549b
Author: Caolán McNamara 
AuthorDate: Mon Mar 7 10:24:14 2022 +
Commit: Caolán McNamara 
CommitDate: Mon Mar 7 15:00:31 2022 +0100

ofz: Use-of-uninitialized value

Change-Id: I67063e20f5fc3c3418ee3db5c7a1f3e4a4a7121c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/131100
Tested-by: Jenkins
Reviewed-by: Caolán McNamara 

diff --git a/external/cairo/cairo/cairo.RGB24_888.patch 
b/external/cairo/cairo/cairo.RGB24_888.patch
index f0cc9bb0beb0..6b2befabcc6c 100644
--- a/external/cairo/cairo/cairo.RGB24_888.patch
+++ b/external/cairo/cairo/cairo.RGB24_888.patch
@@ -31,7 +31,7 @@ diff -ru cairo-1.17.4.orig/src/cairo.h 
cairo-1.17.4/src/cairo.h
 diff -ru cairo-1.17.4.orig/src/cairo-image-source.c 
cairo-1.17.4/src/cairo-image-source.c
 --- misc/cairo-1.17.4.orig/src/cairo-image-source.c2021-08-29 
19:43:26.979435585 +0100
 +++ misc/build/cairo-1.17.4/src/cairo-image-source.c   2021-08-29 
19:43:47.501506559 +0100
-@@ -509,6 +509,19 @@
+@@ -509,6 +509,20 @@
color.blue = expand_channel(pixel & 0x3fff, 10);
return pixman_image_create_solid_fill ();
  
@@ -43,6 +43,7 @@ diff -ru cairo-1.17.4.orig/src/cairo-image-source.c 
cairo-1.17.4/src/cairo-image
 +  if (pixel == 0x00ff)
 +  return _pixman_white_image ();
 +
++  color.alpha = 0x;
 +  color.red = (pixel >> 16 & 0xff) | (pixel >> 8 & 0xff00);
 +  color.green = (pixel >> 8 & 0xff) | (pixel & 0xff00);
 +  color.blue = (pixel & 0xff) | (pixel << 8 & 0xff00);


[Libreoffice-commits] core.git: external/cairo external/coinmp external/cppunit external/curl external/expat external/firebird external/fontconfig external/freetype external/gpgmepp external/harfbuzz

2022-01-31 Thread Jan-Marek Glogowski (via logerrit)
 external/cairo/ExternalProject_cairo.mk |4 ++--
 external/cairo/ExternalProject_pixman.mk|4 ++--
 external/coinmp/ExternalProject_coinmp.mk   |2 +-
 external/cppunit/ExternalProject_cppunit.mk |2 +-
 external/curl/ExternalProject_curl.mk   |2 +-
 external/expat/ExternalProject_expat.mk |4 ++--
 external/firebird/ExternalProject_firebird.mk   |2 +-
 external/fontconfig/ExternalProject_fontconfig.mk   |2 +-
 external/freetype/ExternalProject_freetype.mk   |2 +-
 external/gpgmepp/ExternalProject_gpgmepp.mk |3 ++-
 external/harfbuzz/ExternalProject_harfbuzz.mk   |2 +-
 external/hunspell/ExternalProject_hunspell.mk   |2 +-
 external/hyphen/ExternalProject_hyphen.mk   |3 ++-
 external/icu/ExternalProject_icu.mk |6 --
 external/lcms2/ExternalProject_lcms2.mk |4 ++--
 external/libabw/ExternalProject_libabw.mk   |2 +-
 external/libassuan/ExternalProject_libassuan.mk |2 +-
 external/libatomic_ops/ExternalProject_libatomic_ops.mk |2 +-
 external/libcdr/ExternalProject_libcdr.mk   |2 +-
 external/libebook/ExternalProject_libebook.mk   |2 +-
 external/libepubgen/ExternalProject_libepubgen.mk   |2 +-
 external/libetonyek/ExternalProject_libetonyek.mk   |2 +-
 external/libexttextcat/ExternalProject_libexttextcat.mk |2 +-
 external/libffi/ExternalProject_libffi.mk   |2 +-
 external/libfreehand/ExternalProject_libfreehand.mk |2 +-
 external/libgpg-error/ExternalProject_libgpg-error.mk   |2 +-
 external/liblangtag/ExternalProject_liblangtag.mk   |4 ++--
 external/libmspub/ExternalProject_libmspub.mk   |2 +-
 external/libmwaw/ExternalProject_libmwaw.mk |2 +-
 external/libnumbertext/ExternalProject_libnumbertext.mk |2 +-
 external/libodfgen/ExternalProject_libodfgen.mk |2 +-
 external/liborcus/ExternalProject_liborcus.mk   |2 +-
 external/libpagemaker/ExternalProject_libpagemaker.mk   |2 +-
 external/libqxp/ExternalProject_libqxp.mk   |2 +-
 external/librevenge/ExternalProject_librevenge.mk   |2 +-
 external/libstaroffice/ExternalProject_libstaroffice.mk |2 +-
 external/libvisio/ExternalProject_libvisio.mk   |2 +-
 external/libwpd/ExternalProject_libwpd.mk   |2 +-
 external/libwpg/ExternalProject_libwpg.mk   |2 +-
 external/libwps/ExternalProject_libwps.mk   |2 +-
 external/libxml2/ExternalProject_libxml2.mk |2 +-
 external/libxslt/ExternalProject_libxslt.mk |2 +-
 external/libzmf/ExternalProject_libzmf.mk   |2 +-
 external/mythes/ExternalProject_mythes.mk   |3 ++-
 external/nss/ExternalProject_nss.mk |9 -
 external/openldap/ExternalProject_openldap.mk   |2 +-
 external/postgresql/ExternalProject_postgresql.mk   |2 +-
 external/python3/ExternalProject_python3.mk |2 +-
 external/redland/ExternalProject_raptor.mk  |4 ++--
 external/redland/ExternalProject_rasqal.mk  |4 ++--
 external/redland/ExternalProject_redland.mk |4 ++--
 external/xmlsec/ExternalProject_xmlsec.mk   |2 +-
 solenv/gbuild/gbuild.mk |2 ++
 solenv/gbuild/platform/windows.mk   |4 
 54 files changed, 75 insertions(+), 65 deletions(-)

New commits:
commit 4537886ec1de8beed02c7aea34a50727bc058bbd
Author: Jan-Marek Glogowski 
AuthorDate: Sat Jan 29 19:58:44 2022 +0100
Commit: Jan-Marek Glogowski 
CommitDate: Mon Jan 31 10:31:04 2022 +0100

externals: always provide platform configure flags

No idea why we just provided the platform flags when cross-
compiling. In the curious case, where the host platform is
detected as x86_64-pc-mingw32 per default and we actually
want to override it with x86_64-pc-cygwin, we don't do a
cross compile, but must override the host platform.

But there is additional special handling needed for the omitted
cross-platform build in the special case of --host=i686-pc-cygwin
and --build=x86_64-pc-cygwin, where we deliberatly ignore cross
building; Windows is already a slow build, so try to keep this
optimization (AMD64 can execute x86 binaries).

There is the theoretical case, where the externals config.guess
would have detected something else and that "magically" even
worked, while the LO detected triplet would fail, but this
should be fixed in the external in any way.

Change-Id: Ib7a9719e0e406fe90334b7611dc3f01b51692bfa
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129153

[Libreoffice-commits] core.git: external/cairo

2021-12-06 Thread Jan-Marek Glogowski (via logerrit)
 external/cairo/UnpackedTarball_cairo.mk   |1 
 external/cairo/cairo/cairo-fix_function_signature.patch.1 |  334 ++
 2 files changed, 335 insertions(+)

New commits:
commit 2e5d18127f3be6741677bb567f9db37e2f4a9908
Author: Jan-Marek Glogowski 
AuthorDate: Tue Nov 30 19:03:31 2021 +0100
Commit: Jan-Marek Glogowski 
CommitDate: Sat Dec 4 08:51:43 2021 +0100

Fix cairo function pointer usage

WASM strictly checks function signatures, so forced wrong
casting of function pointers compiles, but any call will
generate a runtime error, even if the argument is actually
ignored.

So this adds a bunch of wrapper functions to pass instead.

Change-Id: Id976ea3ca81a792c8af539884ef741f5d23fc2c8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126317
Tested-by: Jenkins
Reviewed-by: Jan-Marek Glogowski 

diff --git a/external/cairo/UnpackedTarball_cairo.mk 
b/external/cairo/UnpackedTarball_cairo.mk
index 5e83b526e52e..49a4a726bbe2 100644
--- a/external/cairo/UnpackedTarball_cairo.mk
+++ b/external/cairo/UnpackedTarball_cairo.mk
@@ -18,6 +18,7 @@ $(eval $(call gb_UnpackedTarball_add_patches,cairo,\
external/cairo/cairo/cairo.oldfreetype.patch \
external/cairo/cairo/san.patch.0 \
external/cairo/cairo/0001-Fix-mask-usage-in-image-compositor.patch.1 \
+external/cairo/cairo/cairo-fix_function_signature.patch.1 \
 ))
 
 ifeq ($(OS),iOS)
diff --git a/external/cairo/cairo/cairo-fix_function_signature.patch.1 
b/external/cairo/cairo/cairo-fix_function_signature.patch.1
new file mode 100644
index ..41cbc6ffbeab
--- /dev/null
+++ b/external/cairo/cairo/cairo-fix_function_signature.patch.1
@@ -0,0 +1,334 @@
+diff --git a/src/cairo-clip-boxes.c b/src/cairo-clip-boxes.c
+index aaddeb7..0d85051 100644
+--- a/src/cairo-clip-boxes.c
 b/src/cairo-clip-boxes.c
+@@ -481,8 +481,9 @@ _add_edge (struct reduce *r,
+ }
+ 
+ static cairo_status_t
+-_reduce_line_to (void *closure,
+- const cairo_point_t *point)
++_reduce_add_point (void *closure,
++   const cairo_point_t *point,
++   const struct _cairo_slope *slope)
+ {
+ struct reduce *r = closure;
+ 
+@@ -492,6 +493,13 @@ _reduce_line_to (void *closure,
+ return CAIRO_STATUS_SUCCESS;
+ }
+ 
++static cairo_status_t
++_reduce_line_to (void *closure,
++ const cairo_point_t *point)
++{
++return _reduce_add_point(closure, point, NULL);
++}
++
+ static cairo_status_t
+ _reduce_close (void *closure)
+ {
+@@ -547,6 +555,7 @@ _cairo_clip_reduce_to_boxes (cairo_clip_t *clip)
+   status = _cairo_path_fixed_interpret_flat (_path->path,
+  _reduce_move_to,
+  _reduce_line_to,
++ _reduce_add_point,
+  _reduce_close,
+  ,
+  clip_path->tolerance);
+diff --git a/src/cairo-path-fill.c b/src/cairo-path-fill.c
+index 4000c9c..dd11a91 100644
+--- a/src/cairo-path-fill.c
 b/src/cairo-path-fill.c
+@@ -54,8 +54,9 @@ typedef struct cairo_filler {
+ } cairo_filler_t;
+ 
+ static cairo_status_t
+-_cairo_filler_line_to (void *closure,
+- const cairo_point_t *point)
++_cairo_filler_add_point (void *closure,
++  const cairo_point_t *point,
++  const struct _cairo_slope *slope)
+ {
+ cairo_filler_t *filler = closure;
+ cairo_status_t status;
+@@ -69,6 +70,13 @@ _cairo_filler_line_to (void *closure,
+ return status;
+ }
+ 
++static cairo_status_t
++_cairo_filler_line_to (void *closure,
++ const cairo_point_t *point)
++{
++return _cairo_filler_add_point(closure, point, NULL);
++}
++
+ static cairo_status_t
+ _cairo_filler_close (void *closure)
+ {
+@@ -113,7 +121,7 @@ _cairo_filler_curve_to (void   *closure,
+ }
+ 
+ if (! _cairo_spline_init (,
+-
(cairo_spline_add_point_func_t)_cairo_filler_line_to, filler,
++_cairo_filler_add_point, filler,
+ >current_point, p1, p2, p3))
+ {
+   return _cairo_filler_line_to (closure, p3);
+@@ -164,8 +172,9 @@ typedef struct cairo_filler_rectilinear_aligned {
+ } cairo_filler_ra_t;
+ 
+ static cairo_status_t
+-_cairo_filler_ra_line_to (void *closure,
+-const cairo_point_t *point)
++_cairo_filler_ra_add_point (void *closure,
++const cairo_point_t *point,
++const struct _cairo_slope *slope)
+ {
+ cairo_filler_ra_t *filler = closure;
+ cairo_status_t status;
+@@ -183,6 +192,13 @@ _cairo_filler_ra_line_to (void *closure,
+ return status;
+ }
+ 
++static cairo_status_t

[Libreoffice-commits] core.git: external/cairo

2021-09-02 Thread Stephan Bergmann (via logerrit)
 external/cairo/cairo/san.patch.0 |   11 +++
 1 file changed, 11 insertions(+)

New commits:
commit 2b5dee8ee86cf92ed613a9cde61b0871f97e5b87
Author: Stephan Bergmann 
AuthorDate: Wed Sep 1 17:18:27 2021 +0200
Commit: Stephan Bergmann 
CommitDate: Thu Sep 2 08:43:53 2021 +0200

external/cairo: Avoid UBSan invalid-null-argument

...as seen during CppunitTest_sw_uiwriter4:

> [_RUN_] SwUiWriterTest4::testEmojiAutoCorrect
cairo-surface.c:2852:28: runtime error: null pointer passed as argument 2, 
which is declared to never be null
> /usr/include/string.h:44:28: note: nonnull attribute specified here
>  #0 in _cairo_surface_show_text_glyphs at 
workdir/UnpackedTarball/cairo/src/cairo-surface.c:2852:9 
(instdir/program/libcairo.so.2 +0x9ac09e)
>  #1 in _cairo_gstate_show_text_glyphs at 
workdir/UnpackedTarball/cairo/src/cairo-gstate.c:2077:15 
(instdir/program/libcairo.so.2 +0x65a4af)
>  #2 in _cairo_default_context_glyphs at 
workdir/UnpackedTarball/cairo/src/cairo-default-context.c:1315:12 
(instdir/program/libcairo.so.2 +0x62404f)
>  #3 in cairo_show_glyphs at 
workdir/UnpackedTarball/cairo/src/cairo.c:3629:14 
(instdir/program/libcairo.so.2 +0xa6c77f)
>  #4 in CairoTextRender::DrawTextLayout(GenericSalLayout const&, 
SalGraphics const&) at vcl/unx/generic/gdi/cairotextrender.cxx:265:9 
(instdir/program/libvcllo.so +0xae46aa3)

Change-Id: Ifa22046bb35a872c4db38130a7ae4c9b758ccbc6
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/121473
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann 

diff --git a/external/cairo/cairo/san.patch.0 b/external/cairo/cairo/san.patch.0
index bbf8f2d626c0..e6c98859244b 100644
--- a/external/cairo/cairo/san.patch.0
+++ b/external/cairo/cairo/san.patch.0
@@ -103,6 +103,17 @@
_cairo_box_from_rectangle (, >unbounded);
_cairo_polygon_init (, , 1);
}
+--- src/cairo-surface.c
 src/cairo-surface.c
+@@ -2849,7 +2849,7 @@
+ 
+ if (_cairo_scaled_font_has_color_glyphs (scaled_font)) {
+ utf8_copy = malloc (sizeof (char) * utf8_len);
+-memcpy (utf8_copy, utf8, sizeof (char) * utf8_len);
++if (utf8_len != 0) memcpy (utf8_copy, utf8, sizeof (char) * utf8_len);
+ utf8 = utf8_copy;
+ 
+ status = composite_color_glyphs (surface, op,
 --- src/cairo-tor-scan-converter.c
 +++ src/cairo-tor-scan-converter.c
 @@ -253,7 +253,7 @@


[Libreoffice-commits] core.git: external/cairo

2021-09-01 Thread Caolán McNamara (via logerrit)
 external/cairo/ExternalProject_cairo.mk |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit fdedc464535ea37f561b641beb4333b757ef9ecc
Author: Caolán McNamara 
AuthorDate: Wed Sep 1 11:08:37 2021 +0100
Commit: Caolán McNamara 
CommitDate: Wed Sep 1 16:33:32 2021 +0200

augment CFLAGS for cairo instead of overwriting

so CFLAGS containing msan's -fsanitize=memory are not discarded

Change-Id: Ib46d060b7542bc3e1b19cdef84ae3f8ea7099b14
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/121440
Tested-by: Jenkins
Reviewed-by: Caolán McNamara 

diff --git a/external/cairo/ExternalProject_cairo.mk 
b/external/cairo/ExternalProject_cairo.mk
index b1e29d77b043..d7e5579d4107 100644
--- a/external/cairo/ExternalProject_cairo.mk
+++ b/external/cairo/ExternalProject_cairo.mk
@@ -49,7 +49,7 @@ $(call gb_ExternalProject_get_state_target,cairo,build) :
$(if $(debug),STRIP=" ") \
$(if $(filter ANDROID iOS,$(OS)),CFLAGS="$(if $(debug),-g) 
$(ZLIB_CFLAGS) $(gb_VISIBILITY_FLAGS)") \
$(if $(filter EMSCRIPTEN,$(OS)),CFLAGS=" $(ZLIB_CFLAGS)" 
--enable-pthread=yes PTHREAD_LIBS="") \
-   $(if $(filter-out EMSCRIPTEN ANDROID iOS,$(OS)),CFLAGS="$(if 
$(debug),-g) $(ZLIB_CFLAGS)" ) \
+   $(if $(filter-out EMSCRIPTEN ANDROID 
iOS,$(OS)),CFLAGS="$(CFLAGS) $(if $(debug),-g) $(ZLIB_CFLAGS)" ) \
$(if $(filter ANDROID iOS,$(OS)),PKG_CONFIG=./dummy_pkg_config) 
\
LIBS="$(ZLIB_LIBS)" \
$(if $(filter -fsanitize=%,$(LDFLAGS)),LDFLAGS="$(LDFLAGS) 
-fuse-ld=bfd") \


[Libreoffice-commits] core.git: external/cairo

2021-06-03 Thread Stephan Bergmann (via logerrit)
 external/cairo/cairo/san.patch.0 |8 ++--
 1 file changed, 2 insertions(+), 6 deletions(-)

New commits:
commit f5e1314ffa564077c27fb9c954c792b498bcae12
Author: Stephan Bergmann 
AuthorDate: Thu Jun 3 07:54:27 2021 +0200
Commit: Stephan Bergmann 
CommitDate: Thu Jun 3 10:30:17 2021 +0200

external/cairo: Fix previous -fsanitize=alignment fix

13f6d80330208eeb45fe9a03bb462941fb4eda2a "external/cairo: Support building 
with
ASan/UBSan" had added the src/cairo-image-source.c blob to
external/cairo/cairo/san.patch.0 to fix

> > cairo-image-source.c:512:10: runtime error: load of misaligned address 
0x6180037aee6f for type 'uint32_t' (aka 'unsigned int'), which requires 4 byte 
alignment
> during UITest_writer_tests7

I had created that patch attempting to do a faithful emulation of the 
original
code (which I had naively assumed to be correct, modulo the alignment 
issue),
reading four consecutive bytes and interpreting them as an uint32_t in the
system's byte order.  I had not noticed back then that all that
CAIRO_FORMAT_RGB24_888 was added by external/cairo/cairo/cairo-1.10.2.patch,
introduced with 54596087e57ea533253e19eea594d9b6c06e8d26 "vcl-svp: add 
24-bit
(3-byte) RGB surface support to Cairo".  Its

> + * @CAIRO_FORMAT_RGB24_888: each pixel is a 24-bit quantity,
> + *   with Red, Green, Blue taking 8-bits each, in that order. (Since 
1.1x)

and

> + * Need this until CAIRO_FORMAT_RGB24_888 is in some official release.
> + * Otherwise we can't reliably check if this is available or we should
> + * convert from 24-bit RGB to 32-bit RGB before passing to Cairo.

comments make it sound as if this code might come from some official cairo
upstream branch, but I cannot find anything at 
git.freedesktop.org/git/cairo.  I
have no idea about the provenance and quality of that code.

However, I now (a) from the above comments naively assume that the intent of
CAIRO_FORMAT_RGB24_888 is to store R, G, B in that order in three bytes with
increasing addresses (i.e., independent of the system's byte order for 
larger-
than-byte words); (b) thus consider the original src/cairo-image-source.c 
code
in external/cairo/cairo/cairo-1.10.2.patch broken (as it attempts to read 
all
three values in one read, in system byte order, which would fail for big
endian); and (c) thus consider the faithful emulation code in
external/cairo/cairo/san.patch.0 to be broken, too.

Based on the above, I here fix at least the external/cairo/cairo/san.patch.0
code (which is applied unconditionally, even for non-ASan/UBSan builds, thus
always overriding the original external/cairo/cairo/cairo-1.10.2.patch 
code).
The following line

>   pixel &= 0x00ff; /* ignore next pixel bits */

should no longer be necessary now, and it is probably better to directly 
fix the
original code in external/cairo/cairo/cairo-1.10.2.patch, but I'll leave 
that
for a potential follow-up fix, once the provenance and assumed quality of 
that
original CAIRO_FORMAT_RGB24_888 code is clarified.

(I came across this code now with a --without-system-cairo ASan/UBSan Linux
build, where JunitTest_toolkit_unoapi_1 failed with

> ==1060406==ERROR: AddressSanitizer: heap-buffer-overflow on address 
0x60300146fb48 at pc 0x7fff9b45b338 bp 0x7ffef1d0 sp 0x7ffef1c8
> READ of size 1 at 0x60300146fb48 thread T0
> Detaching from process 1060652
>  #0 in _pixel_to_solid at 
workdir/UnpackedTarball/cairo/src/cairo-image-source.c:515:207
>  #1 in _pixman_image_for_surface at 
workdir/UnpackedTarball/cairo/src/cairo-image-source.c:1309:22
>  #2 in _pixman_image_for_pattern at 
workdir/UnpackedTarball/cairo/src/cairo-image-source.c:1574:9
>  #3 in _cairo_image_source_create_for_pattern at 
workdir/UnpackedTarball/cairo/src/cairo-image-source.c:1619:2
>  #4 in composite_aligned_boxes at 
workdir/UnpackedTarball/cairo/src/cairo-spans-compositor.c:678:8
>  #5 in clip_and_composite_boxes at 
workdir/UnpackedTarball/cairo/src/cairo-spans-compositor.c:882:11
>  #6 in _cairo_spans_compositor_mask at 
workdir/UnpackedTarball/cairo/src/cairo-spans-compositor.c:999:14
>  #7 in _cairo_compositor_mask at 
workdir/UnpackedTarball/cairo/src/cairo-compositor.c:106:11
>  #8 in _cairo_image_surface_mask at 
workdir/UnpackedTarball/cairo/src/cairo-image-surface.c:952:12
>  #9 in _cairo_surface_mask at 
workdir/UnpackedTarball/cairo/src/cairo-surface.c:2247:14
>  #10 in _cairo_gstate_mask at 
workdir/UnpackedTarball/cairo/src/cairo-gstate.c:1136:11
>  #11 in _cairo_default_context_mask at 
workdir/UnpackedTarball/cairo/src/cairo-default-context.c:993:12
>  #12 in cairo_mask at workdir/UnpackedTarball/cairo/src/cairo.c:2283:14
>  #13 in SvpSalGraphics::drawAlphaBitmap(SalTwoRect const&, SalBitmap 

[Libreoffice-commits] core.git: external/cairo RepositoryExternal.mk

2021-06-01 Thread Jan-Marek Glogowski (via logerrit)
 RepositoryExternal.mk|   32 +++
 external/cairo/ExternalPackage_cairo.mk  |4 ---
 external/cairo/ExternalPackage_pixman.mk |5 
 external/cairo/ExternalProject_cairo.mk  |8 +--
 external/cairo/ExternalProject_pixman.mk |2 -
 5 files changed, 11 insertions(+), 40 deletions(-)

New commits:
commit 1193c331945481dd155a55c6695ff6fd88bd3d10
Author: Jan-Marek Glogowski 
AuthorDate: Tue Jun 1 19:29:58 2021 +0200
Commit: Jan-Marek Glogowski 
CommitDate: Tue Jun 1 22:12:02 2021 +0200

cairo: just register and use external fontconfig

Except for the pixman include, the ANDROID cairo external is the
same then the other OS use. It also builds fontconfig, so there
is really no need to depend on the source (ok, this way it can
be a bit more parallel, if nothing is generated). But the build
nevertheless always sets includes for fontconfig anyway. And the
code implied you can build Android without --disable-dynloading.

Change-Id: I9970dc5c052b6fa80588233244c6828079d8277e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/116554
Tested-by: Jenkins
Reviewed-by: Jan-Marek Glogowski 

diff --git a/RepositoryExternal.mk b/RepositoryExternal.mk
index 2c1bf9c7d79f..df4a8f15c703 100644
--- a/RepositoryExternal.mk
+++ b/RepositoryExternal.mk
@@ -1272,9 +1272,6 @@ endif # ANDROID
 
 endif # SYSTEM_REDLAND
 
-
-ifneq ($(USING_X11)$(ENABLE_CAIRO_CANVAS)$(DISABLE_GUI),) # or
-
 ifneq ($(SYSTEM_CAIRO),)
 
 define gb_LinkTarget__use_cairo
@@ -1311,27 +1308,7 @@ $(call gb_LinkTarget_add_libs,$(1),\
 
 endef
 
-endif # SYSTEM_CAIRO
-
-else ifeq ($(OS),ANDROID)
-
-define gb_LinkTarget__use_cairo
-$(call gb_LinkTarget_use_package,$(1),cairo)
-$(call gb_LinkTarget_use_package,$(1),pixman)
-$(call gb_LinkTarget_use_external,$(1),freetype_headers)
-$(call gb_LinkTarget_set_include,$(1),\
-   -I$(call gb_UnpackedTarball_get_dir,cairo) \
-   -I$(call gb_UnpackedTarball_get_dir,cairo)/src \
-   $$(INCLUDE) \
-)
-$(call gb_LinkTarget_add_libs,$(1),\
-   -L$(call gb_UnpackedTarball_get_dir,cairo)/src/.libs -lcairo \
-   -L$(call gb_UnpackedTarball_get_dir,pixman)/pixman/.libs -lpixman-1 \
-)
-
-endef
-
-endif # CAIRO
+endif # !SYSTEM_CAIRO
 
 ifneq ($(SYSTEM_FREETYPE),)
 
@@ -1381,6 +1358,8 @@ $(call gb_LinkTarget_add_libs,$(1),$(FONTCONFIG_LIBS))
 
 endef
 
+gb_ExternalProject__use_fontconfig :=
+
 else
 
 define gb_LinkTarget__use_fontconfig
@@ -1396,6 +1375,11 @@ $(call gb_LinkTarget_add_libs,$(1),\
 
 endef
 
+define gb_ExternalProject__use_fontconfig
+$(call gb_ExternalProject_use_external_project,$(1),fontconfig)
+
+endef
+
 endif # SYSTEM_FONTCONFIG
 
 ifneq ($(SYSTEM_GRAPHITE),)
diff --git a/external/cairo/ExternalPackage_cairo.mk 
b/external/cairo/ExternalPackage_cairo.mk
index 3b78a52fed76..0ae9b39b8ba6 100644
--- a/external/cairo/ExternalPackage_cairo.mk
+++ b/external/cairo/ExternalPackage_cairo.mk
@@ -12,11 +12,7 @@ $(eval $(call 
gb_ExternalPackage_ExternalPackage,cairo,cairo))
 $(eval $(call gb_ExternalPackage_use_external_project,cairo,cairo))
 
 ifneq ($(DISABLE_DYNLOADING),TRUE)
-ifneq ($(OS),ANDROID)
-
 $(eval $(call 
gb_ExternalPackage_add_file,cairo,$(LIBO_LIB_FOLDER)/libcairo.so.2,src/.libs/libcairo.so.2.1160$(CAIRO_VERSION_MICRO).0))
-
-endif
 endif
 
 # vim: set noet sw=4 ts=4:
diff --git a/external/cairo/ExternalPackage_pixman.mk 
b/external/cairo/ExternalPackage_pixman.mk
index 288a9701afda..576517389565 100644
--- a/external/cairo/ExternalPackage_pixman.mk
+++ b/external/cairo/ExternalPackage_pixman.mk
@@ -12,12 +12,7 @@ $(eval $(call 
gb_ExternalPackage_ExternalPackage,pixman,pixman))
 $(eval $(call gb_ExternalPackage_use_external_project,pixman,pixman))
 
 ifneq ($(DISABLE_DYNLOADING),TRUE)
-ifneq ($(OS),ANDROID)
-
 $(eval $(call 
gb_ExternalPackage_add_file,pixman,$(LIBO_LIB_FOLDER)/libpixman-1.so.0,pixman/.libs/libpixman-1.so.0.34.0))
-
 endif
-endif
-
 
 # vim: set noet sw=4 ts=4:
diff --git a/external/cairo/ExternalProject_cairo.mk 
b/external/cairo/ExternalProject_cairo.mk
index efb9a2023546..ec3f0d155492 100644
--- a/external/cairo/ExternalProject_cairo.mk
+++ b/external/cairo/ExternalProject_cairo.mk
@@ -12,16 +12,12 @@ $(eval $(call gb_ExternalProject_ExternalProject,cairo))
 $(eval $(call gb_ExternalProject_use_external_project,cairo,pixman))
 
 $(eval $(call gb_ExternalProject_use_externals,cairo,\
+fontconfig \
freetype \
libpng \
zlib \
 ))
 
-ifeq ($(OS),ANDROID)
-$(eval $(call gb_ExternalProject_use_unpacked,cairo,fontconfig))
-$(eval $(call gb_ExternalProject_use_unpacked,cairo,libpng))
-endif
-
 $(eval $(call gb_ExternalProject_register_targets,cairo,\
build \
 ))
@@ -72,7 +68,7 @@ $(call gb_ExternalProject_get_state_target,cairo,build) :
$(if $(SYSTEM_FREETYPE),,FREETYPE_CFLAGS="-I$(call 
gb_UnpackedTarball_get_dir,freetype)/include") \
$(if 

[Libreoffice-commits] core.git: external/cairo external/freetype RepositoryExternal.mk

2021-06-01 Thread Jan-Marek Glogowski (via logerrit)
 RepositoryExternal.mk |4 -
 external/cairo/ExternalProject_cairo.mk   |   14 --
 external/cairo/ExternalProject_pixman.mk  |   13 --
 external/cairo/UnpackedTarball_pixman.mk  |4 -
 external/cairo/pixman/Makefile.win32.common   |   54 --
 external/freetype/ExternalProject_freetype.mk |   10 
 6 files changed, 1 insertion(+), 98 deletions(-)

New commits:
commit 017bc462b0af467ca89653266674302a9821db5e
Author: Jan-Marek Glogowski 
AuthorDate: Tue Jun 1 18:53:40 2021 +0200
Commit: Jan-Marek Glogowski 
CommitDate: Tue Jun 1 22:08:09 2021 +0200

cairo: Drop config for WNT and MACOSX build

It's not used on these platforms since a long time.

Change-Id: Idac41f1be0a546fd8aa0dd88709ebfa3255a104e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/116555
Tested-by: Jenkins
Reviewed-by: Jan-Marek Glogowski 

diff --git a/RepositoryExternal.mk b/RepositoryExternal.mk
index 688bef98ac1a..2c1bf9c7d79f 100644
--- a/RepositoryExternal.mk
+++ b/RepositoryExternal.mk
@@ -1291,7 +1291,7 @@ else # !SYSTEM_CAIRO
 
 $(eval $(call gb_Helper_register_packages_for_install,ooo,\
cairo \
-   $(if $(filter $(OS),WNT),,pixman) \
+pixman \
 ))
 
 define gb_LinkTarget__use_cairo
@@ -1306,9 +1306,7 @@ $(call gb_LinkTarget_set_include,$(1),\
 )
 $(call gb_LinkTarget_add_libs,$(1),\
-L$(call gb_UnpackedTarball_get_dir,cairo)/src/.libs -lcairo \
-   $(if $(filter-out MACOSX WNT,$(OS)), \
-L$(call gb_UnpackedTarball_get_dir,pixman)/pixman/.libs 
-lpixman-1 \
-   ) \
 )
 
 endef
diff --git a/external/cairo/ExternalProject_cairo.mk 
b/external/cairo/ExternalProject_cairo.mk
index 471ae6104361..efb9a2023546 100644
--- a/external/cairo/ExternalProject_cairo.mk
+++ b/external/cairo/ExternalProject_cairo.mk
@@ -26,18 +26,6 @@ $(eval $(call gb_ExternalProject_register_targets,cairo,\
build \
 ))
 
-ifeq ($(OS),WNT)
-
-$(call gb_ExternalProject_get_state_target,cairo,build) :
-   $(call gb_Trace_StartRange,cairo,EXTERNAL)
-   $(call gb_ExternalProject_run,build,\
-   $(MAKE) -f Makefile.win32 CFG=release ZLIB3RDLIB=zlib.lib \
-   )
-   $(call gb_Trace_EndRange,cairo,EXTERNAL)
-
-
-else
-
 # Including -rtlib=compiler-rt in pixman_LIBS is a BAD HACK:  At least when 
compiling with Clang
 # -fsanitize=undefined on Linux x86-64, the generated code references 
__muloti4, which is an
 # extension provided by libclang_rt.builtins-x86_64.a runtime, but not by 
GCC's libgcc_s.so.1 (which
@@ -98,6 +86,4 @@ $(call gb_ExternalProject_get_state_target,cairo,build) :
)
$(call gb_Trace_EndRange,cairo,EXTERNAL)
 
-endif
-
 # vim: set noet sw=4 ts=4:
diff --git a/external/cairo/ExternalProject_pixman.mk 
b/external/cairo/ExternalProject_pixman.mk
index 03dffbd01312..4ecbd0b67416 100644
--- a/external/cairo/ExternalProject_pixman.mk
+++ b/external/cairo/ExternalProject_pixman.mk
@@ -13,17 +13,6 @@ $(eval $(call gb_ExternalProject_register_targets,pixman,\
build \
 ))
 
-ifeq ($(OS),WNT)
-
-$(call gb_ExternalProject_get_state_target,pixman,build) :
-   $(call gb_Trace_StartRange,pixman,EXTERNAL)
-   $(call gb_ExternalProject_run,build,\
-   $(MAKE) -f Makefile.win32 MMX=on SSE2=on CFG=release \
-   ,pixman)
-   $(call gb_Trace_EndRange,pixman,EXTERNAL)
-
-else
-
 # ANDROID:
 # The pixman-cpu.c code wants to read /proc//auxv, but
 # the Android headers don't define Elf32_auxv_t.
@@ -44,6 +33,4 @@ $(call gb_ExternalProject_get_state_target,pixman,build) :
)
$(call gb_Trace_EndRange,pixman,EXTERNAL)
 
-endif
-
 # vim: set noet sw=4 ts=4:
diff --git a/external/cairo/UnpackedTarball_pixman.mk 
b/external/cairo/UnpackedTarball_pixman.mk
index cc3dbd11dcc0..bccc7a7a5a04 100644
--- a/external/cairo/UnpackedTarball_pixman.mk
+++ b/external/cairo/UnpackedTarball_pixman.mk
@@ -17,8 +17,4 @@ $(eval $(call gb_UnpackedTarball_add_patches,pixman,\
external/cairo/pixman/pixman-ubsan.patch \
 ))
 
-ifeq ($(OS),WNT)
-$(eval $(call 
gb_UnpackedTarball_add_file,pixman,pixman,external/cairo/pixman/Makefile.win32.common))
-endif
-
 # vim: set noet sw=4 ts=4:
diff --git a/external/cairo/pixman/Makefile.win32.common 
b/external/cairo/pixman/Makefile.win32.common
deleted file mode 100644
index 30b94e7b1ea3..
--- a/external/cairo/pixman/Makefile.win32.common
+++ /dev/null
@@ -1,54 +0,0 @@
-LIBRARY = pixman-1
-
-CC = cl
-LD = link
-AR = lib
-PERL = perl
-
-ifeq ($(top_builddir),)
-top_builddir = $(top_srcdir)
-endif
-
-CFG_VAR = $(CFG)
-ifeq ($(CFG_VAR),)
-CFG_VAR = release
-endif
-
-ifeq ($(CFG_VAR),debug)
-CFG_CFLAGS  = -MD -Od -Zi
-CFG_LDFLAGS = -DEBUG
-else
-CFG_CFLAGS  = -MD -O2
-CFG_LDFLAGS =
-endif
-
-# Package definitions, to be used instead of those provided in config.h
-PKG_CFLAGS  = -DPACKAGE=$(LIBRARY) -DPACKAGE_VERSION="" -DPACKAGE_BUGREPORT=""
-
-BASE_CFLAGS = -nologo -I. -I$(top_srcdir) 

[Libreoffice-commits] core.git: external/cairo

2020-12-29 Thread Stephan Bergmann (via logerrit)
 external/cairo/UnpackedTarball_cairo.mk  |1 
 external/cairo/cairo/0001-Fix-mask-usage-in-image-compositor.patch.1 |   54 
++
 2 files changed, 55 insertions(+)

New commits:
commit c767e91c725b504db08e84b1fd25b11bfc33a4cc
Author: Stephan Bergmann 
AuthorDate: Tue Dec 29 10:56:48 2020 +0100
Commit: Stephan Bergmann 
CommitDate: Tue Dec 29 14:57:25 2020 +0100

external/cairo: Fix mask usage in image-compositor

Change-Id: Id3d8e4715e295290e07146ef06898b313ead57a5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/108449
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann 

diff --git a/external/cairo/UnpackedTarball_cairo.mk 
b/external/cairo/UnpackedTarball_cairo.mk
index dfd79d673be1..920722c2e77a 100644
--- a/external/cairo/UnpackedTarball_cairo.mk
+++ b/external/cairo/UnpackedTarball_cairo.mk
@@ -16,6 +16,7 @@ $(eval $(call gb_UnpackedTarball_add_patches,cairo,\
external/cairo/cairo/cairo-libtool-rpath.patch.1 \
external/cairo/cairo/cairo.oldfreetype.patch \
external/cairo/cairo/san.patch.0 \
+   external/cairo/cairo/0001-Fix-mask-usage-in-image-compositor.patch.1 \
 ))
 
 ifeq ($(OS),iOS)
diff --git 
a/external/cairo/cairo/0001-Fix-mask-usage-in-image-compositor.patch.1 
b/external/cairo/cairo/0001-Fix-mask-usage-in-image-compositor.patch.1
new file mode 100644
index ..c0431555b09a
--- /dev/null
+++ b/external/cairo/cairo/0001-Fix-mask-usage-in-image-compositor.patch.1
@@ -0,0 +1,54 @@
+From 03a820b173ed1fdef6ff14b4468f5dbc02ff59be Mon Sep 17 00:00:00 2001
+From: Heiko Lewin 
+Date: Tue, 15 Dec 2020 16:48:19 +0100
+Subject: [PATCH] Fix mask usage in image-compositor
+
+---
+ src/cairo-image-compositor.c|   8 ++--
+ test/Makefile.sources   |   1 +
+ test/bug-image-compositor.c |  39 
+ test/reference/bug-image-compositor.ref.png | Bin 0 -> 185 bytes
+ 4 files changed, 44 insertions(+), 4 deletions(-)
+ create mode 100644 test/bug-image-compositor.c
+ create mode 100644 test/reference/bug-image-compositor.ref.png
+
+diff --git a/src/cairo-image-compositor.c b/src/cairo-image-compositor.c
+index 79ad69f68..4f8aaed99 100644
+--- a/src/cairo-image-compositor.c
 b/src/cairo-image-compositor.c
+@@ -2610,14 +2610,14 @@ _inplace_src_spans (void *abstract_renderer, int y, 
int h,
+   unsigned num_spans)
+ {
+ cairo_image_span_renderer_t *r = abstract_renderer;
+-uint8_t *m;
++uint8_t *m, *base = (uint8_t*)pixman_image_get_data(r->mask);
+ int x0;
+ 
+ if (num_spans == 0)
+   return CAIRO_STATUS_SUCCESS;
+ 
+ x0 = spans[0].x;
+-m = r->_buf;
++m = base;
+ do {
+   int len = spans[1].x - spans[0].x;
+   if (len >= r->u.composite.run_length && spans[0].coverage == 0xff) {
+@@ -2655,7 +2655,7 @@ _inplace_src_spans (void *abstract_renderer, int y, int 
h,
+ spans[0].x, y,
+ spans[1].x - spans[0].x, h);
+ 
+-  m = r->_buf;
++  m = base;
+   x0 = spans[1].x;
+   } else if (spans[0].coverage == 0x0) {
+   if (spans[0].x != x0) {
+@@ -2684,7 +2684,7 @@ _inplace_src_spans (void *abstract_renderer, int y, int 
h,
+ #endif
+   }
+ 
+-  m = r->_buf;
++  m = base;
+   x0 = spans[1].x;
+   } else {
+   *m++ = spans[0].coverage;
+[test code changes removed]
___
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits


[Libreoffice-commits] core.git: external/cairo

2020-10-30 Thread Stephan Bergmann (via logerrit)
 external/cairo/cairo/san.patch.0 |   50 +++
 1 file changed, 50 insertions(+)

New commits:
commit a499b4eb2ac1bd557dfcd1b00d1bf5916572e6d6
Author: Stephan Bergmann 
AuthorDate: Fri Oct 30 15:57:18 2020 +0100
Commit: Stephan Bergmann 
CommitDate: Fri Oct 30 20:41:25 2020 +0100

external/cairo: Silence some more UBSan warnings

...seen when opening an Impress presentation on GNOME/X11:

> cairo-xlib-source.c:570:26: runtime error: left shift of 191 by 24 places 
cannot be represented in type 'int'

> cairo-xlib-render-compositor.c:1852:17: runtime error: left shift of 
negative value -186

> cairo-xlib-render-compositor.c:1853:17: runtime error: left shift of 
negative value -646

> cairo-xlib-surface-shm.c:1157:43: runtime error: member access within 
null pointer of type 'cairo_xlib_shm_surface_t' (aka 'struct 
_cairo_xlib_shm_surface')

> cairo-fixed-private.h:252:8: runtime error: left shift of negative value 
-146048

Change-Id: I93a5706c2ec3f83bc56d75fc92817668eef57fdb
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/105074
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann 

diff --git a/external/cairo/cairo/san.patch.0 b/external/cairo/cairo/san.patch.0
index 112741260ec5..9e187240f240 100644
--- a/external/cairo/cairo/san.patch.0
+++ b/external/cairo/cairo/san.patch.0
@@ -9,6 +9,15 @@
  }
  
  /* This is the "magic number" approach to converting a double into fixed
+@@ -249,7 +249,7 @@
+ } else if ((f >> CAIRO_FIXED_FRAC_BITS) > INT16_MAX) {
+   x = INT32_MAX;
+ } else {
+-  x = f << (16 - CAIRO_FIXED_FRAC_BITS);
++  x = (uint32_t)f << (16 - CAIRO_FIXED_FRAC_BITS);
+ }
+ 
+ return x;
 --- src/cairo-gstate.c
 +++ src/cairo-gstate.c
 @@ -2297,7 +2297,7 @@
@@ -109,3 +118,44 @@
  #else
  #  define  GRID_AREA_TO_ALPHA(c)  (((c)*255 + GRID_XY/2) / GRID_XY)
  #endif
+--- src/cairo-xlib-render-compositor.c
 src/cairo-xlib-render-compositor.c
+@@ -1849,8 +1849,8 @@
+   return _cairo_error (CAIRO_STATUS_NO_MEMORY);
+ }
+ 
+-dx = -dst_x << 16;
+-dy = -dst_y << 16;
++dx = (unsigned)-dst_x << 16;
++dy = (unsigned)-dst_y << 16;
+ for (i = 0; i < traps->num_traps; i++) {
+   cairo_trapezoid_t *t = >traps[i];
+ 
+--- src/cairo-xlib-source.c
 src/cairo-xlib-source.c
+@@ -567,7 +567,7 @@
+ {
+ cairo_xlib_display_t *display = dst->display;
+ uint32_t pixel =
+-  color->alpha_short >> 8 << 24 |
++  (uint32_t)(color->alpha_short >> 8) << 24 |
+   color->red_short   >> 8 << 16 |
+   color->green_short >> 8 << 8 |
+   color->blue_short  >> 8 << 0;
+--- src/cairo-xlib-surface-shm.c
 src/cairo-xlib-surface-shm.c
+@@ -1152,9 +1152,11 @@
+ cairo_surface_t *surface;
+ 
+ surface = NULL;
+-if (has_shm (other))
+-  surface = &_cairo_xlib_shm_surface_create (other, format, width, height,
+- FALSE, has_shm_pixmaps 
(other))->image.base;
++if (has_shm (other)) {
++  cairo_xlib_shm_surface_t * shm_surface = _cairo_xlib_shm_surface_create 
(other, format, width, height,
++ FALSE, has_shm_pixmaps 
(other));
++  if (shm_surface) surface = _surface->image.base;
++}
+ 
+ return surface;
+ }
___
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits


[Libreoffice-commits] core.git: external/cairo

2020-10-28 Thread Stephan Bergmann (via logerrit)
 external/cairo/pixman/pixman-ubsan.patch |   11 +++
 1 file changed, 11 insertions(+)

New commits:
commit f57e30eb56c1b593dcb9e801202ded9d079d9043
Author: Stephan Bergmann 
AuthorDate: Wed Oct 28 08:25:13 2020 +0100
Commit: Stephan Bergmann 
CommitDate: Wed Oct 28 10:44:09 2020 +0100

external/cairo: Fix another UBSan invalid-shift-base

> pixman-utils.c:217:14: runtime error: left shift of 155 by 24 places 
cannot be represented in type 'int'

...which happened once while using the LO GUI

Change-Id: I174a29e240f09576859308ada56fe240881f0dad
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/104915
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann 

diff --git a/external/cairo/pixman/pixman-ubsan.patch 
b/external/cairo/pixman/pixman-ubsan.patch
index 4455d4a324e8..8f68d569e117 100644
--- a/external/cairo/pixman/pixman-ubsan.patch
+++ b/external/cairo/pixman/pixman-ubsan.patch
@@ -183,3 +183,14 @@
w--;
  }
  
+--- misc/pixman/pixman/pixman-utils.c
 misc/build/pixman/pixman/pixman-utils.c
+@@ -214,7 +214,7 @@
+   g = float_to_unorm (src[i].g, 8);
+   b = float_to_unorm (src[i].b, 8);
+ 
+-  dst[i] = (a << 24) | (r << 16) | (g << 8) | (b << 0);
++  dst[i] = ((uint32_t)a << 24) | (r << 16) | (g << 8) | (b << 0);
+ }
+ }
+ 
___
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits


[Libreoffice-commits] core.git: external/cairo

2020-10-20 Thread Stephan Bergmann (via logerrit)
 external/cairo/ExternalProject_cairo.mk  |   25 -
 external/cairo/UnpackedTarball_cairo.mk  |1 
 external/cairo/cairo/san.patch.0 |  111 ++
 external/cairo/pixman/pixman-ubsan.patch |  152 +++
 4 files changed, 288 insertions(+), 1 deletion(-)

New commits:
commit 13f6d80330208eeb45fe9a03bb462941fb4eda2a
Author: Stephan Bergmann 
AuthorDate: Tue Oct 20 20:10:59 2020 +0200
Commit: Stephan Bergmann 
CommitDate: Tue Oct 20 22:16:54 2020 +0200

external/cairo: Support building with ASan/UBSan

A full `make check screenshot` required lots of little "harmless" fixes in
pixman and cairo to address:

> cairo-image-compositor.c:133:34: runtime error: left shift of 255 by 24 
places cannot be represented in type 'int'
during CppunitTest_emfio_emf

> pixman-fast-path.c:3089:23: runtime error: left shift of 255 by 24 places 
cannot be represented in type 'int'
during CppunitTest_emfio_emf

> pixman-sse2.c:5019:17: runtime error: load of misaligned address 
0x7f99303dbac5 for type 'uint32_t' (aka 'unsigned int'), which requires 4 byte 
alignment
during CppunitTest_emfio_emf

> cairo-fixed-private.h:64:14: runtime error: left shift of negative value 
-8388608
during CppunitTest_emfio_wmf

> pixman-sse2.c:6443:20: runtime error: left shift of 198 by 24 places 
cannot be represented in type 'int'
during CppunitTest_filter_svg

> pixman-sse2.c:5976:6: runtime error: load of misaligned address 
0x629000163202 for type 'uint32_t' (aka 'unsigned int'), which requires 4 byte 
alignment
during CppunitTest_filter_svg

> pixman-sse2.c:3259:10: runtime error: load of misaligned address 
0x606000c85761 for type 'uint32_t' (aka 'unsigned int'), which requires 4 byte 
alignment
during CppunitTest_oox_vml

> pixman-sse2.c:521:18: runtime error: load of misaligned address 
0x607000ca9d41 for type 'const uint32_t' (aka 'const unsigned int'), which 
requires 4 byte alignment
during CppunitTest_oox_vml

> pixman-gradient-walker.c:196:14: runtime error: left shift of 255 by 24 
places cannot be represented in type 'int'
during CppunitTest_sc_tiledrendering

> pixman-combine32.c:786:1: runtime error: left shift of 255 by 24 places 
cannot be represented in type 'int32_t' (aka 'int')
during CppunitTest_vcl_backend_test

> pixman-fast-path.c:2761:29: runtime error: left shift of negative value 
-99
during CppunitTest_xmloff_draw

> pixman-bits-image.c:243:31: runtime error: left shift of negative value 
-99
during CppunitTest_xmloff_draw

> pixman-bits-image.c:244:31: runtime error: left shift of negative value -9
during CppunitTest_sd_tiledrendering

> pixman-fast-path.c:2762:29: runtime error: left shift of negative value 
-84
during CppunitTest_sw_rtfexport2

> cairo-gstate.c:2300:14: runtime error: null pointer passed as argument 1, 
which is declared to never be null
during CppunitTest_sw_ooxmlexport8

> pixman-access.c:389:2: runtime error: left shift of 1 by 31 places cannot 
be represented in type 'int'
during CppunitTest_sw_ooxmlexport15

> ERROR: AddressSanitizer: stack-use-after-scope on address 0x7ff264ae275c 
at pc 0x7ff238941795 bp 0x7fff6bbadb10 sp 0x7fff6bbadb08
> READ of size 4 at 0x7ff264ae275c thread T0
>  #0 in _add_clipped_edge at 
workdir/UnpackedTarball/cairo/src/cairo-polygon.c:351:24 
(instdir/program/libcairo.so.2 +0x88c794)
during CppunitTest_sw_odfexport

> cairo-tor-scan-converter.c:1619:34: runtime error: left shift of negative 
value -39
during CppunitTest_sw_odfexport

> ERROR: AddressSanitizer: stack-use-after-scope on address 0x7fe6ca085750 
at pc 0x00325c3a bp 0x7fff899bedd0 sp 0x7fff899be580
> READ of size 16 at 0x7fe6ca085750 thread T0
>  #0 in __asan_memcpy at 
/home/sbergman/github.com/llvm/llvm-project/compiler-rt/lib/asan/asan_interceptors_memintrinsics.cpp:22:3
 (workdir/LinkTarget/Executable/cppunittester +0x325c39)
during CppunitTest_sw_odfexport

> pixman-sse2.c:3352:14: runtime error: left shift of 65535 by 16 places 
cannot be represented in type 'int'
during CppunitTest_sw_odfexport

> cairo-gstate.c:2355:14: runtime error: null pointer passed as argument 1, 
which is declared to never be null
during CppunitTest_basctl_dialogs_test

> pixman-sse2.c:3537:10: runtime error: load of misaligned address 
0x615000167682 for type 'uint32_t' (aka 'unsigned int'), which requires 4 byte 
alignment
during CppunitTest_sc_screenshots

> cairo-image-source.c:512:10: runtime error: load of misaligned address 
0x6180037aee6f for type 'uint32_t' (aka 'unsigned int'), which requires 4 byte 
alignment
during UITest_writer_tests7

Change-Id: Icd2a211df4751d8dbfd5903bfba424b4c4672999
Reviewed-on: 

[Libreoffice-commits] core.git: external/cairo

2020-09-25 Thread Miklos Vajna (via logerrit)
 external/cairo/cairo/cairo.oldfreetype.patch |   31 +++
 1 file changed, 31 insertions(+)

New commits:
commit e81b9ab5a3ef742bbe674323cc1b035be2380f9c
Author: Miklos Vajna 
AuthorDate: Thu Sep 24 10:39:01 2020 +0200
Commit: Miklos Vajna 
CommitDate: Fri Sep 25 18:47:24 2020 +0200

Related: tdf#136980 cairo: avoid linking to freetype-2.8-only ...

... FT_Get_Var_Design_Coordinates

This is meant to help producing binaries which run on Ubuntu 16.04.

Change-Id: I7fc965c265d2ac97a6836df0829d3d4cd0cc9333
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/103392
Reviewed-by: Miklos Vajna 
Tested-by: Jenkins

diff --git a/external/cairo/cairo/cairo.oldfreetype.patch 
b/external/cairo/cairo/cairo.oldfreetype.patch
index 2ccc1908fa22..a25c8bbdd030 100644
--- a/external/cairo/cairo/cairo.oldfreetype.patch
+++ b/external/cairo/cairo/cairo.oldfreetype.patch
@@ -9,3 +9,34 @@
/* If FT_Get_Var_Blend_Coordinates() is available, we can check if the
 * current design coordinates are the default coordinates. In this case
 * the current outlines match the font tables.
+--- a/cairo/src/cairo-ft-font.c2020-09-24 10:35:25.391941702 +0200
 b/cairo/src/cairo-ft-font.c2020-09-24 10:35:39.900126419 +0200
+@@ -451,7 +451,7 @@
+ unscaled->have_color = FT_HAS_COLOR (face) != 0;
+ unscaled->have_color_set = TRUE;
+ 
+-#ifdef HAVE_FT_GET_VAR_DESIGN_COORDINATES
++#if 0
+   {
+   FT_MM_Var *ft_mm_var;
+   if (0 == FT_Get_MM_Var (face, _mm_var))
+@@ -2377,7 +2377,7 @@
+ }
+ 
+ current_coords = malloc (sizeof (FT_Fixed) * ft_mm_var->num_axis);
+-#ifdef HAVE_FT_GET_VAR_DESIGN_COORDINATES
++#if 0
+ ret = FT_Get_Var_Design_Coordinates (face, ft_mm_var->num_axis, 
current_coords);
+ if (ret == 0) {
+ for (i = 0; i < ft_mm_var->num_axis; i++) {
+--- a/cairo/test/font-variations.c 2020-09-24 10:36:01.592402635 +0200
 b/cairo/test/font-variations.c 2020-09-24 10:36:08.728493510 +0200
+@@ -117,7 +117,7 @@
+ return CAIRO_TEST_FAILURE;
+ }
+ 
+-#ifdef HAVE_FT_GET_VAR_DESIGN_COORDINATES
++#if 0
+ ret = FT_Get_Var_Design_Coordinates (ft_face, 20, coords);
+ if (ret != 0) {
+ cairo_test_log (ctx, "Failed to get coords");
___
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits


[Libreoffice-commits] core.git: external/cairo

2020-09-25 Thread Miklos Vajna (via logerrit)
 external/cairo/UnpackedTarball_cairo.mk  |1 +
 external/cairo/cairo/cairo.oldfreetype.patch |   11 +++
 2 files changed, 12 insertions(+)

New commits:
commit 7b0746a2760b62c504236d8ff44d6e150c59abe9
Author: Miklos Vajna 
AuthorDate: Wed Sep 23 13:48:11 2020 +0200
Commit: Miklos Vajna 
CommitDate: Fri Sep 25 13:13:46 2020 +0200

tdf#136980 cairo: avoid linking to freetype-2.8 symbols

This is meant to help producing binaries on CentOS 7 which run on Ubuntu
16.04, when using internal cairo.

Change-Id: Ie4cd3fe707225a951ec8a5fb49a755064701dcfa
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/103378
Reviewed-by: Miklos Vajna 
Tested-by: Jenkins

diff --git a/external/cairo/UnpackedTarball_cairo.mk 
b/external/cairo/UnpackedTarball_cairo.mk
index 8e45e9c28c1d..75e3d58e7dee 100644
--- a/external/cairo/UnpackedTarball_cairo.mk
+++ b/external/cairo/UnpackedTarball_cairo.mk
@@ -14,6 +14,7 @@ $(eval $(call 
gb_UnpackedTarball_set_tarball,cairo,$(CAIRO_TARBALL),,cairo))
 $(eval $(call gb_UnpackedTarball_add_patches,cairo,\
external/cairo/cairo/cairo-1.10.2.patch \
external/cairo/cairo/cairo-libtool-rpath.patch.1 \
+   external/cairo/cairo/cairo.oldfreetype.patch \
 ))
 
 ifeq ($(OS),iOS)
diff --git a/external/cairo/cairo/cairo.oldfreetype.patch 
b/external/cairo/cairo/cairo.oldfreetype.patch
new file mode 100644
index ..2ccc1908fa22
--- /dev/null
+++ b/external/cairo/cairo/cairo.oldfreetype.patch
@@ -0,0 +1,11 @@
+--- a/cairo/src/cairo-ft-font.c2020-09-23 15:27:09.114619562 +0200
 b/cairo/src/cairo-ft-font.c2020-09-23 15:27:22.602808705 +0200
+@@ -2838,7 +2838,7 @@
+   goto cleanup;
+   }
+ 
+-#if FREETYPE_MAJOR > 2 || ( FREETYPE_MAJOR == 2 &&  FREETYPE_MINOR >= 8)
++#if 0
+   /* If FT_Get_Var_Blend_Coordinates() is available, we can check if the
+* current design coordinates are the default coordinates. In this case
+* the current outlines match the font tables.
___
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits


[Libreoffice-commits] core.git: external/cairo

2019-09-05 Thread Michael Stahl (via logerrit)
 external/cairo/ExternalProject_cairo.mk  |5 -
 external/cairo/UnpackedTarball_cairo.mk  |1 +
 external/cairo/cairo/cairo-libtool-rpath.patch.1 |   12 
 3 files changed, 17 insertions(+), 1 deletion(-)

New commits:
commit bb9c07b82f4921941112de7e545af13a24b37f5d
Author: Michael Stahl 
AuthorDate: Wed Sep 4 17:57:40 2019 +0200
Commit: Michael Stahl 
CommitDate: Thu Sep 5 10:27:55 2019 +0200

tdf#121983 cairo: fix RPATH to contain $ORIGIN, not libtool's nonsense

Also transmit $(verbose) to the build so it's debuggable.

Change-Id: I8620fdcae2fcd34807b6b83b7c38aa5ca1ba2caa
Reviewed-on: https://gerrit.libreoffice.org/78596
Tested-by: Jenkins
Reviewed-by: Michael Stahl 

diff --git a/external/cairo/ExternalProject_cairo.mk 
b/external/cairo/ExternalProject_cairo.mk
index da3e59d145a8..3dac98fc4362 100644
--- a/external/cairo/ExternalProject_cairo.mk
+++ b/external/cairo/ExternalProject_cairo.mk
@@ -49,11 +49,14 @@ $(call gb_ExternalProject_get_state_target,cairo,build) :
LIBS="$(ZLIB_LIBS)" \
$(if $(filter -fsanitize=%,$(LDFLAGS)),LDFLAGS="$(LDFLAGS) 
-fuse-ld=bfd") \
pixman_CFLAGS="-I$(call 
gb_UnpackedTarball_get_dir,pixman)/pixman" \
-   pixman_LIBS="-L$(call 
gb_UnpackedTarball_get_dir,pixman)/pixman/.libs -lpixman-1" \
+   pixman_LIBS="-L$(call 
gb_UnpackedTarball_get_dir,pixman)/pixman/.libs -lpixman-1 \
+   $(if $(filter LINUX,$(OS)),-Wl$(COMMA)-z$(COMMA)origin \
+   
-Wl$(COMMA)-rpath$(COMMA)\\\$$\$$ORIGIN)" \
png_REQUIRES="trick_configure_into_using_png_CFLAGS_and_LIBS" \
png_CFLAGS="$(LIBPNG_CFLAGS)" png_LIBS="$(LIBPNG_LIBS)" \
$(if $(SYSTEM_FREETYPE),,FREETYPE_CFLAGS="-I$(call 
gb_UnpackedTarball_get_dir,freetype)/include") \
$(if $(SYSTEM_FONTCONFIG),,FONTCONFIG_CFLAGS="-I$(call 
gb_UnpackedTarball_get_dir,fontconfig)") \
+   $(if $(verbose),--disable-silent-rules,--enable-silent-rules) \
$(if $(filter TRUE,$(DISABLE_DYNLOADING)),--disable-shared,$(if 
$(filter ANDROID,$(OS)),--disable-shared,--disable-static)) \
$(if $(filter ANDROID iOS,$(OS)),--disable-xlib 
--disable-xcb,$(if $(filter TRUE,$(DISABLE_GUI)),--disable-xlib 
--disable-xcb,--enable-xlib --enable-xcb)) \
$(if $(filter iOS,$(OS)),--enable-quartz --enable-quartz-font) \
diff --git a/external/cairo/UnpackedTarball_cairo.mk 
b/external/cairo/UnpackedTarball_cairo.mk
index 895950a58301..9cd795fc4a0b 100644
--- a/external/cairo/UnpackedTarball_cairo.mk
+++ b/external/cairo/UnpackedTarball_cairo.mk
@@ -13,6 +13,7 @@ $(eval $(call 
gb_UnpackedTarball_set_tarball,cairo,$(CAIRO_TARBALL),,cairo))
 
 $(eval $(call gb_UnpackedTarball_add_patches,cairo,\
external/cairo/cairo/cairo-1.10.2.patch \
+   external/cairo/cairo/cairo-libtool-rpath.patch.1 \
 ))
 
 ifeq ($(OS),iOS)
diff --git a/external/cairo/cairo/cairo-libtool-rpath.patch.1 
b/external/cairo/cairo/cairo-libtool-rpath.patch.1
new file mode 100644
index ..dffa25414f61
--- /dev/null
+++ b/external/cairo/cairo/cairo-libtool-rpath.patch.1
@@ -0,0 +1,12 @@
+Prevent libtool from adding annoying stuff to RPATH
+
+--- cairo/configure.orig   2018-10-19 22:20:08.0 +0200
 cairo/configure2019-09-04 17:53:00.927539686 +0200
+@@ -16592,6 +16592,7 @@
+   esac
+   ;;
+   esac
++hardcode_libdir_flag_spec=
+   ;;
+ 
+   lynxos*)
___
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits

[Libreoffice-commits] core.git: external/cairo

2019-03-25 Thread Caolán McNamara (via logerrit)
 external/cairo/ExternalProject_cairo.mk |1 +
 1 file changed, 1 insertion(+)

New commits:
commit c0cc6c39617bd6ea70e96d9a72a2f36deb5ad3c5
Author: Caolán McNamara 
AuthorDate: Mon Mar 25 11:45:37 2019 +
Commit: Caolán McNamara 
CommitDate: Mon Mar 25 22:13:03 2019 +0100

cairo configure fails with gold linker with sanitizers enabled

Change-Id: I1afbe64fdd8847b0a826be58ee81f218308a0ef5
Reviewed-on: https://gerrit.libreoffice.org/69661
Tested-by: Jenkins
Reviewed-by: Caolán McNamara 
Tested-by: Caolán McNamara 

diff --git a/external/cairo/ExternalProject_cairo.mk 
b/external/cairo/ExternalProject_cairo.mk
index 6ce6993408cd..da3e59d145a8 100644
--- a/external/cairo/ExternalProject_cairo.mk
+++ b/external/cairo/ExternalProject_cairo.mk
@@ -47,6 +47,7 @@ $(call gb_ExternalProject_get_state_target,cairo,build) :
$(if $(filter-out ANDROID iOS,$(OS)),CFLAGS="$(if $(debug),-g) 
$(ZLIB_CFLAGS)" ) \
$(if $(filter ANDROID iOS,$(OS)),PKG_CONFIG=./dummy_pkg_config) 
\
LIBS="$(ZLIB_LIBS)" \
+   $(if $(filter -fsanitize=%,$(LDFLAGS)),LDFLAGS="$(LDFLAGS) 
-fuse-ld=bfd") \
pixman_CFLAGS="-I$(call 
gb_UnpackedTarball_get_dir,pixman)/pixman" \
pixman_LIBS="-L$(call 
gb_UnpackedTarball_get_dir,pixman)/pixman/.libs -lpixman-1" \
png_REQUIRES="trick_configure_into_using_png_CFLAGS_and_LIBS" \
___
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits

[Libreoffice-commits] core.git: external/cairo

2018-08-27 Thread Libreoffice Gerrit user
 external/cairo/ExternalPackage_cairo.mk |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit 30020423bd76c6770db1627cfec684708ab3427c
Author: Caolán McNamara 
AuthorDate: Mon Aug 27 16:08:49 2018 +0100
Commit: Caolán McNamara 
CommitDate: Mon Aug 27 22:02:49 2018 +0200

fix own-cairo edge case build

Change-Id: I787c5e5a53f93b3a3bb511fe0bbd107ef7963ec7
Reviewed-on: https://gerrit.libreoffice.org/59663
Tested-by: Jenkins
Reviewed-by: Caolán McNamara 
Tested-by: Caolán McNamara 

diff --git a/external/cairo/ExternalPackage_cairo.mk 
b/external/cairo/ExternalPackage_cairo.mk
index 1d99cb4f4682..154c84919a03 100644
--- a/external/cairo/ExternalPackage_cairo.mk
+++ b/external/cairo/ExternalPackage_cairo.mk
@@ -14,7 +14,7 @@ $(eval $(call 
gb_ExternalPackage_use_external_project,cairo,cairo))
 ifneq ($(DISABLE_DYNLOADING),TRUE)
 ifneq ($(OS),ANDROID)
 
-$(eval $(call 
gb_ExternalPackage_add_file,cairo,$(LIBO_LIB_FOLDER)/libcairo.so.2,src/.libs/libcairo.so.2.115.$(CAIRO_VERSION_MICRO).0))
+$(eval $(call 
gb_ExternalPackage_add_file,cairo,$(LIBO_LIB_FOLDER)/libcairo.so.2,src/.libs/libcairo.so.2.115$(CAIRO_VERSION_MICRO).0))
 
 endif
 endif
___
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits


[Libreoffice-commits] core.git: external/cairo

2018-01-29 Thread Christian Lohmaier
 external/cairo/cairo/cairo.GL_RGBA.patch |8 +++-
 1 file changed, 7 insertions(+), 1 deletion(-)

New commits:
commit 6a67833ee90f3c0c86106847eb8b1879c25f852c
Author: Christian Lohmaier 
Date:   Mon Jan 29 18:23:56 2018 +0100

fix android red and blue channel swap on jpegs w/ 24bit RGB surface

that was introduced with 54596087e57ea533253e19eea594d9b6c06e8d26
without adjusting for Android accordingly

Change-Id: Ie6a2001ab13ecec959da9b57bb49e1bac76e8691

diff --git a/external/cairo/cairo/cairo.GL_RGBA.patch 
b/external/cairo/cairo/cairo.GL_RGBA.patch
index be5a96389e67..5f50dd13ffa9 100644
--- a/external/cairo/cairo/cairo.GL_RGBA.patch
+++ b/external/cairo/cairo/cairo.GL_RGBA.patch
@@ -32,7 +32,13 @@
break;
  case CAIRO_FORMAT_RGB30:
ret = PIXMAN_x2r10g10b10;
-@@ -328,7 +328,7 @@
+@@ -323,12 +323,12 @@
+   ret = PIXMAN_r5g6b5;
+   break;
+   case CAIRO_FORMAT_RGB24_888:
+-  ret = PIXMAN_r8g8b8;
++  ret = PIXMAN_b8g8r8; // tweaked
+   break;
  case CAIRO_FORMAT_ARGB32:
  case CAIRO_FORMAT_INVALID:
  default:
___
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits


[Libreoffice-commits] core.git: external/cairo

2017-12-30 Thread Caolán McNamara
 external/cairo/cairo/cairo.GL_RGBA.patch |   12 ++--
 1 file changed, 6 insertions(+), 6 deletions(-)

New commits:
commit 13763bda39bb267382c4824eb29e9575d6a4b811
Author: Caolán McNamara 
Date:   Sat Dec 30 14:11:12 2017 +

update android rgba cairo patch to apply again

Change-Id: Iaee918439f8472bab7fab2cf545ac2e420d614ab

diff --git a/external/cairo/cairo/cairo.GL_RGBA.patch 
b/external/cairo/cairo/cairo.GL_RGBA.patch
index 15850d244166..be5a96389e67 100644
--- a/external/cairo/cairo/cairo.GL_RGBA.patch
+++ b/external/cairo/cairo/cairo.GL_RGBA.patch
@@ -1,6 +1,6 @@
 --- misc/cairo-1.10.2/src/cairo-image-surface.c
 +++ misc/cairo-1.10.2/src/cairo-image-surface.c
-@@ -99,11 +99,11 @@
+@@ -92,11 +92,11 @@
  _cairo_format_from_pixman_format (pixman_format_code_t pixman_format)
  {
  switch (pixman_format) {
@@ -14,16 +14,16 @@
return CAIRO_FORMAT_RGB24;
  case PIXMAN_a8:
return CAIRO_FORMAT_A8;
-@@ -109,7 +109,7 @@
+@@ -112,7 +112,7 @@
  #if PIXMAN_VERSION >= PIXMAN_VERSION_ENCODE(0,27,2)
  case PIXMAN_a8r8g8b8_sRGB:
  #endif
--case PIXMAN_a8b8g8r8: case PIXMAN_x8b8g8r8: case PIXMAN_r8g8b8:
-+case PIXMAN_a8r8g8b8: case PIXMAN_x8r8g8b8: case PIXMAN_r8g8b8: //tweaked
+-  case PIXMAN_a8b8g8r8: case PIXMAN_x8b8g8r8:
++case PIXMAN_a8r8g8b8: case PIXMAN_x8r8g8b8: //tweaked
  case PIXMAN_b8g8r8:   case PIXMAN_b5g6r5:
  case PIXMAN_a1r5g5b5: case PIXMAN_x1r5g5b5: case PIXMAN_a1b5g5r5:
  case PIXMAN_x1b5g5r5: case PIXMAN_a4r4g4b4: case PIXMAN_x4r4g4b4:
-@@ -297,7 +297,7 @@
+@@ -314,7 +314,7 @@
ret = PIXMAN_a8;
break;
  case CAIRO_FORMAT_RGB24:
@@ -32,7 +32,7 @@
break;
  case CAIRO_FORMAT_RGB30:
ret = PIXMAN_x2r10g10b10;
-@@ -305,7 +305,7 @@
+@@ -328,7 +328,7 @@
  case CAIRO_FORMAT_ARGB32:
  case CAIRO_FORMAT_INVALID:
  default:
___
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits


[Libreoffice-commits] core.git: external/cairo vcl/headless

2017-12-26 Thread Ashod Nakashian
 external/cairo/cairo/cairo-1.10.2.patch |  137 
 vcl/headless/svpgdi.cxx |   25 -
 2 files changed, 143 insertions(+), 19 deletions(-)

New commits:
commit 54596087e57ea533253e19eea594d9b6c06e8d26
Author: Ashod Nakashian 
Date:   Sat Dec 9 16:28:42 2017 -0500

vcl-svp: add 24-bit (3-byte) RGB surface support to Cairo

(cherry picked from commit e8ba02b1d56dc7b59a4f0a7373995b28653a0597)
Reviewed-on: https://gerrit.libreoffice.org/46681
Reviewed-by: Jan Holesovsky 
Tested-by: Jan Holesovsky 
(cherry picked from commit 31c044e2501b9d4a0917e4e09133660bbe2a24dc)

Change-Id: I7707219eae4c2d6d40c8dc957207b63d3049a75f
Reviewed-on: https://gerrit.libreoffice.org/47010
Tested-by: Jenkins 
Reviewed-by: Ashod Nakashian 

diff --git a/external/cairo/cairo/cairo-1.10.2.patch 
b/external/cairo/cairo/cairo-1.10.2.patch
index d564d53ab9e0..f50501926faa 100644
--- a/external/cairo/cairo/cairo-1.10.2.patch
+++ b/external/cairo/cairo/cairo-1.10.2.patch
@@ -1,5 +1,6 @@
 misc/cairo-1.10.2/build/Makefile.win32.features2010-08-18 
09:47:30.0 +0200
-+++ misc/build/cairo-1.10.2/build/Makefile.win32.features  2011-12-20 
09:57:06.428170146 +0100
+diff -ruNw misc/cairo-1.10.2/build/Makefile.win32.features 
misc/build/cairo-1.10.2/build/Makefile.win32.features
+--- misc/cairo-1.10.2/build/Makefile.win32.features2015-10-27 
17:04:21.0 -0400
 misc/build/cairo-1.10.2/build/Makefile.win32.features  2017-11-24 
21:43:14.103524768 -0500
 @@ -30,7 +30,7 @@
  CAIRO_HAS_FC_FONT=0
  CAIRO_HAS_PS_SURFACE=1
@@ -9,9 +10,10 @@
  CAIRO_HAS_TEST_SURFACES=0
  CAIRO_HAS_TEE_SURFACE=0
  CAIRO_HAS_XML_SURFACE=0
 misc/cairo-1.10.2/configure2010-12-25 15:22:57.0 +0100
-+++ misc/build/cairo-1.10.2/configure  2010-12-25 15:22:57.0 +0100
-@@ -19259,59 +19259,10 @@
+diff -ruNw misc/cairo-1.10.2/configure misc/build/cairo-1.10.2/configure
+--- misc/cairo-1.10.2/configure2015-12-09 15:41:45.0 -0500
 misc/build/cairo-1.10.2/configure  2017-11-24 21:43:14.103524768 -0500
+@@ -20580,61 +20580,12 @@
  rm -f confcache
  
  
@@ -58,8 +60,8 @@
  have_libz=yes
  
  $as_echo "#define HAVE_ZLIB 1" >>confdefs.h
--
--
+ 
+ 
 -else
 -  have_libz="no (requires zlib http://www.gzip.org/zlib/)"
 -fi
@@ -68,10 +70,12 @@
 -else
 -  have_libz="no (requires zlib http://www.gzip.org/zlib/)"
 -fi
- 
- 
+-
+-
  save_LIBS="$LIBS"
-@@ -29424,7 +29424,7 @@
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for lzo2a_decompress in 
-llzo2" >&5
+ $as_echo_n "checking for lzo2a_decompress in -llzo2... " >&6; }
+@@ -30069,7 +30020,7 @@
  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $FREETYPE_VERSION - OK" 
>&5
  $as_echo "$FREETYPE_VERSION - OK" >&6; }
   ft_NONPKGCONFIG_CFLAGS=`$FREETYPE_CONFIG --cflags`
@@ -80,7 +84,7 @@
  else { $as_echo "$as_me:${as_lineno-$LINENO}: result: $FREETYPE_VERSION - 
Too old" >&5
  $as_echo "$FREETYPE_VERSION - Too old" >&6; }
   use_ft="no ($FREETYPE_VERSION found; version 
$FREETYPE_MIN_VERSION from release $FREETYPE_MIN_RELEASE required)"
-@@ -29434,7 +29434,7 @@
+@@ -30079,7 +30030,7 @@
  fi
  
ft_CFLAGS="$FREETYPE_CFLAGS"
@@ -89,7 +93,7 @@
  
  
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether 
cairo's FreeType font backend feature could be enabled" >&5
-@@ -30121,7 +30121,7 @@
+@@ -30686,7 +30637,7 @@
  
  # The ps backend requires zlib.
  use_ps=$have_libz
@@ -98,7 +102,7 @@
  
  
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether 
cairo's PostScript surface backend feature could be enabled" >&5
-@@ -30549,7 +30549,7 @@
+@@ -31082,7 +31033,7 @@
  
  # The pdf backend requires zlib.
  use_pdf=$have_libz
@@ -107,7 +111,7 @@
  
  
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether 
cairo's PDF surface backend feature could be enabled" >&5
-@@ -32296,7 +32296,7 @@
+@@ -32973,7 +32924,7 @@
  
  
  use_xml=$have_libz
@@ -116,4 +120,107 @@
  
  
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether 
cairo's xml surface backend feature could be enabled" >&5
-$as_echo_n "checking whether cairo's xml surface backend feature could be 
enabled... " >&6; }
+diff -ruNw misc/cairo-1.10.2/src/cairo.h misc/build/cairo-1.10.2/src/cairo.h
+--- misc/cairo-1.10.2/src/cairo.h  2015-10-27 17:04:21.0 -0400
 misc/build/cairo-1.10.2/src/cairo.h2017-12-17 12:09:59.880406411 
-0500
+@@ -397,6 +397,8 @@
+  *   with red in the upper 5 bits, then green in the middle
+  *   6 bits, and blue in the lower 5 bits. (Since 1.2)
+  * @CAIRO_FORMAT_RGB30: like RGB24 but with 10bpc. (Since 1.12)
++ * @CAIRO_FORMAT_RGB24_888: each pixel is a 24-bit quantity,
++ *   with Red, Green, 

[Libreoffice-commits] core.git: external/cairo

2017-12-23 Thread Ashod Nakashian
 external/cairo/pixman/pixman-0.24.4.patch |   72 +-
 1 file changed, 71 insertions(+), 1 deletion(-)

New commits:
commit c8176326324aef63ddc29eafd1193f2abba80c92
Author: Ashod Nakashian 
Date:   Sat Nov 25 13:44:21 2017 -0500

pixman: drop cached glyphs above size watermark

The glyphs cache only tracked the number of glyphs
in the cache, which isn't very useful when the
glyphs vary in size from a few bytes to dozens of
megabytes. In terms of memory footprint, we are
interested not just in the number of cached glyphs,
but also in the total memory usage.

We now track the pixel-size of each glyph and drop
as many as necessary to fall below the set threshold
which is currently 4 MBs.

There was no performance loss observed after this patch
on a diverse set of documents of all types (if anything,
a very modest performance win was hinted in some cases),
with significant memory reduction in some cases where
dozens of megabytes were previously left stale in the cache.

Change-Id: I377a4c1e59611fca6bf253dd9fa90f75b5295d4b
Reviewed-on: https://gerrit.libreoffice.org/45378
Reviewed-by: Ashod Nakashian 
Tested-by: Ashod Nakashian 
(cherry picked from commit 407660a08c8df27d7cd44435eefa31bd92364a3c)
(cherry picked from commit ded39dc17a34127a872b11abddc325aae047)
Reviewed-on: https://gerrit.libreoffice.org/46987
Tested-by: Jenkins 

diff --git a/external/cairo/pixman/pixman-0.24.4.patch 
b/external/cairo/pixman/pixman-0.24.4.patch
index 520f2ba572d4..6d871e37bfd1 100644
--- a/external/cairo/pixman/pixman-0.24.4.patch
+++ b/external/cairo/pixman/pixman-0.24.4.patch
@@ -18,4 +18,74 @@
 +#include 
  
  #include "pixman-private.h"
- 
+
+--- misc/pixman-0.24.4/pixman/pixman-glyph.c   2015-06-30 05:48:31.0 
-0400
 misc/build/pixman-0.24.4/pixman/pixman-glyph.c 2017-11-25 
13:26:33.075558418 -0500
+@@ -38,6 +38,7 @@
+
+ /* XXX: These numbers are arbitrary---we've never done any measurements.
+  */
++#define N_PIXELS_HIGH_WATER  (4 * 1024 * 1024)
+ #define N_GLYPHS_HIGH_WATER  (16384)
+ #define N_GLYPHS_LOW_WATER   (8192)
+ #define HASH_SIZE (2 * N_GLYPHS_HIGH_WATER)
+@@ -58,6 +59,7 @@
+ int   n_glyphs;
+ int   n_tombstones;
+ int   freeze_count;
++longn_pixels;
+ pixman_list_t mru;
+ glyph_t * glyphs[HASH_SIZE];
+ };
+@@ -133,6 +135,7 @@
+ if (*loc == TOMBSTONE)
+   cache->n_tombstones--;
+ cache->n_glyphs++;
++cache->n_pixels += glyph->image->bits.width * glyph->image->bits.height;
+
+ *loc = glyph;
+ }
+@@ -150,6 +153,7 @@
+ cache->glyphs[idx & HASH_MASK] = TOMBSTONE;
+ cache->n_tombstones++;
+ cache->n_glyphs--;
++cache->n_pixels -= glyph->image->bits.width * glyph->image->bits.height;
+
+ /* Eliminate tombstones if possible */
+ if (cache->glyphs[(idx + 1) & HASH_MASK] == NULL)
+@@ -180,6 +184,7 @@
+
+ cache->n_glyphs = 0;
+ cache->n_tombstones = 0;
++cache->n_pixels = 0;
+ }
+
+ PIXMAN_EXPORT pixman_glyph_cache_t *
+@@ -194,6 +199,7 @@
+ cache->n_glyphs = 0;
+ cache->n_tombstones = 0;
+ cache->freeze_count = 0;
++cache->n_pixels = 0;
+
+ pixman_list_init (>mru);
+
+@@ -220,9 +226,9 @@
+ pixman_glyph_cache_thaw (pixman_glyph_cache_t  *cache)
+ {
+ if (--cache->freeze_count == 0&&
+-  cache->n_glyphs + cache->n_tombstones > N_GLYPHS_HIGH_WATER)
++  (cache->n_glyphs + cache->n_tombstones > N_GLYPHS_HIGH_WATER || 
cache->n_pixels > N_PIXELS_HIGH_WATER))
+ {
+-  if (cache->n_tombstones > N_GLYPHS_HIGH_WATER)
++  if (cache->n_tombstones > N_GLYPHS_LOW_WATER)
+   {
+   /* More than half the entries are
+* tombstones. Just dump the whole table.
+@@ -230,7 +236,7 @@
+   clear_table (cache);
+   }
+
+-  while (cache->n_glyphs > N_GLYPHS_LOW_WATER)
++  while (cache->n_glyphs > N_GLYPHS_LOW_WATER || cache->n_pixels > 
N_PIXELS_HIGH_WATER)
+   {
+   glyph_t *glyph = CONTAINER_OF (glyph_t, mru_link, cache->mru.tail);
___
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits


[Libreoffice-commits] core.git: external/cairo

2017-11-24 Thread Caolán McNamara
 external/cairo/pixman/pixman-ubsan.patch |   11 +++
 1 file changed, 11 insertions(+)

New commits:
commit c79afbe1b0db8aa2d810c3fa57dac902d973807f
Author: Caolán McNamara 
Date:   Fri Nov 24 12:47:51 2017 +

ubsan: runtime error: left shift of 249 by 24 places

pixman-bits-image.c:309:20: runtime error: left shift of 249 by 24 places 
cannot be represented in type 'int'

Change-Id: I4f67752f7826225cd2175198084a29ac248b873f
Reviewed-on: https://gerrit.libreoffice.org/45226
Reviewed-by: Caolán McNamara 
Tested-by: Caolán McNamara 

diff --git a/external/cairo/pixman/pixman-ubsan.patch 
b/external/cairo/pixman/pixman-ubsan.patch
index a26933b2398d..583706ae1764 100644
--- a/external/cairo/pixman/pixman-ubsan.patch
+++ b/external/cairo/pixman/pixman-ubsan.patch
@@ -20,3 +20,14 @@
  
  next:
vx += ux;
+--- misc/pixman/pixman/pixman-bits-image.c
 misc/build/pixman/pixman/pixman-bits-image.c
+@@ -306,7 +306,7 @@
+ sgtot = CLIP (sgtot, 0, 0xff);
+ sbtot = CLIP (sbtot, 0, 0xff);
+ 
+-return ((satot << 24) | (srtot << 16) | (sgtot <<  8) | (sbtot));
++return (((uint32_t)satot << 24) | (srtot << 16) | (sgtot <<  8) | 
(sbtot));
+ }
+ 
+ static force_inline uint32_t
___
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits


[Libreoffice-commits] core.git: external/cairo

2017-11-24 Thread Caolán McNamara
 external/cairo/pixman/pixman-ubsan.patch |   11 +++
 1 file changed, 11 insertions(+)

New commits:
commit 20d4d543a5293abe69c91f407c3c69b04d6d9af6
Author: Caolán McNamara 
Date:   Fri Nov 24 12:21:45 2017 +

ubsan: runtime error: left shift of 255 by 24 places

pixman-fast-path.c:2839:21: runtime error: left shift of 255 by 24 places 
cannot be represented in type 'int'

Change-Id: I9afeee371aeef24bfc0c809b142b424c653fea2e
Reviewed-on: https://gerrit.libreoffice.org/45223
Reviewed-by: Caolán McNamara 
Tested-by: Caolán McNamara 

diff --git a/external/cairo/pixman/pixman-ubsan.patch 
b/external/cairo/pixman/pixman-ubsan.patch
index 339a26719947..a26933b2398d 100644
--- a/external/cairo/pixman/pixman-ubsan.patch
+++ b/external/cairo/pixman/pixman-ubsan.patch
@@ -9,3 +9,14 @@
  #define pixman_fixed_to_double(f) (double) ((f) / (double) pixman_fixed_1)
  #define pixman_double_to_fixed(d) ((pixman_fixed_t) ((d) * 65536.0))
  #define pixman_fixed_frac(f)  ((f) & pixman_fixed_1_minus_e)
+--- misc/pixman/pixman/pixman-fast-path.c
 misc/build/pixman/pixman/pixman-fast-path.c
+@@ -2836,7 +2836,7 @@
+   sgtot = CLIP (sgtot, 0, 0xff);
+   sbtot = CLIP (sbtot, 0, 0xff);
+ 
+-  buffer[k] = (satot << 24) | (srtot << 16) | (sgtot << 8) | (sbtot << 0);
++  buffer[k] = ((uint32_t)satot << 24) | (srtot << 16) | (sgtot << 8) | 
(sbtot << 0);
+ 
+ next:
+   vx += ux;
___
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits


[Libreoffice-commits] core.git: external/cairo

2017-11-24 Thread Caolán McNamara
 external/cairo/UnpackedTarball_pixman.mk |1 +
 external/cairo/pixman/pixman-ubsan.patch |   11 +++
 2 files changed, 12 insertions(+)

New commits:
commit 82c3483b2de5ce197e5a7f7ebaf37139518ea261
Author: Caolán McNamara 
Date:   Fri Nov 24 11:54:34 2017 +

ubsan: pixman.c:347:10: runtime error: left shift of negative value -1

with fdo64256-1.docx

Change-Id: I27dc510b1f178d535bc6b2dace34cdae1d9cd62a
Reviewed-on: https://gerrit.libreoffice.org/45222
Reviewed-by: Caolán McNamara 
Tested-by: Caolán McNamara 

diff --git a/external/cairo/UnpackedTarball_pixman.mk 
b/external/cairo/UnpackedTarball_pixman.mk
index 6669a8f8be66..cc3dbd11dcc0 100644
--- a/external/cairo/UnpackedTarball_pixman.mk
+++ b/external/cairo/UnpackedTarball_pixman.mk
@@ -14,6 +14,7 @@ $(eval $(call 
gb_UnpackedTarball_set_tarball,pixman,$(PIXMAN_TARBALL),,cairo))
 $(eval $(call gb_UnpackedTarball_add_patches,pixman,\
external/cairo/pixman/pixman-0.24.4.patch \
external/cairo/pixman/pixman-ofz4372.patch \
+   external/cairo/pixman/pixman-ubsan.patch \
 ))
 
 ifeq ($(OS),WNT)
diff --git a/external/cairo/pixman/pixman-ubsan.patch 
b/external/cairo/pixman/pixman-ubsan.patch
new file mode 100644
index ..339a26719947
--- /dev/null
+++ b/external/cairo/pixman/pixman-ubsan.patch
@@ -0,0 +1,11 @@
+--- misc/pixman/pixman/pixman.h
 misc/build/pixman/pixman/pixman.h
+@@ -127,7 +127,7 @@
+ #define pixman_fixed_1_minus_e(pixman_fixed_1 - 
pixman_fixed_e)
+ #define pixman_fixed_minus_1  (pixman_int_to_fixed(-1))
+ #define pixman_fixed_to_int(f)((int) ((f) >> 16))
+-#define pixman_int_to_fixed(i)((pixman_fixed_t) ((i) << 16))
++#define pixman_int_to_fixed(i)((pixman_fixed_t) ((i) * (1 << 
16)))
+ #define pixman_fixed_to_double(f) (double) ((f) / (double) pixman_fixed_1)
+ #define pixman_double_to_fixed(d) ((pixman_fixed_t) ((d) * 65536.0))
+ #define pixman_fixed_frac(f)  ((f) & pixman_fixed_1_minus_e)
___
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits


[Libreoffice-commits] core.git: external/cairo

2017-11-22 Thread Christian Lohmaier
 external/cairo/UnpackedTarball_cairo.mk |1 -
 external/cairo/cairo/cairo-1.10.2.android.patch |   24 
 2 files changed, 25 deletions(-)

New commits:
commit 54e1441949b83a76eecd02f2839693697773f711
Author: Christian Lohmaier 
Date:   Wed Nov 22 23:14:26 2017 +0100

cairo: drop no longer needed patch for android

Change-Id: I7f52cc8686556e21b9d2b5fdf43ce13307bcfac0

diff --git a/external/cairo/UnpackedTarball_cairo.mk 
b/external/cairo/UnpackedTarball_cairo.mk
index 503e762cb4f5..d38ba6bac2e2 100644
--- a/external/cairo/UnpackedTarball_cairo.mk
+++ b/external/cairo/UnpackedTarball_cairo.mk
@@ -24,7 +24,6 @@ endif
 
 ifeq ($(OS),ANDROID)
 $(eval $(call gb_UnpackedTarball_add_patches,cairo,\
-   external/cairo/cairo/cairo-1.10.2.android.patch \
external/cairo/cairo/cairo.GL_RGBA.patch \
 ))
 endif
diff --git a/external/cairo/cairo/cairo-1.10.2.android.patch 
b/external/cairo/cairo/cairo-1.10.2.android.patch
deleted file mode 100644
index 237a0d4c2372..
--- a/external/cairo/cairo/cairo-1.10.2.android.patch
+++ /dev/null
@@ -1,24 +0,0 @@
 misc/cairo-1.10.2/build/ltmain.sh
-+++ misc/build/cairo-1.10.2/build/ltmain.sh
-@@ -3228,6 +3228,10 @@
- func_warning "\`-release' is ignored for convenience libraries"
-   else
- 
-+  # Force no versioning suffix for Android
-+
-+  version_type=none
-+
-   # Parse the version information argument.
-   save_ifs="$IFS"; IFS=':'
-   set dummy $vinfo 0 0 0
-diff -ur cairo.org/src/cairo-compiler-private.h 
cairo/src/cairo-compiler-private.h
 a/cairo.org/src/cairo-compiler-private.h   2016-01-16 00:47:17.392420675 
+0100
-+++ b/cairo/src/cairo-compiler-private.h   2016-01-16 00:51:55.601110129 
+0100
-@@ -258,4 +258,7 @@
- #define inline __inline__
- #endif
- 
-+/* no ffs in libc on android x86 (at least not in v15 that we compile 
against) */
-+#define ffs __builtin_ffs
-+
- #endif
___
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits


[Libreoffice-commits] core.git: external/cairo

2017-11-22 Thread Caolán McNamara
 external/cairo/UnpackedTarball_pixman.mk   |1 +
 external/cairo/pixman/pixman-ofz4372.patch |   16 
 2 files changed, 17 insertions(+)

New commits:
commit 67304b83a7933a75ed24dd41a311d0250f15a203
Author: Caolán McNamara 
Date:   Wed Nov 22 10:37:20 2017 +

ofz#4372 Undefined-shift

upstreamed as https://bugs.freedesktop.org/show_bug.cgi?id=103845

Change-Id: I48430b2ab62991345863bceeaf3a6918f9dd1fda
Reviewed-on: https://gerrit.libreoffice.org/45078
Reviewed-by: Caolán McNamara 
Tested-by: Caolán McNamara 

diff --git a/external/cairo/UnpackedTarball_pixman.mk 
b/external/cairo/UnpackedTarball_pixman.mk
index 777a47cc30fd..6669a8f8be66 100644
--- a/external/cairo/UnpackedTarball_pixman.mk
+++ b/external/cairo/UnpackedTarball_pixman.mk
@@ -13,6 +13,7 @@ $(eval $(call 
gb_UnpackedTarball_set_tarball,pixman,$(PIXMAN_TARBALL),,cairo))
 
 $(eval $(call gb_UnpackedTarball_add_patches,pixman,\
external/cairo/pixman/pixman-0.24.4.patch \
+   external/cairo/pixman/pixman-ofz4372.patch \
 ))
 
 ifeq ($(OS),WNT)
diff --git a/external/cairo/pixman/pixman-ofz4372.patch 
b/external/cairo/pixman/pixman-ofz4372.patch
new file mode 100644
index ..aaf83f11d414
--- /dev/null
+++ b/external/cairo/pixman/pixman-ofz4372.patch
@@ -0,0 +1,16 @@
+--- misc/pixman/pixman/pixman-solid-fill.c
 misc/build/pixman/pixman/pixman-solid-fill.c
+@@ -30,10 +30,10 @@ static uint32_t
+ color_to_uint32 (const pixman_color_t *color)
+ {
+ return
+-(color->alpha >> 8 << 24) |
+-(color->red >> 8 << 16) |
++((uint32_t)color->alpha >> 8 << 24) |
++((uint32_t)color->red >> 8 << 16) |
+ (color->green & 0xff00) |
+-(color->blue >> 8);
++((uint32_t)color->blue >> 8);
+ }
+ 
+ static argb_t
___
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits


[Libreoffice-commits] core.git: external/cairo

2017-09-08 Thread Stephan Bergmann
 external/cairo/ExternalProject_cairo.mk |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit b02b3bcf4465c9ccb3edcaa26e090db0581cba9e
Author: Stephan Bergmann 
Date:   Fri Sep 8 08:53:52 2017 +0200

ZLIB_LIBS must be passed into external/cairo as LIBS, not LDFLAGS

Change-Id: I76bd966d6932b3b3210d04137f18f928276ce631

diff --git a/external/cairo/ExternalProject_cairo.mk 
b/external/cairo/ExternalProject_cairo.mk
index 4938694151de..5acd6f349aee 100644
--- a/external/cairo/ExternalProject_cairo.mk
+++ b/external/cairo/ExternalProject_cairo.mk
@@ -46,7 +46,7 @@ $(call gb_ExternalProject_get_state_target,cairo,build) :
$(if $(filter ANDROID IOS,$(OS)),CFLAGS="$(if $(debug),-g) 
$(ZLIB_CFLAGS) $(gb_VISIBILITY_FLAGS)") \
$(if $(filter-out ANDROID IOS,$(OS)),CFLAGS="$(if $(debug),-g) 
$(ZLIB_CFLAGS)" ) \
$(if $(filter ANDROID IOS,$(OS)),PKG_CONFIG=./dummy_pkg_config) 
\
-   LDFLAGS="$(ZLIB_LIBS)" \
+   LIBS="$(ZLIB_LIBS)" \
pixman_CFLAGS="-I$(call 
gb_UnpackedTarball_get_dir,pixman)/pixman" \
pixman_LIBS="-L$(call 
gb_UnpackedTarball_get_dir,pixman)/pixman/.libs -lpixman-1" \
png_REQUIRES="trick_configure_into_using_png_CFLAGS_and_LIBS" \
___
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits


[Libreoffice-commits] core.git: external/cairo

2017-02-04 Thread Caolán McNamara
 external/cairo/ExternalProject_cairo.mk |1 +
 1 file changed, 1 insertion(+)

New commits:
commit dbc6d0e070b48fd377640e6554df895be19c2cea
Author: Caolán McNamara 
Date:   Sat Feb 4 16:51:47 2017 +

add freeype to cairo's use externals

Change-Id: I408c48ce0b28534b232b5d401ed13f7af76ed2ed
Reviewed-on: https://gerrit.libreoffice.org/33915
Reviewed-by: Caolán McNamara 
Tested-by: Caolán McNamara 

diff --git a/external/cairo/ExternalProject_cairo.mk 
b/external/cairo/ExternalProject_cairo.mk
index 4f9c503..55434fc 100644
--- a/external/cairo/ExternalProject_cairo.mk
+++ b/external/cairo/ExternalProject_cairo.mk
@@ -12,6 +12,7 @@ $(eval $(call gb_ExternalProject_ExternalProject,cairo))
 $(eval $(call gb_ExternalProject_use_external_project,cairo,pixman))
 
 $(eval $(call gb_ExternalProject_use_externals,cairo,\
+   freetype \
png \
zlib \
 ))
___
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits


[Libreoffice-commits] core.git: external/cairo

2016-12-20 Thread Caolán McNamara
 external/cairo/ExternalPackage_cairo.mk  |2 ++
 external/cairo/ExternalPackage_pixman.mk |2 ++
 external/cairo/ExternalProject_cairo.mk  |2 +-
 external/cairo/ExternalProject_pixman.mk |2 +-
 4 files changed, 6 insertions(+), 2 deletions(-)

New commits:
commit d09acc4db55071c1de95d666b4edc5a63bc1f7f3
Author: Caolán McNamara 
Date:   Tue Dec 20 10:00:16 2016 +

enable building cairo statically with DISABLE_DYNLOADING

Change-Id: I45cfb14be3a92754c698fd553605b3a252a53e53
Reviewed-on: https://gerrit.libreoffice.org/32221
Tested-by: Jenkins 
Reviewed-by: Caolán McNamara 
Tested-by: Caolán McNamara 

diff --git a/external/cairo/ExternalPackage_cairo.mk 
b/external/cairo/ExternalPackage_cairo.mk
index b168697..e9cd1e8 100644
--- a/external/cairo/ExternalPackage_cairo.mk
+++ b/external/cairo/ExternalPackage_cairo.mk
@@ -11,10 +11,12 @@ $(eval $(call 
gb_ExternalPackage_ExternalPackage,cairo,cairo))
 
 $(eval $(call gb_ExternalPackage_use_external_project,cairo,cairo))
 
+ifneq ($(DISABLE_DYNLOADING),TRUE)
 ifneq ($(OS),ANDROID)
 
 $(eval $(call 
gb_ExternalPackage_add_file,cairo,$(LIBO_LIB_FOLDER)/libcairo.so.2,src/.libs/libcairo.so.2.11400.6))
 
 endif
+endif
 
 # vim: set noet sw=4 ts=4:
diff --git a/external/cairo/ExternalPackage_pixman.mk 
b/external/cairo/ExternalPackage_pixman.mk
index f101f6a..288a970 100644
--- a/external/cairo/ExternalPackage_pixman.mk
+++ b/external/cairo/ExternalPackage_pixman.mk
@@ -11,11 +11,13 @@ $(eval $(call 
gb_ExternalPackage_ExternalPackage,pixman,pixman))
 
 $(eval $(call gb_ExternalPackage_use_external_project,pixman,pixman))
 
+ifneq ($(DISABLE_DYNLOADING),TRUE)
 ifneq ($(OS),ANDROID)
 
 $(eval $(call 
gb_ExternalPackage_add_file,pixman,$(LIBO_LIB_FOLDER)/libpixman-1.so.0,pixman/.libs/libpixman-1.so.0.34.0))
 
 endif
+endif
 
 
 # vim: set noet sw=4 ts=4:
diff --git a/external/cairo/ExternalProject_cairo.mk 
b/external/cairo/ExternalProject_cairo.mk
index edf3071..4f9c503 100644
--- a/external/cairo/ExternalProject_cairo.mk
+++ b/external/cairo/ExternalProject_cairo.mk
@@ -52,7 +52,7 @@ $(call gb_ExternalProject_get_state_target,cairo,build) :
png_CFLAGS="$(LIBPNG_CFLAGS)" png_LIBS="$(LIBPNG_LIBS)" \
$(if $(SYSTEM_FREETYPE),,FREETYPE_CFLAGS="-I$(call 
gb_UnpackedTarball_get_dir,freetype)/include") \
$(if $(SYSTEM_FONTCONFIG),,FONTCONFIG_CFLAGS="-I$(call 
gb_UnpackedTarball_get_dir,fontconfig)") \
-   $(if $(filter ANDROID 
IOS,$(OS)),--disable-shared,--disable-static) \
+   $(if $(filter TRUE,$(DISABLE_DYNLOADING)),--disable-shared,$(if 
$(filter ANDROID,$(OS)),--disable-shared,--disable-static)) \
$(if $(filter ANDROID IOS,$(OS)),--disable-xlib 
--disable-xcb,$(if $(filter TRUE,$(ENABLE_HEADLESS)),--disable-xlib 
--disable-xcb,--enable-xlib --enable-xcb)) \
$(if $(filter IOS,$(OS)),--enable-quartz --enable-quartz-font) \
--disable-valgrind \
diff --git a/external/cairo/ExternalProject_pixman.mk 
b/external/cairo/ExternalProject_pixman.mk
index 083b0b6..33a4b8d 100644
--- a/external/cairo/ExternalProject_pixman.mk
+++ b/external/cairo/ExternalProject_pixman.mk
@@ -32,7 +32,7 @@ else
 $(call gb_ExternalProject_get_state_target,pixman,build) :
$(call gb_ExternalProject_run,build,\
./configure \
-   $(if $(filter MACOSX IOS 
ANDROID,$(OS)),--disable-shared,--disable-static) \
+   $(if $(filter TRUE,$(DISABLE_DYNLOADING)),--disable-shared,$(if 
$(filter ANDROID,$(OS)),--disable-shared,--disable-static)) \
$(if $(filter ANDROID,$(OS)),--disable-arm-simd 
--disable-arm-neon --disable-arm-iwmmxt) \
$(if $(CROSS_COMPILING),--build=$(BUILD_PLATFORM) 
--host=$(HOST_PLATFORM) \
$(if $(filter INTEL ARM,$(CPUNAME)),ac_cv_c_bigendian=no)) \
___
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits


[Libreoffice-commits] core.git: external/cairo

2016-12-08 Thread Caolán McNamara
 external/cairo/ExternalProject_cairo.mk |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit a41d501381f2a9face6e57bbaa131ef8f8c977ab
Author: Caolán McNamara 
Date:   Thu Dec 8 11:27:50 2016 +

build internal cairo without X support in --disable-gui mode

Change-Id: Id27fb0b0b25adebccc8ca2fa6182a483a0d0c1de

diff --git a/external/cairo/ExternalProject_cairo.mk 
b/external/cairo/ExternalProject_cairo.mk
index 71315b2..edf3071 100644
--- a/external/cairo/ExternalProject_cairo.mk
+++ b/external/cairo/ExternalProject_cairo.mk
@@ -53,7 +53,7 @@ $(call gb_ExternalProject_get_state_target,cairo,build) :
$(if $(SYSTEM_FREETYPE),,FREETYPE_CFLAGS="-I$(call 
gb_UnpackedTarball_get_dir,freetype)/include") \
$(if $(SYSTEM_FONTCONFIG),,FONTCONFIG_CFLAGS="-I$(call 
gb_UnpackedTarball_get_dir,fontconfig)") \
$(if $(filter ANDROID 
IOS,$(OS)),--disable-shared,--disable-static) \
-   $(if $(filter ANDROID IOS,$(OS)),--disable-xlib 
--disable-xcb,--enable-xlib --enable-xcb) \
+   $(if $(filter ANDROID IOS,$(OS)),--disable-xlib 
--disable-xcb,$(if $(filter TRUE,$(ENABLE_HEADLESS)),--disable-xlib 
--disable-xcb,--enable-xlib --enable-xcb)) \
$(if $(filter IOS,$(OS)),--enable-quartz --enable-quartz-font) \
--disable-valgrind \
$(if $(filter IOS,$(OS)),--disable-ft,--enable-ft --enable-fc) \
___
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits


[Libreoffice-commits] core.git: external/cairo

2016-08-25 Thread Michael Stahl
 external/cairo/ExternalProject_cairo.mk |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit a95ef3313387b8d30c5b60c397bb839afd7d60dc
Author: Michael Stahl 
Date:   Thu Aug 25 11:49:45 2016 +0200

cairo: try if --disable-xcb fixes android build

Change-Id: I2a49f4e2b60fb51e4ec03dd82b7e54d1f39d887a

diff --git a/external/cairo/ExternalProject_cairo.mk 
b/external/cairo/ExternalProject_cairo.mk
index 4a3a944..b983ad1 100644
--- a/external/cairo/ExternalProject_cairo.mk
+++ b/external/cairo/ExternalProject_cairo.mk
@@ -48,7 +48,7 @@ $(call gb_ExternalProject_get_state_target,cairo,build) :
$(if $(SYSTEM_FREETYPE),,FREETYPE_CFLAGS="-I$(call 
gb_UnpackedTarball_get_dir,freetype)/include") \
$(if $(SYSTEM_FONTCONFIG),,FONTCONFIG_CFLAGS="-I$(call 
gb_UnpackedTarball_get_dir,fontconfig)") \
$(if $(filter ANDROID 
IOS,$(OS)),--disable-shared,--disable-static) \
-   $(if $(filter ANDROID IOS,$(OS)),--disable-xlib,--enable-xlib) \
+   $(if $(filter ANDROID IOS,$(OS)),--disable-xlib 
--disable-xcb,--enable-xlib --enable-xcb) \
$(if $(filter IOS,$(OS)),--enable-quartz --enable-quartz-font) \
--disable-valgrind \
$(if $(filter IOS,$(OS)),--disable-ft,--enable-ft --enable-fc) \
___
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits


[Libreoffice-commits] core.git: external/cairo

2016-03-24 Thread Korrawit Pruegsanusak
 external/cairo/ExternalProject_cairo.mk |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit 856038857f566269d8b21fc1c86aa4b5eb7ae048
Author: Korrawit Pruegsanusak 
Date:   Sun Mar 20 15:07:00 2016 +0700

FREETYPE_CFLAGS is already set when using external freetype

When you're on Debian derivatives, using internal cairo but external
(system's) freetype, the "ft2build.h" is in /usr/include/freetype2/,
not /usr/include/, which is already in FREETYPE_CFLAGS since configure.ac

Change-Id: I24c697776bd77d423ebeafd38315cb76cad28f9b
Reviewed-on: https://gerrit.libreoffice.org/23334
Tested-by: Jenkins 
Reviewed-by: Michael Stahl 

diff --git a/external/cairo/ExternalProject_cairo.mk 
b/external/cairo/ExternalProject_cairo.mk
index e74f5f0..6bbe957 100644
--- a/external/cairo/ExternalProject_cairo.mk
+++ b/external/cairo/ExternalProject_cairo.mk
@@ -45,7 +45,7 @@ $(call gb_ExternalProject_get_state_target,cairo,build) :
ZLIB3RDLIB="$(if 
$(SYSTEM_ZLIB),,-L$(WORKDIR)/LinkTarget/StaticLibrary) -lz" \
png_REQUIRES="trick_configure_into_using_png_CFLAGS_and_LIBS" \
png_CFLAGS="$(LIBPNG_CFLAGS)" png_LIBS="$(LIBPNG_LIBS)" \
-   FREETYPE_CFLAGS="-I$(call 
gb_UnpackedTarball_get_dir,freetype)/include" \
+   $(if $(SYSTEM_FREETYPE),,FREETYPE_CFLAGS="-I$(call 
gb_UnpackedTarball_get_dir,freetype)/include") \
FONTCONFIG_CFLAGS="-I$(call 
gb_UnpackedTarball_get_dir,fontconfig)" \
$(if $(filter IOS,$(OS)),--disable-shared,--disable-static) \
$(if $(filter ANDROID,$(OS)),--disable-shared,--disable-static) 
\
___
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits


[Libreoffice-commits] core.git: external/cairo external/expat external/lcms2 external/redland

2016-01-29 Thread Peter Foley
 external/cairo/ExternalProject_cairo.mk |3 ++-
 external/cairo/ExternalProject_pixman.mk|3 ++-
 external/expat/ExternalProject_expat.mk |3 ++-
 external/lcms2/ExternalProject_lcms2.mk |3 ++-
 external/redland/ExternalProject_raptor.mk  |3 ++-
 external/redland/ExternalProject_rasqal.mk  |3 ++-
 external/redland/ExternalProject_redland.mk |3 ++-
 7 files changed, 14 insertions(+), 7 deletions(-)

New commits:
commit 2c5f8927349cf0e643e0bfebf4d9aa5b726b0f89
Author: Peter Foley 
Date:   Sun Jan 17 19:22:51 2016 -0500

Android autoconf fixes

Change-Id: I3429f6a80dd7e080e8f2634ca744d1dac5ea1865
Reviewed-on: https://gerrit.libreoffice.org/21558
Tested-by: Jenkins 
Reviewed-by: jan iversen 

diff --git a/external/cairo/ExternalProject_cairo.mk 
b/external/cairo/ExternalProject_cairo.mk
index ca54bfc..e74f5f0 100644
--- a/external/cairo/ExternalProject_cairo.mk
+++ b/external/cairo/ExternalProject_cairo.mk
@@ -54,7 +54,8 @@ $(call gb_ExternalProject_get_state_target,cairo,build) :
--disable-valgrind \
$(if $(filter IOS,$(OS)),--disable-ft,--enable-ft --enable-fc) \
--disable-svg --enable-gtk-doc=no --enable-test-surfaces=no \
-   $(if $(CROSS_COMPILING),--build=$(BUILD_PLATFORM) 
--host=$(HOST_PLATFORM)) \
+   $(if $(CROSS_COMPILING),--build=$(BUILD_PLATFORM) 
--host=$(HOST_PLATFORM) \
+   $(if $(filter INTEL ARM,$(CPUNAME)),ac_cv_c_bigendian=no 
ax_cv_c_float_words_bigendian=no)) \
$(if $(filter 
MACOSX,$(OS)),--prefix=/@.__OOO)
 \
&& cp cairo-version.h src/cairo-version.h \
&& cd src && $(MAKE) \
diff --git a/external/cairo/ExternalProject_pixman.mk 
b/external/cairo/ExternalProject_pixman.mk
index bbb4081..083b0b6 100644
--- a/external/cairo/ExternalProject_pixman.mk
+++ b/external/cairo/ExternalProject_pixman.mk
@@ -34,7 +34,8 @@ $(call gb_ExternalProject_get_state_target,pixman,build) :
./configure \
$(if $(filter MACOSX IOS 
ANDROID,$(OS)),--disable-shared,--disable-static) \
$(if $(filter ANDROID,$(OS)),--disable-arm-simd 
--disable-arm-neon --disable-arm-iwmmxt) \
-   $(if $(CROSS_COMPILING),--build=$(BUILD_PLATFORM) 
--host=$(HOST_PLATFORM)) \
+   $(if $(CROSS_COMPILING),--build=$(BUILD_PLATFORM) 
--host=$(HOST_PLATFORM) \
+   $(if $(filter INTEL ARM,$(CPUNAME)),ac_cv_c_bigendian=no)) \
&& $(MAKE) \
)
 
diff --git a/external/expat/ExternalProject_expat.mk 
b/external/expat/ExternalProject_expat.mk
index 0cc1eaa..1a638ee 100644
--- a/external/expat/ExternalProject_expat.mk
+++ b/external/expat/ExternalProject_expat.mk
@@ -16,7 +16,8 @@ $(eval $(call gb_ExternalProject_register_targets,expat,\
 $(call gb_ExternalProject_get_state_target,expat,configure) :
$(call gb_ExternalProject_run,configure,\
./configure \
-   $(if $(CROSS_COMPILING),--build=$(BUILD_PLATFORM) 
--host=$(HOST_PLATFORM)) \
+   $(if $(CROSS_COMPILING),--build=$(BUILD_PLATFORM) 
--host=$(HOST_PLATFORM) \
+   $(if $(filter INTEL 
ARM,$(CPUNAME)),ac_cv_c_bigendian=no)) \
,,expat_configure.log)
 
 # vim: set noet sw=4 ts=4:
diff --git a/external/lcms2/ExternalProject_lcms2.mk 
b/external/lcms2/ExternalProject_lcms2.mk
index 7b9f7a4..6bf69b3 100644
--- a/external/lcms2/ExternalProject_lcms2.mk
+++ b/external/lcms2/ExternalProject_lcms2.mk
@@ -26,7 +26,8 @@ else
 $(call gb_ExternalProject_get_state_target,lcms2,build):
$(call gb_ExternalProject_run,build,\
./configure --without-jpeg --without-tiff --with-pic \
-   $(if $(CROSS_COMPILING),--build=$(BUILD_PLATFORM) 
--host=$(HOST_PLATFORM)) \
+   $(if $(CROSS_COMPILING),--build=$(BUILD_PLATFORM) 
--host=$(HOST_PLATFORM) \
+   $(if $(filter INTEL 
ARM,$(CPUNAME)),ac_cv_c_bigendian=no)) \
CPPFLAGS=" $(SOLARINC)" \
CFLAGS='$(if 
$(debug),$(gb_DEBUG_CFLAGS),$(gb_COMPILEROPTFLAGS))' \
$(if $(filter-out WNTGCC,$(OS)$(COM)),,CPPFLAGS=" 
-DCMS_DLL_BUILD") \
diff --git a/external/redland/ExternalProject_raptor.mk 
b/external/redland/ExternalProject_raptor.mk
index f083609..51efb1a 100644
--- a/external/redland/ExternalProject_raptor.mk
+++ b/external/redland/ExternalProject_raptor.mk
@@ -45,7 +45,8 @@ $(call gb_ExternalProject_get_state_target,raptor,build):
 --enable-parsers="rdfxml ntriples turtle trig guess 
rss-tag-soup" \
--with-www=xml \
--without-xslt-config \
-   $(if $(CROSS_COMPILING),--build=$(BUILD_PLATFORM) 
--host=$(HOST_PLATFORM)) \
+  

[Libreoffice-commits] core.git: external/cairo

2016-01-15 Thread Christian Lohmaier
 external/cairo/cairo/cairo-1.10.2.android.patch |   11 +++
 1 file changed, 11 insertions(+)

New commits:
commit eed4cc7933b2a46f421bb469652b85a58831b3c3
Author: Christian Lohmaier 
Date:   Sat Jan 16 01:16:08 2016 +0100

android x86 doesn't define ffs in libc, use compiler builtin instead

Change-Id: Ifde1184e469fc9a74de007a0caf27750b2ffbcbb

diff --git a/external/cairo/cairo/cairo-1.10.2.android.patch 
b/external/cairo/cairo/cairo-1.10.2.android.patch
index e894063..237a0d4 100644
--- a/external/cairo/cairo/cairo-1.10.2.android.patch
+++ b/external/cairo/cairo/cairo-1.10.2.android.patch
@@ -11,3 +11,14 @@
# Parse the version information argument.
save_ifs="$IFS"; IFS=':'
set dummy $vinfo 0 0 0
+diff -ur cairo.org/src/cairo-compiler-private.h 
cairo/src/cairo-compiler-private.h
+--- a/cairo.org/src/cairo-compiler-private.h   2016-01-16 00:47:17.392420675 
+0100
 b/cairo/src/cairo-compiler-private.h   2016-01-16 00:51:55.601110129 
+0100
+@@ -258,4 +258,7 @@
+ #define inline __inline__
+ #endif
+ 
++/* no ffs in libc on android x86 (at least not in v15 that we compile 
against) */
++#define ffs __builtin_ffs
++
+ #endif
___
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits


[Libreoffice-commits] core.git: external/cairo

2015-12-17 Thread Christian Lohmaier
 external/cairo/ExternalProject_cairo.mk |5 +
 1 file changed, 5 insertions(+)

New commits:
commit dad3c6752e44d81cbba9c0a81dd776158ee2b7b3
Author: Christian Lohmaier 
Date:   Thu Dec 17 18:42:25 2015 +0100

Android: cairo build needs fontconfig and png headers

Change-Id: If7c2279281851b3234ab5982e3c34058a7b8f50c

diff --git a/external/cairo/ExternalProject_cairo.mk 
b/external/cairo/ExternalProject_cairo.mk
index d204514..ca54bfc 100644
--- a/external/cairo/ExternalProject_cairo.mk
+++ b/external/cairo/ExternalProject_cairo.mk
@@ -11,6 +11,11 @@ $(eval $(call gb_ExternalProject_ExternalProject,cairo))
 
 $(eval $(call gb_ExternalProject_use_external_project,cairo,pixman))
 
+ifeq ($(OS),ANDROID)
+$(eval $(call gb_ExternalProject_use_unpacked,cairo,fontconfig))
+$(eval $(call gb_ExternalProject_use_unpacked,cairo,png))
+endif
+
 $(eval $(call gb_ExternalProject_register_targets,cairo,\
build \
 ))
___
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits


[Libreoffice-commits] core.git: external/cairo

2015-11-16 Thread Caolán McNamara
 external/cairo/UnpackedTarball_cairo.mk |2 --
 1 file changed, 2 deletions(-)

New commits:
commit d49b8e32e5d35f98d37e06555c1ba5f3199e9a80
Author: Caolán McNamara 
Date:   Mon Nov 16 13:38:51 2015 +

don't allow caito to add -flto to its own cflags

Change-Id: I22c66755e8e5ede01cf3e5f21c910f759b55de7a

diff --git a/external/cairo/UnpackedTarball_cairo.mk 
b/external/cairo/UnpackedTarball_cairo.mk
index ce061a1..bb2a4c1 100644
--- a/external/cairo/UnpackedTarball_cairo.mk
+++ b/external/cairo/UnpackedTarball_cairo.mk
@@ -41,10 +41,8 @@ ifneq (,$(filter ANDROID IOS,$(OS)))
 $(eval $(call 
gb_UnpackedTarball_add_file,cairo,.,external/cairo/cairo/dummy_pkg_config))
 endif
 
-ifeq ($(COM_IS_CLANG),TRUE)
 $(eval $(call gb_UnpackedTarball_add_patches,cairo,\
external/cairo/cairo/no-flto-clang.patch \
 ))
-endif
 
 # vim: set noet sw=4 ts=4:
___
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits