dri-devel Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Maarten Lankhorst <maarten.lankhorst-Z7WLFzj8eWMS+FvcfC7Uqw@public.gmane.org>
To: "dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org"
	<dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org>
Cc: "nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org"
	<nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org>,
	Julien Cristau <jcristau-8fiUuRrzOP0dnm+yROfE0A@public.gmane.org>
Subject: [PATCH] libdrm: hide all private symbols
Date: Wed, 30 Jul 2014 11:38:00 +0200	[thread overview]
Message-ID: <53D8BCF8.9020908@canonical.com> (raw)

Using -export-symbols-regex all private symbols are hidden, resulting in the following changes:

libkms: removes all driver specific exports
radeon: removes the bof_* exports
nouveau: removes the abi16_* exports
freedreno: remove the *kgsl_* and msm_* exports
intel: removes the drm_mm* exports
omap/exynos: unchanged as far as I can tell
 
Signed-off-by: Maarten Lankhorst <maarten.lankhorst-Z7WLFzj8eWMS+FvcfC7Uqw@public.gmane.org>
---

diff --git a/exynos/Makefile.am b/exynos/Makefile.am
index 0a2663a..0cd753d 100644
--- a/exynos/Makefile.am
+++ b/exynos/Makefile.am
@@ -7,7 +7,8 @@ AM_CFLAGS = \
 
 libdrm_exynos_la_LTLIBRARIES = libdrm_exynos.la
 libdrm_exynos_ladir = $(libdir)
-libdrm_exynos_la_LDFLAGS = -version-number 1:0:0 -no-undefined
+libdrm_exynos_la_LDFLAGS = -version-number 1:0:0 -no-undefined \
+	-export-symbols-regex '^(exynos|g2d)_'
 libdrm_exynos_la_LIBADD = ../libdrm.la @PTHREADSTUBS_LIBS@
 
 libdrm_exynos_la_SOURCES = \
diff --git a/freedreno/Makefile.am b/freedreno/Makefile.am
index 7903e5b..5fdee22 100644
--- a/freedreno/Makefile.am
+++ b/freedreno/Makefile.am
@@ -9,7 +9,8 @@ AM_CFLAGS = \
 
 libdrm_freedreno_la_LTLIBRARIES = libdrm_freedreno.la
 libdrm_freedreno_ladir = $(libdir)
-libdrm_freedreno_la_LDFLAGS = -version-number 1:0:0 -no-undefined
+libdrm_freedreno_la_LDFLAGS = -version-number 1:0:0 -no-undefined \
+	-export-symbols-regex '^fd_'
 libdrm_freedreno_la_LIBADD = ../libdrm.la @PTHREADSTUBS_LIBS@
 
 libdrm_freedreno_la_SOURCES = \
diff --git a/intel/Makefile.am b/intel/Makefile.am
index f49b099..2b9ee48 100644
--- a/intel/Makefile.am
+++ b/intel/Makefile.am
@@ -33,7 +33,8 @@ AM_CFLAGS = \
 
 libdrm_intel_la_LTLIBRARIES = libdrm_intel.la
 libdrm_intel_ladir = $(libdir)
-libdrm_intel_la_LDFLAGS = -version-number 1:0:0 -no-undefined
+libdrm_intel_la_LDFLAGS = -version-number 1:0:0 -no-undefined \
+	-export-symbols-regex '^drm_intel_'
 libdrm_intel_la_LIBADD = ../libdrm.la \
 	@PTHREADSTUBS_LIBS@ \
 	@PCIACCESS_LIBS@ \
diff --git a/libkms/Makefile.am b/libkms/Makefile.am
index 449a73b..e3c727a 100644
--- a/libkms/Makefile.am
+++ b/libkms/Makefile.am
@@ -5,7 +5,8 @@ AM_CFLAGS = \
 
 libkms_la_LTLIBRARIES = libkms.la
 libkms_ladir = $(libdir)
