File tree Expand file tree Collapse file tree 1 file changed +14
-0
lines changed
src/native/libs/System.Security.Cryptography.Native.Android Expand file tree Collapse file tree 1 file changed +14
-0
lines changed Original file line number Diff line number Diff line change @@ -42,6 +42,20 @@ add_library(System.Security.Cryptography.Native.Android-Static
4242 ${NATIVECRYPTO_SOURCES}
4343)
4444
45+ #
46+ # This is necessary so that dynamic linking of the .NET for Android runtime
47+ # can hide all the other symbols in System.Security.Cryptography.Native.Android.
48+ #
49+ # .NET for Android dynamic runtime linking links all the relevant native BCL
50+ # libraries into a single .so, using the .a archives built here. clang allows
51+ # hiding all the symbols in the .a archive, but there's no (working) way to
52+ # exclude just select symbols from hiding.
53+ #
54+ # Java VM requires that all the functions implementing the `native` methods are
55+ # exported from the shared libraries they are implemented in. Therefore it is
56+ # necessary to put this symbol in a separate .a archive so that we can exclude it
57+ # from hiding described above.
58+ #
4559add_library (System .Security.Cryptography.Native.Android-StaticJNIExport
4660 STATIC
4761 pal_trust_manager_jni_export.c
You can’t perform that action at this time.
0 commit comments