diff options
author | 2024-11-23 17:42:43 +0000 | |
---|---|---|
committer | 2024-11-23 17:43:28 +0000 | |
commit | a5d24a109bf52c23c565f26d795efdeaf010978c (patch) | |
tree | 5408ea9a9b18e5efdacfae19cd8aef34c2a63cb1 /media-gfx | |
parent | profiles: Mask Qt5 packages without revdeps (diff) | |
download | gentoo-a5d24a109bf52c23c565f26d795efdeaf010978c.tar.gz gentoo-a5d24a109bf52c23c565f26d795efdeaf010978c.tar.bz2 gentoo-a5d24a109bf52c23c565f26d795efdeaf010978c.zip |
media-gfx/xloadimage: fix modern C issue
* Fix sed delimiter for CFLAGS
* Fix modern C issue (thanks Stephane Bakhos)
Closes: https://bugs.gentoo.org/710428
Closes: https://bugs.gentoo.org/920772
Thanks-to: Stephane Bakhos <nuitari@nuitari.net>
Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'media-gfx')
-rw-r--r-- | media-gfx/xloadimage/files/xloadimage-4.1-c99.patch | 15 | ||||
-rw-r--r-- | media-gfx/xloadimage/xloadimage-4.1-r17.ebuild | 96 |
2 files changed, 111 insertions, 0 deletions
diff --git a/media-gfx/xloadimage/files/xloadimage-4.1-c99.patch b/media-gfx/xloadimage/files/xloadimage-4.1-c99.patch new file mode 100644 index 000000000000..6da8b008aa86 --- /dev/null +++ b/media-gfx/xloadimage/files/xloadimage-4.1-c99.patch @@ -0,0 +1,15 @@ +https://bugs.gentoo.org/920772#c11 +Signed-off-by: Stephane Bakhos <nuitari@nuitari.net> +--- a/pdsuncomp.c ++++ b/pdsuncomp.c +@@ -421,8 +421,8 @@ + static char obuf[2048]; + char ibuf[2048]; + int left; +- int in_length; +- static int out_length= 2048, out_ptr= 0; ++ long int in_length; ++ static long int out_length= 2048, out_ptr= 0; + + if (Decompressing) { + left= size; diff --git a/media-gfx/xloadimage/xloadimage-4.1-r17.ebuild b/media-gfx/xloadimage/xloadimage-4.1-r17.ebuild new file mode 100644 index 000000000000..17ba67ea90d1 --- /dev/null +++ b/media-gfx/xloadimage/xloadimage-4.1-r17.ebuild @@ -0,0 +1,96 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit autotools flag-o-matic toolchain-funcs + +DESCRIPTION="Utility to view many different types of images under X11" +HOMEPAGE="https://sioseis.ucsd.edu/xloadimage.html https://tracker.debian.org/pkg/xloadimage" +SRC_URI=" + ftp://ftp.x.org/R5contrib/${P/-/.}.tar.gz + mirror://gentoo/${P}-gentoo-r1.diff.bz2 + https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}-fix-build-for-clang16.patch.xz +" +S="${WORKDIR}"/${P/-/.} + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~mips ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos" +IUSE="tiff jpeg png" + +RDEPEND="x11-libs/libX11 + tiff? ( media-libs/tiff:= ) + png? ( media-libs/libpng:= ) + jpeg? ( media-libs/libjpeg-turbo:= ) + !media-gfx/xli" +DEPEND="${RDEPEND}" + +PATCHES=( + "${WORKDIR}"/${P}-gentoo-r1.diff + "${FILESDIR}"/${P}-zio-shell-meta-char.diff + "${FILESDIR}"/${P}-endif.patch + # Do not define errno extern, but rather include errno.h + # <azarah@gentoo.org> (1 Jan 2003) + "${FILESDIR}"/${P}-include-errno_h.patch + "${FILESDIR}"/xloadimage-gentoo.patch + "${FILESDIR}"/${P}-unaligned-access.patch + "${FILESDIR}"/${P}-ldflags_and_exit.patch + "${FILESDIR}"/${P}-libpng15.patch + "${WORKDIR}"/${P}-fix-build-for-clang16.patch + # One of the previous patches screws up a bracket... + "${FILESDIR}"/${P}-bracket.patch + "${FILESDIR}"/${P}-fix-incomp-function-pointer-types.patch + "${FILESDIR}"/${P}-c99.patch +) + +src_prepare() { + default + + sed -i -e "s|OPT_FLAGS=|OPT_FLAGS=$CFLAGS|" Make.conf || die + sed -i -e "s:^#include <varargs.h>:#include <stdarg.h>:" rlelib.c || die + # qa-sed sees no-op on the next sed on non-gentoo-prefix systems, + # but that is alright + sed -i -e "/^DEFS = /s:/etc:${EPREFIX}/etc:" Makefile.in || die + sed -i \ + -e 's:png_set_gray_1_2_4_to_8:png_set_expand_gray_1_2_4_to_8:' \ + png.c || die + + eautoreconf +} + +src_configure() { + append-cflags -std=gnu17 + + # Set TIFFHeader to TIFFHeaderCommon wrt #319383 + has_version '>=media-libs/tiff-4.0.0_pre' && \ + append-flags -DTIFFHeader=TIFFHeaderCommon + + tc-export CC + econf $(use_with jpeg) \ + $(use_with png) \ + $(use_with tiff) +} + +src_compile() { + emake SYSPATHFILE="${EPREFIX}"/etc/X11/Xloadimage +} + +src_install() { + dobin xloadimage uufilter + + dosym xloadimage /usr/bin/xsetbg + dosym xloadimage /usr/bin/xview + + insinto /etc/X11 + doins xloadimagerc + + newman xloadimage.man xloadimage.1 + newman uufilter.man uufilter.1 + + echo ".so man1/xloadimage.1" > "${T}"/xsetbg.1 || die + doman "${T}"/xsetbg.1 + newman "${T}"/xsetbg.1 xview.1 + + dodoc README +} |