diff --git a/media-video/xine-ui/Manifest b/media-video/xine-ui/Manifest index da5c7493057a8..9bbd192704bf0 100644 --- a/media-video/xine-ui/Manifest +++ b/media-video/xine-ui/Manifest @@ -1 +1,2 @@ DIST xine-ui-0.99.13.tar.xz 2156892 BLAKE2B edb4cb082faeba5f9f64ea06f6561d471fddfc7672dd92ec1a0a99b5c8eb10f46c15df2044fa2a4eaafdeab1fa56d990afa443f912602fdc676d1e34e3cf6c84 SHA512 a0802d767a805c462f7ae05fa5c4860af5c281ffa74c70a6c2c8a3ecbf8060e6f3f40fed215e27a823985c7d5c3484715cbbe5e4bf43655353f59fa2230b41e7 +DIST xine-ui-0.99.14.tar.xz 2214740 BLAKE2B 8785215bd3569dd2f056cb87c16233103bf89d50a188f4e47d2bac07366b58e5c73016097a6d87e8e097d56e1216b639704a0c5a55877c9304151f9caabf3d15 SHA512 e925e2f1d02c4eac4615f59c99dd95f1627617f2abb644c521cf015f795c66bf56386e7d414b528c1cf91bbdab53f46999104e992aecebbdcb62c230e6d989e7 diff --git a/media-video/xine-ui/files/xine-ui-0.99.14-configure-c99.patch b/media-video/xine-ui/files/xine-ui-0.99.14-configure-c99.patch new file mode 100644 index 0000000000000..79ee61544047e --- /dev/null +++ b/media-video/xine-ui/files/xine-ui-0.99.14-configure-c99.patch @@ -0,0 +1,75 @@ +https://sourceforge.net/p/xine/tickets/22/ +https://bugs.gentoo.org/899872 + +Fix C compatibility issues in the configure script + +This is necessary to avoid incorrectly failing probes due to expected +compiler errors. + +Include for the exit function, and for the +strdup function. + +Use fake prototypes to avoid implicit function declarations in the +xine_* function probes. + +--- a/configure.ac ++++ b/configure.ac +@@ -198,6 +198,7 @@ + if test "$ac_cv_header_sys_shm_h" = "yes"; then + AC_MSG_CHECKING(whether shmctl IPC_RMID allowes subsequent attaches) + AC_TRY_RUN([ ++ #include + #include + #include + #include +--- a/m4/aa.m4 ++++ b/m4/aa.m4 +@@ -52,6 +52,7 @@ + #include + #include + #include ++#include + + int main () { + int major, minor; +--- a/m4/_xine.m4 ++++ b/m4/_xine.m4 +@@ -218,7 +218,7 @@ + CFLAGS="$CFLAGS $XINE_CFLAGS" + LIBS="$LIBS $XINE_LIBS" + AC_LINK_IFELSE( +- [AC_LANG_PROGRAM([],[xine_open_cloexec();])], ++ [AC_LANG_PROGRAM([char xine_open_cloexec(void);],[xine_open_cloexec();])], + [AC_DEFINE([HAVE_XINE_OPEN_CLOEXEC], [1], [Define if xine-lib supports xine_open_cloexec]) + AC_MSG_RESULT([yes])], + [AC_MSG_RESULT([no])]) +@@ -234,7 +234,7 @@ + CFLAGS="$CFLAGS $XINE_CFLAGS" + LIBS="$LIBS $XINE_LIBS" + AC_LINK_IFELSE( +- [AC_LANG_PROGRAM([],[xine_socket_cloexec();])], ++ [AC_LANG_PROGRAM([char xine_socket_cloexec(void);],[xine_socket_cloexec();])], + [AC_DEFINE([HAVE_XINE_SOCKET_CLOEXEC], [1], [Define if xine-lib supports xine_socket_cloexec]) + AC_MSG_RESULT([yes])], + [AC_MSG_RESULT([no])]) +@@ -250,7 +250,7 @@ + CFLAGS="$CFLAGS $XINE_CFLAGS" + LIBS="$LIBS $XINE_LIBS" + AC_LINK_IFELSE( +- [AC_LANG_PROGRAM([ ++ [AC_LANG_PROGRAM([char xine_list_next_value(void); + ],[ + xine_list_next_value (); + ])], +--- a/configure.ac ++++ b/configure.ac +@@ -641,7 +641,8 @@ dnl + dnl Check for clock_gettime() in librt + dnl + AC_MSG_CHECKING(whether librt is needed) +-AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include ++AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include ++ #include + #include ]], + [[#if _POSIX_TIMERS > 0 + struct timespec ts; diff --git a/media-video/xine-ui/xine-ui-0.99.14.ebuild b/media-video/xine-ui/xine-ui-0.99.14.ebuild new file mode 100644 index 0000000000000..c7dccde4efc3b --- /dev/null +++ b/media-video/xine-ui/xine-ui-0.99.14.ebuild @@ -0,0 +1,92 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit autotools flag-o-matic xdg + +DESCRIPTION="Xine movie player" +HOMEPAGE="https://xine-project.org/home" +SRC_URI="https://downloads.sourceforge.net/xine/${P}.tar.xz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~x86" +IUSE="aalib curl debug libcaca lirc nls readline vdr X xinerama" + +RDEPEND=" + || ( app-arch/tar app-arch/libarchive ) + media-libs/libpng:0= + >=media-libs/xine-lib-1.2:=[aalib?,libcaca?] + media-libs/libjpeg-turbo:= + aalib? ( media-libs/aalib:= ) + curl? ( >=net-misc/curl-7.10.2:= ) + libcaca? ( media-libs/libcaca:= ) + lirc? ( app-misc/lirc:= ) + nls? ( virtual/libintl ) + readline? ( >=sys-libs/readline-6.2:= ) + X? ( + x11-libs/libICE:= + x11-libs/libSM:= + x11-libs/libX11:= + x11-libs/libXext:= + x11-libs/libXft:= + x11-libs/libXrender:= + x11-libs/libXScrnSaver:= + x11-libs/libXtst:= + x11-libs/libXv:= + x11-libs/libXxf86vm:= + xinerama? ( x11-libs/libXinerama:= ) + ) +" +DEPEND="${RDEPEND} + virtual/pkgconfig + nls? ( >=sys-devel/gettext-0.18.3 ) + X? ( + x11-base/xorg-proto + x11-libs/libXt + ) +" + +PATCHES=( + "${FILESDIR}"/${PN}-0.99.10-desktop.patch + "${FILESDIR}"/${PN}-0.99.14-configure-c99.patch +) + +src_prepare() { + default + eautoreconf + rm misc/xine-bugreport || die +} + +src_configure() { + # bug #944213 + append-cflags -std=gnu17 + + econf \ + $(use_enable nls) \ + $(use_enable xinerama) \ + $(use_enable lirc) \ + $(use_enable vdr vdr-keys) \ + --disable-nvtvsimple \ + $(use_enable debug) \ + $(use_with X x) \ + $(use_with readline) \ + $(use_with curl) \ + $(use_with aalib) \ + $(use_with libcaca caca) \ + --without-fb +} + +src_install() { + # xine-list apparently may cause sandbox violation, bug 654394 + addpredict /dev/dri + + emake \ + DESTDIR="${D}" \ + docdir="/usr/share/doc/${PF}" \ + docsdir="/usr/share/doc/${PF}" \ + install + + einstalldocs +}