Bug#578622: mplayer: FTBFS on kfreebsd-amd64 (vidix disable needed)

Petr Salinger Petr.Salinger at seznam.cz
Fri Apr 23 10:57:33 UTC 2010


Hi.

> That was helpful, fixed upstream.
>
> I once again reiterate my suggestion to pass problems to upstream first
> before attempting to work around them locally in the packaging
> infrastructure of a single distribution.

The expected workflow is a different one. Let the package does not build 
on a particular architecture. Iff it is detected by porter (me), porter 
tries to find the cause or provide workaround/fix/hints. They go to Debian 
BTS, package maintainer evaluates them and integrates into package and 
forward upstream. In some cases the package maintainer is upstream author 
or have commit rights into upstream repository, some upstream authors look 
after bug entries in some distribution.

Please take a look at [1], click on bottom on "Toggle all extra 
information". There is at about 16000 source packages in Debian. It cannot 
be managed to comunicate with every of thousands upstreams directly. 
Moreover the entry in BTS signals for other porters, that the problem is 
known and its state.

[1] http://bugs.debian.org/cgi-bin/pkgreport.cgi?tag=kfreebsd;users=debian-bsd@lists.debian.org

The build for mplayer from current SVN snapshot, without any flags passed 
to configure on kfreebsd-amd64:

cc ..  -c -o libvo/vo_dfbmga.o 
libvo/vo_dfbmga.c
libvo/vo_dfbmga.c: In function 'get_image':
libvo/vo_dfbmga.c:1352: warning: cast to pointer from integer of different 
size
libvo/vo_dfbmga.c: In function 'draw_image':
libvo/vo_dfbmga.c:1369: warning: cast from pointer to integer of different 
size
cc -MD -MP -Wstrict-prototypes -Wmissing-prototypes -Wundef 
-Wdisabled-optimization -Wno-pointer-sign -Wdeclaration-after-statement 
-std=gnu99 -Wall -Wno-switch -Wpointer-arith -Wredundant-decls -O4 
-march=native -mtune=native -pipe -ffast-math -fomit-frame-pointer 
-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE 
-Ilibdvdread4 -I.  -I/usr/local/include -D_THREAD_SAFE 
-I/usr/include/directfb  -I/usr/include/kde/artsc -pthread 
-I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include   -D_REENTRANT 
-I/usr/include/freetype2    -c -o libvo/vo_directfb2.o 
libvo/vo_directfb2.c
Glibvo/vo_directfb2.c:40:22: error: linux/kd.h: No such file or directory
make: *** [libvo/vo_directfb2.o] Error 1


It is  needed to pass "--disable-directfb" to finish build.

When I do this:

--- libvo/vo_directfb2.c~       2010-04-23 06:15:06.000000000 +0200
+++ libvo/vo_directfb2.c        2010-04-23 10:24:06.000000000 +0200
@@ -34,11 +34,7 @@
  #include <stdlib.h>
  #include <string.h>

-#ifdef __linux__
  #include <sys/kd.h>
-#else
-#include <linux/kd.h>
-#endif

  #include "config.h"
  #include "video_out.h"


The build ends with:

cc -MD -MP -Wstrict-prototypes -Wmissing-prototypes -Wundef 
-Wdisabled-optimization -Wno-pointer-sign -Wdeclaration-after-statement 
-std=gnu99 -Wall -Wno-switch -Wpointer-arith -Wredundant-decls -O4 
-march=native -mtune=native -pipe -ffast-math -fomit-frame-pointer 
-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE 
-Ilibdvdread4 -I.  -I/usr/local/include -D_THREAD_SAFE 
-I/usr/include/directfb  -I/usr/include/kde/artsc -pthread 
-I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include   -D_REENTRANT 
-I/usr/include/freetype2    -c -o libvo/vo_directfb2.o 
libvo/vo_directfb2.c
In file included from libvo/vo_directfb2.c:40:
libvo/video_out.h:272: error: redefinition of 'struct keymap'
make: *** [libvo/vo_directfb2.o] Error 1


There is already "struct keymap" defined in system header
http://www.freebsd.org/cgi/cvsweb.cgi/src/sys/sys/kbio.h

Would be possible to use a different name in
<libvo/video_out.h>, i.e. "struct vo_keymap" ?

I should probably note that GNU/kFreeBSD uses same kernel as FreeBSD,
but libc/gcc/binutils same as Linux.

Petr





More information about the pkg-multimedia-maintainers mailing list