Change the order of the "search paths", so that the environment
variable can always override it.
Update the man page to reflect the change.
xbuild tries various values for the msbuild property $(MSBuildExtensionsPath), in order:
- 1. /Library/Frameworks/Mono.framework/External/xbuild on Mac OSX.
- 2. Paths specified in the environment variable $MSBuildExtensionsPath.
+ 1. Paths specified in the environment variable $MSBuildExtensionsPath.
+ 2. /Library/Frameworks/Mono.framework/External/xbuild on Mac OSX.
3. $XDG_CONFIG_HOME/xbuild/tasks (or Environment.SpecialFolder.ApplicationData)
4. $prefix/lib/mono/xbuild (default location)
string envvar = Environment.GetEnvironmentVariable (property_name);
envvar = String.Join (":", new string [] {
+ (envvar ?? String.Empty),
// For mac osx, look in the 'External' dir on macosx,
// see bug #663180
MSBuildUtils.RunningOnMac ? MacOSXExternalXBuildDir : String.Empty,
- (envvar ?? String.Empty),
DotConfigExtensionsPath});
string [] paths = envvar.Split (new char [] {':'}, StringSplitOptions.RemoveEmptyEntries);