[Android] libvlc.so: export only the libvlc and libvlcjni symbols

Thomas Guillem git at videolan.org
Tue Oct 6 13:26:03 CEST 2015


vlc-ports/android | branch: master | Thomas Guillem <thomas at gllm.fr> | Tue Oct  6 13:25:46 2015 +0200| [1162a30fffad1c991018022a16e7364983f1361c] | committer: Thomas Guillem

libvlc.so: export only the libvlc and libvlcjni symbols

> http://git.videolan.org/gitweb.cgi/vlc-ports/android.git/?a=commit;h=1162a30fffad1c991018022a16e7364983f1361c
---

 compile-libvlc.sh    |    9 ++++-
 libvlc/libvlcjni.sym |   96 ++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 104 insertions(+), 1 deletion(-)

diff --git a/compile-libvlc.sh b/compile-libvlc.sh
index 51e1bad..b15794b 100755
--- a/compile-libvlc.sh
+++ b/compile-libvlc.sh
@@ -619,6 +619,13 @@ BUILTINS="$BUILTINS NULL\n};\n"; \
 printf "/* Autogenerated from the list of modules */\n$DEFINITION\n$BUILTINS\n" > libvlc/jni/libvlcjni-modules.h
 rm ${REDEFINED_VLC_MODULES_DIR}/syms
 
+# Generating the .ver file like libvlc.so upstream
+VER_FILE="vlc/$VLC_BUILD_DIR/lib/.libs/libvlc.ver"
+echo "{ global:" > $VER_FILE
+cat vlc/lib/libvlc.sym libvlc/libvlcjni.sym | sed -e "s/\(.*\)/\1;/" >> $VER_FILE
+echo "__gmp_binvert_limb_table;" >> $VER_FILE # FIXME
+echo "local: *; };" >> $VER_FILE
+
 ###############################
 # NDK-Build for libvlcjni.so  #
 ###############################
@@ -651,7 +658,7 @@ $ANDROID_NDK/ndk-build -C libvlc \
     VLC_CONTRIB="$VLC_CONTRIB" \
     VLC_MODULES="$VLC_MODULES" \
     TARGET_CFLAGS="$EXTRA_CFLAGS" \
