X-Git-Url: http://wien.tomnetworks.com/gitweb/?p=mono.git;a=blobdiff_plain;f=README.md;h=facec5b23836396c9fbc11120c5f8eee8fd64b1c;hp=5aad9440a06112eb34bb89a82f8bd46fb2910640;hb=HEAD;hpb=69f207ee9e4f440e66e98bf5f685807f6527c39d diff --git a/README.md b/README.md index 5aad9440a06..facec5b2383 100644 --- a/README.md +++ b/README.md @@ -15,32 +15,46 @@ The Mono project is part of the [.NET Foundation](http://www.dotnetfoundation.or 6. [Configuration Options](#configuration-options) 7. [Working with Submodules](#working-with-submodules) -**Build Status** - -Officially supported architectures: - -| debian-amd64 | debian-i386 | debian-armel | debian-armhf | windows-amd64 | -|-------------------------|------------------------|-------------------------|-------------------------|---------------------------| -| [![debian-amd64][1]][2] | [![debian-i386][3]][4] | [![debian-armel][5]][6] | [![debian-armhf][7]][8] | [![windows-amd64][9]][10] | - -Community supported architectures: - -| centos-s390x | -|---------------------------| -| [![centos-s390x][11]][12] | - -[1]: http://jenkins.mono-project.com/job/test-mono-mainline/label=debian-amd64/badge/icon -[2]: http://jenkins.mono-project.com/job/test-mono-mainline/label=debian-amd64/ -[3]: http://jenkins.mono-project.com/job/test-mono-mainline/label=debian-i386/badge/icon -[4]: http://jenkins.mono-project.com/job/test-mono-mainline/label=debian-i386/ -[5]: http://jenkins.mono-project.com/job/test-mono-mainline/label=debian-armel/badge/icon -[6]: http://jenkins.mono-project.com/job/test-mono-mainline/label=debian-armel/ -[7]: http://jenkins.mono-project.com/job/test-mono-mainline/label=debian-armhf/badge/icon -[8]: http://jenkins.mono-project.com/job/test-mono-mainline/label=debian-armhf/ -[9]: https://ci.appveyor.com/api/projects/status/1e61ebdfpbiei58v/branch/master?svg=true -[10]: https://ci.appveyor.com/project/ajlennon/mono-817/branch/master -[11]: https://jenkins.mono-project.com/job/z/label=centos-s390x/badge/icon -[12]: https://jenkins.mono-project.com/job/z/label=centos-s390x +### Build Status + +| OS | Architecture | Status | +|--------------|--------------------|------------------------------| +| Ubuntu 14.04 | amd64 | [![ubuntu-1404-amd64][1]][2] | +| Ubuntu 14.04 | i386 | [![ubuntu-1404-i386][3]][4] | +| Debian 8 | armel | [![debian-8-armel][5]][6] | +| Debian 8 | armhf | [![debian-8-armhf][7]][8] | +| Debian 8 | arm64 | [![debian-8-arm64][9]][10] | +| OS X | amd64 | [![osx-amd64][11]][12] | +| OS X | i386 | [![osx-i386][13]][14] | +| Windows | amd64 | [![windows-amd64][15]][16] | +| Windows | i386 | [![windows-amd64][17]][18] | +| CentOS | s390x (cs) | [![centos-s390x][19]][20] | +| Debian 8 | ppc64el (cs) | [![debian-8-ppc64el][21]][22]| + +_(cs) = community supported architecture_ + +[1]: https://jenkins.mono-project.com/job/test-mono-mainline-linux/label=ubuntu-1404-amd64/badge/icon +[2]: https://jenkins.mono-project.com/job/test-mono-mainline-linux/label=ubuntu-1404-amd64 +[3]: https://jenkins.mono-project.com/job/test-mono-mainline-linux/label=ubuntu-1404-i386/badge/icon +[4]: https://jenkins.mono-project.com/job/test-mono-mainline-linux/label=ubuntu-1404-i386/ +[5]: https://jenkins.mono-project.com/job/test-mono-mainline-linux/label=debian-8-armel/badge/icon +[6]: https://jenkins.mono-project.com/job/test-mono-mainline-linux/label=debian-8-armel/ +[7]: https://jenkins.mono-project.com/job/test-mono-mainline-linux/label=debian-8-armhf/badge/icon +[8]: https://jenkins.mono-project.com/job/test-mono-mainline-linux/label=debian-8-armhf/ +[9]: https://jenkins.mono-project.com/job/test-mono-mainline-linux/label=debian-8-arm64/badge/icon +[10]: https://jenkins.mono-project.com/job/test-mono-mainline-linux/label=debian-8-arm64/ +[11]: https://jenkins.mono-project.com/job/test-mono-mainline/label=osx-amd64/badge/icon +[12]: https://jenkins.mono-project.com/job/test-mono-mainline/label=osx-amd64/ +[13]: https://jenkins.mono-project.com/job/test-mono-mainline/label=osx-i386/badge/icon +[14]: https://jenkins.mono-project.com/job/test-mono-mainline/label=osx-i386/ +[15]: https://jenkins.mono-project.com/job/z/label=w64/badge/icon +[16]: https://jenkins.mono-project.com/job/z/label=w64/ +[17]: https://jenkins.mono-project.com/job/z/label=w32/badge/icon +[18]: https://jenkins.mono-project.com/job/z/label=w32/ +[19]: https://jenkins.mono-project.com/job/test-mono-mainline-community/label=centos-s390x/badge/icon +[20]: https://jenkins.mono-project.com/job/test-mono-mainline-community/label=centos-s390x +[21]: https://jenkins.mono-project.com/job/test-mono-mainline-community-chroot/label=debian-8-ppc64el/badge/icon +[22]: https://jenkins.mono-project.com/job/test-mono-mainline-community-chroot/label=debian-8-ppc64el Compilation and Installation ============================ @@ -179,22 +193,18 @@ disable the compilation of a Mono runtime with the SGen garbage collector. * On platforms that support it, after building Mono, you will have -both a `mono` binary and a `mono-sgen` binary. `mono` uses Boehm, +both a `mono-boehm` binary and a `mono-sgen` binary. `mono-boehm` uses Boehm, while `mono-sgen` uses the Simple Generational GC. -* `--with-gc=[included, boehm, none]` - Selects the default Boehm +* `--with-libgc=[included, none]` - Selects the default Boehm garbage collector engine to use. * *included*: (*slightly modified Boehm GC*) This is the default value for the Boehm GC, and it's the most feature complete, it will allow Mono to use typed allocations and support the debugger. - * *boehm*: This is used to use a system-install Boehm GC, it is -useful to test new features available in Boehm GC, but we do not -recommend that people use this, as it disables a few features. - * *none*: -Disables the inclusion of a garbage collector. +Disables the inclusion of a Boehm garbage collector. * This defaults to `included`. @@ -451,6 +461,19 @@ disable it. * There are a number of runtime options to control this also, see the man page. +* `--with-csc=roslyn,mcs,default` + + * Use this option to configure which C# compiler to use. By default + the configure script will pick Roslyn, except on platforms where + Roslyn does not work (Big Endian systems) where it will pick mcs. + + If you specify "mcs", then Mono's C# compiler will be used. This + also allows for a complete bootstrap of Mono's core compiler and + core libraries from source. + +   If you specify "roslyn", then Roslyn's C# compiler will be used. + This currently uses Roslyn binaries. + * `--enable-nacl` * This configures the Mono compiler to generate code @@ -460,6 +483,16 @@ http://code.google.com/p/nativeclient/ * Currently this is used with Mono's AOT engine as Native Client does not support JIT engines yet. +* `--enable-wasm` + + * Use this option to configure mono to run on WebAssembly. It will + set both host and target to the WebAssembly triplet. This overrides + the values passed to `--host` or `--target` and ignored what config.sub guesses. + + This is a workaround to enable usage of old automake versions that don't + recognize the wasm triplet. + + Working With Submodules ======================= @@ -517,7 +550,24 @@ See the LICENSE file for licensing information, and the PATENTS.TXT file for information about Microsoft's patent grant. Mono Trademark Use Policy -======= +========================= The use of trademarks and logos for Mono can be found [here] (http://www.dotnetfoundation.org/legal/mono-tm). +Maintaining the Class Library Solution Files +============================================ + +Mono now ships with a solution file that can be used to build the +assemblies from an IDE. Either by opening the topmost `net_4_x.sln` +file, or to by loading one of the individual `csproj` files located in +each directory. + +These are maintained by extracting the configuration information from +our Makefiles, which as of May 2016 remain the canonical location for +configuration information. + +When changes are made to the Makefiles, a user would need to run the +following command to re-generate the solution files at the top level: + + $ make update-solution-files +