On Sun, Oct 28, 2012 at 09:37:05AM +0100, Matúš Kukan wrote:
> On 28 October 2012 02:59, Khaled Hosny <khaledho...@eglug.org> wrote:
> > Realizing that I might not get around fixing basic issues with HarfBuzz
> > integration anytime soon, I'm attaching preliminary patches I've for any
> > one interested in them.
> 
> You set ENABLE_HARFBUZZ as TRUE / empty but use in vcl:
> ifneq ($(ENABLE_HARFBUZZ),NO) <- always true

Thank you, I copied the librsvg conditional below it blindly :) A fixed
patch is attached.

Regards,
 Khaled
>From 987dc147c6e86b213ddb2f914414decafe09abe4 Mon Sep 17 00:00:00 2001
From: Khaled Hosny <khaledho...@eglug.org>
Date: Sun, 28 Oct 2012 01:31:11 +0200
Subject: [PATCH 1/2] Add HarfBuzz support to the build system

Not used yet, and no support for local build either.

Change-Id: I7121fbe66e57eaa6be0e58451acf9a2ea7b50f59
---
 RepositoryExternal.mk |   23 +++++++++++++++++++++++
 config_host.mk.in     |    3 +++
 configure.ac          |   27 +++++++++++++++++++++++++++
 vcl/Library_vcl.mk    |    9 +++++++++
 4 files changed, 62 insertions(+)

diff --git a/RepositoryExternal.mk b/RepositoryExternal.mk
index ca87908..c5188a7 100644
--- a/RepositoryExternal.mk
+++ b/RepositoryExternal.mk
@@ -1530,6 +1530,29 @@ gb_LinkTarget__use_pixbuf :=
 
 endif # SYSTEM_GDKPIXBUF
 
+ifeq ($(ENABLE_HARFBUZZ),TRUE)
+
+define gb_LinkTarget__use_harfbuzz
+$(call gb_LinkTarget_set_include,$(1),\
+	$$(INCLUDE) \
+	$(HARFBUZZ_CFLAGS) \
+)
+
+$(call gb_LinkTarget_add_libs,$(1),\
+	$(HARFBUZZ_LIBS) \
+)
+
+endef
+
+else # !ENABLE_HARFBUZZ
+
+define gb_LinkTarget__use_harfbuzz
+
+endef
+
+endif # ENABLE_HARFBUZZ
+
+
 ifeq ($(SYSTEM_DB),YES)
 
 define gb_LinkTarget__use_berkeleydb
diff --git a/config_host.mk.in b/config_host.mk.in
index 0317bef..00d2bcb 100644
--- a/config_host.mk.in
+++ b/config_host.mk.in
@@ -143,6 +143,7 @@ export ENABLE_GSTREAMER_0_10=@ENABLE_GSTREAMER_0_10@
 export ENABLE_GTK3=@ENABLE_GTK3@
 export ENABLE_GTK=@ENABLE_GTK@
 export ENABLE_GTK_PRINT=@ENABLE_GTK_PRINT@
+export ENABLE_HARFBUZZ=@ENABLE_HARFBUZZ@
 export ENABLE_HEADLESS=@ENABLE_HEADLESS@
 export ENABLE_TDEAB=@ENABLE_TDEAB@
 export ENABLE_TDE=@ENABLE_TDE@
@@ -237,6 +238,8 @@ export GUIBASE=@GUIBASE@
 export GUIBASE_FOR_BUILD=@GUIBASE_FOR_BUILD@
 export GUI_FOR_BUILD=@GUI_FOR_BUILD@
 export GXX_INCLUDE_PATH=@GXX_INCLUDE_PATH@
+export HARFBUZZ_CFLAGS=@HARFBUZZ_CFLAGS@
+export HARFBUZZ_LIBS=@HARFBUZZ_LIBS@
 export HAVE_CXX0X=@HAVE_CXX0X@
 export HAVE_GCC_AVX=@HAVE_GCC_AVX@
 export HAVE_GCC_BUILTIN_ATOMIC=@HAVE_GCC_BUILTIN_ATOMIC@
diff --git a/configure.ac b/configure.ac
index 9a9689a..d2e81a9 100644
--- a/configure.ac
+++ b/configure.ac
@@ -885,6 +885,11 @@ AC_ARG_ENABLE(gio,
         [Determines whether to use the GIO support.]),
 ,enable_gio=no)
 
+AC_ARG_ENABLE(harfbuzz,
+    AS_HELP_STRING([--enable-harfbuzz],
+        [Determines whether to use HarfBuzz text layout engine.]),
+,enable_harfbuzz=no)
+
 AC_ARG_ENABLE(telepathy,
     AS_HELP_STRING([--enable-telepathy],
         [Determines whether to enable Telepathy for collaboration.]),
@@ -9595,6 +9600,28 @@ AC_SUBST([GTK_PRINT_LIBS])
 
 
 dnl ===================================================================
+dnl Check whether the HarfBuzz libraries are available.
+dnl ===================================================================
+
+ENABLE_HARFBUZZ=""
+HARFBUZZ_CFLAGS=""
+HARFBUZZ_LIBS=""
+
+AC_MSG_CHECKING([whether to enable HarfBuzz support])
+if test "$_os" != "WINNT" -a "$_os" != "Darwin" -a "$enable_harfbuzz" = "yes"; then
+    ENABLE_HARFBUZZ="TRUE"
+    AC_MSG_RESULT([yes])
+    PKG_CHECK_MODULES( HARFBUZZ, harfbuzz >= 0.9.3 )
+else
+    AC_MSG_RESULT([no])
+fi
+
+AC_SUBST(ENABLE_HARFBUZZ)
+AC_SUBST(HARFBUZZ_CFLAGS)
+AC_SUBST(HARFBUZZ_LIBS)
+
+
+dnl ===================================================================
 dnl Check whether the Telepathy libraries are available.
 dnl ===================================================================
 
diff --git a/vcl/Library_vcl.mk b/vcl/Library_vcl.mk
index 1ff3339..c6e5256 100644
--- a/vcl/Library_vcl.mk
+++ b/vcl/Library_vcl.mk
@@ -315,6 +315,15 @@ $(eval $(call gb_Library_use_external,vcl,graphite))
 
 endif
 
+ifeq ($(ENABLE_HARFBUZZ),TRUE)
+$(eval $(call gb_Library_add_defs,vcl,\
+    -DENABLE_HARFBUZZ \
+))
+
+$(eval $(call gb_Library_use_externals,vcl,harfbuzz))
+
+endif
+
 ifneq ($(ENABLE_LIBRSVG),NO)
 $(eval $(call gb_Library_add_exception_objects,vcl,\
     vcl/source/components/rasterizer_rsvg \
-- 
1.7.9.5

_______________________________________________
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice

Reply via email to