diff --git a/before_install.sh b/before_install.sh index aee46eced70..f3ff76fd570 100755 --- a/before_install.sh +++ b/before_install.sh @@ -1,18 +1,26 @@ +sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF +echo "deb http://download.mono-project.com/repo/debian wheezy main" | sudo tee /etc/apt/sources.list.d/mono-xamarin.list +sudo apt-get update +sudo apt-get install mono-devel + +mono .nuget/NuGet.exe restore packages.config -PackagesDirectory packages -ConfigFile .nuget/NuGet.Config + (if test x-$BUILD_CORECLR = x-1; then \ sudo sh -c 'echo "deb [arch=amd64] https://apt-mo.trafficmanager.net/repos/dotnet-release/ trusty main" > /etc/apt/sources.list.d/dotnetdev.list'; \ sudo apt-key adv --keyserver apt-mo.trafficmanager.net --recv-keys 417A0893; \ sudo apt-get update; \ sudo apt-get install dotnet-dev-1.0.0-preview2-003131; \ + (cd tests/fsharp; mono ../../.nuget/NuGet.exe restore project.json -PackagesDirectory ../../packages -ConfigFile ../../.nuget/NuGet.Config); \ + ./init-tools.sh; \ + echo "------ start log"; \ + cat ./init-tools.log; echo "------ end log"; \ fi) -mono .nuget/NuGet.exe restore packages.config -PackagesDirectory packages -ConfigFile .nuget/NuGet.Config -(if test x-$BUILD_CORECLR = x-1; then \ - (cd tests/fsharp; mono ../../.nuget/NuGet.exe restore project.json -PackagesDirectory ../../packages -ConfigFile ../../.nuget/NuGet.Config); \ +(if test x-$BUILD_PROTO_WITH_CORECLR_LKG = x-1; then \ + (cd lkg/fsc && dotnet restore --packages ../packages && dotnet publish project.json -o ../Tools/lkg -r ubuntu.14.04-x64); \ + (cd lkg/fsi && dotnet restore --packages ../packages && dotnet publish project.json -o ../Tools/lkg -r ubuntu.14.04-x64); \ fi) -(if test x-$BUILD_CORECLR = x-1; then ./init-tools.sh; echo "------ start log"; cat ./init-tools.log; echo "------ end log"; fi) -(if test x-$BUILD_PROTO_WITH_CORECLR_LKG = x-1; then cd lkg/fsc && dotnet restore --packages ../packages && dotnet publish project.json -o ../Tools/lkg -r ubuntu.14.04-x64; fi) -(if test x-$BUILD_PROTO_WITH_CORECLR_LKG = x-1; then cd lkg/fsi && dotnet restore --packages ../packages && dotnet publish project.json -o ../Tools/lkg -r ubuntu.14.04-x64; fi) #TODO: work out how to avoid the need for this chmod u+x packages/FSharp.Compiler.Tools.4.0.1.19/tools/fsi.exe diff --git a/build.sh b/build.sh index 1efdb8c2a71..290fed484f2 100755 --- a/build.sh +++ b/build.sh @@ -1,8 +1,9 @@ +# At the moment all we build is the Mono version of the F# compiler export BUILD_NET40=1 ./before_install.sh # This is a very, very limited build script for Mono which bootstraps the compiler xbuild src/fsharp-proto-build.proj -xbuild build-everything.proj /p:Configuration=debug +xbuild build-everything.proj /p:Configuration=release diff --git a/netci.groovy b/netci.groovy index 4f3c77e0b04..33229eda977 100644 --- a/netci.groovy +++ b/netci.groovy @@ -4,15 +4,20 @@ import jobs.generation.JobReport; def project = GithubProject def branch = GithubBranchName -def osList = ['Windows_NT'] //'Ubuntu', 'OSX', 'CentOS7.1' +def osList = ['Windows_NT', 'Ubuntu'] //, 'OSX', 'CentOS7.1' def static getBuildJobName(def configuration, def os) { return configuration.toLowerCase() + '_' + os.toLowerCase() } [true, false].each { isPullRequest -> - ['Debug', 'Release_ci_part1', 'Release_ci_part2'].each { configuration -> - osList.each { os -> + osList.each { os -> + def configurations = ['Debug', 'Release_ci_part1', 'Release_ci_part2']; + if (os != 'Windows_NT') { + // Only build one configuration on Linux/... so far + configurations = ['Release']; + } + configurations.each { configuration -> def lowerConfiguration = configuration.toLowerCase() @@ -31,9 +36,12 @@ def static getBuildJobName(def configuration, def os) { if (configuration == "Release_ci_part1") { build_args = "ci_part1" } - else { + else if (configuration == "Release_ci_part2") { build_args = "ci_part2" } + else { + build_args = "ci" + } } if (os == 'Windows_NT') {