With dependencies setup correctly, `make -j` now works as
expected. `prepare` target came back under a new role, to setup the
application base and CoreCLR in the execution environment.
Note that `$(APP_BASE)` is a phony target because we always want a clean
deployment. Cannot `rm -rf exec_env` because it conflicts with
`$(CORECLR)` when run in parallel.
`ps_test.dll` is now built in dotnetlibs, and copied along with xUnit
libraries during `internal-prepare-exec_env`.
Build process now creates things only as needed.
Compile with monad-run make HelloWorld.exe, given a HelloWorld.cs. Will
compile with our .NET Core, and output how to run. Does not support
multiple files.
Import the functions into your shell, `source scripts/monad-docker.sh`,
then run `monad-run make test` or `monad-tty make run-interactive` from
`monad-linux`. Top level `Makefile` passes to `scripts/Makefile`.
Rather than downloading nuget.exe on every run, we can cache it, just
not in monad-ext with a rule to copy it. Instead, there's a rule to
refresh it from its canonical home.
See http://dist.nuget.org/index.html
- Use explicit versions of NuGet packages
- Removed cruft
- Use MONO_PATH over cp
- Remove nuget.exe on cleanall
- Patch version bump of Reflection.Metadata and Collections.Immutable
- Download nuget.exe from its official home
- Remove beta nuget.exe from monad-ext
- Specify dependencies in packages.config and use nuget.exe -restore
- Add prepare dependency to package libraries
- No more manual prepare step
- Update .gitignore
- Repins monad-ext to master, which was reset to the CoreCLR/FX update.
- Fixes Makefile for restructuring of monad-ext/coreclr
- Repins monad with fix for lack of System.Reflection.Metadata
- Updates build mapping for repin of monad
- build.sh runs non-interactively
- build-tty.sh runs interactively with a pseudo tty
- both are shims to build-run.sh
- monad-native no longer depends on a tty
Monad submodule has been squashed and rebased to new PowerShell branch,
th2_srv1_mgmt_dev. Build system has been updated to include upstream
changes, as well as the addition of CorePsPlatform.cs to the PowerShell
build system (so it longer needs to be added automatically).