Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[DRAFT][MONO][TEST] Wasm AOT runtime tests #57963

Closed
wants to merge 39 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
39 commits
Select commit Hold shift + click to select a range
5376fb6
Initial commit.
Aug 13, 2021
3705379
Initial commit.
Aug 13, 2021
6230cfc
copy emsdk to coreroot.
Apr 24, 2021
0b9ef1b
Added esdkpath to core_root
Apr 24, 2021
b3e96d1
Added runtime pack to stuff to copy.
Apr 26, 2021
be74f33
Added trimming.
Apr 26, 2021
324cc73
Added publish option.
Apr 29, 2021
88a37e1
Modified targets for publishing.
May 6, 2021
0f74a9f
Use trimming.
May 11, 2021
1ff6a63
Changes to WasmApp.targets
Jun 23, 2021
d1152fa
Copy entire runtime pack.
Aug 6, 2021
ef25923
More debugging.
Aug 12, 2021
8f4363b
Copied EMSDK.
Sep 8, 2021
9dffb91
Copied EMSDK_PATH.
Sep 8, 2021
ca5256f
Changed where emsdk gets copied to.
Sep 10, 2021
1780c07
Copy monoaotcompiler.
Sep 10, 2021
e85f2d4
Copy mono-aot-cross
Sep 16, 2021
60003a3
Make core_root directory structure similar to what is used by librari…
Sep 17, 2021
4fa5f7d
Added missing /
Sep 29, 2021
076f31e
Change WasmTestRunner to point to stuff via CORE_ROOT.
Sep 29, 2021
9cfeb1e
Removed redundant import.
Oct 1, 2021
e8359f6
Got rid of uneeded copy.
Oct 18, 2021
c7e3253
Fixed properties around import.
Oct 19, 2021
35e1532
Added publish to wasmtestrunner
Oct 22, 2021
0110e0a
Added debugging to bash script template.
Oct 26, 2021
91ba30f
Changed TargetFrameworks to TargetFramework
Oct 26, 2021
ce889b6
Added simple test.
Oct 27, 2021
c92b760
Added simple.cs
Oct 27, 2021
1c587cd
Patch from Ankit
Oct 28, 2021
7c945bc
Ankit patch to /mono/wasm/data/aot-tests/Directory.Build.props
Oct 28, 2021
72531ec
Copy the aot Directory.Build.props/targets into wasm-test-runner.
Oct 28, 2021
ce9e380
Added more binlog to build.proj
Nov 8, 2021
81d7d1c
Added WasmTestBuilder.
Nov 10, 2021
65abebc
Changes to use WasmTestBuilder.
Nov 10, 2021
de72a2b
Added _WasmSelectRuntimeComponentsForLinkingInTree
Nov 12, 2021
23c1e03
Enable publishing of test projects.
Nov 17, 2021
4cc42b6
Changed to use local build stuff.
Nov 22, 2021
a2ceb27
DisableImplicitFrameworkReferences=false
Nov 23, 2021
3346653
Remove apphost property and make sure to load Wasm.InTree.targets ins…
Nov 23, 2021
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
20 changes: 17 additions & 3 deletions src/mono/wasm/build/WasmApp.Native.targets
Original file line number Diff line number Diff line change
Expand Up @@ -240,7 +240,7 @@

<PInvokeTableGenerator
Modules="@(_WasmPInvokeModules)"
Assemblies="@(_WasmAssembliesInternal)"
Assemblies="@(_WasmAssembliesInternal);$(MicrosoftNetCoreAppRuntimePackRidDir)native/System.Private.CoreLib.dll"
OutputPath="$(_WasmPInvokeTablePath)">
<Output TaskParameter="FileWrites" ItemName="FileWrites" />
</PInvokeTableGenerator>
Expand All @@ -257,14 +257,28 @@

<IcallTableGenerator
RuntimeIcallTableFile="$(_WasmRuntimeICallTablePath)"
Assemblies="@(_WasmAssembliesInternal)"
Assemblies="@(_WasmAssembliesInternal);$(MicrosoftNetCoreAppRuntimePackRidDir)native/System.Private.CoreLib.dll"
OutputPath="$(_WasmICallTablePath)">
<Output TaskParameter="FileWrites" ItemName="FileWrites" />
</IcallTableGenerator>
</Target>

