diff options
author | Ankit Jain <radical@corewars.org> | 2011-02-28 00:27:17 +0300 |
---|---|---|
committer | Ankit Jain <radical@corewars.org> | 2011-02-28 00:40:15 +0300 |
commit | 1ff11121a4ab863ded1dd68a2f3f98ec2b5b7b1b (patch) | |
tree | bc51cc9a35c1a8197ba637394db25bbfc150b750 /man/xbuild.1 | |
parent | 35044c74a25b2c3c983ceca94f5163fa309a495c (diff) |
[xbuild] Add support for multi-targeting arbitrary frameworks.
ToolsVersion 4.0 supports targeting arbitrary frameworks defined
by FrameworkList.xml files and referenced by $(TargetFrameworkMoniker),
which is of the format:
Identifier,Version=<version>[,Profile=<profile>]
built as:
$(TargetFrameworkIdentifier),Version=$(TargetFrameworkVersion)[,Profile=$(TargetFrameworkProfile)]
eg. '.NETFramework,Version=v4.0' .
Frameworks are searched for in (order):
1. Paths specified in the environment variable $XBUILD_FRAMEWORK_FOLDERS_PATH
2. /Library/Frameworks/Mono.framework/External/xbuild-frameworks on Mac OSX.
3. MSBuild property $(TargetFrameworkRoot)
4. $prefix/lib/mono/xbuild-frameworks (default location)
.NET frameworks 2.0/3.0/3.5/4.0 have corresponding FrameworkList.xml
files now, which allows projects to target them. Custom frameworks like
MonoDroid can install suitable FrameworkList.xml files, and projects
can target them using the correct $(TargetFrameworkIdentifier) and
$(TargetFrameworkVersion).
Update man page.
Diffstat (limited to 'man/xbuild.1')
-rw-r--r-- | man/xbuild.1 | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/man/xbuild.1 b/man/xbuild.1 index 2320a37fa72..7e69a2d0484 100644 --- a/man/xbuild.1 +++ b/man/xbuild.1 @@ -83,6 +83,34 @@ location. This is a xbuild-only feature. This is also applicable for the properties $(MSBuildExtensionsPath32) and $(MSBuildExtensionsPath64), and the environment variables have the corresponding names - MSBuildExtensionsPath32/64 . .TP +.I "XBUILD_FRAMEWORK_FOLDERS_PATH" +With ToolsVersion 4.0, projects can target arbitrary frameworks referenced by TargetFrameworkMoniker, +which is of the format: + + Identifier,Version=<version>[,Profile=<profile>] + +Eg. ".NETFramework,Version=v4.0" + +The 3 parts of the moniker are given by the msbuild properties: + + $(TargetFrameworkIdentifier), $(TargetFrameworkVersion) and $(TargetFrameworkProfile) + +This moniker maps to a framework description file on disk: + + <framework_root>/Identifier/Version/[Profile]/RedistList/FrameworkList.xml + +Framework root here is configurable and is resolved in the following order: + +.nf + 1. Paths specified in the environment variable $XBUILD_FRAMEWORK_FOLDERS_PATH + 2. /Library/Frameworks/Mono.framework/External/xbuild-frameworks on Mac OSX. + 3. MSBuild property $(TargetFrameworkRoot) + 4. $prefix/lib/mono/xbuild-frameworks (default location) +.fi + +XBuild tries the paths given above, in order, till it finds a FrameworkList.xml for the moniker. +Running with /v:detailed or higher verbosity will show the various paths that it tries. +.TP .I "XBUILD_COLORS" If this variable is set, it contains a string of the form "type=foreground,type=.." that specifies which color to use to display |