[gtk-osx] Restore freetype-no-harfbuzz.
- From: John Ralls <jralls src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk-osx] Restore freetype-no-harfbuzz.
- Date: Mon, 14 Sep 2020 19:27:37 +0000 (UTC)
commit 778abcdd1d57bc76db12fe3ec4b6f8b26df08f4b
Author: John Ralls <jralls ceridwen us>
Date: Mon Sep 14 12:27:21 2020 -0700
Restore freetype-no-harfbuzz.
See the comments in the various gtk-osx.modules.
jhbuildrc-gtk-osx | 1 +
modulesets-stable/gtk-osx.modules | 19 +++++++++++++++++--
modulesets-unstable/gtk-osx.modules | 21 +++++++++++++++++++++
modulesets/gtk-osx.modules | 21 +++++++++++++++++++--
4 files changed, 58 insertions(+), 4 deletions(-)
---
diff --git a/jhbuildrc-gtk-osx b/jhbuildrc-gtk-osx
index b039e91..27d2ac1 100644
--- a/jhbuildrc-gtk-osx
+++ b/jhbuildrc-gtk-osx
@@ -495,6 +495,7 @@ alwaysautogen = True
# the install name to be an absolute path.
module_cmakeargs["freetype"] = '-DCMAKE_INSTALL_NAME_DIR="' + os.path.join(prefix, 'lib') + '"'
+module_cmakeargs["freetype-no-harfbuzz"] = '-DCMAKE_INSTALL_NAME_DIR="' + os.path.join(prefix, 'lib') + '"'
# Check and warn if jhbuild is started from within jhbuild, since that
diff --git a/modulesets-stable/gtk-osx.modules b/modulesets-stable/gtk-osx.modules
index 75e1233..8332d03 100644
--- a/modulesets-stable/gtk-osx.modules
+++ b/modulesets-stable/gtk-osx.modules
@@ -107,6 +107,18 @@ configurations of WebKit.
</dependencies>
</meson>
+ <!-- To build Freetype *with* harfbuzz requires harfbuzz to be built
+ with freetype so we first have to build it *without* harfbuzz,
+ then build harfbuzz without cairo because cairo requires
+ harfbuzz. -->
+ <cmake id="freetype-no-harfbuzz" cmakeargs="-DCMAKE_DISABLE_FIND_PACKAGE_HarfBuzz=TRUE
-DCMAKE_DISABLE_FIND_PACKAGE_BZip2=TRUE -D BUILD_SHARED_LIBS=true -D CMAKE_BUILD_TYPE=Release">
+ <branch module="freetype/freetype-2.10.2.tar.gz" version="2.10.2"
+ repo="sourceforge"/>
+ <dependencies>
+ <dep package="zlib"/>
+ </dependencies>
+ </cmake>
+
<meson id="harfbuzz-no-cairo" mesonargs="-Dcoretext=enabled -Ddocs=disabled">
<branch repo="github-tarball" version="2.7.1"
module="harfbuzz/harfbuzz/releases/download/2.7.1/harfbuzz-2.7.1.tar.xz"
@@ -114,6 +126,7 @@ configurations of WebKit.
</branch>
<dependencies>
<dep package="glib"/>
+ <dep package="freetype-no-harfbuzz"/>
</dependencies>
<after>
<dep package="icu"/>
@@ -150,6 +163,9 @@ configurations of WebKit.
</after>
</autotools>
+ <!-- cairo doesn't really need fontconfig, but if Pango finds
+ freetype it insists that it has to have fontconfig too and that
+ they are both built into cairo. -->
<autotools id="cairo" autogen-sh="autoreconf"
autogenargs="--enable-pdf --enable-quartz --disable-xlib --without-x">
<branch module="cairo-1.16.0.tar.xz" version="1.16.0"
@@ -353,14 +369,13 @@ configurations of WebKit.
hash="sha256:e6f6c5cbecc405bb945c7cd15061276035ae3173bbb3bb25e8a916779c7f69cc"/>
<dependencies>
<dep package="libcroco"/>
+ <dep package="freetype"/>
</dependencies>
<after>
<!-- Circular dependency if we depend on meta-gtk-osx or meta-gtk-osx-gtk3 -->
<dep package="gtk+"/>
<dep package="gtk+-3.0"/>
<dep package="gtk+-3.14"/>
- <dep package="freetype-no-harfbuzz"/>
- <dep package="freetype"/>
</after>
</autotools>
diff --git a/modulesets-unstable/gtk-osx.modules b/modulesets-unstable/gtk-osx.modules
index 4bfe654..b36c989 100644
--- a/modulesets-unstable/gtk-osx.modules
+++ b/modulesets-unstable/gtk-osx.modules
@@ -88,8 +88,23 @@
</dependencies>
</meson>
+ <!-- To build Freetype *with* harfbuzz requires harfbuzz to be built
+ with freetype so we first have to build it *without* harfbuzz,
+ then build harfbuzz without cairo because cairo requires
+ harfbuzz. -->
+ <cmake id="freetype-no-harfbuzz" cmakeargs="-DCMAKE_DISABLE_FIND_PACKAGE_HarfBuzz=TRUE
-DCMAKE_DISABLE_FIND_PACKAGE_BZip2=TRUE -D BUILD_SHARED_LIBS=true -D CMAKE_BUILD_TYPE=Release">
+ <branch module="freetype/freetype2" repo="nongnu"/>
+ <dependencies>
+ <dep package="zlib"/>
+ </dependencies>
+ </cmake>
+
<meson id="harfbuzz-no-cairo" mesonargs="-Dcoretext=enabled -Ddocs=disabled">
<branch repo="github" module="harfbuzz/harfbuzz"/>
+ <dependencies>
+ <dep package="glib"/>
+ <dep package="freetype-no-harfbuzz"/>
+ </dependencies>
<after>
<dep package="icu"/>
<dep package="icu55"/>
@@ -118,6 +133,9 @@
</after>
</autotools>
+ <!-- cairo doesn't really need fontconfig, but if Pango finds
+ freetype it insists that it has to have fontconfig too and that
+ they are both built into cairo. -->
<autotools id="cairo"
autogenargs="--enable-pdf --enable-quartz --disable-xlib --without-x">
<branch repo="freedesktop-jralls" module="cairo" />
@@ -141,6 +159,9 @@
</after>
</meson>
+ <!-- This harfbuzz doesn't really need cairo, but if Pango is going
+ to use introspection it requires harfbuzz to have
+ introspection, and gobject-introspection needs cairo. -->
<meson id="harfbuzz" mesonargs="-Dcoretext=enabled -Ddocs=disabled">
<branch repo="github" module="harfbuzz/harfbuzz"/>
<dependencies>
diff --git a/modulesets/gtk-osx.modules b/modulesets/gtk-osx.modules
index 22bf54f..bd4f3a9 100644
--- a/modulesets/gtk-osx.modules
+++ b/modulesets/gtk-osx.modules
@@ -86,10 +86,22 @@
</dependencies>
</meson>
+ <!-- To build Freetype *with* harfbuzz requires harfbuzz to be built
+ with freetype so we first have to build it *without* harfbuzz,
+ then build harfbuzz without cairo because cairo requires
+ harfbuzz. -->
+ <cmake id="freetype-no-harfbuzz" cmakeargs="-DCMAKE_DISABLE_FIND_PACKAGE_HarfBuzz=TRUE
-DCMAKE_DISABLE_FIND_PACKAGE_BZip2=TRUE -D BUILD_SHARED_LIBS=true -D CMAKE_BUILD_TYPE=Release">
+ <branch module="freetype/freetype2" repo="nongnu"/>
+ <dependencies>
+ <dep package="zlib"/>
+ </dependencies>
+ </cmake>
+
<meson id="harfbuzz-no-cairo" mesonargs="-Dcoretext=enabled -Ddocs=disabled">
<branch repo="github" module="harfbuzz/harfbuzz" tag="2.7.1"/>
<dependencies>
<dep package="glib"/>
+ <dep package="freetype-no-harfbuzz"/>
</dependencies>
<after>
<dep package="icu"/>
@@ -120,6 +132,9 @@
</after>
</autotools>
+ <!-- cairo doesn't really need fontconfig, but if Pango finds
+ freetype it insists that it has to have fontconfig too and that
+ they are both built into cairo. -->
<autotools id="cairo"
autogenargs="--enable-pdf --enable-quartz --disable-xlib --without-x">
<branch repo="freedesktop" module="cairo" revision="1.16"/>
@@ -143,6 +158,9 @@
</after>
</meson>
+ <!-- This harfbuzz doesn't really need cairo, but if Pango is going
+ to use introspection it requires harfbuzz to have
+ introspection, and gobject-introspection needs cairo. -->
<meson id="harfbuzz" mesonargs="-Dcoretext=enabled -Ddocs=disabled">
<branch repo="github" module="harfbuzz/harfbuzz" tag="2.7.1"/>
<dependencies>
@@ -261,13 +279,12 @@
<branch module="librsvg" tag="librsvg-2-40"/>
<dependencies>
<dep package="libcroco"/>
+ <dep package="freetype"/>
</dependencies>
<after>
<!-- Circular dependency if we depend on meta-gtk-osx or meta-gtk-osx-gtk3 -->
<dep package="gtk+"/>
<dep package="gtk+-3.0"/>
- <dep package="freetype-no-harfbuzz"/>
- <dep package="freetype"/>
</after>
</autotools>
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]