Merge pull request #5714 from alexischr/update_bockbuild
[mono.git] / man / mcs.1
index 959a8e56c0e386bbde355dc359ba0f1ce7a017ff..607cea480479125836e6824cf147a81f08b63af4 100644 (file)
--- a/man/mcs.1
+++ b/man/mcs.1
@@ -4,25 +4,27 @@
 ..
 .TH mcs 1 "6 January 2001"
 .SH NAME 
-mcs \- Mono C# Compiler
+mcs \- Turbo C# Compiler
 .SH SYNOPSIS
 .B mcs 
 [option] [source-files]
 .SH DESCRIPTION
-mcs is the Mono C# compiler, an implementation of the ECMA-334
-language specification.  You can pass one or more options to drive the
-compiler, and a set of source files.  Extra options or arguments can
-be provided in a response file.  Response files are referenced by
-prepending the @ symbol to the response file name.
+mcs is the Turbo C# compiler (also known as the Mono C# compiler), it
+is an implementation of the ECMA-334 language specification.  You can
+pass one or more options to drive the compiler, and a set of source
+files.  Extra options or arguments can be provided in a response file.
+Response files are referenced by prepending the @ symbol to the
+response file name.
 .PP
 The 
 .I mcs
 compiler is used to compile against the latest Mono Base Class Library
-version and fully implements C# 1.0, 2.0, 3.0 and 4.0 specifications.
+version and fully implements C# 1.0, 2.0, 3.0, 4.0, 5.0 and 6.0
+specifications with partial support for C# 7.0.
 .PP
 See the section on packages for more information.
 .PP
-The Mono C# compiler accepts the same command line options that the
+The Turbo C# compiler accepts the same command line options that the
 Microsoft C# compiler does.  Those options can start with a slash or a
 dash (/checked is the same as -checked).  Additionally some GNU-like
 options are supported, those begin with "--".  All MCS-specific flags
@@ -36,13 +38,13 @@ for partial compilation.  To achieve the benefits of partial
 compilation, you should compile programs into their own assemblies,
 and later reference them with the "-r" flag.
 .PP
-The Mono C# compiler generates images (.exe files) that contain CIL
+The Turbo C# compiler generates images (.exe files) that contain CIL
 byte code that can be executed by any system that implements a Common
 Language Infrastructure virtual machine such as the Microsoft .NET
 runtime engine on Windows or the Mono runtime engine on Unix systems.
 Executables are not bound to a specific CPU or operating system.
 .PP
-The Mono C# compiler by default only references three assemblies:
+The Turbo C# compiler by default only references three assemblies:
 mscorlib.dll, System.dll and System.Xml.dll.   If you want to
 reference extra libraries you must manually specify them using the
 -pkg: command line option or the -r: command line option.
@@ -52,7 +54,7 @@ use the -pkg:dotnet command line option.
 .SH OPTIONS
 .TP
 .I \-\-about
-Displays information about the Mono C# compiler
+Displays information about the Turbo C# compiler
 .TP
 .I \-\-addmodule:MODULE1[,MODULE2]
 Includes the specified modules in the resulting assembly.  Modules are
@@ -163,7 +165,7 @@ The possible values are:
 .TP
 .I "Default"
 Instruct compiler to use the latest version. Equivalent is to omit the
-switch (this currently defaults to the C# 4.0 language specification).
+switch (this currently defaults to the C# 6.0 language specification).
 .TP
 .I "ISO-1"
 Restrict compiler to use only first ISO standardized features.
@@ -183,11 +185,19 @@ Restrict the compiler to use only the features available in C# 3.0
 Restrict the compiler to use only the features available in C# 4.0
 specification.
 .TP
-.I "future"
+.I "5"
+Restrict the compiler to use only the features available in C# 5.0
+specification.
+.TP
+.I "6"
+Restrict the compiler to use only the features available in C# 6.0
+specification.
+.TP
+.I "experimental"
 Enables unstable features from upcoming versions of the language.
 .PP
 Notice that this flag only restricts the language features available to
-the programmer. A version of produced assemblies can be controled using
+the programmer. A version of produced assemblies can be controlled using
 .I SDK
 option.
 .ne
@@ -229,6 +239,9 @@ Names the output file to be generated.
 .I \-\-parse
 Used for benchmarking.  The compiler will only parse its input files.
 .TP
+.I \-pathmap:K=V[,Kn=Vn]
+Sets a mapping for source path names used in generated output.
+.TP
 .I \-pkg:package1[,packageN]
 Reference assemblies for the given packages.
 .Sp
@@ -249,29 +262,6 @@ This will instruct the compiler to reference the System.* libraries
 available on a typical dotnet framework installation, notice that this
 does not include all of the Mono libraries, only the System.* ones.  This
 is a convenient shortcut for those porting code.
-.TP
-.I \-pkg:olive
-Use this to reference the "Olive" libraries (the 3.0 and 3.5 extended
-libraries).
-.TP
-.I \-pkg:silver
-References the assemblies for creating Moonlight/Silverlight
-applications.
-.TP
-.I \-pkg:silverdesktop
-Use this option to create Moonlight/Silverlight applications that
-target the desktop.   This option allows developers to consume the
-Silverlight APIs with the full 2.0 profile API available to them,
-unlike 
-.I smcs 
-it gives full access to all the APIs that are part of Mono.  The only
-downside is that applications created with silverdesktop will not run
-on the browser.   Typically these applications will be launched
-with the 
-.I mopen
-command line tool.
-.TP
-For more details see the PACKAGE section in this document
 .ne
 .RE
 .TP
@@ -530,21 +520,21 @@ funded by Ximian, Novell and Marek Safar.
 .SH LICENSE
 The Mono Compiler Suite is released under the terms of the GNU GPL or
 the MIT X11.  Please read the accompanying `COPYING' file for details.
-Alternative licensing for the compiler is available from Novell.
+Alternative licensing for the compiler is available from Xamarin.
 .PP
 .SH SEE ALSO
-csharp(1), mdb(1), mono(1), mopen(1), pkg-config(1), sn(1)
+csharp(1), mono(1), pkg-config(1), sn(1)
 .PP
 .SH BUGS
 To report bugs in the compiler, you must file them on our bug tracking
 system, at:
-http://www.mono-project.com/Bugs 
+http://www.mono-project.com/community/bugs/
 .SH MAILING LIST
-The Mono Mailing lists are listed at http://www.mono-project.com/Mailing_Lists
+The Mono Mailing lists are listed at http://www.mono-project.com/community/help/mailing-lists/
 .SH MORE INFORMATION
 The Mono C# compiler was developed by Novell, Inc
-(http://www.novell.com, http) and is based on the
+(http://www.novell.com) and Xamarin Inc (http://www.xamarin.com) is based on the
 ECMA C# language standard available here:
 http://www.ecma.ch/ecma1/STAND/ecma-334.htm
 .PP
-The home page for the Mono C# compiler is at http://www.mono-project.com/CSharp_Compiler
+The home page for the Mono C# compiler is at http://www.mono-project.com/docs/about-mono/languages/csharp/