summarylogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.SRCINFO18
-rw-r--r--0001-Enable-table-validation-modules.patch34
-rw-r--r--0002-Enable-subpixel-rendering.patch25
-rw-r--r--0003-Enable-subpixel-hinting.patch25
-rw-r--r--0004-Mask-subpixel-hinting-with-an-env-var.patch31
-rw-r--r--PKGBUILD60
6 files changed, 172 insertions, 21 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 9c67c648785c..e2ea351e3ff2 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,14 +1,14 @@
pkgbase = mingw-w64-freetype2
pkgdesc = TrueType font rendering library (mingw-w64)
- pkgver = 2.6
+ pkgver = 2.6.2
pkgrel = 1
url = http://www.freetype.org/
arch = any
license = GPL
makedepends = mingw-w64-gcc
makedepends = mingw-w64-configure
- depends = mingw-w64-zlib
depends = mingw-w64-crt
+ depends = mingw-w64-zlib
depends = mingw-w64-harfbuzz
depends = mingw-w64-bzip2
provides = mingw-w64-freetype
@@ -18,8 +18,18 @@ pkgbase = mingw-w64-freetype2
options = !buildflags
options = !libtool
options = staticlibs
- source = http://download.savannah.gnu.org/releases/freetype/freetype-2.6.tar.gz
- sha512sums = fd0337b2cdf4e1a3a79fc8bd55a572b7276a7d8b6897cbfe6c04a2c03672fd835f51d7b986e44731edbdda42cb10e69eb56d5b1a32f9acf95224171f6d86259f
+ source = http://download.savannah.gnu.org/releases/freetype/freetype-2.6.2.tar.bz2
+ source = http://download.savannah.gnu.org/releases/freetype/freetype-2.6.2.tar.bz2.sig
+ source = 0001-Enable-table-validation-modules.patch
+ source = 0002-Enable-subpixel-rendering.patch
+ source = 0003-Enable-subpixel-hinting.patch
+ source = 0004-Mask-subpixel-hinting-with-an-env-var.patch
+ sha1sums = 29c22b85b77cb22cf95c13e7062e21f39fe6b17a
+ sha1sums = SKIP
+ sha1sums = 1c7bc438df0428a63f881e7e4343b22c5b09ecb1
+ sha1sums = e2d2b8c4847ab9cfd497179c7140835e99ece711
+ sha1sums = ebe3d7a6fc41304a77c23cb56e94dc718146d963
+ sha1sums = f50c70080f3fbee45b9c4264d8ae37eb4f1ac335
pkgname = mingw-w64-freetype2
diff --git a/0001-Enable-table-validation-modules.patch b/0001-Enable-table-validation-modules.patch
new file mode 100644
index 000000000000..4ed7dd81b173
--- /dev/null
+++ b/0001-Enable-table-validation-modules.patch
@@ -0,0 +1,34 @@
+From 27f765b5f41638de36de728e9018a1400b0be615 Mon Sep 17 00:00:00 2001
+From: "Jan Alexander Steffens (heftig)" <jan.steffens@gmail.com>
+Date: Tue, 23 Jun 2015 08:40:29 +0200
+Subject: [PATCH 1/4] Enable table validation modules
+
+---
+ modules.cfg | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/modules.cfg b/modules.cfg
+index 2984e51..a5db21d 100644
+--- a/modules.cfg
++++ b/modules.cfg
+@@ -110,7 +110,7 @@ RASTER_MODULES += smooth
+ AUX_MODULES += cache
+
+ # TrueType GX/AAT table validation. Needs ftgxval.c below.
+-# AUX_MODULES += gxvalid
++AUX_MODULES += gxvalid
+
+ # Support for streams compressed with gzip (files with suffix .gz).
+ #
+@@ -129,7 +129,7 @@ AUX_MODULES += bzip2
+
+ # OpenType table validation. Needs ftotval.c below.
+ #
+-# AUX_MODULES += otvalid
++AUX_MODULES += otvalid
+
+ # Auxiliary PostScript driver component to share common code.
+ #
+--
+2.6.0
+
diff --git a/0002-Enable-subpixel-rendering.patch b/0002-Enable-subpixel-rendering.patch
new file mode 100644
index 000000000000..acc0475c0bd7
--- /dev/null
+++ b/0002-Enable-subpixel-rendering.patch
@@ -0,0 +1,25 @@
+From 27d96091b2bb0a825cbd62a332ef918f39c6126f Mon Sep 17 00:00:00 2001
+From: "Jan Alexander Steffens (heftig)" <jan.steffens@gmail.com>
+Date: Tue, 23 Jun 2015 08:43:07 +0200
+Subject: [PATCH 2/4] Enable subpixel rendering
+
+---
+ include/freetype/config/ftoption.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/include/freetype/config/ftoption.h b/include/freetype/config/ftoption.h
+index 4970945..ab407e3 100644
+--- a/include/freetype/config/ftoption.h
++++ b/include/freetype/config/ftoption.h
+@@ -92,7 +92,7 @@ FT_BEGIN_HEADER
+ /* This is done to allow FreeType clients to run unmodified, forcing */
+ /* them to display normal gray-level anti-aliased glyphs. */
+ /* */
+-/* #define FT_CONFIG_OPTION_SUBPIXEL_RENDERING */
++#define FT_CONFIG_OPTION_SUBPIXEL_RENDERING
+
+
+ /*************************************************************************/
+--
+2.6.0
+
diff --git a/0003-Enable-subpixel-hinting.patch b/0003-Enable-subpixel-hinting.patch
new file mode 100644
index 000000000000..00a5c2f79f3b
--- /dev/null
+++ b/0003-Enable-subpixel-hinting.patch
@@ -0,0 +1,25 @@
+From f96a1d21d787b173d6293330fbf782b977194aa7 Mon Sep 17 00:00:00 2001
+From: "Jan Alexander Steffens (heftig)" <jan.steffens@gmail.com>
+Date: Tue, 23 Jun 2015 08:43:57 +0200
+Subject: [PATCH 3/4] Enable subpixel hinting
+
+---
+ include/freetype/config/ftoption.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/include/freetype/config/ftoption.h b/include/freetype/config/ftoption.h
+index ab407e3..a2eab6a 100644
+--- a/include/freetype/config/ftoption.h
++++ b/include/freetype/config/ftoption.h
+@@ -602,7 +602,7 @@ FT_BEGIN_HEADER
+ /* This option requires TT_CONFIG_OPTION_BYTECODE_INTERPRETER to be */
+ /* defined. */
+ /* */
+-/* #define TT_CONFIG_OPTION_SUBPIXEL_HINTING */
++#define TT_CONFIG_OPTION_SUBPIXEL_HINTING
+
+
+ /*************************************************************************/
+--
+2.6.0
+
diff --git a/0004-Mask-subpixel-hinting-with-an-env-var.patch b/0004-Mask-subpixel-hinting-with-an-env-var.patch
new file mode 100644
index 000000000000..ec8910488cb3
--- /dev/null
+++ b/0004-Mask-subpixel-hinting-with-an-env-var.patch
@@ -0,0 +1,31 @@
+From bb5ece9c6773145c8342107bd32fcacbc4b212ab Mon Sep 17 00:00:00 2001
+From: "Jan Alexander Steffens (heftig)" <jan.steffens@gmail.com>
+Date: Tue, 23 Jun 2015 08:34:54 +0200
+Subject: [PATCH 4/4] Mask subpixel hinting with an env var
+
+---
+ src/truetype/ttobjs.c | 7 ++++---
+ 1 file changed, 4 insertions(+), 3 deletions(-)
+
+diff --git a/src/truetype/ttobjs.c b/src/truetype/ttobjs.c
+index 6060d6f..3fa98e7 100644
+--- a/src/truetype/ttobjs.c
++++ b/src/truetype/ttobjs.c
+@@ -1302,10 +1302,11 @@
+ TT_Driver driver = (TT_Driver)ttdriver;
+
+ #ifdef TT_CONFIG_OPTION_SUBPIXEL_HINTING
+- driver->interpreter_version = TT_INTERPRETER_VERSION_38;
+-#else
+- driver->interpreter_version = TT_INTERPRETER_VERSION_35;
++ if ( getenv( "FT2_SUBPIXEL_HINTING" ) )
++ driver->interpreter_version = TT_INTERPRETER_VERSION_38;
++ else
+ #endif
++ driver->interpreter_version = TT_INTERPRETER_VERSION_35;
+
+ #else /* !TT_USE_BYTECODE_INTERPRETER */
+
+--
+2.6.0
+
diff --git a/PKGBUILD b/PKGBUILD
index 3b22b13684a3..caf4d5a0bc47 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,36 +1,62 @@
+# Maintainer: Martchus <martchus@gmx.net>
pkgname=mingw-w64-freetype2
-pkgver=2.6
+pkgver=2.6.2
pkgrel=1
pkgdesc="TrueType font rendering library (mingw-w64)"
arch=('any')
url="http://www.freetype.org/"
license=('GPL')
-depends=(mingw-w64-zlib mingw-w64-crt mingw-w64-harfbuzz mingw-w64-bzip2)
+# adding harfbuzz for improved OpenType features auto-hinting
+# introduces a cycle dep to harfbuzz depending on freetype wanted by upstream
+depends=(mingw-w64-crt mingw-w64-zlib mingw-w64-harfbuzz mingw-w64-bzip2)
makedepends=(mingw-w64-gcc mingw-w64-configure)
provides=(mingw-w64-freetype)
replaces=(mingw-w64-freetype)
conflicts=(mingw-w64-freetype)
-source=(http://download.savannah.gnu.org/releases/freetype/freetype-$pkgver.tar.gz)
+source=(http://download.savannah.gnu.org/releases/freetype/freetype-${pkgver}.tar.bz2{,.sig}
+ 0001-Enable-table-validation-modules.patch
+ 0002-Enable-subpixel-rendering.patch
+ 0003-Enable-subpixel-hinting.patch
+ 0004-Mask-subpixel-hinting-with-an-env-var.patch)
options=(!strip !buildflags !libtool staticlibs)
-sha512sums=('fd0337b2cdf4e1a3a79fc8bd55a572b7276a7d8b6897cbfe6c04a2c03672fd835f51d7b986e44731edbdda42cb10e69eb56d5b1a32f9acf95224171f6d86259f')
+sha1sums=('29c22b85b77cb22cf95c13e7062e21f39fe6b17a'
+ 'SKIP'
+ '1c7bc438df0428a63f881e7e4343b22c5b09ecb1'
+ 'e2d2b8c4847ab9cfd497179c7140835e99ece711'
+ 'ebe3d7a6fc41304a77c23cb56e94dc718146d963'
+ 'f50c70080f3fbee45b9c4264d8ae37eb4f1ac335')
+validpgpkeys=('58E0C111E39F5408C5D3EC76C1A60EACE707FDA5')
_architectures="i686-w64-mingw32 x86_64-w64-mingw32"
+prepare() {
+ cd "${srcdir}/freetype-${pkgver}"
+ patch -Np1 -i "${srcdir}/0001-Enable-table-validation-modules.patch"
+ patch -Np1 -i "${srcdir}/0002-Enable-subpixel-rendering.patch"
+
+ # https://bugs.archlinux.org/task/35274
+ patch -Np1 -i "${srcdir}/0003-Enable-subpixel-hinting.patch"
+ # Provide a way to enable the above patch at runtime.
+ # Hopefully just a temporary measure until fontconfig picks up
+ # the necessary configurables.
+ patch -Np1 -i "${srcdir}/0004-Mask-subpixel-hinting-with-an-env-var.patch"
+}
+
build() {
- for _arch in ${_architectures}; do
- mkdir -p "${srcdir}/freetype-${pkgver}/build-${_arch}"
- cd "${srcdir}/freetype-${pkgver}/build-${_arch}"
- ${_arch}-configure --with-zlib=/usr/${_arch} --without-png
- make
- done
+ for _arch in ${_architectures}; do
+ mkdir -p "${srcdir}/freetype-${pkgver}/build-${_arch}"
+ cd "${srcdir}/freetype-${pkgver}/build-${_arch}"
+ ${_arch}-configure --with-zlib=/usr/${_arch} --without-png
+ make
+ done
}
package () {
- for _arch in ${_architectures}; do
- cd "${srcdir}/freetype-${pkgver}/build-${_arch}"
- make DESTDIR="${pkgdir}" install
- rm -rf "${pkgdir}/usr/${_arch}/share/"
- ${_arch}-strip -g "${pkgdir}/usr/${_arch}/lib/"*.a
- ${_arch}-strip --strip-unneeded "$pkgdir"/usr/${_arch}/bin/*.dll
- done
+ for _arch in ${_architectures}; do
+ cd "${srcdir}/freetype-${pkgver}/build-${_arch}"
+ make DESTDIR="${pkgdir}" install
+ rm -rf "${pkgdir}/usr/${_arch}/share/"
+ ${_arch}-strip -g "${pkgdir}/usr/${_arch}/lib/"*.a
+ ${_arch}-strip --strip-unneeded "$pkgdir"/usr/${_arch}/bin/*.dll
+ done
}