Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion eng/Subsets.props
Original file line number Diff line number Diff line change
Expand Up @@ -111,7 +111,7 @@
<DefaultCoreClrSubsets Condition="'$(TargetRid)' == 'linux-armel'">clr.native+clr.corelib+clr.tools+clr.nativecorelib+clr.packages+clr.nativeaotlibs+clr.crossarchtools</DefaultCoreClrSubsets>
<DefaultCoreClrSubsets Condition="'$(TargetsAndroid)' == 'true'">clr.native+clr.corelib+clr.tools+clr.nativecorelib+clr.packages+clr.nativeaotlibs+clr.crossarchtools</DefaultCoreClrSubsets>
<DefaultCoreClrSubsets Condition="'$(TargetsAppleMobile)' == 'true'">clr.native+clr.corelib+clr.tools+clr.nativecorelib+clr.packages+clr.nativeaotlibs+clr.crossarchtools</DefaultCoreClrSubsets>
<DefaultCoreClrSubsets Condition="'$(TargetsBrowser)' == 'true'">mono.emsdk+clr.native+clr.corelib+clr.tools+clr.packages+clr.crossarchtools+host.native</DefaultCoreClrSubsets>
<DefaultCoreClrSubsets Condition="'$(TargetsBrowser)' == 'true'">mono.emsdk+clr.native+clr.corelib+clr.nativecorelib+clr.tools+clr.packages+clr.crossarchtools+host.native</DefaultCoreClrSubsets>
<!-- Even on platforms that do not support the CoreCLR runtime, we still want to build ilasm/ildasm. -->
<DefaultCoreClrSubsets Condition="'$(RuntimeFlavor)' != 'CoreCLR'">clr.iltools+clr.packages</DefaultCoreClrSubsets>

Expand Down
2 changes: 1 addition & 1 deletion eng/pipelines/runtime.yml
Original file line number Diff line number Diff line change
Expand Up @@ -111,7 +111,7 @@ extends:
- browser_wasm_win
jobParameters:
nameSuffix: AllSubsets_CoreCLR
buildArgs: -s clr+libs -c $(_BuildConfig) -lc Release
buildArgs: -s clr+libs+packs -c $(_BuildConfig) -lc Release
timeoutInMinutes: 120
postBuildSteps:
- template: /eng/pipelines/common/templates/runtimes/build-runtime-tests.yml
Expand Down
11 changes: 11 additions & 0 deletions src/coreclr/crossgen-corelib.proj
Original file line number Diff line number Diff line change
Expand Up @@ -96,10 +96,21 @@
</ItemGroup>
</Target>

<Target Name="InvokeCrossgenBrowser"
DependsOnTargets="PrepareInvokeCrossgen"
Inputs="@(Crossgen2Inputs)"
Outputs="$(CoreLibOutputPath)"
Condition="'$(TargetOS)' == 'browser'"
AfterTargets="Build">
<!-- TODO-WASM: we will have WASM R2R later, for now we just need to copy the file into expected location -->
<Copy SourceFiles="@(CoreLib)" DestinationFiles="$(CoreLibOutputPath)" UseHardlinksIfPossible="true" />
</Target>

<Target Name="InvokeCrossgen"
DependsOnTargets="PrepareInvokeCrossgen;CreateMergedMibcFile"
Inputs="@(Crossgen2Inputs)"
Outputs="$(CoreLibOutputPath);$(CoreLibNiPdbPath);$(CoreLibPerfMapPath)"
Condition="'$(TargetOS)' != 'browser'"
AfterTargets="Build">

