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/libxinevdec | |
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/libxinevdec')
-rw-r--r-- | src/libxinevdec/Makefile.am | 10 | ||||
-rw-r--r-- | src/libxinevdec/bitplane.c | 4 | ||||
-rw-r--r-- | src/libxinevdec/foovideo.c | 4 | ||||
-rw-r--r-- | src/libxinevdec/gdkpixbuf.c | 4 | ||||
-rw-r--r-- | src/libxinevdec/image.c | 4 | ||||
-rw-r--r-- | src/libxinevdec/rgb.c | 4 | ||||
-rw-r--r-- | src/libxinevdec/yuv.c | 4 |
7 files changed, 17 insertions, 17 deletions
diff --git a/src/libxinevdec/Makefile.am b/src/libxinevdec/Makefile.am index 0e6a16609..ae0d147fa 100644 --- a/src/libxinevdec/Makefile.am +++ b/src/libxinevdec/Makefile.am @@ -20,24 +20,24 @@ lib_LTLIBRARIES = $(image_module) \ xineplug_decode_bitplane_la_SOURCES = bitplane.c xineplug_decode_bitplane_la_LIBADD = $(XINE_LIB) -xineplug_decode_bitplane_la_LDFLAGS = -avoid-version -module @XINE_PLUGIN_MIN_SYMS@ +xineplug_decode_bitplane_la_LDFLAGS = -avoid-version -module xineplug_decode_rgb_la_SOURCES = rgb.c xineplug_decode_rgb_la_LIBADD = $(XINE_LIB) -xineplug_decode_rgb_la_LDFLAGS = -avoid-version -module @XINE_PLUGIN_MIN_SYMS@ +xineplug_decode_rgb_la_LDFLAGS = -avoid-version -module xineplug_decode_yuv_la_SOURCES = yuv.c xineplug_decode_yuv_la_LIBADD = $(XINE_LIB) -xineplug_decode_yuv_la_LDFLAGS = -avoid-version -module @XINE_PLUGIN_MIN_SYMS@ +xineplug_decode_yuv_la_LDFLAGS = -avoid-version -module xineplug_decode_image_la_SOURCES = image.c xineplug_decode_image_la_CPPFLAGS = $(WAND_CPPFLAGS) xineplug_decode_image_la_CFLAGS = $(WAND_CFLAGS) xineplug_decode_image_la_LIBADD = $(XINE_LIB) $(DYNAMIC_LD_LIBS) $(WAND_LIBS) -xineplug_decode_image_la_LDFLAGS = $(WAND_LDFLAGS) -avoid-version -module @XINE_PLUGIN_MIN_SYMS@ +xineplug_decode_image_la_LDFLAGS = $(WAND_LDFLAGS) -avoid-version -module xineplug_decode_gdk_pixbuf_la_SOURCES = gdkpixbuf.c xineplug_decode_gdk_pixbuf_la_CFLAGS = $(GDK_PIXBUF_CFLAGS) xineplug_decode_gdk_pixbuf_la_LIBADD = $(XINE_LIB) $(DYNAMIC_LD_LIBS) $(GDK_PIXBUF_LIBS) -xineplug_decode_gdk_pixbuf_la_LDFLAGS = -avoid-version -module @XINE_PLUGIN_MIN_SYMS@ +xineplug_decode_gdk_pixbuf_la_LDFLAGS = -avoid-version -module diff --git a/src/libxinevdec/bitplane.c b/src/libxinevdec/bitplane.c index 61c2763a8..373d5d8b1 100644 --- a/src/libxinevdec/bitplane.c +++ b/src/libxinevdec/bitplane.c @@ -28,7 +28,7 @@ * 8 (long and short) * - untested (found no testfiles) IFF-ANIM OPT 3, 4 and 6 * - * $Id: bitplane.c,v 1.14 2006/06/02 22:18:58 dsalt Exp $ + * $Id: bitplane.c,v 1.15 2006/07/10 22:08:43 dgp85 Exp $ */ #include <stdio.h> @@ -1585,7 +1585,7 @@ static const decoder_info_t dec_info_video = { 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_VIDEO_DECODER, 18, "bitplane", XINE_VERSION_CODE, &dec_info_video, init_plugin }, { PLUGIN_NONE, 0, "", 0, NULL, NULL } diff --git a/src/libxinevdec/foovideo.c b/src/libxinevdec/foovideo.c index c5b07527e..01ad84921 100644 --- a/src/libxinevdec/foovideo.c +++ b/src/libxinevdec/foovideo.c @@ -23,7 +23,7 @@ * value from the last frame. This creates a slowly rotating solid color * frame when the frames are played in succession. * - * $Id: foovideo.c,v 1.25 2006/06/02 22:18:58 dsalt Exp $ + * $Id: foovideo.c,v 1.26 2006/07/10 22:08:43 dgp85 Exp $ */ #include <stdio.h> @@ -296,7 +296,7 @@ static const decoder_info_t dec_info_video = { * The plugin catalog entry. This is the only information that this plugin * will export to the public. */ -const plugin_info_t xine_plugin_info[] = { +const plugin_info_t xine_plugin_info[] EXPORTED = { /* { type, API, "name", version, special_info, init_function } */ { PLUGIN_VIDEO_DECODER, 18, "foovideo", XINE_VERSION_CODE, &dec_info_video, init_plugin }, { PLUGIN_NONE, 0, "", 0, NULL, NULL } diff --git a/src/libxinevdec/gdkpixbuf.c b/src/libxinevdec/gdkpixbuf.c index d3d8953db..40b0abb06 100644 --- a/src/libxinevdec/gdkpixbuf.c +++ b/src/libxinevdec/gdkpixbuf.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: gdkpixbuf.c,v 1.5 2006/06/02 22:18:58 dsalt Exp $ + * $Id: gdkpixbuf.c,v 1.6 2006/07/10 22:08:43 dgp85 Exp $ * * a gdk-pixbuf-based image video decoder */ @@ -307,7 +307,7 @@ static const decoder_info_t dec_info_image = { 7 /* 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_VIDEO_DECODER, 18, "gdkpixbuf", XINE_VERSION_CODE, &dec_info_image, init_class }, { PLUGIN_NONE, 0, "", 0, NULL, NULL } diff --git a/src/libxinevdec/image.c b/src/libxinevdec/image.c index 383224ed9..bdd29f28a 100644 --- a/src/libxinevdec/image.c +++ b/src/libxinevdec/image.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: image.c,v 1.19 2006/06/02 22:18:58 dsalt Exp $ + * $Id: image.c,v 1.20 2006/07/10 22:08:43 dgp85 Exp $ * * a image video decoder */ @@ -278,7 +278,7 @@ static const decoder_info_t dec_info_image = { 6 /* 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_VIDEO_DECODER, 18, "image", XINE_VERSION_CODE, &dec_info_image, init_class }, { PLUGIN_NONE, 0, "", 0, NULL, NULL } diff --git a/src/libxinevdec/rgb.c b/src/libxinevdec/rgb.c index 744fc1b65..662df01de 100644 --- a/src/libxinevdec/rgb.c +++ b/src/libxinevdec/rgb.c @@ -30,7 +30,7 @@ * One more catch: Raw RGB from a Microsoft file is upside down. This is * indicated by a negative height parameter. * - * $Id: rgb.c,v 1.33 2006/06/02 22:18:58 dsalt Exp $ + * $Id: rgb.c,v 1.34 2006/07/10 22:08:43 dgp85 Exp $ */ #include <stdio.h> @@ -458,7 +458,7 @@ static const decoder_info_t dec_info_video = { 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_VIDEO_DECODER, 18, "rgb", XINE_VERSION_CODE, &dec_info_video, init_plugin }, { PLUGIN_NONE, 0, "", 0, NULL, NULL } diff --git a/src/libxinevdec/yuv.c b/src/libxinevdec/yuv.c index 639144223..f37ff6ca3 100644 --- a/src/libxinevdec/yuv.c +++ b/src/libxinevdec/yuv.c @@ -21,7 +21,7 @@ * Actually, this decoder just reorganizes chunks of raw YUV data in such * a way that xine can display them. * - * $Id: yuv.c,v 1.36 2006/06/02 22:18:58 dsalt Exp $ + * $Id: yuv.c,v 1.37 2006/07/10 22:08:43 dgp85 Exp $ */ #include <stdio.h> @@ -385,7 +385,7 @@ static const decoder_info_t dec_info_video = { 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_VIDEO_DECODER, 18, "yuv", XINE_VERSION_CODE, &dec_info_video, init_plugin }, { PLUGIN_NONE, 0, "", 0, NULL, NULL } |