the Fink project is an effort to port
popular Unix programs to Mac OS X
Package: freetype219
Version: 2.4.6
Revision: 1
BuildDepends: <<
bzip2-dev,
fink (>= 0.24.12-1),
fink-package-precedence
<<
Depends: %N-shlibs (= %v-%r)
BuildConflicts: make (<= 3.79.1-3)
Conflicts: freetype219-hinting
Replaces: freetype219-hinting, %N-default
BuildDependsOnly: True
Source: http://download.savannah.gnu.org/releases/freetype/freetype-%v.tar.bz2
Source-MD5: 5e6510613f612809d2d7862592b92ab7
Source2: mirror:debian:pool/main/f/freetype/freetype_2.4.6-2.diff.gz
Source2-MD5: 3c738acba25b3de4635b8da8d39a71ad
PatchFile: %n.patch
PatchFile-MD5: c3d5ad584bfe073398cae6f3d6a49f7c
PatchScript: <<
%{default_script}
gzip -dc ../freetype_2.4.6-2.diff.gz | patch -p1
patch -p0 < debian/patches-freetype/freetype-2.1.7-backwards.compat.patch
patch -p1 < debian/patches-freetype/enable-gxvalid-otvalid.patch
patch -p1 < debian/patches-freetype/enable-subpixel-rendering.patch
patch -p1 < debian/patches-freetype/0001-Fix-Savannah-bug-33992.patch
<<
NoSetCPPFLAGS: true
SetCPPFLAGS: -MD
CompileScript: <<
#!/bin/sh -ev
export CPATH=%p/include
./configure --prefix=%p/lib/%N --with-old-mac-fonts --disable-static
make
fink-package-precedence --depfile-ext='\.d' --prohibit-bdep=%n .
<<
InstallScript: <<
#!/bin/sh -ev
make -j1 install DESTDIR="%d"
rm -rf %i/lib/%N/share
install -d -m 755 %i/share/doc/%N
cp -pR docs/* %i/share/doc/%N/
# everything is buried in a private hierarchy...
# now symlink from the default places
# must not symlink dirs...risk of confusing dpkg
pushd %i/lib/freetype219
# 1. clone actual directory structure
# NB: will fail miserably if space in %i or %p
# but fink hopelessly can't handle that anyway
/usr/bin/find . -type d -print0 | /usr/bin/xargs -0 -n 1 -I" " mkdir -pv "%i/ "
# 2. sylink the individual files
/usr/bin/find . \( -type f -o -type l \) -print0 | /usr/bin/xargs -0 -n 1 -I" " ln -sv "%p/lib/freetype219/ " "%i/ "
# adjust to emit paths pointing to the default places
#must edit actual files...perl-pie replaces symlink
#with actual file (!= acting through the symlink)
perl -pi -e 's,%p/lib/freetype219,%p,g' bin/* lib/pkgconfig/*
# lib/*.la #Scared of libtool!
popd
# only keep the main ld file, not all the underlying pieces
rm %i/lib/libfreetype.6.*
<<
SplitOff: <<
Package: %N-shlibs
Depends: <<
bzip2-shlibs,
dpkg-base-files
<<
Replaces: freetype219-hinting-shlibs, freetype2 (<< 2.0.8-2)
Conflicts: freetype219-hinting-shlibs
Files: lib/%N/lib/libfreetype.6*dylib
Shlibs: %p/lib/%N/lib/libfreetype.6.dylib 14.0.0 %n (>= 2.4.6-2)
DocFiles: ChangeLog* README docs/LICENSE.TXT
Description: TrueType font rendering library, shared libs
<<
DocFiles: ChangeLog* README docs/LICENSE.TXT
Description: TrueType font rendering library, headers
DescDetail: <<
FreeType 2 is a library that provides access to and rendering of a
wide range of font file formats, including TrueType, PostScript Type 1,
and several bitmap font formats.
<<
DescPort: <<
* Previous versions by Christoph Pfisterer
* 2006-08-06 Benjamin Reed
- updated to 2.2.1
- integrated patches from debian's freetype-2.2.1 for
backwards-compatibility with 2.1.9 and earlier
* 2006-11-14 Martin Costabel
- integrated endianness fix from freetype CVS
* 2008-August/September Daniel Macks
- updated from 2.3.5 to 2.3.7
- implemented symlinking game from compiler-default paths
<<
DescPackaging: <<
CPPFLAGS gets passed before local -I and we don't use any fink
headers, so just omit default -I%p/include
Don't install freetype2.m4 because...that's how we've always
done it for this package.
This is lowest-level x11-supplied lib fink overlays, so use
dpkg-base-files to purify .la to avoid mixing (or at least
make it easier to be self-consistent) in higher-level pkgs.
2.3.8 broke ABI (size of a public struct), which we didn't
catch prior to release. 2.3.9 reverted to 2.3.7 ABI. We patch
the public struct in 2.3.9+ to have the same size as 2.3.8 to
avoid further breakage going forward.
# But forgot to bump c_v for new public functions also. So hack
# ltmain.sh to append ".0.1" to -compatibility_version so when
# upstream fixes -version-info triplet x+1.y.z will be higher.
# See: https://savannah.nongnu.org/bugs/?28483
No longer supply static (as of 2.4.4-2), therefore no longer
need to propagate linking against libs that are not in public
ABI.
<<
License: OSI-Approved
Homepage: http://www.freetype.org/
Maintainer: The Gnome Core Team
diff -Nurd -x'*~' freetype-2.4.6.orig/builds/unix/freetype-config.in freetype-2.4.6/builds/unix/freetype-config.in
--- freetype-2.4.6.orig/builds/unix/freetype-config.in 2011-01-05 13:25:28.000000000 -0500
+++ freetype-2.4.6/builds/unix/freetype-config.in 2011-08-27 09:18:53.000000000 -0400
@@ -144,7 +144,7 @@
if test "$enable_shared" = "yes" ; then
eval "rpath=\"$hardcode_libdir_flag_spec\""
fi
- libs="-lfreetype @LIBZ@ @LIBBZ2@ @FT2_EXTRA_LIBS@"
+ libs="-lfreetype"
if test "${SYSROOT}$libdir" != "/usr/lib" && test "${SYSROOT}$libdir" != "/usr/lib64"; then
echo -L${SYSROOT}$libdir $libs
else
diff -Nurd -x'*~' freetype-2.4.6.orig/builds/unix/freetype2.in freetype-2.4.6/builds/unix/freetype2.in
--- freetype-2.4.6.orig/builds/unix/freetype2.in 2011-01-05 13:25:28.000000000 -0500
+++ freetype-2.4.6/builds/unix/freetype2.in 2011-08-27 09:18:53.000000000 -0400
@@ -8,5 +8,4 @@
Version: @ft_version@
Requires:
Libs: -L${libdir} -lfreetype
-Libs.private: @LIBZ@ @LIBBZ2@ @FT2_EXTRA_LIBS@
Cflags: -I${includedir}/freetype2 -I${includedir}
diff -Nurd -x'*~' freetype-2.4.6.orig/include/freetype/t1tables.h freetype-2.4.6/include/freetype/t1tables.h
--- freetype-2.4.6.orig/include/freetype/t1tables.h 2009-07-03 09:28:24.000000000 -0400
+++ freetype-2.4.6/include/freetype/t1tables.h 2011-08-27 09:18:53.000000000 -0400
@@ -78,6 +78,15 @@
FT_Short underline_position;
FT_UShort underline_thickness;
+ /*
+ 2.3.8 transiently had added:
+ FT_UShort fs_type;
+ then removed it again in 2.3.9. Field was private(?) but size of
+ struct was public, so this was backard-incompatible ABI break.
+ Fink didn't notice and pushed 2.3.8 widely. So now we add a
+ dummy member to remain at 2.3.8 size and avoid further breakage.
+ */
+ FT_UShort fink_ABI_shim;
} PS_FontInfoRec;