Repository.mk                                     |    2 -
 RepositoryExternal.mk                             |    4 +-
 configure.ac                                      |   11 +++++-
 distro-configs/CPMacOS-LOKit.conf                 |   38 ++++++++++++++++++++++
 external/cairo/ExternalPackage_cairo.mk           |    4 ++
 external/cairo/ExternalPackage_pixman.mk          |    4 ++
 external/cairo/ExternalProject_cairo.mk           |    6 +--
 external/cairo/ExternalProject_pixman.mk          |    2 +
 external/cairo/UnpackedTarball_cairo.mk           |    9 ++++-
 external/fontconfig/ExternalPackage_fontconfig.mk |    4 ++
 external/fontconfig/ExternalProject_fontconfig.mk |    3 +
 external/fontconfig/Module_fontconfig.mk          |    2 -
 external/fontconfig/UnpackedTarball_fontconfig.mk |    5 ++
 vcl/headless/svpframe.cxx                         |    6 ---
 vcl/inc/quartz/salgdi.h                           |   15 ++++++++
 vcl/quartz/salgdi.cxx                             |   29 ++++++++++++++++
 16 files changed, 128 insertions(+), 16 deletions(-)

New commits:
commit 92a456d2b70d4e2e50c33eb5110da2bb2bf48a6f
Author:     Caolán McNamara <caolan.mcnam...@collabora.com>
AuthorDate: Tue Aug 26 20:48:50 2025 +0100
Commit:     Andras Timar <andras.ti...@collabora.com>
CommitDate: Wed Aug 27 10:22:37 2025 +0200

    ENABLE_FONTCONFIG is actually not defined
    
    Change-Id: Iaabcfcab53b7c6ab9b20305d97979d0c978ec598

