Remove outdated info and unused files from mcs/ (#4916)
authorAlexander Köplinger <alex.koeplinger@outlook.com>
Tue, 23 May 2017 12:27:42 +0000 (14:27 +0200)
committerGitHub <noreply@github.com>
Tue, 23 May 2017 12:27:42 +0000 (14:27 +0200)
Most of the removed files weren't touched in the last decade
and are unused so it's better to remove them to avoid confusion
about what they do.

I also went over and removed the most outdated info from readme
files, we probably want to do a more thorough overhaul in the future.

25 files changed:
mcs/AUTHORS
mcs/COPYING
mcs/CodingStyle
mcs/INSTALL.txt
mcs/Makefile
mcs/README
mcs/build/build.proj [deleted file]
mcs/build/msbuild/.gitattributes [deleted file]
mcs/build/msbuild/Mono.Common.targets [deleted file]
mcs/build/msbuild/Mono.Default.targets [deleted file]
mcs/class/LICENSE
mcs/class/README
mcs/class/build-rx-dll-sources.sh [deleted file]
mcs/class/project_template_android.txt [deleted file]
mcs/class/project_template_ios.txt [deleted file]
mcs/tools/Makefile
mcs/tools/assemblies.xml [deleted file]
mcs/tools/mono-win32-setup-dark.bmp [deleted file]
mcs/tools/mono-win32-setup-light.bmp [deleted file]
mcs/tools/mono-win32-setup.nsi [deleted file]
mcs/tools/scan-tests.pl [deleted file]
mcs/tools/security/security.proj [deleted file]
mcs/tools/tinderbox/smtp.c [deleted file]
mcs/tools/tinderbox/tinderbox.sh [deleted file]
mcs/winexe.in [deleted file]

index bfc855692e4d319ea04f3236a3f583e5fa50e781..416c39e3a0b877bbc10b6a45e17f8b9886ee56db 100644 (file)
@@ -1,7 +1,5 @@
 This list of authors is outdated.   For a full list of contributors
-see:
-
-       http://www.go-mono.com/archive/mono-1.0.html
+check out the git history.
 
 C# Compiler:
        Miguel de Icaza (miguel@ximian.com)
index d60c31a97a544b53039088d14fe9114583c0efc3..fd336eb81764406f72cc0092b8a94895d14927d3 100644 (file)
@@ -1,340 +1 @@
-                   GNU GENERAL PUBLIC LICENSE
-                      Version 2, June 1991
-
- Copyright (C) 1989, 1991 Free Software Foundation, Inc.
-     59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
- Everyone is permitted to copy and distribute verbatim copies
- of this license document, but changing it is not allowed.
-
-                           Preamble
-
-  The licenses for most software are designed to take away your
-freedom to share and change it.  By contrast, the GNU General Public
-License is intended to guarantee your freedom to share and change free
-software--to make sure the software is free for all its users.  This
-General Public License applies to most of the Free Software
-Foundation's software and to any other program whose authors commit to
-using it.  (Some other Free Software Foundation software is covered by
-the GNU Library General Public License instead.)  You can apply it to
-your programs, too.
-
-  When we speak of free software, we are referring to freedom, not
-price.  Our General Public Licenses are designed to make sure that you
-have the freedom to distribute copies of free software (and charge for
-this service if you wish), that you receive source code or can get it
-if you want it, that you can change the software or use pieces of it
-in new free programs; and that you know you can do these things.
-
-  To protect your rights, we need to make restrictions that forbid
-anyone to deny you these rights or to ask you to surrender the rights.
-These restrictions translate to certain responsibilities for you if you
-distribute copies of the software, or if you modify it.
-
-  For example, if you distribute copies of such a program, whether
-gratis or for a fee, you must give the recipients all the rights that
-you have.  You must make sure that they, too, receive or can get the
-source code.  And you must show them these terms so they know their
-rights.
-
-  We protect your rights with two steps: (1) copyright the software, and
-(2) offer you this license which gives you legal permission to copy,
-distribute and/or modify the software.
-
-  Also, for each author's protection and ours, we want to make certain
-that everyone understands that there is no warranty for this free
-software.  If the software is modified by someone else and passed on, we
-want its recipients to know that what they have is not the original, so
-that any problems introduced by others will not reflect on the original
-authors' reputations.
-
-  Finally, any free program is threatened constantly by software
-patents.  We wish to avoid the danger that redistributors of a free
-program will individually obtain patent licenses, in effect making the
-program proprietary.  To prevent this, we have made it clear that any
-patent must be licensed for everyone's free use or not licensed at all.
-
-  The precise terms and conditions for copying, distribution and
-modification follow.
-\f
-                   GNU GENERAL PUBLIC LICENSE
-   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
-
-  0. This License applies to any program or other work which contains
-a notice placed by the copyright holder saying it may be distributed
-under the terms of this General Public License.  The "Program", below,
-refers to any such program or work, and a "work based on the Program"
-means either the Program or any derivative work under copyright law:
-that is to say, a work containing the Program or a portion of it,
-either verbatim or with modifications and/or translated into another
-language.  (Hereinafter, translation is included without limitation in
-the term "modification".)  Each licensee is addressed as "you".
-
-Activities other than copying, distribution and modification are not
-covered by this License; they are outside its scope.  The act of
-running the Program is not restricted, and the output from the Program
-is covered only if its contents constitute a work based on the
-Program (independent of having been made by running the Program).
-Whether that is true depends on what the Program does.
-
-  1. You may copy and distribute verbatim copies of the Program's
-source code as you receive it, in any medium, provided that you
-conspicuously and appropriately publish on each copy an appropriate
-copyright notice and disclaimer of warranty; keep intact all the
-notices that refer to this License and to the absence of any warranty;
-and give any other recipients of the Program a copy of this License
-along with the Program.
-
-You may charge a fee for the physical act of transferring a copy, and
-you may at your option offer warranty protection in exchange for a fee.
-
-  2. You may modify your copy or copies of the Program or any portion
-of it, thus forming a work based on the Program, and copy and
-distribute such modifications or work under the terms of Section 1
-above, provided that you also meet all of these conditions:
-
-    a) You must cause the modified files to carry prominent notices
-    stating that you changed the files and the date of any change.
-
-    b) You must cause any work that you distribute or publish, that in
-    whole or in part contains or is derived from the Program or any
-    part thereof, to be licensed as a whole at no charge to all third
-    parties under the terms of this License.
-
-    c) If the modified program normally reads commands interactively
-    when run, you must cause it, when started running for such
-    interactive use in the most ordinary way, to print or display an
-    announcement including an appropriate copyright notice and a
-    notice that there is no warranty (or else, saying that you provide
-    a warranty) and that users may redistribute the program under
-    these conditions, and telling the user how to view a copy of this
-    License.  (Exception: if the Program itself is interactive but
-    does not normally print such an announcement, your work based on
-    the Program is not required to print an announcement.)
-\f
-These requirements apply to the modified work as a whole.  If
-identifiable sections of that work are not derived from the Program,
-and can be reasonably considered independent and separate works in
-themselves, then this License, and its terms, do not apply to those
-sections when you distribute them as separate works.  But when you
-distribute the same sections as part of a whole which is a work based
-on the Program, the distribution of the whole must be on the terms of
-this License, whose permissions for other licensees extend to the
-entire whole, and thus to each and every part regardless of who wrote it.
-
-Thus, it is not the intent of this section to claim rights or contest
-your rights to work written entirely by you; rather, the intent is to
-exercise the right to control the distribution of derivative or
-collective works based on the Program.
-
-In addition, mere aggregation of another work not based on the Program
-with the Program (or with a work based on the Program) on a volume of
-a storage or distribution medium does not bring the other work under
-the scope of this License.
-
-  3. You may copy and distribute the Program (or a work based on it,
-under Section 2) in object code or executable form under the terms of
-Sections 1 and 2 above provided that you also do one of the following:
-
-    a) Accompany it with the complete corresponding machine-readable
-    source code, which must be distributed under the terms of Sections
-    1 and 2 above on a medium customarily used for software interchange; or,
-
-    b) Accompany it with a written offer, valid for at least three
-    years, to give any third party, for a charge no more than your
-    cost of physically performing source distribution, a complete
-    machine-readable copy of the corresponding source code, to be
-    distributed under the terms of Sections 1 and 2 above on a medium
-    customarily used for software interchange; or,
-
-    c) Accompany it with the information you received as to the offer
-    to distribute corresponding source code.  (This alternative is
-    allowed only for noncommercial distribution and only if you
-    received the program in object code or executable form with such
-    an offer, in accord with Subsection b above.)
-
-The source code for a work means the preferred form of the work for
-making modifications to it.  For an executable work, complete source
-code means all the source code for all modules it contains, plus any
-associated interface definition files, plus the scripts used to
-control compilation and installation of the executable.  However, as a
-special exception, the source code distributed need not include
-anything that is normally distributed (in either source or binary
-form) with the major components (compiler, kernel, and so on) of the
-operating system on which the executable runs, unless that component
-itself accompanies the executable.
-
-If distribution of executable or object code is made by offering
-access to copy from a designated place, then offering equivalent
-access to copy the source code from the same place counts as
-distribution of the source code, even though third parties are not
-compelled to copy the source along with the object code.
-\f
-  4. You may not copy, modify, sublicense, or distribute the Program
-except as expressly provided under this License.  Any attempt
-otherwise to copy, modify, sublicense or distribute the Program is
-void, and will automatically terminate your rights under this License.
-However, parties who have received copies, or rights, from you under
-this License will not have their licenses terminated so long as such
-parties remain in full compliance.
-
-  5. You are not required to accept this License, since you have not
-signed it.  However, nothing else grants you permission to modify or
-distribute the Program or its derivative works.  These actions are
-prohibited by law if you do not accept this License.  Therefore, by
-modifying or distributing the Program (or any work based on the
-Program), you indicate your acceptance of this License to do so, and
-all its terms and conditions for copying, distributing or modifying
-the Program or works based on it.
-
-  6. Each time you redistribute the Program (or any work based on the
-Program), the recipient automatically receives a license from the
-original licensor to copy, distribute or modify the Program subject to
-these terms and conditions.  You may not impose any further
-restrictions on the recipients' exercise of the rights granted herein.
-You are not responsible for enforcing compliance by third parties to
-this License.
-
-  7. If, as a consequence of a court judgment or allegation of patent
-infringement or for any other reason (not limited to patent issues),
-conditions are imposed on you (whether by court order, agreement or
-otherwise) that contradict the conditions of this License, they do not
-excuse you from the conditions of this License.  If you cannot
-distribute so as to satisfy simultaneously your obligations under this
-License and any other pertinent obligations, then as a consequence you
-may not distribute the Program at all.  For example, if a patent
-license would not permit royalty-free redistribution of the Program by
-all those who receive copies directly or indirectly through you, then
-the only way you could satisfy both it and this License would be to
-refrain entirely from distribution of the Program.
-
-If any portion of this section is held invalid or unenforceable under
-any particular circumstance, the balance of the section is intended to
-apply and the section as a whole is intended to apply in other
-circumstances.
-
-It is not the purpose of this section to induce you to infringe any
-patents or other property right claims or to contest validity of any
-such claims; this section has the sole purpose of protecting the
-integrity of the free software distribution system, which is
-implemented by public license practices.  Many people have made
-generous contributions to the wide range of software distributed
-through that system in reliance on consistent application of that
-system; it is up to the author/donor to decide if he or she is willing
-to distribute software through any other system and a licensee cannot
-impose that choice.
-
-This section is intended to make thoroughly clear what is believed to
-be a consequence of the rest of this License.
-\f
-  8. If the distribution and/or use of the Program is restricted in
-certain countries either by patents or by copyrighted interfaces, the
-original copyright holder who places the Program under this License
-may add an explicit geographical distribution limitation excluding
-those countries, so that distribution is permitted only in or among
-countries not thus excluded.  In such case, this License incorporates
-the limitation as if written in the body of this License.
-
-  9. The Free Software Foundation may publish revised and/or new versions
-of the General Public License from time to time.  Such new versions will
-be similar in spirit to the present version, but may differ in detail to
-address new problems or concerns.
-
-Each version is given a distinguishing version number.  If the Program
-specifies a version number of this License which applies to it and "any
-later version", you have the option of following the terms and conditions
-either of that version or of any later version published by the Free
-Software Foundation.  If the Program does not specify a version number of
-this License, you may choose any version ever published by the Free Software
-Foundation.
-
-  10. If you wish to incorporate parts of the Program into other free
-programs whose distribution conditions are different, write to the author
-to ask for permission.  For software which is copyrighted by the Free
-Software Foundation, write to the Free Software Foundation; we sometimes
-make exceptions for this.  Our decision will be guided by the two goals
-of preserving the free status of all derivatives of our free software and
-of promoting the sharing and reuse of software generally.
-
-                           NO WARRANTY
-
-  11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
-FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN
-OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
-PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
-OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS
-TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE
-PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
-REPAIR OR CORRECTION.
-
-  12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
-WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
-REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
-INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
-OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
-TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
-YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
-PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
-POSSIBILITY OF SUCH DAMAGES.
-
-                    END OF TERMS AND CONDITIONS
-\f
-           How to Apply These Terms to Your New Programs
-
-  If you develop a new program, and you want it to be of the greatest
-possible use to the public, the best way to achieve this is to make it
-free software which everyone can redistribute and change under these terms.
-
-  To do so, attach the following notices to the program.  It is safest
-to attach them to the start of each source file to most effectively
-convey the exclusion of warranty; and each file should have at least
-the "copyright" line and a pointer to where the full notice is found.
-
-    <one line to give the program's name and a brief idea of what it does.>
-    Copyright (C) <year>  <name of author>
-
-    This program is free software; you can redistribute it and/or modify
-    it under the terms of the GNU General Public License as published by
-    the Free Software Foundation; either version 2 of the License, or
-    (at your option) any later version.
-
-    This program is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with this program; if not, write to the Free Software
-    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-
-
-Also add information on how to contact you by electronic and paper mail.
-
-If the program is interactive, make it output a short notice like this
-when it starts in an interactive mode:
-
-    Gnomovision version 69, Copyright (C) year  name of author
-    Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
-    This is free software, and you are welcome to redistribute it
-    under certain conditions; type `show c' for details.
-
-The hypothetical commands `show w' and `show c' should show the appropriate
-parts of the General Public License.  Of course, the commands you use may
-be called something other than `show w' and `show c'; they could even be
-mouse-clicks or menu items--whatever suits your program.
-
-You should also get your employer (if you work as a programmer) or your
-school, if any, to sign a "copyright disclaimer" for the program, if
-necessary.  Here is a sample; alter the names:
-
-  Yoyodyne, Inc., hereby disclaims all copyright interest in the program
-  `Gnomovision' (which makes passes at compilers) written by James Hacker.
-
-  <signature of Ty Coon>, 1 April 1989
-  Ty Coon, President of Vice
-
-This General Public License does not permit incorporating your program into
-proprietary programs.  If your program is a subroutine library, you may
-consider it more useful to permit linking proprietary applications with the
-library.  If this is what you want to do, use the GNU Library General
-Public License instead of this License.
+See LICENSE file in the project root for full license information.
index 54aa55d1545c99752cfe3e7e1de9bc181fafd8fc..8c0ac1e65e1b989757c9545c6710c31cab93fee5 100644 (file)
@@ -1,477 +1 @@
-* Coding Style for the Mono C# source code.
-
-* Class Libraries and Assembly Layout
-
-       The class libraries are grouped together in the assemblies
-       they belong.
-       
-       Each directory here represents an assembly, and inside each
-       directory we divide the code based on the namespace they
-       implement.
-       
-       In addition, each assembly directory contains a Test directory
-       that holds the NUnit tests for that assembly.
-       
-       We use a new build system which is described by various README
-       files in mcs/build
-       
-       The build process typically builds an assembly, but in some
-       cases it also builds special versions of the assemblies
-       intended to be used for testing.
-
-* Missing implementation bits
-
-       If you implement a class and you are missing implementation bits,
-       please use the attribute [MonoTODO].  This attribute can be used
-       to programatically generate our status web pages:
-
-       [MonoTODO("My Function is not available on Mono")]
-       int MyFunction ()
-       {
-               throw new NotImplementedException ();
-       }
-
-       Ideally, write a human description of the reason why there is
-       a MonoTODO, this will be useful in the future for our
-       automated tools that can assist in developers porting their code.
-
-* Tagging buggy code
-
-       If there is a bug in your implementation tag the problem by using
-       the word "FIXME" in the code, together with a description of the 
-       problem.
-
-       Do not use XXX or obscure descriptions, because otherwise people
-       will not be able to understand what you mean.
-
-* Tagging Problematic specs.
-
-       If the documentation and the Microsoft implementation do
-       differ (you wrote a test case to prove this), I suggest that you edit
-       the file `mcs/class/doc/API-notes' so we can keep track of these problems
-       and submit our comments to ECMA or Microsoft and seek clarification.
-
-       Sometimes the documentation might be buggy, and sometimes the implementation
-       might be buggy.  Lets try to identify and pinpoint which one
-       is the correct one.
-
-       Sometimes the specification will be lame (consider Version.ToString (fieldCount)
-       where there is no way of knowing how many fields are available, making the API
-       not only stupid, but leading to unreliable code).
-
-       In those cases, use the keyword "LAMESPEC".
-       
-
-* Coding considerations and style.
-
-       In order to keep the code consistent, please use the following
-       conventions.  From here on `good' and `bad' are used to attribute
-       things that would make the coding style match, or not match.  It is not
-       a judgement call on your coding abilities, but more of a style and 
-       look call.  Please try to follow these guidelines to ensure prettiness.
-
-       Use 8 space tabs for writing your code (hopefully we can keep
-       this consistent).  If you are modifying someone else's code, try
-       to keep the coding style similar.
-
-       Since we are using 8-space tabs, you might want to consider the Linus
-       Torvals trick to reduce code nesting.  Many times in a loop, you will
-       find yourself doing a test, and if the test is true, you will nest.
-       Many times this can be changed.  Example:
-
-
-               for (i = 0; i < 10; i++) {
-                       if (something (i)) {
-                               do_more ();
-                       }
-               }
-
-       This take precious space, instead write it like this:
-
-               for (i = 0; i < 10; i++) {
-                       if (!something (i))
-                               continue;
-                       do_more ();
-               }
-
-* Performance and readability
-
-       It is more important to be correct than to be fast.
-
-       It is more important to be maintainable than to be fast.
-
-       Fast code that is difficult to maintain is likely going to
-       be looked down upon.
-
-* Style Guidelines
-
-               * Use a space before an opening parenthesis when calling
-                 functions, or indexing, like this:
-
-                       method (a);
-                       b [10];
-
-               * Do not put a space after the opening parenthesis and the 
-                 closing one, ie:
-
-                       good: method (a);       array [10];
-
-                       bad:  method ( a );     array[ 10 ];
-
-               * Inside a code block, put the opening brace on the same line
-                 as the statement:
-
-                       good:
-                               if (a) {
-                                       code ();
-                                       code ();
-                               }
-
-                       bad:
-                               if (a) 
-                               {
-                                       code ();
-                                       code ();
-                               }
-
-               * Avoid using unnecessary open/close braces, vertical space
-                 is usually limited:
-
-                       good:
-                               if (a)
-                                       code ();
-
-                       bad:
-                               if (a) {
-                                       code ();
-                               }
-
-               * When defining a method, use the C style for brace placement, 
-                 that means, use a new line for the brace, like this:
-
-                       good:
-                               void Method ()
-                               {
-                               }
-
-                       bad:
-                               void Method () {
-                               }
-
-               * Properties and indexers are an exception, keep the
-                 brace on the same line as the property declaration.
-                 Rationale: this makes it visually
-                 simple to distinguish them.
-
-                       good:
-                               int Property {
-                                       get {
-                                               return value;
-                                       }
-                               }
-
-                       bad:
-                               int Property 
-                               {
-                                       get {
-                                               return value;
-                                       }
-                               }
-
-                 Notice how the accessor "get" also keeps its brace on the same
-                 line.
-
-                 For very small properties, you can compress things:
-
-                       ok:
-                               int Property {
-                                       get { return value; }
-                                       set { x = value; }
-                               }
-
-               * Use white space in expressions liberally, except in the presence
-                 of parenthesis:
-
-                       good:
-
-                               if (a + 5 > method (blah () + 4))
-
-                       bad:
-                               if (a+5>method(blah()+4))
-
-               * For any new files, please use a descriptive introduction, like
-                 this:
-
-                       //
-                       // System.Comment.cs: Handles comments in System files.
-                       //
-                       // Author:
-                       //   Juan Perez (juan@address.com)
-                       //
-                       // (C) 2002 Address, Inc (http://www.address.com)
-                       //
-
-               * If you are modyfing someone else's code, and your contribution
-                 is significant, please add yourself to the Authors list.
-
-               * Switch statements have the case at the same indentation as the
-                 switch:
-
-                       switch (x) {
-                       case 'a':
-                               ...
-                       case 'b':
-                               ...
-                       }
-
-               * Argument names should use the camel casing for
-                 identifiers, like this:
-
-                       good:
-                               void Method (string myArgument)
-
-                       bad:
-                               void Method (string lpstrArgument)
-                               void Method (string my_string)
-
-               * Empty methods: They should have the body of code using two    
-                 lines, in consistency with the rest:
-
-                       good:
-                               void EmptyMethod ()
-                               {
-                               }
-
-                       bad:
-                               void EmptyMethod () {}
-
-                               void EmptyMethod () 
-                               {}
-               
-               * Line length: The line length for C# source code is 134 columns.
-
-
-                 If your function declaration arguments go beyond
-                 this point, please align your arguments to match the
-                 opening brace, like this:
-
-                       void Function (int arg, string argb,
-                                      int argc)
-                       {
-                       }
-        
-                 When invoking functions, the rule is different, the
-                 arguments are not aligned with the previous
-                 argument, instead they begin at the tabbed position,
-                 like this:
-         
-                       void M ()
-                       {
-                               MethodCall ("Very long string that will force",
-                                       "Next argument on the 8-tab pos",
-                                       "Just like this one")
-               
-                       }
-
-               * Variable declaration indentation.
-
-                 Sometimes it is convenient to indent the variables to make the code
-                 look pretier, but do not add gratuitous space, try to use the minimally
-                 necessary space, for example:
-
-                 Good:
-
-                       void Method ()
-                       {
-                               string b;
-                               int    a;
-                               byte   c;
-                       }
-
-                 Bad:
-
-                       void Method ()
-                       {
-                               string          b;
-                               int             a;
-                               byte            c;
-                       }
-
-               * Braces and the `else' clause
-
-                 If there are braces closing or opening next to the else clause,
-                 they go on the same line as the word `else', for example:
-
-                 Good:
-
-                       if (..) {
-
-                       } else {
-               
-                       }
-       
-                 Bad:
-
-                       if (..) {
-
-                       } 
-                       else {
-               
-                       }
-
-                 Bad:
-
-                       if (..) {
-
-                       } else 
-                       {               
-                       }
-
-                 Bad:
-
-                       if (..) {
-
-                       } 
-                       else 
-                       {
-               
-                       }
-
-* RCS and CVS tags
-
-       Some users like to use the special RCS/CVS tags in their
-       source code: $id$, $log$ and so on.  
-
-       The use of these is not permitted on the Mono source code
-       repository.   This metadata belongs on a ChangeLog or in the
-       SVN metadata. 
-
-* File formats
-
-       Historically our repository has used a mix of line-endings,
-       this is a mistake that we are trying hard to fix.
-
-       For existing files, please make sure that you do not convert 
-       the file, as that causes us to loose precious history (the
-       full file is commited).
-
-       For new files that you create, please make sure that you use
-       Subversion's support for mapping the line endings
-       automatically, after adding your file:
-
-               $ svn add file.cs
-
-       Execute this command:
-
-               $ svn propset svn:eol-style native file.cs
-
-       Which will make the file automatically receive the proper
-       treatment from that point on.
-
-       Please verify before commiting that your changes wont loose
-       history, you can do this by running:
-
-               $ svn diff
-
-       And examining the output.
-
-* Warnings
-
-       Avoid commiting code with warnings to the repository, the use
-       of #pragmas to disable warnings is strongly discouraged, but
-       can be used on unique cases.  Please justify the use of the
-       warning ignore clause on a comment.
-
-       Do not commit changes to the Makefiles that removes warnings,
-       if anything warnings should be eliminated one at a time, and
-       if not possible, they must be flagged.
-
-
-* Examples:
-
-class X : Y {
-
-       bool Method (int argument_1, int argument_2)
-       {
-               if (argument_1 == argument_2)
-                       throw new Exception (Locale.GetText ("They are equal!");
-
-               if (argument_1 < argument_2) {
-                       if (argument_1 * 3 > 4)
-                               return true;
-                       else
-                               return false;
-               }
-
-               //
-               // This sample helps keep your sanity while using 8-spaces for tabs
-               // 
-               VeryLongIdentifierWhichTakesManyArguments (
-                       Argument1, Argument2, Argument3,
-                       NestedCallHere (
-                               MoreNested));
-       }
-
-       bool MyProperty {
-               get {
-                       return x;
-               }
-
-               set {
-                       x = value;
-               }
-       }
-
-       void AnotherMethod () 
-       {
-               if ((a + 5) != 4) {
-               }
-
-               while (blah) {
-                       if (a)
-                               continue;
-                       b++;
-               }
-       }
-}
-
-* Conditional compilation
-
-       Ideally we would not need conditional compilation, and the use
-       of #ifdef is strongly discouraged.  But due to our support for
-       old C# 1.0 compilers we have to use it in a few places.
-
-       Try to avoid negative tests that have an else clause, for
-       example:
-
-           #if !NET_2_0
-               CODE_FOR_1_0
-            #else
-               CODE_FOR_2_0
-           #endif
-
-        Instead use:
-
-           #if NET_2_0
-               CODE_FOR_2_0
-           #else
-               CODE_FOR_1_0
-            #endif
-
-       When a major feature differs across compilation targets, try
-       to factor out the code into a separate class, a helper class
-       or a separate file, and include that in your profile while
-       surrounding that helper file/class with the ifdefs to reduce
-       the amount of ifdefs in the code.
-
-       For instance, this is used for some parts of Grasshopper where
-       the code is ifdefed out, when large parts of a file would have
-       been ifdefed out, we moved the code into a MyOtherFile.jvm.cs
-
-       For 2.0 classes, this is even simpler as code can be trivially
-       factored out into 
-
-                MyHelperClass.cli.cs
-                MyHelperClass.jvm.cs
-
-       By using partial classes.
+Please see http://www.mono-project.com/community/contributing/coding-guidelines/ for latest guidelines.
index 2b59d588ba3b029982d950d69de74cd90d231faa..3e7c06fad829f5a3c75d83e43d66dcf320ff87ca 100644 (file)
@@ -23,7 +23,7 @@ compilers and tools.
 *                                                                   *
 *********************************************************************
 
-If you only want to build a snapshot or a fresh CVS checkout of the
+If you only want to build a snapshot or a fresh checkout of the
 sources, you should go into the `mono' sibling directory and issue the
 make command, like this:
 
@@ -35,72 +35,6 @@ make command, like this:
 The compilation is bundled with the build due to dependencies on the
 class libraries on the runtime.
 
-Build Features for Developers of Mono.
-======================================
-
-These instructions apply to both Linux and Windows. To build this
-package, you must already have a C# compiler installed.  This means
-that to build on Linux, you need to get a distribution of the MCS
-binaries; these are called monocharges. They can be found at
-www.go-mono.com/daily. On Windows, you can just use the
-Microsoft compiler. You also need GNU make to build the software (on
-Windows, you will need for example the Cygwin environment setup).
-
-You can customize your MCS configuration by using:
-
-    ./configure [--prefix=PREFIX] [--profile=PROFILE] 
-
-If you do not run the above, the defaults are /usr/local for the
-prefix, and `default' for the profile.
-
-To build the compiler and class libraries, run:
-
-    make
-
-The libraries will be placed in the directory class/lib/ and the mcs
-compiler executable in mcs/.
-
-To install them, run the following:
-
-    make install
-
-If you get "corlib out of sync" errors, try
-
-    make PROFILE="atomic"
-
-A better alternative would be to fire off a 'make' from a sibling or
-parent 'mono/' tree.
-
-Troubleshooting
-===============
-
-We try to maintain the CVS tree such that it is bootstrapable from the
-latest released version of mono and mcs.  Occasionally, something in the
-compiler or runtime changes enough that an existing installation cannot
-complete a bootstrap from cvs.  In this case, go to
-http://go-mono.com/daily and download a monocharge or monolite tarball.
-Unpack and copy the .dlls to $prefix/lib and .exes to $prefix/bin/.
-Then you should be able to complete the build normally (i.e. using make
-bootstrap).
-
-       wget http://go-mono.com/daily/monolite-20040505.tar.gz
-       tar -zxvf monolite-20040505.tar.gz
-       cd monolite-20040505
-       env prefix=/usr/local sh recharge.sh
-
-Monocharges
-===========
-
-If you are tracking Mono's development, you may sometimes need to share
-the compiled libraries with others, you can do:
-
-    make monocharge
-
-Or a light version, which contains only the essential libraries and
-results in a much smaller file:
-
-    make monocharge-lite
-
 Configuration
 =============
 
@@ -110,48 +44,15 @@ place your configuration options in build/config.make
 A list of variables that control the build are listed in the file
 build/config-default.make.
 
-Build profiles? What?
-======================
-
-Don't worry about them too much. If you're wondering which to use:
-use the default if you can (that's why it's the default!) and use
-the atomic if you have to.
-
-The default profile uses the C# compiler and class libaries as they
-are built. This lets you build MCS without needing to have already 
-installed it, but can fail if the libraries change significantly.
-(This is the source of the dreaded "corlib out of sync" warning, most
-of the time.)
-
-The atomic profile tries to use the system compiler and preexisting
-MCS libraries. New libaries are built against this constant reference 
-point, so if a newly built library has a binary incompatibility, the
-rest of your build can proceed.
-
-If you want to always use the atomic profile, run this command:
-
-       ./configure --profile=atomic
-
 More About the Build System
 ===========================
 
 More information is found in build/README.*. Here's a quick rundown
 of the features:
 
-        * Unified build system for Windows and Linux. Windows is still
-         fairly untested, but "should work." Unfortunately I don't
-         have a Windows machine to test on, but Gonzalo can get
-         corlib to build I think and that's about as complicated as
-         it gets.
-
         * Profile support. 'make PROFILE=profilename' or 'export
          PROFILE=profilename ; make' will work. Profiles are defined
-         in build/profiles/profilename.make ; right now there isn't
-         too much going on. The 'bootstrap' profile will build the
-         way makefile.gnu did on Linux, by setting MONO_PATH and
-         using mcs/mcs.exe; the default profile will build against
-         the existing system libraries and compile with 'mcs', which
-         should reduce a lot of 'corlib out of sync' warnings.
+         in build/profiles/profilename.make ;
 
         * Important variables are shared among makefiles now; you can
          edit build/config.make (see build/config-default.make for a
@@ -164,16 +65,11 @@ of the features:
 
         * Test libraries now live in class/Library/Library_test.dll,
          not class/Library/Test. 'make test' will build the test DLL,
-         'make run-test' will actually run the nunit tests. Set the
-         variable TEST_HARNESS to run with a program other than
-         nunit-console (for example, nunit-gtk).
+         'make run-test' will actually run the nunit tests.
 
         * Standardized recursive targets: all, clean, install, test,
          run-test.  Read build/README.makefiles for definitions of
          what they should do
 
         * (Relatively) sane 'make dist' target; 'make distcheck'
-         support; cute 'make monocharge' and 'make monocharge-lite'
-         targets. They're made possible because 'make install' now
-         supports DESTDIR a la automake, which I'm sure someone cares
-         about.
+         support;
index 948ac028b3686a98e4efde50321595f8540b5276..2eab28f83eef52ff11772987bf66de571ac9b4f3 100644 (file)
@@ -138,28 +138,6 @@ distcheck: dist-tarball
        rm -f before.list after.list distdist.list ; \
        rm -rf $(package) InstallTest
 
-monocharge:
-       chargedir=monocharge-`date -u +%Y%m%d` ; \
-       mkdir "$$chargedir" ; \
-       DESTDIR=`cd "$$chargedir" && pwd` ; \
-       $(MAKE) install DESTDIR="$$DESTDIR" || exit 1 ; \
-       tar cvjf "$$chargedir".tar.bz2 "$$chargedir" ; \
-       rm -rf "$$chargedir"
-
-# A bare-bones monocharge.
-
-monocharge-lite:
-       chargedir=monocharge-lite-`date -u +%Y%m%d` ; \
-       mkdir "$$chargedir" ; \
-       DESTDIR=`cd "$$chargedir" && pwd` ; \
-       $(MAKE) -C mcs install DESTDIR="$$DESTDIR" || exit 1; \
-       $(MAKE) -C class/corlib install DESTDIR="$$DESTDIR" || exit 1; \
-       $(MAKE) -C class/System install DESTDIR="$$DESTDIR" || exit 1; \
-       $(MAKE) -C class/System.XML install DESTDIR="$$DESTDIR" || exit 1; \
-       $(MAKE) -C class/Mono.CSharp.Debugger install DESTDIR="$$DESTDIR" || exit 1; \
-       tar cvjf "$$chargedir".tar.bz2 "$$chargedir" ; \
-       rm -rf "$$chargedir"
-
 # Targets for creating API diffs of the framework
 
 MONO_API_SNAPSHOT_PATH := $(topdir)../external/api-snapshot/
index f23a12d69bfe078c688a21ac954522a7a7fe3ece..c670f181f19609fd716a8e484c1db9d46c8c99d2 100644 (file)
@@ -19,31 +19,34 @@ package module which drives the compilation of this directory.
        class/
                The class libraries.
 
+       docs/
+               Some notes on the compiler and the class libraries.
+
        errors/
                Sample programs that should generate errors by the C# compiler.
 
+       ilasm/
+               The IL assembler.
+
        jay/
                Yacc-based parser generator.
 
        mcs/
                The Mono C# compiler
 
-       tests/
-               Regression test suite for the C# compiler
+       nunit24/
+               An old copy of the NUnit 2.4 library that we ship for historical reasons.
 
-       docs/
-               Some notes on the compiler and the class libraries.
+       packages/
+               Integrates some packages from NuGet (like Roslyn) into the build system.
 
-       nant/
-               A copy of nant source code, used during the build process
-               on Windows.
+       tests/
+               Regression test suite for the C# compiler
 
        tools/
                Various small development tools: CorCompare used to compare
-               two assemblies for differences in the API;   TypeReflector is 
-               a tool used to introspect types from assemblies from the 
-               command line;  MonoStyle helps you keep your code indendented
-               with the Mono programming style.
+               two assemblies for differences in the API; csharp is a C# REPL;
+               cil-strip trims IL from assemblies.
 
 * Building Individual Directories
 =================================
@@ -51,14 +54,14 @@ package module which drives the compilation of this directory.
 You can build individual components in the hierarchy by running the command
 "make", and to install it use "make install".
 
-By default, the 2.x profile is built, if you want to build the net 1.1 profile,
+By default, the 4.x profile is built, if you want to build other profiles,
 use the following command:
 
-       make PROFILE=net_1_1
+       make PROFILE=<profilename>
 
 And to install:
 
-       make PROFILE=net_1_1 install
+       make PROFILE=<profilename> install
 
 To turn on verbose mode in the build (for example to diagnose a
 problem), you can use the V=1 flag, like this:
@@ -68,16 +71,14 @@ problem), you can use the V=1 flag, like this:
 * Running Unit tests
 ====================
 
-You can run unit tests in individual components by running the command
-"make run-test".  If you want to run tests for a different profile (say
-'net_1_1')
+You can run unit tests in individual components by running the command:
 
-       make run-test PROFILE=net_1_1
+       make run-test
 
 If you want to only run the tests in a single fixture (say
 'MonoTests.System.TypeTest'), you can use
 
-       make run-test TEST_HARNESS_FLAGS=/fixture:MonoTests.System.TypeTest
+       make run-test TEST_FIXTURE=System.TypeTest
 
 * Acknowledgements
 ==================
diff --git a/mcs/build/build.proj b/mcs/build/build.proj
deleted file mode 100644 (file)
index 725fcd0..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>\r
-<Project ToolsVersion="3.5" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
-  <Import Project="$(MSBuildExtensionsPath)\ExtensionPack\MSBuild.ExtensionPack.tasks"/>\r
-  <Target Name="Build">\r
-   <Copy SourceFiles="common\Consts.cs.in" DestinationFiles="common\Consts.cs"/>\r
-   <MSBuild.ExtensionPack.FileSystem.File TaskAction="Replace" RegexPattern="@MONO_VERSION@" Replacement="2.7.0.0" Files="common\Consts.cs"/>\r
-  </Target>\r
-</Project>
\ No newline at end of file
diff --git a/mcs/build/msbuild/.gitattributes b/mcs/build/msbuild/.gitattributes
deleted file mode 100644 (file)
index 1238039..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-/Mono.Common.targets -crlf
-/Mono.Default.targets -crlf
diff --git a/mcs/build/msbuild/Mono.Common.targets b/mcs/build/msbuild/Mono.Common.targets
deleted file mode 100644 (file)
index e4211cb..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>\r
-<Project ToolsVersion="3.5" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
-  <Import Project="$(MSBuildExtensionsPath)\ExtensionPack\MSBuild.ExtensionPack.tasks"/>\r
-  <PropertyGroup  Condition=" '$(USE_MONO_COMPILER)' == '1' ">\r
-    <CscToolExe>gmcs.bat</CscToolExe>\r
-    <CscToolPath>C:\MonoExperimental2.5.0\bin</CscToolPath>\r
-  </PropertyGroup>\r
-  <PropertyGroup Condition=" ('$(Configuration)' == 'basic' Or '$(Configuration)' == 'basic_XML_DEP') ">\r
-    <OutputPath Condition=" '$(OutputPath)' == '' ">$(MSBuildProjectDirectory)\..\lib\basic\</OutputPath>\r
-  </PropertyGroup>\r
-  <PropertyGroup Condition=" '$(Configuration)' == 'net_2_0_bootstrap' ">\r
-    <OutputPath Condition=" '$(OutputPath)' == '' ">$(MSBuildProjectDirectory)\..\lib\net_2_0_bootstrap\</OutputPath>\r
-  </PropertyGroup>\r
-  <PropertyGroup>\r
-    <OutputPath Condition=" '$(OutputPath)' == '' ">$(MSBuildProjectDirectory)\..\lib\$(Configuration)\</OutputPath>\r
-  </PropertyGroup>\r
-  <Target Name="SetupProject">\r
-    <Copy SourceFiles="$(ResponseFile)" DestinationFiles="$(ResponseFile).msbuild"/>\r
-         <MSBuild.ExtensionPack.FileSystem.File TaskAction="Replace" RegexPattern="/" Replacement="\" Files="$(ResponseFile).msbuild"/>\r
-         <MakeDir Directories="$(OutputDirectory)"/>\r
-  </Target>\r
-  <PropertyGroup Condition=" '$(ResponseFile)' == '' ">\r
-    <ResponseFile>$(MSBuildProjectName).dll.sources</ResponseFile>\r
-  </PropertyGroup>\r
-  <PropertyGroup>\r
-    <CompilerResponseFile>$(ResponseFile).msbuild</CompilerResponseFile>\r
-  </PropertyGroup>\r
-</Project>
\ No newline at end of file
diff --git a/mcs/build/msbuild/Mono.Default.targets b/mcs/build/msbuild/Mono.Default.targets
deleted file mode 100644 (file)
index 43eda68..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>\r
-<Project ToolsVersion="3.5" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
-  <PropertyGroup>\r
-    <Configuration Condition="'$(Configuration)' == ''">net_2_0</Configuration>\r
-    <Platform Condition="'$(Platform)' == ''">AnyCPU</Platform>\r
-  </PropertyGroup>\r
-</Project>
\ No newline at end of file
index 97d46c50274e317ed2ce44b50d95c96fde32a24b..fd336eb81764406f72cc0092b8a94895d14927d3 100644 (file)
@@ -1,25 +1 @@
-The MIT X11 License covers most of the class libraries in the Mono
-project.  Some third party libraries come from different projects, and
-are licensed under their own terms.
-
-
-Copyright (c) 2001, 2002, 2003 The Mono Project
-
-Permission is hereby granted, free of charge, to any person obtaining
-a copy of this software and associated documentation files (the
-"Software"), to deal in the Software without restriction, including
-without limitation the rights to use, copy, modify, merge, publish,
-distribute, sublicense, and/or sell copies of the Software, and to
-permit persons to whom the Software is furnished to do so, subject to
-the following conditions:
-
-The above copyright notice and this permission notice shall be
-included in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+See LICENSE file in the project root for full license information.
index 421c04da2bfd3b360a1fd5f2c9b17adfde0b221e..b2692bf692724cbc3ff567cbf467e26cb8424e81 100644 (file)
@@ -35,15 +35,6 @@ testing.
        of comments in the source code for that purpose, and if the
        problem requires to be followed up on, file a bug.
 
-* Supporting .NET 1.2, .NET 1.1 and .NET 1.0 builds
-
-       The defines NET_1_1 and NET_2_0 are used to include
-       features.   When NET_2_0 is defined, it also implies that the
-       NET_1_1 is defined.
-
-       To have code which is only available in an old version, use ONLY_1_0,
-       ONLY_1_1
-
 * Tagging buggy code
 
        If there is a bug in your implementation tag the problem by using
@@ -69,255 +60,8 @@ testing.
        not only stupid, but leading to unreliable code).
 
        In those cases, use the keyword "LAMESPEC".
