media-libs/imlib2: add v1.12.4

- adds libavif loader support (new feature added this release)
- adds tools useflag to enable/disable the demo tools (new
  option added this release)
- enables zlib loader by default since zlib will be pulled in
  via the default +tools anyways
- add missing libxcb dependency when shm is enabled:
  b9555030da/configure.ac (L190)

support for y4m loader cannot be added without first fixing:
https://git.enlightenment.org/old/legacy-imlib2/issues/31

Signed-off-by: NRK <nrk@disroot.org>
Signed-off-by: Yixun Lan <dlan@gentoo.org>
This commit is contained in:
NRK
2025-03-07 15:58:06 +00:00
committed by Yixun Lan
parent c464dd0cff
commit 7aeb3f084f
5 changed files with 118 additions and 0 deletions

View File

@@ -1,3 +1,4 @@
DIST imlib2-1.11.0.tar.xz 820368 BLAKE2B 2e1dec04c44ce14429910c0dd6b7b5173bc70e8968912c9c25e8b47d38fdfd6753c29de2e5a2ae0b0e6498550e207989ae927682b09032b637baf759744dfbec SHA512 2727b217ae18e1015591f2587f885a5a8d59471d6051f1aefb761329fd0fc979163e228154b2bff8728a3a2acc28437f189989d24a4d6e37bfc6f69445bd47e7
DIST imlib2-1.12.2.tar.xz 831812 BLAKE2B 6b1bad56a70c3beb91ef85d6b7a40c80d0f3d2dc8b87bb9d37f2073ab0154860230671c3e78bc87051e5f25fc5871a036cb51dcc24b6734dcd2c322f406796b3 SHA512 3bffb8f0f6b3ec73a81f1d0c6ef3a3443425677cd8a1950422f102b67769c06df54128b21f84bd6c7880120cc5ec6f30d2ab134b3c001ad77f2d39efd749a5b7
DIST imlib2-1.12.3.tar.xz 833128 BLAKE2B 3c02b103bf65ed54319b30d3112b8c4a1b8f41333f2a8848fc44bc1380e1e5dbe3a21e311685d80f77f08815bb11a2a1073beb1683df852919f2c6003535fcaf SHA512 79feea73fb67508ffdce52f8430c2c887b06d8bcb70f6e3bc551c86d521ebf61fc1eff10994b69def4d7a237873f107066aefa367e05b5f89b5d675751d9314f
DIST imlib2-1.12.4.tar.xz 840092 BLAKE2B 016521328d519d32950d371695aecdae562e73fcfccf9f037dedeb98641ea66183a53ba6c9cab2a45236222b55c4fcbd5df28d5960b8f51dfb15a356ef53fe75 SHA512 7eaf971a4a949697e04af838ea26f366e0f82faaa5d42ad748da979baef12ea3b05bc2e4eabf8963767a2313b400341f625ed740de457ccaa0aa038fdc2135b9

View File

