Граф коммитов

62 Коммитов

Автор SHA1 Сообщение Дата
Jan Kotas a59cf68896
Update to official XUnit 2.4 (#6299)
* Update to official XUnit 2.4

* Use dotnet msbuild to build
2018-09-07 08:06:08 -07:00
Adeel Mujahid 8d6690c4eb Rev netcoreapp2.0 to netcoreapp2.1 (#5974) 2018-06-20 17:06:28 -07:00
Jan Kotas fbc23699e8
Fix binplacing of libLLVM during VS build (#5427) 2018-02-22 08:43:53 -08:00
Christian Scheuer f19daaae78 Add support for building wasm on OSX and Ubuntu 16 (#5297)
* Enable wasm building on OSX.

Upgrade libLLVM to 4.0.0 and LLVMSharp to 5.0.0

LLVM upgrade: Fix 'Use still stuck around after Def is destroyed' of the deleted basic blocks

Add wasm support in runtest.sh

Remove HelloWasm.csproj reference to .ilproj on non-windows OS because of dependency on ilasm

Fix LinkNative target to execute correct commands for Unix wasm builds.

Added support for building on Ubuntu 16.04.3

Update documentation on how to build WebAssembly.
2018-02-03 16:47:18 -08:00
Jan Kotas 8ceb9d9389
Cleanup and simplify makefiles (#5179)
- Delete redundant or obsolete parts in makefiles
- Update macOS prerequisites
2018-01-02 03:59:17 -08:00
Andon Andonov df56bb3bd0 ILCompiler Package Multi-Runtime Package Support (#5123)
As it stands we only produce a Windows ILCompiler package. This work implements building and publishing of OS-specific runtime packages and spins off ILCompiler as a meta-package, which can be referenced when adding to a project.

Working on this, a quirk in MSBuild behavior under .NET Core popped up - build artifacts (i.e. .targets and .props files) are imported for direct project package references, but not for runtime-specific packages, defined as dependencies in the meta-package. This doesn't seem to be the case in vanilla MSBuild.

The below is a serious hack to work around this - during runtime, we find the resolved runtime package reference and define the path to it on disk, from which all OS-specific components are loaded and run. The motivation behind the workaround was to keep the package as small as possible, particularly because of the large intersection of components between OS implementations.

All workarounds are marked as such and should be removed once Microsoft/msbuild#2807 is resolved.

There is some slowdown because of sequential resolution of targets, but not immediately noticeable and is unfortunately unavoidable - almost entirely avoided if CoreRT build targets are referenced directly (excluding MSBuild overhead).
2017-12-15 21:17:57 -05:00
Morgan Brown 3d25db5b1c
Build runtime and libraries for WebAssembly (#4876)
* Fix issues building the runtime, corelib and type loader for WebAssembly

* Fix test infrastructure to allow running with the wasm flavor
2017-12-04 22:45:38 -08:00
Andon Andonov a35d222bc2 ILCompiler nuget package support (#4983) 2017-12-04 19:29:10 -08:00
Jan Kotas e0416c0125 Define CORERT for ProjectN builds
CoreRT is component of ProjectN (aka .NET Native for UWP), but our current defines do not reflect it because of CORERT is not defined in ProjectN builds. This creates confusion for folks outside the core runtime team, and conflicts with our documentation. For example, https://github.com/dotnet/corert/blob/master/Documentation/intro-to-corert.md says "CoreRT is the .NET Core runtime that is optimized for AOT scenarios, which .NET Native targets". It does not say "CoreRT is the .NET Core runtime optimized for AOT scenarios that uses RyuJIT backend" or anything like that.

- Before this change:
     PROJECTN: defined in closed source ProjectN builds
     CORERT: defined in open source CoreRT builds
     CORECLR: defined in CoreCLR builds

- After this change:
     PROJECTN: defined in closed source ProjectN builds (same)
     CORERT: defined in both open source CoreRT builds and closed source ProjectN builds (different)
     CORECLR: defined in CoreCLR builds (same)

[tfs-changeset: 1680901]
2017-11-11 15:12:23 -08:00
Jan Kotas 24e0c77c50 Update Roslyn to 2.6.0-beta1-62126-01
Port of https://github.com/dotnet/coreclr/pull/14228

[tfs-changeset: 1677267]
2017-10-03 22:47:40 -07:00
Michal Strehovský 4c446d524a Generate portable PDBs by default for managed projects (#4362) 2017-08-22 16:36:31 -07:00
Jan Kotas 02cc936e06 Disable BuildInParallel for the RestoreAllPackages (#4050)
Fixes #4014
2017-07-03 10:16:52 -07:00
Jan Kotas 1b322c7418 Fix rough edges after CLI update (#3983)
* Move build-restore.cmd back to build-managed

buildpipeline needs to be updated to make this split

* Cleanup dir.props/dir.targets

* Add back VS clues

* Reformat whitespaces to match VS convention
2017-06-26 17:10:12 -07:00
Jan Kotas 555bcbcb54 Update CoreRT build to use latest .NET CLI and build tools (#3916)
- Pick up latest .NET Core 2.0 CLI and buildtools
- Remove all project.json references and convert everything to msbuild projects
- Stick to vanilla .NET CLI project shape as much as possible. Minimize dependencies on buildtools special behaviors
2017-06-24 11:10:44 -07:00
Sergiy Kuryata 49d47734b6 Update CoreFX version to 25417-02 (#3913) 2017-06-17 18:47:29 -07:00
Jan Kotas 65e7669e15 Delete ToolsVersion attribute from msbuild files
The latest project templates do not have it, and it is only good for generating warnings like the following in the detailed build log:

Project file contains ToolsVersion="4.0". This toolset may be unknown or missing, in which case you may be able to resolve this by installing the appropriate version of MSBuild, or the build may have been forced to a particular ToolsVersion for policy reasons. Treating the project as if it had ToolsVersion="14.0". For more information, please see http://go.microsoft.com/fwlink/?LinkId=293424.

[tfs-changeset: 1662024]
2017-06-17 13:12:18 -07:00
Sergiy Kuryata 62c5b207e0 Port optimization in Buffer.Memmove from CoreCLR (#3551)
Port optimization in Buffer.Memmove from CoreCLR

This is just a copy of changes made in
https://github.com/dotnet/coreclr/pull/9786

* Code review feedback
2017-05-09 07:01:19 -07:00
Michal Strehovský 165a553600 Centralize build defines (#3431)
The way we were setting common defines (such as `AMD64`, `BIT64`, `ARM`)
was extremely fragile and invited partial fixes such as #3414 and #3424.
This really needs to be centralized.
2017-04-25 20:36:49 -07:00
Jan Kotas 084aae7321 Update corefx version to 25218-01 (#3383) 2017-04-19 15:15:21 -05:00
Jan Kotas 5d20152efe Update CoreRT to latest CoreFX (#3309) 2017-04-12 08:58:51 -07:00
David Wrighton d4da37e00d Experimental prototype of jit for CoreRT
- Refactorings and tweaks of various ILCompiler infrastructure to allow use within the runtime
- Refactor delegate creation info off of CompilerTypeSystemContext onto TypeSystemContext
- Tweak jit interface to always refer to nodes via interfaces instead of concrete types
- adjust CorInfoImpl.constructStringLiteral to respect the RepresentsIndirectionCell flag
- Initial copy of JitCodeManager. Currently only supports Windows.
- System.Private.Jit
- Uses infrastructure from the ILCompiler such as the CorInfoImpl, jitinterface, and the dependency node infrastructure to define a way to express newly generated code and its dependencies.
- Where relocs from jitted code depend on resolving to other components, they are always indirected through an indirection cell, and the final value is computed by the dynamic type loader GenericDictionaryCell system (which is poorly named, and is actually a general purpose runtime component resolution system.)
- New concept of dynamic MethodEntrypoints in the type loader. This is used to bridge to the jit where necessary
- The various bits of build time goo to produce experimental versions of System.Private.Reflection.Core, System.Private.Reflection.Execution, and System.Private.TypeLoader which contain the ECMA based type loader, and support the jit.
- The new behavior is only enabled for these new experimental builds.
- As the existing ECMA 335 based typeloader/reflection logic hasn't been enabled for building, there are fixes to make it work again

[tfs-changeset: 1651156]
2017-03-16 17:43:47 -07:00
Jan Kotas 83afd158b9 Update build tools to latest (#2815)
* Update BuildToolsVersion to latest
* Cleanup CLSCompliant warnings
* Delete workaround that is no longer needed
* Download .NET Core 1.1
* Fix Roslyn props
* MSBuild.exe was renamed to MSBuild.dll
* Fix CoreCLR tests
* Rename netcoreapp12 -> netcoreapp20
* Fix UnitTests runs
* Fix RemoveEmptyFinalizers CodeAnalysis warnings
* Port init-tools.sh cleanup from CoreCLR
2017-02-24 15:36:08 -08:00
Chris Rummel 99a78afd8d Split pipeline build to match CoreFX's model. (#2505)
* Split pipeline build to match CoreFX's model.
- OS-specific legs no longer publish to MyGet, they just upload to Azure.
- New publish leg downloads from Azure and publishes to MyGet.
- Only includes Microsoft.TargetingPack.Private.CoreRT for now, will add ILCompiler
  after we sort out what OS-specific packages should be named.

* Addressing code review feedback (PR#2505).
2017-01-18 10:46:58 -08:00
Chris Rummel 5518722c82 Add packaging build changes and scripts. (#2325) 2016-12-19 17:05:17 -08:00
Jan Kotas 29ff4ec4e5 Work towards enabling Ubuntu 16.04 build (#2000) 2016-10-10 15:09:26 -07:00
Jan Kotas 45a0b60f3e Update buildtools to 1.0.26-prerelease-00809-01 (#1922) 2016-09-26 18:17:51 -07:00
Jan Kotas 5cf592a251 Update simple test driver 2016-09-19 20:16:42 -07:00
Jan Kotas d4f5c8b037 Update Roslyn compiler to Microsoft.Net.Compilers 2.0.0-beta3 (#1620)
Microsoft.Net.Compilers 2.0.0-beta3 has support for byref locals and returns that will allow us to improve and simplify number of low-level constructs in the runtime.
2016-08-08 11:22:47 -07:00
Wes Haggard 3f692ad0a0 Change to nuget v3 apis for feeds (#1359)
Change to nuget v3 apis for feeds
2016-06-02 18:38:39 -07:00
dotnet-bot d912adb017 Remove explicit references to v3 feeds
[tfs-changeset: 1601229]
2016-05-03 10:37:28 -07:00
Jan Kotas 31eb8f6937 Minor cleanup (#1222) 2016-04-30 06:24:23 -07:00
Jan Kotas 02090707eb Switch to standardized init-tools scripts
- Switch over to using standardized init-tools script used by other repos
- Update to recent buildtools
- Switch to running msbuild against CoreCLR instead of mono
- Make build scripts to be otherwise more similar to the ones used by other repos
2016-04-18 01:09:05 -07:00
Jan Kotas 941a6c7ea1 Merge pull request #1119 from manu-silicon/invalid_defines
Fix invalid declaration of DefineConstants
2016-04-12 05:50:46 -10:00
Manu 7514acf8e9 Fix invalid declaration of DefineConstants 2016-04-12 11:31:46 +09:00
Manu 76846f497f Enable C# 6.0 language 2016-04-12 11:01:16 +09:00
Simon Nattress 13ab08458e Roll forward to latest CLI from Rel/1.0.0
- Migrate to CLI 1.0.0-beta-002209
- Alter scripting to support CLI package layout and Azure blob URL changes
2016-04-05 12:01:13 -07:00
Michal Strehovský 061511e8f3 Fix race condition when running tests
Fixes #974.

Changing the OutputPath also changed ProductPackageDir to something
weird, so I took this as an opportunity to stop placing packaging
related stuff into weird directories (".nuget" was a weird one too -
prefixing with a dot is how you hide directories on Unix).

runtest.sh was passing a dead parameter to restore.sh, so I fixed that
too. I didn't test on Unix. The CI will...
2016-03-23 21:55:37 -07:00
Jan Kotas 7af499fd08 Revert "Disable parallel restore"
This reverts commit 0acc9d64fe.
2016-02-17 18:18:46 -08:00
Senthil bbc917976b Add System.CommandLine and Use Response Files
-- Explicit FileStream async false and dispose
 -- Make VS dev flow compatible
2016-02-17 12:03:06 -08:00
Jan Kotas 0acc9d64fe Disable parallel restore 2016-02-09 20:29:14 -08:00
Jan Kotas ffc8df5bc7 Switch to live CLI build
This reverts commit 374d1f1f2d.
This reverts commit 81fe8e5d94.
This reverts commit 3d2d89e793.
This reverts commit a1f2ba2cae.
2016-02-09 20:29:11 -08:00
Senthil 4dd5765ff2 Feed changes to dotnet.myget 2016-02-05 20:09:15 -08:00
Senthil a1f2ba2cae Revert "Merge pull request #717 from schellap/break2"
This reverts commit 766f4ea7ff, reversing
changes made to ce31cfa86e.

Revert "Merge pull request #767 from schellap/wmain"

This reverts commit 86e568eb6e, reversing
changes made to 1d3ef5fd84.

Revert formatting to old project.json and cppcompilerflag in runtest.cmd
2016-02-05 16:28:54 -08:00
Tarek Mahmoud Sayed db0017218c Fix the Nuget feed.
removing retired feed from the list
2016-02-04 10:01:44 -08:00
Senthil e8cc957fcf Fix project.json syntax for dotnet restore 2016-01-29 02:05:09 -08:00
Senthil 7636b11616 Disable external dir.props import for repo builds 2016-01-14 15:38:09 -08:00
Jan Kotas 682c9fbac1 Update package and build tools versions 2015-12-17 22:29:48 -08:00
Senthil Chellappan e03ac10745 Splitting packages to toolchain and runtime 2015-12-09 14:46:53 -08:00
Senthil a8199d3bfe Switch to dotnet tools and add unix testing
- Fix few issues and produce xunit format
  - Set HOME if undefined and DOTNET_HOME
  - Enable CPP and JIT for all platforms except OSX
      o CLI has no support for RyuJIT.
2015-12-01 18:34:21 -08:00
dotnet-bot 9d362c1b21 Port StackTraceGenerator to CoreRT
[tfs-changeset: 1552759]
2015-12-01 09:44:51 -08:00