From 2105a82f7a64b47b1ef1f2fc64b226c5da0accec Mon Sep 17 00:00:00 2001 From: Kevin Fenzi Date: Mon, 26 Jan 2009 22:16:07 +0000 Subject: [PATCH 01/26] Setup of module mingw32-cairo --- .cvsignore | 0 Makefile | 21 +++++++++++++++++++++ sources | 0 3 files changed, 21 insertions(+) create mode 100644 .cvsignore create mode 100644 Makefile create mode 100644 sources diff --git a/.cvsignore b/.cvsignore new file mode 100644 index 0000000..e69de29 diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..6a2340c --- /dev/null +++ b/Makefile @@ -0,0 +1,21 @@ +# Makefile for source rpm: mingw32-cairo +# $Id$ +NAME := mingw32-cairo +SPECFILE = $(firstword $(wildcard *.spec)) + +define find-makefile-common +for d in common ../common ../../common ; do if [ -f $$d/Makefile.common ] ; then if [ -f $$d/CVS/Root -a -w $$/Makefile.common ] ; then cd $$d ; cvs -Q update ; fi ; echo "$$d/Makefile.common" ; break ; fi ; done +endef + +MAKEFILE_COMMON := $(shell $(find-makefile-common)) + +ifeq ($(MAKEFILE_COMMON),) +# attept a checkout +define checkout-makefile-common +test -f CVS/Root && { cvs -Q -d $$(cat CVS/Root) checkout common && echo "common/Makefile.common" ; } || { echo "ERROR: I can't figure out how to checkout the 'common' module." ; exit -1 ; } >&2 +endef + +MAKEFILE_COMMON := $(shell $(checkout-makefile-common)) +endif + +include $(MAKEFILE_COMMON) diff --git a/sources b/sources new file mode 100644 index 0000000..e69de29 From 1137d0bf2b3de4615d1246be321961987e623717 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Wed, 28 Jan 2009 11:49:06 +0000 Subject: [PATCH 02/26] Initial import. --- .cvsignore | 1 + import.log | 1 + mingw32-cairo.spec | 124 +++++++++++++++++++++++++++++++++++++++++++++ sources | 1 + 4 files changed, 127 insertions(+) create mode 100644 import.log create mode 100644 mingw32-cairo.spec diff --git a/.cvsignore b/.cvsignore index e69de29..8284ab4 100644 --- a/.cvsignore +++ b/.cvsignore @@ -0,0 +1 @@ +cairo-1.8.0.tar.gz diff --git a/import.log b/import.log new file mode 100644 index 0000000..b357b2e --- /dev/null +++ b/import.log @@ -0,0 +1 @@ +mingw32-cairo-1_8_0-6_fc11:HEAD:mingw32-cairo-1.8.0-6.fc11.src.rpm:1233143079 diff --git a/mingw32-cairo.spec b/mingw32-cairo.spec new file mode 100644 index 0000000..2d73f75 --- /dev/null +++ b/mingw32-cairo.spec @@ -0,0 +1,124 @@ +%define __strip %{_mingw32_strip} +%define __objdump %{_mingw32_objdump} +%define _use_internal_dependency_generator 0 +%define __find_requires %{_mingw32_findrequires} +%define __find_provides %{_mingw32_findprovides} + +Name: mingw32-cairo +Version: 1.8.0 +Release: 6%{?dist} +Summary: MinGW Windows Cairo library + +License: LGPLv2 or MPLv1.1 +URL: http://cairographics.org +Source0: http://cairographics.org/snapshots/cairo-%{version}.tar.gz +Group: Development/Libraries +BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) + +BuildArch: noarch + +BuildRequires: mingw32-filesystem >= 23 +BuildRequires: mingw32-gcc +BuildRequires: mingw32-binutils +BuildRequires: mingw32-libxml2 +BuildRequires: mingw32-pixman +BuildRequires: mingw32-libpng +BuildRequires: mingw32-dlfcn +BuildRequires: mingw32-iconv +BuildRequires: mingw32-zlib +BuildRequires: pkgconfig + +# These are BRs for the base package, but are not needed on Win32 +# because Cairo includes a separate Win32 font rendering back end +# (thanks to: Erik van Pienbroek). +#BuildRequires: mingw32-fontconfig +#BuildRequires: mingw32-freetype + +Requires: pkgconfig + + +%description +MinGW Windows Cairo library. + + +%prep +%setup -q -n cairo-%{version} + + +%build +%{_mingw32_configure} \ + --disable-xlib \ + --disable-xcb \ + --enable-win32 \ + --enable-png \ + --disable-static \ + --disable-ft +make %{?_smp_mflags} + + +%install +rm -rf $RPM_BUILD_ROOT + +make DESTDIR=$RPM_BUILD_ROOT install + +rm -f $RPM_BUILD_ROOT%{_mingw32_libdir}/charset.alias + + +%clean +rm -rf $RPM_BUILD_ROOT + + +%files +%defattr(-,root,root) +%doc COPYING COPYING-LGPL-2.1 COPYING-MPL-1.1 +%{_mingw32_bindir}/libcairo-2.dll +%{_mingw32_includedir}/cairo/ +%{_mingw32_libdir}/libcairo.dll.a +%{_mingw32_libdir}/libcairo.la +%{_mingw32_libdir}/pkgconfig/cairo-pdf.pc +%{_mingw32_libdir}/pkgconfig/cairo-png.pc +%{_mingw32_libdir}/pkgconfig/cairo-ps.pc +%{_mingw32_libdir}/pkgconfig/cairo-svg.pc +%{_mingw32_libdir}/pkgconfig/cairo-win32-font.pc +%{_mingw32_libdir}/pkgconfig/cairo-win32.pc +%{_mingw32_libdir}/pkgconfig/cairo.pc +%{_mingw32_datadir}/gtk-doc/html/cairo/ + + +%changelog +* Mon Jan 26 2009 Richard W.M. Jones - 1.8.0-6 +- Requires pkgconfig (Erik van Pienbroek). + +* Mon Jan 26 2009 Richard W.M. Jones - 1.8.0-5 +- Don't need to remove extra pkgconfig file in install section. + +* Mon Jan 26 2009 Richard W.M. Jones - 1.8.0-4 +- Disable freetype in configure so it doesn't break if freetype + or fontconfig are actually installed. (Erik van Pienbroek). + +* Mon Jan 19 2009 Richard W.M. Jones - 1.8.0-3 +- Include license file in documentation section. +- Disable building static library to save time. +- Remove BRs on mingw32-fontconfig and mingw32-freetype which are + not needed on Win32. +- Use _smp_mflags. +- Added BRs mingw32-dlfcn, mingw32-iconv, mingw32-zlib. + +* Wed Oct 29 2008 Richard W.M. Jones - 1.8.0-2 +- Fix mixed spaces/tabs in specfile. + +* Fri Oct 24 2008 Richard W.M. Jones - 1.8.0-1 +- New upstream version 1.8.0. + +* Wed Sep 24 2008 Richard W.M. Jones - 1.7.4-4 +- Rename mingw -> mingw32. + +* Thu Sep 11 2008 Daniel P. Berrange - 1.7.4-3 +- Added dep on pkgconfig + +* Wed Sep 10 2008 Richard W.M. Jones - 1.7.4-2 +- Remove static libraries. +- Fix source URL. + +* Tue Sep 9 2008 Daniel P. Berrange - 1.7.4-1 +- Initial RPM release diff --git a/sources b/sources index e69de29..8e3a8ab 100644 --- a/sources +++ b/sources @@ -0,0 +1 @@ +4ea70ea87b47e92d318d4e7f5b940f47 cairo-1.8.0.tar.gz From bd63eb513d87565e0d23379af7ade7f366c5d2dc Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Wed, 28 Jan 2009 12:22:13 +0000 Subject: [PATCH 03/26] Remove gtk-doc (Levente Farkas). --- mingw32-cairo.spec | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/mingw32-cairo.spec b/mingw32-cairo.spec index 2d73f75..f28589c 100644 --- a/mingw32-cairo.spec +++ b/mingw32-cairo.spec @@ -6,7 +6,7 @@ Name: mingw32-cairo Version: 1.8.0 -Release: 6%{?dist} +Release: 7%{?dist} Summary: MinGW Windows Cairo library License: LGPLv2 or MPLv1.1 @@ -62,7 +62,7 @@ rm -rf $RPM_BUILD_ROOT make DESTDIR=$RPM_BUILD_ROOT install rm -f $RPM_BUILD_ROOT%{_mingw32_libdir}/charset.alias - +rm -r $RPM_BUILD_ROOT%{_mingw32_datadir}/gtk-doc/html/cairo/ %clean rm -rf $RPM_BUILD_ROOT @@ -82,10 +82,12 @@ rm -rf $RPM_BUILD_ROOT %{_mingw32_libdir}/pkgconfig/cairo-win32-font.pc %{_mingw32_libdir}/pkgconfig/cairo-win32.pc %{_mingw32_libdir}/pkgconfig/cairo.pc -%{_mingw32_datadir}/gtk-doc/html/cairo/ %changelog +* Wed Jan 28 2009 Richard W.M. Jones - 1.8.0-7 +- Remove gtk-doc (Levente Farkas). + * Mon Jan 26 2009 Richard W.M. Jones - 1.8.0-6 - Requires pkgconfig (Erik van Pienbroek). From deaac86f678862f13d57a274c54a80e9aa60e320 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Fri, 20 Feb 2009 23:02:46 +0000 Subject: [PATCH 04/26] Rebuild for mingw32-gcc 4.4 --- mingw32-cairo.spec | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/mingw32-cairo.spec b/mingw32-cairo.spec index f28589c..8a3713d 100644 --- a/mingw32-cairo.spec +++ b/mingw32-cairo.spec @@ -6,7 +6,7 @@ Name: mingw32-cairo Version: 1.8.0 -Release: 7%{?dist} +Release: 8%{?dist} Summary: MinGW Windows Cairo library License: LGPLv2 or MPLv1.1 @@ -17,7 +17,7 @@ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildArch: noarch -BuildRequires: mingw32-filesystem >= 23 +BuildRequires: mingw32-filesystem >= 49 BuildRequires: mingw32-gcc BuildRequires: mingw32-binutils BuildRequires: mingw32-libxml2 @@ -85,6 +85,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Fri Feb 20 2009 Richard W.M. Jones - 1.8.0-8 +- Rebuild for mingw32-gcc 4.4 + * Wed Jan 28 2009 Richard W.M. Jones - 1.8.0-7 - Remove gtk-doc (Levente Farkas). From 1ba8382dd1de4d63e66a9df8981435347062959a Mon Sep 17 00:00:00 2001 From: Jesse Keating Date: Thu, 26 Feb 2009 00:57:28 +0000 Subject: [PATCH 05/26] - Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild --- mingw32-cairo.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/mingw32-cairo.spec b/mingw32-cairo.spec index 8a3713d..c478406 100644 --- a/mingw32-cairo.spec +++ b/mingw32-cairo.spec @@ -6,7 +6,7 @@ Name: mingw32-cairo Version: 1.8.0 -Release: 8%{?dist} +Release: 9%{?dist} Summary: MinGW Windows Cairo library License: LGPLv2 or MPLv1.1 @@ -85,6 +85,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Wed Feb 25 2009 Fedora Release Engineering - 1.8.0-9 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild + * Fri Feb 20 2009 Richard W.M. Jones - 1.8.0-8 - Rebuild for mingw32-gcc 4.4 From 9f491ddba40bb5556d944b026fbe4ab97cc73fc4 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 10 Mar 2009 13:47:38 +0000 Subject: [PATCH 06/26] - Rebase to 1.8.6, same as Fedora native version. - Source URL corrected. --- .cvsignore | 2 +- mingw32-cairo.spec | 10 +++++++--- sources | 2 +- 3 files changed, 9 insertions(+), 5 deletions(-) diff --git a/.cvsignore b/.cvsignore index 8284ab4..7eac32c 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -cairo-1.8.0.tar.gz +cairo-1.8.6.tar.gz diff --git a/mingw32-cairo.spec b/mingw32-cairo.spec index c478406..83fe19c 100644 --- a/mingw32-cairo.spec +++ b/mingw32-cairo.spec @@ -5,13 +5,13 @@ %define __find_provides %{_mingw32_findprovides} Name: mingw32-cairo -Version: 1.8.0 -Release: 9%{?dist} +Version: 1.8.6 +Release: 1%{?dist} Summary: MinGW Windows Cairo library License: LGPLv2 or MPLv1.1 URL: http://cairographics.org -Source0: http://cairographics.org/snapshots/cairo-%{version}.tar.gz +Source0: http://cairographics.org/releases/cairo-%{version}.tar.gz Group: Development/Libraries BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) @@ -85,6 +85,10 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Tue Mar 10 2009 Richard W.M. Jones - 1.8.6-1 +- Rebase to 1.8.6, same as Fedora native version. +- Source URL corrected. + * Wed Feb 25 2009 Fedora Release Engineering - 1.8.0-9 - Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild diff --git a/sources b/sources index 8e3a8ab..02cd32e 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -4ea70ea87b47e92d318d4e7f5b940f47 cairo-1.8.0.tar.gz +4e64139ef6f668df24450f3b81dd0771 cairo-1.8.6.tar.gz From fdff309117227eb311f27c9d2220e943fd60c0ce Mon Sep 17 00:00:00 2001 From: epienbro Date: Tue, 14 Apr 2009 19:25:29 +0000 Subject: [PATCH 07/26] - Fixed %defattr line - Added -static subpackage - Use ./configure --disable-pthread to avoid conflict with native pthread library --- mingw32-cairo.spec | 26 +++++++++++++++++++++++--- 1 file changed, 23 insertions(+), 3 deletions(-) diff --git a/mingw32-cairo.spec b/mingw32-cairo.spec index 83fe19c..7874a85 100644 --- a/mingw32-cairo.spec +++ b/mingw32-cairo.spec @@ -6,7 +6,7 @@ Name: mingw32-cairo Version: 1.8.6 -Release: 1%{?dist} +Release: 2%{?dist} Summary: MinGW Windows Cairo library License: LGPLv2 or MPLv1.1 @@ -41,6 +41,15 @@ Requires: pkgconfig MinGW Windows Cairo library. +%package static +Summary: Static version of the MinGW Windows Cairo library +Requires: %{name} = %{version}-%{release} +Group: Development/Libraries + +%description static +Static version of the MinGW Windows Cairo library. + + %prep %setup -q -n cairo-%{version} @@ -51,7 +60,8 @@ MinGW Windows Cairo library. --disable-xcb \ --enable-win32 \ --enable-png \ - --disable-static \ + --enable-static \ + --disable-pthread \ --disable-ft make %{?_smp_mflags} @@ -69,7 +79,7 @@ rm -rf $RPM_BUILD_ROOT %files -%defattr(-,root,root) +%defattr(-,root,root,-) %doc COPYING COPYING-LGPL-2.1 COPYING-MPL-1.1 %{_mingw32_bindir}/libcairo-2.dll %{_mingw32_includedir}/cairo/ @@ -84,7 +94,17 @@ rm -rf $RPM_BUILD_ROOT %{_mingw32_libdir}/pkgconfig/cairo.pc +%files static +%defattr(-,root,root,-) +%{_mingw32_libdir}/libcairo.a + + %changelog +* Fri Apr 3 2009 Erik van Pienbroek - 1.8.6-2 +- Fixed %%defattr line +- Added -static subpackage +- Use ./configure --disable-pthread to avoid conflict with native pthread library + * Tue Mar 10 2009 Richard W.M. Jones - 1.8.6-1 - Rebase to 1.8.6, same as Fedora native version. - Source URL corrected. From b0d8645d3ca8378269cdccfa2d3e661a850f7354 Mon Sep 17 00:00:00 2001 From: Jesse Keating Date: Sat, 25 Jul 2009 12:15:08 +0000 Subject: [PATCH 08/26] - Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild --- mingw32-cairo.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/mingw32-cairo.spec b/mingw32-cairo.spec index 7874a85..35ab0d3 100644 --- a/mingw32-cairo.spec +++ b/mingw32-cairo.spec @@ -6,7 +6,7 @@ Name: mingw32-cairo Version: 1.8.6 -Release: 2%{?dist} +Release: 3%{?dist} Summary: MinGW Windows Cairo library License: LGPLv2 or MPLv1.1 @@ -100,6 +100,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Sat Jul 25 2009 Fedora Release Engineering - 1.8.6-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild + * Fri Apr 3 2009 Erik van Pienbroek - 1.8.6-2 - Fixed %%defattr line - Added -static subpackage From ad89cf1395019af670b489655590624625a0757b Mon Sep 17 00:00:00 2001 From: epienbro Date: Wed, 12 Aug 2009 23:02:13 +0000 Subject: [PATCH 09/26] - Update to 1.8.8 - Automatically generate debuginfo subpackage - Use %global instead of %define --- .cvsignore | 2 +- mingw32-cairo.spec | 25 +++++++++++++++++-------- sources | 2 +- 3 files changed, 19 insertions(+), 10 deletions(-) diff --git a/.cvsignore b/.cvsignore index 7eac32c..efd44b6 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -cairo-1.8.6.tar.gz +cairo-1.8.8.tar.gz diff --git a/mingw32-cairo.spec b/mingw32-cairo.spec index 35ab0d3..bc8de15 100644 --- a/mingw32-cairo.spec +++ b/mingw32-cairo.spec @@ -1,12 +1,13 @@ -%define __strip %{_mingw32_strip} -%define __objdump %{_mingw32_objdump} -%define _use_internal_dependency_generator 0 -%define __find_requires %{_mingw32_findrequires} -%define __find_provides %{_mingw32_findprovides} +%global __strip %{_mingw32_strip} +%global __objdump %{_mingw32_objdump} +%global _use_internal_dependency_generator 0 +%global __find_requires %{_mingw32_findrequires} +%global __find_provides %{_mingw32_findprovides} +%define __debug_install_post %{_mingw32_debug_install_post} Name: mingw32-cairo -Version: 1.8.6 -Release: 3%{?dist} +Version: 1.8.8 +Release: 1%{?dist} Summary: MinGW Windows Cairo library License: LGPLv2 or MPLv1.1 @@ -17,7 +18,7 @@ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildArch: noarch -BuildRequires: mingw32-filesystem >= 49 +BuildRequires: mingw32-filesystem >= 52 BuildRequires: mingw32-gcc BuildRequires: mingw32-binutils BuildRequires: mingw32-libxml2 @@ -50,6 +51,9 @@ Group: Development/Libraries Static version of the MinGW Windows Cairo library. +%{_mingw32_debug_package} + + %prep %setup -q -n cairo-%{version} @@ -100,6 +104,11 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Thu Aug 13 2009 Erik van Pienbroek - 1.8.8-1 +- Update to 1.8.8 +- Automatically generate debuginfo subpackage +- Use %%global instead of %%define + * Sat Jul 25 2009 Fedora Release Engineering - 1.8.6-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild diff --git a/sources b/sources index 02cd32e..a4d8157 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -4e64139ef6f668df24450f3b81dd0771 cairo-1.8.6.tar.gz +d3e1a1035ae563812d4dd44a74fb0dd0 cairo-1.8.8.tar.gz From 7932cfa9f7b2f500c2a40418f1b22ec004d03355 Mon Sep 17 00:00:00 2001 From: Bill Nottingham Date: Wed, 25 Nov 2009 23:18:47 +0000 Subject: [PATCH 10/26] Fix typo that causes a failure to update the common directory. (releng #2781) --- Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Makefile b/Makefile index 6a2340c..bbd8efc 100644 --- a/Makefile +++ b/Makefile @@ -4,7 +4,7 @@ NAME := mingw32-cairo SPECFILE = $(firstword $(wildcard *.spec)) define find-makefile-common -for d in common ../common ../../common ; do if [ -f $$d/Makefile.common ] ; then if [ -f $$d/CVS/Root -a -w $$/Makefile.common ] ; then cd $$d ; cvs -Q update ; fi ; echo "$$d/Makefile.common" ; break ; fi ; done +for d in common ../common ../../common ; do if [ -f $$d/Makefile.common ] ; then if [ -f $$d/CVS/Root -a -w $$d/Makefile.common ] ; then cd $$d ; cvs -Q update ; fi ; echo "$$d/Makefile.common" ; break ; fi ; done endef MAKEFILE_COMMON := $(shell $(find-makefile-common)) From 11bcb47e2ff1bf03ed8afaed5b2885f0d371ab12 Mon Sep 17 00:00:00 2001 From: epienbro Date: Wed, 24 Feb 2010 20:17:20 +0000 Subject: [PATCH 11/26] - Update to 1.8.10 - Dropped BR: mingw32-dlfcn as it's unneeded --- .cvsignore | 2 +- mingw32-cairo.spec | 7 +++++-- sources | 2 +- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/.cvsignore b/.cvsignore index efd44b6..b71b01f 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -cairo-1.8.8.tar.gz +cairo-1.8.10.tar.gz diff --git a/mingw32-cairo.spec b/mingw32-cairo.spec index bc8de15..f32bc43 100644 --- a/mingw32-cairo.spec +++ b/mingw32-cairo.spec @@ -6,7 +6,7 @@ %define __debug_install_post %{_mingw32_debug_install_post} Name: mingw32-cairo -Version: 1.8.8 +Version: 1.8.10 Release: 1%{?dist} Summary: MinGW Windows Cairo library @@ -24,7 +24,6 @@ BuildRequires: mingw32-binutils BuildRequires: mingw32-libxml2 BuildRequires: mingw32-pixman BuildRequires: mingw32-libpng -BuildRequires: mingw32-dlfcn BuildRequires: mingw32-iconv BuildRequires: mingw32-zlib BuildRequires: pkgconfig @@ -104,6 +103,10 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Wed Feb 24 2010 Erik van Pienbroek - 1.8.10-1 +- Update to 1.8.10 +- Dropped BR: mingw32-dlfcn as it's unneeded + * Thu Aug 13 2009 Erik van Pienbroek - 1.8.8-1 - Update to 1.8.8 - Automatically generate debuginfo subpackage diff --git a/sources b/sources index a4d8157..232b71e 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -d3e1a1035ae563812d4dd44a74fb0dd0 cairo-1.8.8.tar.gz +b60a82f405f9400bbfdcf850b1728d25 cairo-1.8.10.tar.gz From 205d4f3e53d6cac3bf83aa7fcbbc7e7bceaa50f5 Mon Sep 17 00:00:00 2001 From: epienbro Date: Sun, 4 Jul 2010 17:34:57 +0000 Subject: [PATCH 12/26] Rebuild for libpng 1.4 --- mingw32-cairo.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/mingw32-cairo.spec b/mingw32-cairo.spec index f32bc43..ffc7170 100644 --- a/mingw32-cairo.spec +++ b/mingw32-cairo.spec @@ -7,7 +7,7 @@ Name: mingw32-cairo Version: 1.8.10 -Release: 1%{?dist} +Release: 2%{?dist} Summary: MinGW Windows Cairo library License: LGPLv2 or MPLv1.1 @@ -103,6 +103,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Sun Jul 4 2010 Erik van Pienbroek - 1.8.10-2 +- Rebuild for libpng 1.4 + * Wed Feb 24 2010 Erik van Pienbroek - 1.8.10-1 - Update to 1.8.10 - Dropped BR: mingw32-dlfcn as it's unneeded From 9df260879ce6967a485b4f739d0940099243f548 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 29 Jul 2010 03:18:41 +0000 Subject: [PATCH 13/26] dist-git conversion --- .cvsignore => .gitignore | 0 Makefile | 21 --------------------- import.log | 1 - 3 files changed, 22 deletions(-) rename .cvsignore => .gitignore (100%) delete mode 100644 Makefile delete mode 100644 import.log diff --git a/.cvsignore b/.gitignore similarity index 100% rename from .cvsignore rename to .gitignore diff --git a/Makefile b/Makefile deleted file mode 100644 index bbd8efc..0000000 --- a/Makefile +++ /dev/null @@ -1,21 +0,0 @@ -# Makefile for source rpm: mingw32-cairo -# $Id$ -NAME := mingw32-cairo -SPECFILE = $(firstword $(wildcard *.spec)) - -define find-makefile-common -for d in common ../common ../../common ; do if [ -f $$d/Makefile.common ] ; then if [ -f $$d/CVS/Root -a -w $$d/Makefile.common ] ; then cd $$d ; cvs -Q update ; fi ; echo "$$d/Makefile.common" ; break ; fi ; done -endef - -MAKEFILE_COMMON := $(shell $(find-makefile-common)) - -ifeq ($(MAKEFILE_COMMON),) -# attept a checkout -define checkout-makefile-common -test -f CVS/Root && { cvs -Q -d $$(cat CVS/Root) checkout common && echo "common/Makefile.common" ; } || { echo "ERROR: I can't figure out how to checkout the 'common' module." ; exit -1 ; } >&2 -endef - -MAKEFILE_COMMON := $(shell $(checkout-makefile-common)) -endif - -include $(MAKEFILE_COMMON) diff --git a/import.log b/import.log deleted file mode 100644 index b357b2e..0000000 --- a/import.log +++ /dev/null @@ -1 +0,0 @@ -mingw32-cairo-1_8_0-6_fc11:HEAD:mingw32-cairo-1.8.0-6.fc11.src.rpm:1233143079 From 217b0c7e691a7954bd67c4f4209ea9bf63c716c9 Mon Sep 17 00:00:00 2001 From: Erik van Pienbroek Date: Fri, 24 Sep 2010 16:08:50 +0200 Subject: [PATCH 14/26] Update to 1.10.0 - Update to 1.10.0 - Added the GObject library - Fixed a small rpmlint warning --- .gitignore | 1 + mingw32-cairo-fix-ffs-declaration.patch | 13 +++++++++++ mingw32-cairo.spec | 29 ++++++++++++++++++++----- sources | 2 +- 4 files changed, 39 insertions(+), 6 deletions(-) create mode 100644 mingw32-cairo-fix-ffs-declaration.patch diff --git a/.gitignore b/.gitignore index b71b01f..e82e063 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,2 @@ cairo-1.8.10.tar.gz +/cairo-1.10.0.tar.gz diff --git a/mingw32-cairo-fix-ffs-declaration.patch b/mingw32-cairo-fix-ffs-declaration.patch new file mode 100644 index 0000000..00f6507 --- /dev/null +++ b/mingw32-cairo-fix-ffs-declaration.patch @@ -0,0 +1,13 @@ +--- src/cairo.c.orig 2010-09-24 16:01:58.899988587 +0200 ++++ src/cairo.c 2010-09-24 16:02:13.313170255 +0200 +@@ -149,6 +149,10 @@ + }; + #include + ++#ifdef __MINGW32__ ++#define ffs __builtin_ffs ++#endif ++ + /** + * _cairo_error: + * @status: a status value indicating an error, (eg. not diff --git a/mingw32-cairo.spec b/mingw32-cairo.spec index ffc7170..7ae4197 100644 --- a/mingw32-cairo.spec +++ b/mingw32-cairo.spec @@ -6,8 +6,8 @@ %define __debug_install_post %{_mingw32_debug_install_post} Name: mingw32-cairo -Version: 1.8.10 -Release: 2%{?dist} +Version: 1.10.0 +Release: 1%{?dist} Summary: MinGW Windows Cairo library License: LGPLv2 or MPLv1.1 @@ -16,6 +16,10 @@ Source0: http://cairographics.org/releases/cairo-%{version}.tar.gz Group: Development/Libraries BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) +# The file cairo.c refers to a function called ffs(), but it +# isn't declared in any of the mingw headers. work around this +Patch0: mingw32-cairo-fix-ffs-declaration.patch + BuildArch: noarch BuildRequires: mingw32-filesystem >= 52 @@ -50,11 +54,12 @@ Group: Development/Libraries Static version of the MinGW Windows Cairo library. -%{_mingw32_debug_package} +%{?_mingw32_debug_package} %prep %setup -q -n cairo-%{version} +%patch0 -p0 %build @@ -65,7 +70,8 @@ Static version of the MinGW Windows Cairo library. --enable-png \ --enable-static \ --disable-pthread \ - --disable-ft + --disable-ft \ + --enable-gobject make %{?_smp_mflags} @@ -85,9 +91,16 @@ rm -rf $RPM_BUILD_ROOT %defattr(-,root,root,-) %doc COPYING COPYING-LGPL-2.1 COPYING-MPL-1.1 %{_mingw32_bindir}/libcairo-2.dll +%{_mingw32_bindir}/libcairo-gobject-2.dll +%{_mingw32_bindir}/libcairo-script-interpreter-2.dll %{_mingw32_includedir}/cairo/ %{_mingw32_libdir}/libcairo.dll.a %{_mingw32_libdir}/libcairo.la +%{_mingw32_libdir}/libcairo-gobject.dll.a +%{_mingw32_libdir}/libcairo-gobject.la +%{_mingw32_libdir}/libcairo-script-interpreter.dll.a +%{_mingw32_libdir}/libcairo-script-interpreter.la +%{_mingw32_libdir}/pkgconfig/cairo-gobject.pc %{_mingw32_libdir}/pkgconfig/cairo-pdf.pc %{_mingw32_libdir}/pkgconfig/cairo-png.pc %{_mingw32_libdir}/pkgconfig/cairo-ps.pc @@ -96,13 +109,19 @@ rm -rf $RPM_BUILD_ROOT %{_mingw32_libdir}/pkgconfig/cairo-win32.pc %{_mingw32_libdir}/pkgconfig/cairo.pc - %files static %defattr(-,root,root,-) %{_mingw32_libdir}/libcairo.a +%{_mingw32_libdir}/libcairo-gobject.a +%{_mingw32_libdir}/libcairo-script-interpreter.a %changelog +* Fri Sep 24 2010 Erik van Pienbroek - 1.10.0-1 +- Update to 1.10.0 +- Added the GObject library +- Fixed a small rpmlint warning + * Sun Jul 4 2010 Erik van Pienbroek - 1.8.10-2 - Rebuild for libpng 1.4 diff --git a/sources b/sources index 232b71e..085a6b2 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -b60a82f405f9400bbfdcf850b1728d25 cairo-1.8.10.tar.gz +70a2ece66cf473d976e2db0f75bf199e cairo-1.10.0.tar.gz From b8770f80e53b34a0cd868540efa4fa36f9130323 Mon Sep 17 00:00:00 2001 From: Erik van Pienbroek Date: Fri, 24 Sep 2010 16:20:22 +0200 Subject: [PATCH 15/26] Added BR: mingw32-glib2 --- mingw32-cairo.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/mingw32-cairo.spec b/mingw32-cairo.spec index 7ae4197..40f634a 100644 --- a/mingw32-cairo.spec +++ b/mingw32-cairo.spec @@ -30,6 +30,7 @@ BuildRequires: mingw32-pixman BuildRequires: mingw32-libpng BuildRequires: mingw32-iconv BuildRequires: mingw32-zlib +BuildRequires: mingw32-glib2 BuildRequires: pkgconfig # These are BRs for the base package, but are not needed on Win32 From 3a528bd3f31838afe1714710ef523b65e3637c96 Mon Sep 17 00:00:00 2001 From: Erik van Pienbroek Date: Sun, 7 Nov 2010 18:55:05 +0100 Subject: [PATCH 16/26] Rebuild in order to have soft dependency on libintl --- mingw32-cairo.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/mingw32-cairo.spec b/mingw32-cairo.spec index 40f634a..7e78a2b 100644 --- a/mingw32-cairo.spec +++ b/mingw32-cairo.spec @@ -7,7 +7,7 @@ Name: mingw32-cairo Version: 1.10.0 -Release: 1%{?dist} +Release: 2%{?dist} Summary: MinGW Windows Cairo library License: LGPLv2 or MPLv1.1 @@ -118,6 +118,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Sun Nov 7 2010 Erik van Pienbroek - 1.10.0-2 +- Rebuild in order to have soft dependency on libintl + * Fri Sep 24 2010 Erik van Pienbroek - 1.10.0-1 - Update to 1.10.0 - Added the GObject library From 7f39e3e6ea7f471e1f29bec2f794a3868a519b5b Mon Sep 17 00:00:00 2001 From: Dennis Gilmore Date: Tue, 8 Feb 2011 12:21:21 -0600 Subject: [PATCH 17/26] - Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild --- mingw32-cairo.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/mingw32-cairo.spec b/mingw32-cairo.spec index 7e78a2b..e6681db 100644 --- a/mingw32-cairo.spec +++ b/mingw32-cairo.spec @@ -7,7 +7,7 @@ Name: mingw32-cairo Version: 1.10.0 -Release: 2%{?dist} +Release: 3%{?dist} Summary: MinGW Windows Cairo library License: LGPLv2 or MPLv1.1 @@ -118,6 +118,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Tue Feb 08 2011 Fedora Release Engineering - 1.10.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild + * Sun Nov 7 2010 Erik van Pienbroek - 1.10.0-2 - Rebuild in order to have soft dependency on libintl From a2259793a49d65d37c1dc5bfcb1946a3ecac7596 Mon Sep 17 00:00:00 2001 From: Kalev Lember Date: Mon, 25 Apr 2011 00:29:27 +0300 Subject: [PATCH 18/26] Update to 1.10.2 --- .gitignore | 1 + mingw32-cairo.spec | 7 +++++-- sources | 2 +- 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/.gitignore b/.gitignore index e82e063..869bce2 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ cairo-1.8.10.tar.gz /cairo-1.10.0.tar.gz +/cairo-1.10.2.tar.gz diff --git a/mingw32-cairo.spec b/mingw32-cairo.spec index e6681db..33074ca 100644 --- a/mingw32-cairo.spec +++ b/mingw32-cairo.spec @@ -6,8 +6,8 @@ %define __debug_install_post %{_mingw32_debug_install_post} Name: mingw32-cairo -Version: 1.10.0 -Release: 3%{?dist} +Version: 1.10.2 +Release: 1%{?dist} Summary: MinGW Windows Cairo library License: LGPLv2 or MPLv1.1 @@ -118,6 +118,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Mon Apr 25 2011 Kalev Lember - 1.10.2-1 +- Update to 1.10.2 + * Tue Feb 08 2011 Fedora Release Engineering - 1.10.0-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild diff --git a/sources b/sources index 085a6b2..5692bae 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -70a2ece66cf473d976e2db0f75bf199e cairo-1.10.0.tar.gz +f101a9e88b783337b20b2e26dfd26d5f cairo-1.10.2.tar.gz From 06bd1e1713a3565beeb6156750bbc82c793a9f09 Mon Sep 17 00:00:00 2001 From: Erik van Pienbroek Date: Wed, 27 Apr 2011 22:40:51 +0200 Subject: [PATCH 19/26] Dropped the proxy-libintl pieces --- mingw32-cairo.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/mingw32-cairo.spec b/mingw32-cairo.spec index 33074ca..6513493 100644 --- a/mingw32-cairo.spec +++ b/mingw32-cairo.spec @@ -7,7 +7,7 @@ Name: mingw32-cairo Version: 1.10.2 -Release: 1%{?dist} +Release: 2%{?dist} Summary: MinGW Windows Cairo library License: LGPLv2 or MPLv1.1 @@ -118,6 +118,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Wed Apr 27 2011 Erik van Pienbroek - 1.10.2-2 +- Dropped the proxy-libintl pieces + * Mon Apr 25 2011 Kalev Lember - 1.10.2-1 - Update to 1.10.2 From 7c94195351c02e56f34df4e5fc6afabfbd774dc3 Mon Sep 17 00:00:00 2001 From: Kalev Lember Date: Thu, 28 Apr 2011 14:13:31 +0300 Subject: [PATCH 20/26] Really rebuild without proxy-libintl --- mingw32-cairo.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/mingw32-cairo.spec b/mingw32-cairo.spec index 6513493..f931414 100644 --- a/mingw32-cairo.spec +++ b/mingw32-cairo.spec @@ -7,7 +7,7 @@ Name: mingw32-cairo Version: 1.10.2 -Release: 2%{?dist} +Release: 3%{?dist} Summary: MinGW Windows Cairo library License: LGPLv2 or MPLv1.1 @@ -118,6 +118,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Thu Apr 28 2011 Kalev Lember - 1.10.2-3 +- Really rebuild without proxy-libintl + * Wed Apr 27 2011 Erik van Pienbroek - 1.10.2-2 - Dropped the proxy-libintl pieces From c5f638294fe11d5dda401a6d2f87ddcb57f299b2 Mon Sep 17 00:00:00 2001 From: Kalev Lember Date: Wed, 6 Jul 2011 21:10:20 +0300 Subject: [PATCH 21/26] Rebuilt against win-iconv --- mingw32-cairo.spec | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/mingw32-cairo.spec b/mingw32-cairo.spec index f931414..135aac4 100644 --- a/mingw32-cairo.spec +++ b/mingw32-cairo.spec @@ -7,7 +7,7 @@ Name: mingw32-cairo Version: 1.10.2 -Release: 3%{?dist} +Release: 4%{?dist} Summary: MinGW Windows Cairo library License: LGPLv2 or MPLv1.1 @@ -28,7 +28,7 @@ BuildRequires: mingw32-binutils BuildRequires: mingw32-libxml2 BuildRequires: mingw32-pixman BuildRequires: mingw32-libpng -BuildRequires: mingw32-iconv +BuildRequires: mingw32-win-iconv BuildRequires: mingw32-zlib BuildRequires: mingw32-glib2 BuildRequires: pkgconfig @@ -118,6 +118,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Wed Jul 06 2011 Kalev Lember - 1.10.2-4 +- Rebuilt against win-iconv + * Thu Apr 28 2011 Kalev Lember - 1.10.2-3 - Really rebuild without proxy-libintl From 22e5d9889108b544b49524fb72cbfeabb0fadf81 Mon Sep 17 00:00:00 2001 From: Dennis Gilmore Date: Fri, 13 Jan 2012 03:56:05 -0600 Subject: [PATCH 22/26] - Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild --- mingw32-cairo.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/mingw32-cairo.spec b/mingw32-cairo.spec index 135aac4..1448651 100644 --- a/mingw32-cairo.spec +++ b/mingw32-cairo.spec @@ -7,7 +7,7 @@ Name: mingw32-cairo Version: 1.10.2 -Release: 4%{?dist} +Release: 5%{?dist} Summary: MinGW Windows Cairo library License: LGPLv2 or MPLv1.1 @@ -118,6 +118,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Fri Jan 13 2012 Fedora Release Engineering - 1.10.2-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild + * Wed Jul 06 2011 Kalev Lember - 1.10.2-4 - Rebuilt against win-iconv From 92fdddc1484371c69f7117a8e6a9210c10a5fb29 Mon Sep 17 00:00:00 2001 From: Erik van Pienbroek Date: Tue, 31 Jan 2012 18:50:13 +0100 Subject: [PATCH 23/26] Rebuild against libpng 1.5 and various cleanups - Rebuild against libpng 1.5 - Dropped .la files - Dropped unneeded RPM tags --- mingw32-cairo.spec | 24 +++++++++--------------- 1 file changed, 9 insertions(+), 15 deletions(-) diff --git a/mingw32-cairo.spec b/mingw32-cairo.spec index 1448651..92f0c78 100644 --- a/mingw32-cairo.spec +++ b/mingw32-cairo.spec @@ -1,20 +1,16 @@ %global __strip %{_mingw32_strip} %global __objdump %{_mingw32_objdump} -%global _use_internal_dependency_generator 0 -%global __find_requires %{_mingw32_findrequires} -%global __find_provides %{_mingw32_findprovides} %define __debug_install_post %{_mingw32_debug_install_post} Name: mingw32-cairo Version: 1.10.2 -Release: 5%{?dist} +Release: 6%{?dist} Summary: MinGW Windows Cairo library License: LGPLv2 or MPLv1.1 URL: http://cairographics.org Source0: http://cairographics.org/releases/cairo-%{version}.tar.gz Group: Development/Libraries -BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) # The file cairo.c refers to a function called ffs(), but it # isn't declared in any of the mingw headers. work around this @@ -22,7 +18,7 @@ Patch0: mingw32-cairo-fix-ffs-declaration.patch BuildArch: noarch -BuildRequires: mingw32-filesystem >= 52 +BuildRequires: mingw32-filesystem >= 68 BuildRequires: mingw32-gcc BuildRequires: mingw32-binutils BuildRequires: mingw32-libxml2 @@ -77,30 +73,24 @@ make %{?_smp_mflags} %install -rm -rf $RPM_BUILD_ROOT - make DESTDIR=$RPM_BUILD_ROOT install rm -f $RPM_BUILD_ROOT%{_mingw32_libdir}/charset.alias rm -r $RPM_BUILD_ROOT%{_mingw32_datadir}/gtk-doc/html/cairo/ -%clean -rm -rf $RPM_BUILD_ROOT +# Drop all .la files +find $RPM_BUILD_ROOT -name "*.la" -delete %files -%defattr(-,root,root,-) %doc COPYING COPYING-LGPL-2.1 COPYING-MPL-1.1 %{_mingw32_bindir}/libcairo-2.dll %{_mingw32_bindir}/libcairo-gobject-2.dll %{_mingw32_bindir}/libcairo-script-interpreter-2.dll %{_mingw32_includedir}/cairo/ %{_mingw32_libdir}/libcairo.dll.a -%{_mingw32_libdir}/libcairo.la %{_mingw32_libdir}/libcairo-gobject.dll.a -%{_mingw32_libdir}/libcairo-gobject.la %{_mingw32_libdir}/libcairo-script-interpreter.dll.a -%{_mingw32_libdir}/libcairo-script-interpreter.la %{_mingw32_libdir}/pkgconfig/cairo-gobject.pc %{_mingw32_libdir}/pkgconfig/cairo-pdf.pc %{_mingw32_libdir}/pkgconfig/cairo-png.pc @@ -111,13 +101,17 @@ rm -rf $RPM_BUILD_ROOT %{_mingw32_libdir}/pkgconfig/cairo.pc %files static -%defattr(-,root,root,-) %{_mingw32_libdir}/libcairo.a %{_mingw32_libdir}/libcairo-gobject.a %{_mingw32_libdir}/libcairo-script-interpreter.a %changelog +* Tue Jan 23 2012 Erik van Pienbroek - 1.10.2-6 +- Rebuild against libpng 1.5 +- Dropped .la files +- Dropped unneeded RPM tags + * Fri Jan 13 2012 Fedora Release Engineering - 1.10.2-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild From 711a2b45b74f56ccbad5fa8ea42620b26a65c91f Mon Sep 17 00:00:00 2001 From: Kalev Lember Date: Thu, 9 Feb 2012 14:26:26 +0200 Subject: [PATCH 24/26] Apply patches recommended by the GTK+ Windows team - Fix A1 format win32 surfaces - Reset clip region when writing fallback results --- mingw32-cairo-A1_surfaces.patch | 138 ++++++++++++++++++++++++++++++++ mingw32-cairo-reset_clip.patch | 21 +++++ mingw32-cairo.spec | 17 +++- 3 files changed, 175 insertions(+), 1 deletion(-) create mode 100644 mingw32-cairo-A1_surfaces.patch create mode 100644 mingw32-cairo-reset_clip.patch diff --git a/mingw32-cairo-A1_surfaces.patch b/mingw32-cairo-A1_surfaces.patch new file mode 100644 index 0000000..b3181c0 --- /dev/null +++ b/mingw32-cairo-A1_surfaces.patch @@ -0,0 +1,138 @@ +diff --git a/src/cairo-win32-surface.c b/src/cairo-win32-surface.c +index 660aaba..8ebd185 100644 +--- a/src/cairo-win32-surface.c ++++ b/src/cairo-win32-surface.c +@@ -545,6 +545,79 @@ _cairo_win32_surface_get_subimage (cairo_win32_surface_t *surface, + return CAIRO_STATUS_SUCCESS; + } + ++static const unsigned char mirror[256] = { ++ 0x00, 0x80, 0x40, 0xc0, 0x20, 0xa0, 0x60, 0xe0, ++ 0x10, 0x90, 0x50, 0xd0, 0x30, 0xb0, 0x70, 0xf0, ++ 0x08, 0x88, 0x48, 0xc8, 0x28, 0xa8, 0x68, 0xe8, ++ 0x18, 0x98, 0x58, 0xd8, 0x38, 0xb8, 0x78, 0xf8, ++ 0x04, 0x84, 0x44, 0xc4, 0x24, 0xa4, 0x64, 0xe4, ++ 0x14, 0x94, 0x54, 0xd4, 0x34, 0xb4, 0x74, 0xf4, ++ 0x0c, 0x8c, 0x4c, 0xcc, 0x2c, 0xac, 0x6c, 0xec, ++ 0x1c, 0x9c, 0x5c, 0xdc, 0x3c, 0xbc, 0x7c, 0xfc, ++ 0x02, 0x82, 0x42, 0xc2, 0x22, 0xa2, 0x62, 0xe2, ++ 0x12, 0x92, 0x52, 0xd2, 0x32, 0xb2, 0x72, 0xf2, ++ 0x0a, 0x8a, 0x4a, 0xca, 0x2a, 0xaa, 0x6a, 0xea, ++ 0x1a, 0x9a, 0x5a, 0xda, 0x3a, 0xba, 0x7a, 0xfa, ++ 0x06, 0x86, 0x46, 0xc6, 0x26, 0xa6, 0x66, 0xe6, ++ 0x16, 0x96, 0x56, 0xd6, 0x36, 0xb6, 0x76, 0xf6, ++ 0x0e, 0x8e, 0x4e, 0xce, 0x2e, 0xae, 0x6e, 0xee, ++ 0x1e, 0x9e, 0x5e, 0xde, 0x3e, 0xbe, 0x7e, 0xfe, ++ 0x01, 0x81, 0x41, 0xc1, 0x21, 0xa1, 0x61, 0xe1, ++ 0x11, 0x91, 0x51, 0xd1, 0x31, 0xb1, 0x71, 0xf1, ++ 0x09, 0x89, 0x49, 0xc9, 0x29, 0xa9, 0x69, 0xe9, ++ 0x19, 0x99, 0x59, 0xd9, 0x39, 0xb9, 0x79, 0xf9, ++ 0x05, 0x85, 0x45, 0xc5, 0x25, 0xa5, 0x65, 0xe5, ++ 0x15, 0x95, 0x55, 0xd5, 0x35, 0xb5, 0x75, 0xf5, ++ 0x0d, 0x8d, 0x4d, 0xcd, 0x2d, 0xad, 0x6d, 0xed, ++ 0x1d, 0x9d, 0x5d, 0xdd, 0x3d, 0xbd, 0x7d, 0xfd, ++ 0x03, 0x83, 0x43, 0xc3, 0x23, 0xa3, 0x63, 0xe3, ++ 0x13, 0x93, 0x53, 0xd3, 0x33, 0xb3, 0x73, 0xf3, ++ 0x0b, 0x8b, 0x4b, 0xcb, 0x2b, 0xab, 0x6b, 0xeb, ++ 0x1b, 0x9b, 0x5b, 0xdb, 0x3b, 0xbb, 0x7b, 0xfb, ++ 0x07, 0x87, 0x47, 0xc7, 0x27, 0xa7, 0x67, 0xe7, ++ 0x17, 0x97, 0x57, 0xd7, 0x37, 0xb7, 0x77, 0xf7, ++ 0x0f, 0x8f, 0x4f, 0xcf, 0x2f, 0xaf, 0x6f, 0xef, ++ 0x1f, 0x9f, 0x5f, 0xdf, 0x3f, 0xbf, 0x7f, 0xff ++}; ++ ++static void ++mirror_a1_bits (cairo_surface_t *image_surface) ++{ ++ int w, h, stride, x, y; ++ unsigned char *data; ++ ++ h = cairo_image_surface_get_height (image_surface); ++ stride = cairo_image_surface_get_stride (image_surface); ++ data = cairo_image_surface_get_data (image_surface); ++ ++ for (y = 0; y < h; y++) { ++ for (x = 0; x < stride; x++) { ++ *data = mirror[*data]; ++ data++; ++ } ++ } ++} ++ ++static cairo_bool_t ++_cairo_win32_surface_is_gdi_format (cairo_surface_t *image_surface) ++{ ++ return cairo_image_surface_get_format (image_surface) != CAIRO_FORMAT_A1; ++} ++ ++static void ++_cairo_win32_surface_convert_from_gdi_format (cairo_surface_t *image_surface) ++{ ++ if (cairo_image_surface_get_format (image_surface) == CAIRO_FORMAT_A1) ++ mirror_a1_bits (image_surface); ++} ++ ++static void ++_cairo_win32_surface_convert_to_gdi_format (cairo_surface_t *image_surface) ++{ ++ if (cairo_image_surface_get_format (image_surface) == CAIRO_FORMAT_A1) ++ mirror_a1_bits (image_surface); ++} ++ + static cairo_status_t + _cairo_win32_surface_acquire_source_image (void *abstract_surface, + cairo_image_surface_t **image_out, +@@ -554,7 +627,7 @@ _cairo_win32_surface_acquire_source_image (void *abstract_sur + cairo_win32_surface_t *local; + cairo_status_t status; + +- if (surface->image) { ++ if (surface->image && _cairo_win32_surface_is_gdi_format (surface->image)) { + *image_out = (cairo_image_surface_t *)surface->image; + *image_extra = NULL; + return CAIRO_STATUS_SUCCESS; +@@ -566,6 +639,8 @@ _cairo_win32_surface_acquire_source_image (void *abstract_sur + if (status) + return status; + ++ _cairo_win32_surface_convert_from_gdi_format (local->image); ++ + *image_out = (cairo_image_surface_t *)local->image; + *image_extra = local; + return CAIRO_STATUS_SUCCESS; +@@ -593,7 +668,7 @@ _cairo_win32_surface_acquire_dest_image (void *abstract_surfa + cairo_win32_surface_t *local = NULL; + cairo_status_t status; + +- if (surface->image) { ++ if (surface->image && _cairo_win32_surface_is_gdi_format (surface->image)) { + GdiFlush(); + + *image_out = (cairo_image_surface_t *) surface->image; +@@ -611,6 +686,8 @@ _cairo_win32_surface_acquire_dest_image (void *abstract_surfa + if (status) + return status; + ++ _cairo_win32_surface_convert_from_gdi_format (local->image); ++ + *image_out = (cairo_image_surface_t *) local->image; + *image_extra = local; + *image_rect = *interest_rect; +@@ -630,6 +707,8 @@ _cairo_win32_surface_release_dest_image (void *abstract_surfa + if (!local) + return; + ++ _cairo_win32_surface_convert_from_gdi_format (local->image); ++ + if (!BitBlt (surface->dc, + image_rect->x, image_rect->y, + image_rect->width, image_rect->height, +@@ -1313,7 +1392,7 @@ _cairo_win32_surface_composite (cairo_operator_t op, + + UNSUPPORTED: + /* Fall back to image surface directly, if this is a DIB surface */ +- if (dst->image) { ++ if (dst->image && _cairo_win32_surface_is_gdi_format (dst->image)) { + GdiFlush(); + + return dst->image->backend->composite (op, pattern, mask_pattern, diff --git a/mingw32-cairo-reset_clip.patch b/mingw32-cairo-reset_clip.patch new file mode 100644 index 0000000..0335e71 --- /dev/null +++ b/mingw32-cairo-reset_clip.patch @@ -0,0 +1,21 @@ +commit a02dd8ddc7dde30ba71e87ab5e90bf910b68da2b +Author: Alexander Larsson +Date: Fri Nov 11 16:15:31 2011 +0100 + + win32: Reset clip in _cairo_win32_surface_release_dest_image + + Without this we were using leftover clip regions from e.g. show_glyphs + which made the fallback drawing results disappear. + +diff --git a/src/cairo-win32-surface.c b/src/cairo-win32-surface.c +index 660aaba..59305f1 100644 +--- a/src/cairo-win32-surface.c ++++ b/src/cairo-win32-surface.c +@@ -707,6 +707,7 @@ _cairo_win32_surface_release_dest_image (void *abstract_surfa + if (!local) + return; + ++ _cairo_win32_surface_set_clip_region (surface, NULL); + _cairo_win32_surface_convert_from_gdi_format (local->image); + + if (!BitBlt (surface->dc, diff --git a/mingw32-cairo.spec b/mingw32-cairo.spec index 92f0c78..2d85ed7 100644 --- a/mingw32-cairo.spec +++ b/mingw32-cairo.spec @@ -4,7 +4,7 @@ Name: mingw32-cairo Version: 1.10.2 -Release: 6%{?dist} +Release: 7%{?dist} Summary: MinGW Windows Cairo library License: LGPLv2 or MPLv1.1 @@ -16,6 +16,14 @@ Group: Development/Libraries # isn't declared in any of the mingw headers. work around this Patch0: mingw32-cairo-fix-ffs-declaration.patch +# Fix A1 format win32 surfaces +# https://bugs.freedesktop.org/show_bug.cgi?id=42739 +Patch1: mingw32-cairo-A1_surfaces.patch + +# Reset clip region when writing fallback results +# https://bugs.freedesktop.org/show_bug.cgi?id=42821 +Patch2: mingw32-cairo-reset_clip.patch + BuildArch: noarch BuildRequires: mingw32-filesystem >= 68 @@ -57,6 +65,8 @@ Static version of the MinGW Windows Cairo library. %prep %setup -q -n cairo-%{version} %patch0 -p0 +%patch1 -p1 -b .A1_surfaces +%patch2 -p1 -b .reset_clip %build @@ -107,6 +117,11 @@ find $RPM_BUILD_ROOT -name "*.la" -delete %changelog +* Thu Feb 09 2012 Kalev Lember - 1.10.2-7 +- Apply patches recommended by the GTK+ Windows team: +- Fix A1 format win32 surfaces +- Reset clip region when writing fallback results + * Tue Jan 23 2012 Erik van Pienbroek - 1.10.2-6 - Rebuild against libpng 1.5 - Dropped .la files From 6b512e0f6cef11ce190b5f7975f255570d0347f9 Mon Sep 17 00:00:00 2001 From: Kalev Lember Date: Fri, 10 Feb 2012 00:42:51 +0200 Subject: [PATCH 25/26] Enable cairo-fc and cairo-ft Needed by e.g. poppler and webkitgtk freetype font backend. --- mingw32-cairo.spec | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/mingw32-cairo.spec b/mingw32-cairo.spec index 2d85ed7..8037598 100644 --- a/mingw32-cairo.spec +++ b/mingw32-cairo.spec @@ -4,7 +4,7 @@ Name: mingw32-cairo Version: 1.10.2 -Release: 7%{?dist} +Release: 8%{?dist} Summary: MinGW Windows Cairo library License: LGPLv2 or MPLv1.1 @@ -29,6 +29,8 @@ BuildArch: noarch BuildRequires: mingw32-filesystem >= 68 BuildRequires: mingw32-gcc BuildRequires: mingw32-binutils +BuildRequires: mingw32-fontconfig +BuildRequires: mingw32-freetype BuildRequires: mingw32-libxml2 BuildRequires: mingw32-pixman BuildRequires: mingw32-libpng @@ -37,12 +39,6 @@ BuildRequires: mingw32-zlib BuildRequires: mingw32-glib2 BuildRequires: pkgconfig -# These are BRs for the base package, but are not needed on Win32 -# because Cairo includes a separate Win32 font rendering back end -# (thanks to: Erik van Pienbroek). -#BuildRequires: mingw32-fontconfig -#BuildRequires: mingw32-freetype - Requires: pkgconfig @@ -74,10 +70,11 @@ Static version of the MinGW Windows Cairo library. --disable-xlib \ --disable-xcb \ --enable-win32 \ + --enable-fc \ + --enable-ft \ --enable-png \ --enable-static \ --disable-pthread \ - --disable-ft \ --enable-gobject make %{?_smp_mflags} @@ -101,6 +98,8 @@ find $RPM_BUILD_ROOT -name "*.la" -delete %{_mingw32_libdir}/libcairo.dll.a %{_mingw32_libdir}/libcairo-gobject.dll.a %{_mingw32_libdir}/libcairo-script-interpreter.dll.a +%{_mingw32_libdir}/pkgconfig/cairo-fc.pc +%{_mingw32_libdir}/pkgconfig/cairo-ft.pc %{_mingw32_libdir}/pkgconfig/cairo-gobject.pc %{_mingw32_libdir}/pkgconfig/cairo-pdf.pc %{_mingw32_libdir}/pkgconfig/cairo-png.pc @@ -117,6 +116,10 @@ find $RPM_BUILD_ROOT -name "*.la" -delete %changelog +* Thu Feb 09 2012 Kalev Lember - 1.10.2-8 +- Enable cairo-fc and cairo-ft + (needed by e.g. poppler and webkitgtk freetype font backend) + * Thu Feb 09 2012 Kalev Lember - 1.10.2-7 - Apply patches recommended by the GTK+ Windows team: - Fix A1 format win32 surfaces From 0483f0e87fcb862a77e3d1fa5e1ab5d57fc15a33 Mon Sep 17 00:00:00 2001 From: Erik van Pienbroek Date: Tue, 28 Feb 2012 01:08:37 +0100 Subject: [PATCH 26/26] Rebuild against the mingw-w64 toolchain --- mingw32-cairo.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/mingw32-cairo.spec b/mingw32-cairo.spec index 8037598..d17fe8e 100644 --- a/mingw32-cairo.spec +++ b/mingw32-cairo.spec @@ -4,7 +4,7 @@ Name: mingw32-cairo Version: 1.10.2 -Release: 8%{?dist} +Release: 9%{?dist} Summary: MinGW Windows Cairo library License: LGPLv2 or MPLv1.1 @@ -116,6 +116,9 @@ find $RPM_BUILD_ROOT -name "*.la" -delete %changelog +* Tue Feb 28 2012 Erik van Pienbroek - 1.10.2-9 +- Rebuild against the mingw-w64 toolchain + * Thu Feb 09 2012 Kalev Lember - 1.10.2-8 - Enable cairo-fc and cairo-ft (needed by e.g. poppler and webkitgtk freetype font backend)