[MPlayer-dev-eng] [MPlayer-users] Build regression on FreeBSD

Alexander Strasser eclipse7 at gmx.net
Mon Dec 21 22:20:40 CET 2015


On 2015-12-21 21:43 +0100, Roberto Togni wrote:
> On Sun, 20 Dec 2015 22:05:01 +0100
> Alexander Strasser <eclipse7 at gmx.net> wrote:
> > AFAICT there are multiple problems at work, that make a
> > quick solution rather involved or hackish. That's why I
> > have Cc'ed MPlayer development mailing list.
> > 
> > On 2015-12-19 20:21 +0100, Thomas Zander wrote:
> > > porting an up-to-date snapshot to FreeBSD I noticed two build
> > > regressions and want to kindly ask for resolving those upstream:
> > > 
> > > 1) Makefile (at root dir)
> > >    codec-cfg.c now includes <vdpau/vdpau.h>
> > >    On FreeBSD this file ends up in LOCALBASE (by default
> > >    /usr/local/include) which is not included in the default compiler
> > >    search path, so in its build target
> > >    codec-cfg$(EXESUF) .... the compile command
> > >    $(HOST_CC) $(HOSTCFLAGS) -o $@ $<
> > >    is not sufficient. The include path for localbase needs to be added.
> > 
> >   I guess r37454 introduced this problem, by including vdpau.h in
> > our img_format.h header. It cannot be reverted because that would
> > probably break the build with future FFmpeg versions.
> > 
> >   The problem is if we want to use external stuff, which cannot be
> > forward declared, in img_format.h we need to add additional flags
> > to HOSTCFLAGS as well.
> > 
> >   Furthermore it is interesing that vdpau gets detected at all on
> > your system. I suspect this is because of manual addition to CFLAGS
> > or because of modification by previous configure tests.
> > 
> >   I might be missing a few things, but all in all I do not see why
> > we need the structure vdpau_frame_data in codec-cfg.c source. So
> > maybe the structure should be defined in a different header?
> > 
> >   All in all I see no really easy way to set HOSTCFLAGS correctly.
> > Additionally I am not sure if the work is justified, because if
> > I am not mistaken above it is not needed in codec-cfg.
> > 
> Do you see the failure only in codec-cfg.c or also in the other files
> including vdpau.h (vd_ffmpeg and vo_vdpau)?
> 
> If it's only codec-cgg.c, the easiest way is to move the structure
> somewhere else; I guess it was put there only because img_format.h is
> included both in vd_ffmpeg and vo_vdpau.
> The struct has always been there, but it was not using any field
> requiring external vdpau headers before.

  If I am not mistaken this is the changeset from Thomas:

  http://svnweb.freebsd.org/ports?view=revision&revision=404026

  This is the change to the Makefile patch which extends HOSTCFLAGS only:

  http://svnweb.freebsd.org/ports/head/multimedia/mplayer/files/patch-Makefile?r1=404026&r2=404025&pathrev=404026

  There are more changes to configure and MPlayer's Makefile
in those patch files, I did not check all of them. Maybe Thomas
can clarify?

> If you can confirm that the problem is only with codec-cfg.c I'll just
> move the struct and the include; best candidates are vo_out.h, vd.h or a
> dedicated header.

  I would favour this solutions too.


  Alexander


More information about the MPlayer-dev-eng mailing list