Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
home:csbuild:DBA
ImageMagick
ImageMagick.spec
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File ImageMagick.spec of Package ImageMagick
%global VER 6.7.8 %global Patchlevel 9 Name: ImageMagick Version: %{VER}.%{Patchlevel} Release: 1 Summary: An X application for displaying and manipulating images Group: Applications/Multimedia License: ImageMagick Url: http://www.imagemagick.org/ Source0: ftp://ftp.ImageMagick.org/pub/%{name}/%{name}-%{VER}-%{Patchlevel}.tar.xz Patch0: 0001-Fix-man-page-scan-results.patch Patch1: 0001-Fix-CVE-2014-1947-CVE-2014-2030.patch Patch2: 0002-1303227-fix-exr-crash.patch Patch3: ImageMagick-cve-2016-3717.patch Patch4: ImageMagick-cve-2016-5118.patch Patch5: ImageMagick-pict-doublefree.patch Patch6: ImageMagick-gnuplot-delegate-remove.diff Patch7: ImageMagick-icon-mem.patch Patch8: ImageMagick-splice-crash.patch Patch9: ImageMagick-null-pointer-access.patch Patch10: ImageMagick-cve-2016-5240.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildRequires: cpp gcc-c++ libstdc++-devel BuildRequires: bzip2-devel, freetype-devel, libjpeg-devel, libpng-devel BuildRequires: libtiff-devel, zlib-devel, perl-devel >= 5.8.1 BuildRequires: libtool-ltdl-devel BuildRequires: libX11-devel, libXext-devel, libXt-devel BuildRequires: libxml2-devel, librsvg2-devel # BuildRequires: giflib-devel ghostscript-devel libwmf-devel jasper-devel OpenEXR-devel %description ImageMagick is an image display and manipulation tool for the X Window System. ImageMagick can read and write JPEG, TIFF, PNM, GIF, and Photo CD image formats. It can resize, rotate, sharpen, color reduce, or add special effects to an image, and when finished you can either save the completed work in the original format or a different one. ImageMagick also includes command line programs for creating animated or transparent .gifs, creating composite images, creating thumbnail images, and more. ImageMagick is one of your choices if you need a program to manipulate and display images. If you want to develop your own applications which use ImageMagick code or APIs, you need to install ImageMagick-devel as well. %package devel Summary: Library links and header files for ImageMagick app 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: 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 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}-%{VER}-%{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 %patch0 -p1 %patch1 -p1 %patch2 -p1 %patch3 -p1 -z .cve-2016-3717 %patch4 -p1 -b .cve-2016-5118 %patch5 -p1 -b .pict-doublefree %patch6 -p1 -b .gnuplot-delegate-remove %patch7 -p1 -b .icon-mem %patch8 -p1 -b .splice-crash %patch9 -p1 -b .null-pointer-access %patch10 -p1 -b .cve-2016-5240 %build %configure --enable-shared \ --disable-static \ --with-modules \ --with-perl \ --with-x \ --with-threads \ --with-magick_plus_plus \ --with-gslib \ --with-wmf \ --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 \ --without-included-ltdl --with-ltdl-include=%{_includedir} \ --with-ltdl-lib=%{_libdir} # 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}-%{VER} # Delete *ONLY* _libdir/*.la files! .la files used internally to handle plugins - BUG#185237!!! 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 mv %{buildroot}%{_includedir}/%{name}/magick/magick-config.h \ %{buildroot}%{_includedir}/%{name}/magick/magick-config-%{__isa_bits}.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 # Fonts must be packaged separately. It does nothave matter and demos work without it. rm PerlMagick/demo/Generic.ttf %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.5* %{_libdir}/libMagickWand.so.5* %{_bindir}/[a-z]* %{_libdir}/%{name}-%{VER} %{_datadir}/%{name}-%{VER} %{_mandir}/man[145]/[a-z]* %{_mandir}/man1/%{name}.* %{_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 doc %defattr(-,root,root,-) %doc %{_datadir}/doc/%{name}-%{VER} %doc LICENSE %files c++ %defattr(-,root,root,-) %doc Magick++/AUTHORS Magick++/ChangeLog Magick++/NEWS Magick++/README %doc www/Magick++/COPYING %{_libdir}/libMagick++.so.5* %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 * Thu Feb 9 2017 Holger Manthey <holger.manthey@bertelsmann.de> - inital version
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor