/[packages]/cauldron/imagemagick/current/SPECS/imagemagick.spec
ViewVC logotype

Contents of /cauldron/imagemagick/current/SPECS/imagemagick.spec

Parent Directory Parent Directory | Revision Log Revision Log


Revision 202829 - (show annotations) (download)
Sun Jan 29 08:54:24 2012 UTC (12 years, 2 months ago) by fwang
File size: 10860 byte(s)
don't know how these requires come from
1 %define build_test 0
2 %{?_with_test: %{expand: %%global build_test 1}}
3 %{?_without_test: %{expand: %%global build_test 0}}
4
5 %define bootstrap 1
6 %{?_without_bootstrap: %global bootstrap 0}
7 %{?_with_bootstrap: %global bootstrap 1}
8
9 # V E R S I O N P A R T S
10
11 # their "official" version
12 %define rversion 6.7.5
13
14 # their "minor" version
15 %define minor_rev 0
16
17 # some other funny version
18 # (aw) from the docs: Versions with Q8 in the name are 8 bits-per-pixel
19 # component (e.g. 8-bit red, 8-bit green, etc.), whereas, Q16 in the
20 # filename are 16 bits-per-pixel component. A Q16 version permits you
21 # to read or write 16-bit images without losing precision but requires
22 # twice as much resources as the Q8 version.
23 %define qlev Q16
24
25 # the full file version
26 %define dversion %{rversion}-%{minor_rev}
27
28 %define major 5
29
30 %define libname %mklibname magick %{major}
31 %define develname %mklibname magick -d
32
33 Summary: An X application for displaying and manipulating images
34 Name: imagemagick
35 Version: %{rversion}.%{minor_rev}
36 Release: %mkrel 1
37 License: BSD-like
38 Group: Graphics
39 URL: http://www.imagemagick.org/
40 Source0: ftp://ftp.imagemagick.org/pub/ImageMagick/ImageMagick-%{dversion}.tar.xz
41 Source1: ImageMagick.pdf.bz2
42 # re-scaled from ftp://ftp.imagemagick.org/pub/ImageMagick/images/magick-icon.png
43 Source10: magick-icon_16x16.png
44 Source11: magick-icon_32x32.png
45 Source12: magick-icon_48x48.png
46 Source13: magick-icon_64x64.png
47 Patch0: imagemagick-docdir.diff
48 #gw fix format strings, but it doesn't work for the perl-Magick
49 Patch1: ImageMagick-6.4.8-9-format-strings.patch
50 Patch2: ImageMagick-6.7.4-force-so.patch
51 Patch7: imagemagick-urw.diff
52 Patch17: imagemagick-fpx.diff
53 Patch19: ImageMagick-libpath.diff
54 Patch20: ImageMagick-6.4.8-9-fix-montageimages-test.patch
55
56 Requires: %{libname} = %{version}
57 Obsoletes: ImageMagick < 6.3.2.9-6
58 Provides: ImageMagick = %{version}-%{release}
59
60 BuildRequires: libx11-devel
61 BuildRequires: libxext-devel
62 BuildRequires: bzip2-devel
63 BuildRequires: cairo-devel
64 BuildRequires: fontconfig-devel
65 BuildRequires: freetype2-devel >= 2.1.7
66 BuildRequires: chrpath
67 BuildRequires: graphviz-devel >= 2.9.0
68 BuildRequires: libjasper-devel
69 BuildRequires: libjbig-devel
70 BuildRequires: libjpeg-devel
71 BuildRequires: libpng-devel
72 BuildRequires: zlib-devel
73 BuildRequires: lcms-devel
74 BuildRequires: lqr-devel
75 BuildRequires: libltdl-devel
76 BuildRequires: perl-devel
77 BuildRequires: librsvg-devel
78 BuildRequires: tiff-devel
79 BuildRequires: libwmf-devel
80 BuildRequires: libxml2-devel
81 BuildRequires: lzma-devel
82 %if !%bootstrap
83 BuildRequires: djvulibre-devel
84 %endif
85 BuildRequires: ghostscript
86 BuildConflicts: %{develname}
87
88 %description
89 ImageMagick is a powerful image display, conversion and manipulation tool. It
90 runs in an X session. With this tool, you can view, edit and display a variety
91 of image formats.
92
93 ImageMagick can make use of the following delegate programs, available as
94 packages in %{_vendor}: curl enscript ffmpeg ghostscript ghostscript-X gimp
95 gnuplot graphviz html2ps mplayer ncompress netpbm sane-backends tetex-dvips
96 transfig ufraw xdg-utils zip autotrace povray
97
98 %package desktop
99 Summary: ImageMagick menus
100 Group: Graphics
101 Requires: xterm
102 Obsoletes: ImageMagick-desktop < 6.3.2.9-6
103
104 %description desktop
105 This package contains the menu and .desktop entries to run the "display"
106 command from the menu.
107
108 %package -n %{libname}
109 Summary: ImageMagick libraries
110 Group: System/Libraries
111 # (Anssi 02/2008): Wrongly named at first, can be removed when major changes again:
112 Obsoletes: %{_lib}magick%{major}.0.0 < %{version}-%{release}
113
114 %description -n %{libname}
115 This package contains the libraries needed to run programs dynamically linked
116 with ImageMagick libraries.
117
118 %package -n %{develname}
119 Summary: Static libraries and header files for ImageMagick app development
120 Group: Development/C
121 Requires: %{libname} = %{version}
122 Provides: %{name}-devel = %{version}-%{release}
123 Provides: ImageMagick-devel = %{version}-%{release}
124 Provides: libmagick-devel = %{version}-%{release}
125 Provides: libMagick-devel = %{version}-%{release}
126 Obsoletes: ImageMagick-devel
127 Provides: libMagick5-devel = %{version}-%{release}
128 Obsoletes: libMagick5-devel
129 # 2006
130 Obsoletes: %{mklibname Magick 8.3.2 -d}
131 # 2007.0
132 Obsoletes: %{mklibname magick 10.4.0 -d} %{mklibname Magick 10.4.0 -d}
133 # 2007.1/2008.0
134 Obsoletes: %{mklibname magick 10.7.0 -d} %{mklibname Magick 10.7.0 -d}
135 # pre 2008.1
136 Obsoletes: %{mklibname magick 10.9.0 -d} %{mklibname Magick 10.9.0 -d}
137
138 %description -n %{develname}
139 If you want to create applications that will use ImageMagick code or APIs,
140 you'll need to install these packages as well as ImageMagick. These additional
141 packages aren't necessary if you simply want to use ImageMagick, however.
142
143 ImageMagick-devel is an addition to ImageMagick which includes static libraries
144 and header files necessary to develop applications.
145
146 %package -n perl-Image-Magick
147 Summary: Libraries and modules for access to ImageMagick from perl
148 Group: Development/Perl
149 Requires: %{name} = %{version}
150 Provides: perl-Magick = %{version}-%{release}
151 Obsoletes: perl-Magick
152
153 %description -n perl-Image-Magick
154 This is the ImageMagick perl support package. It includes perl modules and
155 support files for access to ImageMagick library from perl.
156
157 %package doc
158 Summary: %{name} Documentation
159 Group: Books/Other
160 Obsoletes: ImageMagick-doc < 6.3.2.9-6
161 BuildArch: noarch
162
163 %description doc
164 This package contains HTML/PDF documentation of %{name}.
165
166 %prep
167
168 %setup -q -n ImageMagick-%{rversion}-%minor_rev
169
170 %patch0 -p1 -b .docdir
171 #patch1 -p1
172 %patch2 -p0 -b .so
173 %patch7 -p0 -b .urw
174 %patch17 -p0 -b .fpx
175 %patch19 -p1 -b .libpath
176 %patch20 -p1 -b .ppc
177
178 bzcat %{SOURCE1} > ImageMagick.pdf
179 install -m 644 %{SOURCE10} %{SOURCE11} %{SOURCE12} %{SOURCE13} .
180 libtoolize --copy --force; aclocal -I m4; autoconf; automake
181
182 %build
183 #gw the format-string patch is incomplete:
184 %define Werror_cflags %nil
185 export CFLAGS="%{optflags} -fno-strict-aliasing -fPIC"
186 export CXXFLAGS="%{optflags} -fno-strict-aliasing -fPIC"
187
188 # don't use icecream
189 export PATH=/bin:/usr/bin
190
191 %configure2_5x \
192 --docdir=%{_defaultdocdir}/imagemagick \
193 --with-pic \
194 --enable-shared --disable-static \
195 --enable-fast-install \
196 --disable-ltdl-install \
197 --with-threads \
198 --with-magick_plus_plus \
199 --with-gslib \
200 --with-wmf \
201 --with-lcms \
202 --with-rsvg \
203 --with-xml \
204 --without-dps \
205 --without-windows-font-dir \
206 --with-modules \
207 --with-perl \
208 --without-included-ltdl --with-ltdl-include=%{_includedir} \
209 --with-ltdl-lib=%{_libdir} \
210 --with-perl-options="INSTALLDIRS=vendor CC='%{__cc} -L$PWD/magick/.libs' LDDLFLAGS='-shared -L$PWD/magick/.libs'" \
211 --with-jp2 \
212 --with-gvc \
213 --with-lqr
214
215 # without the following, it doesn't build correctly with "make -j 4"
216 perl -lpi -e '$_ .= " magick/libMagickCore.la" if index($_, q($(PERLMAKEFILE))) == 0' Makefile
217
218 # Disable rpath
219 sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool
220 sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool
221
222 %make
223
224 %if %{build_test}
225 %check
226 # these tests require X
227 if [ -f PerlMagick/t/x11/read.t ]; then
228 mv PerlMagick/t/x11/read.t PerlMagick/t/x11/read.t.disabled
229 fi
230 if [ -f PerlMagick/t/x11/write.t ]; then
231 mv PerlMagick/t/x11/write.t PerlMagick/t/x11/write.t.disabled
232 fi
233 #dlname=`grep "^dlname" Magick++/lib/.libs/libMagick++.la | cut -d\' -f2`
234 #LD_PRELOAD="$PWD/Magick++/lib/.libs/$dlname" VERBOSE="1" make check
235 make check
236 %endif
237
238 %install
239 rm -rf %{buildroot}
240
241 # (Abel) set LD_RUN_PATH to null, to avoid adding rpath to perlmagick module
242 %makeinstall_std LD_RUN_PATH="" pkgdocdir=/installed_docs
243
244 # fix docs inclusion (fix an unknown new rpm bug)
245 rm -rf installed_docs; mv %{buildroot}/installed_docs .
246
247 # Remove unpackaged files
248 find %{buildroot} -name '*.la' -delete
249
250 %multiarch_binaries %{buildroot}%{_bindir}/Magick-config
251 %multiarch_binaries %{buildroot}%{_bindir}/Magick++-config
252 %multiarch_binaries %{buildroot}%{_bindir}/MagickCore-config
253 %multiarch_binaries %{buildroot}%{_bindir}/MagickWand-config
254 %multiarch_binaries %{buildroot}%{_bindir}/Wand-config
255 %multiarch_includes %{buildroot}%{_includedir}/ImageMagick/magick/magick-config.h
256
257 # nuke rpath
258 chrpath -d %{buildroot}%{perl_vendorarch}/auto/Image/Magick/Magick.so
259
260 # icons
261 install -m 755 -d %{buildroot}%{_liconsdir} \
262 %{buildroot}%{_iconsdir} \
263 %{buildroot}%{_iconsdir}/hicolor/64x64/apps \
264 %{buildroot}%{_miconsdir}
265 install -m 644 magick-icon_16x16.png %{buildroot}%{_miconsdir}/%{name}.png
266 install -m 644 magick-icon_32x32.png %{buildroot}%{_iconsdir}/%{name}.png
267 install -m 644 magick-icon_48x48.png %{buildroot}%{_liconsdir}/%{name}.png
268 install -m 644 magick-icon_64x64.png %{buildroot}%{_iconsdir}/hicolor/64x64/apps/%{name}.png
269
270
271 install -m 755 -d %{buildroot}%{_datadir}/applications/
272 cat > %{buildroot}%{_datadir}/applications/%{_real_vendor}-%{name}.desktop << EOF
273 [Desktop Entry]
274 Name=ImageMagick
275 Comment=Views Graphics files
276 Exec=%{_bindir}/xterm -geometry 40x15 -title ImageMagick +sb -iconic -e %{_bindir}/display
277 Icon=%{name}
278 Terminal=false
279 Type=Application
280 Categories=Graphics;Viewer;
281 EOF
282
283 %clean
284 rm -rf %{buildroot}
285
286 %files
287 %defattr(-,root,root)
288 %doc README.txt
289 %{_sysconfdir}/ImageMagick
290 %{_bindir}/animate
291 %{_bindir}/compare
292 %{_bindir}/composite
293 %{_bindir}/convert
294 %{_bindir}/conjure
295 %{_bindir}/display
296 %{_bindir}/identify
297 %{_bindir}/import
298 %{_bindir}/mogrify
299 %{_bindir}/montage
300 %{_bindir}/stream
301 %{_libdir}/ImageMagick-%{rversion}
302 %{_datadir}/ImageMagick-%{rversion}
303 %{_mandir}/man1/*
304 %{_mandir}/man3/*
305 %exclude %{_mandir}/man3/*::*.3pm*
306
307 %files desktop
308 %defattr(-,root,root)
309 %{_datadir}/applications/*
310 %{_iconsdir}/%{name}.png
311 %{_liconsdir}/%{name}.png
312 %{_miconsdir}/%{name}.png
313 %{_iconsdir}/hicolor/64x64/apps/%{name}.png
314
315 %files -n %{libname}
316 %defattr(-,root,root,0755)
317 %{_libdir}/libMagick++.so.%{major}*
318 %{_libdir}/libMagickCore.so.%{major}*
319 %{_libdir}/libMagickWand.so.%{major}*
320
321 %files -n %{develname}
322 %defattr(-,root,root)
323 %{_includedir}/ImageMagick
324 %multiarch %{multiarch_bindir}/Magick-config
325 %multiarch %{multiarch_bindir}/Magick++-config
326 %multiarch %{multiarch_bindir}/MagickCore-config
327 %multiarch %{multiarch_bindir}/MagickWand-config
328 %multiarch %{multiarch_bindir}/Wand-config
329 %multiarch %dir %{multiarch_includedir}/ImageMagick
330 %multiarch %dir %{multiarch_includedir}/ImageMagick/magick
331 %multiarch %{multiarch_includedir}/ImageMagick/magick/magick-config.h
332 %{_bindir}/Magick-config
333 %{_bindir}/Magick++-config
334 %{_bindir}/MagickCore-config
335 %{_bindir}/MagickWand-config
336 %{_bindir}/Wand-config
337 %{_libdir}/*.so
338 %{_libdir}/pkgconfig/*.pc
339
340 %files -n perl-Image-Magick
341 %defattr(-,root,root)
342 %{perl_vendorarch}/Image
343 %{perl_vendorarch}/auto/Image
344 %{_mandir}/man3*/*::*.3pm*
345
346 %files doc
347 %defattr(-,root,root)
348 %doc ImageMagick.pdf ChangeLog LICENSE NEWS* NOTICE
349 %doc QuickStart.txt installed_docs/*

  ViewVC Help
Powered by ViewVC 1.1.30