- avoid `cmd /C dnvm.cmd ...` because `cmd` does not report `.cmd` script exit code correctly
- change both `_dnu.shade` and `_k.shade` though `_k.shade` is more-often an issue
- @moozzyk reported problem in [discussion](https://github.com/aspnet/Universe/pull/299#discussion-diff-41954492) of PR #299
- #290
- remove workaround for aspnet/dnx#2566; not needed if building with CLR or Mono
- install Core CLR DNX in `build.sh`
- must be applied in all repos using Travis before this PR goes in
- add `Dnu()` and `Dnx()` macros
- remove `K()` macro from `_k-test.shade`; use `Dnx()` instead
- incorporate per-repo changes not yet applied to Universe templates
- use newer `NuGet.exe`
- Universe itself does not need the Korebuild package or `dnvm`
Changes partially revert 618a73b e.g. always start build with CLR or Mono DNX
nits:
- reduced DNX switches and `dnvm` calls in `build.cmd`
- base NuGet skip decision on _both_ KoreBuild and Sake's installation status
- make `Quiet` variable work more reliably; small changes often led to compilation problems
- requires a small change in DNX repo at the same time
- remove some trailing whitespace and tabs
- add a bit more description to `_k.shade`
- hits all of the checkboxes in #272
Specify test runtime explicitly and support testing w/ DNX Core on Linux
- turn on DNX Core on Linux testing with `--test-dnxcore` target
- or `KOREBUILD_TEST_DNXCORE` environment variable
Work around aspnet/dnx#2566
- builds fail with DNX Core on Linux otherwise
Do not attempt to install nodejs if not on Windows
Use user's `default` DNVM when `%SKIP_DNX_INSTALL%` defined on Windows
- enables builds with DNX Core
- should be the default for new repos; older repos can opt in
Use consistent case for all `--quiet` environment variables
- also name these variables consistently; start w/ `KOREBUILD_`
- environment variables are case-sensitive on Linux and mixed case was annoying
- also get rid of leading space in these environment variable values
Check `IsLinux` and not `IsMono`
- `IsMono` is always `true` on Linux since Sake always runs in Mono there
- but `IsLinux` is the right question
nits:
- remove tabs from a few files
- remove compilation warnings in local `makefile.shade`
- beta6-10394 to beta8-15518
- grabbed from aspnet/Home but left default feed URIs alone
- includes important fixes such as `dnvm use alias -r coreclr` support
- do not glob to the ends of the earth when looking for `project.json` files
nits:
- remove unused variable in `_kpm-build.shade`
- remove incorrect comment in `_kpm-pack.shade`
- clean up some trailing whitespace
- enables use of this command where it's currently overridden
- in turn, this means `--quiet` would be honoured in those `makefile.shade` files
For example can use this hook to shut DNX build up a bit
- `makefile.shade` there calls `dnu restore` directly and ignores `--quiet`
Removing Common.Native.targets - to avoid increasing build complexity repo with native projects will have their own target that generates version.h file
* Adding an MSBuild target file that generates a header containing file and product versions which will be used in .rc files in native projects across all repos.
Note that keeping header generation in MSBuild is cleaner than generating it in a .shade file since the entire project is being built within a single build subsystem and therefore you can build the project directly (i.e. just with MSBuild) without having to do it with Sake (if the file did not exist)
* Updating native-compile target in _k-standard-goals.shade to pass version numbers.
- aspnet/Mvc#2082
- problems specific to local `node` and related installations
- quote authenticode verification target
- quote local `node` library paths
- quote local `npm.cmd` path (with ye olde `/S` double-quoting hack)
- quote `--prefix` values in `npm install` commands
- quote `rimraf` directories to delete
- aspnet/Mvc#2116
- run Bower non-interatively from our scripts
- does not affect grunt-brower-task; programmatic Bower use never prompts
- see Bower discussion at bower/bower#1162
- FYI `$env:CI = 'TeamCity'` would work similarly but TeamCity does not set that
- allows calling .shade files to avoid repeated `TestCommand()` calls
nit in _node-install.shade:
- name `default nodeDir` variable to match other shade files; reusing value
- #144
- problems seem primarily to occur when `node` is globally installed but a
package (`grunt` or `bower`) is not; `npm install X` fails in this case
- create the `--prefix` directory first to avoid these installation failures
- change _node-install.shade to avoid confusion when directory exists
- ignore leftover XML files e.g. from other branches
- tested manually in MVC repo with a bad doc file outside a K project
- limit checked XML files to those in `bin` directory under K projects
- align with clean target: that only removes bin directories under K projects
- approach ignores XML files in .csproj projects but no such projects in
repos where _k-xml-docs-test.shade file is used
Address old [comment](https://github.com/aspnet/Universe/pull/101/files#r16633938) from @Eilon on PR#101
> Traditionally we use i++ and not ++i.