LTLIBVLC = -L\$(top_builddir)/src -lvlc
AM_LDFLAGS = -rpath '\$(libvlcdir)' -avoid-version \\
- -module -no-undefined -shrext \$(LIBEXT) \\
- -export-symbol-regex ^\$(VLC_ENTRY)\$\$
+ -module -no-undefined -shrext \$(LIBEXT)
+if HAVE_COMPILER_EXPORT
+AM_LDFLAGS += -export-dynamic
+else
+AM_LDFLAGS += -export-symbol-regex ^\$(VLC_ENTRY)\$\$
+endif
AM_LIBADD = \$(LTLIBVLC)
all: all-modules
VLC_ADD_CFLAGS([libvlc plugin],[-fvisibility=hidden])
fi
+AM_CONDITIONAL(HAVE_COMPILER_EXPORT, [test "$SYS" = "mingw32" -o "${ac_cv_c_visibility_hidden}" != "no"])
+
dnl Check for -fvisibility-inlines-hidden (breaks x86_64 linkers)
dnl AC_LANG_PUSH(C++)
dnl AC_CACHE_CHECK([if \$CXX accepts -fvisibility-inlines-hidden],
libvlc_la_CXXFLAGS = `$(VLC_CONFIG) --cxxflags libvlc`
libvlc_la_OBJCFLAGS = `$(VLC_CONFIG) --objcflags libvlc`
libvlc_la_LDFLAGS = $(AM_LDFLAGS) `$(VLC_CONFIG) --libs libvlc` \
- -export-symbols $(srcdir)/libvlc.sym -version-info 1:0:0
+ -version-info 1:0:0
+if HAVE_COMPILER_EXPORT
+libvlc_la_LDFLAGS += -export-dynamic
+else
+libvlc_la_LDFLAGS += -export-symbols $(srcdir)/libvlc.sym
+endif
+
libvlc_la_DEPENDENCIES = libvlc.sym
libvlc_control_la_SOURCES = $(SOURCES_libvlc_control)
libvlc_control_la_CFLAGS = `$(VLC_CONFIG) --cflags libvlc`
libvlc_control_la_LDFLAGS = $(AM_LDFLAGS) -export-symbols-regex '^_?(libvlc|mediacontrol)_.*' \
-version-info 0:0:0
+if HAVE_COMPILER_EXPORT
+libvlc_control_la_LDFLAGS += -export-dynamic
+else
+libvlc_control_la_LDFLAGS += -export-symbols-regex '^_?(libvlc|mediacontrol)_.*'
+endif
+
EXTRA_libvlc_la_SOURCES = \
$(SOURCES_libvlc_beos) \