1 |
%define name gimp |
2 |
%define version 2.7.3 |
3 |
%define release %mkrel 1 |
4 |
%define lib_major 0 |
5 |
|
6 |
# optional compile flags |
7 |
%define enable_python 1 |
8 |
%{?_without_python: %global enable_python 0} |
9 |
|
10 |
%define enable_lzw 0 |
11 |
%{?_with_lzw: %global enable_lzw 1} |
12 |
|
13 |
%define req_gtk_version 2.12.1 |
14 |
|
15 |
%define api_version 2.0 |
16 |
%define abi_version 2.7 |
17 |
%define libname %mklibname %{name} %{api_version}_%{lib_major} |
18 |
%define devlibname %mklibname -d %{name}%{api_version} |
19 |
|
20 |
Summary: The GNU Image Manipulation Program |
21 |
Name: %name |
22 |
Epoch: 1 |
23 |
Version: %{version} |
24 |
Release: %{release} |
25 |
License: GPLv2+ |
26 |
Group: Graphics |
27 |
URL: http://www.gimp.org/ |
28 |
|
29 |
Source0: ftp://ftp.gimp.org/pub/gimp/v%{abi_version}/gimp-%version.tar.bz2 |
30 |
Source1: ftp://ftp.gimp.org/pub/gimp/v%{abi_version}/gimp-%version.tar.bz2.md5 |
31 |
Source13: gimp-scripting-sample.pl |
32 |
Patch0: gimp-2.6.4-fix-str-fmt.patch |
33 |
Patch1: gimp-2.6.4-fix-linking.patch |
34 |
#gw fix name in desktop file and disable startup notification |
35 |
Patch2: gimp-2.5.1-desktopentry.patch |
36 |
# add upstream patch to fix goption warning with glib >= 2.28.2 |
37 |
Patch3: gimp-2.6.11-fix-goption-warning.patch |
38 |
Patch4: gimp-libpng15-v2.diff |
39 |
BuildRequires: libxfixes-devel |
40 |
BuildRequires: gegl-devel >= 0.0.18 |
41 |
BuildRequires: imagemagick |
42 |
BuildRequires: aalib-devel |
43 |
BuildRequires: gtk-doc >= 1.11-3 |
44 |
BuildRequires: libexif-devel |
45 |
BuildRequires: libart_lgpl-devel |
46 |
BuildRequires: libgtk+2.0-devel >= %{req_gtk_version} |
47 |
BuildRequires: libgnomeui2-devel |
48 |
BuildRequires: libalsa-devel |
49 |
BuildRequires: pkgconfig(poppler-glib) >= 0.4.1 |
50 |
BuildRequires: libmng-devel |
51 |
BuildRequires: libpng-devel |
52 |
BuildRequires: libtiff-devel |
53 |
BuildRequires: perl |
54 |
BuildRequires: xpm-devel |
55 |
BuildRequires: librsvg-devel >= 2.14.0 |
56 |
BuildRequires: libxmu-devel |
57 |
BuildRequires: intltool |
58 |
# mail plugin |
59 |
BuildRequires: sendmail-command |
60 |
# help browser |
61 |
BuildRequires: libwebkitgtk-devel |
62 |
# print plugin |
63 |
#BuildRequires: libgimpprint-devel >= 4.2.0 |
64 |
# python plugin |
65 |
%if %enable_python |
66 |
BuildRequires: pygtk2.0-devel >= 2.10.4 |
67 |
BuildRequires: python-devel |
68 |
%endif |
69 |
BuildRequires: automake |
70 |
BuildRequires: lcms-devel |
71 |
BuildRequires: libwmf-devel >= 0.2.8 |
72 |
BuildRequires: libhal-devel |
73 |
BuildRequires: libxext-devel |
74 |
BuildRequires: desktop-file-utils |
75 |
Provides: gimp1_3 gimp2_0 gimp2_2 gimp2.6 |
76 |
Obsoletes: gimp1_3 gimp2_0 gimp2_2 gimp2.6 |
77 |
# workaround libgimp not bumping its major on API/ABI changes: |
78 |
Requires: %{libname} = %epoch:%{version} |
79 |
Conflicts: perl-Gimp < 2.2 |
80 |
Conflicts: gutenprint-gimp2 < 5.0.1 |
81 |
Suggests: gimp-help-2 |
82 |
Obsoletes: gimp-help-2-common < 2.6 |
83 |
|
84 |
%description |
85 |
The GIMP is an image manipulation program suitable for photo retouching, |
86 |
image composition and image authoring. Many people find it extremely useful |
87 |
in creating logos and other graphics for web pages. The GIMP has many of the |
88 |
tools and filters you would expect to find in similar commercial offerings, |
89 |
and some interesting extras as well. |
90 |
|
91 |
The GIMP provides a large image manipulation toolbox, including channel |
92 |
operations and layers, effects, sub-pixel imaging and anti-aliasing, |
93 |
and conversions, all with multi-level undo. |
94 |
|
95 |
This version of The GIMP includes a scripting facility, but many of the |
96 |
included scripts rely on fonts that we cannot distribute. The GIMP ftp |
97 |
site has a package of fonts that you can install by yourself, which |
98 |
includes all the fonts needed to run the included scripts. Some of the |
99 |
fonts have unusual licensing requirements; all the licenses are documented |
100 |
in the package. Get them in ftp://ftp.gimp.org/pub/gimp/fonts/ if you are so |
101 |
inclined. Alternatively, choose fonts which exist on your system before |
102 |
running the scripts. |
103 |
|
104 |
Build Options: |
105 |
--without python Disable pygimp (default enabled) |
106 |
--with lzw Enable LZW compression in GIF (default disabled) |
107 |
|
108 |
%package -n %{devlibname} |
109 |
Summary: GIMP plugin and extension development kit |
110 |
Group: Development/GNOME and GTK+ |
111 |
Requires: libgtk+2.0-devel >= %{req_gtk_version} |
112 |
Epoch: 1 |
113 |
License: LGPLv2+ |
114 |
Requires: %{libname} = %epoch:%{version} |
115 |
Provides: gimp-devel = %{version}-%{release} |
116 |
Provides: gimp2.6-devel = %{version}-%{release} |
117 |
Provides: libgimp-devel = %{version}-%{release} |
118 |
|
119 |
%description -n %{devlibname} |
120 |
Static libraries and header files for writing GIMP plugins and extensions. |
121 |
|
122 |
%package -n %libname |
123 |
Summary: GIMP libraries |
124 |
Group: System/Libraries |
125 |
Epoch: 1 |
126 |
License: LGPLv2+ |
127 |
Provides: libgimp%{api_version} = %{version}-%{release} |
128 |
Obsoletes: %mklibname gimp 2.6_2.0_0 |
129 |
|
130 |
%description -n %libname |
131 |
This is the library that provides core GIMP functionality. |
132 |
It enable other programs to use GIMP's features but is mainly intended |
133 |
to be used by the GIMP and its "external" plugins. |
134 |
|
135 |
%package python |
136 |
Summary: GIMP python extension |
137 |
Group: Graphics |
138 |
Epoch: 1 |
139 |
Requires: pygtk2.0 |
140 |
Obsoletes: gimp1_3-python, gimp2_0-python, gimp2_2-python |
141 |
|
142 |
%description python |
143 |
This package contains the python modules for GIMP, which act as a |
144 |
wrapper to libgimp allowing the writing of plug-ins for Gimp. |
145 |
This is similar to script-fu, except that you can use the full set |
146 |
of Python extension modules from the plug-in, and you write plug-in |
147 |
in python instead of in scheme. |
148 |
|
149 |
%prep |
150 |
%setup -q -n gimp-%version |
151 |
#%patch0 -p1 -b .fix-str-fmt |
152 |
#%patch1 -p1 -b .fix-linking |
153 |
%patch2 -p1 -b .desktopentry |
154 |
#%patch3 -p1 -b .goption-warning |
155 |
#%patch4 -p0 -b .libpng |
156 |
|
157 |
#needed by patch1 |
158 |
#autoreconf -fi -I m4macros |
159 |
|
160 |
%build |
161 |
|
162 |
%configure2_5x --enable-default-binary=yes --disable-static \ |
163 |
--enable-mp=yes \ |
164 |
%if %enable_python |
165 |
--enable-python=yes \ |
166 |
%else |
167 |
--enable-python=no \ |
168 |
%endif |
169 |
%if %enable_lzw |
170 |
--with-gif-compression=lzw \ |
171 |
%else |
172 |
--with-gif-compression=rle \ |
173 |
%endif |
174 |
--enable-gtk-doc=yes |
175 |
|
176 |
%make |
177 |
|
178 |
%install |
179 |
rm -fr %{buildroot} |
180 |
|
181 |
%makeinstall_std |
182 |
|
183 |
#clean unpackaged files |
184 |
find %buildroot -name '*.la'|xargs rm |
185 |
|
186 |
# workaround broken help system |
187 |
HELP_DIR=%{buildroot}%_datadir/gimp/%api_version/help/C |
188 |
[[ -d $HELP_DIR ]] || mkdir -p $HELP_DIR |
189 |
HELP_IDX=$HELP_DIR/introduction.html |
190 |
echo -e '<HTML><HEAD><TITLE>GIMP Base Library</HEAD>\n<BODY><UL>' > $HELP_IDX |
191 |
|
192 |
/bin/ls %{buildroot}%_datadir/gtk-doc/html/*/index.html | sed -e "s@%{buildroot}@@g" >> $HELP_IDX |
193 |
perl -pi -e 's!(.*/html/)([^/]*)(/index.html)!<LI><A HREF="\1\2\3">\2</A>!g' $HELP_IDX |
194 |
|
195 |
echo '</UL></BODY></HTML>' >> $HELP_IDX |
196 |
|
197 |
%find_lang gimp20 --all-name |
198 |
|
199 |
%if %enable_python |
200 |
chmod 755 %buildroot%_libdir/gimp/%{api_version}/plug-ins/*.py |
201 |
mkdir -p %{buildroot}%{_libdir}/python%{pyver}/site-packages |
202 |
echo %_libdir/gimp/%{api_version}/python > %{buildroot}%{_libdir}/python%{pyver}/site-packages/gimp.pth |
203 |
echo %_libdir/gimp/%{api_version}/plug-ins >> %{buildroot}%{_libdir}/python%{pyver}/site-packages/gimp.pth |
204 |
%endif |
205 |
|
206 |
desktop-file-install --vendor="" \ |
207 |
--add-category="X-MandrivaLinux-CrossDesktop" \ |
208 |
--dir %{buildroot}%{_datadir}/applications %{buildroot}%{_datadir}/applications/* |
209 |
|
210 |
%clean |
211 |
rm -rf %{buildroot} |
212 |
|
213 |
%files -f gimp20.lang |
214 |
%defattr(-,root,root,0755) |
215 |
%{_bindir}/gimp |
216 |
%{_bindir}/gimp-%abi_version |
217 |
%{_bindir}/gimp-console |
218 |
%{_bindir}/gimp-console-%abi_version |
219 |
%{_datadir}/applications/* |
220 |
%{_datadir}/gimp |
221 |
%dir %{_libdir}/gimp/%{api_version} |
222 |
%dir %{_libdir}/gimp/%{api_version}/environ |
223 |
%{_libdir}/gimp/%{api_version}/interpreters |
224 |
%{_libdir}/gimp/%{api_version}/environ/default.env |
225 |
%{_libdir}/gimp/%{api_version}/modules |
226 |
%{_libdir}/gimp/%{api_version}/plug-ins |
227 |
%exclude %{_libdir}/gimp/%{api_version}/plug-ins/*.py |
228 |
%{_mandir}/man1/gimp* |
229 |
%{_mandir}/man5/gimp* |
230 |
%_datadir/icons/hicolor/*/apps/gimp.png |
231 |
#%_datadir/icons/hicolor/scalable/apps/gimp.svg |
232 |
%config(noreplace) %{_sysconfdir}/gimp |
233 |
|
234 |
%doc AUTHORS NEWS README README.i18n docs/Wilber* |
235 |
|
236 |
%files -n %{devlibname} |
237 |
%defattr(-,root,root,0755) |
238 |
%doc ChangeLog |
239 |
%doc %{_datadir}/gtk-doc/html/* |
240 |
%{_bindir}/gimptool-* |
241 |
%{_datadir}/aclocal/*.m4 |
242 |
%{_includedir}/* |
243 |
%{_libdir}/lib*.so |
244 |
%{_libdir}/pkgconfig/* |
245 |
%{_mandir}/man1/gimptool-* |
246 |
|
247 |
%files -n %libname |
248 |
%defattr(-,root,root,755) |
249 |
# explicitly list all libs to avoid old libtool issue |
250 |
%{_libdir}/libgimpconfig-%{api_version}.so.%{lib_major}* |
251 |
%{_libdir}/libgimp-%{api_version}.so.%{lib_major}* |
252 |
%{_libdir}/libgimpthumb-%{api_version}.so.%{lib_major}* |
253 |
%{_libdir}/libgimpbase-%{api_version}.so.%{lib_major}* |
254 |
%{_libdir}/libgimpcolor-%{api_version}.so.%{lib_major}* |
255 |
%{_libdir}/libgimpmath-%{api_version}.so.%{lib_major}* |
256 |
%{_libdir}/libgimpmodule-%{api_version}.so.%{lib_major}* |
257 |
%{_libdir}/libgimpui-%{api_version}.so.%{lib_major}* |
258 |
%{_libdir}/libgimpwidgets-%{api_version}.so.%{lib_major}* |
259 |
|
260 |
%if %enable_python |
261 |
%files python |
262 |
%defattr(-,root,root,755) |
263 |
%{_libdir}/gimp/%{api_version}/environ/pygimp.env |
264 |
%{_libdir}/gimp/%{api_version}/python |
265 |
%{_libdir}/gimp/%{api_version}/plug-ins/*.py |
266 |
%{_libdir}/python%{pyver}/site-packages/*.pth |
267 |
%endif |