From: Emil Velikov Date: Fri, 4 Apr 2014 22:46:13 +0000 (+0100) Subject: targets/xvmc: limit the amount of exported symbols X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=b8f31dfc22eb90c1703c8d414eedb841c9025f52;p=mesa.git targets/xvmc: limit the amount of exported symbols 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 ~25 symbols, explicitly list them to minimize the chances of rogue symbols sneaking in. Drop the *winsys_create functions as they were only meant for gl-vdpau interop. Signed-off-by: Emil Velikov Reviewed-by: Christian König --- diff --git a/src/gallium/Automake.inc b/src/gallium/Automake.inc index 1f5d532e426..f857c1a793d 100644 --- a/src/gallium/Automake.inc +++ b/src/gallium/Automake.inc @@ -75,7 +75,7 @@ GALLIUM_XVMC_LINKER_FLAGS = \ -module \ -no-undefined \ -version-number $(XVMC_MAJOR):$(XVMC_MINOR) \ - -export-symbols-regex '^XvMC' \ + -Wl,--version-script=$(top_srcdir)/src/gallium/targets/xvmc.sym \ $(GC_SECTIONS) \ $(LD_NO_UNDEFINED) diff --git a/src/gallium/targets/xvmc.sym b/src/gallium/targets/xvmc.sym new file mode 100644 index 00000000000..f51378e00a1 --- /dev/null +++ b/src/gallium/targets/xvmc.sym @@ -0,0 +1,32 @@ +{ + global: + XvMCBlendSubpicture; + XvMCBlendSubpicture2; + XvMCClearSubpicture; + XvMCCompositeSubpicture; + XvMCCreateBlocks; + XvMCCreateContext; + XvMCCreateMacroBlocks; + XvMCCreateSubpicture; + XvMCCreateSurface; + XvMCDestroyBlocks; + XvMCDestroyContext; + XvMCDestroyMacroBlocks; + XvMCDestroySubpicture; + XvMCDestroySurface; + XvMCFlushSubpicture; + XvMCFlushSurface; + XvMCGetAttribute; + XvMCGetSubpictureStatus; + XvMCGetSurfaceStatus; + XvMCHideSurface; + XvMCPutSurface; + XvMCQueryAttributes; + XvMCRenderSurface; + XvMCSetAttribute; + XvMCSetSubpicturePalette; + XvMCSyncSubpicture; + XvMCSyncSurface; + local: + *; +};