]> git.pld-linux.org Git - packages/crossmingw32-freetype.git/blobdiff - crossmingw32-freetype.spec
- release 2
[packages/crossmingw32-freetype.git] / crossmingw32-freetype.spec
index 8fde50aa701cbc8ecf0cf651f7fee08777457168..3dd9885fadc711f0b45b8d441d5c3b653ae3e640 100644 (file)
@@ -1,27 +1,30 @@
 #
 # Conditional build:
-%bcond_without bytecode        # without TT bytecode interpreter
-#               (patents pending in USA, Japan etc., but now it includes
-#                also patent-free hinting workaround)
-%bcond_without lcd             # disable filters reducing color fringes when
-#                 subpixel rendering for LCD (only used with a new 2.3.0 API;
-#                 patents pending)
+%bcond_without lcd             # without LCD subpixel color filtering (Microsoft patents in USA)
+%bcond_without harfbuzz        # harfbuzz based autohinting
 #
-%define                _realname   freetype
-Summary:       TrueType font rasterizer - Mingw32 cross version
-Summary(pl.UTF-8):Rasteryzer fontów TrueType - wersja skrośna dla Mingw32
-Name:          crossmingw32-%{_realname}
-Version:       2.3.5
-Release:       1
-License:       GPL or FTL
+%define                realname   freetype
+Summary:       TrueType font rasterizer - MinGW32 cross version
+Summary(pl.UTF-8):     Rasteryzer fontów TrueType - wersja skrośna dla MinGW32
+Name:          crossmingw32-%{realname}
+Version:       2.6
+Release:       2
+License:       GPL v2 or FTL
 Group:         Development/Libraries
-Source0:       http://savannah.nongnu.org/download/freetype/%{_realname}-%{version}.tar.bz2
-# Source0-md5: 65234327c5ac46ee00ebda15995d4c1c
+Source0:       http://download.savannah.gnu.org/releases/freetype/%{realname}-%{version}.tar.bz2
+# Source0-md5: 5682890cb0267f6671dd3de6eabd3e69
 URL:           http://www.freetype.org/
+BuildRequires: crossmingw32-bzip2
 BuildRequires: crossmingw32-gcc
-BuildRequires: crossmingw32-zlib
+%{?with_harfbuzz:BuildRequires:        crossmingw32-harfbuzz >= 0.9.19}
+BuildRequires: crossmingw32-libpng
+BuildRequires: crossmingw32-zlib >= 1.2.3-2
+BuildRequires: pkgconfig >= 1:0.24
 BuildRequires: python
-Requires:      crossmingw32-zlib
+Requires:      crossmingw32-bzip2
+%{?with_harfbuzz:Requires:     crossmingw32-harfbuzz >= 0.9.19}
+Requires:      crossmingw32-libpng
+Requires:      crossmingw32-zlib >= 1.2.3-2
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 %define                specflags_ia32  -fomit-frame-pointer
@@ -32,14 +35,24 @@ BuildRoot:  %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 %define                target                  i386-mingw32
 %define                target_platform         i386-pc-mingw32
-%define                arch                    %{_prefix}/%{target}
 
 %define                _sysprefix              /usr
 %define                _prefix                 %{_sysprefix}/%{target}
-%define                _pkgconfigdir           %{_libdir}/pkgconfig
+%define                _libdir                 %{_prefix}/lib
+%define                _pkgconfigdir           %{_prefix}/lib/pkgconfig
 %define                _dlldir                 /usr/share/wine/windows/system
 %define                __cc                    %{target}-gcc
 %define                __cxx                   %{target}-g++
+%define                __pkgconfig_provides    %{nil}
+%define                __pkgconfig_requires    %{nil}
+
+%ifnarch %{ix86}
+# arch-specific flags (like alpha's -mieee) are not valid for i386 gcc
+%define                optflags        -O2
+%endif
+# -z options are invalid for mingw linker, most of -f options are Linux-specific
+%define                filterout_ld    -Wl,-z,.*
+%define                filterout_c     -f[-a-z0-9=]*
 
 %description
 The FreeType engine is a free and portable TrueType font rendering
@@ -71,21 +84,24 @@ demonstracyjnych.
 Ten pakiet zawiera wersję skrośną dla Win32.
 
 %package static
-Summary:       Static freetype library (cross mingw32 version)
-Summary(pl.UTF-8):     Statyczna biblioteka freetype (wersja skrośna mingw32)
+Summary:       Static freetype library (cross MinGW32 version)
+Summary(pl.UTF-8):     Statyczna biblioteka freetype (wersja skrośna MinGW32)
 Group:         Development/Libraries
 Requires:      %{name} = %{version}-%{release}
 
 %description static
-Static freetype library (cross mingw32 version).
+Static freetype library (cross MinGW32 version).
 
 %description static -l pl.UTF-8
-Statyczna biblioteka freetype (wersja skrośna mingw32).
+Statyczna biblioteka freetype (wersja skrośna MinGW32).
 
 %package dll
 Summary:       DLL freetype library for Windows
 Summary(pl.UTF-8):     Biblioteka DLL freetype dla Windows
 Group:         Applications/Emulators
