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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 142181 - (hide annotations) (download)
Sat Sep 10 14:10:25 2011 UTC (12 years, 6 months ago) by fwang
File size: 11164 byte(s)
rebuild for new libpng
1 pterjan 5387 %define build_test 0
2     %{?_with_test: %{expand: %%global build_test 1}}
3     %{?_without_test: %{expand: %%global build_test 0}}
4    
5 mikala 17591 %define bootstrap 1
6 pterjan 5387 %{?_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 fwang 135662 %define rversion 6.7.2
13 pterjan 5387
14     # their "minor" version
15 fwang 140897 %define minor_rev 3
16 pterjan 5387
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 4
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 fwang 142181 Release: %mkrel 3
37 pterjan 5387 License: BSD-like
38     Group: Graphics
39     URL: http://www.imagemagick.org/
40     Source0: ftp://gd.tuwien.ac.at/pub/graphics/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 sander85 104679 Patch1: ImageMagick-6.4.8-9-format-strings.patch
50 pterjan 5387 Patch4: ImageMagick-6.4.8-9-includedir.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 sander85 104679
56 pterjan 5387 Requires: %{libname} = %{version}
57     Obsoletes: ImageMagick < 6.3.2.9-6
58     Provides: ImageMagick = %{version}-%{release}
59 sander85 104679
60 fwang 108147 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 pterjan 5387 %if !%bootstrap
83 fwang 108147 BuildRequires: djvulibre-devel
84 pterjan 5387 %endif
85 fwang 108147 BuildRequires: ghostscript
86     BuildConflicts: %{develname}
87 pterjan 5387
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 ahmad 99994 packages in %{_vendor}: curl enscript ffmpeg ghostscript ghostscript-X gimp
95 pterjan 5387 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     Requires: graphviz
153     Requires: libwmf
154    
155     %description -n perl-Image-Magick
156     This is the ImageMagick perl support package. It includes perl modules and
157     support files for access to ImageMagick library from perl.
158    
159     %package doc
160     Summary: %{name} Documentation
161     Group: Books/Other
162     Obsoletes: ImageMagick-doc < 6.3.2.9-6
163 tv 137819 BuildArch: noarch
164 pterjan 5387
165     %description doc
166     This package contains HTML/PDF documentation of %{name}.
167    
168     %prep
169    
170     %setup -q -n ImageMagick-%{rversion}-%minor_rev
171    
172     %patch0 -p1 -b .docdir
173     #patch1 -p1
174     %patch4 -p1 -b .include
175     %patch7 -p0 -b .urw
176     %patch17 -p0 -b .fpx
177     %patch19 -p1 -b .libpath
178     %patch20 -p1 -b .ppc
179    
180     bzcat %{SOURCE1} > ImageMagick.pdf
181     install -m 644 %{SOURCE10} %{SOURCE11} %{SOURCE12} %{SOURCE13} .
182     libtoolize --copy --force; aclocal -I m4; autoconf; automake
183    
184     %build
185     #gw the format-string patch is incomplete:
186     %define Werror_cflags %nil
187     export CFLAGS="%{optflags} -fno-strict-aliasing -fPIC"
188     export CXXFLAGS="%{optflags} -fno-strict-aliasing -fPIC"
189    
190     # don't use icecream
191 fwang 108147 export PATH=/bin:/usr/bin
192 pterjan 5387
193     %configure2_5x \
194     --docdir=%{_defaultdocdir}/imagemagick \
195     --with-pic \
196     --enable-shared \
197     --enable-fast-install \
198     --disable-ltdl-install \
199     --with-threads \
200     --with-magick_plus_plus \
201     --with-gslib \
202     --with-wmf \
203     --with-lcms \
204     --with-rsvg \
205     --with-xml \
206     --without-dps \
207     --without-windows-font-dir \
208     --without-modules \
209     --with-perl \
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     rm -f %{buildroot}%{_libdir}/ImageMagick-%{rversion}/modules-%{qlev}/coders/*.a \
249     %{buildroot}%{_libdir}/ImageMagick-%{rversion}/modules-%{qlev}/filters/*.a \
250     %{buildroot}%{_libdir}/libltdl*
251    
252     %multiarch_binaries %{buildroot}%{_bindir}/Magick-config
253     %multiarch_binaries %{buildroot}%{_bindir}/Magick++-config
254     %multiarch_binaries %{buildroot}%{_bindir}/MagickCore-config
255     %multiarch_binaries %{buildroot}%{_bindir}/MagickWand-config
256     %multiarch_binaries %{buildroot}%{_bindir}/Wand-config
257     %multiarch_includes %{buildroot}%{_includedir}/ImageMagick/magick/magick-config.h
258    
259     # nuke rpath
260     chrpath -d %{buildroot}%{perl_vendorarch}/auto/Image/Magick/Magick.so
261    
262     # icons
263     install -m 755 -d %{buildroot}%{_liconsdir} \
264     %{buildroot}%{_iconsdir} \
265     %{buildroot}%{_iconsdir}/hicolor/64x64/apps \
266     %{buildroot}%{_miconsdir}
267     install -m 644 magick-icon_16x16.png %{buildroot}%{_miconsdir}/%{name}.png
268     install -m 644 magick-icon_32x32.png %{buildroot}%{_iconsdir}/%{name}.png
269     install -m 644 magick-icon_48x48.png %{buildroot}%{_liconsdir}/%{name}.png
270     install -m 644 magick-icon_64x64.png %{buildroot}%{_iconsdir}/hicolor/64x64/apps/%{name}.png
271    
272    
273     install -m 755 -d %{buildroot}%{_datadir}/applications/
274 wally 91746 cat > %{buildroot}%{_datadir}/applications/%{_real_vendor}-%{name}.desktop << EOF
275 pterjan 5387 [Desktop Entry]
276     Name=ImageMagick
277     Comment=Views Graphics files
278     Exec=%{_bindir}/xterm -geometry 40x15 -title ImageMagick +sb -iconic -e %{_bindir}/display
279     Icon=%{name}
280     Terminal=false
281     Type=Application
282 fwang 108147 Categories=Graphics;Viewer;
283 pterjan 5387 EOF
284    
285     %clean
286     rm -rf %{buildroot}
287    
288     %files
289     %defattr(-,root,root)
290     %doc README.txt
291 fwang 108147 %{_sysconfdir}/ImageMagick
292 pterjan 5387 %{_bindir}/animate
293     %{_bindir}/compare
294     %{_bindir}/composite
295     %{_bindir}/convert
296     %{_bindir}/conjure
297     %{_bindir}/display
298     %{_bindir}/identify
299     %{_bindir}/import
300     %{_bindir}/mogrify
301     %{_bindir}/montage
302     %{_bindir}/stream
303     %dir %{_libdir}/ImageMagick-%{rversion}
304     %dir %{_libdir}/ImageMagick-%{rversion}/modules-%{qlev}
305     %dir %{_libdir}/ImageMagick-%{rversion}/modules-%{qlev}/coders
306     %{_datadir}/ImageMagick-%{rversion}
307     %{_mandir}/man1/*
308     %{_mandir}/man3/*
309     %exclude %{_mandir}/man3/*::*.3pm*
310    
311     %files desktop
312     %defattr(-,root,root)
313     %{_datadir}/applications/*
314     %{_iconsdir}/%{name}.png
315     %{_liconsdir}/%{name}.png
316     %{_miconsdir}/%{name}.png
317     %{_iconsdir}/hicolor/64x64/apps/%{name}.png
318    
319     %files -n %{libname}
320     %defattr(-,root,root,0755)
321     %{_libdir}/libMagick++.so.%{major}*
322     %{_libdir}/libMagickCore.so.%{major}*
323     %{_libdir}/libMagickWand.so.%{major}*
324    
325     %files -n %{develname}
326     %defattr(-,root,root)
327     %{_includedir}/ImageMagick
328     %multiarch %{multiarch_bindir}/Magick-config
329     %multiarch %{multiarch_bindir}/Magick++-config
330     %multiarch %{multiarch_bindir}/MagickCore-config
331     %multiarch %{multiarch_bindir}/MagickWand-config
332     %multiarch %{multiarch_bindir}/Wand-config
333     %multiarch %dir %{multiarch_includedir}/ImageMagick
334     %multiarch %dir %{multiarch_includedir}/ImageMagick/magick
335     %multiarch %{multiarch_includedir}/ImageMagick/magick/magick-config.h
336     %{_bindir}/Magick-config
337     %{_bindir}/Magick++-config
338     %{_bindir}/MagickCore-config
339     %{_bindir}/MagickWand-config
340     %{_bindir}/Wand-config
341     %attr(0644,root,root) %{_libdir}/*.a
342     %attr(0644,root,root) %{_libdir}/*.la
343     %{_libdir}/*.so
344     %{_libdir}/pkgconfig/*.pc
345    
346     %files -n perl-Image-Magick
347     %defattr(-,root,root)
348     %{perl_vendorarch}/Image
349     %{perl_vendorarch}/auto/Image
350     %{_mandir}/man3*/*::*.3pm*
351    
352     %files doc
353     %defattr(-,root,root)
354     %doc ImageMagick.pdf ChangeLog LICENSE NEWS* NOTICE
355     %doc QuickStart.txt installed_docs/*
356    
357    

  ViewVC Help
Powered by ViewVC 1.1.30