[am@mobile freetype]$ cat freetype.recipe
#
# Copyright (c) 2004-2007 rPath, Inc.
# This file is distributed under the terms of the MIT License.
# A copy is available at http://www.rpath.com/permanent/mit-license.html
#
loadSuperClass('rpmpackage')
class Freetype(RPMPackageRecipe, AutoPackageRecipe):
name = 'freetype'
version = '2.3.2'
buildRequires = [ 'libX11:devel', 'zlib:devel' ]
rpmRelease = '1.fc7'
rpmPatches = [
# Enable otvalid and gxvalid modules
'freetype-2.2.1-enable-valid.patch',
# Fix multilib conflicts
'freetype-multilib.patch',
# Fix crash https://bugs.freedesktop.org/show_bug.cgi?id=6841
'freetype-2.2.1-memcpy-fix.patch',
]
# If you have a license from Apple, you can turn this on and rebuild
with_bytecode_interp = False
with_subpixel_rendering = False
if with_bytecode_interp:
rpmPatches.append('freetype-2.1.10-enable-ft2-bci.patch')
if with_subpixel_rendering:
rpmPatches.append('freetype-2.3.0-enable-spr.patch')
def unpack(r):
r.macros.site = 'mirror://sourceforge/%(name)s'
r.addArchive('%(site)s/')
r.addArchive('%(site)s/freetype-doc-%(version)s.tar.bz2')
r.addArchive('%(site)s/ft2demos-%(version)s.tar.bz2', dir=r.theMainDir)
r.addSource('ftconfig-multilib.h')
for patch in r.rpmPatches:
r.addPatch(patch, rpm=r.srpm)
# Add -lm when linking X demos
r.addPatch('ft2demos-2.1.9-mathlib.patch',
dir='ft2demos-%(version)s', rpm=r.srpm)
r.addPatch('http://aur.archlinux.org/packages/freetype2-cleartype/freetype2-cleartype/freetype-2.2.1-subpixel-disable-quantization.diff')
def configure(r):
r.Configure('--disable-static')
def make(r):
r.Make()
# Make demos
r.Make('TOP_DIR=".."', dir='ft2demos-%(version)s')
def makeinstall(r):
r.MakeInstall()
# Install demos
demos = (
# X11
'ftgamma', 'ftmulti', 'ftstring', 'fttimer', 'ftview',
# Console
'ftbench', 'ftchkwd', 'ftdump', 'ftlint', 'ftmemchk', 'ftvalid',
)
for ftdemo in demos:
r.Run('builds/unix/libtool --mode=install install -m 755 '
'ft2demos-%(version)s/bin/'+ftdemo+' %(destdir)s/%(bindir)s/')
# Fix multilib issues
r.macros.wordsize = '32'
if Arch.x86_64:
r.macros.wordsize = '64'
r.Move('%(includedir)s/freetype2/freetype/config/ftconfig.h',
'%(includedir)s/freetype2/freetype/config/ftconfig-%(wordsize)s.h')
r.Install('ftconfig-multilib.h',
'%(includedir)s/freetype2/freetype/config/ftconfig.h',
component='devellib')
------------------------------------------
[am@mobile freetype]$ cat ../libXft/libXft.recipe
#
# Copyright (c) 2005-2006 rPath, Inc.
# This file is distributed under the terms of the MIT License.
# A copy is available at http://www.rpath.com/permanent/mit-license.html
#
loadSuperClass('xorgpackage.recipe')
class LibXft(XorgPackageRecipe):
name = 'libXft'
version = '2.1.12'
component = 'lib'
buildRequires = [ 'fontconfig:devel', 'freetype:devel', 'libXrender:devel',
'zlib:devel', 'expat:devel' ]
def unpack(r):
r.addArchive('http://xorg.freedesktop.org/releases/individual/%(component)s/%(name)s-%(version)s.tar.bz2')
r.addPatch('http://aur.archlinux.org/packages/libxft-cleartype/libxft-cleartype/libXft-2.1.10-lcd-cleartype.diff')
def policy(r):
for requirement in ('fontconfig:devel', 'freetype:devel',
'libXrender:devel', 'xproto:devel'):
r.Requires(requirement, '%(libdir)s/pkgconfig/xft.pc')
-----------------------------------------------------------
[am@mobile freetype]$ cat ../cairo/cairo.recipe
#
# Copyright (c) 2006-2007 rPath, Inc.
# This file is distributed under the terms of the MIT License.
# A copy is available at http://www.rpath.com/permanent/mit-license.html
#
class Cairo(AutoPackageRecipe):
name = 'cairo'
version = '1.4.0'
buildRequires = [ 'fontconfig:devel', 'freetype:devel', 'libpng:devel',
'zlib:devel', 'gcc-c++:runtime', 'libXau:devel', 'libxml2:devel',
'libstdc++:devel', 'pkgconfig:devel', 'libX11:devel',
'libICE:devel','libSM:devel', 'libXdmcp:devel',
'libXrender:devel', 'pkgconfig:devel', 'expat:devel' ]
def unpack(r):
r.addArchive('http://cairographics.org/releases/')
r.addPatch('http://aur.archlinux.org/packages/cairo-cleartype/cairo-cleartype/cairo-1.2.4-lcd-cleartype-like.diff')
def configure(r):
r.Configure('-enable-xlib=yes -enable-xlib-xrender=yes --enable-svg=yes')
[am@mobile freetype]$