<Target Name="_WasmSelectRuntimeComponentsForLinking" Condition="'$(WasmNativeWorkload)' == true" DependsOnTargets="_MonoSelectRuntimeComponents" />

<Target Name="_WasmSelectRuntimeComponentsForLinkingInTree" Condition="'$(WasmNativeWorkload)' != 'true'" >
<ItemGroup>
<_MonoRuntimeComponentDontLink Include="libmono-component-diagnostics_tracing-static.a"/>
</ItemGroup>
<ItemGroup Condition="'$(Configuration)' != 'Debug'">
<_MonoRuntimeComponentDontLink Include="libmono-component-hot_reload-static.a"/>
<_MonoRuntimeComponentDontLink Include="libmono-component-debugger-static.a"/>
</ItemGroup>
<ItemGroup Condition="'$(Configuration)' == 'Debug'">
<_MonoRuntimeComponentDontLink Include="libmono-component-hot_reload-stub-static.a"/>
<_MonoRuntimeComponentDontLink Include="libmono-component-debugger-stub-static.a"/>
</ItemGroup>
</Target>

<Target Name="_WasmCompileNativeFiles">
<PropertyGroup>
<_EmBuilder Condition="$([MSBuild]::IsOSPlatform('WINDOWS'))">embuilder.bat</_EmBuilder>
Expand Down Expand Up @@ -368,7 +382,7 @@
<Target Name="_WasmLinkDotNet"
Inputs="@(_WasmLinkDependencies);$(_EmccDefaultFlagsRsp);$(_EmccLinkRsp)"
Outputs="$(_WasmIntermediateOutputPath)dotnet.js;$(_WasmIntermediateOutputPath)dotnet.wasm"
DependsOnTargets="_WasmSelectRuntimeComponentsForLinking;_WasmCompileAssemblyBitCodeFilesForAOT;_WasmWriteRspFilesForLinking"
DependsOnTargets="_WasmSelectRuntimeComponentsForLinking;_WasmSelectRuntimeComponentsForLinkingInTree;_WasmCompileAssemblyBitCodeFilesForAOT;_WasmWriteRspFilesForLinking"
Returns="@(FileWrites)" >

<Message Text="Linking with emcc. This may take a while ..." Importance="High" />
Expand Down
2 changes: 1 addition & 1 deletion src/mono/wasm/build/WasmApp.targets
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
- $(WasmBuildNative) - Whenever to build the native executable. Defaults to false.
- $(WasmNativeStrip) - Whenever to strip the native executable. Defaults to true.
- $(WasmLinkIcalls) - Whenever to link out unused icalls. Defaults to $(WasmBuildNative).
- $(RunAOTCompilation) - Defaults to false.
- $( ) - Defaults to false.

- $(WasmDebugLevel)
> 0 enables debugging and sets the debug log level to debug_level
Expand Down
9 changes: 7 additions & 2 deletions src/mono/wasm/data/aot-tests/Directory.Build.props
Original file line number Diff line number Diff line change
@@ -1,11 +1,16 @@
<Project>
<PropertyGroup>
<WasmBuildSupportDir>$(CORE_ROOT)/build/</WasmBuildSupportDir>
</PropertyGroup>

<PropertyGroup Condition="'$(HELIX_CORRELATION_PAYLOAD)' != ''">
<WasmBuildSupportDir Condition="'$(WasmBuildSupportDir)' == ''">$(HELIX_CORRELATION_PAYLOAD)\build\</WasmBuildSupportDir>
<_WasmTargetsDir>$(WasmBuildSupportDir)\wasm\</_WasmTargetsDir>
<EMSDK_PATH>$(WasmBuildSupportDir)\emsdk\</EMSDK_PATH>
</PropertyGroup>

<PropertyGroup >
<_WasmTargetsDir>$(WasmBuildSupportDir)\wasm\</_WasmTargetsDir>
<EMSDK_PATH>$(WasmBuildSupportDir)\emsdk\</EMSDK_PATH>

