Sun Apr 12 11:09:05 2020 UTC ()
xine-lib: Don't try to reimplement memcpy. Should fix clang build.


(nia)
diff -r1.159 -r1.160 pkgsrc/multimedia/xine-lib/Makefile
diff -r1.111 -r1.112 pkgsrc/multimedia/xine-lib/distinfo
diff -r0 -r1.1 pkgsrc/multimedia/xine-lib/patches/patch-include_xine_xineutils.h

cvs diff -r1.159 -r1.160 pkgsrc/multimedia/xine-lib/Makefile (expand / switch to unified diff)

--- pkgsrc/multimedia/xine-lib/Makefile 2020/04/02 17:46:40 1.159
+++ pkgsrc/multimedia/xine-lib/Makefile 2020/04/12 11:09:05 1.160
@@ -1,16 +1,16 @@ @@ -1,16 +1,16 @@
1# $NetBSD: Makefile,v 1.159 2020/04/02 17:46:40 nia Exp $ 1# $NetBSD: Makefile,v 1.160 2020/04/12 11:09:05 nia Exp $
2 2
3PKGREVISION= 1 3PKGREVISION= 2
4 4
5.include "Makefile.common" 5.include "Makefile.common"
6 6
7COMMENT= Multimedia player library 7COMMENT= Multimedia player library
8LICENSE= gnu-lgpl-v2 8LICENSE= gnu-lgpl-v2
9 9
10CONFLICTS+= xine-xcb-[0-9]* 10CONFLICTS+= xine-xcb-[0-9]*
11 11
12CONFIGURE_ARGS+= --disable-v4l 12CONFIGURE_ARGS+= --disable-v4l
13CONFIGURE_ARGS+= --disable-v4l2 13CONFIGURE_ARGS+= --disable-v4l2
14CONFIGURE_ARGS+= --disable-real-codecs 14CONFIGURE_ARGS+= --disable-real-codecs
15CONFIGURE_ARGS+= --disable-mlib 15CONFIGURE_ARGS+= --disable-mlib
16CONFIGURE_ARGS+= --disable-vaapi 16CONFIGURE_ARGS+= --disable-vaapi

cvs diff -r1.111 -r1.112 pkgsrc/multimedia/xine-lib/distinfo (expand / switch to unified diff)

--- pkgsrc/multimedia/xine-lib/distinfo 2020/04/02 15:52:46 1.111
+++ pkgsrc/multimedia/xine-lib/distinfo 2020/04/12 11:09:05 1.112
@@ -1,25 +1,26 @@ @@ -1,25 +1,26 @@
1$NetBSD: distinfo,v 1.111 2020/04/02 15:52:46 nia Exp $ 1$NetBSD: distinfo,v 1.112 2020/04/12 11:09:05 nia Exp $
2 2
3SHA1 (xine-lib-1.2.10.tar.xz) = 66fe7a7d372f74967df46834167f85f5c2d43ae7 3SHA1 (xine-lib-1.2.10.tar.xz) = 66fe7a7d372f74967df46834167f85f5c2d43ae7
4RMD160 (xine-lib-1.2.10.tar.xz) = 1dba24e9e6c4f21e766d9b696dd02f4e645f4c8c 4RMD160 (xine-lib-1.2.10.tar.xz) = 1dba24e9e6c4f21e766d9b696dd02f4e645f4c8c
5SHA512 (xine-lib-1.2.10.tar.xz) = 1cbe033da606d67a0a59f19968b2fe1cb46eaeb32c4b4aca7b91125b7230e15bd36d1e3e39e48e6eda56e556018f9f9bf84acb0012d3dd634306e7110fdc4c5f 5SHA512 (xine-lib-1.2.10.tar.xz) = 1cbe033da606d67a0a59f19968b2fe1cb46eaeb32c4b4aca7b91125b7230e15bd36d1e3e39e48e6eda56e556018f9f9bf84acb0012d3dd634306e7110fdc4c5f
6Size (xine-lib-1.2.10.tar.xz) = 5226116 bytes 6Size (xine-lib-1.2.10.tar.xz) = 5226116 bytes
7SHA1 (patch-ag) = ef924c08b4d1d0dbc48f619d69b608c9d0def9fe 7SHA1 (patch-ag) = ef924c08b4d1d0dbc48f619d69b608c9d0def9fe
8SHA1 (patch-cb) = 708ee946dd1708a40baef5ac193a46dc22bff8b5 8SHA1 (patch-cb) = 708ee946dd1708a40baef5ac193a46dc22bff8b5
9SHA1 (patch-contrib_libxdg-basedir_basedir.c) = 8dd88fd712853e58363148023be6ef0906486206 9SHA1 (patch-contrib_libxdg-basedir_basedir.c) = 8dd88fd712853e58363148023be6ef0906486206
10SHA1 (patch-fa) = 9312a3bab4ae8482a208948277f1d11fb7eaaf8c 10SHA1 (patch-fa) = 9312a3bab4ae8482a208948277f1d11fb7eaaf8c
11SHA1 (patch-include_xine_attributes.h) = e7cb5f50d95a2523e2de83250fe11a12f0126a7f 11SHA1 (patch-include_xine_attributes.h) = e7cb5f50d95a2523e2de83250fe11a12f0126a7f
12SHA1 (patch-include_xine_post.h) = 3ada327a7f171bdf680074b30f005099011a201c 12SHA1 (patch-include_xine_post.h) = 3ada327a7f171bdf680074b30f005099011a201c
 13SHA1 (patch-include_xine_xineutils.h) = a8e32954433fcbd035dfe1416623c3e22ac754c2