<MakeDir
Expand Down
15 changes: 15 additions & 0 deletions src/installer/pkg/sfx/Microsoft.NETCore.App/Directory.Build.props
Original file line number Diff line number Diff line change
Expand Up @@ -261,6 +261,21 @@
<PlatformManifestFileEntry Include="wasi-link.rsp" IsNative="true" />
<PlatformManifestFileEntry Include="ILLink.Substitutions.WasmIntrinsics.xml" IsNative="true" />
<PlatformManifestFileEntry Include="ILLink.Substitutions.NoWasmIntrinsics.xml" IsNative="true" />
<!-- CoreCLR WASM-specific files -->
<PlatformManifestFileEntry Include="libclrinterpreter.a" IsNative="true" />
<PlatformManifestFileEntry Include="libcoreclrminipal.a" IsNative="true" />
<PlatformManifestFileEntry Include="libcoreclrpal.a" IsNative="true" />
<PlatformManifestFileEntry Include="libgcinfo_unix_wasm.a" IsNative="true" />
<PlatformManifestFileEntry Include="libminipal.a" IsNative="true" />
<PlatformManifestFileEntry Include="libnativeresourcestring.a" IsNative="true" />
<PlatformManifestFileEntry Include="libBrowserHost.js" IsNative="true" />
<PlatformManifestFileEntry Include="libBrowserHost.js.map" IsNative="true" />
<PlatformManifestFileEntry Include="libSystem.Browser.Utils.js" IsNative="true" />
<PlatformManifestFileEntry Include="libSystem.Browser.Utils.js.map" IsNative="true" />
<PlatformManifestFileEntry Include="libSystem.Native.Browser.js" IsNative="true" />
<PlatformManifestFileEntry Include="libSystem.Native.Browser.js.map" IsNative="true" />
<PlatformManifestFileEntry Include="libSystem.Runtime.InteropServices.JavaScript.Native.js" IsNative="true" />
<PlatformManifestFileEntry Include="libSystem.Runtime.InteropServices.JavaScript.Native.js.map" IsNative="true" />
<!-- wasi specific -->
<PlatformManifestFileEntry Include="main.c" IsNative="true" />
<PlatformManifestFileEntry Include="driver.h" IsNative="true" />
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,8 @@
<PublishReadyToRun>true</PublishReadyToRun>
<!-- Disable crossgen on NetBSD, illumos, Solaris and Haiku for now. This can be revisited when we have full support. -->
<PublishReadyToRun Condition="'$(TargetOS)' == 'netbsd' or '$(TargetOS)' == 'illumos' or '$(TargetOS)' == 'solaris' or '$(TargetOS)' == 'haiku'">false</PublishReadyToRun>
<!-- TODO-WASM: we will have WASM R2R after https://github.com/dotnet/runtime/issues/121257 -->
<PublishReadyToRun Condition="'$(TargetOS)' == 'browser' or '$(TargetOS)' == 'wasi'">false</PublishReadyToRun>
<PublishReadyToRun Condition="'$(StageTwoBuild)'=='true'">false</PublishReadyToRun>
<UsesMuxerHostModel Condition="'$(TargetsMobile)' != 'true'">true</UsesMuxerHostModel>
<IncludeDiaSymReaderNative Condition="'$(TargetOS)' == 'windows'">true</IncludeDiaSymReaderNative>
Expand Down
6 changes: 4 additions & 2 deletions src/native/libs/Common/JavaScript/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -124,5 +124,7 @@ add_custom_target(System.Native.Browser-NpmInstall
DEPENDS ${NPM_INSTALL_OUTPUTS}
)

install(FILES ${ROLLUP_OUTPUTS} DESTINATION sharedFramework COMPONENT runtime)
install(FILES "${CLR_SRC_NATIVE_DIR}/package.json" DESTINATION sharedFramework COMPONENT runtime)
if (NOT CORERUN_LIBS_ONLY)
install(FILES ${ROLLUP_OUTPUTS} DESTINATION sharedFramework COMPONENT runtime)
install(FILES "${CLR_SRC_NATIVE_DIR}/package.json" DESTINATION sharedFramework COMPONENT runtime)
endif()
8 changes: 6 additions & 2 deletions src/native/libs/System.Globalization.Native/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -196,7 +196,9 @@ endif()

install (TARGETS System.Globalization.Native-Static DESTINATION ${STATIC_LIB_DESTINATION} COMPONENT libs)
if(CLR_CMAKE_HOST_ANDROID OR CLR_CMAKE_HOST_IOS OR CLR_CMAKE_HOST_TVOS OR CLR_CMAKE_HOST_MACCATALYST OR CLR_CMAKE_TARGET_BROWSER OR CLR_CMAKE_TARGET_WASI)
install (TARGETS System.Globalization.Native-Static DESTINATION sharedFramework COMPONENT runtime)
if (NOT CORERUN_LIBS_ONLY)
install (TARGETS System.Globalization.Native-Static DESTINATION sharedFramework COMPONENT runtime)
endif()
endif()

