--- libdv-1.0.0.orig/libdv/Makefile.am +++ libdv-1.0.0/libdv/Makefile.am @@ -3,10 +3,13 @@ MAINTAINERCLEANFILES = Makefile.in CLEANFILES = asmoff.h -LIBTOOL = $(SHELL) $(top_builddir)/libtool --silent +AM_CFLAGS = -fvisibility=hidden +#LIBTOOL = $(SHELL) $(top_builddir)/libtool --silent lib_LTLIBRARIES= libdv.la +noinst_LTLIBRARIES = libdv-internal.la + if HOST_X86 GASMOFF=gasmoff endif # HOST_X86 @@ -59,16 +62,18 @@ libdv_la_SOURCES= dv.c dct.c idct_248.c encode.c headers.c enc_input.c enc_audio_input.c enc_output.c \ $(libdv_la_ASMS) -libdv_la_LDFLAGS = -version-info 4:3:0 +libdv_la_LDFLAGS = -no-undefined -version-info 4:3:0 + +libdv_internal_la_SOURCES = $(libdv_la_SOURCES) dovlc_SOURCES= dovlc.c -dovlc_LDADD= libdv.la +dovlc_LDADD= libdv.la libdv-internal.la testvlc_SOURCES= testvlc.c -testvlc_LDADD=libdv.la +testvlc_LDADD=libdv.la libdv-internal.la testbitstream_SOURCES= testbitstream.c bitstream.h -testbitstream_LDADD=libdv.la +testbitstream_LDADD=libdv.la libdv-internal.la recode_SOURCES=recode.c recode_LDADD=libdv.la --- libdv-1.0.0.orig/libdv/dv.h +++ libdv-1.0.0/libdv/dv.h @@ -43,7 +43,7 @@ #include #include #include - +#pragma GCC visibility push(default) #ifdef __cplusplus extern "C" { #endif @@ -154,7 +154,7 @@ extern int dv_get_num_samples (dv_decode #ifdef __cplusplus } #endif - +#pragma GCC visibility pop #endif // DV_H /*@}*/ --- libdv-1.0.0.orig/libdv/gasmoff.c +++ libdv-1.0.0/libdv/gasmoff.c @@ -25,9 +25,7 @@ #include "dv_types.h" #include - -#define offsetof(S, M) \ - ((int)&(((S*)NULL)->M)) +#include #define declare(S, M) \ printf("#define %-40s %d\n", #S "_" #M, offsetof(S, M)) --- libdv-1.0.0.orig/libdv/headers.c +++ libdv-1.0.0/libdv/headers.c @@ -31,6 +31,7 @@ #include #include +#include "dv.h" #include "headers.h" static void write_header_block(unsigned char* target, int ds, int isPAL) --- libdv-1.0.0.orig/encodedv/Makefile.am +++ libdv-1.0.0/encodedv/Makefile.am @@ -5,22 +5,22 @@ EXTRA_DIST = $(man_MANS) MAINTAINERCLEANFILES = Makefile.in $(AUX_DIST) -LIBTOOL = $(SHELL) $(top_builddir)/libtool --silent - CLEANFILES = +AM_CFLAGS = -fvisibility=hidden + bin_PROGRAMS= encodedv dvconnect dubdv noinst_PROGRAMS= fix_headers scan_packet_headers steal_header ppmqscale dvavi encodedv_SOURCES= encodedv.c -encodedv_LDADD= ../libdv/libdv.la $(POPT_LIB) +encodedv_LDADD= ../libdv/libdv.la ../libdv/libdv-internal.la $(POPT_LIB) dubdv_SOURCES = insert_audio.c -dubdv_LDADD= ../libdv/libdv.la $(POPT_LIB) +dubdv_LDADD= ../libdv/libdv.la ../libdv/libdv-internal.la $(POPT_LIB) fix_headers_SOURCES = fix_headers.c -fix_headers_LDADD= ../libdv/libdv.la +fix_headers_LDADD= ../libdv/libdv.la ../libdv/libdv-internal.la scan_packet_headers_SOURCES = scan_packet_headers.c @@ -32,4 +32,4 @@ dvconnect_SOURCES = dvconnect.c dvconnect_LDADD = $(PTHREAD_LIBS) $(POPT_LIB) dvavi_SOURCES = dvavi.c -dvavi_LDADD= ../libdv/libdv.la +dvavi_LDADD= ../libdv/libdv.la ../libdv/libdv-internal.la --- libdv-1.0.0.orig/playdv/Makefile.am +++ libdv-1.0.0/playdv/Makefile.am @@ -6,13 +6,11 @@ MAINTAINERCLEANFILES = Makefile.in CLEANFILES = -LIBTOOL = $(SHELL) $(top_builddir)/libtool --silent - -AM_CFLAGS = $(SDL_CFLAGS) $(GTK_CFLAGS) +AM_CFLAGS = -fvisibility=hidden $(SDL_CFLAGS) $(GTK_CFLAGS) bin_PROGRAMS= playdv noinst_HEADERS= display.h oss.h playdv_SOURCES= playdv.c display.c display.h oss.c -playdv_LDADD= $(SDL_LIBS) $(GTK_LIBS) $(XV_LIB) ../libdv/libdv.la $(POPT_LIB) -lX11 -lXext +playdv_LDADD= $(SDL_LIBS) $(GTK_LIBS) $(XV_LIB) ../libdv/libdv.la ../libdv/libdv-internal.la $(POPT_LIB) -lX11 -lXext --- libdv-1.0.0.orig/libdv/vlc_x86.S +++ libdv-1.0.0/libdv/vlc_x86.S @@ -88,6 +88,7 @@ dv_decode_vlc: .align 4 .globl __dv_decode_vlc .type __dv_decode_vlc,@function + .hidden __dv_decode_vlc __dv_decode_vlc: pushl %ebx pushl %ebp --- libdv-1.0.0.orig/libdv/vlc_x86_64.S +++ libdv-1.0.0/libdv/vlc_x86_64.S @@ -5,6 +5,7 @@ .align 4 .globl dv_decode_vlc .type dv_decode_vlc,@function + .hidden dv_decode_vlc dv_decode_vlc: push %rbx push %rbp @@ -101,6 +102,7 @@ void __dv_decode_vlc(int bits, dv_vlc_t .align 4 .globl __dv_decode_vlc .type __dv_decode_vlc,@function + .hidden __dv_decode_vlc __dv_decode_vlc: push %rbx push %rbp