<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>[194444] trunk/Tools</title>
</head>
<body>
<style type="text/css"><!--
#msg dl.meta { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dl.meta dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer, #logmsg { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; }
#msg dl a { font-weight: bold}
#msg dl a:link { color:#fc3; }
#msg dl a:active { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { overflow: auto; background: #ffc; border: 1px #fa0 solid; padding: 6px; }
#logmsg { background: #ffc; border: 1px #fa0 solid; padding: 1em 1em 0 1em; }
#logmsg p, #logmsg pre, #logmsg blockquote { margin: 0 0 1em 0; }
#logmsg p, #logmsg li, #logmsg dt, #logmsg dd { line-height: 14pt; }
#logmsg h1, #logmsg h2, #logmsg h3, #logmsg h4, #logmsg h5, #logmsg h6 { margin: .5em 0; }
#logmsg h1:first-child, #logmsg h2:first-child, #logmsg h3:first-child, #logmsg h4:first-child, #logmsg h5:first-child, #logmsg h6:first-child { margin-top: 0; }
#logmsg ul, #logmsg ol { padding: 0; list-style-position: inside; margin: 0 0 0 1em; }
#logmsg ul { text-indent: -1em; padding-left: 1em; }#logmsg ol { text-indent: -1.5em; padding-left: 1.5em; }
#logmsg > ul, #logmsg > ol { margin: 0 0 1em 0; }
#logmsg pre { background: #eee; padding: 1em; }
#logmsg blockquote { border: 1px solid #fa0; border-left-width: 10px; padding: 1em 1em 0 1em; background: white;}
#logmsg dl { margin: 0; }
#logmsg dt { font-weight: bold; }
#logmsg dd { margin: 0; padding: 0 0 0.5em 0; }
#logmsg dd:before { content:'\00bb';}
#logmsg table { border-spacing: 0px; border-collapse: collapse; border-top: 4px solid #fa0; border-bottom: 1px solid #fa0; background: #fff; }
#logmsg table th { text-align: left; font-weight: normal; padding: 0.2em 0.5em; border-top: 1px dotted #fa0; }
#logmsg table td { text-align: right; border-top: 1px dotted #fa0; padding: 0.2em 0.5em; }
#logmsg table thead th { text-align: center; border-bottom: 1px solid #fa0; }
#logmsg table th.Corner { text-align: left; }
#logmsg hr { border: none 0; border-top: 2px dashed #fa0; height: 1px; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<div id="msg">
<dl class="meta">
<dt>Revision</dt> <dd><a href="http://trac.webkit.org/projects/webkit/changeset/194444">194444</a></dd>
<dt>Author</dt> <dd>philn@webkit.org</dd>
<dt>Date</dt> <dd>2015-12-30 00:33:32 -0800 (Wed, 30 Dec 2015)</dd>
</dl>
<h3>Log Message</h3>
<pre>[Mac][GTK] Jhbuild support for OSX
https://bugs.webkit.org/show_bug.cgi?id=150799
Reviewed by Michael Catanzaro.
* gtk/install-dependencies: Install dependencies on OSX with Homebrew.
* gtk/jhbuild.modules: Moved platform-specific build settings in condition tags.
* gtk/patches/foxbntconfig-fix-osx-cache.diff: Added.
* gtk/jhbuildrc: GTK+ makeargs clean-up, the 3.0.12 hack is no longer needed.</pre>
<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkToolsChangeLog">trunk/Tools/ChangeLog</a></li>
<li><a href="#trunkToolsgtkinstalldependencies">trunk/Tools/gtk/install-dependencies</a></li>
<li><a href="#trunkToolsgtkjhbuildmodules">trunk/Tools/gtk/jhbuild.modules</a></li>
<li><a href="#trunkToolsgtkjhbuildrc">trunk/Tools/gtk/jhbuildrc</a></li>
</ul>
<h3>Added Paths</h3>
<ul>
<li><a href="#trunkToolsgtkpatchesfontconfigfixosxcachediff">trunk/Tools/gtk/patches/fontconfig-fix-osx-cache.diff</a></li>
</ul>
</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkToolsChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Tools/ChangeLog (194443 => 194444)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/ChangeLog        2015-12-30 08:31:15 UTC (rev 194443)
+++ trunk/Tools/ChangeLog        2015-12-30 08:33:32 UTC (rev 194444)
</span><span class="lines">@@ -1,3 +1,15 @@
</span><ins>+2015-12-30 Philippe Normand <pnormand@igalia.com>
+
+ [Mac][GTK] Jhbuild support for OSX
+ https://bugs.webkit.org/show_bug.cgi?id=150799
+
+ Reviewed by Michael Catanzaro.
+
+ * gtk/install-dependencies: Install dependencies on OSX with Homebrew.
+ * gtk/jhbuild.modules: Moved platform-specific build settings in condition tags.
+ * gtk/patches/foxbntconfig-fix-osx-cache.diff: Added.
+ * gtk/jhbuildrc: GTK+ makeargs clean-up, the 3.0.12 hack is no longer needed.
+
</ins><span class="cx"> 2015-12-28 Michael Catanzaro <mcatanzaro@igalia.com>
</span><span class="cx">
</span><span class="cx"> Unreviewed, move Sebastian Dröge to committers list
</span></span></pre></div>
<a id="trunkToolsgtkinstalldependencies"></a>
<div class="modfile"><h4>Modified: trunk/Tools/gtk/install-dependencies (194443 => 194444)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/gtk/install-dependencies        2015-12-30 08:31:15 UTC (rev 194443)
+++ trunk/Tools/gtk/install-dependencies        2015-12-30 08:33:32 UTC (rev 194444)
</span><span class="lines">@@ -37,9 +37,45 @@
</span><span class="cx"> exit 0
</span><span class="cx"> fi
</span><span class="cx">
</span><ins>+ if [ `uname` -eq "Darwin" ]
+ installDependenciesWithBrew
+ exit 0
+ fi
+
</ins><span class="cx"> printNotSupportedMessageAndExit
</span><span class="cx"> }
</span><span class="cx">
</span><ins>+function installDependenciesWithBrew {
+ brew &> /dev/null
+ if [ $? -gt 1 ]; then
+ echo "Please install HomeBrew. Instructions on http://brew.sh"
+ exit 1
+ fi
+
+ brew install autoconf \
+ automake \
+ bison \
+ cmake \
+ enchant \
+ flex \
+ gettext \
+ gobject-introspection \
+ icu4c \
+ intltool \
+ itstool \
+ libcroco \
+ libgcrypt \
+ libgpg-error \
+ libtiff \
+ libtool \
+ ninja \
+ pango \
+ pkg-config \
+ sqlite \
+ webp \
+ xz
+}
+
</ins><span class="cx"> function installDependenciesWithApt {
</span><span class="cx"> # These are dependencies necessary for building WebKitGTK+.
</span><span class="cx"> packages=" \
</span></span></pre></div>
<a id="trunkToolsgtkjhbuildmodules"></a>
<div class="modfile"><h4>Modified: trunk/Tools/gtk/jhbuild.modules (194443 => 194444)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/gtk/jhbuild.modules        2015-12-30 08:31:15 UTC (rev 194443)
+++ trunk/Tools/gtk/jhbuild.modules        2015-12-30 08:33:32 UTC (rev 194444)
</span><span class="lines">@@ -22,18 +22,23 @@
</span><span class="cx"> <dep package="gtk-doc"/>
</span><span class="cx"> <dep package="libsoup"/>
</span><span class="cx"> <dep package="atk"/>
</span><del>- <dep package="at-spi2-core"/>
- <dep package="at-spi2-atk"/>
</del><span class="cx"> <dep package="gstreamer"/>
</span><span class="cx"> <dep package="gst-plugins-base"/>
</span><span class="cx"> <dep package="gst-plugins-good"/>
</span><span class="cx"> <dep package="gst-plugins-bad"/>
</span><span class="cx"> <dep package="gst-libav"/>
</span><del>- <dep package="xserver"/>
- <dep package="mesa"/>
</del><span class="cx"> <dep package="openwebrtc"/>
</span><del>- <dep package="libseccomp"/>
</del><span class="cx"> <dep package="llvm"/>
</span><ins>+ <if condition-set="linux">
+ <dep package="xserver"/>
+ <dep package="mesa"/>
+ <dep package="libseccomp"/>
+ <dep package="at-spi2-core"/>
+ <dep package="at-spi2-atk"/>
+ </if>
+ <if condition-set="macos">
+ <dep package="gsettings-desktop-schemas"/>
+ </if>
</ins><span class="cx"> </dependencies>
</span><span class="cx"> </metamodule>
</span><span class="cx">
</span><span class="lines">@@ -67,9 +72,13 @@
</span><span class="cx"> <repository type="tarball" name="llvm.org"
</span><span class="cx"> href="http://llvm.org"/>
</span><span class="cx">
</span><del>- <autotools id="cairo"
- autogenargs="--enable-gl=yes --enable-egl=yes --enable-glx=yes ac_cv_func_rsvg_pixbuf_from_file=no"
- makeargs="">
</del><ins>+ <autotools id="cairo">
+ <if condition-set="linux">
+ <autogenargs value="--enable-gl=yes --enable-egl=yes --enable-glx=yes"/>
+ </if>
+ <if condition-set="macos">
+ <autogenargs value="ac_cv_func_rsvg_pixbuf_from_file=no --disable-lto"/>
+ </if>
</ins><span class="cx"> <dependencies>
</span><span class="cx"> <dep package="fontconfig"/>
</span><span class="cx"> <dep package="pixman"/>
</span><span class="lines">@@ -144,6 +153,9 @@
</span><span class="cx">
</span><span class="cx"> <autotools id="librsvg" autogen-sh="configure"
</span><span class="cx"> autogenargs="--disable-introspection --enable-pixbuf-loader --disable-gtk-theme">
</span><ins>+ <if condition-set="macos">
+ <autogenargs value="--disable-Bsymbolic"/>
+ </if>
</ins><span class="cx"> <dependencies>
</span><span class="cx"> <dep package="gdk-pixbuf"/>
</span><span class="cx"> <dep package="glib"/>
</span><span class="lines">@@ -159,10 +171,17 @@
</span><span class="cx">
</span><span class="cx"> <autotools id="gtk+" autogen-sh="configure"
</span><span class="cx"> autogenargs="--disable-introspection">
</span><ins>+ <if condition-set="macos">
+ <autogenargs value="--enable-x11-backend=no --enable-quartz-backend" />
+ <makeargs value="-j1" />
+ </if>
</ins><span class="cx"> <dependencies>
</span><span class="cx"> <dep package="glib"/>
</span><span class="cx"> <dep package="cairo"/>
</span><del>- <dep package="at-spi2-atk"/>
</del><ins>+ <dep package="atk"/>
+ <if condition-set="linux">
+ <dep package="at-spi2-atk"/>
+ </if>
</ins><span class="cx"> <dep package="gdk-pixbuf"/>
</span><span class="cx"> <dep package="pango"/>
</span><span class="cx"> </dependencies>
</span><span class="lines">@@ -185,6 +204,9 @@
</span><span class="cx"> </autotools>
</span><span class="cx">
</span><span class="cx"> <autotools id="glib-networking">
</span><ins>+ <if condition-set="macos">
+ <autogenargs value="--with-ca-certificates='/usr/local/etc/openssl/cert.pem' --without-pkcs11"/>
+ </if>
</ins><span class="cx"> <dependencies>
</span><span class="cx"> <dep package="glib"/>
</span><span class="cx"> </dependencies>
</span><span class="lines">@@ -196,6 +218,9 @@
</span><span class="cx">
</span><span class="cx"> <autotools id="libsoup"
</span><span class="cx"> autogenargs="--without-gnome --disable-introspection">
</span><ins>+ <if condition-set="macos">
+ <autogenargs value="--disable-tls-check"/>
+ </if>
</ins><span class="cx"> <dependencies>
</span><span class="cx"> <dep package="glib-networking"/>
</span><span class="cx"> </dependencies>
</span><span class="lines">@@ -207,6 +232,9 @@
</span><span class="cx"> <autotools id="fontconfig"
</span><span class="cx"> autogen-sh="configure"
</span><span class="cx"> autogenargs="--enable-libxml2">
</span><ins>+ <if condition-set="macos">
+ <autogenargs value="--with-add-fonts=/System/Library/Fonts,/Library/Fonts,~/Library/Fonts"/>
+ </if>
</ins><span class="cx"> <dependencies>
</span><span class="cx"> <dep package="freetype6"/>
</span><span class="cx"> <dep package="libxml2"/>
</span><span class="lines">@@ -214,7 +242,9 @@
</span><span class="cx"> <branch module="software/fontconfig/release/fontconfig-2.11.1.tar.gz" version="2.11.1"
</span><span class="cx"> repo="freedesktop.org"
</span><span class="cx"> hash="sha256:b6b066c7dce3f436fdc0dfbae9d36122b38094f4f53bd8dffd45e195b0540d8d"
</span><del>- md5sum="e75e303b4f7756c2b16203a57ac87eba"/>
</del><ins>+ md5sum="e75e303b4f7756c2b16203a57ac87eba">
+ <patch file="fontconfig-fix-osx-cache.diff" strip="1"/>
+ </branch>
</ins><span class="cx"> </autotools>
</span><span class="cx">
</span><span class="cx"> <autotools id="gnome-icon-theme" autogen-sh="configure">
</span><span class="lines">@@ -290,6 +320,10 @@
</span><span class="cx"> </autotools>
</span><span class="cx">
</span><span class="cx"> <autotools id="gstreamer" autogenargs="--disable-gtk-doc">
</span><ins>+ <if condition-set="macos">
+ <autogenargs value="--disable-introspection"/>
+ <makeargs value="CFLAGS+=-Wno-error"/>
+ </if>
</ins><span class="cx"> <branch module="gstreamer/gstreamer-1.4.4.tar.xz" version="1.4.4"
</span><span class="cx"> repo="gstreamer"
</span><span class="cx"> hash="sha256:f0e305d91a93d05bf9e332cd4256ca07d77f5186a4d73847b7ae6db218f2c237"
</span><span class="lines">@@ -299,6 +333,10 @@
</span><span class="cx"> <autotools id="gst-plugins-base"
</span><span class="cx"> autogen-sh="autogen.sh"
</span><span class="cx"> autogenargs="--disable-examples --disable-gtk-doc">
</span><ins>+ <if condition-set="macos">
+ <autogenargs value="--disable-introspection"/>
+ <makeargs value="CFLAGS+=-Wno-error"/>
+ </if>
</ins><span class="cx"> <dependencies>
</span><span class="cx"> <dep package="gstreamer"/>
</span><span class="cx"> </dependencies>
</span><span class="lines">@@ -311,6 +349,10 @@
</span><span class="cx"> </autotools>
</span><span class="cx">
</span><span class="cx"> <autotools id="gst-plugins-good" autogenargs="--disable-examples --disable-soup --disable-gtk-doc">
</span><ins>+ <if condition-set="macos">
+ <autogenargs value="--disable-introspection"/>
+ <makeargs value="CFLAGS+=-Wno-error OBJCFLAGS+=-Wno-error"/>
+ </if>
</ins><span class="cx"> <dependencies>
</span><span class="cx"> <dep package="gst-plugins-base"/>
</span><span class="cx"> </dependencies>
</span><span class="lines">@@ -323,6 +365,10 @@
</span><span class="cx"> </autotools>
</span><span class="cx">
</span><span class="cx"> <autotools id="gst-plugins-bad" autogenargs="--disable-examples --disable-gtk-doc">
</span><ins>+ <if condition-set="macos">
+ <autogenargs value="--disable-introspection"/>
+ <makeargs value="CFLAGS+=-Wno-error CXXFLAGS+=-Wno-error OBJCFLAGS+=-Wno-error"/>
+ </if>
</ins><span class="cx"> <dependencies>
</span><span class="cx"> <dep package="gst-plugins-base"/>
</span><span class="cx"> </dependencies>
</span><span class="lines">@@ -336,6 +382,9 @@
</span><span class="cx"> </autotools>
</span><span class="cx">
</span><span class="cx"> <autotools id="gst-libav" autogenargs="--with-libav-extra-configure='--disable-yasm' --disable-gtk-doc">
</span><ins>+ <if condition-set="macos">
+ <makeargs value="CFLAGS+=-Wno-error"/>
+ </if>
</ins><span class="cx"> <dependencies>
</span><span class="cx"> <dep package="gst-plugins-base"/>
</span><span class="cx"> </dependencies>
</span><span class="lines">@@ -358,6 +407,9 @@
</span><span class="cx"> </autotools>
</span><span class="cx">
</span><span class="cx"> <autotools id="gtk-doc" autogen-sh="configure">
</span><ins>+ <if condition-set="macos">
+ <autogenargs value="--with-xml-catalog=/usr/local/etc/xml/catalog"/>
+ </if>
</ins><span class="cx"> <dependencies>
</span><span class="cx"> <dep package="glib"/>
</span><span class="cx"> </dependencies>
</span><span class="lines">@@ -384,6 +436,9 @@
</span><span class="cx"> </autotools>
</span><span class="cx">
</span><span class="cx"> <autotools id="gst-plugins-openwebrtc" supports-parallel-builds="no" supports-non-srcdir-builds="no" autogen-sh="./autogen.sh; ./configure">
</span><ins>+ <if condition-set="macos">
+ <makeargs value="CFLAGS+=-Wno-error"/>
+ </if>
</ins><span class="cx"> <dependencies>
</span><span class="cx"> <dep package="gst-plugins-base"/>
</span><span class="cx"> <dep package="libusrsctp"/>
</span><span class="lines">@@ -399,6 +454,9 @@
</span><span class="cx"> </autotools>
</span><span class="cx">
</span><span class="cx"> <autotools id="openwebrtc" autogenargs="--enable-bridge=no --enable-owr-gst=yes">
</span><ins>+ <if condition-set="macos">
+ <makeargs value="CFLAGS+=-Wno-error"/>
+ </if>
</ins><span class="cx"> <dependencies>
</span><span class="cx"> <dep package="gst-plugins-openwebrtc"/>
</span><span class="cx"> <dep package="libnice"/>
</span><span class="lines">@@ -413,6 +471,16 @@
</span><span class="cx"> hash="sha256:ab45895f9dcdad1e140a3a79fd709f64b05ad7364e308c0e582c5b02e9cc3153"/>
</span><span class="cx"> </autotools>
</span><span class="cx">
</span><ins>+ <autotools id="gsettings-desktop-schemas" autogen-sh="configure">
+ <dependencies>
+ <dep package="glib"/>
+ </dependencies>
+ <branch module="/pub/GNOME/sources/gsettings-desktop-schemas/3.16/gsettings-desktop-schemas-3.16.1.tar.xz" version="3.16.1"
+ repo="ftp.gnome.org"
+ hash="sha256:74fe9fdad510c8a6666febeceb7ebafc581ef990b3afcc8c1e8b5d90b24b3461">
+ </branch>
+ </autotools>
+
</ins><span class="cx"> <!-- Dependencies listed below this point are not thought to affect test results, and are only
</span><span class="cx"> included because they themselves depend on other dependencies built by jhbuild. -->
</span><span class="cx">
</span></span></pre></div>
<a id="trunkToolsgtkjhbuildrc"></a>
<div class="modfile"><h4>Modified: trunk/Tools/gtk/jhbuildrc (194443 => 194444)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/gtk/jhbuildrc        2015-12-30 08:31:15 UTC (rev 194443)
+++ trunk/Tools/gtk/jhbuildrc        2015-12-30 08:33:32 UTC (rev 194444)
</span><span class="lines">@@ -26,9 +26,6 @@
</span><span class="cx"> sys.path = [__gtk_tools_directory] + sys.path
</span><span class="cx"> import common
</span><span class="cx">
</span><del>-# GTK+ 3.0.12 misses the -lm flag when linking the tests.
-module_makeargs['gtk+'] = 'LDFLAGS="-lm" ' + makeargs
-
</del><span class="cx"> # We always enable introspection so that we can sniff out problems with our
</span><span class="cx"> # annotations sooner rather than later.
</span><span class="cx"> autogenargs='--enable-introspection'
</span></span></pre></div>
<a id="trunkToolsgtkpatchesfontconfigfixosxcachediff"></a>
<div class="addfile"><h4>Added: trunk/Tools/gtk/patches/fontconfig-fix-osx-cache.diff (0 => 194444)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/gtk/patches/fontconfig-fix-osx-cache.diff         (rev 0)
+++ trunk/Tools/gtk/patches/fontconfig-fix-osx-cache.diff        2015-12-30 08:33:32 UTC (rev 194444)
</span><span class="lines">@@ -0,0 +1,207 @@
</span><ins>+diff --git a/fc-cache/fc-cache.c b/fc-cache/fc-cache.c
+index 99e0e9f..bf3b6b4 100644
+--- a/fc-cache/fc-cache.c
++++ b/fc-cache/fc-cache.c
+@@ -187,13 +187,8 @@ scanDirs (FcStrList *list, FcConfig *config, FcBool force, FcBool really_force,
+         
+         if (!cache)
+         {
+-         if (!recursive)
+-                cache = FcDirCacheRescan (dir, config);
+-         else
+-         {
+-                (*changed)++;
+-                cache = FcDirCacheRead (dir, FcTrue, config);
+-         }
++         (*changed)++;
++         cache = FcDirCacheRead (dir, FcTrue, config);
+          if (!cache)
+          {
+                 fprintf (stderr, "%s: error scanning\n", dir);
+@@ -391,7 +386,6 @@ main (int argc, char **argv)
+         ret += scanDirs (list, config, FcTrue, really_force, verbose, FcFalse, &changed, NULL);
+         FcStrListDone (list);
+ }
+- FcStrSetDestroy (updateDirs);
+
+ /*
+ * Try to create CACHEDIR.TAG anyway.
+diff --git a/fontconfig/fontconfig.h b/fontconfig/fontconfig.h
+index 2258251..d0b4e9e 100644
+--- a/fontconfig/fontconfig.h
++++ b/fontconfig/fontconfig.h
+@@ -541,9 +541,6 @@ FcDirSave (FcFontSet *set, FcStrSet *dirs, const FcChar8 *dir);
+
+ FcPublic FcCache *
+ FcDirCacheLoad (const FcChar8 *dir, FcConfig *config, FcChar8 **cache_file);
+-
+-FcPublic FcCache *
+-FcDirCacheRescan (const FcChar8 *dir, FcConfig *config);
+
+ FcPublic FcCache *
+ FcDirCacheRead (const FcChar8 *dir, FcBool force, FcConfig *config);
+diff --git a/src/fccache.c b/src/fccache.c
+index 5173e0b..10eacff 100644
+--- a/src/fccache.c
++++ b/src/fccache.c
+@@ -828,19 +828,6 @@ bail1:
+ return NULL;
+ }
+
+-FcCache *
+-FcDirCacheRebuild (FcCache *cache, struct stat *dir_stat, FcStrSet *dirs)
+-{
+- FcCache *new;
+- FcFontSet *set = FcFontSetDeserialize (FcCacheSet (cache));
+- const FcChar8 *dir = FcCacheDir (cache);
+-
+- new = FcDirCacheBuild (set, dir, dir_stat, dirs);
+- FcFontSetDestroy (set);
+-
+- return new;
+-}
+-
+ /* write serialized state to the cache file */
+ FcBool
+ FcDirCacheWrite (FcCache *cache, FcConfig *config)
+diff --git a/src/fcdir.c b/src/fcdir.c
+index 3bcd0b8..b040a28 100644
+--- a/src/fcdir.c
++++ b/src/fcdir.c
+@@ -130,12 +130,7 @@ FcFileScanConfig (FcFontSet        *set,
+ if (FcFileIsDir (file))
+         return FcStrSetAdd (dirs, file);
+ else
+- {
+-        if (set)
+-         return FcFileScanFontConfig (set, blanks, file, config);
+-        else
+-         return FcTrue;
+- }
++        return FcFileScanFontConfig (set, blanks, file, config);
+ }
+
+ FcBool
+@@ -311,45 +306,6 @@ FcDirCacheScan (const FcChar8 *dir, FcConfig *config)
+ return cache;
+ }
+
+-FcCache *
+-FcDirCacheRescan (const FcChar8 *dir, FcConfig *config)
+-{
+- FcCache *cache = FcDirCacheLoad (dir, config, NULL);
+- FcCache *new = NULL;
+- struct stat dir_stat;
+- FcStrSet *dirs;
+-
+- if (!cache)
+-        return NULL;
+- if (FcStatChecksum (dir, &dir_stat) < 0)
+-        goto bail;
+- dirs = FcStrSetCreate ();
+- if (!dirs)
+-        goto bail;
+-
+- /*
+- * Scan the dir
+- */
+- if (!FcDirScanConfig (NULL, dirs, NULL, dir, FcTrue, config))
+-        goto bail1;
+- /*
+- * Rebuild the cache object
+- */
+- new = FcDirCacheRebuild (cache, &dir_stat, dirs);
+- if (!new)
+-        goto bail1;
+- FcDirCacheUnload (cache);
+- /*
+- * Write out the cache file, ignoring any troubles
+- */
+- FcDirCacheWrite (new, config);
+-
+-bail1:
+- FcStrSetDestroy (dirs);
+-bail:
+- return new;
+-}
+-
+ /*
+ * Read (or construct) the cache for a directory
+ */
+diff --git a/src/fcfs.c b/src/fcfs.c
+index 21c6c7c..941abba 100644
+--- a/src/fcfs.c
++++ b/src/fcfs.c
+@@ -122,28 +122,6 @@ FcFontSetSerialize (FcSerialize *serialize, const FcFontSet * s)
+
+ return s_serialize;
+ }
+-
+-FcFontSet *
+-FcFontSetDeserialize (const FcFontSet *set)
+-{
+- int i;
+- FcFontSet *new = FcFontSetCreate ();
+-
+- if (!new)
+-        return NULL;
+- for (i = 0; i < set->nfont; i++)
+- {
+-        if (!FcFontSetAdd (new, FcPatternDuplicate (FcFontSetFont (set, i))))
+-         goto bail;
+- }
+-
+- return new;
+-bail:
+- FcFontSetDestroy (new);
+-
+- return NULL;
+-}
+-
+ #define __fcfs__
+ #include "fcaliastail.h"
+ #undef __fcfs__
+diff --git a/src/fcint.h b/src/fcint.h
+index cdf2dab..362ea6f 100644
+--- a/src/fcint.h
++++ b/src/fcint.h
+@@ -567,9 +567,6 @@ FcDirCacheScan (const FcChar8 *dir, FcConfig *config);
+ FcPrivate FcCache *
+ FcDirCacheBuild (FcFontSet *set, const FcChar8 *dir, struct stat *dir_stat, FcStrSet *dirs);
+
+-FcPrivate FcCache *
+-FcDirCacheRebuild (FcCache *cache, struct stat *dir_stat, FcStrSet *dirs);
+-
+ FcPrivate FcBool
+ FcDirCacheWrite (FcCache *cache, FcConfig *config);
+
+@@ -841,9 +838,6 @@ FcFontSetSerializeAlloc (FcSerialize *serialize, const FcFontSet *s);
+ FcPrivate FcFontSet *
+ FcFontSetSerialize (FcSerialize *serialize, const FcFontSet * s);
+
+-FcPrivate FcFontSet *
+-FcFontSetDeserialize (const FcFontSet *set);
+-
+ /* fchash.c */
+ FcPrivate FcChar8 *
+ FcHashGetSHA256Digest (const FcChar8 *input_strings,
+diff --git a/src/fcpat.c b/src/fcpat.c
+index 986cca3..0614ac2 100644
+--- a/src/fcpat.c
++++ b/src/fcpat.c
+@@ -33,7 +33,6 @@ FcPatternCreate (void)
+ p = (FcPattern *) malloc (sizeof (FcPattern));
+ if (!p)
+         return 0;
+- memset (p, 0, sizeof (FcPattern));
+ p->num = 0;
+ p->size = 0;
+ p->elts_offset = FcPtrToOffset (p, NULL);
+@@ -1311,7 +1310,6 @@ FcValueListSerialize (FcSerialize *serialize, const FcValueList *vl)
+ }
+ return head_serialized;
+ }
+-
+ #define __fcpat__
+ #include "fcaliastail.h"
+ #include "fcftaliastail.h"
</ins><span class="cx">\ No newline at end of file
</span></span></pre>
</div>
</div>
</body>
</html>