<_WasmTargetsDir Condition="'$(_WasmTargetsDir)' == '' and '$(RuntimeSrcDir)' != ''">$(RuntimeSrcDir)\src\mono\wasm\build\</_WasmTargetsDir>
<_WasmTargetsDir Condition="'$(_WasmTargetsDir)' != ''">$([MSBuild]::EnsureTrailingSlash($(_WasmTargetsDir)))</_WasmTargetsDir>
</PropertyGroup>
Expand Down
9 changes: 7 additions & 2 deletions src/tests/Common/CLRTest.Execute.Bash.targets
Original file line number Diff line number Diff line change
Expand Up @@ -287,7 +287,7 @@ fi
<PropertyGroup>
<CLRTestRunFile Condition="'$(CLRTestIsHosted)'=='true'">"$CORE_ROOT/corerun" $(CoreRunArgs) ${__DotEnvArg}</CLRTestRunFile>

<BashCLRTestPreCommands Condition="'$(CLRTestKind)' == 'BuildAndRun' and '$(TargetArchitecture)' == 'wasm'">
<BashCLRTestPreCommands Condition=" '$(CLRTestKind)' == 'BuildAndRun' and '$(TargetArchitecture)' == 'wasm' ">
<![CDATA[
# Build wasm app containing the test dll
__Command=""
Expand All @@ -297,11 +297,14 @@ else
__Command+=" dotnet"
fi

$__Command msbuild $CORE_ROOT/wasm-test-runner/WasmTestRunner.proj /p:NetCoreAppCurrent=$(NetCoreAppCurrent) /p:TestAssemblyFileName=$(MsBuildProjectName).dll /p:TestBinDir=`pwd` $(CLRTestMSBuildArgs) || exit $?

export MONO_PATH=$CORE_ROOT/runtimepack/native/
$__Command msbuild $CORE_ROOT/wasm-test-runner/WasmTestRunner.proj /p:RunAOTCompilation=true /p:NetCoreAppCurrent=$(NetCoreAppCurrent) /p:TestAssemblyFileName=$(MsBuildProjectName).dll /p:TestBinDir=`pwd` $(CLRTestMSBuildArgs) /bl:$(MsBuildProjectName).binlog || exit $?

]]>
</BashCLRTestPreCommands>


