Re: [libav-devel] [PATCH] build: Fine-grained link-time dependency settings

2017-02-27 Thread Diego Biurrun
On Mon, Feb 27, 2017 at 03:54:11PM +0100, Diego Biurrun wrote:
> Previously, all link-time dependencies were added for all libraries,
> resulting in bogus link-time dependencies since not all dependencies
> are shared across libraries. Also, in some cases like libavutil, not
> all dependencies were taken into account, resulting in some cases of
> underlinking.
> 
> To address all this mess a machinery is added for tracking which
> dependency belongs to which library component and then leveraged
> to determine correct dependencies for all individual libraries.
> ---
> 
> Updated to match the change to "x86-asm" in the previous patch.

Sorry, ignore this, wrong hash passed to git-send-email..

Diego
___
libav-devel mailing list
libav-devel@libav.org
https://lists.libav.org/mailman/listinfo/libav-devel

Re: [libav-devel] [PATCH] build: Fine-grained link-time dependency settings

2016-12-21 Thread Diego Biurrun
On Tue, Dec 20, 2016 at 06:47:45PM +0100, wm4 wrote:
> On Tue, 20 Dec 2016 18:15:56 +0100
> "Diego Biurrun"  wrote:
> 
> > Previously, all link-time dependencies were added for all libraries,
> > resulting in bogus link-time dependencies since not all dependencies
> > are shared across libraries. Also, in some cases like libavutil, not
> > all dependencies were taken into account, resulting in some cases of
> > underlinking.
> > 
> > To address all this mess a machinery is added for tracking which
> > dependency belongs to which library component and then leveraged
> > to determine correct dependencies for all individual libraries.
> > ---
> 
> 
> >  h263_vaapi_hwaccel_deps="vaapi"
> > +h263_vaapi_hwaccel_extralibs="vaapi_extralibs"
> >  h263_vaapi_hwaccel_select="h263_decoder"
> >  h264_d3d11va_hwaccel_deps="d3d11va"
> > +h264_d3d11va_hwaccel_extralibs="d3d11va_extralibs"
> >  h264_d3d11va_hwaccel_select="h264_decoder"
> >  h264_dxva2_hwaccel_deps="dxva2"
> > +h264_dxva2_hwaccel_extralibs="dxva2_extralibs"
> >  h264_dxva2_hwaccel_select="h264_decoder"
> >  h264_mmal_hwaccel_deps="mmal"
> > +h264_mmal_hwaccel_extralibs="mmal_extralibs"
> >  h264_qsv_hwaccel_deps="libmfx"
> > +h264_qsv_hwaccel_extralibs="libmfx_extralibs"
> >  h264_vaapi_hwaccel_deps="vaapi"
> > +h264_vaapi_hwaccel_extralibs="vaapi_extralibs"
> >  h264_vaapi_hwaccel_select="h264_decoder"
> >  h264_vda_hwaccel_deps="vda"
> > +h264_vda_hwaccel_extralibs="vda_extralibs"
> >  h264_vda_hwaccel_select="h264_decoder"
> >  h264_vda_old_hwaccel_deps="vda"
> > +h264_vda_old_hwaccel_extralibs="vda_extralibs"
> >  h264_vda_old_hwaccel_select="h264_decoder"
> >  h264_vdpau_hwaccel_deps="vdpau"
> > +h264_vdpau_hwaccel_extralibs="vdpau_extralibs"
> >  h264_vdpau_hwaccel_select="h264_decoder"
> >  hevc_d3d11va_hwaccel_deps="d3d11va DXVA_PicParams_HEVC"
> > +hevc_d3d11va_hwaccel_extralibs="d3d11va_extralibs"
> >  hevc_d3d11va_hwaccel_select="hevc_decoder"
> >  hevc_dxva2_hwaccel_deps="dxva2 DXVA_PicParams_HEVC"
> > +hevc_dxva2_hwaccel_extralibs="dxva2_extralibs"
> >  hevc_dxva2_hwaccel_select="hevc_decoder"
> >  hevc_qsv_hwaccel_deps="libmfx"
> > +hevc_qsv_hwaccel_extralibs="libmfx_extralibs"
> >  hevc_vaapi_hwaccel_deps="vaapi VAPictureParameterBufferHEVC"
> > +hevc_vaapi_hwaccel_extralibs="vaapi_extralibs"
> >  hevc_vaapi_hwaccel_select="hevc_decoder"
> >  hevc_vdpau_hwaccel_deps="vdpau VdpPictureInfoHEVC"
> > +hevc_vdpau_hwaccel_extralibs="vdpau_extralibs"
> >  hevc_vdpau_hwaccel_select="hevc_decoder"
> >  mpeg1_vdpau_hwaccel_deps="vdpau"
> > +mpeg1_vdpau_hwaccel_extralibs="vdpau_extralibs"
> >  mpeg1_vdpau_hwaccel_select="mpeg1video_decoder"
> >  mpeg2_d3d11va_hwaccel_deps="d3d11va"
> 
> Possibly ignorant interjection: shouldn't the vdpau_extralibs be part
> of "vdpau" instead of each hwaccel?