if(NOT CLR_CMAKE_TARGET_WIN32 AND NOT CLR_CMAKE_TARGET_APPLE AND NOT CLR_CMAKE_TARGET_ANDROID AND NOT CLR_CMAKE_TARGET_LINUX_MUSL AND NOT CLR_CMAKE_TARGET_HAIKU)
Expand Down Expand Up @@ -231,5 +233,7 @@ if((CLR_CMAKE_TARGET_BROWSER OR CLR_CMAKE_TARGET_WASI) AND DEFINED CMAKE_ICU_DIR
"${CMAKE_ICU_DIR}/lib/libicudata.a"
)
install(FILES ${ICU_DATA_AND_LIB_FILES} DESTINATION ${STATIC_LIB_DESTINATION} COMPONENT libs)
install(FILES ${ICU_DATA_AND_LIB_FILES} DESTINATION sharedFramework COMPONENT runtime)
if (NOT CORERUN_LIBS_ONLY)
install(FILES ${ICU_DATA_AND_LIB_FILES} DESTINATION sharedFramework COMPONENT runtime)
endif()
endif()
4 changes: 3 additions & 1 deletion src/native/libs/System.Native.Browser/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,9 @@ add_library(System.Native.Browser-Static
)
set_target_properties(System.Native.Browser-Static PROPERTIES OUTPUT_NAME System.Native.Browser CLEAN_DIRECT_OUTPUT 1)
install(TARGETS System.Native.Browser-Static DESTINATION ${STATIC_LIB_DESTINATION} COMPONENT libs)
install(TARGETS System.Native.Browser-Static DESTINATION sharedFramework COMPONENT runtime)
if (NOT CORERUN_LIBS_ONLY)
install(TARGETS System.Native.Browser-Static DESTINATION sharedFramework COMPONENT runtime)
endif()

add_subdirectory(../Common/JavaScript common-js)
add_dependencies(System.Native.Browser-Static System.Native.Browser-Rollup)
12 changes: 9 additions & 3 deletions src/native/libs/System.Native/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -149,7 +149,9 @@ set_target_properties(System.Native-Static PROPERTIES OUTPUT_NAME System.Native
install (TARGETS System.Native-Static DESTINATION ${STATIC_LIB_DESTINATION} COMPONENT libs)

if(CLR_CMAKE_HOST_ANDROID OR CLR_CMAKE_HOST_IOS OR CLR_CMAKE_HOST_TVOS OR CLR_CMAKE_HOST_MACCATALYST OR CLR_CMAKE_TARGET_BROWSER OR CLR_CMAKE_TARGET_WASI)
install (TARGETS System.Native-Static DESTINATION sharedFramework COMPONENT runtime)
if (NOT CORERUN_LIBS_ONLY)
install (TARGETS System.Native-Static DESTINATION sharedFramework COMPONENT runtime)
endif()
endif()

if (CLR_CMAKE_TARGET_ARCH_WASM AND DEFINED CMAKE_TZD_DIR)
Expand All @@ -164,11 +166,15 @@ if (CLR_CMAKE_TARGET_ARCH_WASM AND DEFINED CMAKE_TZD_DIR)
target_compile_definitions(System.Native.TimeZoneData PRIVATE TZ_DATA_ENABLED)
target_include_directories(System.Native.TimeZoneData PRIVATE "${CMAKE_CURRENT_BINARY_DIR}/inc")
install(TARGETS System.Native.TimeZoneData DESTINATION ${STATIC_LIB_DESTINATION} COMPONENT libs)
install(TARGETS System.Native.TimeZoneData DESTINATION sharedFramework COMPONENT runtime)
if (NOT CORERUN_LIBS_ONLY)
install(TARGETS System.Native.TimeZoneData DESTINATION sharedFramework COMPONENT runtime)
endif()

# Also add a stub to support InvariantTimezone.
add_library(System.Native.TimeZoneData.Invariant STATIC pal_datetime_time_zone_data.c)
add_dependencies(System.Native-Static System.Native.TimeZoneData.Invariant)
install(TARGETS System.Native.TimeZoneData.Invariant DESTINATION ${STATIC_LIB_DESTINATION} COMPONENT libs)
install(TARGETS System.Native.TimeZoneData.Invariant DESTINATION sharedFramework COMPONENT runtime)
if (NOT CORERUN_LIBS_ONLY)
install(TARGETS System.Native.TimeZoneData.Invariant DESTINATION sharedFramework COMPONENT runtime)
endif()
endif ()
Loading