Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/dotnet/runtime.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/eng
diff options
context:
space:
mode:
authorAdeel Mujahid <3840695+am11@users.noreply.github.com>2022-10-18 19:22:10 +0300
committerGitHub <noreply@github.com>2022-10-18 19:22:10 +0300
commit3837c2a9b7a0c0c09fc6b41171583c7012fb6fa7 (patch)
tree05d4dd2f4c7e8eb7328bdd69e30a5e7038afb58c /eng
parent7ac397e1ce319222bbb319a8205df2f60eefa8d4 (diff)
Update Unix dependencies installation script (#77107)
* Update Unix dependencies installation script * Add missing libz-dev * Use zlib1g-dev instead of libz-dev Co-authored-by: Alexander Köplinger <alex.koeplinger@outlook.com> * Remove obsolete arguments Co-authored-by: Alexander Köplinger <alex.koeplinger@outlook.com>
Diffstat (limited to 'eng')
-rwxr-xr-xeng/install-native-dependencies.sh59
-rw-r--r--eng/pipelines/common/global-build-job.yml2
-rw-r--r--eng/pipelines/common/templates/runtimes/build-test-job.yml2
-rw-r--r--eng/pipelines/coreclr/templates/build-jit-job.yml2
-rw-r--r--eng/pipelines/coreclr/templates/build-job.yml2
-rw-r--r--eng/pipelines/installer/jobs/build-job.yml2
-rw-r--r--eng/pipelines/libraries/build-job.yml2
-rw-r--r--eng/pipelines/mono/templates/build-job.yml2
-rw-r--r--eng/pipelines/mono/templates/generate-offsets.yml2
9 files changed, 29 insertions, 46 deletions
diff --git a/eng/install-native-dependencies.sh b/eng/install-native-dependencies.sh
index bc9b2036d05..a0b0b16ddda 100755
--- a/eng/install-native-dependencies.sh
+++ b/eng/install-native-dependencies.sh
@@ -1,49 +1,32 @@
-#!/usr/bin/env bash
+#!/bin/sh
+
+set -e
# This is a simple script primarily used for CI to install necessary dependencies
#
-# For CI typical usage is
-#
-# ./install-native-dependencies.sh <OS> <arch> azDO
-#
-# For developer use it is not recommended to include the azDO final argument as that
-# makes installation and configuration setting only required for azDO
-#
-# So simple developer usage would currently be
+# Usage:
#
# ./install-native-dependencies.sh <OS>
-if [ "$1" = "Linux" ]; then
- sudo apt update
- if [ "$?" != "0" ]; then
- exit 1;
- fi
- sudo apt install cmake llvm-3.9 clang-3.9 lldb-3.9 liblldb-3.9-dev libunwind8 libunwind8-dev gettext libicu-dev liblttng-ust-dev libcurl4-openssl-dev libssl-dev libkrb5-dev libnuma-dev build-essential
- if [ "$?" != "0" ]; then
- exit 1;
- fi
-elif [[ "$1" == "MacCatalyst" || "$1" == "OSX" || "$1" == "tvOS" || "$1" == "iOS" ]]; then
- engdir=$(dirname "${BASH_SOURCE[0]}")
-
- echo "Installed xcode version: `xcode-select -p`"
-
- if [ "$3" = "azDO" ]; then
- # workaround for old osx images on hosted agents
- # piped in case we get an agent without these values installed
- if ! brew_output="$(brew uninstall openssl@1.0.2t 2>&1 >/dev/null)"; then
- echo "didn't uninstall openssl@1.0.2t"
- else
- echo "successfully uninstalled openssl@1.0.2t"
- fi
- fi
+os="$(echo "$1" | tr "[:upper:]" "[:lower:]")"
+
+if [ -e /etc/os-release ]; then
+ . /etc/os-release
+fi
+
+if [ "$os" = "linux" ] && { [ "$ID" = "debian" ] || [ "$ID_LIKE" = "debian" ]; }; then
+ apt update
+
+ apt install -y build-essential gettext locales cmake llvm clang lldb liblldb-dev libunwind8-dev libicu-dev liblttng-ust-dev \
+ libssl-dev libkrb5-dev libnuma-dev zlib1g-dev
+
+ localedef -i en_US -c -f UTF-8 -A /usr/share/locale/locale.alias en_US.UTF-8
+elif [ "$os" = "maccatalyst" ] || [ "$os" = "osx" ] || [ "$os" = "macos" ] || [ "$os" = "tvos" ] || [ "$os" = "ios" ]; then
+ echo "Installed xcode version: $(xcode-select -p)"
brew update --preinstall
- brew bundle --no-upgrade --no-lock --file "${engdir}/Brewfile"
- if [ "$?" != "0" ]; then
- exit 1;
- fi
+ brew bundle --no-upgrade --no-lock --file "$(dirname "$0")/Brewfile"
else
- echo "Must pass \"Linux\", \"tvOS\", \"iOS\" or \"OSX\" as first argument."
+ echo "Must pass 'Linux', 'macOS', 'maccatalyst', 'iOS' or 'tvOS' as first argument."
exit 1
fi
-
diff --git a/eng/pipelines/common/global-build-job.yml b/eng/pipelines/common/global-build-job.yml
index 171d71960cd..a431f78563f 100644
--- a/eng/pipelines/common/global-build-job.yml
+++ b/eng/pipelines/common/global-build-job.yml
@@ -147,7 +147,7 @@ jobs:
name: ${{ parameters.platform }}
- ${{ if in(parameters.osGroup, 'OSX', 'iOS', 'tvOS', 'MacCatalyst') }}:
- - script: $(Build.SourcesDirectory)/eng/install-native-dependencies.sh ${{ parameters.osGroup }} ${{ parameters.archType }} azDO
+ - script: $(Build.SourcesDirectory)/eng/install-native-dependencies.sh ${{ parameters.osGroup }}
displayName: Install Build Dependencies
- script: |
diff --git a/eng/pipelines/common/templates/runtimes/build-test-job.yml b/eng/pipelines/common/templates/runtimes/build-test-job.yml
index 1e8e33277b8..9788d20a76a 100644
--- a/eng/pipelines/common/templates/runtimes/build-test-job.yml
+++ b/eng/pipelines/common/templates/runtimes/build-test-job.yml
@@ -111,7 +111,7 @@ jobs:
# Install test build dependencies
- ${{ if eq(parameters.osGroup, 'OSX') }}:
- - script: $(Build.SourcesDirectory)/eng/install-native-dependencies.sh $(osGroup) ${{ parameters.archType }} azDO
+ - script: $(Build.SourcesDirectory)/eng/install-native-dependencies.sh $(osGroup)
displayName: Install native dependencies
# Build core/libraries dependencies of test build
diff --git a/eng/pipelines/coreclr/templates/build-jit-job.yml b/eng/pipelines/coreclr/templates/build-jit-job.yml
index e91e0da1b81..648cc122bab 100644
--- a/eng/pipelines/coreclr/templates/build-jit-job.yml
+++ b/eng/pipelines/coreclr/templates/build-jit-job.yml
@@ -85,7 +85,7 @@ jobs:
# and FreeBSD builds use a build agent with dependencies
# preinstalled, so we only need this step for OSX and Windows.
- ${{ if eq(parameters.osGroup, 'OSX') }}:
- - script: $(Build.SourcesDirectory)/eng/install-native-dependencies.sh $(osGroup) ${{ parameters.archType }} azDO
+ - script: $(Build.SourcesDirectory)/eng/install-native-dependencies.sh $(osGroup)
displayName: Install native dependencies (OSX)
# Install internal tools on official builds
diff --git a/eng/pipelines/coreclr/templates/build-job.yml b/eng/pipelines/coreclr/templates/build-job.yml
index 12acad00bdc..6fdc6631fe2 100644
--- a/eng/pipelines/coreclr/templates/build-job.yml
+++ b/eng/pipelines/coreclr/templates/build-job.yml
@@ -159,7 +159,7 @@ jobs:
# and FreeBSD builds use a build agent with dependencies
# preinstalled, so we only need this step for OSX and Windows.
- ${{ if eq(parameters.osGroup, 'OSX') }}:
- - script: $(Build.SourcesDirectory)/eng/install-native-dependencies.sh $(osGroup) ${{ parameters.archType }} azDO
+ - script: $(Build.SourcesDirectory)/eng/install-native-dependencies.sh $(osGroup)
displayName: Install native dependencies
# Install internal tools on official builds
diff --git a/eng/pipelines/installer/jobs/build-job.yml b/eng/pipelines/installer/jobs/build-job.yml
index e89474059ff..00c08f0c2f3 100644
--- a/eng/pipelines/installer/jobs/build-job.yml
+++ b/eng/pipelines/installer/jobs/build-job.yml
@@ -310,7 +310,7 @@ jobs:
cleanUnpackFolder: false
- ${{ if in(parameters.osGroup, 'OSX', 'iOS', 'tvOS') }}:
- - script: $(Build.SourcesDirectory)/eng/install-native-dependencies.sh ${{ parameters.osGroup }} ${{ parameters.archType }} azDO
+ - script: $(Build.SourcesDirectory)/eng/install-native-dependencies.sh ${{ parameters.osGroup }}
displayName: Install Build Dependencies
- script: |
diff --git a/eng/pipelines/libraries/build-job.yml b/eng/pipelines/libraries/build-job.yml
index 44db3c17267..01c7ac916cf 100644
--- a/eng/pipelines/libraries/build-job.yml
+++ b/eng/pipelines/libraries/build-job.yml
@@ -86,7 +86,7 @@ jobs:
- template: /eng/pipelines/common/restore-internal-tools.yml
- ${{ if in(parameters.osGroup, 'OSX', 'iOS', 'tvOS') }}:
- - script: $(Build.SourcesDirectory)/eng/install-native-dependencies.sh ${{ parameters.osGroup }} ${{ parameters.archType }} azDO
+ - script: $(Build.SourcesDirectory)/eng/install-native-dependencies.sh ${{ parameters.osGroup }}
displayName: Install Build Dependencies
- script: |
diff --git a/eng/pipelines/mono/templates/build-job.yml b/eng/pipelines/mono/templates/build-job.yml
index 80432308ebb..63d439c436e 100644
--- a/eng/pipelines/mono/templates/build-job.yml
+++ b/eng/pipelines/mono/templates/build-job.yml
@@ -122,7 +122,7 @@ jobs:
# and FreeBSD builds use a build agent with dependencies
# preinstalled, so we only need this step for OSX and Windows.
- ${{ if in(parameters.osGroup, 'OSX', 'iOS', 'tvOS') }}:
- - script: $(Build.SourcesDirectory)/eng/install-native-dependencies.sh $(osGroup) ${{ parameters.archType }} azDO
+ - script: $(Build.SourcesDirectory)/eng/install-native-dependencies.sh $(osGroup)
displayName: Install native dependencies
- ${{ each monoCrossAOTTargetOS in parameters.monoCrossAOTTargetOS }}:
diff --git a/eng/pipelines/mono/templates/generate-offsets.yml b/eng/pipelines/mono/templates/generate-offsets.yml
index 6c84674b2be..7bb83887c5c 100644
--- a/eng/pipelines/mono/templates/generate-offsets.yml
+++ b/eng/pipelines/mono/templates/generate-offsets.yml
@@ -57,7 +57,7 @@ jobs:
# and FreeBSD builds use a build agent with dependencies
# preinstalled, so we only need this step for OSX and Windows.
- ${{ if in(parameters.osGroup, 'OSX', 'iOS', 'tvOS') }}:
- - script: $(Build.SourcesDirectory)/eng/install-native-dependencies.sh $(osGroup) ${{ parameters.archType }} azDO
+ - script: $(Build.SourcesDirectory)/eng/install-native-dependencies.sh $(osGroup)
displayName: Install native dependencies
# Build