added bootstrap package for mingw-w64-freetype2

This commit is contained in:
Martchus 2015-12-24 00:25:30 +01:00
parent 2d820ff670
commit ece9fc05b1
7 changed files with 187 additions and 6 deletions

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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
}

View File

@ -1,7 +1,7 @@
# Maintainer: Martchus <martchus@gmx.net>
pkgname=mingw-w64-freetype2
pkgver=2.6.2
pkgrel=1
pkgrel=2
pkgdesc="TrueType font rendering library (mingw-w64)"
arch=('any')
url="http://www.freetype.org/"
@ -10,9 +10,9 @@ license=('GPL')
# 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)
provides=($pkgname-bootstrap)
replaces=($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
@ -51,7 +51,7 @@ build() {
done
}
package () {
package() {
for _arch in ${_architectures}; do
cd "${srcdir}/freetype-${pkgver}/build-${_arch}"
make DESTDIR="${pkgdir}" install

View File

@ -66,4 +66,9 @@ OTHER_FILES += \
freetype2/mingw-w64/0001-Enable-table-validation-modules.patch \
freetype2/mingw-w64/0002-Enable-subpixel-rendering.patch \
freetype2/mingw-w64/0003-Enable-subpixel-hinting.patch \
freetype2/mingw-w64/0004-Mask-subpixel-hinting-with-an-env-var.patch
freetype2/mingw-w64/0004-Mask-subpixel-hinting-with-an-env-var.patch \
freetype2/mingw-w64-bootstrap/PKGBUILD \
freetype2/mingw-w64-bootstrap/0001-Enable-table-validation-modules.patch \
freetype2/mingw-w64-bootstrap/0002-Enable-subpixel-rendering.patch \
freetype2/mingw-w64-bootstrap/0003-Enable-subpixel-hinting.patch \
freetype2/mingw-w64-bootstrap/0004-Mask-subpixel-hinting-with-an-env-var.patch