File ImageMagick.spec of Package ImageMagick.30956
#
# spec file for package ImageMagick
#
# Copyright (c) 2023 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
%define debug_build 0
%define asan_build 0
%define config_dir ImageMagick
%define config_spec config-6
Name: ImageMagick
BuildRequires: autoconf >= 2.69
BuildRequires: dcraw
BuildRequires: fdupes
BuildRequires: freetype2-devel
BuildRequires: gcc-c++
BuildRequires: ghostscript-fonts-other
BuildRequires: ghostscript-fonts-std
BuildRequires: ghostscript-library
BuildRequires: libbz2-devel
BuildRequires: libdjvulibre-devel
BuildRequires: libexif-devel
BuildRequires: libjasper-devel
BuildRequires: libjpeg-devel
BuildRequires: liblcms2-devel
BuildRequires: librsvg-devel
BuildRequires: libtiff-devel >= 4.0.3
BuildRequires: libtool
BuildRequires: libwebp-devel
BuildRequires: libwmf-devel
BuildRequires: libxml2-devel
BuildRequires: lzma-devel
BuildRequires: openexr-devel
BuildRequires: pango-devel
BuildRequires: pkgconfig
%define maj 6
%define mfr_version %{maj}.8.8
%define mfr_revision 1
%define quantum_depth 16
%define source_version %{mfr_version}-%{mfr_revision}
%define clibver 1
%define cxxlibver 3
%define libspec -%{maj}_Q%{quantum_depth}
Version: %{mfr_version}.%{mfr_revision}
Release: 0
Summary: Viewer and Converter for Images
License: ImageMagick
Group: Productivity/Graphics/Other
URL: http://www.imagemagick.org
Source: http://www.imagemagick.org/download/ImageMagick-%{source_version}.tar.xz
# To get mtime of file
Source1: ImageMagick.changes
Source2: baselibs.conf
Source3: http://www.imagemagick.org/download/ImageMagick-%{source_version}.tar.xz.asc
Source4: ImageMagick.keyring
# suse specific patches
Patch0: ImageMagick-6.6.8.9-examples.patch
Patch1: ImageMagick-6.6.8.9-doc.patch
Patch2: ImageMagick-6.7.6.1-no-dist-lzip.patch
Patch3: ImageMagick-6.8.4.0-rpath.patch
# workaround for http://www.imagemagick.org/discourse-server/viewtopic.php?f=3&t=23462
# upstream insists on XPMCompliance, so leaving this for compatibility reasons
Patch4: ImageMagick-6.8.5.7-no-XPMCompliance.patch
# bugs
# will ask upstream if needed, or if other solution exists
Patch11: ImageMagick-6.8.4.0-dont-build-in-install.patch
Patch12: disable_mat_test.patch
Patch13: ImageMagick-6.8.8.1-display-stdin.patch
Patch14: ImageMagick-CVE-2014-8562.patch
Patch15: ImageMagick-CVE-2014-8355.patch
Patch16: ImageMagick-CVE-2014-8354.patch
Patch17: ImageMagick-CVE-2014-8716.patch
Patch18: ImageMagick-pdf-img-compression.patch
Patch19: ImageMagick-pdf-title-encoding.patch
Patch20: ImageMagick-configuration-SUSE.patch
Patch21: ImageMagick-CVE-2016-5118.patch
Patch22: ImageMagick-CVE-2015-8902.patch
Patch23: ImageMagick-CVE-2015-8901.patch
Patch24: ImageMagick-CVE-2015-8903.patch
Patch25: ImageMagick-CVE-2015-8900.patch
Patch26: ImageMagick-CVE-2016-4562,4563,4564.patch
Patch27: ImageMagick-CVE-2014-9846.patch
Patch28: ImageMagick-CVE-2015-8894.patch
Patch29: ImageMagick-CVE-2015-8895.patch
Patch30: ImageMagick-CVE-2015-8896.patch
Patch31: ImageMagick-CVE-2015-8897.patch
Patch32: ImageMagick-CVE-2015-8898.patch
Patch33: ImageMagick-CVE-2014-9805.patch
Patch34: ImageMagick-CVE-2014-9806.patch
Patch35: ImageMagick-CVE-2014-9807.patch
Patch36: ImageMagick-CVE-2014-9808.patch
Patch37: ImageMagick-CVE-2014-9809.patch
Patch38: ImageMagick-CVE-2014-9810.patch
Patch39: ImageMagick-CVE-2014-9821.patch
Patch40: ImageMagick-CVE-2014-9849.patch
Patch41: ImageMagick-CVE-2014-9836.patch
Patch42: ImageMagick-CVE-2014-9828.patch
Patch43: ImageMagick-CVE-2014-9813.patch
Patch44: ImageMagick-CVE-2014-9830.patch
Patch45: ImageMagick-CVE-2014-9811.patch
Patch46: ImageMagick-CVE-2014-9812.patch
Patch47: ImageMagick-CVE-2014-9819.patch
Patch48: ImageMagick-CVE-2014-9847.patch
Patch49: ImageMagick-CVE-2014-9835,9831.patch
Patch50: ImageMagick-CVE-2014-9850.patch
Patch51: ImageMagick-CVE-2014-9820.patch
Patch52: ImageMagick-CVE-2014-9851.patch
Patch53: ImageMagick-CVE-2014-9837.patch
Patch54: ImageMagick-CVE-2014-9841.patch
Patch55: ImageMagick-CVE-2014-9843.patch
Patch56: ImageMagick-CVE-2014-9818,9826,9829.patch
Patch57: ImageMagick-CVE-2014-9832.patch
Patch58: ImageMagick-CVE-2014-9854.patch
Patch59: ImageMagick-CVE-2014-9824.patch
Patch60: ImageMagick-CVE-2014-9822.patch
Patch61: ImageMagick-CVE-2014-9852.patch
Patch62: ImageMagick-CVE-2014-9814.patch
Patch63: ImageMagick-CVE-2014-9838.patch
Patch64: ImageMagick-CVE-2014-9815.patch
Patch65: ImageMagick-CVE-2014-9844.patch
Patch66: ImageMagick-CVE-2014-9842.patch
Patch67: ImageMagick-CVE-2014-9839.patch
Patch68: ImageMagick-CVE-2014-9845.patch
Patch69: ImageMagick-CVE-2014-9816.patch
Patch70: ImageMagick-CVE-2014-9817.patch
Patch71: ImageMagick-CVE-2014-9823.patch
Patch72: ImageMagick-CVE-2014-9848.patch
Patch73: ImageMagick-CVE-2014-9833,9825.patch
Patch74: ImageMagick-CVE-2014-9853.patch
Patch75: ImageMagick-CVE-2014-9840.patch
Patch76: ImageMagick-CVE-2014-9834.patch
Patch77: ImageMagick-CVE-2016-5688.patch
Patch78: ImageMagick-CVE-2016-5687,CVE-2015-8959,CVE-2014-9907.patch
Patch79: ImageMagick-CVE-2016-5691.patch
Patch80: ImageMagick-CVE-2016-5690.patch
Patch81: ImageMagick-CVE-2016-5689.patch
Patch82: ImageMagick-CVE-2016-5842.patch
Patch83: ImageMagick-CVE-2016-5841.patch
Patch84: ImageMagick-CVE-2016-6520.patch
Patch85: ImageMagick-CVE-2016-5010.patch
Patch86: ImageMagick-CVE-2016-6491.patch
Patch87: ImageMagick-CVE-2016-7540.patch
Patch88: ImageMagick-CVE-2016-7529.patch
Patch89: ImageMagick-CVE-2016-7530.patch
Patch90: ImageMagick-CVE-2016-7528.patch
Patch91: ImageMagick-CVE-2016-7513.patch
Patch92: ImageMagick-CVE-2016-7526.patch
Patch93: ImageMagick-CVE-2016-7527.patch
Patch94: ImageMagick-CVE-2016-7514.patch
Patch95: ImageMagick-CVE-2016-7515.patch
Patch96: ImageMagick-CVE-2015-8957.patch
Patch97: ImageMagick-CVE-2015-8958,CVE-2016-7518.patch
Patch98: ImageMagick-CVE-2016-7516.patch
Patch99: ImageMagick-CVE-2016-7517.patch
Patch100: ImageMagick-CVE-2016-7519.patch
Patch101: ImageMagick-CVE-2016-7520.patch
Patch102: ImageMagick-CVE-2016-7521.patch
Patch103: ImageMagick-CVE-2016-7522.patch
Patch104: ImageMagick-CVE-2016-7523.patch
Patch105: ImageMagick-CVE-2016-7524,7800.patch
Patch106: ImageMagick-CVE-2016-7525.patch
Patch107: ImageMagick-CVE-2016-7531.patch
Patch108: ImageMagick-CVE-2016-7532.patch
Patch109: ImageMagick-CVE-2016-7533.patch
Patch110: ImageMagick-CVE-2016-7534.patch
Patch111: ImageMagick-CVE-2016-7535.patch
Patch112: ImageMagick-CVE-2016-7537.patch
Patch113: ImageMagick-CVE-2016-7538.patch
Patch114: ImageMagick-CVE-2016-7539.patch
Patch115: ImageMagick-CVE-2016-6823.patch
Patch116: ImageMagick-CVE-2016-7101.patch
Patch117: ImageMagick-write-tiff-div-by-zero.patch
Patch118: ImageMagick-buffer-overflow-pdb,map,tiff.patch
Patch119: ImageMagick-CVE-2016-7799.patch
Patch120: ImageMagick-CVE-2016-7996,7997.patch
Patch121: ImageMagick-CVE-2016-8684.patch
Patch122: ImageMagick-CVE-2016-8682.patch
Patch123: ImageMagick-CVE-2016-8683.patch
Patch124: ImageMagick-CVE-2016-8677.patch
Patch125: ImageMagick-CVE-2016-8862.patch
Patch126: ImageMagick-CVE-2016-9556.patch
Patch127: ImageMagick-CVE-2016-9559.patch
Patch128: ImageMagick-CVE-2016-8866.patch
Patch129: ImageMagick-CVE-2016-8707.patch
Patch130: ImageMagick-CVE-2016-10049.patch
Patch131: ImageMagick-CVE-2016-10050.patch
Patch132: ImageMagick-CVE-2016-10051.patch
Patch133: ImageMagick-CVE-2016-10052.patch
Patch134: ImageMagick-CVE-2016-10144.patch
Patch135: ImageMagick-CVE-2016-10145.patch
Patch136: ImageMagick-CVE-2017-5506.patch
Patch137: ImageMagick-CVE-2016-10059.patch
Patch138: ImageMagick-CVE-2016-10046.patch
Patch139: ImageMagick-CVE-2016-10048.patch
Patch140: ImageMagick-CVE-2017-5508.patch
Patch141: ImageMagick-CVE-2016-10146.patch
Patch142: ImageMagick-CVE-2016-10063.patch
Patch143: ImageMagick-CVE-2017-5510.patch
Patch144: ImageMagick-CVE-2016-10065.patch
Patch145: ImageMagick-CVE-2017-5511.patch
Patch146: ImageMagick-CVE-2016-10060.patch
Patch147: ImageMagick-CVE-2016-10061.patch
Patch148: ImageMagick-CVE-2016-10062.patch
Patch149: ImageMagick-CVE-2016-10064.patch
Patch150: ImageMagick-CVE-2016-10068.patch
Patch151: ImageMagick-CVE-2016-10069.patch
Patch152: ImageMagick-CVE-2016-10070.patch
Patch153: ImageMagick-CVE-2016-10071.patch
Patch154: ImageMagick-CVE-2017-5507.patch
Patch155: ImageMagick-CVE-2017-6502.patch
Patch156: ImageMagick-CVE-2017-7943.patch
Patch157: ImageMagick-CVE-2017-7942.patch
Patch158: ImageMagick-CVE-2017-7941.patch
Patch159: ImageMagick-CVE-2017-8344.patch
Patch160: ImageMagick-CVE-2017-8345,8350.patch
Patch161: ImageMagick-CVE-2017-8346.patch
Patch162: ImageMagick-CVE-2017-8357.patch
Patch163: ImageMagick-CVE-2017-8343.patch
Patch164: ImageMagick-CVE-2017-8347.patch
Patch165: ImageMagick-CVE-2017-8348.patch
Patch166: ImageMagick-CVE-2017-8349.patch
Patch167: ImageMagick-CVE-2017-8351.patch
Patch168: ImageMagick-CVE-2017-8352.patch
Patch169: ImageMagick-CVE-2017-8353.patch
Patch170: ImageMagick-CVE-2017-8354.patch
Patch171: ImageMagick-CVE-2017-8355.patch
Patch172: ImageMagick-CVE-2017-8356.patch
Patch173: ImageMagick-CVE-2017-7606.patch
Patch174: ImageMagick-CVE-2017-8765.patch
Patch175: ImageMagick-CVE-2017-8830.patch
Patch176: ImageMagick-CVE-2017-9098.patch
Patch177: ImageMagick-CVE-2017-9143.patch
Patch178: ImageMagick-CVE-2017-9142.patch
Patch179: ImageMagick-CVE-2017-9141.patch
Patch180: ImageMagick-CVE-2017-9144.patch
Patch181: ImageMagick-CVE-2017-9440.patch
Patch182: ImageMagick-CVE-2017-9439.patch
Patch183: ImageMagick-CVE-2017-9501.patch
Patch184: ImageMagick-CVE-2017-11403.patch
Patch185: ImageMagick-CVE-2017-15033.patch
Patch186: ImageMagick-CVE-2017-13139.patch
Patch187: ImageMagick-CVE-2017-13133.patch
Patch188: ImageMagick-CVE-2017-12428,12431,11534.patch
Patch189: ImageMagick-CVE-2017-11446.patch
Patch190: ImageMagick-CVE-2017-12433.patch
Patch191: ImageMagick-CVE-2017-11523.patch
Patch192: ImageMagick-CVE-2017-14173.patch
Patch193: ImageMagick-CVE-2017-12587.patch
Patch194: ImageMagick-CVE-2017-12435.patch
Patch195: ImageMagick-CVE-2017-14531.patch
Patch196: ImageMagick-CVE-2017-12983.patch
Patch197: ImageMagick-CVE-2017-15930.patch
Patch198: ImageMagick-CVE-2017-11478.patch
Patch199: ImageMagick-CVE-2017-15217.patch
Patch200: ImageMagick-CVE-2017-13134.patch
Patch201: ImageMagick-CVE-2017-13769.patch
Patch202: ImageMagick-CVE-2017-14138.patch
Patch203: ImageMagick-CVE-2017-14175.patch
Patch204: ImageMagick-CVE-2017-14342.patch
Patch205: ImageMagick-CVE-2017-14341.patch
Patch206: ImageMagick-CVE-2017-16546.patch
Patch207: ImageMagick-CVE-2017-16545.patch
Patch208: ImageMagick-CVE-2017-16669,17682.patch
Patch209: ImageMagick-CVE-2017-14607.patch
Patch210: ImageMagick-CVE-2017-11640.patch
Patch211: ImageMagick-unable-to-read-font-memory-leaks.patch
Patch212: ImageMagick-CVE-2017-14682.patch
Patch213: ImageMagick-CVE-2017-14989.patch
Patch214: ImageMagick-CVE-2017-11188.patch
Patch215: ImageMagick-CVE-2017-11527.patch
Patch216: ImageMagick-CVE-2017-12140,12644.patch
Patch217: ImageMagick-CVE-2017-11535.patch
Patch218: ImageMagick-CVE-2017-14172.patch
Patch219: ImageMagick-CVE-2017-12662.patch
Patch220: ImageMagick-CVE-2017-11752.patch
Patch221: ImageMagick-CVE-2017-12669.patch
Patch222: ImageMagick-CVE-2017-14733.patch
Patch223: ImageMagick-CVE-2017-15277.patch
Patch224: ImageMagick-CVE-2017-13062.patch
Patch225: ImageMagick-CVE-2017-15281.patch
Patch226: ImageMagick-CVE-2017-13061.patch
Patch227: ImageMagick-CVE-2017-12563.patch
Patch228: ImageMagick-CVE-2017-14174.patch
Patch229: ImageMagick-CVE-2017-14042.patch
Patch230: ImageMagick-CVE-2017-14343,12691.patch
Patch231: ImageMagick-CVE-2017-11751.patch
Patch232: ImageMagick-CVE-2017-17680,17882.patch
Patch233: ImageMagick-CVE-2017-1000445.patch
Patch234: ImageMagick-CVE-2017-9409.patch
Patch235: ImageMagick-CVE-2017-11449.patch
Patch236: ImageMagick-CVE-2017-12430,12429.patch
Patch237: ImageMagick-CVE-2017-12642.patch
Patch238: ImageMagick-CVE-2017-14249.patch
Patch239: ImageMagick-CVE-2017-1000476.patch
Patch240: ImageMagick-mat.c-update.patch
Patch241: ImageMagick-CVE-2018-5247.patch
Patch242: ImageMagick-CVE-2017-18022.patch
Patch243: ImageMagick-CVE-2018-5246.patch
Patch244: ImageMagick-CVE-2017-9262.patch
Patch245: ImageMagick-CVE-2017-9261.patch
Patch246: ImageMagick-CVE-2017-10995.patch
Patch247: ImageMagick-CVE-2017-11539.patch
Patch248: ImageMagick-CVE-2017-11505,11526.patch
Patch249: ImageMagick-CVE-2017-12565,12641.patch
Patch250: ImageMagick-CVE-2017-11750,12676,12643.patch
Patch251: ImageMagick-CVE-2017-12673.patch
Patch252: ImageMagick-CVE-2017-12671,13141.patch
Patch253: ImageMagick-CVE-2017-12640.patch
Patch254: ImageMagick-CVE-2017-13059.patch
Patch255: ImageMagick-CVE-2017-13142.patch
Patch256: ImageMagick-CVE-2017-15218.patch
Patch257: ImageMagick-CVE-2017-17504.patch
Patch258: ImageMagick-CVE-2017-17884.patch
Patch259: ImageMagick-CVE-2017-17879.patch
Patch260: ImageMagick-CVE-2017-17914.patch
Patch261: ImageMagick-png.c-other-fixes.patch
Patch262: ImageMagick-CVE-2017-11525.patch
Patch263: ImageMagick-CVE-2017-11639.patch
Patch264: ImageMagick-CVE-2018-5685.patch
Patch265: ImageMagick-CVE-2017-18008.patch
Patch266: ImageMagick-CVE-2017-17681.patch
Patch267: ImageMagick-CVE-2017-18028.patch
Patch268: ImageMagick-CVE-2017-12665.patch
Patch269: ImageMagick-CVE-2017-12654.patch
Patch270: ImageMagick-CVE-2017-17885.patch
Patch271: ImageMagick-CVE-2017-12418.patch
Patch272: ImageMagick-CVE-2017-9407.patch
Patch273: ImageMagick-CVE-2017-11537.patch
Patch274: ImageMagick-CVE-2017-12664.patch
Patch275: ImageMagick-histogram.c-update.patch
Patch276: ImageMagick-CVE-2017-12432.patch
Patch277: ImageMagick-CVE-2017-12668.patch
Patch278: ImageMagick-CVE-2017-14224.patch
Patch279: ImageMagick-CVE-2017-13058,CVE-2018-18016.patch
Patch280: ImageMagick-CVE-2017-11450.patch
Patch281: ImageMagick-CVE-2017-11448.patch
Patch282: ImageMagick-CVE-2018-5357.patch
Patch283: ImageMagick-CVE-2018-6405,11656.patch
Patch284: ImageMagick-psd.c-update.patch
Patch285: ImageMagick-CVE-2017-14060.patch
Patch286: ImageMagick-CVE-2017-11170.patch
Patch287: ImageMagick-CVE-2017-12674.patch
Patch288: ImageMagick-CVE-2017-11166.patch
Patch289: ImageMagick-CVE-2017-13131.patch
Patch290: ImageMagick-CVE-2017-11638,11642.patch
Patch291: ImageMagick-CVE-2017-12566.patch
Patch292: ImageMagick-CVE-2017-12427.patch
Patch293: ImageMagick-CVE-2017-14139.patch
Patch294: ImageMagick-CVE-2017-17934.patch
Patch295: ImageMagick-CVE-2017-12663.patch
Patch296: ImageMagick-CVE-2017-11533.patch
Patch297: ImageMagick-CVE-2017-11530.patch
Patch298: ImageMagick-CVE-2017-11528.patch
Patch299: ImageMagick-CVE-2017-9405.patch
Patch300: ImageMagick-CVE-2017-14739.patch
Patch301: ImageMagick-CVE-2017-12693.patch
Patch302: ImageMagick-CVE-2017-12692.patch
Patch303: ImageMagick-CVE-2017-15017.patch
Patch304: ImageMagick-CVE-2017-15016.patch
Patch305: ImageMagick-CVE-2018-7443.patch
Patch306: ImageMagick-CVE-2018-7470.patch
Patch307: ImageMagick-CVE-2017-14314.patch
Patch308: ImageMagick-CVE-2017-16352.patch
Patch309: ImageMagick-CVE-2017-16353.patch
Patch310: ImageMagick-CVE-2017-13768.patch
Patch311: ImageMagick-CVE-2017-14505.patch
Patch312: ImageMagick-CVE-2017-9500.patch
Patch313: ImageMagick-CVE-2017-18209.patch
Patch314: ImageMagick-CVE-2017-18211.patch
Patch315: ImageMagick-CVE-2017-11524.patch
Patch316: ImageMagick-CVE-2018-8804.patch
Patch317: ImageMagick-CVE-2017-18251.patch
Patch318: ImageMagick-CVE-2017-10928.patch
Patch319: ImageMagick-CVE-2017-18254.patch
Patch320: ImageMagick-CVE-2017-18250.patch
Patch321: ImageMagick-CVE-2018-9135.patch
Patch322: ImageMagick-CVE-2017-18252.patch
Patch323: ImageMagick-CVE-2018-9018.patch
Patch324: ImageMagick-CVE-2017-14325.patch
Patch325: ImageMagick-CVE-2018-8960.patch
Patch326: ImageMagick-CVE-2018-10177.patch
Patch327: ImageMagick-CVE-2017-17887.patch
Patch328: ImageMagick-CVE-2018-9133.patch
Patch329: ImageMagick-CVE-2017-18271.patch
Patch330: ImageMagick-CVE-2018-11251.patch
Patch331: ImageMagick-CVE-2017-13758.patch
Patch332: ImageMagick-CVE-2018-10804.patch
Patch333: ImageMagick-CVE-2018-11655.patch
Patch334: ImageMagick-CVE-2018-10805.patch
Patch335: ImageMagick-CVE-2018-14434.patch
Patch336: ImageMagick-CVE-2018-14437.patch
Patch337: ImageMagick-CVE-2018-14436.patch
Patch338: ImageMagick-CVE-2018-14435.patch
Patch339: ImageMagick-CVE-2018-16323.patch
Patch340: ImageMagick-CVE-2018-16329.patch
Patch341: ImageMagick-CVE-2018-16412,16413.patch
Patch342: ImageMagick-CVE-2018-16645.patch
Patch343: ImageMagick-CVE-2018-16644.patch
Patch344: ImageMagick-CVE-2018-16643.patch
Patch345: ImageMagick-CVE-2018-16640.patch
Patch346: ImageMagick-CVE-2018-16642.patch
Patch347: ImageMagick-CVE-2018-16749.patch
# update to 6.9.10-11 version state
Patch348: ImageMagick-meta.c-update.patch
Patch349: ImageMagick-CVE-2017-11532.patch
Patch350: ImageMagick-CVE-2018-17966.patch
Patch351: ImageMagick-CVE-2018-12599.patch
Patch352: ImageMagick-CVE-2018-12600.patch
Patch353: ImageMagick-CVE-2018-17965.patch
Patch354: ImageMagick-CVE-2018-18024.patch
Patch355: ImageMagick-CVE-2017-14997.patch
Patch356: ImageMagick-CVE-2018-18544.patch
Patch357: ImageMagick-improve-import-documentation.patch
Patch358: ImageMagick-allow-override-system-policy.patch
Patch359: ImageMagick-CVE-2018-20467.patch
Patch360: ImageMagick-CVE-2019-7398.patch
Patch361: ImageMagick-CVE-2019-7395.patch
Patch362: ImageMagick-CVE-2019-7397.patch
# CVE-2019-7175 [bsc#1128649]
Patch363: ImageMagick-CVE-2019-7175.patch
# CVE-2019-9956 [bsc#1130330]
Patch364: ImageMagick-CVE-2019-9956.patch
# CVE-2019-10650 [bsc#1131317]
Patch365: ImageMagick-CVE-2019-10650.patch
# CVE-2019-11008 [bsc#1132054], CVE-2019-11009 [bsc#1132053], CVE-2019-11472 [bsc#1133204]
Patch366: ImageMagick-xwd.c-update.patch
# CVE-2019-11007 [bsc#1132060]
Patch367: ImageMagick-CVE-2019-11007.patch
# CVE-2019-11505 [bsc#1133501]
Patch368: ImageMagick-CVE-2019-11505.patch
# CVE-2019-11506 [bsc#1133498]
Patch369: ImageMagick-CVE-2019-11506.patch
# CVE-2019-11470 [bsc#1133205]
Patch370: ImageMagick-CVE-2019-11470.patch
# CVE-2017-12805 [bsc#1135236]
Patch371: ImageMagick-CVE-2017-12805.patch
# CVE-2019-11598 [bsc#1136732]
Patch372: ImageMagick-CVE-2019-11598.patch
# CVE-2019-11597 [bsc#1138464]
Patch373: ImageMagick-CVE-2019-11597.patch
# CVE-2019-12976 [bsc#1140110] (pcl.c)
Patch374: ImageMagick-CVE-2019-12976.patch
# CVE-2019-13133 [bsc#1140100], CVE-2019-13134 [bsc#1140102] (bmp.c, viff.c)
Patch375: ImageMagick-CVE-2019-13133,13134.patch
# CVE-2019-12974 [bsc#1140111] (pango.c)
Patch376: ImageMagick-CVE-2019-12974.patch
# CVE-2019-12978 [bsc#1139885] (pango.c)
Patch377: ImageMagick-CVE-2019-12978.patch
# CVE-2019-13135 [bsc#1140103] (cut.c)
Patch378: ImageMagick-CVE-2019-13135.patch
# CVE-2019-12975 [bsc#1140106] (dpx.c)
Patch379: ImageMagick-CVE-2019-12975.patch
# CVE-2019-13300 [bsc#1140669] (core)
Patch380: ImageMagick-CVE-2019-13300.patch
# CVE-2019-13307 [bsc#1140538] (core)
Patch381: ImageMagick-CVE-2019-13307.patch
# CVE-2019-13391 [bsc#1140673], CVE-2019-13308 [bsc#1140534] (core, giff.c)
Patch382: ImageMagick-CVE-2019-13391,13308.patch
# CVE-2019-12979 [bsc#1139886] (core)
Patch383: ImageMagick-CVE-2019-12979.patch
# CVE-2019-13295 [bsc#1140664], CVE-2019-13297 [bsc#1140666] (core)
Patch384: ImageMagick-CVE-2019-13295,13297.patch
# CVE-2019-13454 [bsc#1141171] (core)
Patch385: ImageMagick-CVE-2019-13454.patch
# CVE-2019-13310 [bsc#1140501] (wand)
Patch386: ImageMagick-CVE-2019-13310.patch
# CVE-2019-13311 [bsc#1140513] (wand)
Patch387: ImageMagick-CVE-2019-13311.patch
# CVE-2019-13301 [bsc#1140554] (core)
Patch388: ImageMagick-CVE-2019-13301.patch
# CVE-2019-14980 [bsc#1146068]
Patch389: ImageMagick-CVE-2019-14980.patch
# CVE-2019-15141 [bsc#1146211]
Patch390: ImageMagick-CVE-2019-15141.patch
# CVE-2019-15140 [bsc#1146212]
Patch391: ImageMagick-CVE-2019-15140.patch
# CVE-2019-15139 [bsc#1146213]
Patch392: ImageMagick-CVE-2019-15139.patch
# CVE-2019-16708 [bsc#1151781], CVE-2019-16709 [bsc#1151782]
Patch393: ImageMagick-CVE-2019-16708,16709.patch
# CVE-2019-16710 [bsc#1151783]
Patch394: ImageMagick-CVE-2019-16710.patch
# CVE-2019-16711 [bsc#1151784]
Patch395: ImageMagick-CVE-2019-16711.patch
# CVE-2019-16712 [bsc#1151785]
Patch396: ImageMagick-CVE-2019-16712.patch
# CVE-2019-16713 [bsc#1151786]
Patch397: ImageMagick-CVE-2019-16713.patch
# CVE-2019-19948 [bsc#1159861]
Patch398: ImageMagick-CVE-2019-19948.patch
# CVE-2019-19949 [bsc#1160369]
Patch399: ImageMagick-CVE-2019-19949.patch
# bsc#1161194, https://github.com/ImageMagick/ImageMagick/issues/1428
Patch400: ImageMagick-convert-tiff-resize-png.patch
# CVE-2020-27560 [bsc#1178067], division by zero in OptimizeLayerFrames function in MagickCore/layer.c
Patch401: ImageMagick-CVE-2020-27560.patch
# CVE-2020-19667 [bsc#1179103], Stack buffer overflow in XPM coder could result in a crash
Patch402: ImageMagick-CVE-2020-19667.patch
# CVE-2020-27750 [bsc#1179260], division by zero in MagickCore/colorspace-private.h
Patch403: ImageMagick-CVE-2020-27750.patch
# CVE-2020-27760 [bsc#1179281], division by zero at MagickCore/enhance.c
Patch404: ImageMagick-CVE-2020-27760.patch
# CVE-2020-25665 [bsc#1179208], heap-based buffer overflow in WritePALMImage
Patch405: ImageMagick-CVE-2020-25665.patch
# CVE-2020-27774 [bsc#1179333], integer overflow at MagickCore/statistic.c|CVE-2020-27766 [bsc#1179361], outside the range of representable values of type 'unsigned long' at MagickCore/statistic.c|CVE-2020-27776 [bsc#1179362], ImageMagick: outside the range of representable values of type 'unsigned long' at MagickCore/statistic.c
Patch406: ImageMagick-CVE-2020-27774,27766,27776.patch
# CVE-2020-25676 [bsc#1179244], outside the range of representable values of type 'long' and integer overflow at MagickCore/pixel.c
Patch407: ImageMagick-CVE-2020-25676.patch
# CVE-2020-27761 [bsc#1179315], outside the range of representable values of type 'unsigned long' at coders/palm.c
Patch408: ImageMagick-CVE-2020-27761.patch
# CVE-2020-27764 [bsc#1179317], outside the range of representable values of type 'unsigned long' at MagickCore/statistic.c
Patch409: ImageMagick-CVE-2020-27764.patch
# CVE-2020-27771 [bsc#1179327], outside the range of representable values of type 'unsigned char' at coders/pdf.c
Patch410: ImageMagick-CVE-2020-27771.patch
# CVE-2020-27759 [bsc#1179313], outside the range of representable values of type 'int' at MagickCore/quantize.c|CVE-2020-27769 [bsc#1179321], outside the range of representable values of type 'float' at MagickCore/quantize.c|CVE-2020-27754 [bsc#1179336], outside the range of representable values of type 'long' and signed integer overflow at MagickCore/quantize.c
Patch411: ImageMagick-CVE-2020-27759,27769,27754.patch
# CVE-2020-27763 [bsc#1179312], division by zero at MagickCore/resize.c
Patch412: ImageMagick-CVE-2020-27763.patch
# CVE-2020-27772 [bsc#1179347], outside the range of representable values of type 'unsigned int' at coders/bmp.c
Patch413: ImageMagick-CVE-2020-27772.patch
# CVE-2020-25666 [bsc#1179212], outside the range of representable values of type 'int' and signed integer overflow
Patch414: ImageMagick-CVE-2020-25666.patch
# CVE-2020-25674 [bsc#1179223], heap-based buffer overflow in WriteOnePNGImage
Patch415: ImageMagick-CVE-2020-25674.patch
# CVE-2020-25664 [bsc#1179202], heap-based buffer overflow in PopShortPixel
Patch416: ImageMagick-CVE-2020-25664.patch
# CVE-2020-27775 [bsc#1179338], outside the range of representable values of type 'unsigned char' at MagickCore/quantum.h
Patch417: ImageMagick-CVE-2020-27775.patch
# CVE-2020-27765 [bsc#1179311], division by zero at MagickCore/segment.c
Patch418: ImageMagick-CVE-2020-27765.patch
# CVE-2020-27755 [bsc#1179345], memory leaks in ResizeMagickMemory function in ImageMagick/MagickCore/memory.c
Patch419: ImageMagick-CVE-2020-27755.patch
# CVE-2020-27762 [bsc#1179278], outside the range of representable values of type 'unsigned char'
Patch420: ImageMagick-CVE-2020-27762.patch
# CVE-2020-27773 [bsc#1179285], division by zero at MagickCore/gem-private.h
Patch421: ImageMagick-CVE-2020-27773.patch
# CVE-2020-25675 [bsc#1179240], outside the range of representable values of type 'long' and integer overflow
Patch422: ImageMagick-CVE-2020-25675.patch
# CVE-2020-27770 [bsc#1179343], unsigned offset overflowed at MagickCore/string.c
Patch423: ImageMagick-CVE-2020-27770.patch
# CVE-2020-27753 [bsc#1179397], memory leaks in AcquireMagickMemory function
Patch424: ImageMagick-CVE-2020-27753.patch
# CVE-2020-27767 [bsc#1179322], outside the range of representable values of type 'float' at MagickCore/quantum.h|CVE-2020-27768 [bsc#1179339], outside the range of representable values of type 'unsigned int' at MagickCore/quantum-private.h|CVE-2020-27751 [bsc#1179269], integer overflow in MagickCore/quantum-export.c|CVE-2020-27752 [bsc#1179346], heap-based buffer overflow in PopShortPixel in MagickCore/quantum-private.h|CVE-2020-27757 [bsc#1179268], outside the range of representable values of type 'unsigned long long' at
Patch425: ImageMagick-CVE-2020-27767,27768,27751,27752,27757.patch
# CVE-2021-20176 [bsc#1181836], processing crafted file leads to division by zero
Patch426: ImageMagick-CVE-2021-20176.patch
# CVE-2021-20246 [bsc#1182337], Division by zero in ScaleResampleFilter in MagickCore/resample.c
Patch427: ImageMagick-CVE-2021-20246.patch
# CVE-2021-20244 [bsc#1182325], Division by zero in ImplodeImage in MagickCore/visual-effects.c
Patch428: ImageMagick-CVE-2021-20244.patch
# CVE-2021-20243 [bsc#1182336], Division by zero in GetResizeFilterWeight in MagickCore/resize.c
Patch429: ImageMagick-CVE-2021-20243.patch
# CVE-2021-20309 [bsc#1184624], Division by zero in WaveImage() of MagickCore/visual-effects.c
Patch430: ImageMagick-CVE-2021-20309.patch
# CVE-2021-20311 [bsc#1184626], Division by zero in sRGBTransformImage() in MagickCore/colorspace.c
Patch431: ImageMagick-CVE-2021-20311.patch
# CVE-2021-20312 [bsc#1184627], Integer overflow in WriteTHUMBNAILImage of coders/thumbnail.c
Patch432: ImageMagick-CVE-2021-20312.patch
# CVE-2021-20313 [bsc#1184628], Cipher leak when the calculating signatures in TransformSignatureof MagickCore/signature.c
Patch433: ImageMagick-CVE-2021-20313.patch
# CVE-2022-1270 [bsc#1198351], Heap buffer overflow when parsing MIFF
Patch434: ImageMagick-CVE-2022-1270.patch
# CVE-2022-28463 [bsc#1199350], ImageMagick 7.1.0-27 is vulnerable to Buffer Overflow.
Patch435: ImageMagick-CVE-2022-28463.patch
# CVE-2022-32547 [bsc#1200387], load of misaligned address at MagickCore/property.c
Patch436: ImageMagick-CVE-2022-32547.patch
# CVE-2022-32545 [bsc#1200388], outside the range of representable values of type 'unsigned char' at coders/psd.c
Patch437: ImageMagick-CVE-2022-32545.patch
# CVE-2022-32546 [bsc#1200389], outside the range of representable values of type 'unsigned long' at coders/pcl.c
Patch438: ImageMagick-CVE-2022-32546.patch
# CVE-2019-17540 [bsc#1153866], heap-based buffer overflow in ReadPSInfo in coders/ps.c
Patch439: ImageMagick-CVE-2019-17540.patch
# CVE-2021-20224 [bsc#1202800], integer overflow in ExportIndexQuantum() function in MagickCore/quantum-export.c
Patch440: ImageMagick-CVE-2021-20224.patch
# CVE-2022-44267 [bsc#1207982], denial of service when parsing a PNG image|CVE-2022-44268 [bsc#1207983], arbitrary file disclosure when parsing a PNG image
Patch441: ImageMagick-CVE-2022-44267,44268.patch
# CVE-2023-1289 [bsc#1209141], segmentation fault and possible DoS via specially crafted SVG
Patch442: ImageMagick-CVE-2023-1289.patch
# CVE-2023-34151 [bsc#1211791], Undefined behaviors of casting double to size_t in svg, mvg and other coders
Patch443: ImageMagick-CVE-2023-34151.patch
# CVE-2023-3195 [bsc#1212235], stack overflow in coders/tiff.c while parsing malicious tiff file
Patch444: ImageMagick-CVE-2023-3195.patch
# CVE-2023-3745 [bsc#1213624], heap out of bounds read in PushCharPixel() in quantum-private.h
Patch445: ImageMagick-CVE-2023-3745.patch
# CVE-2020-21679 [bsc#1214578], Buffer Overflow vulnerability in WritePCXImage function in pcx.c in GraphicsMagick 1.4 allows remote attackers to cause a denial of service.
Patch446: ImageMagick-CVE-2020-21679.patch
# CVE-2023-5341 [bsc#1215939], Heap use-after-free in coders/bmp.c
Patch447: ImageMagick-CVE-2023-5341.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%package -n perl-PerlMagick
Requires: ImageMagick = %{version}
Requires: libMagickCore%{libspec}-%{clibver} = %{version}
Requires: perl = %{perl_version}
Summary: Perl interface for ImageMagick
Group: Development/Libraries/Perl
%package devel
Requires: ImageMagick = %{version}
Requires: libMagickCore%{libspec}-%{clibver} = %{version}
Requires: libMagickWand%{libspec}-%{clibver} = %{version}
Summary: Include Files and Libraries Mandatory for Development
Group: Development/Libraries/C and C++
Requires: glibc-devel
# bnc#741947:
Requires: libbz2-devel
%if !%{debug_build}
%package extra
Requires: ImageMagick = %{version}
Requires: libMagickCore%{libspec}-%{clibver} = %{version}
Summary: Viewer and Converter for Images - extra codecs
#delegates configured in delegates.xml that imagemagick can use
Group: Productivity/Graphics/Other
Recommends: autotrace
Recommends: dcraw
Recommends: ghostpcl
Recommends: ghostscript_any
Recommends: hp2xx
Recommends: libwmf
Recommends: netpbm
Recommends: transfig
%endif
%package -n libMagickCore%{libspec}-%{clibver}
Summary: Viewer and Converter for Images - runtime library
Group: Productivity/Graphics/Other
Suggests: ImageMagick-extra = %{version}
Recommends: ghostscript
Requires: imagick-%{config_spec} = %{version}
Recommends: %{name}-config-SUSE = %{version}
%package -n libMagickWand%{libspec}-%{clibver}
Summary: Viewer and Converter for Images - runtime library
Group: Productivity/Graphics/Other
%package -n libMagick++%{libspec}-%{cxxlibver}
Requires: ImageMagick
Summary: C++ Interface for ImageMagick - runtime library
Group: Development/Libraries/C and C++
%package -n libMagick++-devel
Requires: ImageMagick-devel = %{version}
Requires: libMagick++%{libspec}-%{cxxlibver} = %{version}
Requires: libstdc++-devel
Summary: C++ Interface for ImageMagick - files mandatory for development
Group: Development/Libraries/C and C++
%package doc
Summary: Document Files for ImageMagick Library
Group: Development/Libraries/C and C++
%if 0%{?suse_version} >= 1120
BuildArch: noarch
%endif
%package %{config_spec}-upstream
Summary: Upstream Configuration Files
Group: Development/Libraries/C and C++
Provides: imagick-%{config_spec}
Requires(post): update-alternatives
Requires(postun):update-alternatives
%package %{config_spec}-SUSE
Summary: Upstream Configuration Files
Group: Development/Libraries/C and C++
Provides: imagick-%{config_spec}
Requires(post): update-alternatives
Requires(postun):update-alternatives
%prep
%setup -n ImageMagick-%{source_version}
%patch0
%patch1
%patch2 -p1
%patch3 -p1
%patch4 -p1
%patch11 -p1
%ifarch ppc ppc64 s390 s390x
%patch12
%endif
%patch13
%patch14
%patch15
%patch16
%patch17
%patch18
%patch19
%patch21 -p1
%patch22 -p1
%patch23 -p1
%patch24 -p1
%patch25 -p1
%patch26 -p1
%patch27 -p1
%patch28 -p1
%patch29 -p1
%patch30 -p1
%patch31 -p1
%patch32 -p1
%patch33 -p1
%patch34 -p1
%patch35 -p1
%patch36 -p1
%patch37 -p1
%patch38 -p1
%patch39 -p1
%patch40 -p1
%patch41 -p1
%patch42 -p1
%patch43 -p1
%patch44 -p1
%patch45 -p1
%patch46 -p1
%patch47 -p1
%patch48 -p1
%patch49 -p1
%patch50 -p1
%patch51 -p1
%patch52 -p1
%patch53 -p1
%patch54 -p1
%patch55 -p1
%patch56 -p1
%patch57 -p1
%patch58 -p1
%patch59 -p1
%patch60 -p1
%patch61 -p1
%patch62 -p1
%patch63 -p1
%patch64 -p1
%patch65 -p1
%patch66 -p1
%patch67 -p1
%patch68 -p1
%patch69 -p1
%patch70 -p1
%patch71 -p1
%patch72 -p1
%patch73 -p1
%patch74 -p1
%patch75 -p1
%patch76 -p1
%patch77 -p1
%patch78 -p1
%patch79 -p1
%patch80 -p1
%patch81 -p1
%patch82 -p1
%patch83 -p1
%patch84 -p1
%patch85 -p1
%patch86 -p1
%patch87 -p1
%patch88 -p1
%patch89 -p1
%patch90 -p1
%patch91 -p1
%patch92 -p1
%patch93 -p1
%patch94 -p1
%patch95 -p1
%patch96 -p1
%patch97 -p1
%patch98 -p1
%patch99 -p1
%patch100 -p1
%patch101 -p1
%patch102 -p1
%patch103 -p1
%patch104 -p1
%patch105 -p1
%patch106 -p1
%patch107 -p1
%patch108 -p1
%patch109 -p1
%patch110 -p1
%patch111 -p1
%patch112 -p1
%patch113 -p1
%patch114 -p1
%patch115 -p1
%patch116 -p1
%patch117 -p1
%patch118 -p1
%patch119 -p1
%patch120 -p1
%patch121 -p1
%patch122 -p1
%patch123 -p1
%patch124 -p1
%patch125 -p1
%patch126 -p1
%patch127 -p1
%patch128 -p1
%patch129 -p1
%patch130 -p1
%patch131 -p1
%patch132 -p1
%patch133 -p1
%patch134 -p1
%patch135 -p1
%patch136 -p1
%patch137 -p1
%patch138 -p1
%patch139 -p1
%patch140 -p1
%patch141 -p1
%patch142 -p1
%patch143 -p1
%patch144 -p1
%patch145 -p1
%patch146 -p1
%patch147 -p1
%patch148 -p1
%patch149 -p1
%patch150 -p1
%patch151 -p1
%patch152 -p1
%patch153 -p1
%patch154 -p1
%patch155 -p1
%patch156 -p1
%patch157 -p1
%patch158 -p1
%patch159 -p1
%patch160 -p1
%patch161 -p1
%patch162 -p1
%patch163 -p1
%patch164 -p1
%patch165 -p1
%patch166 -p1
%patch167 -p1
%patch168 -p1
%patch169 -p1
%patch170 -p1
%patch171 -p1
%patch172 -p1
%patch173 -p1
%patch174 -p1
%patch175 -p1
%patch176 -p1
%patch177 -p1
%patch178 -p1
%patch179 -p1
%patch180 -p1
%patch181 -p1
%patch182 -p1
%patch183 -p1
%patch184 -p1
%patch185 -p1
%patch186 -p1
%patch187 -p1
%patch188 -p1
%patch189 -p1
%patch190 -p1
%patch191 -p1
%patch192 -p1
%patch193 -p1
%patch194 -p1
%patch195 -p1
%patch196 -p1
%patch197 -p1
%patch198 -p1
%patch199 -p1
%patch200 -p1
%patch201 -p1
%patch202 -p1
%patch203 -p1
%patch204 -p1
%patch205 -p1
%patch206 -p1
%patch207 -p1
%patch208 -p1
%patch209 -p1
%patch210 -p1
%patch211 -p1
%patch212 -p1
%patch213 -p1
%patch214 -p1
%patch215 -p1
%patch216 -p1
%patch217 -p1
%patch218 -p1
%patch219 -p1
%patch220 -p1
%patch221 -p1
%patch222 -p1
%patch223 -p1
%patch224 -p1
%patch225 -p1
%patch226 -p1
%patch227 -p1
%patch228 -p1
%patch229 -p1
%patch230 -p1
%patch231 -p1
%patch232 -p1
%patch233 -p1
%patch234 -p1
%patch235 -p1
%patch236 -p1
%patch237 -p1
%patch238 -p1
%patch239 -p1
%patch240 -p1
%patch241 -p1
%patch242 -p1
%patch243 -p1
%patch244 -p1
%patch245 -p1
%patch246 -p1
%patch247 -p1
%patch248 -p1
%patch249 -p1
%patch250 -p1
%patch251 -p1
%patch252 -p1
%patch253 -p1
%patch254 -p1
%patch255 -p1
%patch256 -p1
%patch257 -p1
%patch258 -p1
%patch259 -p1
%patch260 -p1
%patch261 -p1
%patch262 -p1
%patch263 -p1
%patch264 -p1
%patch265 -p1
%patch266 -p1
%patch267 -p1
%patch268 -p1
%patch269 -p1
%patch270 -p1
%patch271 -p1
%patch272 -p1
%patch273 -p1
%patch274 -p1
%patch275 -p1
%patch276 -p1
%patch277 -p1
%patch278 -p1
%patch279 -p1
%patch280 -p1
%patch281 -p1
%patch282 -p1
%patch283 -p1
%patch284 -p1
%patch285 -p1
%patch286 -p1
%patch287 -p1
%patch288 -p1
%patch289 -p1
%patch290 -p1
%patch291 -p1
%patch292 -p1
%patch293 -p1
%patch294 -p1
%patch295 -p1
%patch296 -p1
%patch297 -p1
%patch298 -p1
%patch299 -p1
%patch300 -p1
%patch301 -p1
%patch302 -p1
%patch303 -p1
%patch304 -p1
%patch305 -p1
%patch306 -p1
%patch307 -p1
%patch308 -p1
%patch309 -p1
%patch310 -p1
%patch311 -p1
%patch312 -p1
%patch313 -p1
%patch314 -p1
%patch315 -p1
%patch316 -p1
%patch317 -p1
%patch318 -p1
%patch319 -p1
%patch320 -p1
%patch321 -p1
%patch322 -p1
%patch323 -p1
%patch324 -p1
%patch325 -p1
%patch326 -p1
%patch327 -p1
%patch328 -p1
%patch329 -p1
%patch330 -p1
%patch331 -p1
%patch332 -p1
%patch333 -p1
%patch334 -p1
%patch335 -p1
%patch336 -p1
%patch337 -p1
%patch338 -p1
%patch339 -p1
%patch340 -p1
%patch341 -p1
%patch342 -p1
%patch343 -p1
%patch344 -p1
%patch345 -p1
%patch346 -p1
%patch347 -p1
%patch348 -p1
%patch349 -p1
%patch350 -p1
%patch351 -p1
%patch352 -p1
%patch353 -p1
%patch354 -p1
%patch355 -p1
%patch356 -p1
%patch357 -p1
%patch358 -p1
%patch359 -p1
%patch360 -p1
%patch361 -p1
%patch362 -p1
%patch363 -p1
%patch364 -p1
%patch365 -p1
%patch366 -p1
%patch367 -p1
%patch368 -p1
%patch369 -p1
%patch370 -p1
%patch371 -p1
%patch372 -p1
%patch373 -p1
%patch374 -p1
%patch375 -p1
%patch376 -p1
%patch377 -p1
%patch378 -p1
%patch379 -p1
%patch380 -p1
%patch381 -p1
%patch382 -p1
%patch383 -p1
%patch384 -p1
%patch385 -p1
%patch386 -p1
%patch387 -p1
%patch388 -p1
%patch389 -p1
%patch390 -p1
%patch391 -p1
%patch392 -p1
%patch393 -p1
%patch394 -p1
%patch395 -p1
%patch396 -p1
%patch397 -p1
%patch398 -p1
%patch399 -p1
%patch400 -p1
%patch401 -p1
%patch402 -p1
%patch403 -p1
%patch404 -p1
%patch405 -p1
%patch406 -p1
%patch407 -p1
%patch408 -p1
%patch409 -p1
%patch410 -p1
%patch411 -p1
%patch412 -p1
%patch413 -p1
%patch414 -p1
%patch415 -p1
%patch416 -p1
%patch417 -p1
%patch418 -p1
%patch419 -p1
%patch420 -p1
%patch421 -p1
%patch422 -p1
%patch423 -p1
%patch424 -p1
%patch425 -p1
%patch426 -p1
%patch427 -p1
%patch428 -p1
%patch429 -p1
%patch430 -p1
%patch431 -p1
%patch432 -p1
%patch433 -p1
%patch434 -p1
%patch435 -p1
%patch436 -p1
%patch437 -p1
%patch438 -p1
%patch439 -p1
%patch440 -p1
%patch441 -p1
%patch442 -p1
%patch443 -p1
%patch444 -p1
%patch445 -p1
%patch446 -p1
%patch447 -p1
%build
%if %{debug_build}
export CFLAGS="%{optflags} -O0"
export CXXFLAGS="%{optflags} -O0"
%endif
export LDFLAGS="-L%{_libdir}"
%if 0%{?is_opensuse}
# for MODULES_DIRNAME setup purpose see bnc#866442
export MODULES_DIRNAME="modules-%{maj}_Q%{quantum_depth}-%{clibver}"
# for SHAREARCH_DIRNAME setup purpose see bnc#866442
export SHAREARCH_DIRNAME="config-%{maj}_Q%{quantum_depth}-%{clibver}"
%endif
# for CONFIGURE_RELATIVE_PATH setup purpose see bnc#866442
sed -i 's:^\(CONFIGURE_RELATIVE_PATH=\).*:\1ImageMagick:' configure.ac
CHANGES=`stat --format="%y" %SOURCE1|cut --characters=1-10`
# Use mtime of .changes for build time
sed -i -e "s|^PACKAGE_RELEASE_DATE.*$|PACKAGE_RELEASE_DATE=\"$CHANGES\"|" version.sh
autoreconf --force --install -v
automake
%configure --with-pic \
--disable-silent-rules \
--enable-shared \
--without-frozenpaths \
--with-magick_plus_plus \
%if !%{debug_build}
--with-modules \
%else
--without-modules \
%endif
--with-threads \
--with-perl \
--with-perl-options="INSTALLDIRS=vendor CC='%__cc -L$PWD/magick/.libs' LDDLFLAGS='-shared -L$PWD/magick/.libs'" \
--disable-static \
--with-djvu=yes \
--with-rsvg=yes \
--with-wmf=yes \
--with-quantum-depth=%{quantum_depth}
%if %{asan_build}
sed -i -e 's/\(^CFLAGS.*\)/\1 -fsanitize=address/' \
-e 's/\(^LIBS =.*\)/\1 -lasan/' \
Makefile
%endif
# don't build together, PerlMagick could be miscompiled when using parallel build[1]
# [1] http://pkgs.fedoraproject.org/cgit/ImageMagick.git/tree/ImageMagick.spec
make %{?_smp_mflags} all
make -j1 perl-build
%check
%if %{debug_build}
# testsuite does not succeed with -O0 for some reason,
# research TODO
exit 0
%endif
%if %{asan_build}
# ASAN needs /proc to be mounted
exit 0
%endif
# enable insecure coders for testing again
make check
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$PWD/magick/.libs:$PWD/wand/.libs
export MAGICK_CODER_MODULE_PATH=$PWD/coders/.libs
export MAGICK_CODER_FILTER_PATH=$PWD/filters/.libs
export MAGICK_CONFIGURE_PATH=$PWD/config
cd PerlMagick
sed -i 's:\(TEST_VERBOSE=\)0:\11:' Makefile
make test
%install
%{__make} install \
DESTDIR=%{buildroot} \
pkgdocdir=%{_defaultdocdir}/%{name}-doc/
%perl_process_packlist
# configuration magic
mv -t %{buildroot}%{_sysconfdir}/%{name}* %{buildroot}%{_datadir}/%{name}*/*.xml
mv %{buildroot}%{_sysconfdir}/%{config_dir}{,-upstream}
cp -r %{buildroot}%{_sysconfdir}/%{config_dir}{-upstream,-SUSE}
patch --dir %{buildroot}%{_sysconfdir}/%{config_dir}-SUSE < %{PATCH20}
mkdir -p %{buildroot}%{_sysconfdir}/alternatives/
ln -sf %{_sysconfdir}/alternatives/%{config_dir} %{buildroot}%{_sysconfdir}/%{config_dir}
# remove unneded files from Magick++/demo for %doc, but not in place
# they are needed for make check
cp -r Magick++/demo .
rm -rf demo/{.deps,.libs,*.C,*.o,Makefile*,run_demos.bat}
PATH='/bin:/usr/bin' find demo -type f -perm /111 -execdir %{__rm} -rf '{}' ';'
mv demo/makefile.2 demo/Makefile
#
PATH='/bin:/usr/bin' find %{buildroot}/%{_libdir} -name "*.la" ! -empty \
-execdir %{__sed} -i -e 's@ -L/usr/src[^ ]*@@g' -e 's@ /usr/lib/libltdl.la@@g' '{}' ';'
rm %{buildroot}%{_libdir}/*.la
%if 0%{?suse_version} > 1020
%fdupes -s %{buildroot}%{_defaultdocdir}/%{name}-doc/www/api
%endif
%post -n libMagickCore%{libspec}-%{clibver} -p /sbin/ldconfig
%postun -n libMagickCore%{libspec}-%{clibver} -p /sbin/ldconfig
%post -n libMagickWand%{libspec}-%{clibver} -p /sbin/ldconfig
%postun -n libMagickWand%{libspec}-%{clibver} -p /sbin/ldconfig
%post -n libMagick++%{libspec}-%{cxxlibver} -p /sbin/ldconfig
%postun -n libMagick++%{libspec}-%{cxxlibver} -p /sbin/ldconfig
%post %{config_spec}-upstream
%{_sbindir}/update-alternatives --install %{_sysconfdir}/%{config_dir} %{config_dir} %{_sysconfdir}/%{config_dir}-upstream 1
%postun %{config_spec}-upstream
if [ ! -d %{_sysconfdir}/%{config_dir}-upstream ] ; then
%{_sbindir}/update-alternatives --remove %{config_dir} %{_sysconfdir}/%{config_dir}-upstream
fi
%post %{config_spec}-SUSE
%{_sbindir}/update-alternatives --install %{_sysconfdir}/%{config_dir} %{config_dir} %{_sysconfdir}/%{config_dir}-SUSE 10
%postun %{config_spec}-SUSE
if [ ! -d %{_sysconfdir}/%{config_dir}-SUSE ] ; then
%{_sbindir}/update-alternatives --remove %{config_dir} %{_sysconfdir}/%{config_dir}-SUSE
fi
%files
%defattr(-,root,root)
%{_bindir}/[^MW]*
%doc QuickStart.txt README.txt NEWS.txt ChangeLog LICENSE
%doc %{_mandir}/man1/*
%exclude %{_mandir}/man1/*-config.1.gz
%files -n libMagickCore%{libspec}-%{clibver}
%defattr(-,root,root)
%doc LICENSE
%{_libdir}/libMagickCore*.so.%{clibver}*
%dir %{_libdir}/ImageMagick*
%if !%{debug_build}
%dir %{_libdir}/ImageMagick*/modules*
%dir %{_libdir}/ImageMagick*/modules*/*
%exclude %{_libdir}/ImageMagick*/modules*/*/wmf.*
%exclude %{_libdir}/ImageMagick*/modules*/*/jp2.*
%exclude %{_libdir}/ImageMagick*/modules*/*/djvu.*
%{_libdir}/ImageMagick*/modules*/*/*.so
# don't remove la files, see bnc#579798
%{_libdir}/ImageMagick*/modules*/*/*.la
%endif
%{_libdir}/ImageMagick*/config*
%files -n libMagickWand%{libspec}-%{clibver}
%defattr(-,root,root)
%doc LICENSE
%{_libdir}/libMagickWand*.so.%{clibver}*
%if !%{debug_build}
%files extra
%defattr(-,root,root)
%doc LICENSE
%{_libdir}/ImageMagick*/modules*/*/wmf.so
# don't remove la files, see bnc#579798
%{_libdir}/ImageMagick*/modules*/*/wmf.la
%{_libdir}/ImageMagick*/modules*/*/jp2.so
%{_libdir}/ImageMagick*/modules*/*/jp2.la
%{_libdir}/ImageMagick*/modules*/*/djvu.so
%{_libdir}/ImageMagick*/modules*/*/djvu.la
%endif
%files devel
%defattr(-,root,root)
%doc LICENSE
%{_libdir}/libMagickCore*.so
%{_libdir}/libMagickWand*.so
%dir %{_includedir}/ImageMagick*
%{_includedir}/ImageMagick*/magick
%{_includedir}/ImageMagick*/wand
%{_bindir}/MagickCore-config
%{_bindir}/MagickWand-config
%{_bindir}/Magick-config
%{_bindir}/Wand-config
%{_libdir}/pkgconfig/MagickCore*.pc
%{_libdir}/pkgconfig/ImageMagick.pc
%{_libdir}/pkgconfig/ImageMagick-*.pc
%{_libdir}/pkgconfig/*Wand*.pc
%doc %{_mandir}/man1/*-config.1.gz
%exclude %{_mandir}/man1/Magick++-config.1.gz
%files -n perl-PerlMagick
%defattr(-,root,root)
%doc LICENSE
%doc PerlMagick/README.txt
%doc PerlMagick/demo
%doc %{_mandir}/man3/*
%{perl_vendorarch}/auto/Image
%{perl_vendorarch}/Image
%files -n libMagick++%{libspec}-%{cxxlibver}
%defattr(-,root,root)
%doc LICENSE
%{_libdir}/libMagick++*.so.%{cxxlibver}*
%files -n libMagick++-devel
%defattr(-,root,root)
%doc LICENSE
%doc demo
%doc Magick++/NEWS Magick++/README Magick++/AUTHORS
%{_libdir}/libMagick++*.so
%{_includedir}/ImageMagick*/Magick++.h
%{_includedir}/ImageMagick*/Magick++
%{_bindir}/Magick++-config
%{_libdir}/pkgconfig/ImageMagick++*.pc
%{_libdir}/pkgconfig/Magick++*.pc
%doc %{_mandir}/man1/Magick++-config.1.gz
%files doc
%defattr(-,root,root)
%{_docdir}/%{name}-doc
%files %{config_spec}-upstream
%dir %{_sysconfdir}/ImageMagick*-upstream/
%config(noreplace) %{_sysconfdir}/ImageMagick*-upstream/*
%{_sysconfdir}/%{config_dir}
%ghost %{_sysconfdir}/alternatives/%{config_dir}
%files %{config_spec}-SUSE
%dir %{_sysconfdir}/ImageMagick*-SUSE/
%config %{_sysconfdir}/ImageMagick*-SUSE/*
%{_sysconfdir}/%{config_dir}
%ghost %{_sysconfdir}/alternatives/%{config_dir}
%description
ImageMagick is a robust collection of tools and libraries to read,
write, and manipulate an image in many image formats, including popular
formats like TIFF, JPEG, PNG, PDF, PhotoCD, and GIF. With ImageMagick,
you can create images dynamically, making it suitable for Web
applications. You can also resize, rotate, sharpen, color-reduce, or
add special effects to an image and save your completed work in many
different image formats. Image processing operations are available from
the command line as well as through C, C++, and PERL-based programming
interfaces.
%description devel
ImageMagick is a robust collection of tools and libraries to read,
write, and manipulate an image in many image formats, including popular
formats like TIFF, JPEG, PNG, PDF, PhotoCD, and GIF. With ImageMagick,
you can create images dynamically, making it suitable for Web
applications. You can also resize, rotate, sharpen, color-reduce, or
add special effects to an image and save your completed work in many
different image formats. Image processing operations are available from
the command line as well as through C, C++, and PERL-based programming
interfaces.
%if !%{debug_build}
%description extra
This package adds support for djvu, wmf and jpeg2000 formats and
installs optional helper applications.
ImageMagick is a robust collection of tools and libraries to read,
write, and manipulate an image in many image formats, including popular
formats like TIFF, JPEG, PNG, PDF, PhotoCD, and GIF. With ImageMagick,
you can create images dynamically, making it suitable for Web
applications. You can also resize, rotate, sharpen, color-reduce, or
add special effects to an image and save your completed work in many
different image formats. Image processing operations are available from
the command line as well as through C, C++, and PERL-based programming
interfaces.
%endif
%description -n libMagickCore%{libspec}-%{clibver}
ImageMagick is a robust collection of tools and libraries to read,
write, and manipulate an image in many image formats, including popular
formats like TIFF, JPEG, PNG, PDF, PhotoCD, and GIF. With ImageMagick,
you can create images dynamically, making it suitable for Web
applications. You can also resize, rotate, sharpen, color-reduce, or
add special effects to an image and save your completed work in many
different image formats. Image processing operations are available from
the command line as well as through C, C++, and PERL-based programming
interfaces.
%description -n libMagickWand%{libspec}-%{clibver}
ImageMagick is a robust collection of tools and libraries to read,
write, and manipulate an image in many image formats, including popular
formats like TIFF, JPEG, PNG, PDF, PhotoCD, and GIF. With ImageMagick,
you can create images dynamically, making it suitable for Web
applications. You can also resize, rotate, sharpen, color-reduce, or
add special effects to an image and save your completed work in many
different image formats. Image processing operations are available from
the command line as well as through C, C++, and PERL-based programming
interfaces.
%description -n perl-PerlMagick
PerlMagick is an objected-oriented Perl interface to ImageMagick. Use
the module to read, manipulate, or write an image or image sequence
from within a Perl script. This makes it suitable for Web CGI scripts.
%description -n libMagick++%{libspec}-%{cxxlibver}
This is Magick++, the object-oriented C++ API for the ImageMagick
image-processing library.
Magick++ supports an object model inspired by PerlMagick. Magick++
should be faster than PerlMagick since it is written in a compiled
language which is not parsed at run-time. This makes it suitable for
Web CGI programs. Images support implicit reference counting so that
copy constructors and assignment incur almost no cost. The cost of
actually copying an image (if necessary) is done just before
modification and this copy is managed automatically by Magick++.
De-referenced copies are automatically deleted. The image objects
support value (rather than pointer) semantics so it is trivial to
support multiple generations of an image in memory at one time.
%description -n libMagick++-devel
This is Magick++, the object-oriented C++ API for the ImageMagick
image-processing library.
Magick++ supports an object model inspired by PerlMagick. Magick++
should be faster than PerlMagick since it is written in a compiled
language which is not parsed at run-time. This makes it suitable for
Web CGI programs. Images support implicit reference counting so that
copy constructors and assignment incur almost no cost. The cost of
actually copying an image (if necessary) is done just before
modification and this copy is managed automatically by Magick++.
De-referenced copies are automatically deleted. The image objects
support value (rather than pointer) semantics so it is trivial to
support multiple generations of an image in memory at one time.
%description doc
HTML documentation for ImageMagick library and scene examples.
%description %{config_spec}-upstream
ImageMagick configuration as supplied by upstream. It does not
provide any security restrictions. ImageMagick will be vulnerable
for example by ImageTragick or PS/PDF coder issues. It should
be used in trusted environment. Version or maintenance updates
will not overwrite user changes in system configuration.
%description %{config_spec}-SUSE
ImageMagick configuration as provide by SUSE. It is more security
aware than config-upstream variant. It does disable some coders,
that are insecure by design to prevent user to use them
inadvertently. Configuration can be subject of change by future
version and maintenance updates and system changes will not be
preserved.
%changelog