Mesa (master): targets/vdpau: use version script to limit the exported symbols

Emil Velikov evelikov at kemper.freedesktop.org
Fri May 2 20:52:08 UTC 2014


Module: Mesa
Branch: master
Commit: 69d790da9f5307c54c7a7c280e158c412f91dc84
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=69d790da9f5307c54c7a7c280e158c412f91dc84

Author: Emil Velikov <emil.l.velikov at gmail.com>
Date:   Fri Apr  4 23:59:30 2014 +0100

targets/vdpau: use version script to limit the exported symbols

Using export-symbols-regex is the least desirable method of restricting
the exported symbols, as is completely messes up with the symbol table.

Signed-off-by: Emil Velikov <emil.l.velikov at gmail.com>
Reviewed-by: Christian König <christian.koenig at amd.com>

---

 src/gallium/Automake.inc                       |    2 +-
 src/gallium/targets/r600/vdpau/Makefile.am     |    2 --
 src/gallium/targets/radeonsi/vdpau/Makefile.am |    2 --
 src/gallium/targets/vdpau-nouveau/Makefile.am  |    2 --
 src/gallium/targets/vdpau.sym                  |    8 ++++++++
 5 files changed, 9 insertions(+), 7 deletions(-)

diff --git a/src/gallium/Automake.inc b/src/gallium/Automake.inc
index 5a4f4e8..4519c16 100644
--- a/src/gallium/Automake.inc
+++ b/src/gallium/Automake.inc
@@ -64,7 +64,7 @@ GALLIUM_VDPAU_LINKER_FLAGS = \
 	-module \
 	-no-undefined \
 	-version-number $(VDPAU_MAJOR):$(VDPAU_MINOR) \
-	-export-symbols-regex $(VDPAU_EXPORTS) \
+	-Wl,--version-script=$(top_srcdir)/src/gallium/targets/vdpau.sym \
 	$(GC_SECTIONS) \
 	$(LD_NO_UNDEFINED)
 
diff --git a/src/gallium/targets/r600/vdpau/Makefile.am b/src/gallium/targets/r600/vdpau/Makefile.am
index 455d90f..b212024 100644
--- a/src/gallium/targets/r600/vdpau/Makefile.am
+++ b/src/gallium/targets/r600/vdpau/Makefile.am
@@ -20,8 +20,6 @@
 # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
 # DEALINGS IN THE SOFTWARE.
 
-# Note: Make sure VDPAU_EXPORTS is defined before including Automake.inc
-VDPAU_EXPORTS = '^(vdp_imp_device_create_x11|radeon_drm_winsys_create)$$'
 include $(top_srcdir)/src/gallium/Automake.inc
 
 AM_CFLAGS = \
diff --git a/src/gallium/targets/radeonsi/vdpau/Makefile.am b/src/gallium/targets/radeonsi/vdpau/Makefile.am
index b8dcf88..975ae78 100644
--- a/src/gallium/targets/radeonsi/vdpau/Makefile.am
+++ b/src/gallium/targets/radeonsi/vdpau/Makefile.am
@@ -20,8 +20,6 @@
 # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
 # DEALINGS IN THE SOFTWARE.
 
-# Note: Make sure VDPAU_EXPORTS is defined before including Automake.inc
-VDPAU_EXPORTS = '^(vdp_imp_device_create_x11|radeon_drm_winsys_create)$$'
 include $(top_srcdir)/src/gallium/Automake.inc
 
 AM_CFLAGS = \
diff --git a/src/gallium/targets/vdpau-nouveau/Makefile.am b/src/gallium/targets/vdpau-nouveau/Makefile.am
index de1adf8..36d2f47 100644
--- a/src/gallium/targets/vdpau-nouveau/Makefile.am
+++ b/src/gallium/targets/vdpau-nouveau/Makefile.am
@@ -20,8 +20,6 @@
 # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
 # DEALINGS IN THE SOFTWARE.
 
-# Note: Make sure VDPAU_EXPORTS is defined before including Automake.inc
-VDPAU_EXPORTS = '^(vdp_imp_device_create_x11|nouveau_drm_screen_create)$$'
 include $(top_srcdir)/src/gallium/Automake.inc
 
 AM_CFLAGS = \
diff --git a/src/gallium/targets/vdpau.sym b/src/gallium/targets/vdpau.sym
new file mode 100644
index 0000000..f184193
--- /dev/null
+++ b/src/gallium/targets/vdpau.sym
@@ -0,0 +1,8 @@
+{
+       global:
+               vdp_imp_device_create_x11;
+               nouveau_drm_screen_create;
+               radeon_drm_winsys_create;
+       local:
+               *;
+};




More information about the mesa-commit mailing list