提交 091c6ad0 编写于 作者: J Jared Parsons 提交者: GitHub

Merge pull request #15964 from ellismg/misc-build-fixes

Misc build fixes
......@@ -91,6 +91,14 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MSBuildTask", "src\Compiler
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ScriptingTestUtilities", "src\Scripting\CoreTestUtilities\ScriptingTestUtilities.csproj", "{21A01C2D-2501-4619-8144-48977DD22D9C}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Interactive", "Interactive", "{FED79E76-76A7-48A1-B0F1-E5E56B5E7FE4}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Hosts", "Hosts", "{0F0F4F95-0BEC-4623-9B26-DBD662F1193F}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CsiCore", "src\Interactive\CsiCore\CsiCore.csproj", "{D1B051A4-F2A1-4E97-9747-C41D13E475FD}"
EndProject
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "VbiCore", "src\Interactive\VbiCore\VbiCore.vbproj", "{1EEFB4B6-A6CC-4869-AF05-A43C8B82A8FD}"
EndProject
Global
GlobalSection(SharedMSBuildProjectFiles) = preSolution
src\Compilers\Core\AnalyzerDriver\AnalyzerDriver.projitems*{1ee8cad3-55f9-4d91-96b2-084641da9a6c}*SharedItemsImports = 4
......@@ -130,8 +138,8 @@ Global
{1EE8CAD3-55F9-4D91-96B2-084641DA9A6C}.Debug|ARM.Build.0 = Debug|Any CPU
{1EE8CAD3-55F9-4D91-96B2-084641DA9A6C}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{1EE8CAD3-55F9-4D91-96B2-084641DA9A6C}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{1EE8CAD3-55F9-4D91-96B2-084641DA9A6C}.Debug|x64.ActiveCfg = Debug|x64
{1EE8CAD3-55F9-4D91-96B2-084641DA9A6C}.Debug|x64.Build.0 = Debug|x64
{1EE8CAD3-55F9-4D91-96B2-084641DA9A6C}.Debug|x64.ActiveCfg = Debug|Any CPU
{1EE8CAD3-55F9-4D91-96B2-084641DA9A6C}.Debug|x64.Build.0 = Debug|Any CPU
{1EE8CAD3-55F9-4D91-96B2-084641DA9A6C}.Debug|x86.ActiveCfg = Debug|Any CPU
{1EE8CAD3-55F9-4D91-96B2-084641DA9A6C}.Debug|x86.Build.0 = Debug|Any CPU
{1EE8CAD3-55F9-4D91-96B2-084641DA9A6C}.Release|Any CPU.ActiveCfg = Release|Any CPU
......@@ -140,8 +148,8 @@ Global
{1EE8CAD3-55F9-4D91-96B2-084641DA9A6C}.Release|ARM.Build.0 = Release|Any CPU
{1EE8CAD3-55F9-4D91-96B2-084641DA9A6C}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{1EE8CAD3-55F9-4D91-96B2-084641DA9A6C}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{1EE8CAD3-55F9-4D91-96B2-084641DA9A6C}.Release|x64.ActiveCfg = Release|x64
{1EE8CAD3-55F9-4D91-96B2-084641DA9A6C}.Release|x64.Build.0 = Release|x64
{1EE8CAD3-55F9-4D91-96B2-084641DA9A6C}.Release|x64.ActiveCfg = Release|Any CPU
{1EE8CAD3-55F9-4D91-96B2-084641DA9A6C}.Release|x64.Build.0 = Release|Any CPU
{1EE8CAD3-55F9-4D91-96B2-084641DA9A6C}.Release|x86.ActiveCfg = Release|Any CPU
{1EE8CAD3-55F9-4D91-96B2-084641DA9A6C}.Release|x86.Build.0 = Release|Any CPU
{B501A547-C911-4A05-AC6E-274A50DFF30E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
......@@ -150,8 +158,8 @@ Global
{B501A547-C911-4A05-AC6E-274A50DFF30E}.Debug|ARM.Build.0 = Debug|Any CPU
{B501A547-C911-4A05-AC6E-274A50DFF30E}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{B501A547-C911-4A05-AC6E-274A50DFF30E}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{B501A547-C911-4A05-AC6E-274A50DFF30E}.Debug|x64.ActiveCfg = Debug|x64
{B501A547-C911-4A05-AC6E-274A50DFF30E}.Debug|x64.Build.0 = Debug|x64
{B501A547-C911-4A05-AC6E-274A50DFF30E}.Debug|x64.ActiveCfg = Debug|Any CPU
{B501A547-C911-4A05-AC6E-274A50DFF30E}.Debug|x64.Build.0 = Debug|Any CPU
{B501A547-C911-4A05-AC6E-274A50DFF30E}.Debug|x86.ActiveCfg = Debug|Any CPU
{B501A547-C911-4A05-AC6E-274A50DFF30E}.Debug|x86.Build.0 = Debug|Any CPU
{B501A547-C911-4A05-AC6E-274A50DFF30E}.Release|Any CPU.ActiveCfg = Release|Any CPU
......@@ -160,8 +168,8 @@ Global
{B501A547-C911-4A05-AC6E-274A50DFF30E}.Release|ARM.Build.0 = Release|Any CPU
{B501A547-C911-4A05-AC6E-274A50DFF30E}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{B501A547-C911-4A05-AC6E-274A50DFF30E}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{B501A547-C911-4A05-AC6E-274A50DFF30E}.Release|x64.ActiveCfg = Release|x64
{B501A547-C911-4A05-AC6E-274A50DFF30E}.Release|x64.Build.0 = Release|x64
{B501A547-C911-4A05-AC6E-274A50DFF30E}.Release|x64.ActiveCfg = Release|Any CPU
{B501A547-C911-4A05-AC6E-274A50DFF30E}.Release|x64.Build.0 = Release|Any CPU
{B501A547-C911-4A05-AC6E-274A50DFF30E}.Release|x86.ActiveCfg = Release|Any CPU
{B501A547-C911-4A05-AC6E-274A50DFF30E}.Release|x86.Build.0 = Release|Any CPU
{50D26304-0961-4A51-ABF6-6CAD1A56D202}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
......@@ -186,22 +194,22 @@ Global
{50D26304-0961-4A51-ABF6-6CAD1A56D202}.Release|x86.Build.0 = Release|Any CPU
{7FE6B002-89D8-4298-9B1B-0B5C247DD1FD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{7FE6B002-89D8-4298-9B1B-0B5C247DD1FD}.Debug|Any CPU.Build.0 = Debug|Any CPU
{7FE6B002-89D8-4298-9B1B-0B5C247DD1FD}.Debug|ARM.ActiveCfg = Debug|ARM
{7FE6B002-89D8-4298-9B1B-0B5C247DD1FD}.Debug|ARM.Build.0 = Debug|ARM
{7FE6B002-89D8-4298-9B1B-0B5C247DD1FD}.Debug|ARM.ActiveCfg = Debug|Any CPU
{7FE6B002-89D8-4298-9B1B-0B5C247DD1FD}.Debug|ARM.Build.0 = Debug|Any CPU
{7FE6B002-89D8-4298-9B1B-0B5C247DD1FD}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{7FE6B002-89D8-4298-9B1B-0B5C247DD1FD}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{7FE6B002-89D8-4298-9B1B-0B5C247DD1FD}.Debug|x64.ActiveCfg = Debug|x64
{7FE6B002-89D8-4298-9B1B-0B5C247DD1FD}.Debug|x64.Build.0 = Debug|x64
{7FE6B002-89D8-4298-9B1B-0B5C247DD1FD}.Debug|x64.ActiveCfg = Debug|Any CPU
{7FE6B002-89D8-4298-9B1B-0B5C247DD1FD}.Debug|x64.Build.0 = Debug|Any CPU
{7FE6B002-89D8-4298-9B1B-0B5C247DD1FD}.Debug|x86.ActiveCfg = Debug|Any CPU
{7FE6B002-89D8-4298-9B1B-0B5C247DD1FD}.Debug|x86.Build.0 = Debug|Any CPU
{7FE6B002-89D8-4298-9B1B-0B5C247DD1FD}.Release|Any CPU.ActiveCfg = Release|Any CPU
{7FE6B002-89D8-4298-9B1B-0B5C247DD1FD}.Release|Any CPU.Build.0 = Release|Any CPU
{7FE6B002-89D8-4298-9B1B-0B5C247DD1FD}.Release|ARM.ActiveCfg = Release|ARM
{7FE6B002-89D8-4298-9B1B-0B5C247DD1FD}.Release|ARM.Build.0 = Release|ARM
{7FE6B002-89D8-4298-9B1B-0B5C247DD1FD}.Release|ARM.ActiveCfg = Release|Any CPU
{7FE6B002-89D8-4298-9B1B-0B5C247DD1FD}.Release|ARM.Build.0 = Release|Any CPU
{7FE6B002-89D8-4298-9B1B-0B5C247DD1FD}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{7FE6B002-89D8-4298-9B1B-0B5C247DD1FD}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{7FE6B002-89D8-4298-9B1B-0B5C247DD1FD}.Release|x64.ActiveCfg = Release|x64
{7FE6B002-89D8-4298-9B1B-0B5C247DD1FD}.Release|x64.Build.0 = Release|x64
{7FE6B002-89D8-4298-9B1B-0B5C247DD1FD}.Release|x64.ActiveCfg = Release|Any CPU
{7FE6B002-89D8-4298-9B1B-0B5C247DD1FD}.Release|x64.Build.0 = Release|Any CPU
{7FE6B002-89D8-4298-9B1B-0B5C247DD1FD}.Release|x86.ActiveCfg = Release|Any CPU
{7FE6B002-89D8-4298-9B1B-0B5C247DD1FD}.Release|x86.Build.0 = Release|Any CPU
{4371944A-D3BA-4B5B-8285-82E5FFC6D1F9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
......@@ -700,6 +708,46 @@ Global
{21A01C2D-2501-4619-8144-48977DD22D9C}.Release|x64.Build.0 = Release|Any CPU
{21A01C2D-2501-4619-8144-48977DD22D9C}.Release|x86.ActiveCfg = Release|Any CPU
{21A01C2D-2501-4619-8144-48977DD22D9C}.Release|x86.Build.0 = Release|Any CPU
{D1B051A4-F2A1-4E97-9747-C41D13E475FD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{D1B051A4-F2A1-4E97-9747-C41D13E475FD}.Debug|Any CPU.Build.0 = Debug|Any CPU
{D1B051A4-F2A1-4E97-9747-C41D13E475FD}.Debug|ARM.ActiveCfg = Debug|Any CPU
{D1B051A4-F2A1-4E97-9747-C41D13E475FD}.Debug|ARM.Build.0 = Debug|Any CPU
{D1B051A4-F2A1-4E97-9747-C41D13E475FD}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{D1B051A4-F2A1-4E97-9747-C41D13E475FD}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{D1B051A4-F2A1-4E97-9747-C41D13E475FD}.Debug|x64.ActiveCfg = Debug|Any CPU
{D1B051A4-F2A1-4E97-9747-C41D13E475FD}.Debug|x64.Build.0 = Debug|Any CPU
{D1B051A4-F2A1-4E97-9747-C41D13E475FD}.Debug|x86.ActiveCfg = Debug|Any CPU
{D1B051A4-F2A1-4E97-9747-C41D13E475FD}.Debug|x86.Build.0 = Debug|Any CPU
{D1B051A4-F2A1-4E97-9747-C41D13E475FD}.Release|Any CPU.ActiveCfg = Release|Any CPU
{D1B051A4-F2A1-4E97-9747-C41D13E475FD}.Release|Any CPU.Build.0 = Release|Any CPU
{D1B051A4-F2A1-4E97-9747-C41D13E475FD}.Release|ARM.ActiveCfg = Release|Any CPU
{D1B051A4-F2A1-4E97-9747-C41D13E475FD}.Release|ARM.Build.0 = Release|Any CPU
{D1B051A4-F2A1-4E97-9747-C41D13E475FD}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{D1B051A4-F2A1-4E97-9747-C41D13E475FD}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{D1B051A4-F2A1-4E97-9747-C41D13E475FD}.Release|x64.ActiveCfg = Release|Any CPU
{D1B051A4-F2A1-4E97-9747-C41D13E475FD}.Release|x64.Build.0 = Release|Any CPU
{D1B051A4-F2A1-4E97-9747-C41D13E475FD}.Release|x86.ActiveCfg = Release|Any CPU
{D1B051A4-F2A1-4E97-9747-C41D13E475FD}.Release|x86.Build.0 = Release|Any CPU
{1EEFB4B6-A6CC-4869-AF05-A43C8B82A8FD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{1EEFB4B6-A6CC-4869-AF05-A43C8B82A8FD}.Debug|Any CPU.Build.0 = Debug|Any CPU
{1EEFB4B6-A6CC-4869-AF05-A43C8B82A8FD}.Debug|ARM.ActiveCfg = Debug|Any CPU
{1EEFB4B6-A6CC-4869-AF05-A43C8B82A8FD}.Debug|ARM.Build.0 = Debug|Any CPU
{1EEFB4B6-A6CC-4869-AF05-A43C8B82A8FD}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{1EEFB4B6-A6CC-4869-AF05-A43C8B82A8FD}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{1EEFB4B6-A6CC-4869-AF05-A43C8B82A8FD}.Debug|x64.ActiveCfg = Debug|Any CPU
{1EEFB4B6-A6CC-4869-AF05-A43C8B82A8FD}.Debug|x64.Build.0 = Debug|Any CPU
{1EEFB4B6-A6CC-4869-AF05-A43C8B82A8FD}.Debug|x86.ActiveCfg = Debug|Any CPU
{1EEFB4B6-A6CC-4869-AF05-A43C8B82A8FD}.Debug|x86.Build.0 = Debug|Any CPU
{1EEFB4B6-A6CC-4869-AF05-A43C8B82A8FD}.Release|Any CPU.ActiveCfg = Release|Any CPU
{1EEFB4B6-A6CC-4869-AF05-A43C8B82A8FD}.Release|Any CPU.Build.0 = Release|Any CPU
{1EEFB4B6-A6CC-4869-AF05-A43C8B82A8FD}.Release|ARM.ActiveCfg = Release|Any CPU
{1EEFB4B6-A6CC-4869-AF05-A43C8B82A8FD}.Release|ARM.Build.0 = Release|Any CPU
{1EEFB4B6-A6CC-4869-AF05-A43C8B82A8FD}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{1EEFB4B6-A6CC-4869-AF05-A43C8B82A8FD}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{1EEFB4B6-A6CC-4869-AF05-A43C8B82A8FD}.Release|x64.ActiveCfg = Release|Any CPU
{1EEFB4B6-A6CC-4869-AF05-A43C8B82A8FD}.Release|x64.Build.0 = Release|Any CPU
{1EEFB4B6-A6CC-4869-AF05-A43C8B82A8FD}.Release|x86.ActiveCfg = Release|Any CPU
{1EEFB4B6-A6CC-4869-AF05-A43C8B82A8FD}.Release|x86.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
......@@ -743,5 +791,8 @@ Global
{C1930979-C824-496B-A630-70F5369A636F} = {A18BACE1-BB66-4156-8E89-81429A5814C6}
{7AD4FE65-9A30-41A6-8004-AA8F89BCB7F3} = {A41D1B99-F489-4C43-BBDF-96D61B19A6B9}
{21A01C2D-2501-4619-8144-48977DD22D9C} = {A6F70573-57FE-49F9-A26C-75B8D202B795}
{0F0F4F95-0BEC-4623-9B26-DBD662F1193F} = {FED79E76-76A7-48A1-B0F1-E5E56B5E7FE4}
{D1B051A4-F2A1-4E97-9747-C41D13E475FD} = {0F0F4F95-0BEC-4623-9B26-DBD662F1193F}
{1EEFB4B6-A6CC-4869-AF05-A43C8B82A8FD} = {0F0F4F95-0BEC-4623-9B26-DBD662F1193F}
EndGlobalSection
EndGlobal
......@@ -10,18 +10,16 @@ RESTORE_SEMAPHORE_PATH = $(BINARIES_PATH)/restore.semaphore
BOOTSTRAP_PATH = $(BINARIES_PATH)/Bootstrap
BUILD_LOG_PATH =
HOME_DIR = $(shell cd ~ && pwd)
DOTNET_VERSION = 1.0.0-preview2-003131
DOTNET_VERSION = 1.0.0-preview3-003223
NUGET_VERSION = 3.5.0-beta2
NUGET_EXE = $(shell pwd)/nuget.exe
MSBUILD_ADDITIONALARGS := /v:m /fl /fileloggerparameters:Verbosity=normal /p:Configuration=$(BUILD_CONFIGURATION)
ifeq ($(OS_NAME),Linux)
MSBUILD_ADDITIONALARGS := $(MSBUILD_ADDITIONALARGS) /p:BaseNuGetRuntimeIdentifier=ubuntu.14.04
DOTNET_PLATFORM = ubuntu-x64
MSBUILD_ADDITIONALARGS := $(MSBUILD_ADDITIONALARGS) /p:BaseNuGetRuntimeIdentifier=$(shell . /etc/os-release && echo $$ID.$$VERSION_ID)
else ifeq ($(OS_NAME),Darwin)
MSBUILD_ADDITIONALARGS := $(MSBUILD_ADDITIONALARGS) /p:BaseNuGetRuntimeIdentifier=osx.10.10
DOTNET_PLATFORM = osx-x64
endif
ifneq ($(BUILD_LOG_PATH),)
......@@ -48,8 +46,12 @@ bootstrap: $(TOOLSET_PATH) $(RESTORE_SEMAPHORE_PATH)
$(MSBUILD_CMD) src/Compilers/VisualBasic/VbcCore/VbcCore.csproj && \
mkdir -p $(BOOTSTRAP_PATH) && \
cp -f Binaries/$(BUILD_CONFIGURATION)/Exes/CscCore/* $(BOOTSTRAP_PATH) && \
cp -f Binaries/$(BUILD_CONFIGURATION)/Exes/VbcCore/* $(BOOTSTRAP_PATH) && \
build/scripts/crossgen.sh $(BOOTSTRAP_PATH) && \
cp -f Binaries/$(BUILD_CONFIGURATION)/Exes/VbcCore/* $(BOOTSTRAP_PATH)
ifneq ($(SKIP_CROSSGEN),true)
build/scripts/crossgen.sh $(BOOTSTRAP_PATH)
endif
rm -rf Binaries/$(BUILD_CONFIGURATION)
test:
......@@ -85,6 +87,6 @@ $(TOOLSET_PATH): $(BINARIES_PATH)/dotnet-cli
$(BINARIES_PATH)/dotnet-cli:
@mkdir -p $(BINARIES_PATH) ; \
pushd $(BINARIES_PATH) ; \
curl -O https://dotnetcli.blob.core.windows.net/dotnet/preview/Binaries/$(DOTNET_VERSION)/dotnet-dev-$(DOTNET_PLATFORM).$(DOTNET_VERSION).tar.gz && \
mkdir -p $(BINARIES_PATH)/dotnet-cli && \
tar -xzf dotnet-dev-$(DOTNET_PLATFORM).$(DOTNET_VERSION).tar.gz -C dotnet-cli
curl -O https://raw.githubusercontent.com/dotnet/cli/rel/1.0.0/scripts/obtain/dotnet-install.sh ; \
chmod +x dotnet-install.sh ; \
./dotnet-install.sh --version "$(DOTNET_VERSION)" --install-dir "$(BINARIES_PATH)/dotnet-cli"
......@@ -17,7 +17,8 @@
"Microsoft.NETCore.TestHost": "1.1.0",
"Microsoft.NETCore.App": "1.1.0",
"Microsoft.Portable.Targets": "0.1.1-dev",
"Newtonsoft.Json": "8.0.3"
"Newtonsoft.Json": "8.0.3",
"NuGet.CommandLine.XPlat": "3.5.0-beta2-1484"
},
"frameworks": {
"NETCoreApp1.1": {
......
......@@ -70,6 +70,8 @@
<SystemRuntimeInteropServicesRuntimeInformationVersion>4.3.0</SystemRuntimeInteropServicesRuntimeInformationVersion>
<SystemRuntimeLoaderVersion>4.3.0</SystemRuntimeLoaderVersion>
<SystemRuntimeNumericsVersion>4.3.0</SystemRuntimeNumericsVersion>
<SystemRuntimeSerializationJsonVersion>4.3.0</SystemRuntimeSerializationJsonVersion>
<SystemRuntimeSerializationPrimitivesVersion>4.3.0</SystemRuntimeSerializationPrimitivesVersion>
<SystemSecurityAccessControlVersion>4.3.0</SystemSecurityAccessControlVersion>
<SystemSecurityCryptographyAlgorithmsVersion>4.3.0</SystemSecurityCryptographyAlgorithmsVersion>
<SystemSecurityCryptographyEncodingVersion>4.3.0</SystemSecurityCryptographyEncodingVersion>
......
......@@ -7,14 +7,19 @@ usage()
echo "usage: cibuild.sh [options]"
echo ""
echo "Options"
echo " --debug Build Debug (default)"
echo " --release Build Release"
echo " --nocache Force download of toolsets"
echo " --debug Build Debug (default)"
echo " --release Build Release"
echo " --skiptests Do not run tests"
echo " --skipcrossgen Do not crossgen the bootstrapped compiler"
echo " --skipcommitprinting Do not print commit information"
echo " --nocache Force download of toolsets"
}
BUILD_CONFIGURATION=Debug
USE_CACHE=true
SKIP_TESTS=false
SKIP_CROSSGEN=false
SKIP_COMMIT_PRINTING=false
MAKE="make"
if [[ $OSTYPE == *[Bb][Ss][Dd]* ]]; then
......@@ -25,9 +30,14 @@ fi
# so it doesn't output warnings to the console.
export LTTNG_HOME=$HOME
# There's no reason to send telemetry or prime a local package cach when building
# in CI.
export DOTNET_CLI_TELEMETRY_OPTOUT=1
export DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1
while [[ $# > 0 ]]
do
opt="$1"
opt="$(echo $1 | awk '{print tolower($0)}')"
case $opt in
-h|--help)
usage
......@@ -45,6 +55,18 @@ do
USE_CACHE=false
shift 1
;;
--skiptests)
SKIP_TESTS=true
shift 1
;;
--skipcrossgen)
SKIP_CROSSGEN=true
shift 1
;;
--skipcommitprinting)
SKIP_COMMIT_PRINTING=true
shift 1
;;
*)
usage
exit 1
......@@ -52,7 +74,7 @@ do
esac
done
MAKE_ARGS="BUILD_CONFIGURATION=$BUILD_CONFIGURATION"
MAKE_ARGS="BUILD_CONFIGURATION=$BUILD_CONFIGURATION SKIP_CROSSGEN=$SKIP_CROSSGEN"
if [ "$CLEAN_RUN" == "true" ]; then
echo Clean out the enlistment
......@@ -64,8 +86,10 @@ if [ "$USE_CACHE" == "false" ]; then
$MAKE clean_toolset
fi
echo Building this commit:
git show --no-patch --pretty=raw HEAD
if [ "$SKIP_COMMIT_PRINTING" == "false" ]; then
echo Building this commit:
git show --no-patch --pretty=raw HEAD
fi
echo Building Bootstrap
$MAKE bootstrap $MAKE_ARGS
......@@ -73,5 +97,7 @@ $MAKE bootstrap $MAKE_ARGS
echo Building CrossPlatform.sln
$MAKE all $MAKE_ARGS BOOTSTRAP=true BUILD_LOG_PATH=Binaries/Build.log
$MAKE test
if [ "$SKIP_TESTS" == "false" ]; then
$MAKE test $MAKE_ARGS
fi
......@@ -4191,9 +4191,6 @@ To remove the warning, you can use /reference instead (set the Embed Interop Typ
<data name="IDS_FeatureRefLocalsReturns" xml:space="preserve">
<value>byref locals and returns</value>
</data>
<data name="IDS_ThrowExpression" xml:space="preserve">
<value>&lt;throw&gt;</value>
</data>
<data name="CompilationC" xml:space="preserve">
<value>Compilation (C#): </value>
</data>
......
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="..\..\..\build\Targets\Settings.props" />
<PropertyGroup>
......@@ -14,7 +14,6 @@
<TargetFrameworkIdentifier>.NETPortable</TargetFrameworkIdentifier>
<TargetFrameworkVersion>v5.0</TargetFrameworkVersion>
<NoStdLib>true</NoStdLib>
<RoslynProjectType>ExeNonDeployment</RoslynProjectType>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "></PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' "></PropertyGroup>
......
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="..\..\..\build\Targets\Settings.props" />
<PropertyGroup>
......@@ -15,7 +15,6 @@
<TargetFrameworkIdentifier>.NETPortable</TargetFrameworkIdentifier>
<TargetFrameworkVersion>v5.0</TargetFrameworkVersion>
<NoStdLib>true</NoStdLib>
<RoslynProjectType>ExeNonDeployment</RoslynProjectType>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "></PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' "></PropertyGroup>
......
#r "System.Xml.Linq"
#r "System.Xml.XDocument.dll"
using System;
using System.Collections.Generic;
using System.Diagnostics;
......@@ -17,7 +17,8 @@ if (Args.Count() != 3)
Environment.Exit(1);
}
var SolutionRoot = Path.GetFullPath(Path.Combine(ScriptRoot(), "../../"));
var SolutionRoot = Path.GetFullPath(Path.Combine(ScriptRoot(), "..", ".."));
var ToolsetPath = Path.Combine(SolutionRoot, "Binaries", "toolset");
string ScriptRoot([CallerFilePath]string path = "") => Path.GetDirectoryName(path);
......@@ -69,6 +70,8 @@ string GetExistingPackageVersion(string name)
return null;
}
var IsCoreBuild = Directory.Exists(ToolsetPath);
#endregion
var NuGetAdditionalFilesPath = Path.Combine(SolutionRoot, "build/NuGetAdditionalFiles");
......@@ -77,7 +80,7 @@ var NetCompilersPropsPath = Path.Combine(NuGetAdditionalFilesPath, "Microsoft.Ne
string[] RedistPackageNames = {
"Microsoft.CodeAnalysis",
"Microsoft.Codeanalysis.Build.Tasks",
"Microsoft.CodeAnalysis.Build.Tasks",
"Microsoft.CodeAnalysis.Common",
"Microsoft.CodeAnalysis.Compilers",
"Microsoft.CodeAnalysis.CSharp.Features",
......@@ -126,6 +129,24 @@ var PreReleaseOnlyPackages = new HashSet<string>
"Microsoft.VisualStudio.LanguageServices.Next",
};
// The assets for these packages are not produced when building on Unix
// and we don't want to attempt to package them when building packages.
var PackagesNotBuiltOnCore = new HashSet<string>
{
"Microsoft.CodeAnalysis.CSharp.Features",
"Microsoft.CodeAnalysis.EditorFeatures",
"Microsoft.CodeAnalysis.EditorFeatures.Text",
"Microsoft.CodeAnalysis.Features",
"Microsoft.CodeAnalysis.Remote.ServiceHub",
"Microsoft.CodeAnalysis.Remote.Workspaces",
"Microsoft.CodeAnalysis.VisualBasic.Features",
"Microsoft.CodeAnalysis.Workspaces.Common",
"Microsoft.Net.Compilers",
"Microsoft.VisualStudio.LanguageServices",
"Microsoft.VisualStudio.LanguageServices.Next",
"Roslyn.VisualStudio.Test.Utilities",
};
// Create an empty directory to be used in NuGet pack
var emptyDir = Path.Combine(Path.GetTempPath(), Path.GetRandomFileName());
var dirInfo = Directory.CreateDirectory(emptyDir);
......@@ -145,32 +166,58 @@ void ReportError(string message)
int PackFiles(string[] nuspecFiles, string licenseUrl)
{
string commonArgs =
$"-BasePath \"{BinDir}\" " +
var commonProperties = new Dictionary<string, string>()
{
{ "licenseUrl", licenseUrl },
{ "version", BuildVersion },
{ "authors", Authors },
{ "projectURL", ProjectURL },
{ "tags", Tags },
{ "thirdPartyNoticesPath", ThirdPartyNoticesPath },
{ "netCompilersPropsPath", NetCompilersPropsPath },
{ "emptyDirPath", emptyDir },
};
foreach (var dependencyVersion in dependencyVersions)
{
commonProperties[dependencyVersion.VariableName] = dependencyVersion.Value;
}
string commonArgs;
if (!IsCoreBuild)
{
commonArgs = $"-BasePath \"{BinDir}\" " +
$"-OutputDirectory \"{OutDir}\" " +
$"-prop licenseUrl=\"{licenseUrl}\" " +
$"-prop version=\"{BuildVersion}\" " +
$"-prop authors={Authors} " +
$"-prop projectURL=\"{ProjectURL}\" " +
$"-prop tags=\"{Tags}\" " +
$"-prop thirdPartyNoticesPath=\"{ThirdPartyNoticesPath}\" " +
$"-prop netCompilersPropsPath=\"{NetCompilersPropsPath}\" " +
$"-prop emptyDirPath=\"{emptyDir}\" " +
string.Join(" ", dependencyVersions.Select(d => $"-prop {d.VariableName}=\"{d.Value}\""));
string.Join(" ", commonProperties.Select(p => $"-prop {p.Key}=\"{p.Value}\""));
}
else
{
commonArgs = $"--base-path \"{BinDir}\" " +
$"--output-directory \"{OutDir}\" " +
$"--properties \"{string.Join(";", commonProperties.Select(p => $"{p.Key}={p.Value}"))}\"";
}
int exit = 0;
foreach (var file in nuspecFiles)
{
var nugetArgs = $@"pack {file} {commonArgs}";
var nugetExePath = Path.GetFullPath(Path.Combine(SolutionRoot, "nuget.exe"));
var p = new Process();
p.StartInfo.FileName = nugetExePath;
p.StartInfo.Arguments = nugetArgs;
if (!IsCoreBuild)
{
p.StartInfo.FileName = Path.GetFullPath(Path.Combine(SolutionRoot, "nuget.exe"));
p.StartInfo.Arguments = $@"pack {file} {commonArgs}";
}
else
{
p.StartInfo.FileName = Path.Combine(ToolsetPath, "corerun");
p.StartInfo.Arguments = $@"{Path.Combine(ToolsetPath, "NuGet.CommandLine.XPlat.dll")} pack {file} {commonArgs}";
}
p.StartInfo.UseShellExecute = false;
p.StartInfo.RedirectStandardError = true;
Console.WriteLine($"{Environment.NewLine}Running: nuget.exe {nugetArgs}");
Console.WriteLine($"{Environment.NewLine}Running: nuget pack {file} {commonArgs}");
p.Start();
p.WaitForExit();
......@@ -182,7 +229,7 @@ int PackFiles(string[] nuspecFiles, string licenseUrl)
string message;
if (BuildingReleaseNugets && stdErr.Contains("A stable release of a package should not have a prerelease dependency."))
{
// If we are building release nugets and if any packages have dependencies on prerelease packages
// If we are building release nugets and if any packages have dependencies on prerelease packages
// then we want to ignore the error and allow the build to succeed.
currentExit = 0;
message = $"{file}: {stdErr}";
......@@ -218,7 +265,10 @@ IEnumerable<XElement> MakeRoslynPackageElements(string[] roslynPackageNames)
void GeneratePublishingConfig(string fileName, IEnumerable<XElement> packages)
{
var doc = new XDocument(new XElement("packages", packages.ToArray()));
doc.Save(Path.Combine(OutDir, fileName));
using (FileStream fs = File.OpenWrite(Path.Combine(OutDir, fileName)))
{
doc.Save(fs);
}
}
void GeneratePublishingConfig(string[] roslynPackageNames)
......@@ -236,9 +286,21 @@ void GeneratePublishingConfig(string[] roslynPackageNames)
}
}
string[] GetRoslynPackageNames(string[] packageNames)
string[] GetRoslynPackageNames(string[] packages)
{
return (BuildingReleaseNugets) ? packageNames.Where(pn => !PreReleaseOnlyPackages.Contains(pn)).ToArray() : packageNames;
IEnumerable<string> packageNames = packages;
if (BuildingReleaseNugets)
{
packageNames = packageNames.Where(pn => !PreReleaseOnlyPackages.Contains(pn));
}
if (IsCoreBuild)
{
packageNames = packageNames.Where(pn => !PackagesNotBuiltOnCore.Contains(pn));
}
return packageNames.ToArray();
}
int DoWork(string[] packageNames, string licenseUrl)
......
......@@ -27,6 +27,6 @@
</dependencies>
</metadata>
<files>
<file src="Exes/csicore/csi.exe" target="runtimes/any/native" />
<file src="Exes/CsiCore/csi.exe" target="runtimes/any/native" />
</files>
</package>
......@@ -29,7 +29,7 @@
</metadata>
<files>
<file src="$emptyDirPath$/_._" target="ref/netcoreapp1.0" />
<file src="Exes/csccore/csc.exe" target="runtimes/any/native" />
<file src="Exes/vbccore/vbc.exe" target="runtimes/any/native" />
<file src="Exes/CscCore/csc.exe" target="runtimes/any/native" />
<file src="Exes/VbcCore/vbc.exe" target="runtimes/any/native" />
</files>
</package>
......@@ -34,6 +34,8 @@
"System.Runtime.InteropServices": "4.3.0",
"System.Runtime.Loader": "4.3.0",
"System.Runtime.Numerics": "4.3.0",
"System.Runtime.Serialization.Primitives": "4.3.0",
"System.Runtime.Serialization.Json": "4.3.0",
"System.Security.Cryptography.Algorithms": "4.3.0",
"System.Security.Cryptography.Encoding": "4.3.0",
"System.Security.Cryptography.X509Certificates": "4.3.0",
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册