Reviewed-by: Thomas Hellstrom <thellst...@vmware.com>

On 05/02/2014 10:02 PM, Emil Velikov wrote:
> In the presence of LLVM the final library exports every symbol from
> the llvm namespace. Resolve this by using a version script (w/o the
> version/name tag).
>
> Considering that there are only ~35 symbols, explicitly list them
> to minimize the chances of rogue symbols sneaking in.
>
> Signed-off-by: Emil Velikov <emil.l.veli...@gmail.com>
> ---
>  src/gallium/targets/xa/Makefile.am |  1 +
>  src/gallium/targets/xa/xa.sym      | 38 
> ++++++++++++++++++++++++++++++++++++++
>  2 files changed, 39 insertions(+)
>  create mode 100644 src/gallium/targets/xa/xa.sym
>
> diff --git a/src/gallium/targets/xa/Makefile.am 
> b/src/gallium/targets/xa/Makefile.am
> index 2619e57..17cd6c4 100644
> --- a/src/gallium/targets/xa/Makefile.am
> +++ b/src/gallium/targets/xa/Makefile.am
> @@ -63,6 +63,7 @@ endif
>  libxatracker_la_LDFLAGS = \
>       -no-undefined \
>       -version-number $(XA_MAJOR):$(XA_MINOR):$(XA_TINY) \
> +     -Wl,--version-script=$(top_srcdir)/src/gallium/targets/xa/xa.sym \
>       $(GC_SECTIONS) \
>       $(LD_NO_UNDEFINED)
>  
> diff --git a/src/gallium/targets/xa/xa.sym b/src/gallium/targets/xa/xa.sym
> new file mode 100644
> index 0000000..9c7f422
> --- /dev/null
> +++ b/src/gallium/targets/xa/xa.sym
> @@ -0,0 +1,38 @@
> +{
> +     global:
> +             xa_composite_allocation;
> +             xa_composite_check_accelerated;
> +             xa_composite_done;
> +             xa_composite_prepare;
> +             xa_composite_rect;
> +             xa_context_create;
> +             xa_context_default;
> +             xa_context_destroy;
> +             xa_context_flush;
> +             xa_copy;
> +             xa_copy_done;
> +             xa_copy_prepare;
> +             xa_fence_get;
> +             xa_fence_wait;
> +             xa_fence_destroy;
> +             xa_format_check_supported;
> +             xa_solid;
> +             xa_solid_done;
> +             xa_solid_prepare;
> +             xa_surface_create;
> +             xa_surface_dma;
> +             xa_surface_format;
> +             xa_surface_from_handle;
> +             xa_surface_handle;
> +             xa_surface_map;
> +             xa_surface_redefine;
> +             xa_surface_ref;
> +             xa_surface_unmap;
> +             xa_surface_unref;
> +             xa_tracker_create;
> +             xa_tracker_destroy;
> +             xa_tracker_version;
> +             xa_yuv_planar_blit;
> +     local:
> +             *;
> +};
_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to