<BashCLRTestLaunchCmds Condition="'$(CLRTestKind)' == 'BuildAndRun' And $(TargetOS) != 'Browser' And '$(TargetOS)' != 'Android' And '$(TargetArchitecture)' != 'arm64'">
<![CDATA[
$(BashLinkerTestLaunchCmds)
Expand Down Expand Up @@ -505,6 +508,8 @@ set -e
<CLRTestExecutionScriptHeader Condition=" $(TargetOS) != 'Android' ">
<![CDATA[
%23%21/usr/bin/env bash
set -x
set -e
]]></CLRTestExecutionScriptHeader>

<!-- NOTE! semicolons must be escaped with %3B boooo -->
Expand Down
46 changes: 31 additions & 15 deletions src/tests/Common/Directory.Build.targets
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,8 @@
<GCStressDependsOnCoreDisTools Condition="'$(TargetOS)' == 'Linux' And '$(TargetArchitecture)' == 'x64'">true</GCStressDependsOnCoreDisTools>
<CopyCoreDisToolsToCoreRoot>false</CopyCoreDisToolsToCoreRoot>
<CopyCoreDisToolsToCoreRoot Condition="$(GCStressDependsOnCoreDisTools) And '$(DotNetBuildFromSource)' != 'true'">true</CopyCoreDisToolsToCoreRoot>
<EmSdkDir>$([MSBuild]::NormalizeDirectory('$(RepoRoot)', 'src', 'mono', 'wasm', 'emsdk'))</EmSdkDir>
<MicrosoftNetCoreAppRuntimePackDir>$([MSBuild]::NormalizeDirectory('$(ArtifactsBinDir)', 'microsoft.netcore.app.runtime.$(PackageRID)', '$(Configuration)'))</MicrosoftNetCoreAppRuntimePackDir>
</PropertyGroup>

<Import Project="$(RepositoryEngineeringDir)coredistools.targets" Condition="$(CopyCoreDisToolsToCoreRoot)" />
Expand Down Expand Up @@ -120,49 +122,63 @@
</ItemGroup>

<ItemGroup Condition="'$(TargetArchitecture)' == 'wasm'">

<RunTimeDependencyCopyLocal
Include="@(RuntimeFiles)"
TargetDir="runtimepack/native/"/>
Include="$(EmSdkDir)\**"
TargetDir="build/emsdk/"/>

<!-- This throws everything in 'native', include many non-native assemblies.
This is done because LibrariesRuntimeFiles includes some .js files that
WasmAppBuilder expects in native/-->
<RunTimeDependencyCopyLocal
Include="@(LibrariesRuntimeFiles)"
TargetDir="runtimepack/native/%(LibrariesRuntimeFiles.NativeSubDirectory)/"
Condition="'%(LibrariesRuntimeFiles.NativeSubDirectory)' != ''" />
Include="$(ArtifactsBinDir)\MonoTargetsTasks\Debug\$(NetCoreAppToolCurrent)\**"
TargetDir="build/MonoTargetsTasks/"/>

<_RuntimePackFiles Include="$(MicrosoftNetCoreAppRuntimePackDir)\**\*" TargetDir="build/microsoft.netcore.app.runtime.browser-wasm/%(RecursiveDir)/" />
<RunTimeDependencyCopyLocal Include="@(_RuntimePackFiles)" TargetDir="%(_RuntimePackFiles.TargetDir)" />

<RuntimeDependencyCopyLocal
Include="$(MonoAotCrossDir)/**"
TargetDir="build/cross/"
/>

<RunTimeDependencyCopyLocal
Include="@(LibrariesRuntimeFiles)"
TargetDir="runtimepack/native/"
Condition="'%(LibrariesRuntimeFiles.NativeSubDirectory)' == ''" />


<RunTimeDependencyCopyLocal
Include="$(ArtifactsDir)\TargetingPack\**"
TargetDir="TargetingPack/"/>

<!-- Wasm App Builder always builds in Debug -->
<RunTimeDependencyCopyLocal
Include="$(ArtifactsBinDir)\WasmAppBuilder\Debug\$(NetCoreAppToolCurrent)\**"
TargetDir="WasmAppBuilder/"/>
TargetDir="build/WasmAppBuilder/"/>

<RunTimeDependencyCopyLocal
Include="$(ArtifactsBinDir)\MonoTargetsTasks\Debug\$(NetCoreAppToolCurrent)\publish\**"
TargetDir="WasmAppBuilder/"/>

<RunTimeDependencyCopyLocal
Include="$(ArtifactsBinDir)\MonoAOTCompiler\Debug\$(NetCoreAppToolCurrent)\**"
TargetDir="build/MonoAOTCompiler/" />

<RunTimeDependencyCopyLocal
Include="$(RepoRoot)\src\tests\Common\wasm-test-runner\WasmTestRunner.proj"
Include="$(RepoRoot)\src\tests\Common\wasm-test-runner\*"
TargetDir="wasm-test-runner/"/>

<RuntimeDependencyCopyLocal
Include="$(MonoProjectRoot)\wasm\data\aot-tests\Directory.Build.*"
TargetDir="wasm-test-runner/" />

<RunTimeDependencyCopyLocal
Include="$(MonoProjectRoot)\wasm\runtime-test.js"
TargetDir="runtime-test/"/>

<RunTimeDependencyCopyLocal
Include="$(MonoProjectRoot)\wasm\build\*"
TargetDir="build/"/>
TargetDir="build/wasm/"/>

</ItemGroup>


<Message Text="!!!naricc_debug!!!: MonoAotCrossCompiler: $(MonoAotCrossCompiler) MonoAotCompilerDir: $(MonoAOTCompilerDir) EmSdkDir: $(EmSdkDir) CopyDependencyToCoreRoot: MicrosoftNetCoreAppRuntimePackDir: $(MicrosoftNetCoreAppRuntimePackDir): TagetArchitecture: $(TargetArchitecture)" Importance="high" />

<ItemGroup>
<RunTimeDependencyCopyLocal Include="$(CoreDisToolsLibrary)" Condition="$(CopyCoreDisToolsToCoreRoot)" />
</ItemGroup>
Expand Down
9 changes: 8 additions & 1 deletion src/tests/Common/dir.traversal.targets
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,14 @@

<Target Name="BuildAllProjects">
<PropertyGroup>
<DefaultBuildAllTarget Condition="'$(DefaultBuildAllTarget)'==''">$(MSBuildProjectDefaultTargets)</DefaultBuildAllTarget>
<DefaultBuildAllTarget Condition="'$(DefaultBuildAllTarget)'=='' and '$(TargetArchitecture)' != 'wasm'" >$(MSBuildProjectDefaultTargets)</DefaultBuildAllTarget>
<DefaultBuildAllTarget Condition="'$(DefaultBuildAllTarget)'=='' and '$(TargetArchitecture)' == 'wasm'" >Publish</DefaultBuildAllTarget>
</PropertyGroup>

<Message Text="!!!naricc_debug!!!: BuildAllProjects: Project: @(Project)" Importance="High"/>



<!-- To Serialize we use msbuild's batching functionality '%' to force it to batch all similar projects with the same identity
however since the project names are unique it will essentially force each to run in its own batch -->
<MSBuild Targets="$(DefaultBuildAllTarget)"
Expand Down Expand Up @@ -84,6 +89,8 @@

<!-- To Serialize we use msbuild's batching functionality '%' to force it to batch all similar projects with the same identity
however since the project names are unique it will essentially force each to run in its own batch -->
<Message Text="!!!naricc_debug!!!: CopyAllNativeTestProjectBinaries: Project: @(Project)" Importance="High"/>

<MSBuild Targets="$(DefaultCopyAllNativeTestProjectBinariesTarget)"
Projects="@(Project)"
Condition="'$(SerializeProjects)'=='true'"
Expand Down
19 changes: 19 additions & 0 deletions src/tests/Common/wasm-test-runner/WasmTestBuilder.proj
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
<Project DefaultTargets="PublishTest" Sdk="Microsoft.NET.Sdk">
<ItemGroup>
<TrimmerRootAssembly Include="$(MSBuildProjectName)" />
<TrimmerRootAssembly Include="System.Private.Corelib" />
<TrimmerRootAssembly Include="mscorlib" />
</ItemGroup>

<ItemGroup>
<ProjectReference Include="$(TestTarget)" />
</ItemGroup>

<PropertyGroup>
<TrimmerSingleWarn>false</TrimmerSingleWarn>
<PublishTrimmed>true</PublishTrimmed>
<SelfContained>true</SelfContained>
<TargetFramework>net6.0</TargetFramework>
<RuntimeIdentifier>browser-wasm</RuntimeIdentifier>
</PropertyGroup>
</Project>
48 changes: 29 additions & 19 deletions src/tests/Common/wasm-test-runner/WasmTestRunner.proj
Original file line number Diff line number Diff line change
@@ -1,47 +1,57 @@
<!-- This project requires an explicit SDK version number because it is used on Helix,
and global.json is not available. -->
<Project Sdk="Microsoft.Build.NoTargets/1.0.53" DefaultTargets="WasmBuildApp">
<Import Project="$(CORE_ROOT)\build\WasmApp.InTree.props" />
<Project DefaultTargets="WasmBuildApp">
<Import Project="$(MSBuildThisFileDirectory)Directory.Build.props" />
<PropertyGroup>
<EnableDefaultCompileItems>false</EnableDefaultCompileItems>
<MicrosoftNetCoreAppRuntimePackDir>$(CORE_ROOT)\runtimepack-non-existant</MicrosoftNetCoreAppRuntimePackDir>
<MicrosoftNetCoreAppRuntimePackRidDir>$(CORE_ROOT)\runtimepack</MicrosoftNetCoreAppRuntimePackRidDir>
<TargetFramework>$(NetCoreAppCurrent)</TargetFramework>
<!-- TODO: Target frameowkr should not be hard coded, but I need to propagate NetCoreAppToolCurrent? -->
<TargetFramework>net6.0</TargetFramework>
<BuildDir>$(MSBuildThisFileDirectory)\obj\$(Configuration)\wasm</BuildDir>
<AppDir>$(TestBinDir)/WasmApp/</AppDir>
<PackageRID>browser-wasm</PackageRID>
<NETCoreAppMaximumVersion>99.0</NETCoreAppMaximumVersion>
<IsWasmProject>true</IsWasmProject>
<WasmGenerateAppBundle>true</WasmGenerateAppBundle>
<AssemblyName>simple</AssemblyName>

<WasmAppBuilderTasksAssemblyPath>$(CORE_ROOT)\WasmAppBuilder\WasmAppBuilder.dll</WasmAppBuilderTasksAssemblyPath>
<MonoAOTCompilerTasksAssemblyPath>$(CORE_ROOT)\MonoAOTCompiler\MonoAOTCompiler.dll</MonoAOTCompilerTasksAssemblyPath>
<MonoTargetsTasksAssemblyPath>$(CORE_ROOT)\MonoTargetsTasks\MonoTargetsTasks.dll</MonoTargetsTasksAssemblyPath>
<WasmBuildAppDependsOn>BuildApp;$(WasmBuildAppDependsOn)</WasmBuildAppDependsOn>
<TestRootDir Condition="'$(HELIX_WORKITEM_ROOT)' != ''">$(HELIX_WORKITEM_ROOT)\wasm_build\</TestRootDir>
<TestRootDir Condition="'$(HELIX_WORKITEM_ROOT)' == ''">$(MSBuildThisFileDirectory)..\wasm_build\</TestRootDir>

<IntermediateOutputPath>$(TestRootDir)\obj\</IntermediateOutputPath>
<PublishTrimmed>true</PublishTrimmed>
<RuntimeIdentifier>browser-wasm</RuntimeIdentifier>
<OriginalPublishDir>$(TestBinDir)\publish\</OriginalPublishDir>
<RunAOTCompilationAfterBuild>true</RunAOTCompilationAfterBuild>
</PropertyGroup>

<Target Name="BuildApp">
<PropertyGroup>
<WasmBuildAppDependsOn>PrepareForWasmBuildApp;$(WasmBuildAppDependsOn)</WasmBuildAppDependsOn>
</PropertyGroup>

<Target Name="PrepareForWasmBuildApp">
<PropertyGroup>
<WasmMainAssemblyFileName>$(TestAssemblyFileName)</WasmMainAssemblyFileName>
<WasmMainAssemblyFileName>$(OriginalPublishDir)WasmTestRunner.dll</WasmMainAssemblyFileName>
<WasmAppDir>$(AppDir)</WasmAppDir>
<WasmMainJSPath>$(CORE_ROOT)\runtime-test\runtime-test.js</WasmMainJSPath>
<WasmResolveAssembliesBeforeBuild>true</WasmResolveAssembliesBeforeBuild>
<WasmResolveAssembliesBeforeBuild>false</WasmResolveAssembliesBeforeBuild>
<WasmGenerateRunV8Script>true</WasmGenerateRunV8Script>
<WasmSkipMissingAssemblies>true</WasmSkipMissingAssemblies>
<AssemblySearchPaths>$(TestBinDir)/publish;$(TestBinDir)/publish/refs;$(MicrosoftNetCoreAppRuntimePackDir)/native/</AssemblySearchPaths>
</PropertyGroup>

<Message Text="!!!naricc_debug!!!: WasmTestRunner: TestBinDir: $(TestBinDir): Corelib: $(MicrosoftNetCoreAppRuntimePackDir)native/System.Private.CoreLib.dll" Importance="high" />

<ItemGroup>
<WasmAssembliesToBundle Include="$(TestBinDir)\*.dll" />
<WasmAssembliesToBundle Include="$(CORE_ROOT)\System.Private.Runtime.InteropServices.JavaScript.dll" />
<WasmAssemblySearchPaths Include="$(MicrosoftNetCoreAppRuntimePackRidDir)\native"/>
<WasmAssemblySearchPaths Include="$(MicrosoftNetCoreAppRuntimePackRidDir)"/>
<WasmAssemblySearchPaths Include="$(CORE_ROOT)/TargetingPack" />
<WasmAssemblySearchPaths Include="$(TestBinDir)" />
<WasmAssembliesToBundle Include="$(TestBinDir)\publish\*.dll" />
<WasmAssembliesToBundle Include="$(MicrosoftNetCoreAppRuntimePackDir)runtimes/browser-wasm/native/System.Private.CoreLib.dll" />
<WasmAssembliesToBundle Include="$(MicrosoftNetCoreAppRuntimePackDir)runtimes/browser-wasm/lib/net7.0/System.Runtime.dll" />
<WasmAssembliesToBundle Include="$(MicrosoftNetCoreAppRuntimePackDir)runtimes/browser-wasm/lib/net7.0/System.Private.Runtime.InteropServices.JavaScript.dll" />
</ItemGroup>

<Message Importance="High" Text="AppDir: $(AppDir)" />
<Message Importance="High" Text="TestBinDir: $(TestBinDir)" />
<Message Importance="High" Text="ArtifactsBinDir: $(ArtifactsBinDir)" />
</Target>

<Import Project="$(CORE_ROOT)\build\WasmApp.InTree.targets" />
<Import Project="$(MSBuildThisFileDirectory)Directory.Build.targets" />
</Project>
Loading