diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index e19ef14b..47051943 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -283,13 +283,12 @@ jobs: - name: Generate solution shell: pwsh working-directory: ./ - run: ./tooling/GenerateAllSolution.ps1${{ env.ENABLE_DIAGNOSTICS == 'true' && ' -UseDiagnostics' || '' }} + run: ./tooling/GenerateAllSolution.ps1${{ env.ENABLE_DIAGNOSTICS == 'true' && ' -UseDiagnostics' || '' }} -MultiTargets wasm - # Issue with Comment Links currently, see: https://github.com/mrlacey/CommentLinks/issues/38 - # See launch.json configuration file for analogous command we're emulating here to build LINK: ../../.vscode/launch.json:CommunityToolkit.App.Wasm.csproj - name: dotnet build - working-directory: ./${{ env.HEADS_DIRECTORY }}/AllComponents/Wasm/ - run: dotnet build /r /bl /p:UnoSourceGeneratorUseGenerationHost=true /p:UnoSourceGeneratorUseGenerationController=false + shell: pwsh + working-directory: ./ + run: ./tooling/Build-Toolkit-Components.ps1 -Release -MultiTargets wasm ${{ env.ENABLE_DIAGNOSTICS == 'true' && ' -BinlogOutput ./ -EnableBinLogs' || '' }} # TODO: Do we want to run tests here? Can we do that on linux easily? diff --git a/Build-Toolkit-Components.ps1 b/Build-Toolkit-Components.ps1 index 4b9d0f8a..2dea5d3a 100644 --- a/Build-Toolkit-Components.ps1 +++ b/Build-Toolkit-Components.ps1 @@ -124,7 +124,21 @@ function Invoke-MSBuildWithBinlog { ) # Reset build args to default - $msbuildArgs = @("-r", "-m", "/p:DebugType=Portable") + $msbuildArgs = @("/p:DebugType=Portable") + + # Add "-r" parameter if not running on linux + if ($($PSVersionTable.Platform) -ne "Unix") { + $msbuildArgs += "-r" + } + # Otherwise, add "-restore" parameter + else { + $msbuildArgs += "-restore" + } + + # Add "-m" parameter if not running on linux + if ($($PSVersionTable.Platform) -ne "Unix") { + $msbuildArgs += "-m" + } # Add packing to the msbuild arguments if NupkgOutput is supplied if ($NupkgOutput) { @@ -170,7 +184,13 @@ function Invoke-MSBuildWithBinlog { $msbuildArgs += "/v:detailed" } - msbuild $msbuildArgs $TargetHeadPath + # If platform is linux, use dotnet instead of msbuild + if ($($PSVersionTable.Platform) -eq "Unix") { + dotnet build $msbuildArgs $TargetHeadPath + } + else { + msbuild $msbuildArgs $TargetHeadPath + } } # Components are built individually diff --git a/MultiTarget/AvailableTargetFrameworks.props b/MultiTarget/AvailableTargetFrameworks.props index 93b77afb..5d99cbd5 100644 --- a/MultiTarget/AvailableTargetFrameworks.props +++ b/MultiTarget/AvailableTargetFrameworks.props @@ -1,23 +1,23 @@ - uap10.0.17763 - net8.0-windows10.0.22621.0;net7.0-windows10.0.22621.0;net6.0-windows10.0.22621.0; + uap10.0.17763 + net8.0-windows10.0.22621.0;net7.0-windows10.0.22621.0;net6.0-windows10.0.22621.0; - net8.0 - net8.0 - net8.0 + net8.0 + net8.0 + net8.0 - net8.0-android34.0 - net8.0-maccatalyst - net8.0-ios + net8.0-android34.0 + net8.0-maccatalyst + net8.0-ios - net8.0 - net8.0 - net8.0 + net8.0 + net8.0 + net8.0 - netstandard2.0 - net8.0 + netstandard2.0 + net8.0 \ No newline at end of file diff --git a/MultiTarget/EnabledTargetFrameworks.props b/MultiTarget/EnabledTargetFrameworks.props index ee92d5c9..9dd89a26 100644 --- a/MultiTarget/EnabledTargetFrameworks.props +++ b/MultiTarget/EnabledTargetFrameworks.props @@ -1,23 +1,23 @@ - uap10.0.17763 - net8.0-windows10.0.22621.0;net7.0-windows10.0.22621.0;net6.0-windows10.0.22621.0; + uap10.0.17763 + net8.0-windows10.0.22621.0;net7.0-windows10.0.22621.0;net6.0-windows10.0.22621.0; + + net8.0 + net8.0 + net8.0 - net8.0 - net8.0 - net8.0 - - net8.0 - net8.0 - net8.0 + net8.0 + net8.0 + net8.0 - netstandard2.0 - net8.0 + netstandard2.0 + net8.0 diff --git a/MultiTarget/UseTargetFrameworks.ps1 b/MultiTarget/UseTargetFrameworks.ps1 index 544c2b5a..54a1aa0a 100644 --- a/MultiTarget/UseTargetFrameworks.ps1 +++ b/MultiTarget/UseTargetFrameworks.ps1 @@ -107,7 +107,7 @@ $targetFrameworksToRemove = @( $targetFrameworksToRemoveRegexPartial = $targetFrameworksToRemove -join "|"; -$newFileContents = $fileContents -replace "<(?:$targetFrameworksToRemoveRegexPartial)>.+?>", ''; +$newFileContents = $fileContents -replace "<(?:$targetFrameworksToRemoveRegexPartial).+?>.+?>", ''; Set-Content -Force -Path $PSScriptRoot/EnabledTargetFrameworks.props -Value $newFileContents; diff --git a/global.json b/global.json index e4e1a5f4..91187a7c 100644 --- a/global.json +++ b/global.json @@ -1,6 +1,6 @@ { "sdk": { - "version": "8.0.201", + "version": "8.0.403", "rollForward": "latestFeature" }, "msbuild-sdks":