diff options
author | Diego 'Flameeyes' Pettenò <flameeyes@gmail.com> | 2006-07-10 22:08:12 +0000 |
---|---|---|
committer | Diego 'Flameeyes' Pettenò <flameeyes@gmail.com> | 2006-07-10 22:08:12 +0000 |
commit | e70c5600f5653c6915931717bdd52f9a6a2f2d9d (patch) | |
tree | a0d5282f9deb660def1026701c8e68a273099ede /src/libsputext | |
parent | 32ad3ca6265c8cbac584dd3510109b920415a8e1 (diff) | |
download | xine-lib-e70c5600f5653c6915931717bdd52f9a6a2f2d9d.tar.gz xine-lib-e70c5600f5653c6915931717bdd52f9a6a2f2d9d.tar.bz2 |
Implement visibility support, available on GCC 4.0 and later and on some 3.4 (through backports), to avoid exporting unneeded internal symbols, making plugins' loading faster and use of internal copies of libraries more solid. It should automatically fall back to the old way in GCCs that does not support -fvisibility=hidden, but has to be tested carefully. No issues were found in the months of testing in Gentoo, but this requires special attention anyway.
CVS patchset: 8101
CVS date: 2006/07/10 22:08:12
Diffstat (limited to 'src/libsputext')
-rw-r--r-- | src/libsputext/Makefile.am | 6 | ||||
-rw-r--r-- | src/libsputext/demux_sputext.c | 4 | ||||
-rw-r--r-- | src/libsputext/xine_decoder.c | 4 |
3 files changed, 8 insertions, 6 deletions
diff --git a/src/libsputext/Makefile.am b/src/libsputext/Makefile.am index 99fbbd213..362f9319e 100644 --- a/src/libsputext/Makefile.am +++ b/src/libsputext/Makefile.am @@ -8,8 +8,10 @@ lib_LTLIBRARIES = $(sputext_decoder) xineplug_dmx_sputext_la_SOURCES = demux_sputext.c xineplug_dmx_sputext_la_LIBADD = $(XINE_LIB) -xineplug_dmx_sputext_la_LDFLAGS = -avoid-version -module @XINE_PLUGIN_MIN_SYMS@ +xineplug_dmx_sputext_la_CFLAGS = $(VISIBILITY_FLAG) +xineplug_dmx_sputext_la_LDFLAGS = -avoid-version -module xineplug_decode_sputext_la_SOURCES = xine_decoder.c xineplug_decode_sputext_la_LIBADD = $(XINE_LIB) -xineplug_decode_sputext_la_LDFLAGS = -avoid-version -module @XINE_PLUGIN_MIN_SYMS@ +xineplug_decode_sputext_la_CFLAGS = $(VISIBILITY_FLAG) +xineplug_decode_sputext_la_LDFLAGS = -avoid-version -module diff --git a/src/libsputext/demux_sputext.c b/src/libsputext/demux_sputext.c index 7e75d19da..d5c591212 100644 --- a/src/libsputext/demux_sputext.c +++ b/src/libsputext/demux_sputext.c @@ -17,7 +17,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA * - * $Id: demux_sputext.c,v 1.48 2006/05/03 19:46:08 dsalt Exp $ + * $Id: demux_sputext.c,v 1.49 2006/07/10 22:08:30 dgp85 Exp $ * * code based on old libsputext/xine_decoder.c * @@ -1513,7 +1513,7 @@ static void *init_sputext_demux_class (xine_t *xine, void *data) { return this; } -const plugin_info_t xine_plugin_info[] = { +const plugin_info_t xine_plugin_info[] EXPORTED = { /* type, API, "name", version, special_info, init_function */ { PLUGIN_DEMUX, 26, "sputext", XINE_VERSION_CODE, NULL, &init_sputext_demux_class }, { PLUGIN_NONE, 0, "", 0, NULL, NULL } diff --git a/src/libsputext/xine_decoder.c b/src/libsputext/xine_decoder.c index 4da156c5c..fb0251812 100644 --- a/src/libsputext/xine_decoder.c +++ b/src/libsputext/xine_decoder.c @@ -17,7 +17,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA * - * $Id: xine_decoder.c,v 1.94 2006/06/17 12:50:18 hadess Exp $ + * $Id: xine_decoder.c,v 1.95 2006/07/10 22:08:30 dgp85 Exp $ * */ @@ -959,7 +959,7 @@ static const decoder_info_t spudec_info = { 1 /* priority */ }; -const plugin_info_t xine_plugin_info[] = { +const plugin_info_t xine_plugin_info[] EXPORTED = { /* type, API, "name", version, special_info, init_function */ { PLUGIN_SPU_DECODER | PLUGIN_MUST_PRELOAD, 16, "sputext", XINE_VERSION_CODE, &spudec_info, &init_spu_decoder_plugin }, { PLUGIN_NONE, 0, "", 0, NULL, NULL } |