Add patch script and update readme

To make it easier to patch `System.Console.dll`
This commit is contained in:
Andrew Schwartzmeyer
2015-12-17 11:29:12 -08:00
parent 65b2cb9831
commit abceb18344
2 changed files with 13 additions and 6 deletions
+6 -6
View File
@@ -75,7 +75,7 @@ Our convention is to create feature branches `dev/feature` off our integration b
## Setup build environment
We use the [.NET Command Line Interface][dotnet-cli] (`dotnet-cli`) to build the managed components, and [CMake][] to build the native components. Install `dotnet-cli` by following their documentation. Then install the following dependencies (assuming Ubuntu 14.04):
We use the [.NET Command Line Interface][dotnet-cli] (`dotnet-cli`) to build the managed components, and [CMake][] to build the native components. Install `dotnet-cli` by following their documentation (make sure to install the `dotnet-dev` package to get the latest version). Then install the following dependencies (assuming Ubuntu 14.04):
```sh
sudo apt-get install g++ cmake make libboost-filesystem-dev lldb-3.6 strace
@@ -94,7 +94,11 @@ sudo apt-get install libpam0g-dev libssl-dev libcurl4-openssl-dev
## Building
The following steps are done by `./build.sh`. Note that `dotnet restore` must be done at least once from the top directory to obtain all the necessary .NET packages. The variable `$BIN` is the output directory, `bin`.
The command `dotnet restore` must be done at least once from the top directory to obtain all the necessary .NET packages; unfortunately, we also have to temporarily patch `System.Console.dll` until the API is officially updated, so run `./patch.sh`.
Build with `./build.sh`, which does the following steps.
> The variable `$BIN` is the output directory, `bin`.
### Native
@@ -170,10 +174,6 @@ make clean && make -j && make reg
Sadly, `dotnet-test` is not fully supported on Linux, so our xUnit tests do not currently run. We may be able to work around this, or get the `dotnet-cli` team to fix their xUnit runner. GitHub [issue](https://github.com/dotnet/cli/issues/407).
### Pester
While Pester gets deployed and can be invoked, it has an issue asking for confirmation to do anything, and refuses to execute multiple `It` blocks. Need to work with upstream PowerShell teams to solve this.
### Remoting
Connecting to PowerShell on Linux gets quite far, but bails out to due `Cannot convert the "System.Management.Automation.Host.Size" value of type "System.String" to type "System.Type".`
Executable
+7
View File
@@ -0,0 +1,7 @@
#!/usr/bin/env bash
dotnet restore
echo Patching System.Console.dll
curl -fLo \
~/.dnx/packages/System.Console/4.0.0-rc2-23616/ref/dotnet5.4/System.Console.dll \
'https://github.com/andschwa/corefx/raw/cc1ad3b33318c44d6c615d449b2db7b1715e8e60/System.Console.dll'