@@ -0,0 +1,107 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
# Must be bumped with media-plugins/imlib2_loaders!
inherit multilib-minimal toolchain-funcs
DESCRIPTION="Version 2 of an advanced replacement library for libraries like libXpm"
HOMEPAGE="https://www.enlightenment.org/
https://sourceforge.net/projects/enlightenment/files/imlib2-src/"
SRC_URI="https://downloads.sourceforge.net/enlightenment/${P}.tar.xz"
LICENSE="BSD"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
IUSE="+X apidoc avif bzip2 cpu_flags_x86_mmx cpu_flags_x86_sse2 debug
eps +filters +gif +jpeg jpeg2k jpegxl heif lzma mp3 packing +png
raw +shm static-libs svg +text +tools +tiff +webp +zlib"
REQUIRED_USE="shm? ( X )"
RDEPEND="
X? (
x11-libs/libX11[${MULTILIB_USEDEP}]
x11-libs/libXext[${MULTILIB_USEDEP}]
)
shm? ( x11-libs/libxcb[${MULTILIB_USEDEP}] )
avif? ( media-libs/libavif:=[${MULTILIB_USEDEP}] )
bzip2? ( app-arch/bzip2[${MULTILIB_USEDEP}] )
eps? ( app-text/libspectre )
gif? ( media-libs/giflib:=[${MULTILIB_USEDEP}] )
heif? ( media-libs/libheif:=[${MULTILIB_USEDEP}] )
jpeg2k? ( media-libs/openjpeg:=[${MULTILIB_USEDEP}] )
jpeg? ( media-libs/libjpeg-turbo:=[${MULTILIB_USEDEP}] )
jpegxl? ( media-libs/libjxl:=[${MULTILIB_USEDEP}] )
lzma? ( app-arch/xz-utils[${MULTILIB_USEDEP}] )
text? ( media-libs/freetype:2[${MULTILIB_USEDEP}] )
mp3? ( media-libs/libid3tag:=[${MULTILIB_USEDEP}] )
png? ( >=media-libs/libpng-1.6.10:0=[${MULTILIB_USEDEP}] )
raw? ( media-libs/libraw:=[${MULTILIB_USEDEP}] )
svg? ( >=gnome-base/librsvg-2.46.0:=[${MULTILIB_USEDEP}] )
tools? ( sys-libs/zlib[${MULTILIB_USEDEP}] )
tiff? ( >=media-libs/tiff-4.0.4:=[${MULTILIB_USEDEP}] )
webp? ( media-libs/libwebp:=[${MULTILIB_USEDEP}] )
zlib? ( sys-libs/zlib[${MULTILIB_USEDEP}] )
!<media-plugins/imlib2_loaders-1.10.0
"
DEPEND="${RDEPEND}
X? ( x11-base/xorg-proto )"
BDEPEND="
virtual/pkgconfig
apidoc? ( app-text/doxygen )
"
# default DOCS will haul README.in we do not need
DOCS=( AUTHORS ChangeLog README TODO )
multilib_src_configure() {
local myeconfargs=(
$(use_with X x)
$(multilib_native_use_enable apidoc doc-build)
$(use_with avif)
$(use_with bzip2 bz2)
$(use_enable debug)
$(multilib_native_use_with eps ps)
$(use_enable filters)
$(use_with gif)
$(use_with heif)
$(use_with jpeg)
$(use_with jpeg2k j2k)
$(use_with jpegxl jxl)
$(use_with lzma)
$(use_with mp3 id3)
$(use_enable packing)
$(use_with png)
$(use_with raw)
$(use_with shm x-shm-fd)
$(use_enable static-libs static)
$(use_with svg)
$(use_enable text)
$(use_enable tools progs)
$(use_with tiff)
$(use_with webp)
$(use_with zlib)
# BUG: https://git.enlightenment.org/old/legacy-imlib2/issues/31
--without-y4m
)
# imlib2 has different configure options for x86/amd64 assembly
if [[ $(tc-arch) == amd64 ]]; then
myeconfargs+=( $(use_enable cpu_flags_x86_sse2 amd64) --disable-mmx )
else
myeconfargs+=( --disable-amd64 $(use_enable cpu_flags_x86_mmx mmx) )
fi
ECONF_SOURCE="${S}" \
econf "${myeconfargs[@]}"
}
multilib_src_install() {
V=1 emake install DESTDIR="${D}"
find "${D}" -name '*.la' -delete || die
multilib_is_native_abi && use apidoc &&
export HTML_DOCS=( "${BUILD_DIR}/doc/html/"* )
}

View File

@@ -16,6 +16,7 @@
<use>
<flag name="X">Use the X window system</flag>
<flag name="apidoc">Provide doxygen generated API docs</flag>
<flag name="avif">Avif image loader support via <pkg>media-libs/libavif</pkg></flag>
<flag name="bzip2">Bzip2 loader support</flag>
<flag name="filters">Build filter functions (blur, sharpen, etc)</flag>
<flag name="heif">Heif and Avif image loader support</flag>
@@ -23,6 +24,7 @@
<flag name="mp3">ID3 loader support</flag>
<flag name="packing">Enable structure packing. This will reduce memory footprint at the cost of unaligned memory access</flag>
<flag name="shm">Use MIT shared memory support for X image transfer</flag>
<flag name="tools">Build and install the demo tools</flag>
<flag name="text">Build text (TrueType font) functions</flag>
<flag name="zlib">Zlib loader support</flag>
</use>

View File

@@ -1,6 +1,10 @@
# Copyright 2023-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# NRK <nrk@disroot.org> (2025-03-17)
# media-libs/libavif is not keyworded
media-libs/imlib2 avif
# Matt Jolly <kangie@gentoo.org> (2025-01-29)
# Needs dev-lang/go which is not keyworded here
x11-wm/fvwm3 go

View File

@@ -1,6 +1,10 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# NRK <nrk@disroot.org> (2025-03-17)
# media-libs/libavif is not keyworded
media-libs/imlib2 avif
# Sam James <sam@gentoo.org> (2025-03-17)
# dev-util/babeltrace is not keyworded here
dev-debug/gdb babeltrace