Skip to content

Commit 65cda8b

Browse files
authored
[coreclr][android] Don't build/ship unused GC variants for Android (#114448)
* Do not build or ship standalone GC libs for coreclr android * Do not build server GC into the coreCLR runtime lib on Android * Properly guard server GC specific defines * Remove unnecesarry exclusion
1 parent 24d8707 commit 65cda8b

File tree

4 files changed

+8
-5
lines changed

4 files changed

+8
-5
lines changed

src/coreclr/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ if(CORECLR_SET_RPATH)
2929
set(MACOSX_RPATH ON)
3030
endif(CORECLR_SET_RPATH)
3131

32-
if(CLR_CMAKE_HOST_MACCATALYST OR CLR_CMAKE_HOST_IOS OR CLR_CMAKE_HOST_TVOS OR CLR_CMAKE_HOST_BROWSER)
32+
if(CLR_CMAKE_HOST_MACCATALYST OR CLR_CMAKE_HOST_IOS OR CLR_CMAKE_HOST_TVOS OR CLR_CMAKE_HOST_BROWSER OR CLR_CMAKE_HOST_ANDROID)
3333
set(FEATURE_STANDALONE_GC 0)
3434
endif()
3535

src/coreclr/clrdefinitions.cmake

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -176,7 +176,9 @@ endif (CLR_CMAKE_HOST_UNIX AND CLR_CMAKE_TARGET_UNIX)
176176
if (FEATURE_ENABLE_NO_ADDRESS_SPACE_RANDOMIZATION)
177177
add_definitions(-DFEATURE_ENABLE_NO_ADDRESS_SPACE_RANDOMIZATION)
178178
endif(FEATURE_ENABLE_NO_ADDRESS_SPACE_RANDOMIZATION)
179-
add_definitions(-DFEATURE_SVR_GC)
179+
if (NOT CLR_CMAKE_HOST_ANDROID)
180+
add_definitions(-DFEATURE_SVR_GC)
181+
endif(NOT CLR_CMAKE_HOST_ANDROID)
180182
add_definitions(-DFEATURE_SYMDIFF)
181183
add_compile_definitions(FEATURE_TIERED_COMPILATION)
182184
if (CLR_CMAKE_TARGET_ARCH_AMD64 OR CLR_CMAKE_TARGET_ARCH_ARM64 OR CLR_CMAKE_TARGET_ARCH_LOONGARCH64 OR CLR_CMAKE_TARGET_ARCH_RISCV64)

src/coreclr/vm/amd64/jitinterfaceamd64.cpp

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -709,7 +709,11 @@ bool WriteBarrierManager::NeedDifferentWriteBarrier(bool bReqUpperBoundsCheck, b
709709
}
710710
else
711711
{
712+
#ifdef FEATURE_SVR_GC
712713
writeBarrierType = GCHeapUtilities::IsServerHeap() ? WRITE_BARRIER_SVR64 : WRITE_BARRIER_PREGROW64;
714+
#else
715+
writeBarrierType = WRITE_BARRIER_PREGROW64;
716+
#endif // FEATURE_SVR_GC
713717
}
714718
continue;
715719

src/tasks/AndroidAppBuilder/ApkBuilder.cs

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -451,9 +451,6 @@ public ApkBuilder(TaskLoggingHelper logger)
451451
var excludedLibs = new HashSet<string> { "libmonodroid.so" };
452452
if (IsCoreCLR)
453453
{
454-
// exclude standalone GC libs
455-
excludedLibs.Add("libclrgc.so");
456-
excludedLibs.Add("libclrgcexp.so");
457454
if (StripDebugSymbols)
458455
{
459456
// exclude debugger support libs

0 commit comments

Comments
 (0)