2015-10-08 21:41:04 +00:00
#!/usr/bin/env bash
2015-10-22 22:12:49 +00:00
#
2015-11-16 19:21:57 +00:00
# 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.
#
2015-10-22 22:12:49 +00:00
# $1 is passed to package to enable deb or pkg packaging
2015-10-21 22:21:14 +00:00
set -e
2015-10-22 22:56:12 +00:00
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 ) "
2015-10-20 16:05:17 +00:00
2015-11-11 01:30:01 +00:00
source " $DIR /scripts/_common.sh "
2015-11-16 21:49:29 +00:00
for i in " $@ "
do
lowerI = " $( echo $i | awk '{print tolower($0)}' ) "
case $lowerI in
release)
export CONFIGURATION = Release
; ;
debug)
export CONFIGURATION = Debug
; ;
*)
esac
done
[ -z " $CONFIGURATION " ] && CONFIGURATION = Debug
# Use a repo-local install directory (but not the artifacts directory because that gets cleaned a lot
export DOTNET_INSTALL_DIR = $DIR /.dotnet_stage0/$RID
[ -d $DOTNET_INSTALL_DIR ] || mkdir -p $DOTNET_INSTALL_DIR
export PATH = $DOTNET_INSTALL_DIR /bin:$PATH
2015-10-27 21:19:04 +00:00
# UTC Timestamp of the last commit is used as the build number. This is for easy synchronization of build number between Windows, OSX and Linux builds.
LAST_COMMIT_TIMESTAMP = $( git log -1 --format= %ct)
2015-10-28 23:02:14 +00:00
2015-10-28 23:36:40 +00:00
if [ " $( uname) " = = "Darwin" ] ; then
2015-10-28 23:02:14 +00:00
export DOTNET_BUILD_VERSION = 0.0.1-alpha-$( date -ur $LAST_COMMIT_TIMESTAMP "+%Y%m%d-%H%M%S" )
else
export DOTNET_BUILD_VERSION = 0.0.1-alpha-$( date -ud @$LAST_COMMIT_TIMESTAMP "+%Y%m%d-%H%M%S" )
fi
2015-11-11 01:30:01 +00:00
header " Building dotnet tools version $DOTNET_BUILD_VERSION - $CONFIGURATION "
2015-10-27 21:19:04 +00:00
2015-11-11 00:18:00 +00:00
if [ ! -z " $BUILD_IN_DOCKER " ] ; then
2015-11-11 01:30:01 +00:00
export BUILD_COMMAND = "/opt/code/scripts/compile.sh"
$DIR /scripts/docker/dockerbuild.sh
2015-11-11 00:18:00 +00:00
else
2015-11-11 01:30:01 +00:00
$DIR /scripts/compile.sh
2015-11-11 00:18:00 +00:00
fi
if [ ! -z " $PACKAGE_IN_DOCKER " ] ; then
2015-11-11 01:30:01 +00:00
export BUILD_COMMAND = "/opt/code/scripts/package/package.sh"
$DIR /scripts/docker/dockerbuild.sh
2015-11-11 00:18:00 +00:00
else
2015-11-11 01:30:01 +00:00
$DIR /scripts/package/package.sh
2015-11-12 00:11:29 +00:00
fi