diff options
author | Martchus | 2015-12-24 00:34:39 +0100 |
---|---|---|
committer | Martchus | 2015-12-24 00:34:39 +0100 |
commit | f465170ec213d58662109638150fb41df931cee3 (patch) | |
tree | 0d9576250249e908e6f9e0fe1a3085c090936e33 | |
download | aur-f465170ec213d58662109638150fb41df931cee3.tar.gz |
added bootstrap package for mingw-w64-freetype2
- mingw-w64-freetype2 without mingw-w64-harfbuzz dependency
- building mingw-w64-fontconfig with this package will fail (in clean chroot)
-rw-r--r-- | .SRCINFO | 35 | ||||
-rw-r--r-- | 0001-Enable-table-validation-modules.patch | 34 | ||||
-rw-r--r-- | 0002-Enable-subpixel-rendering.patch | 25 | ||||
-rw-r--r-- | 0003-Enable-subpixel-hinting.patch | 25 | ||||
-rw-r--r-- | 0004-Mask-subpixel-hinting-with-an-env-var.patch | 31 | ||||
-rw-r--r-- | PKGBUILD | 61 |
6 files changed, 211 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO new file mode 100644 index 000000000000..9c25f92c9787 --- /dev/null +++ b/.SRCINFO @@ -0,0 +1,35 @@ +# Generated by mksrcinfo v8 +# Wed Dec 23 23:33:28 UTC 2015 +pkgbase = mingw-w64-freetype2-bootstrap + pkgdesc = TrueType font rendering library (mingw-w64 bootstrap) + 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-crt + depends = mingw-w64-zlib + depends = mingw-w64-bzip2 + provides = mingw-w64-freetype2 + conflicts = mingw-w64-freetype2 + options = !strip + options = !buildflags + options = !libtool + options = staticlibs + 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-bootstrap + 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 new file mode 100644 index 000000000000..694ef37524a1 --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,61 @@ +# Maintainer: Martchus <martchus@gmx.net> +pkgname=mingw-w64-freetype2-bootstrap +pkgver=2.6.2 +pkgrel=1 +pkgdesc="TrueType font rendering library (mingw-w64 bootstrap)" +arch=('any') +url="http://www.freetype.org/" +license=('GPL') +# 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-bzip2) +makedepends=(mingw-w64-gcc mingw-w64-configure) +provides=(${pkgname%-bootstrap}) +conflicts=(${pkgname%-bootstrap}) +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) +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 +} + +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 +} |