- Modifications to compile ImageMagick
This commit is contained in:
parent
615ec83706
commit
83522c16c3
3442 changed files with 57 additions and 412926 deletions
313
ImageMagick/ImageMagick.spec.in
Normal file
313
ImageMagick/ImageMagick.spec.in
Normal file
|
|
@ -0,0 +1,313 @@
|
|||
%global VERSION @PACKAGE_VERSION@
|
||||
%global Patchlevel @PACKAGE_RELEASE@
|
||||
|
||||
Name: @PACKAGE_NAME@
|
||||
Version: %{VERSION}
|
||||
Release: %{Patchlevel}
|
||||
Summary: Use ImageMagick to convert, edit, or compose bitmap images in a variety of formats. In addition resize, rotate, shear, distort and transform images.
|
||||
Group: Applications/Multimedia
|
||||
License: http://www.imagemagick.org/script/license.php
|
||||
Url: http://www.imagemagick.org/
|
||||
Source0: http://www.imagemagick.org/download/%{name}/%{name}-%{VERSION}-%{Patchlevel}.tar.bz2
|
||||
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
||||
BuildRequires: bzip2-devel, freetype-devel, libjpeg-devel, libpng-devel
|
||||
BuildRequires: libtiff-devel, giflib-devel, zlib-devel, perl-devel >= 5.8.1
|
||||
BuildRequires: ghostscript-devel, djvulibre-devel
|
||||
BuildRequires: libwmf-devel, jasper-devel, libtool-ltdl-devel
|
||||
BuildRequires: libX11-devel, libXext-devel, libXt-devel
|
||||
BuildRequires: lcms-devel, libxml2-devel, librsvg2-devel, OpenEXR-devel
|
||||
|
||||
%description
|
||||
ImageMagick is a software suite to create, edit, and compose bitmap images. It
|
||||
can read, convert and write images in a variety of formats (about 100)
|
||||
including DPX, GIF, JPEG, JPEG-2000, PDF, PhotoCD, PNG, Postscript, SVG,
|
||||
and TIFF. Use ImageMagick to translate, flip, mirror, rotate, scale, shear
|
||||
and transform images, adjust image colors, apply various special effects,
|
||||
or draw text, lines, polygons, ellipses and Bézier curves.
|
||||
|
||||
The functionality of ImageMagick is typically utilized from the command line
|
||||
or you can use the features from programs written in your favorite programming
|
||||
language. Choose from these interfaces: G2F (Ada), MagickCore (C), MagickWand
|
||||
(C), ChMagick (Ch), Magick++ (C++), JMagick (Java), L-Magick (Lisp), nMagick
|
||||
(Neko/haXe), PascalMagick (Pascal), PerlMagick (Perl), MagickWand for PHP
|
||||
(PHP), PythonMagick (Python), RMagick (Ruby), or TclMagick (Tcl/TK). With a
|
||||
language interface, use ImageMagick to modify or create images automagically
|
||||
and dynamically.
|
||||
|
||||
ImageMagick is free software delivered as a ready-to-run binary distribution
|
||||
or as source code that you may freely use, copy, modify, and distribute in
|
||||
both open and proprietary applications. It is distributed under an Apache
|
||||
2.0-style license, approved by the OSI.
|
||||
|
||||
The ImageMagick development process ensures a stable API and ABI. Before
|
||||
each ImageMagick release, we perform a comprehensive security assessment that
|
||||
includes memory and thread error detection to help prevent exploits.ImageMagick
|
||||
is free software delivered as a ready-to-run binary distribution or as source
|
||||
code that you may freely use, copy, modify, and distribute in both open and
|
||||
proprietary applications. It is distributed under an Apache 2.0-style license,
|
||||
approved by the OSI.
|
||||
|
||||
|
||||
%package devel
|
||||
Summary: Library links and header files for ImageMagick application development
|
||||
Group: Development/Libraries
|
||||
Requires: %{name} = %{version}-%{release}
|
||||
Requires: libX11-devel, libXext-devel, libXt-devel
|
||||
Requires: ghostscript-devel
|
||||
Requires: bzip2-devel
|
||||
Requires: freetype-devel
|
||||
Requires: libtiff-devel
|
||||
Requires: libjpeg-devel
|
||||
Requires: lcms-devel
|
||||
Requires: jasper-devel
|
||||
Requires: pkgconfig
|
||||
|
||||
%description devel
|
||||
ImageMagick-devel contains the library links and header files you'll
|
||||
need to develop ImageMagick applications. ImageMagick is an image
|
||||
manipulation program.
|
||||
|
||||
If you want to create applications that will use ImageMagick code or
|
||||
APIs, you need to install ImageMagick-devel as well as ImageMagick.
|
||||
You do not need to install it if you just want to use ImageMagick,
|
||||
however.
|
||||
|
||||
%package djvu
|
||||
Summary: DjVu plugin for ImageMagick
|
||||
Group: Applications/Multimedia
|
||||
Requires: %{name} = %{version}-%{release}
|
||||
|
||||
%description djvu
|
||||
This packages contains a plugin for ImageMagick which makes it possible to
|
||||
save and load DjvU files from ImageMagick and libMagickCore using applications.
|
||||
|
||||
|
||||
%package doc
|
||||
Summary: ImageMagick HTML documentation
|
||||
Group: Documentation
|
||||
|
||||
|
||||
%description doc
|
||||
ImageMagick documentation, this package contains usage (for the
|
||||
commandline tools) and API (for the libraries) documentation in HTML format.
|
||||
Note this documentation can also be found on the ImageMagick website:
|
||||
http://www.imagemagick.org/.
|
||||
|
||||
|
||||
%package perl
|
||||
Summary: ImageMagick perl bindings
|
||||
Group: System Environment/Libraries
|
||||
Requires: %{name} = %{version}-%{release}
|
||||
Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))
|
||||
|
||||
|
||||
%description perl
|
||||
Perl bindings to ImageMagick.
|
||||
|
||||
Install ImageMagick-perl if you want to use any perl scripts that use
|
||||
ImageMagick.
|
||||
|
||||
|
||||
%package c++
|
||||
Summary: ImageMagick Magick++ library (C++ bindings)
|
||||
Group: System Environment/Libraries
|
||||
Requires: %{name} = %{version}-%{release}
|
||||
|
||||
%description c++
|
||||
This package contains the Magick++ library, a C++ binding to the ImageMagick
|
||||
graphics manipulation library.
|
||||
|
||||
Install ImageMagick-c++ if you want to use any applications that use Magick++.
|
||||
|
||||
|
||||
%package c++-devel
|
||||
Summary: C++ bindings for the ImageMagick library
|
||||
Group: Development/Libraries
|
||||
Requires: %{name}-c++ = %{version}-%{release}
|
||||
Requires: %{name}-devel = %{version}-%{release}
|
||||
|
||||
%description c++-devel
|
||||
ImageMagick-devel contains the static libraries and header files you'll
|
||||
need to develop ImageMagick applications using the Magick++ C++ bindings.
|
||||
ImageMagick is an image manipulation program.
|
||||
|
||||
If you want to create applications that will use Magick++ code
|
||||
or APIs, you'll need to install ImageMagick-c++-devel, ImageMagick-devel and
|
||||
ImageMagick.
|
||||
|
||||
You don't need to install it if you just want to use ImageMagick, or if you
|
||||
want to develop/compile applications using the ImageMagick C interface,
|
||||
however.
|
||||
|
||||
|
||||
%prep
|
||||
%setup -q -n %{name}-%{VERSION}-%{Patchlevel}
|
||||
sed -i 's/libltdl.la/libltdl.so/g' configure
|
||||
iconv -f ISO-8859-1 -t UTF-8 README.txt > README.txt.tmp
|
||||
touch -r README.txt README.txt.tmp
|
||||
mv README.txt.tmp README.txt
|
||||
# for %%doc
|
||||
mkdir Magick++/examples
|
||||
cp -p Magick++/demo/*.cpp Magick++/demo/*.miff Magick++/examples
|
||||
|
||||
%build
|
||||
%configure --enable-shared \
|
||||
--disable-static \
|
||||
--with-modules \
|
||||
--with-perl \
|
||||
--with-x \
|
||||
--with-threads \
|
||||
--with-magick_plus_plus \
|
||||
--with-gslib \
|
||||
--with-wmf \
|
||||
--with-lcms \
|
||||
--with-rsvg \
|
||||
--with-xml \
|
||||
--with-perl-options="INSTALLDIRS=vendor %{?perl_prefix} CC='%__cc -L$PWD/magick/.libs' LDDLFLAGS='-shared -L$PWD/magick/.libs'" \
|
||||
--without-dps
|
||||
# Disable rpath
|
||||
sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool
|
||||
sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool
|
||||
# Do *NOT* use %%{?_smp_mflags}, this causes PerlMagick to be silently misbuild
|
||||
make
|
||||
|
||||
|
||||
%install
|
||||
rm -rf %{buildroot}
|
||||
|
||||
make install DESTDIR=%{buildroot} INSTALL="install -p"
|
||||
cp -a www/source %{buildroot}%{_datadir}/doc/%{name}-%{VERSION}
|
||||
rm %{buildroot}%{_libdir}/*.la
|
||||
|
||||
# fix weird perl Magick.so permissions
|
||||
chmod 755 %{buildroot}%{perl_vendorarch}/auto/Image/Magick/Magick.so
|
||||
|
||||
# perlmagick: fix perl path of demo files
|
||||
%{__perl} -MExtUtils::MakeMaker -e 'MY->fixin(@ARGV)' PerlMagick/demo/*.pl
|
||||
|
||||
# perlmagick: cleanup various perl tempfiles from the build which get installed
|
||||
find %{buildroot} -name "*.bs" |xargs rm -f
|
||||
find %{buildroot} -name ".packlist" |xargs rm -f
|
||||
find %{buildroot} -name "perllocal.pod" |xargs rm -f
|
||||
|
||||
# perlmagick: build files list
|
||||
echo "%defattr(-,root,root,-)" > perl-pkg-files
|
||||
find %{buildroot}/%{_libdir}/perl* -type f -print \
|
||||
| sed "s@^%{buildroot}@@g" > perl-pkg-files
|
||||
find %{buildroot}%{perl_vendorarch} -type d -print \
|
||||
| sed "s@^%{buildroot}@%dir @g" \
|
||||
| grep -v '^%dir %{perl_vendorarch}$' \
|
||||
| grep -v '/auto$' >> perl-pkg-files
|
||||
if [ -z perl-pkg-files ] ; then
|
||||
echo "ERROR: EMPTY FILE LIST"
|
||||
exit -1
|
||||
fi
|
||||
|
||||
# fix multilib issues
|
||||
%ifarch x86_64 s390x ia64 ppc64 alpha sparc64
|
||||
%define wordsize 64
|
||||
%else
|
||||
%define wordsize 32
|
||||
%endif
|
||||
|
||||
mv %{buildroot}%{_includedir}/%{name}/magick/magick-config.h \
|
||||
%{buildroot}%{_includedir}/%{name}/magick/magick-config-%{wordsize}.h
|
||||
|
||||
cat >%{buildroot}%{_includedir}/%{name}/magick/magick-config.h <<EOF
|
||||
#ifndef IMAGEMAGICK_MULTILIB
|
||||
#define IMAGEMAGICK_MULTILIB
|
||||
|
||||
#include <bits/wordsize.h>
|
||||
|
||||
#if __WORDSIZE == 32
|
||||
# include "magick-config-32.h"
|
||||
#elif __WORDSIZE == 64
|
||||
# include "magick-config-64.h"
|
||||
#else
|
||||
# error "unexpected value for __WORDSIZE macro"
|
||||
#endif
|
||||
|
||||
#endif
|
||||
EOF
|
||||
|
||||
%clean
|
||||
rm -rf %{buildroot}
|
||||
|
||||
%post -p /sbin/ldconfig
|
||||
|
||||
%post c++ -p /sbin/ldconfig
|
||||
|
||||
%postun -p /sbin/ldconfig
|
||||
|
||||
%postun c++ -p /sbin/ldconfig
|
||||
|
||||
%files
|
||||
%defattr(-,root,root,-)
|
||||
%doc QuickStart.txt ChangeLog Platforms.txt
|
||||
%doc README.txt LICENSE NOTICE AUTHORS.txt NEWS.txt
|
||||
%{_libdir}/libMagickCore*so*
|
||||
%{_libdir}/libMagickWand*so*
|
||||
%{_bindir}/[a-z]*
|
||||
%{_libdir}/%{name}-%{VERSION}
|
||||
%{_datadir}/%{name}-%{VERSION}
|
||||
%{_mandir}/man[145]/[a-z]*
|
||||
%{_mandir}/man1/%{name}.*
|
||||
%exclude %{_libdir}/%{name}-%{VERSION}/modules-Q16/coders/djvu.*
|
||||
%{_sysconfdir}/%{name}
|
||||
|
||||
%files devel
|
||||
%defattr(-,root,root,-)
|
||||
%{_bindir}/MagickCore-config
|
||||
%{_bindir}/Magick-config
|
||||
%{_bindir}/MagickWand-config
|
||||
%{_bindir}/Wand-config
|
||||
%{_libdir}/libMagickCore*so*
|
||||
%{_libdir}/libMagickWand*so*
|
||||
%{_libdir}/pkgconfig/MagickCore*.pc
|
||||
%{_libdir}/pkgconfig/ImageMagick*.pc
|
||||
%{_libdir}/pkgconfig/MagickWand*.pc
|
||||
%{_libdir}/pkgconfig/Wand*.pc
|
||||
%dir %{_includedir}/%{name}
|
||||
%{_includedir}/%{name}/magick
|
||||
%{_includedir}/%{name}/wand
|
||||
%{_mandir}/man1/Magick-config.*
|
||||
%{_mandir}/man1/MagickCore-config.*
|
||||
%{_mandir}/man1/Wand-config.*
|
||||
%{_mandir}/man1/MagickWand-config.*
|
||||
|
||||
%files djvu
|
||||
%defattr(-,root,root,-)
|
||||
%{_libdir}/%{name}-%{version}/modules-Q16/coders/djvu.*
|
||||
|
||||
%files doc
|
||||
%defattr(-,root,root,-)
|
||||
%doc %{_datadir}/doc/%{name}-%{VERSION}
|
||||
%doc LICENSE
|
||||
|
||||
%files c++
|
||||
%defattr(-,root,root,-)
|
||||
%doc Magick++/AUTHORS Magick++/ChangeLog Magick++/NEWS Magick++/README
|
||||
%doc www/Magick++/COPYING
|
||||
%{_libdir}/libMagick++*so*
|
||||
|
||||
%files c++-devel
|
||||
%defattr(-,root,root,-)
|
||||
%doc Magick++/examples
|
||||
%{_bindir}/Magick++-config
|
||||
%{_includedir}/%{name}/Magick++
|
||||
%{_includedir}/%{name}/Magick++.h
|
||||
%{_libdir}/libMagick++*so*
|
||||
%{_libdir}/pkgconfig/Magick++*.pc
|
||||
%{_libdir}/pkgconfig/ImageMagick++*.pc
|
||||
%{_mandir}/man1/Magick++-config.*
|
||||
|
||||
%files perl -f perl-pkg-files
|
||||
%defattr(-,root,root,-)
|
||||
%{_mandir}/man3/*
|
||||
%doc PerlMagick/demo/ PerlMagick/Changelog PerlMagick/README.txt
|
||||
|
||||
|
||||
%changelog
|
||||
* Sun May 01 2005 Cristy <cristy@mystic.es.dupont.com> 1.0-0
|
||||
- Port of Redhat's RPM script to support ImageMagick.
|
||||
Loading…
Add table
Add a link
Reference in a new issue