From: Steve MacLean Date: Fri, 10 Apr 2020 22:37:31 +0000 (-0400) Subject: Enable Alpine Arm64 SOS builds (#1010) X-Git-Tag: submit/tizen_5.5/20200504.045052~7^2~1 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=e00b7702bb47c7f8c57fd74c8f459fa2e057a185;p=platform%2Fcore%2Fdotnet%2Fdiagnostics.git Enable Alpine Arm64 SOS builds (#1010) * Enable Alpine Arm64 SOS builds * Revise clang version selection Use clang-9 for linux-musl-arm64 Generalize -clang* options Co-authored-by: Juan Hoyos --- diff --git a/diagnostics.yml b/diagnostics.yml index 34c0cd89e..361c5d991 100644 --- a/diagnostics.yml +++ b/diagnostics.yml @@ -144,6 +144,20 @@ stages: _BuildArch: arm64 _PublishArtifacts: bin/Linux.arm64.Release + - template: /eng/build.yml + parameters: + name: Alpine3_6_cross64 + osGroup: Linux + dockerImage: mcr.microsoft.com/dotnet-buildtools/prereqs:ubuntu-16.04-cross-arm64-alpine-406629a-20200127195039 + crossrootfsDir: '/crossrootfs/arm64' + strategy: + matrix: + Build_Release: + _BuildOnly: true + _BuildConfig: Release + _BuildArch: arm64 + _PublishArtifacts: bin/Linux.arm64.Release + ############################ # # @@ -269,6 +283,7 @@ stages: - MacOS - Linux_cross - Linux_cross64 + - Alpine3_6_cross64 condition: succeeded() pool: name: NetCoreInternal-Pool @@ -353,6 +368,15 @@ stages: targetPath: '$(Build.SourcesDirectory)/artifacts/bin/Linux.arm64.Release' condition: succeeded() + # Linux MUSL arm64 download + + - task: DownloadPipelineArtifact@2 + displayName: Download Linux Musl arm64 Artifacts + inputs: + artifactName: Alpine3_6_cross64_arm64_Release + targetPath: '$(Build.SourcesDirectory)/artifacts/bin/Linux-musl.arm64.Release' + condition: succeeded() + # MacOS download - task: DownloadPipelineArtifact@2 diff --git a/eng/build.sh b/eng/build.sh index da7042e18..9dcb0f8df 100755 --- a/eng/build.sh +++ b/eng/build.sh @@ -242,39 +242,16 @@ while :; do __ExtraCmakeArgs="$__ExtraCmakeArgs -DSTRIP_SYMBOLS=true" ;; - -clang3.5) - __ClangMajorVersion=3 - __ClangMinorVersion=5 - ;; - - -clang3.6) - __ClangMajorVersion=3 - __ClangMinorVersion=6 - ;; - - -clang3.7) - __ClangMajorVersion=3 - __ClangMinorVersion=7 - ;; - - -clang3.8) - __ClangMajorVersion=3 - __ClangMinorVersion=8 - ;; - - -clang3.9) - __ClangMajorVersion=3 - __ClangMinorVersion=9 - ;; - - -clang4.0) - __ClangMajorVersion=4 - __ClangMinorVersion=0 - ;; - - -clang5.0) - __ClangMajorVersion=5 - __ClangMinorVersion=0 + -clang*) + __Compiler=clang + # clangx.y or clang-x.y + version="$(echo "$lowerI" | tr -d '[:alpha:]-=')" + parts=(${version//./ }) + __ClangMajorVersion="${parts[0]}" + __ClangMinorVersion="${parts[1]}" + if [[ -z "$__ClangMinorVersion" && "$__ClangMajorVersion" -le 6 ]]; then + __ClangMinorVersion=0; + fi ;; -clean|-binarylog|-bl|-pipelineslog|-pl|-restore|-r|-rebuild|-pack|-integrationtest|-performancetest|-sign|-publish|-preparemachine) @@ -322,16 +299,6 @@ __DotNetCli=$__ProjectRoot/.dotnet/dotnet # This is where all built native libraries will copied to. export __CMakeBinDir="$__BinDir" -# Set default clang version -if [[ $__ClangMajorVersion == 0 && $__ClangMinorVersion == 0 ]]; then - if [[ "$__BuildArch" == "arm" || "$__BuildArch" == "armel" ]]; then - __ClangMajorVersion=5 - __ClangMinorVersion=0 - else - __ClangMajorVersion=3 - __ClangMinorVersion=9 - fi -fi if [[ "$__BuildArch" == "armel" ]]; then # Armel cross build is Tizen specific and does not support Portable RID build @@ -425,6 +392,20 @@ initTargetDistroRid echo "RID: $__DistroRid" +# Set default clang version +if [[ $__ClangMajorVersion == 0 && $__ClangMinorVersion == 0 ]]; then + if [[ "$__BuildArch" == "arm" || "$__BuildArch" == "armel" ]]; then + __ClangMajorVersion=5 + __ClangMinorVersion=0 + elif [[ "$__BuildArch" == "arm64" && "$__DistroRid" == "linux-musl-arm64" ]]; then + __ClangMajorVersion=9 + __ClangMinorVersion= + else + __ClangMajorVersion=3 + __ClangMinorVersion=9 + fi +fi + # # Setup LLDB paths for native build # diff --git a/src/SOS/SOS.Package/SOS.Symbol.Package.csproj b/src/SOS/SOS.Package/SOS.Symbol.Package.csproj index cf0e5a0c8..4a7408ffb 100644 --- a/src/SOS/SOS.Package/SOS.Symbol.Package.csproj +++ b/src/SOS/SOS.Package/SOS.Symbol.Package.csproj @@ -59,6 +59,13 @@ $(SOSPackagePathPrefix)/linux-arm64 + + $(SOSPackagePathPrefix)/linux-musl-arm64 + + + $(SOSPackagePathPrefix)/linux-musl-arm64 + + $(SOSPackagePathPrefix)/osx-x64 diff --git a/src/sos-packaging.props b/src/sos-packaging.props index de482365c..8e05f87d3 100644 --- a/src/sos-packaging.props +++ b/src/sos-packaging.props @@ -103,6 +103,19 @@ $(SOSPackagePathPrefix)/linux-arm64 + + $(SOSPackagePathPrefix)/linux-musl-arm64 + + + $(SOSPackagePathPrefix)/linux-musl-arm64 + + + $(SOSPackagePathPrefix)/linux-musl-arm64 + + + $(SOSPackagePathPrefix)/linux-musl-arm64 + + $(SOSPackagePathPrefix)/osx-x64