summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSam James <sam@gentoo.org>2024-11-24 23:12:01 +0000
committerSam James <sam@gentoo.org>2024-11-24 23:15:16 +0000
commitf6da4e1cd14721a2d60f53374b7636806831c402 (patch)
treee5228de00940654a1d6c55d9f7e79be51b20eed1 /media-video
parentmedia-libs/xine-lib: build w/ -std=gnu17 (diff)
downloadgentoo-f6da4e1cd14721a2d60f53374b7636806831c402.tar.gz
gentoo-f6da4e1cd14721a2d60f53374b7636806831c402.tar.bz2
gentoo-f6da4e1cd14721a2d60f53374b7636806831c402.zip
media-video/xine-ui: add 0.99.14
Old codebase so -std=gnu17. Closes: https://bugs.gentoo.org/944213 Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'media-video')
-rw-r--r--media-video/xine-ui/Manifest1
-rw-r--r--media-video/xine-ui/files/xine-ui-0.99.14-configure-c99.patch75
-rw-r--r--media-video/xine-ui/xine-ui-0.99.14.ebuild92
3 files changed, 168 insertions, 0 deletions
diff --git a/media-video/xine-ui/Manifest b/media-video/xine-ui/Manifest
index da5c7493057a..9bbd192704bf 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 000000000000..79ee61544047
--- /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 <stdlib.h> for the exit function, and <string.h> 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 <stdlib.h>
+ #include <sys/types.h>
+ #include <sys/ipc.h>
+ #include <sys/shm.h>
+--- a/m4/aa.m4
++++ b/m4/aa.m4
+@@ -52,6 +52,7 @@
+ #include <stdio.h>
+ #include <stdlib.h>
+ #include <aalib.h>
++#include <string.h>
+
+ 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 <unistd.h>
++AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <time.h>
++ #include <unistd.h>
+ #include <sys/time.h>]],
+ [[#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 000000000000..c7dccde4efc3
--- /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
+}