-       
 
 * Coding considerations and style.
 
        In order to keep the code consistent, please use the following
-       conventions.  From here on `good' and `bad' are used to attribute
-       things that would make the coding style match, or not match.  It is not
-       a judgement call on your coding abilities, but more of a style and 
-       look call.  Please try to follow these guidelines to ensure prettiness.
-
-       Use 8 space tabs for writing your code (hopefully we can keep
-       this consistent).  If you are modifying someone else's code, try
-       to keep the coding style similar.
-
-       Since we are using 8-space tabs, you might want to consider the Linus
-       Torvals trick to reduce code nesting.  Many times in a loop, you will
-       find yourself doing a test, and if the test is true, you will nest.
-       Many times this can be changed.  Example:
-
-
-               for (i = 0; i < 10; i++) {
-                       if (something (i)) {
-                               do_more ();
-                       }
-               }
-
-       This take precious space, instead write it like this:
-
-               for (i = 0; i < 10; i++) {
-                       if (!something (i))
-                               continue;
-                       do_more ();
-               }
-
-       A few guidelines:
-
-               * Use a space before an opening parenthesis when calling
-                 functions, or indexing, like this:
-
-                       method (a);
-                       b [10];
-
-               * Do not put a space after the opening parenthesis and the 
-                 closing one, ie:
-
-                       good: method (a);       array [10];
-
-                       bad:  method ( a );     array[ 10 ];
-
-               * Inside a code block, put the opening brace on the same line
-                 as the statement:
-
-                       good:
-                               if (a) {
-                                       code ();
-                                       code ();
-                               }
-
-                       bad:
-                               if (a) 
-                               {
-                                       code ();
-                                       code ();
-                               }
-
-               * Avoid using unnecessary open/close braces, vertical space
-                 is usually limited:
-
-                       good:
-                               if (a)
-                                       code ();
-
-                       bad:
-                               if (a) {
-                                       code ();
-                               }
-
-               * When defining a method, use the C style for brace placement, 
-                 that means, use a new line for the brace, like this:
-
-                       good:
-                               void Method ()
-                               {
-                               }
-
-                       bad:
-                               void Method () {
-                               }
-
-               * Properties and indexers are an exception, keep the
-                 brace on the same line as the property declaration.
-                 Rationale: this makes it visually
-                 simple to distinguish them.
-
-                       good:
-                               int Property {
-                                       get {
-                                               return value;
-                                       }
-                               }
-
-                       bad:
-                               int Property 
-                               {
-                                       get {
-                                               return value;
-                                       }
-                               }
-
-                 Notice how the accessor "get" also keeps its brace on the same
-                 line.
-
-                 For very small properties, you can compress things:
-
-                       ok:
-                               int Property {
-                                       get { return value; }
-                                       set { x = value; }
-                               }
-
-               * Use white space in expressions liberally, except in the presence
-                 of parenthesis:
-
-                       good:
-
-                               if (a + 5 > method (blah () + 4))
-
-                       bad:
-                               if (a+5>method(blah()+4))
-
-               * For any new files, please use a descriptive introduction, like
-                 this:
-
-                       //
-                       // System.Comment.cs: Handles comments in System files.
-                       //
-                       // Author:
-                       //   Juan Perez (juan@address.com)
-                       //
-                       // (C) 2002 Address, Inc (http://www.address.com)
-                       //
-
-               * If you are modyfing someone else's code, and your contribution
-                 is significant, please add yourself to the Authors list.
-
-               * Switch statements have the case at the same indentation as the
-                 switch:
-
-                       switch (x) {
-                       case 'a':
-                               ...
-                       case 'b':
-                               ...
-                       }
-
-               * Argument names should use the camel casing for
-                 identifiers, like this:
-
-                       good:
-                               void Method (string myArgument)
-
-                       bad:
-                               void Method (string lpstrArgument)
-                               void Method (string my_string)
-
-               * Empty methods: They should have the body of code using two    
-                 lines, in consistency with the rest:
-
-                       good:
-                               void EmptyMethod ()
-                               {
-                               }
-
-                       bad:
-                               void EmptyMethod () {}
-
-                               void EmptyMethod () 
-                               {}
-               
-               * Line length: The line length for C# source code is 134 columns.
-
-
-                 If your function declaration arguments go beyond
-                 this point, please align your arguments to match the
-                 opening brace, like this:
-
-                       void Function (int arg, string argb,
-                                      int argc)
-                       {
-                       }
-        
-                 When invoking functions, the rule is different, the
-                 arguments are not aligned with the previous
-                 argument, instead they begin at the tabbed position,
-                 like this:
-         
-                       void M ()
-                       {
-                               MethodCall ("Very long string that will force",
-                                       "Next argument on the 8-tab pos",
-                                       "Just like this one")
-               
-                       }
-               
-       Here are a couple of examples:
-
-class X : Y {
-
-       bool Method (int argument_1, int argument_2)
-       {
-               if (argument_1 == argument_2)
-                       throw new Exception (Locale.GetText ("They are equal!");
-
-               if (argument_1 < argument_2) {
-                       if (argument_1 * 3 > 4)
-                               return true;
-                       else
-                               return false;
-               }
-
-               //
-               // This sample helps keep your sanity while using 8-spaces for tabs
-               // 
-               VeryLongIdentifierWhichTakesManyArguments (
-                       Argument1, Argument2, Argument3,
-                       NestedCallHere (
-                               MoreNested));
-       }
-
-       bool MyProperty {
-               get {
-                       return x;
-               }
-
-               set {
-                       x = value;
-               }
-       }
-
-       void AnotherMethod () 
-       {
-               if ((a + 5) != 4) {
-               }
-
-               while (blah) {
-                       if (a)
-                               continue;
-                       b++;
-               }
-       }
-}
-       
+       conventions: http://www.mono-project.com/community/contributing/coding-guidelines/
diff --git a/mcs/class/build-rx-dll-sources.sh b/mcs/class/build-rx-dll-sources.sh
deleted file mode 100644 (file)
index 0eeb671..0000000
+++ /dev/null
@@ -1,199 +0,0 @@
-
-// useful grep
-// grep -h "#if" /svn/mono/external/rx/Rx/NET/Source/System.Reactive.*/*.cs /svn/mono/external/rx/Rx/NET/Source/System.Reactive.*/*/*.cs /svn/mono/external/rx/Rx/NET/Source/System.Reactive.*/*/*/*.cs | sort | uniq
-
-using System.Diagnostics;
-using System.IO;
-using System.Xml.Linq;
-using System.Xml.XPath;
-
-var template_android = File.ReadAllText ("project_template_android.txt");
-var template_ios = File.ReadAllText ("project_template_ios.txt");
-
-var guids_android = new string [] { 
-// Ix
-"5F7F40B6-19D3-48C7-8E15-AE1F976F60E1", "065F2411-7610-4AD6-9513-A1EFFCE576C0",
-"C4037060-1692-4423-B29E-76F3A74A72A5",
-// Rx
-"4fa878dc-6e88-43c4-b37b-8c1151cec56f", "fef62c23-10cd-4def-a5ae-54a8b309e970", "d263c126-9d3c-4299-a0c1-f25c703d07c9", "ec704077-ea31-4852-ad24-6732244174c0", "9360e845-d79d-4288-9100-63a80fad2bf0", "00dc3654-e373-4e3f-80fe-109f795adf1f", "e662282b-4341-4f86-aaaa-a942335b47fb", "a153a379-670c-42c2-9018-fc0d933a4f7f", "b29d45a6-0b8c-49c5-82a2-457e4d3cbc33", "3a3b5e76-029f-46b0-9ccf-fefe06eb61e7", "328e4291-92f0-49de-a0fd-fbc714a47f53", "cb2ab716-bfcb-43bc-a03b-a3bda427746c", "73c5260f-8972-4e7c-822b-1a3a0358fa0b" };
-var guids_ios = new string [] {
-// Ix
-"AD6FCBE9-0F6A-4F27-8147-17AB1C8799A2", "220AD2F1-FEE9-4514-8F36-6BE37F0AAD7F",
-"4779C7FF-6969-4715-9389-DF6C43655D6F",
-// Rx
-"6f2675f5-fcc7-4a28-9dc3-657b4613dcc5", "a67f34b5-75c1-4319-a93e-93df87e728a4", "79a43ceb-1a18-49ea-aac4-b72b9c90bf5a", "0a977063-0796-4cd4-84b8-aedb2d648b26", "b41cb61a-dca0-4539-8f99-7b3499e18e6d", "24f995bd-7075-489c-b7a5-7fde08c304b6", "894021ec-14fb-430a-8572-bea9569ae435", "92857c8e-0e83-4d02-a831-8af3fed43336", "912e14a2-7bdf-4600-8d55-e8c4f33a2063", "0f6c2933-8d0c-41e6-9f77-e8714ab8c4ab", "1a476d81-f91a-448f-8790-f55498e013d2", "47d85a91-e8e2-4088-bf5a-68a161754d48", "45377009-1425-47fc-985e-05f98022f9e3" };
-
-var asses = new string [] {
-       "System.Interactive",
-       "System.Interactive.Async",
-       "System.Interactive.Providers",
-       "System.Reactive.Interfaces",
-       "System.Reactive.Core",
-       "System.Reactive.PlatformServices",
-       "System.Reactive.Linq",
-       "System.Reactive.Debugger", // maybe needed for testing assembly.
-       "System.Reactive.Experimental", // needed for testing assembly.
-       "System.Reactive.Providers",
-       "System.Reactive.Runtime.Remoting",
-       "System.Reactive.Windows.Forms",
-       "System.Reactive.Windows.Threading",
-       "System.Reactive.Observable.Aliases",
-       "Microsoft.Reactive.Testing",
-       "Tests.System.Reactive",
-       };
-
-var excluded_android_asses = new string [] {
-       "System.Reactive.Windows.Forms",
-       "System.Reactive.Windows.Threading",
-       };
-var excluded_ios_asses = new string [] {
-       "System.Reactive.Providers",
-       "System.Reactive.Windows.Forms",
-       "System.Reactive.Windows.Threading",
-       }
-
-var blacklist = new string [] {
-       // WPF Dispatcher.Invoke() is not implemented.
-       "DispatcherSchedulerTest.cs",
-       // This is not limited to Dispatcher, but many of them are relevant to it, or Winforms (we filter it out by not defining HAS_WINFORMS)
-       "ObservableConcurrencyTest.cs",
-       };
-
-int guid_idx = 0;
-foreach (var ass in asses) {
-
-       var ix = ass.Contains ("Interactive");
-
-       var dstAndroid = ix ? "../../external/rx/Ix/NET/Ix_Xamarin/android" :
-               "../../external/rx/Rx/NET/Source/Rx_Xamarin/android";
-       var dstIOS = ix ? "../../external/rx/Ix/NET/Ix_Xamarin/iOS" :
-               "../../external/rx/Rx/NET/Source/Rx_Xamarin/iOS";
-
-
-       var monoass = ass == "Microsoft.Reactive.Testing" ?
-               "Mono.Reactive.Testing" : ass;
-       var basePath = ix ? "../../external/rx/Ix/NET" :
-               "../../external/rx/Rx/NET/Source";
-       var csproj = Path.Combine (basePath, ass, ass + ".csproj");
-       var pathPrefix = ass == "Tests.System.Reactive" ? "../" : "";
-
-       var category = ix ? "Ix_Xamarin" : "Rx_Xamarin";
-       var category2 = ix ? "ix" : "rx";
-       var android_dir = Path.GetFullPath (Path.Combine (csproj, "..", "..", category, "android", category2, monoass));
-       var ios_dir = Path.GetFullPath (Path.Combine (csproj, "..", "..", category, "iOS", category2, monoass));
-       var android_proj = Path.Combine (android_dir, "android_" + monoass + ".csproj");
-       var ios_proj = Path.Combine (ios_dir, "ios_" + monoass + ".csproj");
-       if (!Directory.Exists (android_dir))
-               Directory.CreateDirectory (android_dir);
-       if (!Directory.Exists (ios_dir))
-               Directory.CreateDirectory (ios_dir);
-
-       // tests are built under Mono.Reactive.Testing directory.
-       
-       var sources =
-               monoass == "Tests.System.Reactive" ?
-               Path.Combine ("Mono.Reactive.Testing", "Mono.Reactive.Testing_test.dll.sources") :
-               Path.Combine (monoass, monoass + ".dll.sources");
-
-       var assdir = Path.Combine (monoass, "Assembly");
-       var assinfo = Path.Combine (monoass, "Assembly", "AssemblyInfo.cs");
-
-       var projectRefs = "";
-
-       if (monoass != "Tests.System.Reactive") {
-               if (!Directory.Exists (assdir))
-                       Directory.CreateDirectory (assdir);
-               using (var tw = File.CreateText (assinfo)) {
-                       //tw.WriteLine ("[assembly:System.Reflection.AssemblyVersion (\"2.1.30214.0\")]");
-                       //tw.WriteLine ("[assembly:System.Reflection.AssemblyFileVersion (\"2.1.30214.0\")]");
-               }
-       }
-
-       var sourcesXml = "";
-       var projectRefsXml = "";
-       var resourcesXml = "";
-
-       var doc = XDocument.Load (csproj);
-       var rootNS = doc.XPathSelectElement ("//*[local-name()='RootNamespace']").Value;
-       var guid = doc.XPathSelectElement ("//*[local-name()='ProjectGuid']").Value;
-
-       foreach (var e in doc.XPathSelectElements ("//*[local-name()='ProjectReference']"))
-               projectRefsXml += e;
-
-       Console.WriteLine ("Writing " + sources + " ...");
-       using (var tw = File.CreateText (sources)) {
-               if (monoass != "Tests.System.Reactive")
-                       tw.WriteLine ("Assembly/AssemblyInfo.cs");
-               foreach (var path in doc.XPathSelectElements ("//*[local-name()='Compile']")
-                       .Select (el => el.Attribute ("Include").Value)
-                       .Select (s => s.Replace ("\\", "/"))) {
-                       if (!blacklist.Any (b => path.Contains (b))) {
-                               var p = Path.Combine (ass, path);
-                               var p2 = Path.Combine ("..", basePath, ass, path);
-                               tw.WriteLine (Path.Combine (pathPrefix, p2));
-                               sourcesXml += "    <Compile Include=\"..\\..\\..\\..\\" + p.Replace ('/', '\\') + "\">\n      <Link>" + path.Replace ('/', '\\') + "</Link>\n    </Compile>\n";
-                       }
-               }
-       }
-
-       Console.WriteLine ("Writing more_build_args...");
-       var argsPath = Path.Combine (Path.GetDirectoryName (sources), "more_build_args");
-       using (var tw = File.CreateText (argsPath)) {
-               if (ass.StartsWith ("System")) {
-                       tw.WriteLine ("-d:SIGNED");
-                       tw.WriteLine ("-delaysign");
-                       tw.WriteLine ("-keyfile:../reactive.pub");
-               }
-
-               foreach (var path in doc.XPathSelectElements ("//*[local-name()='EmbeddedResource']")) {
-                       var res = path.Attribute ("Include").Value;
-                       var resx = Path.Combine (basePath, ass, res);
-                       var resFileName = res.Replace ("resx", "resources");
-                       var resxDest = Path.Combine (monoass, res);
-                       var resPath = Path.Combine (monoass, resFileName);
-                       if (File.Exists (resxDest))
-                               File.Delete (resxDest);
-                       File.Copy (resx, resxDest);
-                       //Process.Start ("resgen", String.Format ("{0} {1}", resx, resPath));
-                       tw.WriteLine ("-resource:{0},{1}.{2}", resFileName, rootNS, resFileName);
-                       var p = Path.Combine ("..", basePath, ass, res);
-                       resourcesXml += "    <EmbeddedResource Include='..\\..\\..\\..\\..\\..\\" + p + "'>\n      <Link>" + res + "</Link>\n    </EmbeddedResource>\n";
-               }
-       }
-       foreach (var f in new string [] { android_proj, ios_proj}) {
-               string prj_guid;
-               string template, prj_prefix, nunitProjRef, nunitRef;
-               var androidNUnit = "<ProjectReference Include=\"..\\..\\Andr.Unit\\Android.NUnitLite\\Android.NUnitLite.csproj\"><Project>{6A005891-A3D6-4398-A729-F645397D573A}</Project><Name>Android.NUnitLite</Name></ProjectReference>";
-               if (f == android_proj) {
-                       prj_guid = guids_android [guid_idx].ToUpper ();
-                       template = template_android;
-                       prj_prefix ="android_";
-                       nunitProjRef = ass.Contains ("Test") ? androidNUnit : "";
-                       nunitRef = "";
-               } else {
-                       prj_guid = guids_ios [guid_idx].ToUpper ();
-                       template = template_ios;
-                       prj_prefix ="ios_";
-                       nunitProjRef = "";
-                       nunitRef = ass.Contains ("Test") ? "<Reference Include='MonoTouch.NUnitLite' />" : "";
-               }
-               using (var tw = File.CreateText (f)) {
-                       tw.Write (template
-                               .Replace ("PROJECT_GUID_GOES_HERE", '{' + prj_guid + '}')
-                               .Replace ("ASSEMBLY_NAME_GOES_HERE", monoass)
-                               .Replace ("OPTIONAL_ANDROID_NUNITLITE", nunitProjRef)
-                               .Replace ("OPTIONAL_MONOTOUCH_NUNITLITE", nunitRef)
-                               .Replace ("PROJECT_REFERENCES_GO_HERE",
-                                       projectRefsXml
-                                               .Replace (" xmlns=\"http://schemas.microsoft.com/developer/msbuild/2003\"", "")
-                                               .Replace ("Microsoft.Reactive.Testing", "Mono.Reactive.Testing")
-                                               .Replace ("System", prj_prefix + "System")
-                                               .Replace ("Mono", prj_prefix + "Mono")
-                                               .Replace ("Include=\"..\\" + prj_prefix, "Include=\"..\\"))
-                               .Replace ("RESOURCES_GO_HERE", resourcesXml.Replace ('\\', f == ios_proj ? '/' : '\\')) // whoa, BACKSLASH doesn't work only on android on MD/mac...!
-                               .Replace ("SOURCES_GO_HERE", sourcesXml.Replace ('\\', f == ios_proj ? '/' : '\\'))); // whoa, BACKSLASH doesn't work only on android on MD/mac...!
-               }
-       }
-       guid_idx++;
-}
-
diff --git a/mcs/class/project_template_android.txt b/mcs/class/project_template_android.txt
deleted file mode 100644 (file)
index 5444595..0000000
+++ /dev/null
@@ -1,61 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <PropertyGroup>
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
-    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
-    <ProductVersion>10.0.0</ProductVersion>
-    <SchemaVersion>2.0</SchemaVersion>
-    <ProjectGuid>PROJECT_GUID_GOES_HERE</ProjectGuid>
-    <ProjectTypeGuids>{EFBA0AD7-5A72-4C68-AF49-83D382785DCF};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
-    <OutputType>Library</OutputType>
-    <RootNamespace>System.Reactive</RootNamespace>
-    <AssemblyName>ASSEMBLY_NAME_GOES_HERE</AssemblyName>
-    <DefineConstants>NO_TASK_DELAY;NO_WINDOWS_THREADING;NO_REMOTING;HAS_AWAIT;NUNIT;MONODROID;$(SignAssemblySpec)</DefineConstants>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <DebugSymbols>True</DebugSymbols>
-    <DebugType>full</DebugType>
-    <Optimize>False</Optimize>
-    <OutputPath>bin\Debug</OutputPath>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-    <AndroidLinkMode>None</AndroidLinkMode>
-    <ConsolePause>False</ConsolePause>
-    <DefineConstants>DEBUG;NO_TASK_DELAY;NO_WINDOWS_THREADING;NO_REMOTING;HAS_AWAIT;NUNIT;MONODROID;$(SignAssemblySpec)</DefineConstants>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
-    <DebugType>none</DebugType>
-    <Optimize>True</Optimize>
-    <OutputPath>bin\Release</OutputPath>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-    <ConsolePause>False</ConsolePause>
-    <AndroidLinkMode>SdkOnly</AndroidLinkMode>
-    <AndroidUseSharedRuntime>False</AndroidUseSharedRuntime>
-  </PropertyGroup>
-  <ItemGroup>
-    <Reference Include="System" />
-    <Reference Include="System.Xml" />
-    <Reference Include="System.Core" />
-  </ItemGroup>
-  <ItemGroup>
-OPTIONAL_ANDROID_NUNITLITE
-PROJECT_REFERENCES_GO_HERE
-    <!--
-    <ProjectReference Include="..\Andr.Unit\Android.NUnitLite\Android.NUnitLite.csproj">
-      <Project>{6A005891-A3D6-4398-A729-F645397D573A}</Project>
-      <Name>Android.NUnitLite</Name>
-    </ProjectReference>
-    -->
-  </ItemGroup>
-  <ItemGroup>
-SOURCES_GO_HERE
-    <!--
-    <Compile Include="..\..\..\Microsoft.Reactive.Testing\ColdObservable.cs">
-      <Link>ColdObservable.cs</Link>
-    </Compile>
-    -->
-RESOURCES_GO_HERE
-  </ItemGroup>
-  <Import Project="$(MSBuildExtensionsPath)\Novell\Novell.MonoDroid.CSharp.targets" />
-</Project>
diff --git a/mcs/class/project_template_ios.txt b/mcs/class/project_template_ios.txt
deleted file mode 100644 (file)
index 6a6d996..0000000
+++ /dev/null
@@ -1,73 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <PropertyGroup>
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
-    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
-    <ProductVersion>10.0.0</ProductVersion>
-    <SchemaVersion>2.0</SchemaVersion>
-    <ProjectGuid>PROJECT_GUID_GOES_HERE</ProjectGuid>
-    <ProjectTypeGuids>{6BC8ED88-2882-458C-8E55-DFD12B67127B};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
-    <OutputType>Library</OutputType>
-    <AppDesignerFolder>Properties</AppDesignerFolder>
-    <RootNamespace>System.Reactive</RootNamespace>
-    <IPhoneResourcePrefix>Resources</IPhoneResourcePrefix>
-    <AssemblyName>ASSEMBLY_NAME_GOES_HERE</AssemblyName>
-    <ProductSignAssembly>true</ProductSignAssembly>
-    <DefineConstants>NO_TASK_DELAY;NO_WINDOWS_THREADING;NO_REMOTING;NO_REFLECTION_EMIT;NO_EXPRESSIONS;HAS_AWAIT;NUNIT;$(SignAssemblySpec)</DefineConstants>
-    <additionalargs>-delaySign</additionalargs>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <DebugSymbols>True</DebugSymbols>
-    <DebugType>full</DebugType>
-    <Optimize>False</Optimize>
-    <OutputPath>bin\Debug</OutputPath>
-    <ConsolePause>False</ConsolePause>
-    <WarningLevel>4</WarningLevel>
-    <DefineConstants>DEBUG;NO_TASK_DELAY;NO_WINDOWS_THREADING;NO_REMOTING;NO_REFLECTION_EMIT;NO_EXPRESSIONS;HAS_AWAIT;NUNIT;$(SignAssemblySpec)</DefineConstants>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
-    <DebugType>none</DebugType>
-    <Optimize>True</Optimize>
-    <OutputPath>bin\Release</OutputPath>
-    <ConsolePause>False</ConsolePause>
-    <WarningLevel>4</WarningLevel>
-  </PropertyGroup>
-  <PropertyGroup>
-    <!--
-    <TargetFrameworkIdentifier>iOS</TargetFrameworkIdentifier>
-    <TargetFrameworkVersion>v2.0.5</TargetFrameworkVersion>
-    -->
-    <!-- NoStdLib>true</NoStdLib -->
-    <BuildPlatform>MOBILE</BuildPlatform>
-    <BuildFlavor>MONOTOUCH</BuildFlavor>
-  </PropertyGroup>
-  <Import Project="..\..\..\Common.targets" />
-  <ItemGroup>
-    <Reference Include="System" />
-    <Reference Include="System.Core" />
-    <Reference Include="MonoTouch.NUnitLite" />
-    OPTIONAL_MONOTOUCH_NUNITLITE
-  </ItemGroup>
-  <ItemGroup>
-    PROJECT_REFERENCES_GO_HERE
-    <!--
-    <ProjectReference Include="..\Andr.Unit\Android.NUnitLite\Android.NUnitLite.csproj">
-      <Project>{6A005891-A3D6-4398-A729-F645397D573A}</Project>
-      <Name>Android.NUnitLite</Name>
-    </ProjectReference>
-    -->
-  </ItemGroup>
-  <ItemGroup>
-    SOURCES_GO_HERE
-    <!--
-    <Compile Include="..\..\..\Microsoft.Reactive.Testing\ColdObservable.cs">
-      <Link>ColdObservable.cs</Link>
-    </Compile>
-    -->
-    RESOURCES_GO_HERE
-  </ItemGroup>
-  <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
-  <ItemGroup>
-    <Folder Include="Properties\" />
-  </ItemGroup>
-</Project>
index 4748d08ef4c423d98ebe8f42ba930c531c482877..ca9d1dfd03b379fb556aaed8632aac224e35ae95 100644 (file)
@@ -58,13 +58,6 @@ SUBDIRS = $(build_SUBDIRS) $(net_4_5_dirs)
 include ../build/rules.make
 
 DISTFILES = \
-       assemblies.xml                  \
-       mono-win32-setup-dark.bmp       \
-       mono-win32-setup-light.bmp      \
-       mono-win32-setup.nsi            \
-       scan-tests.pl                   \
-       tinderbox/smtp.c                \
-       tinderbox/tinderbox.sh          \
        removecomments.sh
 
 test-local csproj-local run-test-local run-test-ondotnet-local all-local install-local uninstall-local doc-update-local:
diff --git a/mcs/tools/assemblies.xml b/mcs/tools/assemblies.xml
deleted file mode 100644 (file)
index 9dd9652..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-<assemblies>
-       <path url="C:\WINNT\Microsoft.NET\Framework\v1.0.3705">
-               <assembly file="mscorlib.dll"/>
-               <assembly file="System.Web.dll"/>
-               <assembly file="System.dll"/>
-               <assembly file="System.Drawing.dll"/>
-               <assembly file="System.Security.dll"/>
-               <assembly file="System.Windows.Forms.dll"/>
-               <assembly file="System.Xml.dll"/>
-               <assembly file="System.Data.dll"/>
-               <assembly file="System.Design.dll"/>
-               <assembly file="System.EnterpriseServices.dll"/>
-               <assembly file="System.Management.dll"/>
-               <assembly file="System.Messaging.dll"/>
-               <assembly file="System.Runtime.Remoting.dll"/>
-               <assembly file="System.ServiceProcess.dll"/>
-               <assembly file="System.Web.RegularExpressions.dll"/>
-               <assembly file="System.Web.Services.dll"/>
-               <assembly file="System.Web.Mobile.dll"/>
-       </path>
-</assemblies>
diff --git a/mcs/tools/mono-win32-setup-dark.bmp b/mcs/tools/mono-win32-setup-dark.bmp
deleted file mode 100755 (executable)
index d54f6a3..0000000
Binary files a/mcs/tools/mono-win32-setup-dark.bmp and /dev/null differ
diff --git a/mcs/tools/mono-win32-setup-light.bmp b/mcs/tools/mono-win32-setup-light.bmp
deleted file mode 100755 (executable)
index df4aec1..0000000
Binary files a/mcs/tools/mono-win32-setup-light.bmp and /dev/null differ
diff --git a/mcs/tools/mono-win32-setup.nsi b/mcs/tools/mono-win32-setup.nsi
deleted file mode 100755 (executable)
index d4dc171..0000000
+++ /dev/null
@@ -1,708 +0,0 @@
-; =====================================================\r
-; mono.nsi - Mono Setup wizard for windows\r
-; =====================================================\r
-;\r
-; (C) Copyright 2003 by Johannes Roith\r
-; (C) Copyright 2003 by Daniel Morgan\r
-;\r
-; Authors: \r
-;       Johannes Roith <johannes@jroith.de>\r
-;       Daniel Morgan <danmorg@sc.rr.com>\r
-;\r
-; This .nsi includes code from the NSIS Archives:\r
-; function StrReplace and VersionCheck \r
-; by Hendri Adriaens\r
-; HendriAdriaens@hotmail.com\r
-; \r
-; =====================================================\r
-;\r
-; This script can build a binary setup wizard of mono.\r
-; It is released under the GNU GPL.\r
-;\r
-; =====================================================\r
-; SET MILESTONE & SOURCE DIR\r
-; =====================================================\r
-;\r
-;\r
-  !define MILESTONE "0.24" ;\r
-  !define SOURCE_INSTALL_DIR "c:\mono-0.23-setup\install\\*" ;\r
-\r
-; =====================================================\r
-; SET LOGO\r
-; =====================================================\r
-;\r
-;  Beautification:\r
-;\r
-;  This adds a Mono-specific Image on the left\r
-;  You can choose between the light or dark one.\r
-;  \r
-;  If you wish no mono-specifi logo, please outcomment\r
-;  the lines.\r
-;  \r
-;  "light" is enabled.\r
-;\r
-;  !define MUI_SPECIALBITMAP "mono-win32-setup-dark.bmp"\r
-   !define MUI_SPECIALBITMAP "mono-win32-setup-light.bmp"\r
-\r
-; =====================================================\r
-; BUILDING\r
-; =====================================================\r
-;\r
-; 1. Build mono. The install directory must not contain\r
-;    anything else - everything gets packed in!!!\r
-;\r
-; 2. In your install directory, delete the *.a files.\r
-;     Most people won't need them and it saves ~ 4 MB.\r
-;\r
-; 3. Get latest nsis from cvs or a development snapshot\r
-;    from http://nsis.sf.net\r
-;\r
-; 4. Adapt the MILESTONE\r
-;\r
-; 5. Adapt the SOURCE_INSTALL_DIR above to match your \r
-;     install directory. Do not remove \\* at the end!!\r
-;\r
-; 6. Open this script in makensisw.exe\r
-;\r
-; 7. The output file is mono-[MILESTONE]-win32-1.exe\r
-;\r
-;\r
-;\r
-;\r
-;\r
-; =====================================================\r
-; MONO & REGISTRY / DETECTING MONO\r
-; =====================================================\r
-;\r
-;\r
-; This setup creates several Registry Keys:\r
-;\r
-; HKEY_LOCAL_MACHINE SOFTWARE\Mono DefaultCLR\r
-; HKEY_LOCAL_MACHINE SOFTWARE\Mono\${MILESTONE} SdkInstallRoot\r
-; HKEY_LOCAL_MACHINE SOFTWARE\Mono\${MILESTONE} FrameworkAssemblyDirectory\r
-; HKEY_LOCAL_MACHINE SOFTWARE\Mono\${MILESTONE} MonoConfigDir\r
-;\r
-; =====================================================\r
-;\r
-; To get the current Mono Install Directory:\r
-;\r
-; 1. Get DefaultCLR\r
-; 2. Get HKEY_LOCAL_MACHINE SOFTWARE\Mono\$THE_DEFAULT_CLR_VALUE SdkInstallRoot\r
-;\r
-; =====================================================\r
-;\r
-; To get the current Mono assembly Directory:\r
-;\r
-; 1. Get DefaultCLR\r
-; 2. Get HKEY_LOCAL_MACHINE SOFTWARE\Mono\$THE_DEFAULT_CLR_VALUE FrameworkAssemblyDirectory\r
-; \r
-; =====================================================\r
-; Do not edit below\r
-; =====================================================\r
-;\r
-;\r
-; =====================================================\r
-; GENERAL SETTING - NEED NOT TO BE CHANGED\r
-; =====================================================\r
-\r
- !define NAME "Mono" ;\r
- !define TARGET_INSTALL_DIR "$PROGRAMFILES\Mono-${MILESTONE}" ;\r
- !define OUTFILE "mono-${MILESTONE}-win32-1.exe" ;\r
-\r
-; =====================================================\r
-; SCRIPT\r
-; =====================================================\r
-\r
- !define MUI_PRODUCT "${NAME}"\r
- !define MUI_VERSION "${MILESTONE}"\r
- !define FULLNAME "${MUI_PRODUCT} ${MUI_VERSION}"\r
- !define MUI_UI "${NSISDIR}\Contrib\UIs\modern2.exe"\r
- !define MUI_ICON "${NSISDIR}\Contrib\Icons\setup.ico"\r
- !define MUI_UNICON "${NSISDIR}\Contrib\Icons\normal-uninstall.ico"\r
- !define MUI_WELCOMEPAGE\r
- !define MUI_DIRECTORYPAGE\r
- !define MUI_DIRECTORYSELECTIONPAGE\r
- !include "${NSISDIR}\Contrib\Modern UI\System.nsh"\r
- !insertmacro MUI_SYSTEM\r
- !insertmacro MUI_LANGUAGE "ENGLISH"\r
-\r
-\r
- OutFile "${OUTFILE}"\r
- InstallDir "${TARGET_INSTALL_DIR}"\r
-\r
-\r
-;========================\r
-; Uninstaller\r
-;========================\r
-\r
-Section "Uninstall"\r
-\r
-  MessageBox MB_YESNO "Are you sure you want to uninstall Mono from your system?" IDNO NoUnInstall\r
-\r
-  Delete $INSTDIR\Uninst.exe ; delete Uninstaller\r
-  DeleteRegKey HKLM SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Mono-${MILESTONE} ; Remove Entry in Software List\r
-\r
-  MessageBox MB_YESNO "Mono was installed into $INSTDIR. Should this directory be removed completly?" IDNO GoNext1\r
-  RMDir /r $INSTDIR\r
-  GoNext1:\r
-\r
-  DeleteRegKey HKLM SOFTWARE\Mono\${MILESTONE}\r
-\r
-  ; If the Default-Key is the current Milestone, we just remove the wrappers\r
-\r
-  ReadRegStr $0 HKEY_LOCAL_MACHINE SOFTWARE\Mono\ DefaultCLR\r
-  StrCmp $0 ${MILESTONE} DeleteWrappers\r
-\r
-  MessageBox MB_YESNO "Mono ${MILESTONE} has been removed, but the default installation of Mono differs form this version. Should the wrappers and the Mono registry key be still be removed? This could disable other Mono installations." IDNO GoNext2\r
-\r
-  DeleteWrappers:\r
-\r
-  ; Complete Uninstall\r
-\r
-  DeleteRegKey HKLM SOFTWARE\Mono\r
-  Delete $WINDIR\monobasepath.bat\r
-  Delete $WINDIR\mcs.bat\r
-  Delete $WINDIR\mbas.bat\r
-  Delete $WINDIR\mint.bat\r
-  Delete $WINDIR\mono.bat\r
-  Delete $WINDIR\monodis.bat\r
-  Delete $WINDIR\monoilasm.bat\r
-  Delete $WINDIR\sqlsharp.bat\r
-  Delete $WINDIR\secutil.bat\r
-  Delete $WINDIR\cert2spc.bat\r
-  Delete $WINDIR\monoresgen.bat\r
-  Delete $WINDIR\monosn.bat\r
-  Delete $WINDIR\cilc.bat\r
-\r
-  GoNext2:\r
-  NoUnInstall:\r
-\r
-SectionEnd\r
-\r
-\r
- Section\r
-\r
- ; Warn people if a newer Mono is already installed\r
-\r
- ReadRegStr $0 HKEY_LOCAL_MACHINE SOFTWARE\Mono\ DefaultCLR\r
- Push $0\r
- Push ${MILESTONE} \r
- Call VersionCheck\r
- Pop $0\r
- StrCmp $0 0 NoAskInstall\r
- StrCmp $0 2 NoAskInstall\r
- MessageBox MB_YESNO "A newer Mono version is already installed. Still continue?" IDNO NoInstall\r
-\r
- NoAskInstall:\r
-\r
- SetOutPath $INSTDIR\r
- File /r "${SOURCE_INSTALL_DIR}"\r
- WriteUninstaller Uninst.exe\r
-\r
- WriteRegStr HKEY_LOCAL_MACHINE SOFTWARE\Mono\${MILESTONE} SdkInstallRoot $INSTDIR\r
- WriteRegStr HKEY_LOCAL_MACHINE SOFTWARE\Mono\${MILESTONE} FrameworkAssemblyDirectory $INSTDIR\lib\r
- WriteRegStr HKEY_LOCAL_MACHINE SOFTWARE\Mono\${MILESTONE} MonoConfigDir $INSTDIR\etc\mono\r
- ;WriteRegStr HKEY_LOCAL_MACHINE SOFTWARE\Mono\${MILESTONE} GtkSharpLibPath $INSTDIR\lib\r
- WriteRegStr HKEY_LOCAL_MACHINE SOFTWARE\Mono DefaultCLR ${MILESTONE}\r
-\r
- ; Mono Uninstall Entry in Windows Software List in the Control panel\r
- WriteRegStr HKEY_LOCAL_MACHINE SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Mono-${MILESTONE} DisplayName "Mono ${MILESTONE}"\r
- WriteRegStr HKEY_LOCAL_MACHINE SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Mono-${MILESTONE} UninstallString $INSTDIR\uninst.exe\r
-\r
- ;original string is like C:\mono-0.20\install\r
- StrCpy $5 $INSTDIR \r
- Push $5\r
- Push "\" ;search for this string\r
- Push "/" ;replace with this string\r
- Call StrReplace\r
- ;resulting string which is like C:/mono-0.20/install\r
- Pop $6\r
-\r
-;========================\r
-; Write the wrapper files\r
-;========================\r
-\r
-; create bin/mono wrapper to be used if the user has cygwin\r
-FileOpen $0 "$INSTDIR\bin\mono.exe.sh" "w"\r
-FileWrite $0 "#!/bin/sh$\r$\n"\r
-FileWrite $0 "export MONO_PATH=$6/lib$\r$\n"\r
-FileWrite $0 "export MONO_CFG_DIR=$6/etc/mono$\r$\n"\r
-FileWrite $0 '$6/bin/mono.exe "$$@"'\r
-FileClose $0\r
-\r
-; create bin/mint wrapper to be used if the user has cygwin\r
-FileOpen $0 "$INSTDIR\bin\mint.exe.sh" "w"\r
-FileWrite $0 "#!/bin/sh$\r$\n"\r
-FileWrite $0 "export MONO_PATH=$6/lib$\r$\n"\r
-FileWrite $0 "export MONO_CFG_DIR=$6/etc/mono$\r$\n"\r
-FileWrite $0 '$6/bin/mint.exe "$$@"'\r
-FileClose $0\r
-\r
-; create bin/mcs wrapper to be used if the user has cygwin\r
-FileOpen $0 "$INSTDIR\bin\mcs.exe.sh" "w"\r
-FileWrite $0 "#!/bin/sh$\r$\n"\r
-FileWrite $0 "export MONO_PATH=$6/lib$\r$\n"\r
-FileWrite $0 "export MONO_CFG_DIR=$6/etc/mono$\r$\n"\r
-FileWrite $0 '$6/bin/mono.exe $6/bin/mcs.exe "$$@"'\r
-FileClose $0\r
-\r
-; create bin/mbas wrapper to be used if the user has cygwin\r
-FileOpen $0 "$INSTDIR\bin\mbas.exe.sh" "w"\r
-FileWrite $0 "#!/bin/sh$\r$\n"\r
-FileWrite $0 "export MONO_PATH=$6/lib$\r$\n"\r
-FileWrite $0 "export MONO_CFG_DIR=$6/etc/mono$\r$\n"\r
-FileWrite $0 '$6/bin/mono.exe $6/bin/mbas.exe "$$@"'\r
-FileClose $0\r
-\r
-; create bin/sqlsharp wrapper to be used if the user has cygwin\r
-FileOpen $0 "$INSTDIR\bin\sqlsharp.exe.sh" "w"\r
-FileWrite $0 "#!/bin/sh$\r$\n"\r
-FileWrite $0 "export MONO_PATH=$6/lib$\r$\n"\r
-FileWrite $0 "export MONO_CFG_DIR=$6/etc/mono$\r$\n"\r
-FileWrite $0 '$6/bin/mono.exe $6/bin/sqlsharp.exe "$$@"'\r
-FileClose $0\r
-\r
-; create bin/monodis wrapper to be used if the user has cygwin\r
-FileOpen $0 "$INSTDIR\bin\monodis.exe.sh" "w"\r
-FileWrite $0 "#!/bin/sh$\r$\n"\r
-FileWrite $0 "export MONO_PATH=$6/lib$\r$\n"\r
-FileWrite $0 "export MONO_CFG_DIR=$6/etc/mono$\r$\n"\r
-FileWrite $0 '$6/bin/mono.exe $6/bin/monodis.exe "$$@"'\r
-FileClose $0\r
-\r
-; create bin/monoresgen wrapper to be used if the user has cygwin\r
-FileOpen $0 "$INSTDIR\bin\monoresgen.exe.sh" "w"\r
-FileWrite $0 "#!/bin/sh$\r$\n"\r
-FileWrite $0 "export MONO_PATH=$6/lib$\r$\n"\r
-FileWrite $0 "export MONO_CFG_DIR=$6/etc/mono$\r$\n"\r
-FileWrite $0 '$6/bin/mono.exe $6/bin/monoresgen.exe "$$@"'\r
-FileClose $0\r
-\r
-; create bin/monoilasm wrapper to be used if the user has cygwin\r
-FileOpen $0 "$INSTDIR\bin\monoilasm.exe.sh" "w"\r
-FileWrite $0 "#!/bin/sh$\r$\n"\r
-FileWrite $0 "export MONO_PATH=$6/lib$\r$\n"\r
-FileWrite $0 "export MONO_CFG_DIR=$6/etc/mono$\r$\n"\r
-FileWrite $0 '$6/bin/mono.exe $6/bin/monoilasm.exe "$$@"'\r
-FileClose $0\r
-\r
-; create bin/monosn wrapper to be used if the user has cygwin\r
-FileOpen $0 "$INSTDIR\bin\monosn.exe.sh" "w"\r
-FileWrite $0 "#!/bin/sh$\r$\n"\r
-FileWrite $0 "export MONO_PATH=$6/lib$\r$\n"\r
-FileWrite $0 "export MONO_CFG_DIR=$6/etc/mono$\r$\n"\r
-FileWrite $0 '$6/bin/mono.exe $6/bin/monosn.exe "$$@"'\r
-FileClose $0\r
-\r
-; create bin/secutil wrapper to be used if the user has cygwin\r
-FileOpen $0 "$INSTDIR\bin\secutil.exe.sh" "w"\r
-FileWrite $0 "#!/bin/sh$\r$\n"\r
-FileWrite $0 "export MONO_PATH=$6/lib$\r$\n"\r
-FileWrite $0 "export MONO_CFG_DIR=$6/etc/mono$\r$\n"\r
-FileWrite $0 '$6/bin/mono.exe $6/bin/secutil.exe "$$@"'\r
-FileClose $0\r
-\r
-; create bin/cert2spc wrapper to be used if the user has cygwin\r
-FileOpen $0 "$INSTDIR\bin\cert2spc.exe.sh" "w"\r
-FileWrite $0 "#!/bin/sh$\r$\n"\r
-FileWrite $0 "export MONO_PATH=$6/lib$\r$\n"\r
-FileWrite $0 "export MONO_CFG_DIR=$6/etc/mono$\r$\n"\r
-FileWrite $0 '$6/bin/mono.exe $6/bin/cert2spc.exe "$$@"'\r
-FileClose $0\r
-\r
-; create bin/cilc wrapper to be used if the user has cygwin\r
-FileOpen $0 "$INSTDIR\bin\cilc.exe.sh" "w"\r
-FileWrite $0 "#!/bin/sh$\r$\n"\r
-FileWrite $0 "export MONO_PATH=$6/lib$\r$\n"\r
-FileWrite $0 "export MONO_CFG_DIR=$6/etc/mono$\r$\n"\r
-FileWrite $0 '$6/bin/mono.exe $6/bin/cilc.exe "$$@"'\r
-FileClose $0\r
-\r
-;\r
-; These wrappers are copied to the windows directory.\r
-;\r
-\r
-;========================\r
-; Write the path file\r
-;========================\r
-\r
-FileOpen $0 "$WINDIR\monobasepath.bat" "w"\r
-FileWrite $0 'set MONO_BASEPATH="$INSTDIR"$\r$\n'\r
-FileWrite $0 'set MONO_PATH=$INSTDIR\lib$\r$\n'\r
-FileWrite $0 'set MONO_CFG_DIR="$INSTDIR\etc\mono"'\r
-FileClose $0\r
-\r
-\r
-;========================\r
-; Write the mcs file\r
-;========================\r
-\r
-FileOpen $0 "$WINDIR\mcs.bat" "w"\r
-\r
-FileWrite $0 "@echo off$\r$\n"\r
-FileWrite $0 "call monobasepath.bat$\r$\n"\r
-FileWrite $0 "set MONOARGS=$\r$\n"\r
-FileWrite $0 ":loop$\r$\n"\r
-FileWrite $0 "if x%1 == x goto :done$\r$\n"\r
-FileWrite $0 "set MONOARGS=%MONOARGS% %1$\r$\n"\r
-FileWrite $0 "shift$\r$\n"\r
-FileWrite $0 "goto loop$\r$\n"\r
-FileWrite $0 ":done$\r$\n"\r
-FileWrite $0 "setlocal$\r$\n"\r
-FileWrite $0 'set path="$INSTDIR\bin\;$INSTDIR\lib\;%path%"$\r$\n'\r
-FileWrite $0 '"$INSTDIR\bin\mono.exe" "$INSTDIR\bin\mcs.exe" %MONOARGS%$\r$\n'\r
-FileWrite $0 "endlocal$\r$\n"\r
-\r
-FileClose $0\r
-\r
-;========================\r
-; Write the mbas file\r
-;========================\r
-\r
-FileOpen $0 "$WINDIR\mbas.bat" "w"\r
-\r
-FileWrite $0 "@echo off$\r$\n"\r
-FileWrite $0 "call monobasepath.bat$\r$\n"\r
-FileWrite $0 "set MONOARGS=$\r$\n"\r
-FileWrite $0 ":loop$\r$\n"\r
-FileWrite $0 "if x%1 == x goto :done$\r$\n"\r
-FileWrite $0 "set MONOARGS=%MONOARGS% %1$\r$\n"\r
-FileWrite $0 "shift$\r$\n"\r
-FileWrite $0 "goto loop$\r$\n"\r
-FileWrite $0 ":done$\r$\n"\r
-FileWrite $0 "setlocal$\r$\n"\r
-FileWrite $0 'set path="$INSTDIR\bin\;$INSTDIR\lib\;%path%"$\r$\n'\r
-FileWrite $0 '"$INSTDIR\bin\mono.exe" "$INSTDIR\bin\mbas.exe" %MONOARGS%$\r$\n'\r
-FileWrite $0 "endlocal$\r$\n"\r
-\r
-FileClose $0\r
-\r
-;========================\r
-; Write the mint file\r
-;========================\r
-\r
-FileOpen $0 "$WINDIR\mint.bat" "w"\r
-\r
-FileWrite $0 "@echo off$\r$\n"\r
-FileWrite $0 "call monobasepath.bat$\r$\n"\r
-FileWrite $0 "set MONOARGS=$\r$\n"\r
-FileWrite $0 ":loop$\r$\n"\r
-FileWrite $0 "if x%1 == x goto :done$\r$\n"\r
-FileWrite $0 "set MONOARGS=%MONOARGS% %1$\r$\n"\r
-FileWrite $0 "shift$\r$\n"\r
-FileWrite $0 "goto loop$\r$\n"\r
-FileWrite $0 ":done$\r$\n"\r
-FileWrite $0 "setlocal$\r$\n"\r
-FileWrite $0 'set path="$INSTDIR\bin\;$INSTDIR\lib\;%path%"$\r$\n'\r
-FileWrite $0 '"$INSTDIR\bin\mint.exe" %MONOARGS%$\r$\n'\r
-FileWrite $0 "endlocal$\r$\n"\r
-\r
-FileClose $0\r
-\r
-;========================\r
-; Write the mono file\r
-;========================\r
-\r
-FileOpen $0 "$WINDIR\mono.bat" "w"\r
-\r
-FileWrite $0 "@echo off$\r$\n"\r
-FileWrite $0 "call monobasepath.bat$\r$\n"\r
-FileWrite $0 "set MONOARGS=$\r$\n"\r
-FileWrite $0 ":loop$\r$\n"\r
-FileWrite $0 "if x%1 == x goto :done$\r$\n"\r
-FileWrite $0 "set MONOARGS=%MONOARGS% %1$\r$\n"\r
-FileWrite $0 "shift$\r$\n"\r
-FileWrite $0 "goto loop$\r$\n"\r
-FileWrite $0 ":done$\r$\n"\r
-FileWrite $0 "setlocal$\r$\n"\r
-FileWrite $0 'set path="$INSTDIR\bin\;$INSTDIR\lib\;%path%"$\r$\n'\r
-FileWrite $0 '"$INSTDIR\bin\mono.exe" %MONOARGS%$\r$\n'\r
-FileWrite $0 "endlocal$\r$\n"\r
-FileClose $0\r
-\r
-;========================\r
-; Write monodis\r
-;========================\r
-\r
-FileOpen $0 "$WINDIR\monodis.bat" "w"\r
-\r
-FileWrite $0 "@echo off$\r$\n"\r
-FileWrite $0 "call monobasepath.bat$\r$\n"\r
-FileWrite $0 "set MONOARGS=$\r$\n"\r
-FileWrite $0 ":loop$\r$\n"\r
-FileWrite $0 "if x%1 == x goto :done$\r$\n"\r
-FileWrite $0 "set MONOARGS=%MONOARGS% %1$\r$\n"\r
-FileWrite $0 "shift$\r$\n"\r
-FileWrite $0 "goto loop$\r$\n"\r
-FileWrite $0 ":done$\r$\n"\r
-FileWrite $0 "setlocal$\r$\n"\r
-FileWrite $0 'set path="$INSTDIR\bin\;$INSTDIR\lib\;%path%"$\r$\n'\r
-FileWrite $0 '"$INSTDIR\bin\monodis.exe" %MONOARGS%$\r$\n'\r
-FileWrite $0 "endlocal$\r$\n"\r
-\r
-FileClose $0\r
-\r
-;========================\r
-; Write monoilasm\r
-;========================\r
-\r
-FileOpen $0 "$WINDIR\monoilasm.bat" "w"\r
-\r
-FileWrite $0 "@echo off$\r$\n"\r
-FileWrite $0 "call monobasepath.bat$\r$\n"\r
-FileWrite $0 "set MONOARGS=$\r$\n"\r
-FileWrite $0 ":loop$\r$\n"\r
-FileWrite $0 "if x%1 == x goto :done$\r$\n"\r
-FileWrite $0 "set MONOARGS=%MONOARGS% %1$\r$\n"\r
-FileWrite $0 "shift$\r$\n"\r
-FileWrite $0 "goto loop$\r$\n"\r
-FileWrite $0 ":done$\r$\n"\r
-FileWrite $0 "setlocal$\r$\n"\r
-FileWrite $0 'set path="$INSTDIR\bin\;$INSTDIR\lib\;%path%"$\r$\n'\r
-FileWrite $0 '"$INSTDIR\bin\mono.exe" "$INSTDIR\bin\monoilasm.exe" %MONOARGS%$\r$\n'\r
-FileWrite $0 "endlocal$\r$\n"\r
-\r
-FileClose $0\r
-\r
-\r
-;========================\r
-; Write the sqlsharp file\r
-;========================\r
-\r
-FileOpen $0 "$WINDIR\sqlsharp.bat" "w"\r
-\r
-FileWrite $0 "@echo off$\r$\n"\r
-FileWrite $0 "call monobasepath.bat$\r$\n"\r
-FileWrite $0 "set MONOARGS=$\r$\n"\r
-FileWrite $0 ":loop$\r$\n"\r
-FileWrite $0 "if x%1 == x goto :done$\r$\n"\r
-FileWrite $0 "set MONOARGS=%MONOARGS% %1$\r$\n"\r
-FileWrite $0 "shift$\r$\n"\r
-FileWrite $0 "goto loop$\r$\n"\r
-FileWrite $0 ":done$\r$\n"\r
-FileWrite $0 "setlocal$\r$\n"\r
-FileWrite $0 'set path="$INSTDIR\bin\;$INSTDIR\lib\;%path%"$\r$\n'\r
-FileWrite $0 '"$INSTDIR\bin\mono.exe" "$INSTDIR\bin\sqlsharp.exe" %MONOARGS%$\r$\n'\r
-FileWrite $0 "endlocal$\r$\n"\r
-\r
-FileClose $0\r
-\r
-;========================\r
-; Write the secutil file\r
-;========================\r
-\r
-FileOpen $0 "$WINDIR\secutil.bat" "w"\r
-\r
-FileWrite $0 "@echo off$\r$\n"\r
-FileWrite $0 "call monobasepath.bat$\r$\n"\r
-FileWrite $0 "set MONOARGS=$\r$\n"\r
-FileWrite $0 ":loop$\r$\n"\r
-FileWrite $0 "if x%1 == x goto :done$\r$\n"\r
-FileWrite $0 "set MONOARGS=%MONOARGS% %1$\r$\n"\r
-FileWrite $0 "shift$\r$\n"\r
-FileWrite $0 "goto loop$\r$\n"\r
-FileWrite $0 ":done$\r$\n"\r
-FileWrite $0 "setlocal$\r$\n"\r
-FileWrite $0 'set path="$INSTDIR\bin\;$INSTDIR\lib\;%path%"$\r$\n'\r
-FileWrite $0 '"$INSTDIR\bin\mono.exe" "$INSTDIR\bin\secutil.exe" %MONOARGS%$\r$\n'\r
-FileWrite $0 "endlocal$\r$\n"\r
-\r
-FileClose $0\r
-\r
-;========================\r
-; Write the cert2spc file\r
-;========================\r
-\r
-FileOpen $0 "$WINDIR\cert2spc.bat" "w"\r
-\r
-FileWrite $0 "@echo off$\r$\n"\r
-FileWrite $0 "call monobasepath.bat$\r$\n"\r
-FileWrite $0 "set MONOARGS=$\r$\n"\r
-FileWrite $0 ":loop$\r$\n"\r
-FileWrite $0 "if x%1 == x goto :done$\r$\n"\r
-FileWrite $0 "set MONOARGS=%MONOARGS% %1$\r$\n"\r
-FileWrite $0 "shift$\r$\n"\r
-FileWrite $0 "goto loop$\r$\n"\r
-FileWrite $0 ":done$\r$\n"\r
-FileWrite $0 "setlocal$\r$\n"\r
-FileWrite $0 'set path="$INSTDIR\bin\;$INSTDIR\lib\;%path%"$\r$\n'\r
-FileWrite $0 '"$INSTDIR\bin\mono.exe" "$INSTDIR\bin\cert2spec.exe" %MONOARGS%$\r$\n'\r
-FileWrite $0 "endlocal$\r$\n"\r
-\r
-FileClose $0\r
-\r
-\r
-;========================\r
-; Write the monoresgen file\r
-;========================\r
-\r
-FileOpen $0 "$WINDIR\monoresgen.bat" "w"\r
-\r
-FileWrite $0 "@echo off$\r$\n"\r
-FileWrite $0 "call monobasepath.bat$\r$\n"\r
-FileWrite $0 "set MONOARGS=$\r$\n"\r
-FileWrite $0 ":loop$\r$\n"\r
-FileWrite $0 "if x%1 == x goto :done$\r$\n"\r
-FileWrite $0 "set MONOARGS=%MONOARGS% %1$\r$\n"\r
-FileWrite $0 "shift$\r$\n"\r
-FileWrite $0 "goto loop$\r$\n"\r
-FileWrite $0 ":done$\r$\n"\r
-FileWrite $0 "setlocal$\r$\n"\r
-FileWrite $0 'set path="$INSTDIR\bin\;$INSTDIR\lib\;%path%"$\r$\n'\r
-FileWrite $0 '"$INSTDIR\bin\mono.exe" "$INSTDIR\bin\monoresgen.exe" %MONOARGS%$\r$\n'\r
-FileWrite $0 "endlocal$\r$\n"\r
-\r
-FileClose $0\r
-\r
-;========================\r
-; Write the monosn file\r
-;========================\r
-\r
-FileOpen $0 "$WINDIR\monosn.bat" "w"\r
-\r
-FileWrite $0 "@echo off$\r$\n"\r
-FileWrite $0 "call monobasepath.bat$\r$\n"\r
-FileWrite $0 "set MONOARGS=$\r$\n"\r
-FileWrite $0 ":loop$\r$\n"\r
-FileWrite $0 "if x%1 == x goto :done$\r$\n"\r
-FileWrite $0 "set MONOARGS=%MONOARGS% %1$\r$\n"\r
-FileWrite $0 "shift$\r$\n"\r
-FileWrite $0 "goto loop$\r$\n"\r
-FileWrite $0 ":done$\r$\n"\r
-FileWrite $0 "setlocal$\r$\n"\r
-FileWrite $0 'set path="$INSTDIR\bin\;$INSTDIR\lib\;%path%"$\r$\n'\r
-FileWrite $0 '"$INSTDIR\bin\monosn.exe" %MONOARGS%$\r$\n'\r
-FileWrite $0 "endlocal$\r$\n"\r
-\r
-FileClose $0\r
-\r
-;========================\r
-; Write the cilc file\r
-;========================\r
-\r
-FileOpen $0 "$WINDIR\cilc.bat" "w"\r
-\r
-\r
-FileWrite $0 "@echo off$\r$\n"\r
-FileWrite $0 "call monobasepath.bat$\r$\n"\r
-FileWrite $0 "set MONOARGS=$\r$\n"\r
-FileWrite $0 ":loop$\r$\n"\r
-FileWrite $0 "if x%1 == x goto :done$\r$\n"\r
-FileWrite $0 "set MONOARGS=%MONOARGS% %1$\r$\n"\r
-FileWrite $0 "shift$\r$\n"\r
-FileWrite $0 "goto loop$\r$\n"\r
-FileWrite $0 ":done$\r$\n"\r
-FileWrite $0 "setlocal$\r$\n"\r
-FileWrite $0 'set path="$INSTDIR\bin\;$INSTDIR\lib\;%path%"$\r$\n'\r
-FileWrite $0 '"$INSTDIR\bin\mono.exe" "$INSTDIR\bin\cilc.exe" %MONOARGS%$\r$\n'\r
-FileWrite $0 "endlocal$\r$\n"\r
-\r
-FileClose $0\r
-\r
-NoInstall:\r
-SectionEnd\r
-\r
-; function StrReplace\r
-; by Hendri Adriaens\r
-; HendriAdriaens@hotmail.com\r
-; found in the NSIS Archives\r
-function StrReplace\r
-  Exch $0 ;this will replace wrong characters\r
-  Exch\r
-  Exch $1 ;needs to be replaced\r
-  Exch\r
-  Exch 2\r
-  Exch $2 ;the orginal string\r
-  Push $3 ;counter\r
-  Push $4 ;temp character\r
-  Push $5 ;temp string\r
-  Push $6 ;length of string that need to be replaced\r
-  Push $7 ;length of string that will replace\r
-  Push $R0 ;tempstring\r
-  Push $R1 ;tempstring\r
-  Push $R2 ;tempstring\r
-  StrCpy $3 "-1"\r
-  StrCpy $5 ""\r
-  StrLen $6 $1\r
-  StrLen $7 $0\r
-  Loop:\r
-  IntOp $3 $3 + 1\r
-  StrCpy $4 $2 $6 $3\r
-  StrCmp $4 "" ExitLoop\r
-  StrCmp $4 $1 Replace\r
-  Goto Loop\r
-  Replace:\r
-  StrCpy $R0 $2 $3\r
-  IntOp $R2 $3 + $6\r
-  StrCpy $R1 $2 "" $R2\r
-  StrCpy $2 $R0$0$R1\r
-  IntOp $3 $3 + $7\r
-  Goto Loop\r
-  ExitLoop:\r
-  StrCpy $0 $2\r
-  Pop $R2\r
-  Pop $R1\r
-  Pop $R0\r
-  Pop $7\r
-  Pop $6\r
-  Pop $5\r
-  Pop $4\r
-  Pop $3\r
-  Pop $2\r
-  Pop $1\r
-  Exch $0\r
-FunctionEnd\r
-\r
-Function VersionCheck\r
-  Exch $0 ;second versionnumber\r
-  Exch\r
-  Exch $1 ;first versionnumber\r
-  Push $R0 ;counter for $0\r
-  Push $R1 ;counter for $1\r
-  Push $3 ;temp char\r
-  Push $4 ;temp string for $0\r
-  Push $5 ;temp string for $1\r
-  StrCpy $R0 "-1"\r
-  StrCpy $R1 "-1"\r
-  Start:\r
-  StrCpy $4 ""\r
-  DotLoop0:\r
-  IntOp $R0 $R0 + 1\r
-  StrCpy $3 $0 1 $R0\r
-  StrCmp $3 "" DotFound0\r
-  StrCmp $3 "." DotFound0\r
-  StrCpy $4 $4$3\r
-  Goto DotLoop0\r
-  DotFound0:\r
-  StrCpy $5 ""\r
-  DotLoop1:\r
-  IntOp $R1 $R1 + 1\r
-  StrCpy $3 $1 1 $R1\r
-  StrCmp $3 "" DotFound1\r
-  StrCmp $3 "." DotFound1\r
-  StrCpy $5 $5$3\r
-  Goto DotLoop1\r
-  DotFound1:\r
-  Strcmp $4 "" 0 Not4\r
-    StrCmp $5 "" Equal\r
-    Goto Ver2Less\r
-  Not4:\r
-  StrCmp $5 "" Ver2More\r
-  IntCmp $4 $5 Start Ver2Less Ver2More\r
-  Equal:\r
-  StrCpy $0 "0"\r
-  Goto Finish\r
-  Ver2Less:\r
-  StrCpy $0 "1"\r
-  Goto Finish\r
-  Ver2More:\r
-  StrCpy $0 "2"\r
-  Finish:\r
-  Pop $5\r
-  Pop $4\r
-  Pop $3\r
-  Pop $R1\r
-  Pop $R0\r
-  Pop $1\r
-  Exch $0\r
-FunctionEnd
\ No newline at end of file
diff --git a/mcs/tools/scan-tests.pl b/mcs/tools/scan-tests.pl
deleted file mode 100755 (executable)
index 5cb0f86..0000000
+++ /dev/null
@@ -1,163 +0,0 @@
-#!/usr/bin/perl -w
-
-use strict;
-use Carp;
-
-my @allfiles;
-
-my @badsuites = qw[System\.Collections/HashtableTest System\.Collections/StackTest System\.Collections\.Specialized\.BasicOperationsTest];
-my @badtests = qw[PathTest:TestGetTempFileName XmlTextReaderTests:TestIsNameChar XmlTextReaderTests:TestIsFirstNameChar ByteTest:TestParse];
-my @mapfiles = ('s,^MonoTests\.(.*)/,$1/,',
-               's,^Ximian\.Mono\.Tests(.*)/,,',
-               's,^System\.Net/,,',
-               's,^Collections\.Specialized\.,,',
-               's,^Text\.RegularExpressions\.,,'
-               );
-my @maptests = ();
-my @mapnamespace = ();
-
-die "Usage: $0 input output" unless $#ARGV == 1;
-
-my $namespace = 'MonoTests';
-
-sub parse_test {
-    my ($filename, $namespace, $testname, $suite) = @_;
-
-    foreach (@badsuites) {
-       return if $filename =~ /$_/;
-    }
-
-    my $map;
-    foreach $map (@mapfiles) {
-       eval "\$filename =~ $map";
-    }
-
-    foreach (@allfiles) {
-       return if $filename eq $_->[0];
-    }
-
-    # print STDERR "PARSE: |$filename|\n";
-
-    push @allfiles, [$filename,$namespace,$testname,$suite,[]];
-
-    my $INPUT;
-    open $INPUT, $filename or croak "open ($filename): $!";
-    while (defined ($_ = <$INPUT>)) {
-       if (/^\s*namespace\s*([\w\.]+?)\s*$/) {
-           $namespace = $1;
-           next;
-       }
-       if (/^\s*suite\.AddTest\s*\((.*)\.(.*?)\.Suite\)/) {
-           my $filename = (defined $namespace) ? qq[$namespace.$1/$2.cs] : qq[$1/$2.cs];
-           my $nsprefix = (defined $namespace) ? qq[$namespace.$1] : qq[MonoTests.$1];
-           parse_test ($filename, $nsprefix, $1, $2);
-           next;
-       }
-       if (/^\s*suite\.AddTest\s*\((.*?)\.Suite\)/) {
-           my $filename = (defined $namespace) ? qq[$namespace/$1.cs] : qq[$1.cs];
-           parse_test ($filename, $namespace, '', $1);
-           next;
-       }
-       if (/^\s*suite\.AddTest\s*\(\s*new\s+TestSuite\s*\(\s*typeof\(\s*(.*)\s*\)\s*\)\s*\);/) {
-           my $filename = (defined $namespace) ? qq[$namespace/$1.cs] : qq[$1.cs];
-           parse_test ($filename, $namespace, '', $1);
-           next;
-       }
-    }
-    close $INPUT;
-}
-
-parse_test ($ARGV[0], undef, '', '');
-
-my $file;
-foreach $file (@allfiles) {
-    my ($filename,$namespace,$testname,$suite) = @$file;
-
-    open SUITE, $filename or croak "open ($filename): $!";
-    while (defined ($_ = <SUITE>)) {
-       next unless /^\s*public\s+void\s+(Test.*?)\s*\(\s*\)/;
-       push @{$file->[4]}, $1;
-    }
-    close SUITE;
-}
-
-open OUTPUT, "> $ARGV[1]" or croak "open (> $ARGV[1]): $!";
-select OUTPUT;
-
-print qq[using NUnit.Framework;\n];
-print qq[using System;\n];
-print qq[using System.Threading;\n];
-print qq[using System.Globalization;\n\n];
-
-
-my $alltest;
-foreach $alltest (@allfiles) {
-
-    my ($filename,$namespace,$testname,$suite,$tests) = @$alltest;
-    my @tests = @$tests;
-
-    next unless defined $namespace;
-    next unless $#tests >= 0;
-
-    # print STDERR "DOING TEST: |$testname|$filename|\n";
-
-    $namespace .= ".$testname" unless $testname eq '';
-
-    print qq[namespace $namespace\n\{\n];
-    print qq[\tpublic class Run$suite : $suite\n\t\{\n];
-    print qq[\t\tprotected override void RunTest ()\n\t\t\{\n];
-#    print qq[\t\t\tbool errorThrown = false;\n\n];
-    my $test;
-  testloop:
-    foreach $test (@tests) {
-       my $badtest;
-       $filename =~ s/\.cs$//;
-       my $fullname = qq[$filename:$test];
-       # print STDERR "TEST: |$fullname|\n";
-       foreach $badtest (@badtests) {
-           next testloop if $fullname =~ /$badtest/;
-       }
-#      print qq[\t\t\ttry \{\n\t\t\t\t$test ();\n\t\t\t\} catch \{\n];
-#      print qq[\t\t\t\tConsole.WriteLine ("$namespace:$suite:$test failed");\n];
-#      print qq[\t\t\t\terrorThrown = true;\n];
-#      print qq[\t\t\t\}\n];
-       print qq[\t\t\t$test ();\n];
-#      print qq[\t\t\tConsole.WriteLine ("$namespace:$suite:$test DONE");\n];
-    }
-    print qq[\n];
-#    print qq[\t\t\tif (errorThrown)\n\t\t\t\tthrow new ArgumentException ();\n];
-    print qq[\t\t\}\n\t\}\n];
-    print qq[\}\n\n];
-}
-
-print qq[namespace $namespace\n\{\n];
-print qq[\tpublic class RunAllTests\n\t\{\n];
-print qq[\t\tpublic static void AddAllTests (TestSuite suite)\n];
-print qq[\t\t\{\n];
-
-foreach $alltest (@allfiles) {
-    my ($filename,$namespace,$testname,$suite,$tests) = @$alltest;
-    my @tests = @$tests;
-
-    next unless defined $namespace;
-    next unless $#tests >= 0;
-
-    $namespace .= ".$testname" unless $testname eq '';
-
-    print qq[\t\t\tsuite.AddTest (new $namespace.Run$suite ());\n];
-}
-
-print qq[\t\t\}\n\t\}\n\}\n\n];
-
-print qq[class MainApp\n\{\n];
-print qq[\tpublic static void Main()\n\t\{\n];
-print qq[\t\tThread.CurrentThread.CurrentCulture = new CultureInfo ("en-US");\n\n];
-print qq[\t\tTestResult result = new TestResult ();\n];
-print qq[\t\tTestSuite suite = new TestSuite ();\n];
-print qq[\t\t$namespace.RunAllTests.AddAllTests (suite);\n];
-print qq[\t\tsuite.Run (result);\n];
-print qq[\t\tMonoTests.MyTestRunner.Print (result);\n];
-print qq[\t\}\n\}\n\n];
-
-close OUTPUT;
-
diff --git a/mcs/tools/security/security.proj b/mcs/tools/security/security.proj
deleted file mode 100644 (file)
index 33d6c52..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>\r
-<Project ToolsVersion="3.5" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
-  <PropertyGroup>\r
-    <OutputType>Exe</OutputType>\r
-    <AssemblyName>sn</AssemblyName>\r
-    <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>\r
-    <ResponseFile>sn.exe.sources</ResponseFile>\r
-    <CodePage>65001</CodePage>\r
-    <OutputPath>..\..\class\lib\basic\</OutputPath>\r
-    <UseVSHostingProcess>false</UseVSHostingProcess>\r
-  </PropertyGroup>\r
-  <Import Project="$(MSBuildProjectDirectory)\..\..\build\msbuild\Mono.Common.targets"/>\r
-  <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />\r
-  <Target Name="Build" >\r
-     <Csc \r
-       CodePage="65001" \r
-       DefineConstants="BOOTSTRAP_BASIC,NET_1_1,NET_2_0"\r
-       OutputAssembly="..\..\class\lib\basic\sn.exe"\r
-       Sources="sn.cs;StrongNameManager.cs;AssemblyInfo.cs;..\..\build\common\Consts.cs"\r
-       References="..\..\class\lib\basic\Mono.Security.dll"\r
-        />\r
-  </Target>\r
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'basic|AnyCPU' ">\r
-    <Csc/>\r
-    <DefineConstants>BOOTSTRAP_BASIC,NET_1_1,NET_2_0</DefineConstants>\r
-  </PropertyGroup>\r
-\r
-</Project>
\ No newline at end of file
diff --git a/mcs/tools/tinderbox/smtp.c b/mcs/tools/tinderbox/smtp.c
deleted file mode 100644 (file)
index a4f0b03..0000000
+++ /dev/null
@@ -1,369 +0,0 @@
-// simple tool for sending smtp messages
-//
-//
-#include <stdio.h>
-#include <sys/socket.h>
-#include <arpa/inet.h>
-#include <string.h>
-#include <netdb.h>
-
-#include <unistd.h>
-#include <stdlib.h>
-#define _GNU_SOURCE
-#include <getopt.h>
-#include <ctype.h>
-#include <time.h>
-
-typedef int bool;
-enum { false = 0, true = 1};
-
-struct option rgOptions [] =
-{
-       {"cc",      required_argument,  NULL, 'c'},
-       {"help",    required_argument,  NULL, '?'},
-       {"to",      required_argument,  NULL, 't'},
-       {"from",    required_argument,  NULL, 'f'},
-       {"message", required_argument,  NULL, 'm'},
-       {"subject", required_argument,  NULL, 's'},
-       {"host",    required_argument,  NULL, 'h'},
-       {"attach",  required_argument,  NULL, 'a'},
-};
-
-typedef struct MailFields
-{
-       const char *szTo;
-       const char *szFrom;
-       const char *szHost;
-       const char *szSubject;
-       bool fAttachments;
-       bool fCC;
-       int cArgs;
-       char **rgszArgs;
-       FILE *pfMsg;
-} MailFields;
-
-const char *szOptions = "t:f:s:h:c:a:m:?";
-
-void help ()
-{
-       printf (
-               "Usage: smtp [OPTIONS]\n\n"
-               "Mandatory arguments:\n"
-               "\t-t, --to ADDRESS\tspecify destination email address\n"
-               "\t-f, --from ADDRESS\tspecify sender's email address\n"
-               "Optional arguments:\n"
-               "\t-s, --subject SUBJECT\tspecify subject of message\n"
-               "\t-m, --message FILENAME\tread text of message from FILENAME\n"
-               "\t-a, --attach FILENAME\tadd FILENAME to message as attachment\n"
-               "\t-c, --cc ADDRESS\tadd ADDRESS to CC list\n"
-               "\t-h, --host HOSTNAME\tconnect to smpt server HOSTNAME (default: localhost)\n"
-       );
-}
-
-int GetResponse (FILE *ps)
-{
-       char szLine [1024];
-       char *psz;
-       int hr;
-
-       fflush (ps);
-
-       do
-       {
-               fgets (szLine, sizeof (szLine), ps);
-
-               for (psz = szLine; isdigit (*psz); psz++)
-                       ;
-       }
-       while (*psz != '\0' && *psz != ' ');
-
-       hr = atol (szLine);
-       return hr;
-}
-
-FILE *TcpOpen (const char *szHost, int nPort)
-{
-       int s;
-       struct sockaddr_in sa;
-       struct hostent *he;
-       struct protoent *pe;
-       FILE *ps;
-
-       pe = getprotobyname ("TCP");
-       s = socket (PF_INET, SOCK_STREAM, pe->p_proto);
-       endprotoent ();
-
-       bzero ((char *)&sa,sizeof (sa));
-       sa.sin_family = AF_INET;
-       sa.sin_addr.s_addr = inet_addr (szHost);
-       sa.sin_port = htons (25);
-
-       if ((he = gethostbyname (szHost)) != NULL)
-               bcopy (he->h_addr, (char *)&sa.sin_addr, he->h_length);
-       else if ((sa.sin_addr.s_addr = inet_addr (szHost)) < 0)
-               perror ("gethostbyname ()");
-
-       if (connect (s, (struct sockaddr *) &sa, 16) == -1)
-               perror ("connect ()");
-       else if ((ps = fdopen (s, "r+")) == NULL)
-               perror ("fdopen ()");
-       else
-               return ps;
-
-       close (s);
-       return NULL;
-}
-
-
-void SendMail (const char *szTo, const MailFields *pmf)
-{
-       char rgchBoundary [20];
-       FILE *ps;
-       int hr;
-
-       ps = TcpOpen (pmf->szHost, 25);
-
-       hr = GetResponse (ps);
-
-       fprintf (ps, "HELO\r\n");
-       hr = GetResponse (ps);
-
-       fprintf (ps, "MAIL FROM: %s\r\n", pmf->szFrom);
-       hr = GetResponse (ps);
-
-       fprintf (ps, "RCPT TO: %s\r\n", szTo);
-       hr = GetResponse (ps);
-
-       fprintf (ps, "DATA %s\r\n", pmf->szSubject);
-       hr = GetResponse (ps);
-
-       fprintf (ps, "From: %s\r\nTo: %s\r\nSubject: %s\r\n", pmf->szFrom, pmf->szTo, pmf->szSubject);
-
-       if (pmf->fCC)
-       {
-               bool fFirst = true;
-               int nOpt, iOpt;
-               fprintf (ps, "CC:");
-               optind = 0;
-               while ((nOpt = getopt_long (pmf->cArgs, pmf->rgszArgs, szOptions, rgOptions, &iOpt)) != -1)
-               {
-                       if (nOpt == 'c')
-                       {
-                               if (!fFirst)
-                                       fprintf (ps, ";");
-                               fprintf (ps, " %s", optarg);
-                               fFirst = false;
-                       }
-               }
-               fprintf (ps, "\r\n");
-       }
-
-       if (pmf->fAttachments)
-       {
-               int ich;
-               srand ((int) time (NULL));
-               for (ich = 0; ich < sizeof (rgchBoundary) - 1; ich ++)
-                       rgchBoundary [ich] = rand () % ('Z'-'A') + 'A';
-               rgchBoundary [ich] = '\0';
-
-               fprintf (ps, 
-                       "MIME-Version: 1.0\r\n"
-                       "Content-Type: multipart/mixed; boundary=\"multipart-%s\"\r\n\r\n", rgchBoundary);
-
-               fprintf (ps, "--multipart-%s\r\n\r\n", rgchBoundary);
-       }
-
-       if (pmf->pfMsg != NULL)
-       {
-               rewind (pmf->pfMsg);
-               while (!feof (pmf->pfMsg))
-               {
-                       char strLine [1024];
-                       int cch;
-
-                       fgets (strLine, sizeof (strLine), pmf->pfMsg);
-                       cch = strlen (strLine);
-                       while (strLine [cch - 1] == '\r' || strLine [cch - 1] == '\n')
-                               cch --;
-                       strLine [cch] = '\0';
-
-                       if (cch == 1 && strLine [0] == '.')
-                               fputc ('.', ps);
-
-                       fprintf (ps, "%s\r\n", strLine);
-                       fflush (ps);
-               }
-       }
-
-       if (pmf->fAttachments)
-       {
-               int nOpt, iOpt;
-               optind = 0;
-               while ((nOpt = getopt_long (pmf->cArgs, pmf->rgszArgs, szOptions, rgOptions, &iOpt)) != -1)
-               {
-                       if (nOpt == 'a')
-                       {
-                               const char rgchBase64 [] = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
-                               FILE *pf = fopen (optarg, "r");
-                               int cch = 0;
-
-                               const char *szBasename = (char *) strrchr ((const char *) optarg, '/');
-                               if (szBasename == NULL || szBasename [1] == '\0')
-                                       szBasename = optarg;
-                               else
-                                       szBasename ++;
-
-                               fprintf (ps, "--multipart-%s\r\nContent-Type: text/plain; name=\"%s\"\r\nContent-Disposition: attachment; name=\"%s\"\r\nContent-Transfer-Encoding: base64\r\n\r\n", rgchBoundary, szBasename, szBasename);
-
-                               while (true)
-                               {
-                                       int ch1, ch2, ch3;
-                                       if ((ch1 = fgetc (pf)) == -1)
-                                               break;
-
-                                       fputc (rgchBase64 [ch1 >> 2], ps);
-
-                                       if ((ch2 = fgetc (pf)) == -1)
-                                       {
-                                               fputc (rgchBase64 [(ch1 << 4) & 0x30], ps);
-                                               fputc ('=', ps);
-                                               fputc ('=', ps);
-                                               break;
-                                       }
-
-                                       fputc (rgchBase64 [(ch2 >> 4) | ((ch1 << 4) & 0x30)], ps);
-
-                                       if ((ch3 = fgetc (pf)) == -1)
-                                       {
-                                               fputc (rgchBase64 [(ch2 << 2) & 0x3c], ps);
-                                               fputc ('=', ps);
-                                               break;
-                                       }
-
-                                       fputc (rgchBase64 [((ch2 << 2) & 0x3c) | (ch3 >> 6)], ps);
-                                       fputc (rgchBase64 [ch3 & 0x3f], ps);
-                                       
-                                       cch += 4;
-                                       if (cch >= 76)
-                                               fprintf (ps, "\r\n");
-                               }
-                               fclose (pf);
-                               fprintf (ps, "\r\n\r\n");
-                       }
-               }
-       }
-
-       fprintf (ps, "\r\n.\r\nQUIT\r\n");
-       hr = GetResponse (ps);
-
-       fclose (ps);
-}
-
-int main (int cArgs, char *rgszArgs [])
-{
-       int nOpt, iOpt = 0;
-       MailFields mf;
-       bzero ((char *) &mf, sizeof (mf));
-       mf.cArgs = cArgs;
-       mf.rgszArgs = rgszArgs;
-
-       while ((nOpt = getopt_long (cArgs, rgszArgs, szOptions, rgOptions, &iOpt)) != -1)
-       {
-               switch (nOpt)
-               {
-                       case 't':
-                               if (mf.szTo != NULL)
-                                       goto _default;
-                               mf.szTo = optarg;
-                               break;
-                       case 'f':
-                               if (mf.szFrom != NULL)
-                                       goto _default;
-                               mf.szFrom = optarg;
-                               break;
-                       case 's':
-                               if (mf.szSubject != NULL)
-                                       goto _default;
-                               mf.szSubject = optarg;
-                               break;
-                       case 'h':
-                               if (mf.szHost != NULL)
-                                       goto _default;
-                               mf.szHost = optarg;
-                               break;
-                       case 'c':
-                               mf.fCC = true;
-                               break;
-                       case 'a':
-                               {
-                                       FILE *pfTmp = fopen (optarg, "r");
-                                       mf.fAttachments = true;
-                                       if (pfTmp == NULL)
-                                       {
-                                               fprintf (stderr, "File not found: %s\n", optarg);
-                                               exit (1);
-                                       }
-                                       fclose (pfTmp);
-                               }
-                               break;
-                       case 'm':
-                               if (mf.pfMsg != NULL)
-                                       goto _default;
-
-                               mf.pfMsg = fopen (optarg, "r");
-                               if (mf.pfMsg == NULL)
-                               {
-                                       fprintf (stderr, "File not found: %s\n", optarg);
-                                       exit (1);
-                               }
-                               break;
-                       case '?':
-                       default: _default:
-                               printf ("%c: %i\n", nOpt, iOpt);
-                               help ();
-                               return 1;
-               }
-       }
-       
-       if (mf.szHost == NULL)
-               mf.szHost = "localhost";
-
-       if (mf.szSubject == NULL)
-               mf.szSubject = "";
-
-       if (mf.szTo == NULL)
-       {
-               perror ("must specify 'to' field");
-               help ();
-               return 1;
-       }
-
-       if (mf.szFrom == NULL)
-       {
-               perror ("must specify 'from' field");
-               help ();
-               return 1;
-       }
-
-       SendMail (mf.szTo, &mf);
-
-       if (mf.fCC)
-       {
-               optind = 0;
-               while ((nOpt = getopt_long (cArgs, rgszArgs, szOptions, rgOptions, &iOpt)) != -1)
-               {
-                       if (nOpt == 'c')
-                       {
-                               int optindTmp = optind;
-                               SendMail (optarg, &mf);
-                               optind = optindTmp;
-                       }
-               }
-       }
-
-       if (mf.pfMsg != NULL)
-               fclose (mf.pfMsg);
-
-       return 0;
-}
-
diff --git a/mcs/tools/tinderbox/tinderbox.sh b/mcs/tools/tinderbox/tinderbox.sh
deleted file mode 100755 (executable)
index 3b99163..0000000
+++ /dev/null
@@ -1,286 +0,0 @@
-#!/bin/bash
-
-# TOPDIR: set this to the directory containing
-# your 'mono' and 'mcs' directories. Do NOT use '~' here.
-TOPDIR=$HOME/mono
-
-# BACKUP: initially this directory should contain a working install of mono.
-# this directory should minimally contain the 'bin' and 'lib' dirs.
-# after each successful build, the results are placed in here.
-BACKUP=$TOPDIR/install.bak
-
-# INSTALL: this is used as the install directory for
-# the various stages of the build.
-INSTALL=$TOPDIR/install
-
-# SENDMAIL: uncomment this line if you want to send notifications.
-# be careful to check the recipients below before running this script!
-SENDMAIL=$TOPDIR/mcs/tools/tinderbox/smtp
-
-# EMAIL_*: notification addresses. please change these before running!
-EMAIL_FATAL="piersh@friskit.com"
-EMAIL_MESSAGE="mono-patches@lists.ximian.com"
-#EMAIL_MESSAGE="piersh@friskit.com"
-#EMAIL_MESSAGE="mono-hackers-list@ximian.com"
-EMAIL_FROM="piersh@friskit.com"
-EMAIL_CC="-c mono-hackers-list@lists.ximian.com"
-EMAIL_HOST="zeus.sfhq.friskit.com"
-
-LOGBASE=$TOPDIR/.build.log
-LOG=$LOGBASE.txt
-LOGPREV=$LOGBASE.prev
-LOGFATAL=$LOGBASE.fatal
-LOGDATE=$TOPDIR/.build.date
-LOGLOG=$TOPDIR/.build.log.log
-BUILDMSG=$TOPDIR/.build.msg
-export LOGDATE
-
-DELAY_SUCCESS=5m                       # wait after a successful build
-DELAY_CHECK_BROKEN=5m          # wait while verifying the build is broken
-DELAY_STILL_BROKEN=3m          # wait while waiting for fix
-DELAY_BROKEN=5m                                # wait after notification sent
-
-FILTER_LOG="sed -e 's/^in <0x[0-9a-z]*>//' -e 's/:[0-9]*): WARNING \*\*:/): WARNING **/' -e 's/^\[[0-9][0-9]*:[0-9][0-9]*\] - .*//' -e 's/^[0-9][0-9]* - Member cache//' -e 's/^[0-9][0-9]* - Misc counter//' -e 's/: [0-9]* Trace\/breakpoint/ : Trace\/breakpoint/' -e 's/Needed to allocate blacklisted block at 0x[0-9a-f]*//'"
-
-function fatal ()
-{
-       $SENDMAIL -h $EMAIL_HOST -f $EMAIL_FROM -t $EMAIL_FATAL -a $LOGFATAL -s "[MONOBUILD] FATAL ERROR (`uname -s -m`)"
-       echo FATAL: `date` >> $LOGLOG
-       echo FATAL ERROR
-       exit 1
-}
-
-function build_mono ()
-{
-       # try to build
-
-       echo building...
-
-       cd $TOPDIR
-
-       rm -f $LOGFATAL
-       touch $LOGFATAL
-
-       [ -f $LOG ] && mv $LOG $LOGPREV
-       touch $LOG
-
-       # restore tools from backup
-       rm -fr $INSTALL
-       cp -a $BACKUP $INSTALL
-
-       # update from CVS
-       cvs -z3 update -APd mcs mono 2>&1 | tee -a $LOG
-       [ $PIPESTATUS == "0" ] || return 1
-
-       # clean mcs
-       cd $TOPDIR/mcs
-       make -f makefile.gnu clean 2>&1 | tee -a $LOG
-       [ $PIPESTATUS == "0" ] || return 1
-
-       # build JAY
-       cd $TOPDIR/mcs/jay
-       make -f makefile.gnu 2>&1 | tee -a $LOG
-       [ $PIPESTATUS == "0" ] || return 1
-
-       # build MCS compiler
-       cd $TOPDIR/mcs/mcs
-       make -f makefile.gnu 2>&1 | tee -a $LOG
-       [ $PIPESTATUS == "0" ] || return 1
-
-       # build CORLIB with old tools
-       cd $TOPDIR/mcs/class/corlib
-       make -f makefile.gnu 2>&1 | tee -a $LOG
-       [ $PIPESTATUS == "0" ] || return 1
-
-       # copy new MCS and CORLIB to build tools
-       cp -f $TOPDIR/mcs/class/lib/corlib.dll $INSTALL/lib/
-       cp -f $TOPDIR/mcs/mcs/mcs.exe $INSTALL/bin/
-
-
-
-       cd $TOPDIR/mono
-
-       # configure mono build
-       rm -f config.cache
-       ./autogen.sh --prefix=$INSTALL 2>&1 | tee -a $LOG
-       [ $PIPESTATUS == "0" ] || return 1
-
-       # clean mono
-       make clean 2>&1 | tee -a $LOG
-       [ $PIPESTATUS == "0" ] || return 1
-
-       # build mono
-       make 2>&1 | tee -a $LOG
-       [ $PIPESTATUS == "0" ] || return 1
-
-       # install runtime
-       cd $TOPDIR/mono/mono
-       make install 2>&1 | tee -a $LOG
-       [ $PIPESTATUS == "0" ] || return 1
-
-
-
-       # clean/make runtime libraries/tools
-       cd $TOPDIR/mcs
-       make -f makefile.gnu clean 2>&1 | tee -a $LOG
-       [ $PIPESTATUS == "0" ] || return 1
-
-       make -f makefile.gnu 2>&1 | tee -a $LOG
-       [ $PIPESTATUS == "0" ] || return 1
-
-
-
-       # retrieve runtime libraries
-       cd $TOPDIR/mono/runtime
-       rm -f *.dll *.exe
-
-       # install everything
-       cd $TOPDIR/mono
-       make install 2>&1 | tee -a $LOG
-       [ $PIPESTATUS == "0" ] || return 1
-
-
-       # test mcs self-build
-       cd $TOPDIR/mcs/mcs
-       make -f makefile.gnu clean 2>&1 | tee -a $LOG
-       [ $PIPESTATUS == "0" ] || return 1
-       make -f makefile.gnu 2>&1 | tee -a $LOG
-       [ $PIPESTATUS == "0" ] || return 1
-
-
-       # test corlib self-build
-       cd $TOPDIR/mcs/class/corlib
-       make -f makefile.gnu clean 2>&1 | tee -a $LOG
-       [ $PIPESTATUS == "0" ] || return 1
-       make -f makefile.gnu 2>&1 | tee -a $LOG
-       [ $PIPESTATUS == "0" ] || return 1
-
-
-       # it worked, backup build tools
-       rm -fr $BACKUP
-       cp -a $INSTALL $BACKUP
-
-       return 0
-}
-
-function compare_logs ()
-{
-       touch $LOG $LOGPREV
-       echo Comparing build logs
-       eval $FILTER_LOG $LOG > $LOG.tmp
-       eval $FILTER_LOG $LOGPREV > $LOGPREV.tmp
-       diff -b --brief $LOG.tmp $LOGPREV.tmp
-}
-
-function build_fixed ()
-{
-       echo "Build fixed:       `date`" > $BUILDMSG
-       echo "Previous breakage: `cat .build.date.last_fail`" >> $BUILDMSG
-       echo "Previous build:    `cat .build.date.last_success`" >> $BUILDMSG
-       echo >> $BUILDMSG
-
-       $SENDMAIL -h $EMAIL_HOST -f $EMAIL_FROM -t $EMAIL_MESSAGE $EMAIL_CC -s "[MONOBUILD] fixed (`uname -s -m`)" -m $BUILDMSG
-       rm -f $BUILDMSG
-}
-
-function build_failed ()
-{
-       echo "Build broken:   `date`" > $BUILDMSG
-       echo "Broken since:   `cat .build.date.last_fail`" >> $BUILDMSG
-       echo "Previous build: `cat .build.date.last_success`" >> $BUILDMSG
-       echo >> $BUILDMSG
-
-       sed -e 's/$/\r/' < $LOG > errors.txt
-       tail -25 errors.txt >> $BUILDMSG
-       rm -f errors.txt.gz
-       gzip errors.txt
-
-       $SENDMAIL -h $EMAIL_HOST -f $EMAIL_FROM -t $EMAIL_MESSAGE $EMAIL_CC -a errors.txt.gz -s "[MONOBUILD] broken (`uname -s -m`)" -m $BUILDMSG
-       rm -f $BUILDMSG errors.txt.gz
-}
-
-function stabilize ()
-{
-       cd $TOPDIR
-       while ! compare_logs ; do
-
-               date > $LOGDATE.last_fail
-               echo "|||||||||||||||||||||||||"
-               echo "|||||| LOGS DIFFER ||||||"
-               echo "|||||||||||||||||||||||||"
-               echo CHECK: `date` >> $LOGLOG
-
-               echo sleeping for $DELAY_CHECK_BROKEN
-               sleep $DELAY_CHECK_BROKEN
-
-               if build_mono ; then
-                       return 0
-               fi
-
-               cd $TOPDIR
-
-       done
-       return 1
-}
-
-[ -f $LOGPREV ] && mv $LOGPREV $LOG
-
-while [ 1 ] ; do
-
-       cd $TOPDIR
-       
-       if build_mono ; then
-
-               cd $TOPDIR
-
-               echo "|||||||||||||||||||||||||"
-               echo "|||| BUILD SUCCEEDED ||||"
-               echo "|||||||||||||||||||||||||"
-               echo SUCCESS: `date` >> $LOGLOG
-               date > $LOGDATE.last_success
-               echo sleeping for $DELAY_SUCCESS
-               sleep $DELAY_SUCCESS
-
-       else
-
-               if ! stabilize ; then
-
-                       build_failed
-
-                       echo "||||||||||||||||||||||"
-                       echo "|||| BUILD BROKEN ||||"
-                       echo "||||||||||||||||||||||"
-                       echo BROKEN: `date` >> $LOGLOG
-                       date > $LOGDATE.last_fail
-                       echo sleeping for $DELAY_BROKEN
-                       sleep $DELAY_BROKEN
-
-                       until build_mono ; do
-
-                               cd $TOPDIR
-                               echo "||||||||||||||||||||||||||||"
-                               echo "|||| BUILD STILL BROKEN ||||"
-                               echo "||||||||||||||||||||||||||||"
-                               echo STILL BROKEN: `date` >> $LOGLOG
-                               date > $LOGDATE.last_fail
-                               echo sleeping for $DELAY_STILL_BROKEN
-                               sleep $DELAY_STILL_BROKEN
-
-                       done
-
-                       cd $TOPDIR
-                       build_fixed
-                       echo "|||||||||||||||||||||"
-                       echo "|||| BUILD FIXED ||||"
-                       echo "|||||||||||||||||||||"
-                       echo FIXED: `date` >> $LOGLOG
-                       date > $LOGDATE.last_success
-                       echo sleeping for $DELAY_SUCCESS
-                       sleep $DELAY_SUCCESS
-
-               fi
-
-       fi
-
-done
-
diff --git a/mcs/winexe.in b/mcs/winexe.in
deleted file mode 100755 (executable)
index 19a4782..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-#!/bin/sh
-@bindir@/bin/mono.exe @bindir@/bin/@thewindowexe@ "$@"