summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorSchala2017-06-09 19:58:50 -0700
committerSchala2017-06-09 19:58:50 -0700
commite3ab3fbf9de007a292938aabf92eb9d395916d4a (patch)
treed3f50ec3619b04ae3a5a23a96cf957fe0864d221
parent2aeb8755b447b400cc8f9484e88311a01919ef7c (diff)
downloadaur-e3ab3fbf9de007a292938aabf92eb9d395916d4a.tar.gz
fix cache update
-rw-r--r--.SRCINFO6
-rw-r--r--PKGBUILD9
-rw-r--r--fix-cache-update.patch59
3 files changed, 69 insertions, 5 deletions
diff --git a/.SRCINFO b/.SRCINFO
index bac71f544378..ffb6d0c07e9f 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,9 +1,9 @@
# Generated by mksrcinfo v8
-# Wed May 31 22:48:06 UTC 2017
+# Sat Jun 10 02:58:34 UTC 2017
pkgbase = mingw-w64-fontconfig
pkgdesc = A library for configuring and customizing font access (mingw-w64)
pkgver = 2.12.3
- pkgrel = 1
+ pkgrel = 2
url = https://www.freedesktop.org/wiki/Software/fontconfig/
arch = any
license = custom
@@ -21,9 +21,11 @@ pkgbase = mingw-w64-fontconfig
source = git+https://anongit.freedesktop.org/git/fontconfig#commit=690f822a1b26b089d86e9843746cab80f3c07fe3
source = 0001-fix-config-linking.all.patch
source = 0007-pkgconfig.mingw.patch
+ source = fix-cache-update.patch
sha256sums = SKIP
sha256sums = 1266d4bbd8270f013fee2401c890f0251babf50a175a69d681d3a6af5003c899
sha256sums = af373531873da46d0356305da5444c1ec74f443cd2635ea2db6b7dadd1561f5b
+ sha256sums = f0d9cab1cc7f6c45303f1ff31c6c52641a2101b4b3c4788fe89c2748ffa48621
pkgname = mingw-w64-fontconfig
diff --git a/PKGBUILD b/PKGBUILD
index d11641afbbd7..9cb79365799f 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,6 +1,6 @@
pkgname=mingw-w64-fontconfig
pkgver=2.12.3
-pkgrel=1
+pkgrel=2
_commit=690f822a1b26b089d86e9843746cab80f3c07fe3 # tags/2.12.3^0
pkgdesc="A library for configuring and customizing font access (mingw-w64)"
arch=(any)
@@ -11,10 +11,12 @@ depends=(mingw-w64-expat mingw-w64-freetype2)
options=(staticlibs !strip !buildflags)
source=("git+https://anongit.freedesktop.org/git/fontconfig#commit=$_commit"
"0001-fix-config-linking.all.patch"
-"0007-pkgconfig.mingw.patch")
+"0007-pkgconfig.mingw.patch"
+"fix-cache-update.patch")
sha256sums=('SKIP'
'1266d4bbd8270f013fee2401c890f0251babf50a175a69d681d3a6af5003c899'
- 'af373531873da46d0356305da5444c1ec74f443cd2635ea2db6b7dadd1561f5b')
+ 'af373531873da46d0356305da5444c1ec74f443cd2635ea2db6b7dadd1561f5b'
+ 'f0d9cab1cc7f6c45303f1ff31c6c52641a2101b4b3c4788fe89c2748ffa48621')
_architectures="i686-w64-mingw32 x86_64-w64-mingw32"
@@ -25,6 +27,7 @@ pkgver() {
prepare() {
cd fontconfig
+ patch -p1 -i ${srcdir}/fix-cache-update.patch
patch -p1 -i ${srcdir}/0001-fix-config-linking.all.patch
patch -p1 -i ${srcdir}/0007-pkgconfig.mingw.patch
NOCONFIGURE=1 ./autogen.sh
diff --git a/fix-cache-update.patch b/fix-cache-update.patch
new file mode 100644
index 000000000000..1f29a8777a6b
--- /dev/null
+++ b/fix-cache-update.patch
@@ -0,0 +1,59 @@
+From 79058f4e911487275323e93146e1e93ad15afcd8 Mon Sep 17 00:00:00 2001
+From: Masamichi Hosoda <trueroad@trueroad.jp>
+Date: Wed, 11 Jan 2017 20:42:56 +0900
+Subject: Bug 99360 - Fix cache file update on MinGW
+
+On Windows, opened or locked files cannot be removed.
+Since fontconfig locked an old cache file while updating the file,
+fontconfig failed to replace the file with updated file on Windows.
+
+This patch makes fontconfig does not lock the old cache file
+while updating it on Windows.
+
+diff --git a/src/fcdir.c b/src/fcdir.c
+index fd62a34..c8aaf54 100644
+--- a/src/fcdir.c
++++ b/src/fcdir.c
+@@ -362,7 +362,9 @@ FcDirCacheScan (const FcChar8 *dir, FcConfig *config)
+ if (!dirs)
+ goto bail1;
+
++#ifndef _WIN32
+ fd = FcDirCacheLock (dir, config);
++#endif
+ /*
+ * Scan the dir
+ */
+@@ -382,7 +384,9 @@ FcDirCacheScan (const FcChar8 *dir, FcConfig *config)
+ FcDirCacheWrite (cache, config);
+
+ bail2:
++#ifndef _WIN32
+ FcDirCacheUnlock (fd);
++#endif
+ FcStrSetDestroy (dirs);
+ bail1:
+ FcFontSetDestroy (set);
+@@ -417,7 +421,9 @@ FcDirCacheRescan (const FcChar8 *dir, FcConfig *config)
+ if (!dirs)
+ goto bail;
+
++#ifndef _WIN32
+ fd = FcDirCacheLock (dir, config);
++#endif
+ /*
+ * Scan the dir
+ */
+@@ -436,7 +442,9 @@ FcDirCacheRescan (const FcChar8 *dir, FcConfig *config)
+ FcDirCacheWrite (new, config);
+
+ bail1:
++#ifndef _WIN32
+ FcDirCacheUnlock (fd);
++#endif
+ FcStrSetDestroy (dirs);
+ bail:
+ if (d)
+--
+cgit v0.10.2
+