Not with the way the resolver works right now. I tried differently,
it was nontrivial.

Diego
___
libav-devel mailing list
libav-devel@libav.org
https://lists.libav.org/mailman/listinfo/libav-devel


Re: [libav-devel] [PATCH] build: Fine-grained link-time dependency settings

2016-12-20 Thread wm4
On Tue, 20 Dec 2016 18:15:56 +0100
"Diego Biurrun"  wrote:

> Previously, all link-time dependencies were added for all libraries,
> resulting in bogus link-time dependencies since not all dependencies
> are shared across libraries. Also, in some cases like libavutil, not
> all dependencies were taken into account, resulting in some cases of
> underlinking.
> 
> To address all this mess a machinery is added for tracking which
> dependency belongs to which library component and then leveraged
> to determine correct dependencies for all individual libraries.
> ---


>  h263_vaapi_hwaccel_deps="vaapi"
> +h263_vaapi_hwaccel_extralibs="vaapi_extralibs"
>  h263_vaapi_hwaccel_select="h263_decoder"
>  h264_d3d11va_hwaccel_deps="d3d11va"
> +h264_d3d11va_hwaccel_extralibs="d3d11va_extralibs"
>  h264_d3d11va_hwaccel_select="h264_decoder"
>  h264_dxva2_hwaccel_deps="dxva2"
> +h264_dxva2_hwaccel_extralibs="dxva2_extralibs"
>  h264_dxva2_hwaccel_select="h264_decoder"
>  h264_mmal_hwaccel_deps="mmal"
> +h264_mmal_hwaccel_extralibs="mmal_extralibs"
>  h264_qsv_hwaccel_deps="libmfx"
> +h264_qsv_hwaccel_extralibs="libmfx_extralibs"
>  h264_vaapi_hwaccel_deps="vaapi"
> +h264_vaapi_hwaccel_extralibs="vaapi_extralibs"
>  h264_vaapi_hwaccel_select="h264_decoder"
>  h264_vda_hwaccel_deps="vda"
> +h264_vda_hwaccel_extralibs="vda_extralibs"
>  h264_vda_hwaccel_select="h264_decoder"
>  h264_vda_old_hwaccel_deps="vda"
> +h264_vda_old_hwaccel_extralibs="vda_extralibs"
>  h264_vda_old_hwaccel_select="h264_decoder"
>  h264_vdpau_hwaccel_deps="vdpau"
> +h264_vdpau_hwaccel_extralibs="vdpau_extralibs"
>  h264_vdpau_hwaccel_select="h264_decoder"
>  hevc_d3d11va_hwaccel_deps="d3d11va DXVA_PicParams_HEVC"
> +hevc_d3d11va_hwaccel_extralibs="d3d11va_extralibs"
>  hevc_d3d11va_hwaccel_select="hevc_decoder"
>  hevc_dxva2_hwaccel_deps="dxva2 DXVA_PicParams_HEVC"
> +hevc_dxva2_hwaccel_extralibs="dxva2_extralibs"
>  hevc_dxva2_hwaccel_select="hevc_decoder"
>  hevc_qsv_hwaccel_deps="libmfx"
> +hevc_qsv_hwaccel_extralibs="libmfx_extralibs"
>  hevc_vaapi_hwaccel_deps="vaapi VAPictureParameterBufferHEVC"
> +hevc_vaapi_hwaccel_extralibs="vaapi_extralibs"
>  hevc_vaapi_hwaccel_select="hevc_decoder"
>  hevc_vdpau_hwaccel_deps="vdpau VdpPictureInfoHEVC"
> +hevc_vdpau_hwaccel_extralibs="vdpau_extralibs"
>  hevc_vdpau_hwaccel_select="hevc_decoder"
>  mpeg1_vdpau_hwaccel_deps="vdpau"
> +mpeg1_vdpau_hwaccel_extralibs="vdpau_extralibs"
>  mpeg1_vdpau_hwaccel_select="mpeg1video_decoder"
>  mpeg2_d3d11va_hwaccel_deps="d3d11va"

Possibly ignorant interjection: shouldn't the vdpau_extralibs be part
of "vdpau" instead of each hwaccel?
___
libav-devel mailing list
libav-devel@libav.org
https://lists.libav.org/mailman/listinfo/libav-devel


Re: [libav-devel] [PATCH] build: Fine-grained link-time dependency settings

2016-12-01 Thread Luca Barbato
On 01/12/2016 15:39, Diego Biurrun wrote:
> - Possibly I should still investigate Janne's idea of using the
>   function name as variable name instead of adding a library name
>   parameter to things like check_lib().

That could require extra care in picking the function.
___
libav-devel mailing list
libav-devel@libav.org
https://lists.libav.org/mailman/listinfo/libav-devel