/[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 247736 - (show annotations) (download)
Mon May 28 01:58:42 2012 UTC (11 years, 10 months ago) by fwang
File size: 10705 byte(s)
real fix patches
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.7
13
14 # their "minor" version
15 %define minor_rev 2
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 texlive-texmf
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 Conflicts: %{name} < 6.7.5.0-2
130 # 2006
131 Obsoletes: %{mklibname Magick 8.3.2 -d}
132 # 2007.0
133 Obsoletes: %{mklibname magick 10.4.0 -d} %{mklibname Magick 10.4.0 -d}
134 # 2007.1/2008.0
135 Obsoletes: %{mklibname magick 10.7.0 -d} %{mklibname Magick 10.7.0 -d}
136 # pre 2008.1
137 Obsoletes: %{mklibname magick 10.9.0 -d} %{mklibname Magick 10.9.0 -d}
138
139 %description -n %{develname}
140 If you want to create applications that will use ImageMagick code or APIs,
141 you'll need to install these packages as well as ImageMagick. These additional
142 packages aren't necessary if you simply want to use ImageMagick, however.
143
144 ImageMagick-devel is an addition to ImageMagick which includes static libraries
145 and header files necessary to develop applications.
146
147 %package -n perl-Image-Magick
148 Summary: Libraries and modules for access to ImageMagick from perl
149 Group: Development/Perl
150 Requires: %{name} = %{version}
151 Provides: perl-Magick = %{version}-%{release}
152 Obsoletes: perl-Magick
153
154 %description -n perl-Image-Magick
155 This is the ImageMagick perl support package. It includes perl modules and
156 support files for access to ImageMagick library from perl.
157
158 %package doc
159 Summary: %{name} Documentation
160 Group: Books/Other
161 Obsoletes: ImageMagick-doc < 6.3.2.9-6
162 BuildArch: noarch
163
164 %description doc
165 This package contains HTML/PDF documentation of %{name}.
166
167 %prep
168
169 %setup -q -n ImageMagick-%{rversion}-%minor_rev
170
171 %patch0 -p1 -b .docdir
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 # (Abel) set LD_RUN_PATH to null, to avoid adding rpath to perlmagick module
240 %makeinstall_std LD_RUN_PATH="" pkgdocdir=/installed_docs
241
242 # fix docs inclusion (fix an unknown new rpm bug)
243 rm -rf installed_docs; mv %{buildroot}/installed_docs .
244
245 # Remove unpackaged files
246 find %{buildroot} -name '*.la' -delete
247
248 %multiarch_binaries %{buildroot}%{_bindir}/Magick-config
249 %multiarch_binaries %{buildroot}%{_bindir}/Magick++-config
250 %multiarch_binaries %{buildroot}%{_bindir}/MagickCore-config
251 %multiarch_binaries %{buildroot}%{_bindir}/MagickWand-config
252 %multiarch_binaries %{buildroot}%{_bindir}/Wand-config
253 %multiarch_includes %{buildroot}%{_includedir}/ImageMagick/magick/magick-config.h
254
255 # nuke rpath
256 chrpath -d %{buildroot}%{perl_vendorarch}/auto/Image/Magick/Magick.so
257
258 # icons
259 install -m 755 -d %{buildroot}%{_liconsdir} \
260 %{buildroot}%{_iconsdir} \
261 %{buildroot}%{_iconsdir}/hicolor/64x64/apps \
262 %{buildroot}%{_miconsdir}
263 install -m 644 magick-icon_16x16.png %{buildroot}%{_miconsdir}/%{name}.png
264 install -m 644 magick-icon_32x32.png %{buildroot}%{_iconsdir}/%{name}.png
265 install -m 644 magick-icon_48x48.png %{buildroot}%{_liconsdir}/%{name}.png
266 install -m 644 magick-icon_64x64.png %{buildroot}%{_iconsdir}/hicolor/64x64/apps/%{name}.png
267
268
269 install -m 755 -d %{buildroot}%{_datadir}/applications/
270 cat > %{buildroot}%{_datadir}/applications/%{_real_vendor}-%{name}.desktop << EOF
271 [Desktop Entry]
272 Name=ImageMagick
273 Comment=Views Graphics files
274 Exec=%{_bindir}/xterm -geometry 40x15 -title ImageMagick +sb -iconic -e %{_bindir}/display
275 Icon=%{name}
276 Terminal=false
277 Type=Application
278 Categories=Graphics;Viewer;
279 EOF
280
281 %files
282 %doc README.txt
283 %{_sysconfdir}/ImageMagick
284 %{_bindir}/animate
285 %{_bindir}/compare
286 %{_bindir}/composite
287 %{_bindir}/convert
288 %{_bindir}/conjure
289 %{_bindir}/display
290 %{_bindir}/identify
291 %{_bindir}/import
292 %{_bindir}/mogrify
293 %{_bindir}/montage
294 %{_bindir}/stream
295 %{_libdir}/ImageMagick-%{rversion}
296 %{_datadir}/ImageMagick-%{rversion}
297 %{_mandir}/man1/*
298 %exclude %{_mandir}/man1/*-config.*
299
300 %files desktop
301 %{_datadir}/applications/*
302 %{_iconsdir}/%{name}.png
303 %{_liconsdir}/%{name}.png
304 %{_miconsdir}/%{name}.png
305 %{_iconsdir}/hicolor/64x64/apps/%{name}.png
306
307 %files -n %{libname}
308 %{_libdir}/libMagick++.so.%{major}*
309 %{_libdir}/libMagickCore.so.%{major}*
310 %{_libdir}/libMagickWand.so.%{major}*
311
312 %files -n %{develname}
313 %{_includedir}/ImageMagick
314 %multiarch %{multiarch_bindir}/Magick-config
315 %multiarch %{multiarch_bindir}/Magick++-config
316 %multiarch %{multiarch_bindir}/MagickCore-config
317 %multiarch %{multiarch_bindir}/MagickWand-config
318 %multiarch %{multiarch_bindir}/Wand-config
319 %multiarch %dir %{multiarch_includedir}/ImageMagick
320 %multiarch %dir %{multiarch_includedir}/ImageMagick/magick
321 %multiarch %{multiarch_includedir}/ImageMagick/magick/magick-config.h
322 %{_bindir}/Magick-config
323 %{_bindir}/Magick++-config
324 %{_bindir}/MagickCore-config
325 %{_bindir}/MagickWand-config
326 %{_bindir}/Wand-config
327 %{_libdir}/*.so
328 %{_libdir}/pkgconfig/*.pc
329 %{_mandir}/man1/*-config.*
330
331 %files -n perl-Image-Magick
332 %{perl_vendorarch}/Image
333 %{perl_vendorarch}/auto/Image
334 %{_mandir}/man3*/*::*.3pm*
335
336 %files doc
337 %doc ImageMagick.pdf ChangeLog LICENSE NEWS* NOTICE
338 %doc QuickStart.txt installed_docs/*

  ViewVC Help
Powered by ViewVC 1.1.30