13SHA1 (patch-src-post-audio-stretch.c) = 6f950bcd47fdf68b691744dc105f59f821748ce1 14SHA1 (patch-src-post-audio-stretch.c) = 6f950bcd47fdf68b691744dc105f59f821748ce1
14SHA1 (patch-src-post-audio-upmix.c) = 70ca6babfa9a7add0ac70a6024fcff429e1bc49d 15SHA1 (patch-src-post-audio-upmix.c) = 70ca6babfa9a7add0ac70a6024fcff429e1bc49d
15SHA1 (patch-src-post-audio-upmix_mono.c) = 2c70ded10118cbeed5be3c948886f7311ddb7bbd 16SHA1 (patch-src-post-audio-upmix_mono.c) = 2c70ded10118cbeed5be3c948886f7311ddb7bbd
16SHA1 (patch-src-post-audio-volnorm.c) = b110542ae4c21762cf369a4cf2b6c66343c3b761 17SHA1 (patch-src-post-audio-volnorm.c) = b110542ae4c21762cf369a4cf2b6c66343c3b761
17SHA1 (patch-src-post-deinterlace-xine_plugin.c) = 996db1d9546bc2fcf5ca03d15befae3fdb9a6c00 18SHA1 (patch-src-post-deinterlace-xine_plugin.c) = 996db1d9546bc2fcf5ca03d15befae3fdb9a6c00
18SHA1 (patch-src-post-mosaico-mosaico.c) = 04f21603055b1e8e7490ba5d6e006ca5a9b683a3 19SHA1 (patch-src-post-mosaico-mosaico.c) = 04f21603055b1e8e7490ba5d6e006ca5a9b683a3
19SHA1 (patch-src-post-mosaico-switch.c) = ff46e13acfbcaf0167943b536b12cb95ec7591d4 20SHA1 (patch-src-post-mosaico-switch.c) = ff46e13acfbcaf0167943b536b12cb95ec7591d4
20SHA1 (patch-src-post-planar-boxblur.c) = 191ce5819fce39a247adaefe07e3302870c3d1c3 21SHA1 (patch-src-post-planar-boxblur.c) = 191ce5819fce39a247adaefe07e3302870c3d1c3
21SHA1 (patch-src-post-planar-denoise3d.c) = e140ff0b7867fd850099ff073f67201b4649dcad 22SHA1 (patch-src-post-planar-denoise3d.c) = e140ff0b7867fd850099ff073f67201b4649dcad
22SHA1 (patch-src-post-planar-eq.c) = 9ad80656f4a9c21651d889c3a5b5c709e5ecea83 23SHA1 (patch-src-post-planar-eq.c) = 9ad80656f4a9c21651d889c3a5b5c709e5ecea83
23SHA1 (patch-src-post-planar-eq2.c) = 7711ea2c3b8ede9adf9b54f7b95f4458ffed852b 24SHA1 (patch-src-post-planar-eq2.c) = 7711ea2c3b8ede9adf9b54f7b95f4458ffed852b
24SHA1 (patch-src-post-planar-expand.c) = 9d9ec1f5619f9a3d832bcace54d23011371f2067 25SHA1 (patch-src-post-planar-expand.c) = 9d9ec1f5619f9a3d832bcace54d23011371f2067
25SHA1 (patch-src-post-planar-noise.c) = db5ba28ae527995084ce3ad65c52867209d4b13f 26SHA1 (patch-src-post-planar-noise.c) = db5ba28ae527995084ce3ad65c52867209d4b13f

File Added: pkgsrc/multimedia/xine-lib/patches/patch-include_xine_xineutils.h
$NetBSD: patch-include_xine_xineutils.h,v 1.1 2020/04/12 11:09:05 nia Exp $

Don't reimplement memcpy. Actually not compatible with clang:

../../include/xine/xineutils.h:211:63: error: fields must have a constant size:
'variable length array in structure' extension will never be supported

--- include/xine/xineutils.h.orig	2019-12-13 20:47:50.000000000 +0000
+++ include/xine/xineutils.h
@@ -200,26 +200,6 @@ extern void *(* xine_fast_memcpy)(void *
 /* len (usually) < 500, but not a build time constant. */
 #define xine_small_memcpy(xsm_to,xsm_from,xsm_len) memcpy (xsm_to, xsm_from, xsm_len)
 
-#if (defined(__GNUC__) && (__GNUC__ >= 4)) || defined(__clang__)
-#  if defined(ARCH_X86)
-#    undef xine_small_memcpy
-static inline void *xine_small_memcpy (void *to, const void *from, size_t len) {
-  void *t2 = to;
-  size_t l2 = len;
-  __asm__ __volatile__ (
-    "cld\n\trep movsb"
-    : "=S" (from), "=D" (t2), "=c" (l2), "=m" (*(struct {char foo[len];} *)to)
-    : "0"  (from), "1"  (t2), "2"  (l2)
-    : "cc"
-  );
-  (void)from;
-  (void)t2;
-  (void)l2;
-  return to;
-}
-#  endif
-#endif
-
 /*
  * Debug stuff
  */