Skip to content

Commit

Permalink
[net10.0] Enable CoreCLR for all platforms.
Browse files Browse the repository at this point in the history
🚧 This is a work in progress: currently it doesn't even build, because we don't
have CoreCLR runtime packs for these platforms 🚧

We'll probably have to bring a few more of the changes here: https://github.com/xamarin/xamarin-macios/compare/net8.0...filipnavara:xamarin-macios:net8.0-coreclr-ioslike?expand=1 (but until we have runtime packs to unblock is, I can't confirm).
  • Loading branch information
rolfbjarne committed Nov 15, 2024
1 parent 5b0c4e7 commit 569afe8
Show file tree
Hide file tree
Showing 3 changed files with 20 additions and 2 deletions.
3 changes: 3 additions & 0 deletions Make.config
Original file line number Diff line number Diff line change
Expand Up @@ -768,6 +768,7 @@ DOTNET_PLATFORMS=
ifdef INCLUDE_IOS
ifdef ENABLE_DOTNET
DOTNET_PLATFORMS+=iOS
DOTNET_CORECLR_PLATFORMS+=iOS
DOTNET_MONOVM_PLATFORMS+=iOS
DOTNET_IOS_BITNESSES+=64
DOTNET_NATIVEAOT_PLATFORMS+=iOS
Expand Down Expand Up @@ -795,6 +796,7 @@ endif # INCLUDE_IOS
ifdef INCLUDE_TVOS
ifdef ENABLE_DOTNET
DOTNET_PLATFORMS+=tvOS
DOTNET_CORECLR_PLATFORMS+=tvOS
DOTNET_MONOVM_PLATFORMS+=tvOS
DOTNET_TVOS_BITNESSES+=64
DOTNET_NATIVEAOT_PLATFORMS+=tvOS
Expand All @@ -810,6 +812,7 @@ endif
ifdef INCLUDE_MACCATALYST
ifdef ENABLE_DOTNET
DOTNET_PLATFORMS+=MacCatalyst
DOTNET_CORECLR_PLATFORMS+=MacCatalyst
DOTNET_MONOVM_PLATFORMS+=MacCatalyst
DOTNET_MACCATALYST_BITNESSES+=64
DOTNET_NATIVEAOT_PLATFORMS+=MacCatalyst
Expand Down
10 changes: 10 additions & 0 deletions builds/package-download/download-packages.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,16 @@

<!-- and get the emscripten workload(s) as well -->
<PackageDownload Include="Microsoft.NET.Workload.Emscripten.net7.Manifest-$(EmscriptenManifestVersionBand)" Version="[$(Emscriptennet7WorkloadVersion)]" Condition="'$(TrackingDotNetRuntimeSeparately)' != ''" />

<!-- remove some CoreCLR packages we don't have yet -->
<PackageDownload Remove="Microsoft.NETCore.App.Runtime.ios-arm64" />
<PackageDownload Remove="Microsoft.NETCore.App.Runtime.iossimulator-x64" />
<PackageDownload Remove="Microsoft.NETCore.App.Runtime.iossimulator-arm64" />
<PackageDownload Remove="Microsoft.NETCore.App.Runtime.tvos-arm64" />
<PackageDownload Remove="Microsoft.NETCore.App.Runtime.tvossimulator-x64" />
<PackageDownload Remove="Microsoft.NETCore.App.Runtime.tvossimulator-arm64" />
<PackageDownload Remove="Microsoft.NETCore.App.Runtime.maccatalyst-x64" />
<PackageDownload Remove="Microsoft.NETCore.App.Runtime.maccatalyst-arm64" />
</ItemGroup>

<Import Project="all-package-references.csproj" />
Expand Down
9 changes: 7 additions & 2 deletions runtime/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -614,11 +614,16 @@ $(foreach platform,$(DOTNET_NATIVEAOT_PLATFORMS),$(foreach rid,$(DOTNET_$(platfo

# a few lookup tables, because the data we have is not always in the format we need it
DOTNET_iphonesimulator_DYLIB_FLAGS=-lmonosgen-2.0 -framework UIKit
DOTNET_iphonesimulator_CORECLR_DYLIB_FLAGS=-lcoreclr
DOTNET_iphoneos_DYLIB_FLAGS=-lmonosgen-2.0 -framework UIKit
DOTNET_iphoneos_CORECLR_DYLIB_FLAGS=-lcoreclr
DOTNET_tvsimulator_DYLIB_FLAGS=-lmonosgen-2.0 -framework UIKit
DOTNET_tvsimulator_CORECLR_DYLIB_FLAGS=-lcoreclr
DOTNET_tvos_DYLIB_FLAGS=-lmonosgen-2.0 -framework UIKit
DOTNET_tvos_CORECLR_DYLIB_FLAGS=-lcoreclr
DOTNET_maccatalyst_DYLIB_FLAGS=-lmonosgen-2.0 -framework UIKit
DOTNET_mac_DYLIB_FLAGS=-lcoreclr
DOTNET_maccatalyst_CORECLR_DYLIB_FLAGS=-lcoreclr
DOTNET_mac_CORECLR_DYLIB_FLAGS=-lcoreclr

#
# DotNetInstallLibTemplate lipos or copies libraries into the destination directories
Expand Down Expand Up @@ -675,7 +680,7 @@ $(foreach platform,$(DOTNET_PLATFORMS),$(foreach rid,$(DOTNET_$(platform)_RUNTIM
define DotNetLibXamarinTemplate

DOTNET$(6)_$(2)_LIBDIR ?= $$(TOP)/packages/microsoft.netcore.app.runtime$(7).$(2)/$(BUNDLED_NETCORE_PLATFORMS_PACKAGE_VERSION)/runtimes/$(2)/native
DOTNET$(6)_$(2)_DYLIB_FLAGS = $(DOTNET_$(1)_DYLIB_FLAGS) -Wl,-install_name,libxamarin$(5).dylib -framework Foundation -framework CFNetwork -lz -L$(abspath $(DOTNET$(6)_$(2)_LIBDIR))
DOTNET$(6)_$(2)_DYLIB_FLAGS = $(DOTNET_$(1)$(6)_DYLIB_FLAGS) -Wl,-install_name,libxamarin$(5).dylib -framework Foundation -framework CFNetwork -lz -L$(abspath $(DOTNET$(6)_$(2)_LIBDIR))

DOTNET_$(2)_$(3)$(4)_OBJECTS = $$(patsubst %,.libs/$(1)/%$(5).$(3).o, $(MONOTOUCH_SOURCE_STEMS)) $$(patsubst %,.libs/$(1)/%$(5).$(3).o, $(MONOTOUCH_$(shell echo $(3) | tr a-z A-Z)_SOURCE_STEMS))

Expand Down

0 comments on commit 569afe8

Please sign in to comment.