Skip to content

Commit 5e4c5e9

Browse files
committed
Add a stub to create assembly blob DSOs
1 parent 52dfa47 commit 5e4c5e9

File tree

3 files changed

+19
-6
lines changed

3 files changed

+19
-6
lines changed

build-tools/installers/create-installers.targets

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -251,12 +251,16 @@
251251
<_MSBuildFiles Include="$(MicrosoftAndroidSdkOutDir)ManifestOverlays\Timing.xml" />
252252
<_MSBuildFiles Include="$(MicrosoftAndroidSdkOutDir)libstubs\android-arm64\libc.so" />
253253
<_MSBuildFiles Include="$(MicrosoftAndroidSdkOutDir)libstubs\android-arm64\libm.so" />
254+
<_MSBuildFiles Include="$(MicrosoftAndroidSdkOutDir)libstubs\android-arm64\libassembly-blob.so" />
254255
<_MSBuildFiles Include="$(MicrosoftAndroidSdkOutDir)libstubs\android-arm\libc.so" />
255256
<_MSBuildFiles Include="$(MicrosoftAndroidSdkOutDir)libstubs\android-arm\libm.so" />
257+
<_MSBuildFiles Include="$(MicrosoftAndroidSdkOutDir)libstubs\android-arm\libassembly-blob.so" />
256258
<_MSBuildFiles Include="$(MicrosoftAndroidSdkOutDir)libstubs\android-x64\libc.so" />
257259
<_MSBuildFiles Include="$(MicrosoftAndroidSdkOutDir)libstubs\android-x64\libm.so" />
260+
<_MSBuildFiles Include="$(MicrosoftAndroidSdkOutDir)libstubs\android-x64\libassembly-blob.so" />
258261
<_MSBuildFiles Include="$(MicrosoftAndroidSdkOutDir)libstubs\android-x86\libc.so" />
259262
<_MSBuildFiles Include="$(MicrosoftAndroidSdkOutDir)libstubs\android-x86\libm.so" />
263+
<_MSBuildFiles Include="$(MicrosoftAndroidSdkOutDir)libstubs\android-x86\libassembly-blob.so" />
260264
</ItemGroup>
261265
<ItemGroup>
262266
<_MSBuildTargetsSrcFiles Include="$(MSBuildTargetsSrcDir)\Xamarin.Android.AvailableItems.targets" />

src/monodroid/CMakeLists.txt

Lines changed: 13 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -558,6 +558,10 @@ set(XAMARIN_STUB_LIB_SOURCES
558558
libstub/stub.cc
559559
)
560560

561+
set(XAMARIN_ASSEMBLY_BLOB_LIB_SOURCES
562+
libstub/stub-assembly.cc
563+
)
564+
561565
# Build
562566
configure_file(jni/host-config.h.in ${CMAKE_CURRENT_BINARY_DIR}/include/host-config.h)
563567

@@ -706,10 +710,10 @@ target_link_libraries(
706710
)
707711

708712
if(ANDROID AND (NOT ANALYZERS_ENABLED))
709-
macro(xa_add_stub_library _libname)
713+
macro(xa_add_stub_library _libname _sources)
710714
add_library(
711715
${_libname}
712-
SHARED ${XAMARIN_STUB_LIB_SOURCES}
716+
SHARED ${_sources}
713717
)
714718

715719
string(TOUPPER ${_libname} _libname_uc)
@@ -735,10 +739,13 @@ if(ANDROID AND (NOT ANALYZERS_ENABLED))
735739
)
736740
endmacro()
737741

738-
xa_add_stub_library(c)
739-
xa_add_stub_library(m)
742+
xa_add_stub_library(c ${XAMARIN_STUB_LIB_SOURCES})
743+
xa_add_stub_library(m ${XAMARIN_STUB_LIB_SOURCES})
740744

741745
# These two are used by the marshal methods tracing library when linking libxamarin-app.so
742-
xa_add_stub_library(log)
743-
xa_add_stub_library(dl)
746+
xa_add_stub_library(log ${XAMARIN_STUB_LIB_SOURCES})
747+
xa_add_stub_library(dl ${XAMARIN_STUB_LIB_SOURCES})
748+
749+
# Used as input when generating assembly blob DSO
750+
xa_add_stub_library(assembly-blob ${XAMARIN_ASSEMBLY_BLOB_LIB_SOURCES})
744751
endif()
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
extern "C" [[gnu::visibility("default")]]
2+
bool assembly_blob = true;

0 commit comments

Comments
 (0)