diff --git a/Repository.mk b/Repository.mk
index b6a88600baa0..8ee3c0d3c26f 100644
--- a/Repository.mk
+++ b/Repository.mk
@@ -1064,7 +1064,7 @@ $(eval $(call 
gb_Helper_register_packages_for_install,ooo,\
 
 $(eval $(call gb_Helper_register_packages_for_install,ooo_fonts,\
        extras_fonts \
-       $(if $(USING_X11)$(DISABLE_GUI)$(ENABLE_FONTCONFIG)$(filter ANDROID 
EMSCRIPTEN,$(OS)), \
+       $(if $(USING_X11)$(DISABLE_GUI)$(filter 
FONTCONFIG,$(BUILD_TYPE))$(filter ANDROID EMSCRIPTEN,$(OS)), \
                postprocess_fontconfig) \
        $(call gb_Helper_optional,MORE_FONTS,\
                fonts_alef \
diff --git a/RepositoryExternal.mk b/RepositoryExternal.mk
index 4e5bc3e158df..073c2c6039a7 100644
--- a/RepositoryExternal.mk
+++ b/RepositoryExternal.mk
@@ -1303,7 +1303,7 @@ gb_ExternalProject__use_fontconfig :=
 
 else # SYSTEM_FONTCONFIG
 
-ifeq ($(ENABLE_FONTCONFIG),TRUE)
+ifneq (,$(filter FONTCONFIG,$(BUILD_TYPE)))
 
 $(eval $(call gb_Helper_register_packages_for_install,ooo,\
        fontconfig \
diff --git a/external/fontconfig/Module_fontconfig.mk 
b/external/fontconfig/Module_fontconfig.mk
index 21dea02acd43..391f6dabc0fc 100644
--- a/external/fontconfig/Module_fontconfig.mk
+++ b/external/fontconfig/Module_fontconfig.mk
@@ -12,7 +12,7 @@ $(eval $(call gb_Module_Module,fontconfig))
 $(eval $(call gb_Module_add_targets,fontconfig,\
        ExternalProject_fontconfig \
        $(if $(filter EMSCRIPTEN,$(OS)),ExternalPackage_fontconfig_data) \
-       $(if $(filter TRUE,$(ENABLE_FONTCONFIG)),ExternalPackage_fontconfig) \
+       $(if $(filter FONTCONFIG,$(BUILD_TYPE)),ExternalPackage_fontconfig) \
        UnpackedTarball_fontconfig \
 ))
 
commit 222740d562b91bd526e0d6615817938327048106
Author:     Andras Timar <andras.ti...@collabora.com>
AuthorDate: Wed Aug 27 10:11:47 2025 +0200
Commit:     Andras Timar <andras.ti...@collabora.com>
CommitDate: Wed Aug 27 10:22:37 2025 +0200

    add --enable-headless to CPMacOS-LOKit.conf
    
    Change-Id: I83dc086c354c35684b00c7354a6d72ea3290c484

diff --git a/distro-configs/CPMacOS-LOKit.conf 
b/distro-configs/CPMacOS-LOKit.conf
index f870a48b1e7e..0781801d2913 100644
--- a/distro-configs/CPMacOS-LOKit.conf
+++ b/distro-configs/CPMacOS-LOKit.conf
@@ -34,3 +34,5 @@ INCLUDE:CPLinux-LOKit
 --disable-openssl
 --disable-poppler
 --disable-python
+
+--enable-headless
commit 30b8ccbd38a914fdd241ecd4c2576d3943c415d9
Author:     Jan Holesovsky <ke...@collabora.com>
AuthorDate: Mon Nov 18 17:04:12 2024 +0100
Commit:     Andras Timar <andras.ti...@collabora.com>
CommitDate: Wed Aug 27 10:22:37 2025 +0200

    Make vcl build on macOS with --enable-headless
    
    Change-Id: I210767a9918b6a672a5227e6c40873bad90f7188

diff --git a/vcl/inc/quartz/salgdi.h b/vcl/inc/quartz/salgdi.h
index 9c5370c4db5c..da9623f7a448 100644
--- a/vcl/inc/quartz/salgdi.h
+++ b/vcl/inc/quartz/salgdi.h
@@ -475,6 +475,21 @@ public:
 
     virtual SystemGraphicsData
                             GetGraphicsData() const override;
+
+#if ENABLE_CAIRO_CANVAS
+
+    /// Check whether cairo will work
+    virtual bool                SupportsCairo() const override;
+    /// Create Surface from given cairo surface
+    virtual cairo::SurfaceSharedPtr CreateSurface(const 
cairo::CairoSurfaceSharedPtr& rSurface) const override;
+    /// Create surface with given dimensions
+    virtual cairo::SurfaceSharedPtr CreateSurface(const OutputDevice& 
rRefDevice, int x, int y, int width, int height) const override;
+    /// Create Surface for given bitmap data
+    virtual cairo::SurfaceSharedPtr CreateBitmapSurface(const OutputDevice& 
rRefDevice, const BitmapSystemData& rData, const Size& rSize) const override;
+    virtual css::uno::Any       
GetNativeSurfaceHandle(cairo::SurfaceSharedPtr& rSurface, const 
basegfx::B2ISize& rSize) const override;
+
+#endif // ENABLE_CAIRO_CANVAS
+
 };
 
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/vcl/quartz/salgdi.cxx b/vcl/quartz/salgdi.cxx
index fb5872a60ce2..6dbb3a77c380 100644
--- a/vcl/quartz/salgdi.cxx
+++ b/vcl/quartz/salgdi.cxx
@@ -557,4 +557,33 @@ bool AquaSharedAttributes::checkContext()
 
 #endif
 
+#if ENABLE_CAIRO_CANVAS
+
+bool AquaSalGraphics::SupportsCairo() const
+{
+    return false;
+}
+
+cairo::SurfaceSharedPtr AquaSalGraphics::CreateSurface(const 
cairo::CairoSurfaceSharedPtr& /*rSurface*/) const
+{
+    return cairo::SurfaceSharedPtr();
+}
+
+cairo::SurfaceSharedPtr AquaSalGraphics::CreateSurface(const OutputDevice& 
/*rRefDevice*/, int /*x*/, int /*y*/, int /*width*/, int /*height*/) const
+{
+    return cairo::SurfaceSharedPtr();
+}
+
+cairo::SurfaceSharedPtr AquaSalGraphics::CreateBitmapSurface(const 
OutputDevice& /*rRefDevice*/, const BitmapSystemData& /*rData*/, const Size& 
/*rSize*/) const
+{
+    return cairo::SurfaceSharedPtr();
+}
+
+css::uno::Any AquaSalGraphics::GetNativeSurfaceHandle(cairo::SurfaceSharedPtr& 
/*rSurface*/, const basegfx::B2ISize& /*rSize*/) const
+{
+    return css::uno::Any();
+}
+
+#endif // ENABLE_CAIRO_CANVAS
+
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
commit 4cb8647ac42a66a0ee0fbc542f5b998820cfab78
Author:     Jan Holesovsky <ke...@collabora.com>
AuthorDate: Mon Nov 18 15:56:49 2024 +0100
Commit:     Andras Timar <andras.ti...@collabora.com>
CommitDate: Wed Aug 27 10:22:37 2025 +0200

    This is not present on macOS either
    
    Change-Id: I4352df00081f094e7a3c4f3e3b5cc0308114470d

diff --git a/vcl/headless/svpframe.cxx b/vcl/headless/svpframe.cxx
index 00672935d256..74862859f11c 100644
--- a/vcl/headless/svpframe.cxx
+++ b/vcl/headless/svpframe.cxx
@@ -54,11 +54,7 @@ SvpSalFrame::SvpSalFrame( SvpSalInstance* pInstance,
     m_nMaxWidth( 0 ),
     m_nMaxHeight( 0 )
 {
-#ifdef IOS
-    // Nothing
-#elif defined ANDROID
-    // Nothing
-#else
+#if !defined(IOS) && !defined(MACOSX) && !defined(ANDROID)
     m_aSystemChildData.pSalFrame    = this;
 #endif
 
commit 0ff7f91309743e1d48fbfb1b3375e742e56d3b6c
Author:     Caolán McNamara <caolan.mcnam...@collabora.com>
AuthorDate: Tue Aug 26 20:41:49 2025 +0100
Commit:     Andras Timar <andras.ti...@collabora.com>
CommitDate: Wed Aug 27 10:22:37 2025 +0200

    don't require pkg-config on macOS either
    
    Change-Id: Icaca4f047060c73dee9562385fb3d5e3f6b99cd6

diff --git a/external/cairo/ExternalProject_cairo.mk 
b/external/cairo/ExternalProject_cairo.mk
index 1d3509d421c8..c2f9f76a050f 100644
--- a/external/cairo/ExternalProject_cairo.mk
+++ b/external/cairo/ExternalProject_cairo.mk
@@ -54,7 +54,7 @@ $(call gb_ExternalProject_get_state_target,cairo,build) :
                        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) 
\
+               $(if $(filter MACOSX ANDROID 
iOS,$(OS)),PKG_CONFIG=./dummy_pkg_config) \
                LIBS="$(ZLIB_LIBS)" \
                $(if $(filter -fsanitize=%,$(LDFLAGS)),LDFLAGS="$(LDFLAGS) 
-fuse-ld=bfd") \
                pixman_CFLAGS="-I$(gb_UnpackedTarball_workdir)/pixman/pixman 
-pthread" \
diff --git a/external/cairo/UnpackedTarball_cairo.mk 
b/external/cairo/UnpackedTarball_cairo.mk
index 70ff2e18c154..1108b5810386 100644
--- a/external/cairo/UnpackedTarball_cairo.mk
+++ b/external/cairo/UnpackedTarball_cairo.mk
@@ -51,7 +51,7 @@ $(eval $(call gb_UnpackedTarball_add_patches,cairo,\
 ))
 endif
 
-ifneq (,$(filter ANDROID iOS,$(OS)))
+ifneq (,$(filter MACOSX ANDROID iOS,$(OS)))
 $(eval $(call 
gb_UnpackedTarball_add_file,cairo,.,external/cairo/cairo/dummy_pkg_config))
 endif
 
commit 5b5eac4ba4f3625a41761205fbac95ed306933ce
Author:     Jan Holesovsky <ke...@collabora.com>
AuthorDate: Mon Nov 18 13:56:59 2024 +0100
Commit:     Andras Timar <andras.ti...@collabora.com>
CommitDate: Wed Aug 27 10:22:37 2025 +0200

    Make it possible to build cairo even on macOS
    
    Change-Id: Iea337f2fdd0f90e2b0612cd2cda9c1ea1f4739a0

diff --git a/Repository.mk b/Repository.mk
index eaa7c8324ea1..b6a88600baa0 100644
--- a/Repository.mk
+++ b/Repository.mk
@@ -1064,7 +1064,7 @@ $(eval $(call 
gb_Helper_register_packages_for_install,ooo,\
 
 $(eval $(call gb_Helper_register_packages_for_install,ooo_fonts,\
        extras_fonts \
-       $(if $(USING_X11)$(DISABLE_GUI)$(filter ANDROID EMSCRIPTEN,$(OS)), \
+       $(if $(USING_X11)$(DISABLE_GUI)$(ENABLE_FONTCONFIG)$(filter ANDROID 
EMSCRIPTEN,$(OS)), \
                postprocess_fontconfig) \
        $(call gb_Helper_optional,MORE_FONTS,\
                fonts_alef \
diff --git a/RepositoryExternal.mk b/RepositoryExternal.mk
index e742e8e81c05..4e5bc3e158df 100644
--- a/RepositoryExternal.mk
+++ b/RepositoryExternal.mk
@@ -1303,7 +1303,7 @@ gb_ExternalProject__use_fontconfig :=
 
 else # SYSTEM_FONTCONFIG
 
-ifneq ($(filter-out MACOSX WNT,$(OS)),)
+ifeq ($(ENABLE_FONTCONFIG),TRUE)
 
 $(eval $(call gb_Helper_register_packages_for_install,ooo,\
        fontconfig \
diff --git a/external/cairo/ExternalPackage_cairo.mk 
b/external/cairo/ExternalPackage_cairo.mk
index 6bd0800d9f21..9d2b2bdc47da 100644
--- a/external/cairo/ExternalPackage_cairo.mk
+++ b/external/cairo/ExternalPackage_cairo.mk
@@ -12,7 +12,11 @@ $(eval $(call 
gb_ExternalPackage_ExternalPackage,cairo,cairo))
 $(eval $(call gb_ExternalPackage_use_external_project,cairo,cairo))
 
 ifneq ($(DISABLE_DYNLOADING),TRUE)
+ifeq ($(OS),MACOSX)
+$(eval $(call 
gb_ExternalPackage_add_file,cairo,$(LIBO_LIB_FOLDER)/libcairo.2.dylib,src/.libs/libcairo.2.dylib))
+else
 $(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
+endif
 
 # vim: set noet sw=4 ts=4:
diff --git a/external/cairo/ExternalPackage_pixman.mk 
b/external/cairo/ExternalPackage_pixman.mk
index 85ff062f22e2..2afbc505fdb7 100644
--- a/external/cairo/ExternalPackage_pixman.mk
+++ b/external/cairo/ExternalPackage_pixman.mk
@@ -12,7 +12,11 @@ $(eval $(call 
gb_ExternalPackage_ExternalPackage,pixman,pixman))
 $(eval $(call gb_ExternalPackage_use_external_project,pixman,pixman))
 
 ifneq ($(DISABLE_DYNLOADING),TRUE)
+ifeq ($(OS),MACOSX)
+$(eval $(call 
gb_ExternalPackage_add_file,pixman,$(LIBO_LIB_FOLDER)/libpixman-1.0.dylib,pixman/.libs/libpixman-1.0.42.2.dylib))
+else
 $(eval $(call 
gb_ExternalPackage_add_file,pixman,$(LIBO_LIB_FOLDER)/libpixman-1.so.0,pixman/.libs/libpixman-1.so.0.42.2))
 endif
+endif
 
 # vim: set noet sw=4 ts=4:
diff --git a/external/cairo/ExternalProject_cairo.mk 
b/external/cairo/ExternalProject_cairo.mk
index 40e249b51a2c..1d3509d421c8 100644
--- a/external/cairo/ExternalProject_cairo.mk
+++ b/external/cairo/ExternalProject_cairo.mk
@@ -67,10 +67,10 @@ $(call gb_ExternalProject_get_state_target,cairo,build) :
                png_REQUIRES="trick_configure_into_using_png_CFLAGS_and_LIBS" \
                png_CFLAGS="$(LIBPNG_CFLAGS)" png_LIBS="$(LIBPNG_LIBS)" \
                $(if 
$(SYSTEM_FREETYPE),,FREETYPE_CFLAGS="-I$(gb_UnpackedTarball_workdir)/freetype/include")
 \
-               $(if 
$(SYSTEM_FONTCONFIG),,FONTCONFIG_CFLAGS="-I$(gb_UnpackedTarball_workdir)/fontconfig")
 \
+               $(if 
$(SYSTEM_FONTCONFIG),,FONTCONFIG_CFLAGS="-I$(gb_UnpackedTarball_workdir)/fontconfig"
 FONTCONFIG_LIBS="-L$(gb_UnpackedTarball_workdir)/fontconfig/src/.libs 
-lfontconfig") \
                $(if $(verbose),--disable-silent-rules,--enable-silent-rules) \
                $(if $(filter 
TRUE,$(DISABLE_DYNLOADING)),--disable-shared,--disable-static) \
-               $(if $(filter EMSCRIPTEN ANDROID iOS,$(OS)),--disable-xlib 
--disable-xcb,$(if $(filter TRUE,$(DISABLE_GUI)),--disable-xlib 
--disable-xcb,--enable-xlib --enable-xcb)) \
+               $(if $(filter EMSCRIPTEN ANDROID iOS 
MACOSX,$(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) \
                --disable-valgrind \
                $(if $(filter iOS,$(OS)),--disable-ft,--enable-ft --enable-fc) \
diff --git a/external/cairo/ExternalProject_pixman.mk 
b/external/cairo/ExternalProject_pixman.mk
index f95fcb626ccc..72a470dc5692 100644
--- a/external/cairo/ExternalProject_pixman.mk
+++ b/external/cairo/ExternalProject_pixman.mk
@@ -26,10 +26,12 @@ $(call gb_ExternalProject_get_state_target,pixman,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-a64-neon --disable-arm-iwmmxt) \
+               $(if $(filter MACOSX,$(OS)),--disable-arm-a64-neon) \
                $(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') \
+               $(if $(filter 
MACOSX,$(OS)),--prefix=/@.__________________________________________________OOO)
 \
                && $(MAKE) \
        )
        $(call gb_Trace_EndRange,pixman,EXTERNAL)
diff --git a/external/cairo/UnpackedTarball_cairo.mk 
b/external/cairo/UnpackedTarball_cairo.mk
index f1697c6d0cc9..70ff2e18c154 100644
--- a/external/cairo/UnpackedTarball_cairo.mk
+++ b/external/cairo/UnpackedTarball_cairo.mk
@@ -28,11 +28,16 @@ $(eval $(call gb_UnpackedTarball_add_patches,cairo,\
        external/cairo/cairo/cairo.ofz46165.patch.1 \
        external/cairo/cairo/cairo.ofz50805.patch.1 \
        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 \
 ))
 
+ifneq ($(OS),MACOSX)
+$(eval $(call gb_UnpackedTarball_add_patches,cairo,\
+       external/cairo/cairo/libcairo-bundled-soname.patch.0 \
+))
+endif
+
 ifeq ($(OS),iOS)
 $(eval $(call gb_UnpackedTarball_add_patches,cairo,\
        external/cairo/cairo/cairo-1.10.2.no-atsui.patch \
diff --git a/external/fontconfig/ExternalPackage_fontconfig.mk 
b/external/fontconfig/ExternalPackage_fontconfig.mk
index dd0550ce2106..4ac2c2f3c47c 100644
--- a/external/fontconfig/ExternalPackage_fontconfig.mk
+++ b/external/fontconfig/ExternalPackage_fontconfig.mk
@@ -12,7 +12,11 @@ $(eval $(call 
gb_ExternalPackage_ExternalPackage,fontconfig,fontconfig))
 $(eval $(call gb_ExternalPackage_use_external_project,fontconfig,fontconfig))
 
 ifeq ($(DISABLE_DYNLOADING),)
+ifeq ($(OS),MACOSX)
+$(eval $(call 
gb_ExternalPackage_add_file,fontconfig,$(LIBO_LIB_FOLDER)/libfontconfig.1.dylib,src/.libs/libfontconfig.1.dylib))
+else
 $(eval $(call 
gb_ExternalPackage_add_file,fontconfig,$(LIBO_LIB_FOLDER)/libfontconfig-lo.so.1.15.0,src/.libs/libfontconfig-lo.so.1.15.0))
 endif
+endif
 
 # vim: set noet sw=4 ts=4:
diff --git a/external/fontconfig/ExternalProject_fontconfig.mk 
b/external/fontconfig/ExternalProject_fontconfig.mk
index 0d899ef129bd..fd72bb94ef3c 100644
--- a/external/fontconfig/ExternalProject_fontconfig.mk
+++ b/external/fontconfig/ExternalProject_fontconfig.mk
@@ -27,7 +27,7 @@ $(call gb_ExternalProject_get_state_target,fontconfig,build) :
                $(if $(filter -fsanitize=undefined,$(CC)),CC='$(CC) 
-fno-sanitize=function') \
                CFLAGS="$(CFLAGS) \
                        $(call gb_ExternalProject_get_build_flags,fontconfig) \
-                       $(gb_VISIBILITY_FLAGS) \
+                       $(if $(filter-out MACOSX,$(OS)),$(gb_VISIBILITY_FLAGS)) 
\
                        $(if $(filter EMSCRIPTEN,$(OS)),-pthread)" \
                        $(if $(filter ANDROID,$(OS)),LIBS="-lm") \
                $(if $(filter 
EMSCRIPTEN,$(OS)),LIBXML2_CFLAGS="$(LIBXML_CFLAGS)" 
LIBXML2_LIBS="$(LIBXML_LIBS)") \
@@ -58,6 +58,7 @@ $(call gb_ExternalProject_get_state_target,fontconfig,build) :
                                        
--with-cache-dir=/usr/lib/fontconfig/cache \
                                ) \
                        ) \
+                       $(if $(filter 
MACOSX,$(OS)),--prefix=/@.__________________________________________________OOO)
 \
                && $(MAKE) -C src && $(MAKE) fonts.conf \
        )
        $(call gb_Trace_EndRange,fontconfig,EXTERNAL)
diff --git a/external/fontconfig/Module_fontconfig.mk 
b/external/fontconfig/Module_fontconfig.mk
index 61f201d415b6..21dea02acd43 100644
--- a/external/fontconfig/Module_fontconfig.mk
+++ b/external/fontconfig/Module_fontconfig.mk
@@ -12,7 +12,7 @@ $(eval $(call gb_Module_Module,fontconfig))
 $(eval $(call gb_Module_add_targets,fontconfig,\
        ExternalProject_fontconfig \
        $(if $(filter EMSCRIPTEN,$(OS)),ExternalPackage_fontconfig_data) \
-       $(if $(filter LINUX,$(OS)),ExternalPackage_fontconfig) \
+       $(if $(filter TRUE,$(ENABLE_FONTCONFIG)),ExternalPackage_fontconfig) \
        UnpackedTarball_fontconfig \
 ))
 
diff --git a/external/fontconfig/UnpackedTarball_fontconfig.mk 
b/external/fontconfig/UnpackedTarball_fontconfig.mk
index e37e8f6cb3e5..0636de8655ac 100644
--- a/external/fontconfig/UnpackedTarball_fontconfig.mk
+++ b/external/fontconfig/UnpackedTarball_fontconfig.mk
@@ -15,7 +15,12 @@ $(eval $(call 
gb_UnpackedTarball_set_patchlevel,fontconfig,0))
 
 $(eval $(call gb_UnpackedTarball_add_patches,fontconfig,\
        external/fontconfig/fontconfig-2.12.1.patch.1 \
+))
+
+ifneq ($(OS),MACOSX)
+$(eval $(call gb_UnpackedTarball_add_patches,fontconfig,\
        external/fontconfig/libfontconfig-bundled-soname.patch.0 \
 ))
+endif
 
 # vim: set noet sw=4 ts=4:
commit 30f24a2d7701a002e3ccbb98433a1d7874e97eb4
Author:     Jan Holesovsky <ke...@collabora.com>
AuthorDate: Mon Nov 18 13:31:36 2024 +0100
Commit:     Andras Timar <andras.ti...@collabora.com>
CommitDate: Wed Aug 27 10:22:37 2025 +0200

    Introduce --enable-headless to add it as a possibility on macOS
    
    Change-Id: I3ea0fbdab2d36bf9c9565ed3274eee978ba6764d

diff --git a/RepositoryExternal.mk b/RepositoryExternal.mk
index 434527d34926..e742e8e81c05 100644
--- a/RepositoryExternal.mk
+++ b/RepositoryExternal.mk
@@ -1214,7 +1214,7 @@ endef
 
 else # !SYSTEM_CAIRO
 
-ifneq ($(filter-out MACOSX WNT,$(OS)),)
+ifneq ($(filter-out MACOSX$(ENABLE_HEADLESS) WNT,$(OS)),)
 
 $(eval $(call gb_Helper_register_packages_for_install,ooo,\
        cairo \
diff --git a/configure.ac b/configure.ac
index 665808bd8312..9b0201737d80 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1026,7 +1026,11 @@ cygwin*|wsl*)
     ;;
 
 darwin*) # macOS
-    using_freetype_fontconfig=no
+    if test "$enable_headless" != "yes"; then
+        using_freetype_fontconfig=no
+    else
+        using_freetype_fontconfig=yes
+    fi
     using_x11=no
     build_skia=yes
     enable_pagein=no
@@ -1872,6 +1876,11 @@ AC_ARG_ENABLE(gen,
          Per default auto-enabled when X11 is used.]),
 ,test "${test_gen}" = no -o "${enable_gen+set}" = set || enable_gen=yes)
 
+AC_ARG_ENABLE(headless,
+    AS_HELP_STRING([--enable-headless],
+        [Enable headless plugin (svp) even on macOS.]),
+,using_headless_plugin=yes)
+
 AC_ARG_ENABLE(gui,
     AS_HELP_STRING([--disable-gui],
         [Disable use of X11 or Wayland to reduce dependencies (e.g. for 
building LibreOfficeKit).]),
commit 7089df80b535ee3eca7458a73bde1ac1c556c0ed
Author:     Jan Holesovsky <ke...@collabora.com>
AuthorDate: Mon Feb 3 12:11:42 2025 +0100
Commit:     Andras Timar <andras.ti...@collabora.com>
CommitDate: Wed Aug 27 10:22:23 2025 +0200

    It seems better to configure for sandbox
    
    LOKit will need to run in the sandbox in the end, and this avoids a
    crash in coolwsd, so let's configure with this right away.
    
    Change-Id: Iac58b20192274fea749befd8bb77592852edb64c

diff --git a/distro-configs/CPMacOS-LOKit.conf 
b/distro-configs/CPMacOS-LOKit.conf
index c380a9dd899d..f870a48b1e7e 100644
--- a/distro-configs/CPMacOS-LOKit.conf
+++ b/distro-configs/CPMacOS-LOKit.conf
@@ -1,5 +1,8 @@
 INCLUDE:CPLinux-LOKit
 
+# LOKit needs to be able to run in the sandbox
+--enable-macosx-sandbox
+
 # disable Linux stuff that we don't need
 --disable-epm
 --disable-python
commit 6eedec278ba2229ba4d0d67ceea72700bb4d62be
Author:     Jan Holesovsky <ke...@collabora.com>
AuthorDate: Mon Oct 21 07:08:39 2024 +0200
Commit:     Andras Timar <andras.ti...@collabora.com>
CommitDate: Wed Aug 27 10:06:39 2025 +0200

    Initial distro-config for LOKit on macOS
    
    Change-Id: If251f2fbc33e74b28b2f8fc3d14813f3fba2f431

diff --git a/distro-configs/CPMacOS-LOKit.conf 
b/distro-configs/CPMacOS-LOKit.conf
new file mode 100644
index 000000000000..c380a9dd899d
--- /dev/null
+++ b/distro-configs/CPMacOS-LOKit.conf
@@ -0,0 +1,33 @@
+INCLUDE:CPLinux-LOKit
+
+# disable Linux stuff that we don't need
+--disable-epm
+--disable-python
+--without-package-format
+--enable-gui
+
+# from LibreOfficeiOS (copied only, to avoid the --host setting)
+--disable-breakpad
+--disable-firebird-sdbc
+--disable-online-update
+
+--without-export-validation
+--without-helppack-integration
+--without-java
+--without-junit
+
+--with-theme=colibre
+
+--with-build-platform-configure-options=--with-system-jpeg=no
+
+--disable-avahi
+--disable-avmedia
+--disable-compiler-plugins
+--disable-cups
+--disable-dconf
+--disable-extensions
+--disable-kf5
+--disable-odk
+--disable-openssl
+--disable-poppler
+--disable-python

Reply via email to