Files
packages/multimedia/imagemagick/Makefile
T
Alexandru Ardelean ad6f76e309 imagemagick: update to 7.1.2-21
Security fixes (18 GHSAs addressed between 7.1.2-1 and 7.1.2-21):
- Fix stack buffer overflow in MagnifyImage (GHSA-rqq8-jh93-f4vg, high)
- Fix heap buffer overflow in WaveletDenoiseImage (GHSA-5ggv-92r5-cp4p)
- Fix uninitialized pointer dereference in JBIG decoder (GHSA-wj8w-pjxf-9g4f, high)
- Fix heap buffer over-write in PNG encoder with large profiles (GHSA-qmw5-2p58-xvrc)
- Fix heap buffer overflow in UHDR encoder (GHSA-h95r-c8c7-mrwx)
- Fix stack buffer overflow in sixel encoder (GHSA-49hx-7656-jpg3)
- Fix heap-buffer-overflow in NewXMLTree XML parsing (GHSA-gc62-2v5p-qpmp)
- Fix heap buffer over-write on 32-bit systems in SFW decoder (GHSA-56jp-jfqg-f8f4)
- Add overflow checks to BMP/DIB, SGI, PS3, JXL, and sixel write paths

Bug fixes:
- Fix double-free in SVG gradientTransform/transform parsing
- Fix NULL pointer dereference in HEIC NCLX color profile allocation
- Fix heap over-read in BilateralBlurImage with even-dimension kernels
- Fix infinite loop when decoding JXL with -limit height/width
- Fix race condition using properties instead of global splaytree

Signed-off-by: Alexandru Ardelean <alex@shruggie.ro>
2026-05-06 21:05:36 +03:00

135 lines
3.5 KiB
Makefile

#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
include $(TOPDIR)/rules.mk
PKG_NAME:=imagemagick
PKG_VERSION:=7.1.2.21
PKG_RELEASE:=1
PKG_MAINTAINER:=Alexandru Ardelean <ardeleanalex@gmail.com>
_PKGVER:=$(basename $(PKG_VERSION))
_PKGREV:=$(_PKGVER)-$(subst .,,$(suffix $(PKG_VERSION)))
PKG_SOURCE:=ImageMagick-$(_PKGREV).tar.xz
PKG_SOURCE_URL:=https://imagemagick.org/archive
PKG_HASH:=56450bf5d65b63abb09568abb2c40b493ab913418f92df135ed661471da0eb0d
PKG_BUILD_DIR:=$(BUILD_DIR)/ImageMagick-$(_PKGREV)
PKG_FIXUP:=autoreconf
PKG_LICENSE:=Apache-2.0
PKG_LICENSE_FILES:=LICENSE
PKG_CPE_ID:=cpe:/a:imagemagick:imagemagick
PKG_BUILD_FLAGS:=no-mips16 lto
PKG_INSTALL:=1
include $(INCLUDE_DIR)/package.mk
define Package/imagemagick/Default
SECTION:=multimedia
CATEGORY:=Multimedia
TITLE:=Image manipulation tools
URL:=https://imagemagick.org/
endef
define Package/imagemagick
$(call Package/imagemagick/Default)
DEPENDS:=+libltdl +libpthread +zlib +libfreetype +libpng +libjpeg +libtiff +libzip
endef
define Package/imagemagick/description
ImageMagick is a free and open-source software suite for displaying,
converting, and editing raster image and vector image files.
NOTE: this package may not be suitable for many embedded devices because
of its large size. Consider using extroot or alternatively consider
graphicsmagick which is smaller but similar in functionality.
endef
define Package/imagemagick/conffiles
/etc/ImageMagick-7/colors.xml
/etc/ImageMagick-7/delegates.xml
/etc/ImageMagick-7/log.xml
/etc/ImageMagick-7/mime.xml
/etc/ImageMagick-7/policy.xml
/etc/ImageMagick-7/quantization-table.xml
/etc/ImageMagick-7/thresholds.xml
/etc/ImageMagick-7/type-apple.xml
/etc/ImageMagick-7/type-dejavu.xml
/etc/ImageMagick-7/type-ghostscript.xml
/etc/ImageMagick-7/type-urw-base35-type1.xml
/etc/ImageMagick-7/type-urw-base35.xml
/etc/ImageMagick-7/type-windows.xml
/etc/ImageMagick-7/type.xml
endef
CONFIGURE_ARGS += \
--disable-cipher \
--disable-docs \
--disable-hdri \
--disable-static \
--enable-dependency-tracking \
--with-modules \
--with-quantum-depth=8 \
--without-bzlib \
--without-djvu \
--without-fontconfig \
--without-gvc \
--without-heic \
--without-jbig \
--without-lcms \
--without-lqr \
--without-lzma \
--without-magick-plus-plus \
--without-openexr \
--without-openjp2 \
--without-pango \
--without-raqm \
--without-raw \
--without-webp \
--without-wmf \
--without-x \
--without-xml \
--without-zstd
## Avoid linking with libstdcpp
TARGET_LDFLAGS+= -Wl,--as-needed
define Build/InstallDev
$(INSTALL_DIR) $(1)/usr/include
$(CP) \
$(PKG_INSTALL_DIR)/usr/include/* \
$(1)/usr/include/
$(INSTALL_DIR) $(1)/usr/lib
$(CP) \
$(PKG_INSTALL_DIR)/usr/lib/*.so* \
$(1)/usr/lib/
$(INSTALL_DIR) $(1)/usr/lib/pkgconfig
$(INSTALL_DATA) \
$(PKG_INSTALL_DIR)/usr/lib/pkgconfig/* \
$(1)/usr/lib/pkgconfig/
$(INSTALL_DIR) $(1)/usr/bin
$(INSTALL_BIN) \
$(PKG_INSTALL_DIR)/usr/bin/*-config \
$(1)/usr/bin/
$(SED) 's|prefix=/usr|prefix=$(STAGING_DIR)/usr|' \
$(1)/usr/bin/*-config
endef
IMlibdir:=usr/lib/ImageMagick-$(_PKGVER)
define Package/imagemagick/install
$(INSTALL_DIR) $(1)/etc $(1)/usr/bin $(1)/$(IMlibdir)
$(CP) $(PKG_INSTALL_DIR)/usr/lib/*.so.* $(1)/usr/lib/
$(CP) $(PKG_INSTALL_DIR)/usr/bin/* $(1)/usr/bin/
$(RM) $(1)/usr/bin/*-config
$(CP) $(PKG_INSTALL_DIR)/etc/ImageMagick-* $(1)/etc/
$(CP) $(PKG_INSTALL_DIR)/$(IMlibdir)/* $(1)/$(IMlibdir)/
endef
$(eval $(call BuildPackage,imagemagick))