summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTim-Philipp Müller <tim@centricular.net>2007-12-13 10:10:35 +0000
committerTim-Philipp Müller <tim@centricular.net>2007-12-13 10:10:35 +0000
commitb9cbedfb5944e5262677b8351344dc60a9da644c (patch)
tree6d930ad5d87e7d657fa03937bc71a5b00a3e93cb
parentf6e42cd3d5cb1869f4c3b1a40cccea1d1621e760 (diff)
Makefile.am: Add check-exports target and run it with 'make check'.
Original commit message from CVS: * Makefile.am: Add check-exports target and run it with 'make check'. * configure.ac: Be stricter about what we export in our libraries: change regexp so that we only export _gst_foo(), but not __gst_foo(). * gst-libs/gst/cdda/base64.h: (rfc822_binary): * gst-libs/gst/cdda/sha1.h: (sha_init), (sha_update), (sha_final): Change internal functions to __gst_foo so they dont' get exported. * win32/common/libgstaudio.def: Add missing symbols.
-rw-r--r--ChangeLog16
-rw-r--r--Makefile.am19
m---------common0
-rw-r--r--configure.ac3
-rw-r--r--gst-libs/gst/cdda/base64.h2
-rw-r--r--gst-libs/gst/cdda/sha1.h6
-rw-r--r--win32/common/libgstaudio.def6
7 files changed, 47 insertions, 5 deletions
diff --git a/ChangeLog b/ChangeLog
index 6943c391..39f721d6 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,19 @@
+2007-12-13 Tim-Philipp Müller <tim at centricular dot net>
+
+ * Makefile.am:
+ Add check-exports target and run it with 'make check'.
+
+ * configure.ac:
+ Be stricter about what we export in our libraries: change regexp so that
+ we only export _gst_foo(), but not __gst_foo().
+
+ * gst-libs/gst/cdda/base64.h: (rfc822_binary):
+ * gst-libs/gst/cdda/sha1.h: (sha_init), (sha_update), (sha_final):
+ Change internal functions to __gst_foo so they dont' get exported.
+
+ * win32/common/libgstaudio.def:
+ Add missing symbols.
+
2007-12-11 David Schleef <ds@schleef.org>
* ChangeLog: remove conflict markers
diff --git a/Makefile.am b/Makefile.am
index 8d088843..f6339359 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -61,3 +61,22 @@ win32-update:
for f in $(WIN32_COPY); do cp $$f win32/common;done
include $(top_srcdir)/common/coverage/lcov.mak
+
+# make sure all symbols we export on linux are defined in the win32 .def too
+# (don't care about other unixes for now, it's enough if it works on one of
+# the linux build bots; we assume .so )
+baselibs='libgstaudio libgstrtp libgstpbutils libgsttag libgstnetbuffer \
+libgstinterfaces libgstvideo libgstriff libgstrtsp libgstcdda'
+check-exports:
+ for l in `eval echo $(baselibs)`; do \
+ libso=`find "$(top_builddir)" -name "$$l-0.10.so"`; \
+ libdef="$(top_srcdir)/win32/common/$$l.def"; \
+ if test "x$$libso" != "x"; then \
+ echo Checking symbols in $$libso; \
+ $(top_srcdir)/common/check-exports $$libdef $$libso || exit 1; \
+ fi; \
+ done
+
+check: check-exports
+
+
diff --git a/common b/common
-Subproject 423e2ea96b5f79281f4dd20d734bd968b3d95e8
+Subproject fb7ab03319930496e922173d54f6dfccfff6f35
diff --git a/configure.ac b/configure.ac
index d991b5ad..37ac3721 100644
--- a/configure.ac
+++ b/configure.ac
@@ -612,7 +612,8 @@ AC_SUBST(GST_ALL_LDFLAGS)
dnl GST_LIB_LDFLAGS
dnl linker flags shared by all libraries
dnl LDFLAGS modifier defining exported symbols from built libraries
-GST_LIB_LDFLAGS="-export-symbols-regex [_]*\(gst_\|Gst\|GST_\).*"
+dnl (export _gst_foo but not __gst_foo)
+GST_LIB_LDFLAGS="-export-symbols-regex ^_?\(gst_\|Gst\|GST_\).*"
AC_SUBST(GST_LIB_LDFLAGS)
dnl this really should only contain flags, not libs - they get added before
diff --git a/gst-libs/gst/cdda/base64.h b/gst-libs/gst/cdda/base64.h
index d7c2d0ba..f1242675 100644
--- a/gst-libs/gst/cdda/base64.h
+++ b/gst-libs/gst/cdda/base64.h
@@ -67,7 +67,7 @@
#ifndef __GST_CDDA_BASE64_H__
#define __GST_CDDA_BASE64_H__
-#define rfc822_binary _gst_cdda_rfc822_binary
+#define rfc822_binary __gst_cdda_rfc822_binary
unsigned char *rfc822_binary (void *src,unsigned long srcl,unsigned long *len);
diff --git a/gst-libs/gst/cdda/sha1.h b/gst-libs/gst/cdda/sha1.h
index 2e9e64a1..fce6c8fc 100644
--- a/gst-libs/gst/cdda/sha1.h
+++ b/gst-libs/gst/cdda/sha1.h
@@ -25,9 +25,9 @@ typedef struct {
int local; /* unprocessed amount in data */
} SHA_INFO;
-#define sha_init _gst_cdda_sha_init
-#define sha_update _gst_cdda_sha_update
-#define sha_final _gst_cdda_sha_final
+#define sha_init __gst_cdda_sha_init
+#define sha_update __gst_cdda_sha_update
+#define sha_final __gst_cdda_sha_final
void sha_init(SHA_INFO *);
void sha_update(SHA_INFO *, SHA_BYTE *, int);
diff --git a/win32/common/libgstaudio.def b/win32/common/libgstaudio.def
index af5f8549..0256ef4b 100644
--- a/win32/common/libgstaudio.def
+++ b/win32/common/libgstaudio.def
@@ -19,9 +19,15 @@ EXPORTS
gst_audio_src_get_type
gst_audio_structure_set_int
gst_base_audio_sink_create_ringbuffer
+ gst_base_audio_sink_get_provide_clock
+ gst_base_audio_sink_get_slave_method
gst_base_audio_sink_get_type
+ gst_base_audio_sink_set_provide_clock
+ gst_base_audio_sink_set_slave_method
gst_base_audio_src_create_ringbuffer
+ gst_base_audio_src_get_provide_clock
gst_base_audio_src_get_type
+ gst_base_audio_src_set_provide_clock
gst_ring_buffer_acquire
gst_ring_buffer_advance
gst_ring_buffer_clear