-libkms_la_LDFLAGS = -version-number 1:0:0 -no-undefined
+libkms_la_LDFLAGS = -version-number 1:0:0 -no-undefined \
+	-export-symbols-regex '^kms_'
 libkms_la_LIBADD = ../libdrm.la
 
 #if HAVE_LIBUDEV
diff --git a/nouveau/Makefile.am b/nouveau/Makefile.am
index 206e892..257cab9 100644
--- a/nouveau/Makefile.am
+++ b/nouveau/Makefile.am
@@ -8,7 +8,8 @@ AM_CFLAGS = \
 
 libdrm_nouveau_la_LTLIBRARIES = libdrm_nouveau.la
 libdrm_nouveau_ladir = $(libdir)
-libdrm_nouveau_la_LDFLAGS = -version-number 2:0:0 -no-undefined
+libdrm_nouveau_la_LDFLAGS = -version-number 2:0:0 -no-undefined \
+	-export-symbols-regex '^nouveau_'
 libdrm_nouveau_la_LIBADD = ../libdrm.la @PTHREADSTUBS_LIBS@
 
 libdrm_nouveau_la_SOURCES = nouveau.c \
diff --git a/omap/Makefile.am b/omap/Makefile.am
index c77520b..bcbe98e 100644
--- a/omap/Makefile.am
+++ b/omap/Makefile.am
@@ -7,7 +7,8 @@ AM_CFLAGS = \
 
 libdrm_omap_la_LTLIBRARIES = libdrm_omap.la
 libdrm_omap_ladir = $(libdir)
-libdrm_omap_la_LDFLAGS = -version-number 1:0:0 -no-undefined
+libdrm_omap_la_LDFLAGS = -version-number 1:0:0 -no-undefined \
+	-export-symbols-regex '^omap_'
 libdrm_omap_la_LIBADD = ../libdrm.la @PTHREADSTUBS_LIBS@
 
 libdrm_omap_la_SOURCES = omap_drm.c
diff --git a/radeon/Makefile.am b/radeon/Makefile.am
index a8cd100..9fa19a8 100644
--- a/radeon/Makefile.am
+++ b/radeon/Makefile.am
@@ -31,7 +31,8 @@ AM_CFLAGS = \
 
 libdrm_radeon_la_LTLIBRARIES = libdrm_radeon.la
 libdrm_radeon_ladir = $(libdir)
-libdrm_radeon_la_LDFLAGS = -version-number 1:0:1 -no-undefined
+libdrm_radeon_la_LDFLAGS = -version-number 1:0:1 -no-undefined \
+	-export-symbols-regex '^radeon_'
 libdrm_radeon_la_LIBADD = ../libdrm.la @PTHREADSTUBS_LIBS@
 
 libdrm_radeon_la_SOURCES = \

             reply	other threads:[~2014-07-30  9:38 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-07-30  9:38 Maarten Lankhorst [this message]
2014-07-30 10:16 ` [PATCH] libdrm: hide all private symbols Christian König
     [not found]   ` <53D8C5F7.6040908-ANTagKRnAhcb1SvskN2V4Q@public.gmane.org>
2014-07-30 12:35     ` Emil Velikov
2014-07-30 13:48       ` [PATCH libdrm] configure: Support symbol visibility when available Thierry Reding
     [not found]         ` <1406728085-981-1-git-send-email-thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2014-07-30 14:31           ` Rob Clark
     [not found]             ` <CAF6AEGsKy0jMeTki8R4CJb5+fbKgX3qJW8uV4Wbr8Vm2Ojr-vQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-07-30 14:37               ` Emil Velikov
     [not found]                 ` <53D9031C.3060508-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2014-07-30 14:39                   ` Rob Clark
2014-07-30 14:32         ` Emil Velikov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=53D8BCF8.9020908@canonical.com \
    --to=maarten.lankhorst-z7wlfzj8ewms+fvcfc7uqw@public.gmane.org \
    --cc=dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org \
    --cc=jcristau-8fiUuRrzOP0dnm+yROfE0A@public.gmane.org \
    --cc=nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox