diff --git a/eng/Versions.props b/eng/Versions.props index 69b0d0e5038927..afeb33d4b989ec 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -278,7 +278,7 @@ $(MicrosoftDotNetApiCompatTaskVersion) 10.0.0-alpha.1.25169.1 - 10.0.0-preview.4.25217.3 + 10.0.0-preview.7.25359.101 $(runtimewinx64MicrosoftNETCoreRuntimeWasmNodeTransportPackageVersion) 3.1.56 diff --git a/eng/native/gen-buildsys.cmd b/eng/native/gen-buildsys.cmd index 3a6e1b5426d65f..4a6bd162063682 100644 --- a/eng/native/gen-buildsys.cmd +++ b/eng/native/gen-buildsys.cmd @@ -45,19 +45,11 @@ if /i "%__Arch%" == "wasm" ( ) if /i "%__Os%" == "browser" ( if "%EMSDK_PATH%" == "" ( - if not exist "%__repoRoot%\src\mono\browser\emsdk" ( - echo Error: Should set EMSDK_PATH environment variable pointing to emsdk root. - exit /B 1 - ) - - set "EMSDK_PATH=%__repoRoot%\src\mono\browser\emsdk" + echo Error: Should set EMSDK_PATH environment variable pointing to emsdk root. + exit /B 1 ) - :: replace backslash with forward slash and append last slash - set "EMSDK_PATH=!EMSDK_PATH:\=/!" - if not "!EMSDK_PATH:~-1!" == "/" set "EMSDK_PATH=!EMSDK_PATH!/" - set __ExtraCmakeParams=%__ExtraCmakeParams% "-DCMAKE_TOOLCHAIN_FILE=!EMSDK_PATH!/emscripten/cmake/Modules/Platform/Emscripten.cmake" - set __UseEmcmake=1 + set CMakeToolPrefix=emcmake ) if /i "%__Os%" == "wasi" ( set "__repoRoot=!__repoRoot:\=/!" @@ -135,12 +127,8 @@ if not "%__ConfigureOnly%" == "1" ( ) ) -if /i "%__UseEmcmake%" == "1" ( - call "!EMSDK_PATH!/emsdk_env.cmd" > nul 2>&1 && emcmake "%CMakePath%" %__ExtraCmakeParams% --no-warn-unused-cli -G "%__CmakeGenerator%" -B %__IntermediatesDir% -S %__SourceDir% -) else ( - echo "%CMakePath% %__ExtraCmakeParams% --no-warn-unused-cli -G %__CmakeGenerator% -B %__IntermediatesDir% -S %__SourceDir%" - "%CMakePath%" %__ExtraCmakeParams% --no-warn-unused-cli -G "%__CmakeGenerator%" -B %__IntermediatesDir% -S %__SourceDir% -) +echo %CMakeToolPrefix% "%CMakePath% %__ExtraCmakeParams% --no-warn-unused-cli -G %__CmakeGenerator% -B %__IntermediatesDir% -S %__SourceDir%" +%CMakeToolPrefix% "%CMakePath%" %__ExtraCmakeParams% --no-warn-unused-cli -G "%__CmakeGenerator%" -B %__IntermediatesDir% -S %__SourceDir% if "%errorlevel%" == "0" ( echo %__ExtraCmakeParams% > %__CmdLineOptionsUpToDateFile% diff --git a/src/coreclr/runtime.proj b/src/coreclr/runtime.proj index 58bb7df9dde4cf..f495228c976ea9 100644 --- a/src/coreclr/runtime.proj +++ b/src/coreclr/runtime.proj @@ -108,13 +108,13 @@ <_CoreClrBuildScript Condition="$([MSBuild]::IsOsPlatform(Windows))">build-runtime.cmd <_CoreClrBuildScript Condition="!$([MSBuild]::IsOsPlatform(Windows))">build-runtime.sh - <_CoreClrBuildPreSource Condition="'$(TargetsBrowser)' == 'true' and $([MSBuild]::IsOsPlatform(Windows))">"$([MSBuild]::NormalizePath('$(RepoRoot)src/mono/browser/emsdk', 'emsdk_env.cmd'))" && + <_CoreClrBuildPreSource Condition="'$(TargetsBrowser)' == 'true' and $([MSBuild]::IsOsPlatform(Windows))">call "$([MSBuild]::NormalizePath('$(RepoRoot)src/mono/browser/emsdk', 'emsdk_env.cmd'))" && <_CoreClrBuildPreSource Condition="'$(TargetsBrowser)' == 'true' and !$([MSBuild]::IsOsPlatform(Windows))">source "$(RepoRoot)src/mono/browser/emsdk/emsdk_env.sh" && - - + diff --git a/src/mono/mono.proj b/src/mono/mono.proj index 2517ffe86d89d1..2cb4ba6ffec9f1 100644 --- a/src/mono/mono.proj +++ b/src/mono/mono.proj @@ -17,8 +17,6 @@ .cmd .sh \" - python3 - python coreclr $(LibPrefix)$(CoreClrLibName)$(LibSuffix) monosgen-2.0 @@ -118,14 +116,6 @@ GeneratePathProperty="true" /> - - - $([MSBuild]::NormalizePath('$(PkgMicrosoft_NET_Runtime_Emscripten_3_1_56_Python_win-x64)', 'tools', 'python')) - - <_MonoCMakeArgs Include="-DENABLE_WERROR=1"/> @@ -252,8 +242,7 @@ set EMSDK_PATH=%CURRENT_SCRIPT:~0,-1%\ set EMSDK_PYTHON=%EMSDK_PATH%python\python.exe set DOTNET_EMSCRIPTEN_LLVM_ROOT=%EMSDK_PATH%bin\ -set DOTNET_EMSCRIPTEN_NODE_JS=%EMSDK_PATH%node\bin\node -set DOTNET_EMSCRIPTEN_NODE_PATH=%EMSDK_PATH%node\bin\ +set DOTNET_EMSCRIPTEN_NODE_JS=%EMSDK_PATH%node\bin\node.exe set DOTNET_EMSCRIPTEN_BINARYEN_ROOT=%EMSDK_PATH% @@ -271,7 +260,6 @@ FROZEN_CACHE = bool(os.getenv('EM_FROZEN_CACHE', 'True')) COMPILER_ENGINE = NODE_JS JS_ENGINES = [NODE_JS] - setlocal EnableDelayedExpansion && call "$([MSBuild]::NormalizePath('$(EMSDK_PATH)', 'emsdk_env$(ScriptExt)'))" && !EMSDK_PYTHON! @@ -761,7 +749,9 @@ JS_ENGINES = [NODE_JS] <_MonoCMakeBuildCommand Condition="'$(_MonoUseNinja)' != 'true'">$(_MonoCMakeBuildCommand) --parallel $([System.Environment]::ProcessorCount) <_MonoCMakeBuildCommand Condition="'$(TargetsBrowser)' != 'true' and '$(TargetsWasi)' != 'true' and '$(HostOS)' != 'windows'">@(_MonoBuildEnv, ' ') $(_MonoCMakeBuildCommand) <_MonoCMakeBuildCommand Condition="'$(TargetsBrowser)' != 'true' and '$(TargetsWasi)' != 'true' and '$(HostOS)' == 'windows'">call "$(RepositoryEngineeringDir)native\init-vs-env.cmd" $(_CompilerTargetArch) && cd /D "$(MonoObjDir)" && @(_MonoBuildEnv, ' ') $(_MonoCMakeBuildCommand) - <_MonoCMakeBuildCommand Condition="('$(TargetsBrowser)' == 'true' or '$(TargetsWasi)' == 'true') and '$(HostOS)' == 'windows'">call "$(RepositoryEngineeringDir)native\init-vs-env.cmd" && $(_MonoCMakeBuildCommand) + <_MonoCMakeBuildCommand Condition="'$(TargetsBrowser)' == 'true' and '$(HostOS)' != 'windows'">bash -c 'source $(_EmsdkEnvScriptPath) 2>&1 && $(_MonoCMakeBuildCommand)' + <_MonoCMakeBuildCommand Condition="'$(TargetsBrowser)' == 'true' and '$(HostOS)' == 'windows'">call "$(RepositoryEngineeringDir)native\init-vs-env.cmd" && call "$(_EmsdkEnvScriptPath)" && $(_MonoCMakeBuildCommand) + <_MonoCMakeBuildCommand Condition="'$(TargetsWasi)' == 'true' and '$(HostOS)' == 'windows'">call "$(RepositoryEngineeringDir)native\init-vs-env.cmd" && $(_MonoCMakeBuildCommand) @@ -990,8 +980,12 @@ JS_ENGINES = [NODE_JS] <_MonoSkipInitCompiler Condition="'$(AotHostArchitecture)' != '$(BuildArchitecture)'">false <_MonoSkipInitCompiler Condition="'$(CrossBuild)' == 'true'">false + <_PythonCmd Condition="'$(HostOS)' != 'windows'">python3 + <_PythonCmd Condition="'$(HostOS)' == 'windows'">python + + <_PythonCmd Condition="'$(HostOS)' == 'windows' and ('$(TargetsBrowser)' == 'true' or '$(TargetsWasi)' == 'true')">$([MSBuild]::NormalizePath('$(PkgMicrosoft_NET_Runtime_Emscripten_3_1_56_Python_win-x64)', 'tools', 'python.exe')) <_MonoAotCrossOffsetsToolPath>$(MonoProjectRoot)mono\offsets\offsets-tool.py - <_MonoAotCrossOffsetsCommand Condition="'$(MonoUseCrossTool)' == 'true'">$(PythonCmd) $(_MonoAotCrossOffsetsToolPath) @(MonoAotCrossOffsetsToolParams, ' ') + <_MonoAotCrossOffsetsCommand Condition="'$(MonoUseCrossTool)' == 'true'">$(_PythonCmd) $(_MonoAotCrossOffsetsToolPath) @(MonoAotCrossOffsetsToolParams, ' ') <_MonoAotCMakeConfigureCommand>cmake @(MonoAOTCMakeArgs, ' ') $(MonoCMakeExtraArgs) "$(MonoProjectRoot.TrimEnd('\/'))" <_MonoAotCMakeConfigureCommand Condition="'$(_MonoSkipInitCompiler)' != 'true' and '$(HostOS)' != 'windows'">sh -c 'build_arch="$(_CompilerTargetArch)" ROOTFS_DIR="$(MonoCrossDir)" compiler="$(MonoCCompiler)" . "$(RepositoryEngineeringCommonDir)native/init-compiler.sh" && @(_MonoAotBuildEnv, ' ') $(_MonoAotCMakeConfigureCommand)' <_MonoAotCMakeConfigureCommand Condition="'$(_MonoSkipInitCompiler)' == 'true' and '$(HostOS)' != 'windows'">$(_MonoAOTCCOption) $(_MonoAOTCXXOption) @(_MonoAotBuildEnv, ' ') $(_MonoAotCMakeConfigureCommand) diff --git a/src/native/libs/build-native.proj b/src/native/libs/build-native.proj index 2b5dcac9ae4a41..29b7b607dd80a4 100644 --- a/src/native/libs/build-native.proj +++ b/src/native/libs/build-native.proj @@ -59,6 +59,7 @@ --> <_BuildNativeCompilerArg Condition="'$(BuildNativeCompiler)' != ''"> $(BuildNativeCompiler) <_BuildNativeUnixArgs>$(_BuildNativeArgs)$(_ProcessorCountArg)$(_PortableBuildArg)$(_CrossBuildArg)$(_BuildNativeCompilerArg)$(_KeepNativeSymbolsBuildArg)$(_CMakeArgs) $(Compiler) + <_BuildNativePreSource Condition="'$(TargetsBrowser)' == 'true'">source "$(RepoRoot)src/mono/browser/emsdk/emsdk_env.sh" && @@ -72,8 +73,8 @@ - - + + - - + +