Initial version of inkscape.
[fedora-mingw.git] / inkscape / mingw32-inkscape.spec
1 # NB: Not for a Fedora package, just an example to show how
2 # to build Inkscape using the cross-compiler.
3
4 %define __strip %{_mingw32_strip}
5 %define __objdump %{_mingw32_objdump}
6 %define _use_internal_dependency_generator 0
7 %define __find_requires %{_mingw32_findrequires}
8 %define __find_provides %{_mingw32_findprovides}
9
10 Name:           mingw32-inkscape
11 Version:        20081027
12 Release:        1%{?dist}
13 Summary:        MinGW Windows port of Inkscape vector graphics editor
14
15 License:        LGPLv2+
16 Group:          Development/Libraries
17 URL:            http://www.inkscape.org/
18 # Checked out of SVN on the date shown and then just rolled up into
19 # a tarball.
20 # svn co https://inkscape.svn.sourceforge.net/svnroot/inkscape/inkscape/trunk inkscape
21 # tar zcf /tmp/inkscape-%{version}.tar.gz inkscape
22 Source0:        inkscape-%{version}.tar.gz
23 BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
24
25 # Source patches needed.
26 Patch0:         mingw32-inkscape-20081027-no-gc-version-check-when-crosscompiling.patch
27 Patch1:         mingw32-inkscape-20081027-no-is-os-vista.patch
28 Patch2:         mingw32-inkscape-20081027-extra-win32-objects.patch
29 Patch3:         mingw32-inkscape-20081027-pango-enable-engine.patch
30
31 # This is a hack, but for some reason PKG_CHECK_MODULES isn't
32 # updating CFLAGS correctly.  This just works around the problem.
33 Patch4:         mingw32-inkscape-20081027-Makefile.am-cflags.patch
34
35 BuildArch:      noarch
36
37 BuildRequires:  mingw32-filesystem >= 30
38 BuildRequires:  mingw32-gcc
39 BuildRequires:  mingw32-gcc-c++
40 BuildRequires:  mingw32-binutils
41 BuildRequires:  mingw32-glibmm24
42 BuildRequires:  mingw32-cairomm
43 BuildRequires:  mingw32-pangomm
44 BuildRequires:  mingw32-gtkmm24
45 BuildRequires:  mingw32-popt
46 BuildRequires:  mingw32-libxml2
47 BuildRequires:  mingw32-libxslt
48 BuildRequires:  mingw32-gc
49 BuildRequires:  mingw32-gsl
50 BuildRequires:  mingw32-boost
51 BuildRequires:  mingw32-libsigc++20
52
53 BuildRequires:  autoconf, automake, libtool
54 BuildRequires:  perl
55
56
57 %description
58 An Open Source vector graphics editor, with capabilities similar to
59 Illustrator, CorelDraw, or Xara X, using the W3C standard Scalable
60 Vector Graphics (SVG) file format.
61
62 Inkscape supports many advanced SVG features (markers, clones, alpha
63 blending, etc.) and great care is taken in designing a streamlined
64 interface. It is very easy to edit nodes, perform complex path
65 operations, trace bitmaps and much more. We also aim to maintain a
66 thriving user and developer community by using open,
67 community-oriented development.
68
69
70 %prep
71 %setup -q -n inkscape
72
73 %patch0 -p0
74 %patch1 -p0
75 %patch2 -p0
76 %patch3 -p0
77 %patch4 -p0
78
79 ./autogen.sh
80
81
82 %build
83 %{_mingw32_configure} \
84   --enable-lcms=no \
85   --without-gnome-vfs
86
87 # Additionally remove -lX* libraries from the Makefile.
88 perl -pi.bak -e 's/-lX\w+//g' src/Makefile
89
90 make
91
92
93 %install
94 rm -rf $RPM_BUILD_ROOT
95 make DESTDIR=$RPM_BUILD_ROOT install
96
97 # Remove static libraries but DON'T remove *.dll.a files.
98 rm $RPM_BUILD_ROOT%{_mingw32_libdir}/libfoo.a
99
100
101 %clean
102 rm -rf $RPM_BUILD_ROOT
103
104
105 %files
106 %defattr(-,root,root)
107 %{_mingw32_bindir}/foo.dll
108 %{_mingw32_libdir}/foo.dll.a
109 # etc.
110
111
112 %changelog
113 * Wed Sep 24 2008 Your Name <you@example.com> - 1.2.3-1
114 - Initial RPM release.