4b217db9c0
Decompose into self-contained granular components Provide reasonable defaults for cross cutting concerns, allowing for independent execution of steps Start unifying Windows/Bash architecture fix Bash CI scripts dockerbuild.sh _common.sh path Add missing restore-packages.sh Copy/paste issues Quote $SOURCE fix .gitignore PR Feedback Merge in @SridarMS's work to avoid redownloading DNX enabling build of dotnet-build merge in @SridharMS's CentOS changes Enable building FSC enable restoring specific subdirectories Fix dnx version check Add missed dependency Fix pathing to tests Match Linux build version to Windows, fixing linux tests as a side effect. workaround for coreclr#2215 fix pathing issue disable building in docker BUILD_IN_DOCKER was set, somehow... fix headers
61 lines
No EOL
1.8 KiB
Bash
Executable file
61 lines
No EOL
1.8 KiB
Bash
Executable file
#!/usr/bin/env bash
|
|
#
|
|
# Copyright (c) .NET Foundation and contributors. All rights reserved.
|
|
# Licensed under the MIT license. See LICENSE file in the project root for full license information.
|
|
#
|
|
|
|
# Set OFFLINE environment variable to build offline
|
|
|
|
set -e
|
|
|
|
SOURCE="${BASH_SOURCE[0]}"
|
|
while [ -h "$SOURCE" ]; do # resolve $SOURCE until the file is no longer a symlink
|
|
DIR="$( cd -P "$( dirname "$SOURCE" )" && pwd )"
|
|
SOURCE="$(readlink "$SOURCE")"
|
|
[[ "$SOURCE" != /* ]] && SOURCE="$DIR/$SOURCE" # if $SOURCE was a relative symlink, we need to resolve it relative to the path where the symlink file was located
|
|
done
|
|
DIR="$( cd -P "$( dirname "$SOURCE" )" && pwd )"
|
|
|
|
source "$DIR/../common/_common.sh"
|
|
source "$REPOROOT/scripts/build/generate-version.sh"
|
|
|
|
header "Building dotnet tools version $DOTNET_BUILD_VERSION - $CONFIGURATION"
|
|
header "Checking Pre-Reqs"
|
|
|
|
$REPOROOT/scripts/test/check-prereqs.sh
|
|
|
|
header "Restoring Tools and Packages"
|
|
|
|
if [ ! -z "$OFFLINE" ]; then
|
|
info "Skipping Tools and Package Download: Offline build"
|
|
else
|
|
$REPOROOT/scripts/obtain/install-tools.sh
|
|
|
|
$REPOROOT/scripts/build/restore-packages.sh
|
|
fi
|
|
|
|
header "Compiling"
|
|
$REPOROOT/scripts/compile/compile.sh
|
|
|
|
# Skipping tests for centos
|
|
# tracked by issue - https://github.com/dotnet/corefx/issues/5066
|
|
if [ "$OSNAME" != "centos" ]; then
|
|
# Run tests on the stage2 output
|
|
header "Testing stage2..."
|
|
DOTNET_HOME=$STAGE2_DIR DOTNET_TOOLS=$STAGE2_DIR $REPOROOT/scripts/test/runtests.sh
|
|
else
|
|
header "Skipping tests on CentOS due to corefx issue 5066"
|
|
fi
|
|
|
|
header "Validating Dependencies"
|
|
$REPOROOT/scripts/test/validate-dependencies.sh
|
|
|
|
header "Generating tarball"
|
|
$REPOROOT/scripts/package/package.sh
|
|
|
|
if [ ! -z "$NOPACKAGE" ]; then
|
|
header "Generating Native Installer"
|
|
$REPOROOT/scripts/package/package-native.sh
|
|
else
|
|
header "Skipping packaging"
|
|
fi |