-    EXTRA_LDFLAGS="$EXTRA_LDFLAGS" \
+    EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-soname -Wl,libvlc.so.5 -Wl,-version-script -Wl,$SRC_DIR/$VER_FILE" \
     LIBVLC_LIBS="$LIBVLC_LIBS" \
     LIBIOMX_LIBS="$LIBIOMX_LIBS" \
     LIBANW_LIBS="$LIBANW_LIBS" \
diff --git a/libvlc/libvlcjni.sym b/libvlc/libvlcjni.sym
new file mode 100644
index 0000000..594671c
--- /dev/null
+++ b/libvlc/libvlcjni.sym
@@ -0,0 +1,96 @@
+JNI_OnLoad
+JNI_OnUnload
+Java_org_videolan_libvlc_LibVLC_changeset
+Java_org_videolan_libvlc_LibVLC_compiler
+Java_org_videolan_libvlc_LibVLC_nativeNew
+Java_org_videolan_libvlc_LibVLC_nativeRelease
+Java_org_videolan_libvlc_LibVLC_nativeSetOnHardwareAccelerationError
+Java_org_videolan_libvlc_LibVLC_nativeSetUserAgent
+Java_org_videolan_libvlc_LibVLC_version
+Java_org_videolan_libvlc_MediaDiscoverer_nativeNew
+Java_org_videolan_libvlc_MediaDiscoverer_nativeRelease
+Java_org_videolan_libvlc_MediaDiscoverer_nativeStart
+Java_org_videolan_libvlc_MediaDiscoverer_nativeStop
+Java_org_videolan_libvlc_MediaList_nativeGetCount
+Java_org_videolan_libvlc_MediaList_nativeLock
+Java_org_videolan_libvlc_MediaList_nativeNewFromLibVlc
+Java_org_videolan_libvlc_MediaList_nativeNewFromMedia
+Java_org_videolan_libvlc_MediaList_nativeNewFromMediaDiscoverer
+Java_org_videolan_libvlc_MediaList_nativeRelease
+Java_org_videolan_libvlc_MediaList_nativeUnlock
+Java_org_videolan_libvlc_Media_nativeAddOption
+Java_org_videolan_libvlc_Media_nativeGetDuration
+Java_org_videolan_libvlc_Media_nativeGetMeta
+Java_org_videolan_libvlc_Media_nativeGetMrl
+Java_org_videolan_libvlc_Media_nativeGetState
+Java_org_videolan_libvlc_Media_nativeGetTracks
+Java_org_videolan_libvlc_Media_nativeGetType
+Java_org_videolan_libvlc_Media_nativeNewFromFd
+Java_org_videolan_libvlc_Media_nativeNewFromLocation
+Java_org_videolan_libvlc_Media_nativeNewFromMediaList
+Java_org_videolan_libvlc_Media_nativeNewFromPath
+Java_org_videolan_libvlc_Media_nativeParse
+Java_org_videolan_libvlc_Media_nativeParseAsync
+Java_org_videolan_libvlc_Media_nativeRelease
+Java_org_videolan_libvlc_MediaPlayer_00024Equalizer_nativeGetAmp
+Java_org_videolan_libvlc_MediaPlayer_00024Equalizer_nativeGetBandCount
+Java_org_videolan_libvlc_MediaPlayer_00024Equalizer_nativeGetBandFrequency
+Java_org_videolan_libvlc_MediaPlayer_00024Equalizer_nativeGetPreAmp
+Java_org_videolan_libvlc_MediaPlayer_00024Equalizer_nativeGetPresetCount
+Java_org_videolan_libvlc_MediaPlayer_00024Equalizer_nativeGetPresetName
+Java_org_videolan_libvlc_MediaPlayer_00024Equalizer_nativeNew
+Java_org_videolan_libvlc_MediaPlayer_00024Equalizer_nativeNewFromPreset
+Java_org_videolan_libvlc_MediaPlayer_00024Equalizer_nativeRelease
+Java_org_videolan_libvlc_MediaPlayer_00024Equalizer_nativeSetAmp
+Java_org_videolan_libvlc_MediaPlayer_00024Equalizer_nativeSetPreAmp
+Java_org_videolan_libvlc_MediaPlayer_getChapter
+Java_org_videolan_libvlc_MediaPlayer_getLength
+Java_org_videolan_libvlc_MediaPlayer_getPlayerState
+Java_org_videolan_libvlc_MediaPlayer_getPosition
+Java_org_videolan_libvlc_MediaPlayer_getRate
+Java_org_videolan_libvlc_MediaPlayer_getTime
+Java_org_videolan_libvlc_MediaPlayer_getTitle
+Java_org_videolan_libvlc_MediaPlayer_getVolume
+Java_org_videolan_libvlc_MediaPlayer_isPlaying
+Java_org_videolan_libvlc_MediaPlayer_isSeekable
+Java_org_videolan_libvlc_MediaPlayer_nativeGetAudioDelay
+Java_org_videolan_libvlc_MediaPlayer_nativeGetAudioTrack
+Java_org_videolan_libvlc_MediaPlayer_nativeGetAudioTracks
+Java_org_videolan_libvlc_MediaPlayer_nativeGetAudioTracksCount
+Java_org_videolan_libvlc_MediaPlayer_nativeGetChapters
+Java_org_videolan_libvlc_MediaPlayer_nativeGetSpuDelay
+Java_org_videolan_libvlc_MediaPlayer_nativeGetSpuTrack
+Java_org_videolan_libvlc_MediaPlayer_nativeGetSpuTracks
+Java_org_videolan_libvlc_MediaPlayer_nativeGetSpuTracksCount
+Java_org_videolan_libvlc_MediaPlayer_nativeGetTitles
+Java_org_videolan_libvlc_MediaPlayer_nativeGetVideoTrack
+Java_org_videolan_libvlc_MediaPlayer_nativeGetVideoTracks
+Java_org_videolan_libvlc_MediaPlayer_nativeGetVideoTracksCount
+Java_org_videolan_libvlc_MediaPlayer_nativeNewFromLibVlc
+Java_org_videolan_libvlc_MediaPlayer_nativeNewFromMedia
+Java_org_videolan_libvlc_MediaPlayer_nativePlay
+Java_org_videolan_libvlc_MediaPlayer_nativeRelease
+Java_org_videolan_libvlc_MediaPlayer_nativeSetAudioDelay
+Java_org_videolan_libvlc_MediaPlayer_nativeSetAudioOutput
+Java_org_videolan_libvlc_MediaPlayer_nativeSetAudioOutputDevice
+Java_org_videolan_libvlc_MediaPlayer_nativeSetAudioTrack
+Java_org_videolan_libvlc_MediaPlayer_nativeSetEqualizer
+Java_org_videolan_libvlc_MediaPlayer_nativeSetMedia
+Java_org_videolan_libvlc_MediaPlayer_nativeSetSpuDelay
+Java_org_videolan_libvlc_MediaPlayer_nativeSetSpuTrack
+Java_org_videolan_libvlc_MediaPlayer_nativeSetSubtitleFile
+Java_org_videolan_libvlc_MediaPlayer_nativeSetVideoTitleDisplay
+Java_org_videolan_libvlc_MediaPlayer_nativeSetVideoTrack
+Java_org_videolan_libvlc_MediaPlayer_nativeStop
+Java_org_videolan_libvlc_MediaPlayer_navigate
+Java_org_videolan_libvlc_MediaPlayer_nextChapter
+Java_org_videolan_libvlc_MediaPlayer_pause
+Java_org_videolan_libvlc_MediaPlayer_previousChapter
+Java_org_videolan_libvlc_MediaPlayer_setChapter
+Java_org_videolan_libvlc_MediaPlayer_setPosition
+Java_org_videolan_libvlc_MediaPlayer_setRate
+Java_org_videolan_libvlc_MediaPlayer_setTime
+Java_org_videolan_libvlc_MediaPlayer_setTitle
+Java_org_videolan_libvlc_MediaPlayer_setVolume
+Java_org_videolan_libvlc_util_VLCUtil_nativeGetThumbnail
+Java_org_videolan_libvlc_VLCObject_nativeDetachEvents



More information about the Android mailing list