+Requires:      crossmingw32-bzip2-dll
+%{?with_harfbuzz:Requires:     crossmingw32-harfbuzz-dll >= 0.9.19}
+Requires:      crossmingw32-libpng-dll
 Requires:      crossmingw32-zlib-dll
 Requires:      wine
 
@@ -96,93 +112,54 @@ DLL freetype library for Windows.
 Biblioteka DLL freetype dla Windows.
 
 %prep
-%setup -q -n %{_realname}-%{version}
+%setup -q -n %{realname}-%{version}
 
 %build
+export PKG_CONFIG_LIBDIR=%{_pkgconfigdir}
 CFLAGS="%{rpmcflags} \
-%{?with_bytecode:-DTT_CONFIG_OPTION_BYTECODE_INTERPRETER} \
-%{?with_lcd:-DFT_CONFIG_OPTION_SUBPIXEL_RENDERING}" \
+%{?with_lcd:-DFT_CONFIG_OPTION_SUBPIXEL_RENDERING} \
+-DTT_CONFIG_OPTION_SUBPIXEL_HINTING \
+" \
 %configure \
+       LIBPNG_CFLAGS="$(pkg-config --cflags libpng)" \
+       LIBPNG_LDFLAGS="$(pkg-config --libs libpng)" \
        --target=%{target} \
        --build=i686-pc-linux-gnu \
        --host=%{target} \
-       --enable-shared
+       --enable-shared \
+       %{!?with_harfbuzz:--without-harfbuzz}
 
 %{__make}
 
-# link shared library
-cd objs/.libs
-%{__cc} \
-       --shared *.o -llualib50 -llua50 -lm -o libfreetype.dll \
-       -Wl,--enable-auto-image-base -Wl,--out-implib,libfreetype.dll.a -lz
-cd ../..
-
-cat << "EOF" >> libfreetype.la
-# libfreetype.la - a libtool library file
-# Generated by ltmain.sh - GNU libtool 1.5.22 (1.1220.2.365 2005/12/18 22:14:06)
-
-# The name that we can dlopen(3).
-dlname=''
-
-# Names of this library.
-library_names='libfreetype.dll.a'
-
-# The name of the static archive.
-old_library='libfreetype.a'
-
-# Libraries that this one depends upon.
-dependency_libs=' -lz'
-
-# Version information for libfreetype.
-current=9
-age=3
-revision=16
-
-# Is this an already installed library?
-installed=yes
-
-# Should we warn about portability when linking against -modules?
-shouldnotlink=no
-
-# Files to dlopen/dlpreopen
-dlopen=''
-dlpreopen=''
-
-# Directory that this library needs to be installed in:
-libdir='%{_libdir}'
-EOF
-
 %install
 rm -rf $RPM_BUILD_ROOT
 
 %{__make} install \
        DESTDIR=$RPM_BUILD_ROOT
 
-install libfreetype.la $RPM_BUILD_ROOT%{_libdir}
-
 install -d $RPM_BUILD_ROOT%{_dlldir}
-install objs/.libs/libfreetype.dll $RPM_BUILD_ROOT%{_dlldir}
-install objs/.libs/libfreetype.dll.a $RPM_BUILD_ROOT%{_libdir}
+%{__mv} -f $RPM_BUILD_ROOT%{_prefix}/bin/*.dll $RPM_BUILD_ROOT%{_dlldir}
 
 %if 0%{!?debug:1}
 %{target}-strip --strip-unneeded -R.comment -R.note $RPM_BUILD_ROOT%{_dlldir}/*.dll
 %{target}-strip -g -R.comment -R.note $RPM_BUILD_ROOT%{_libdir}/*.a
 %endif
 
-rm -rf $RPM_BUILD_ROOT%{_datadir}/aclocal
+%{__rm} $RPM_BUILD_ROOT%{_bindir}/freetype-config \
+       $RPM_BUILD_ROOT%{_mandir}/man1/freetype-config.1
+
+%{__rm} -r $RPM_BUILD_ROOT%{_datadir}/aclocal
 
 %clean
 rm -rf $RPM_BUILD_ROOT
 
 %files
 %defattr(644,root,root,755)
-%doc docs/{CHANGES,FTL.TXT,LICENSE.TXT,PATENTS,TODO,formats.txt,raster.txt}
-%{_bindir}/freetype-config
+%doc docs/{CHANGES,FTL.TXT,LICENSE.TXT,TODO,formats.txt,raster.txt}
 %{_libdir}/libfreetype.dll.a
 %{_libdir}/libfreetype.la
 %{_includedir}/freetype2
-%{_includedir}/*.h
-%{_pkgconfigdir}/*.pc
+%{_pkgconfigdir}/freetype2.pc
 
 %files static
 %defattr(644,root,root,755)
@@ -190,4 +167,4 @@ rm -rf $RPM_BUILD_ROOT
 
 %files dll
 %defattr(644,root,root,755)
-%{_dlldir}/libfreetype.dll
+%{_dlldir}/libfreetype-*.dll
This page took 0.174477 seconds and 4 git commands to generate.