Skip to content

Commit

Permalink
Public release of the hMSBuild 2.1
Browse files Browse the repository at this point in the history
* NEW: Support for VS2019 msbuild (Thanks @gerhardol)

* CHANGED: Removed possible last extra slash `\` from path, ie. ~ `..\Bin\\MSBuild.exe`
           When x32 for searching from Visual Studio with `-notamd64` key.
           Part of PR #11

* CHANGED: Default remote vswhere is 2.6.7.
           https://github.com/microsoft/vswhere/releases/tag/2.6.7
  • Loading branch information
3F committed May 27, 2019
1 parent 759b3ae commit 4b368c9
Show file tree
Hide file tree
Showing 4 changed files with 48 additions and 7 deletions.
6 changes: 6 additions & 0 deletions .github/FUNDING.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
# ~

github: 3F
patreon: GitHub3F
ko_fi: github3f
custom: https://3F.github.com/Donation/
2 changes: 1 addition & 1 deletion .version
Original file line number Diff line number Diff line change
@@ -1 +1 @@
2.0.0
2.1.0
35 changes: 29 additions & 6 deletions Readme.md
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
# [hMSBuild](https://github.com/3F/hMSBuild)

Compiled text-based embeddable pure batch-scripts (no powershell or dotnet-cli) for searching of available MSBuild tools. VS2017+ (does not require local vswhere.exe [[?](https://github.com/Microsoft/vswhere/issues/41)]), VS2015, VS2013, VS2010, other versions from .NET Framework. Contains [gnt.core](https://github.com/3F/GetNuTool) for work with NuGet packages and more...
Compiled text-based embeddable pure batch-scripts (no powershell, no dotnet-cli) for searching of available MSBuild tools. VS2019+, VS2017 (it does not require local vswhere.exe [[?](https://github.com/Microsoft/vswhere/issues/41)]), VS2015, VS2013, VS2012, VS2010, other versions from .NET Framework. Contains [gnt.core](https://github.com/3F/GetNuTool) for work with NuGet packages and more...


[![Build status](https://ci.appveyor.com/api/projects/status/tusiutft7a0ei109/branch/master?svg=true)](https://ci.appveyor.com/project/3Fs/hmsbuild/branch/master) [![release-src](https://img.shields.io/github/release/3F/hMSBuild.svg)](https://github.com/3F/hMSBuild/releases/latest) [![License](https://img.shields.io/badge/License-MIT-74A5C2.svg)](https://github.com/3F/hMSBuild/blob/master/License.txt)
[![GetNuTool core](https://img.shields.io/badge/GetNuTool-v1.7-93C10B.svg)](https://github.com/3F/GetNuTool)

[![Build history](https://buildstats.info/appveyor/chart/3Fs/hmsbuild?buildCount=20&includeBuildsFromPullRequest=true&showStats=true)](https://ci.appveyor.com/project/3Fs/hmsbuild/history)
[![Build history](https://buildstats.info/appveyor/chart/3Fs/hmsbuild?buildCount=15&includeBuildsFromPullRequest=true&showStats=true)](https://ci.appveyor.com/project/3Fs/hmsbuild/history)

**Download:** Latest stable batch-script [ [hMSBuild](https://3F.github.io/hMSBuild/releases/latest/) ]
* Stable: [/releases](https://github.com/3F/hMSBuild/releases) [ [latest](https://github.com/3F/hMSBuild/releases/latest) ]
Expand Down Expand Up @@ -47,18 +47,18 @@ Start with `hMSBuild -h`

### What supports ?

* Versions from VS2017+
* Versions from VS2019+, VS2017
* Full support even if you still have no any [local `vswhere.exe`](https://github.com/Microsoft/vswhere/issues/41) [[?](https://github.com/Microsoft/vswhere/issues/41)]

* Versions from VS2015, VS2013
* Versions from VS2015, VS2013, VS2012
* Versions from .NET Framework, including for VS2010

### Algorithm of searching

**v2.0+**

* Versions:
* VS2017+ ➟ VS2015, VS2013, ... ➟ .netfx
* VS2019+, VS2017 ➟ VS2015, VS2013, ... ➟ .netfx
* Architectures (configure via `-notamd64` key):
* x64 ➟ x32
* Priorities (configure via `-vsw-priority` and `-stable` keys). *Specific workload components in more priority than pre-release products. See [Issue #8](https://github.com/3F/hMSBuild/issues/8)*
Expand Down Expand Up @@ -131,6 +131,29 @@ hMSBuild -GetNuTool /p:ngpackages="Conari;regXwild"
hMSBuild -no-vs "DllExport.sln" || goto bx
```

## Integration with other scripts

### batch

hMSBuild is a pure batch script. Therefore, you can combine this even inside your other batch scripts. Or simply invoke this externally as you need:

~

```bat
set msbuild=hMSBuild -notamd64
...
%msbuild% Conari.sln /m:4 /t:Rebuild
```

```bat
for /F "tokens=*" %%i in ('hMSBuild -only-path -notamd64') do set msbuild="%%i"
...
%msbuild% /version
```

...


## Build & Tests

Our build was based on [vssbe](https://github.com/3F/vsSolutionBuildEvent) scripts.
Expand All @@ -147,4 +170,4 @@ Available tests can be raised by command:
.\tests
```

We're waiting for your amazing contributions!
We're waiting for your awesome contributions!
12 changes: 12 additions & 0 deletions changelog.txt
Original file line number Diff line number Diff line change
@@ -1,6 +1,18 @@
hMSBuild :: https://github.com/3F/hMSBuild
- - - - -

[v2.1] 2019.05.27

* NEW: Support for VS2019 msbuild (Thanks @gerhardol)

* CHANGED: Removed possible last extra slash `\` from path, ie. ~ `..\Bin\\MSBuild.exe`
When x32 for searching from Visual Studio with `-notamd64` key.
Part of PR #11

* CHANGED: Default remote vswhere is 2.6.7.
https://github.com/microsoft/vswhere/releases/tag/2.6.7


[v2.0] 2018.12.23

* NEW: Full support of the following special characters for MSBuild args. Issue #7.
Expand Down

0 comments on commit 4b368c9

Please sign in to comment.