19990502 sourceware import
This commit is contained in:
		
							
								
								
									
										340
									
								
								COPYING
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										340
									
								
								COPYING
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,340 @@ | ||||
| 		    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. | ||||
|  | ||||
| 		    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.) | ||||
|  | ||||
| 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. | ||||
|  | ||||
|   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. | ||||
|  | ||||
|   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 | ||||
|  | ||||
| 	    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) 19yy  <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) 19yy 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. | ||||
							
								
								
									
										482
									
								
								COPYING.LIB
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										482
									
								
								COPYING.LIB
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,482 @@ | ||||
| 		  GNU LIBRARY GENERAL PUBLIC LICENSE | ||||
| 		       Version 2, June 1991 | ||||
|  | ||||
|  Copyright (C) 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. | ||||
|  | ||||
| [This is the first released version of the library GPL.  It is | ||||
|  numbered 2 because it goes with version 2 of the ordinary GPL.] | ||||
|  | ||||
| 			    Preamble | ||||
|  | ||||
|   The licenses for most software are designed to take away your | ||||
| freedom to share and change it.  By contrast, the GNU General Public | ||||
| Licenses are intended to guarantee your freedom to share and change | ||||
| free software--to make sure the software is free for all its users. | ||||
|  | ||||
|   This license, the Library General Public License, applies to some | ||||
| specially designated Free Software Foundation software, and to any | ||||
| other libraries whose authors decide to use it.  You can use it for | ||||
| your libraries, 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 library, or if you modify it. | ||||
|  | ||||
|   For example, if you distribute copies of the library, whether gratis | ||||
| or for a fee, you must give the recipients all the rights that we gave | ||||
| you.  You must make sure that they, too, receive or can get the source | ||||
| code.  If you link a program with the library, you must provide | ||||
| complete object files to the recipients so that they can relink them | ||||
| with the library, after making changes to the library and recompiling | ||||
| it.  And you must show them these terms so they know their rights. | ||||
|  | ||||
|   Our method of protecting your rights has two steps: (1) copyright | ||||
| the library, and (2) offer you this license which gives you legal | ||||
| permission to copy, distribute and/or modify the library. | ||||
|  | ||||
|   Also, for each distributor's protection, we want to make certain | ||||
| that everyone understands that there is no warranty for this free | ||||
| library.  If the library is modified by someone else and passed on, we | ||||
| want its recipients to know that what they have is not the original | ||||
| version, 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 companies distributing free | ||||
| software will individually obtain patent licenses, thus in effect | ||||
| transforming the program into proprietary software.  To prevent this, | ||||
| we have made it clear that any patent must be licensed for everyone's | ||||
| free use or not licensed at all. | ||||
|  | ||||
|   Most GNU software, including some libraries, is covered by the ordinary | ||||
| GNU General Public License, which was designed for utility programs.  This | ||||
| license, the GNU Library General Public License, applies to certain | ||||
| designated libraries.  This license is quite different from the ordinary | ||||
| one; be sure to read it in full, and don't assume that anything in it is | ||||
| the same as in the ordinary license. | ||||
|  | ||||
|   The reason we have a separate public license for some libraries is that | ||||
| they blur the distinction we usually make between modifying or adding to a | ||||
| program and simply using it.  Linking a program with a library, without | ||||
| changing the library, is in some sense simply using the library, and is | ||||
| analogous to running a utility program or application program.  However, in | ||||
| a textual and legal sense, the linked executable is a combined work, a | ||||
| derivative of the original library, and the ordinary General Public License | ||||
| treats it as such. | ||||
|  | ||||
|   Because of this blurred distinction, using the ordinary General | ||||
| Public License for libraries did not effectively promote software | ||||
| sharing, because most developers did not use the libraries.  We | ||||
| concluded that weaker conditions might promote sharing better. | ||||
|  | ||||
|   However, unrestricted linking of non-free programs would deprive the | ||||
| users of those programs of all benefit from the free status of the | ||||
| libraries themselves.  This Library General Public License is intended to | ||||
| permit developers of non-free programs to use free libraries, while | ||||
| preserving your freedom as a user of such programs to change the free | ||||
| libraries that are incorporated in them.  (We have not seen how to achieve | ||||
| this as regards changes in header files, but we have achieved it as regards | ||||
| changes in the actual functions of the Library.)  The hope is that this | ||||
| will lead to faster development of free libraries. | ||||
|  | ||||
|   The precise terms and conditions for copying, distribution and | ||||
| modification follow.  Pay close attention to the difference between a | ||||
| "work based on the library" and a "work that uses the library".  The | ||||
| former contains code derived from the library, while the latter only | ||||
| works together with the library. | ||||
|  | ||||
|   Note that it is possible for a library to be covered by the ordinary | ||||
| General Public License rather than by this special one. | ||||
|  | ||||
| 		  GNU LIBRARY GENERAL PUBLIC LICENSE | ||||
|    TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION | ||||
|  | ||||
|   0. This License Agreement applies to any software library which | ||||
| contains a notice placed by the copyright holder or other authorized | ||||
| party saying it may be distributed under the terms of this Library | ||||
| General Public License (also called "this License").  Each licensee is | ||||
| addressed as "you". | ||||
|  | ||||
|   A "library" means a collection of software functions and/or data | ||||
| prepared so as to be conveniently linked with application programs | ||||
| (which use some of those functions and data) to form executables. | ||||
|  | ||||
|   The "Library", below, refers to any such software library or work | ||||
| which has been distributed under these terms.  A "work based on the | ||||
| Library" means either the Library or any derivative work under | ||||
| copyright law: that is to say, a work containing the Library or a | ||||
| portion of it, either verbatim or with modifications and/or translated | ||||
| straightforwardly into another language.  (Hereinafter, translation is | ||||
| included without limitation in the term "modification".) | ||||
|  | ||||
|   "Source code" for a work means the preferred form of the work for | ||||
| making modifications to it.  For a library, 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 library. | ||||
|  | ||||
|   Activities other than copying, distribution and modification are not | ||||
| covered by this License; they are outside its scope.  The act of | ||||
| running a program using the Library is not restricted, and output from | ||||
| such a program is covered only if its contents constitute a work based | ||||
| on the Library (independent of the use of the Library in a tool for | ||||
| writing it).  Whether that is true depends on what the Library does | ||||
| and what the program that uses the Library does. | ||||
|    | ||||
|   1. You may copy and distribute verbatim copies of the Library's | ||||
| complete 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 distribute a copy of this License along with the | ||||
| Library. | ||||
|  | ||||
|   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 Library or any portion | ||||
| of it, thus forming a work based on the Library, 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) The modified work must itself be a software library. | ||||
|  | ||||
|     b) You must cause the files modified to carry prominent notices | ||||
|     stating that you changed the files and the date of any change. | ||||
|  | ||||
|     c) You must cause the whole of the work to be licensed at no | ||||
|     charge to all third parties under the terms of this License. | ||||
|  | ||||
|     d) If a facility in the modified Library refers to a function or a | ||||
|     table of data to be supplied by an application program that uses | ||||
|     the facility, other than as an argument passed when the facility | ||||
|     is invoked, then you must make a good faith effort to ensure that, | ||||
|     in the event an application does not supply such function or | ||||
|     table, the facility still operates, and performs whatever part of | ||||
|     its purpose remains meaningful. | ||||
|  | ||||
|     (For example, a function in a library to compute square roots has | ||||
|     a purpose that is entirely well-defined independent of the | ||||
|     application.  Therefore, Subsection 2d requires that any | ||||
|     application-supplied function or table used by this function must | ||||
|     be optional: if the application does not supply it, the square | ||||
|     root function must still compute square roots.) | ||||
|  | ||||
| These requirements apply to the modified work as a whole.  If | ||||
| identifiable sections of that work are not derived from the Library, | ||||
| 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 Library, 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 Library. | ||||
|  | ||||
| In addition, mere aggregation of another work not based on the Library | ||||
| with the Library (or with a work based on the Library) on a volume of | ||||
| a storage or distribution medium does not bring the other work under | ||||
| the scope of this License. | ||||
|  | ||||
|   3. You may opt to apply the terms of the ordinary GNU General Public | ||||
| License instead of this License to a given copy of the Library.  To do | ||||
| this, you must alter all the notices that refer to this License, so | ||||
| that they refer to the ordinary GNU General Public License, version 2, | ||||
| instead of to this License.  (If a newer version than version 2 of the | ||||
| ordinary GNU General Public License has appeared, then you can specify | ||||
| that version instead if you wish.)  Do not make any other change in | ||||
| these notices. | ||||
|  | ||||
|   Once this change is made in a given copy, it is irreversible for | ||||
| that copy, so the ordinary GNU General Public License applies to all | ||||
| subsequent copies and derivative works made from that copy. | ||||
|  | ||||
|   This option is useful when you wish to copy part of the code of | ||||
| the Library into a program that is not a library. | ||||
|  | ||||
|   4. You may copy and distribute the Library (or a portion or | ||||
| derivative of it, under Section 2) in object code or executable form | ||||
| under the terms of Sections 1 and 2 above provided that you 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. | ||||
|  | ||||
|   If distribution of 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 satisfies the requirement to | ||||
| distribute the source code, even though third parties are not | ||||
| compelled to copy the source along with the object code. | ||||
|  | ||||
|   5. A program that contains no derivative of any portion of the | ||||
| Library, but is designed to work with the Library by being compiled or | ||||
| linked with it, is called a "work that uses the Library".  Such a | ||||
| work, in isolation, is not a derivative work of the Library, and | ||||
| therefore falls outside the scope of this License. | ||||
|  | ||||
|   However, linking a "work that uses the Library" with the Library | ||||
| creates an executable that is a derivative of the Library (because it | ||||
| contains portions of the Library), rather than a "work that uses the | ||||
| library".  The executable is therefore covered by this License. | ||||
| Section 6 states terms for distribution of such executables. | ||||
|  | ||||
|   When a "work that uses the Library" uses material from a header file | ||||
| that is part of the Library, the object code for the work may be a | ||||
| derivative work of the Library even though the source code is not. | ||||
| Whether this is true is especially significant if the work can be | ||||
| linked without the Library, or if the work is itself a library.  The | ||||
| threshold for this to be true is not precisely defined by law. | ||||
|  | ||||
|   If such an object file uses only numerical parameters, data | ||||
| structure layouts and accessors, and small macros and small inline | ||||
| functions (ten lines or less in length), then the use of the object | ||||
| file is unrestricted, regardless of whether it is legally a derivative | ||||
| work.  (Executables containing this object code plus portions of the | ||||
| Library will still fall under Section 6.) | ||||
|  | ||||
|   Otherwise, if the work is a derivative of the Library, you may | ||||
| distribute the object code for the work under the terms of Section 6. | ||||
| Any executables containing that work also fall under Section 6, | ||||
| whether or not they are linked directly with the Library itself. | ||||
|  | ||||
|   6. As an exception to the Sections above, you may also compile or | ||||
| link a "work that uses the Library" with the Library to produce a | ||||
| work containing portions of the Library, and distribute that work | ||||
| under terms of your choice, provided that the terms permit | ||||
| modification of the work for the customer's own use and reverse | ||||
| engineering for debugging such modifications. | ||||
|  | ||||
|   You must give prominent notice with each copy of the work that the | ||||
| Library is used in it and that the Library and its use are covered by | ||||
| this License.  You must supply a copy of this License.  If the work | ||||
| during execution displays copyright notices, you must include the | ||||
| copyright notice for the Library among them, as well as a reference | ||||
| directing the user to the copy of this License.  Also, you must do one | ||||
| of these things: | ||||
|  | ||||
|     a) Accompany the work with the complete corresponding | ||||
|     machine-readable source code for the Library including whatever | ||||
|     changes were used in the work (which must be distributed under | ||||
|     Sections 1 and 2 above); and, if the work is an executable linked | ||||
|     with the Library, with the complete machine-readable "work that | ||||
|     uses the Library", as object code and/or source code, so that the | ||||
|     user can modify the Library and then relink to produce a modified | ||||
|     executable containing the modified Library.  (It is understood | ||||
|     that the user who changes the contents of definitions files in the | ||||
|     Library will not necessarily be able to recompile the application | ||||
|     to use the modified definitions.) | ||||
|  | ||||
|     b) Accompany the work with a written offer, valid for at | ||||
|     least three years, to give the same user the materials | ||||
|     specified in Subsection 6a, above, for a charge no more | ||||
|     than the cost of performing this distribution. | ||||
|  | ||||
|     c) If distribution of the work is made by offering access to copy | ||||
|     from a designated place, offer equivalent access to copy the above | ||||
|     specified materials from the same place. | ||||
|  | ||||
|     d) Verify that the user has already received a copy of these | ||||
|     materials or that you have already sent this user a copy. | ||||
|  | ||||
|   For an executable, the required form of the "work that uses the | ||||
| Library" must include any data and utility programs needed for | ||||
| reproducing the executable from it.  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. | ||||
|  | ||||
|   It may happen that this requirement contradicts the license | ||||
| restrictions of other proprietary libraries that do not normally | ||||
| accompany the operating system.  Such a contradiction means you cannot | ||||
| use both them and the Library together in an executable that you | ||||
| distribute. | ||||
|  | ||||
|   7. You may place library facilities that are a work based on the | ||||
| Library side-by-side in a single library together with other library | ||||
| facilities not covered by this License, and distribute such a combined | ||||
| library, provided that the separate distribution of the work based on | ||||
| the Library and of the other library facilities is otherwise | ||||
| permitted, and provided that you do these two things: | ||||
|  | ||||
|     a) Accompany the combined library with a copy of the same work | ||||
|     based on the Library, uncombined with any other library | ||||
|     facilities.  This must be distributed under the terms of the | ||||
|     Sections above. | ||||
|  | ||||
|     b) Give prominent notice with the combined library of the fact | ||||
|     that part of it is a work based on the Library, and explaining | ||||
|     where to find the accompanying uncombined form of the same work. | ||||
|  | ||||
|   8. You may not copy, modify, sublicense, link with, or distribute | ||||
| the Library except as expressly provided under this License.  Any | ||||
| attempt otherwise to copy, modify, sublicense, link with, or | ||||
| distribute the Library 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. | ||||
|  | ||||
|   9. 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 Library or its derivative works.  These actions are | ||||
| prohibited by law if you do not accept this License.  Therefore, by | ||||
| modifying or distributing the Library (or any work based on the | ||||
| Library), you indicate your acceptance of this License to do so, and | ||||
| all its terms and conditions for copying, distributing or modifying | ||||
| the Library or works based on it. | ||||
|  | ||||
|   10. Each time you redistribute the Library (or any work based on the | ||||
| Library), the recipient automatically receives a license from the | ||||
| original licensor to copy, distribute, link with or modify the Library | ||||
| 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. | ||||
|  | ||||
|   11. 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 Library at all.  For example, if a patent | ||||
| license would not permit royalty-free redistribution of the Library 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 Library. | ||||
|  | ||||
| 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. | ||||
|  | ||||
|   12. If the distribution and/or use of the Library is restricted in | ||||
| certain countries either by patents or by copyrighted interfaces, the | ||||
| original copyright holder who places the Library 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. | ||||
|  | ||||
|   13. The Free Software Foundation may publish revised and/or new | ||||
| versions of the Library 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 Library | ||||
| 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 Library does not specify a | ||||
| license version number, you may choose any version ever published by | ||||
| the Free Software Foundation. | ||||
|  | ||||
|   14. If you wish to incorporate parts of the Library into other free | ||||
| programs whose distribution conditions are incompatible with these, | ||||
| 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 | ||||
|  | ||||
|   15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO | ||||
| WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. | ||||
| EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR | ||||
| OTHER PARTIES PROVIDE THE LIBRARY "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 | ||||
| LIBRARY IS WITH YOU.  SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME | ||||
| THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. | ||||
|  | ||||
|   16. 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 LIBRARY 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 | ||||
| LIBRARY (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 LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF | ||||
| SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH | ||||
| DAMAGES. | ||||
|  | ||||
| 		     END OF TERMS AND CONDITIONS | ||||
|  | ||||
|      Appendix: How to Apply These Terms to Your New Libraries | ||||
|  | ||||
|   If you develop a new library, and you want it to be of the greatest | ||||
| possible use to the public, we recommend making it free software that | ||||
| everyone can redistribute and change.  You can do so by permitting | ||||
| redistribution under these terms (or, alternatively, under the terms of the | ||||
| ordinary General Public License). | ||||
|  | ||||
|   To apply these terms, attach the following notices to the library.  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 library's name and a brief idea of what it does.> | ||||
|     Copyright (C) <year>  <name of author> | ||||
|  | ||||
|     This library is free software; you can redistribute it and/or | ||||
|     modify it under the terms of the GNU Library General Public | ||||
|     License as published by the Free Software Foundation; either | ||||
|     version 2 of the License, or (at your option) any later version. | ||||
|  | ||||
|     This library 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 | ||||
|     Library General Public License for more details. | ||||
|  | ||||
|     You should have received a copy of the GNU Library General Public | ||||
|     License along with this library; 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. | ||||
|  | ||||
| You should also get your employer (if you work as a programmer) or your | ||||
| school, if any, to sign a "copyright disclaimer" for the library, if | ||||
| necessary.  Here is a sample; alter the names: | ||||
|  | ||||
|   Yoyodyne, Inc., hereby disclaims all copyright interest in the | ||||
|   library `Frob' (a library for tweaking knobs) written by James Random Hacker. | ||||
|  | ||||
|   <signature of Ty Coon>, 1 April 1990 | ||||
|   Ty Coon, President of Vice | ||||
|  | ||||
| That's all there is to it! | ||||
							
								
								
									
										1821
									
								
								Makefile.in
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1821
									
								
								Makefile.in
									
									
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										47
									
								
								README
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										47
									
								
								README
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,47 @@ | ||||
| 		   README for GNU development tools | ||||
|  | ||||
| This directory contains various GNU compilers, assemblers, linkers,  | ||||
| debuggers, etc., plus their support routines, definitions, and documentation. | ||||
|  | ||||
| If you are receiving this as part of a GDB release, see the file gdb/README. | ||||
| If with a binutils release, see binutils/README;  if with a libg++ release, | ||||
| see libg++/README, etc.  That'll give you info about this | ||||
| package -- supported targets, how to use it, how to report bugs, etc. | ||||
|  | ||||
| It is now possible to automatically configure and build a variety of | ||||
| tools with one command.  To build all of the tools contained herein, | ||||
| run the ``configure'' script here, e.g.: | ||||
|  | ||||
| 	./configure  | ||||
| 	make | ||||
|  | ||||
| To install them (by default in /usr/local/bin, /usr/local/lib, etc), | ||||
| then do: | ||||
| 	make install | ||||
|  | ||||
| (If the configure script can't determine your type of computer, give it | ||||
| the name as an argument, for instance ``./configure sun4''.  You can | ||||
| use the script ``config.sub'' to test whether a name is recognized; if | ||||
| it is, config.sub translates it to a triplet specifying CPU, vendor, | ||||
| and OS.) | ||||
|  | ||||
| If you have more than one compiler on your system, it is often best to | ||||
| explicitly set CC in the environment before running configure, and to | ||||
| also set CC when running make.  For example (assuming sh/bash/ksh): | ||||
|  | ||||
| 	CC=gcc ./configure | ||||
| 	make | ||||
|  | ||||
| A similar example using csh: | ||||
|  | ||||
| 	setenv CC gcc | ||||
| 	./configure | ||||
| 	make | ||||
|  | ||||
| Much of the code and documentation enclosed is copyright by | ||||
| the Free Software Foundation, Inc.  See the file COPYING or | ||||
| COPYING.LIB in the various directories, for a description of the | ||||
| GNU General Public License terms under which you can copy the files. | ||||
|  | ||||
| REPORTING BUGS: Again, see gdb/README, binutils/README, etc., for info | ||||
| on where and how to report problems. | ||||
							
								
								
									
										687
									
								
								config-ml.in
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										687
									
								
								config-ml.in
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,687 @@ | ||||
| # Configure fragment invoked in the post-target section for subdirs | ||||
| # wanting multilib support. | ||||
| # | ||||
| # It is advisable to support a few --enable/--disable options to let the | ||||
| # user select which libraries s/he really wants. | ||||
| # | ||||
| # Subdirectories wishing to use multilib should put the following lines | ||||
| # in the "post-target" section of configure.in. | ||||
| # | ||||
| # if [ "${srcdir}" = "." ] ; then | ||||
| #   if [ "${with_target_subdir}" != "." ] ; then | ||||
| #     . ${with_multisrctop}../../config-ml.in | ||||
| #   else | ||||
| #     . ${with_multisrctop}../config-ml.in | ||||
| #   fi | ||||
| # else | ||||
| #   . ${srcdir}/../config-ml.in | ||||
| # fi | ||||
| # | ||||
| # See librx/configure.in in the libg++ distribution for an example of how | ||||
| # to handle autoconf'd libraries. | ||||
| # | ||||
| # Things are complicated because 6 separate cases must be handled: | ||||
| # 2 (native, cross) x 3 (absolute-path, relative-not-dot, dot) = 6. | ||||
| # | ||||
| # srcdir=. is special.  It must handle make programs that don't handle VPATH. | ||||
| # To implement this, a symlink tree is built for each library and for each | ||||
| # multilib subdir. | ||||
| # | ||||
| # The build tree is layed out as | ||||
| # | ||||
| # ./ | ||||
| #   libg++ | ||||
| #   newlib | ||||
| #   m68020/ | ||||
| #          libg++ | ||||
| #          newlib | ||||
| #          m68881/ | ||||
| #                 libg++ | ||||
| #                 newlib | ||||
| # | ||||
| # The nice feature about this arrangement is that inter-library references | ||||
| # in the build tree work without having to care where you are.  Note that | ||||
| # inter-library references also work in the source tree because symlink trees | ||||
| # are built when srcdir=. | ||||
| # | ||||
| # Unfortunately, trying to access the libraries in the build tree requires | ||||
| # the user to manually choose which library to use as GCC won't be able to | ||||
| # find the right one.  This is viewed as the lesser of two evils. | ||||
| # | ||||
| # Configure variables: | ||||
| # ${with_target_subdir} = "." for native, or ${target_alias} for cross. | ||||
| # Set by top level Makefile. | ||||
| # ${with_multisrctop} = how many levels of multilibs there are in the source | ||||
| # tree.  It exists to handle the case of configuring in the source tree: | ||||
| # ${srcdir} is not constant. | ||||
| # ${with_multisubdir} = name of multilib subdirectory (eg: m68020/m68881). | ||||
| # | ||||
| # Makefile variables: | ||||
| # MULTISRCTOP = number of multilib levels in source tree (+1 if cross) | ||||
| # (FIXME: note that this is different than ${with_multisrctop}.  Check out.). | ||||
| # MULTIBUILDTOP = number of multilib levels in build tree | ||||
| # MULTIDIRS = list of multilib subdirs (eg: m68000 m68020 ...) | ||||
| # (only defined in each library's main Makefile). | ||||
| # MULTISUBDIR = installed subdirectory name with leading '/' (eg: /m68000) | ||||
| # (only defined in each multilib subdir). | ||||
|  | ||||
| # FIXME: Multilib is currently disabled by default for everything other than | ||||
| # newlib.  It is up to each target to turn on multilib support for the other | ||||
| # libraries as desired. | ||||
|  | ||||
| # We have to handle being invoked by both Cygnus configure and Autoconf. | ||||
| # | ||||
| # Cygnus configure incoming variables: | ||||
| # srcdir, subdir, host, arguments | ||||
| # | ||||
| # Autoconf incoming variables: | ||||
| # srcdir, host, ac_configure_args | ||||
| # | ||||
| # We *could* figure srcdir and host out, but we'd have to do work that | ||||
| # our caller has already done to figure them out and requiring these two | ||||
| # seems reasonable. | ||||
| # Note that `host' in this case is GCC's `target'.  Target libraries are | ||||
| # configured for a particular host. | ||||
|  | ||||
| if [ -n "${ac_configure_args}" ]; then | ||||
|   Makefile=${ac_file-Makefile} | ||||
|   ml_config_shell=${CONFIG_SHELL-/bin/sh} | ||||
|   ml_arguments="${ac_configure_args}" | ||||
|   ml_realsrcdir=${srcdir} | ||||
| else | ||||
|   Makefile=${Makefile-Makefile} | ||||
|   ml_config_shell=${config_shell-/bin/sh} | ||||
|   ml_arguments="${arguments}" | ||||
|   if [ -n "${subdir}" -a "${subdir}" != "." ] ; then | ||||
|     ml_realsrcdir=${srcdir}/${subdir} | ||||
|   else | ||||
|     ml_realsrcdir=${srcdir} | ||||
|   fi | ||||
| fi | ||||
|  | ||||
| # Scan all the arguments and set all the ones we need. | ||||
|  | ||||
| ml_verbose=--verbose | ||||
| for option in ${ml_arguments} | ||||
| do | ||||
|   case $option in | ||||
|   --*) ;; | ||||
|   -*) option=-$option ;; | ||||
|   esac | ||||
|  | ||||
|   case $option in | ||||
|   --*=*) | ||||
| 	optarg=`echo $option | sed -e 's/^[^=]*=//'` | ||||
| 	;; | ||||
|   esac | ||||
|  | ||||
|   case $option in | ||||
|   --disable-*) | ||||
| 	enableopt=`echo ${option} | sed 's:^--disable-:enable_:;s:-:_:g'` | ||||
| 	eval $enableopt=no | ||||
| 	;; | ||||
|   --enable-*) | ||||
| 	case "$option" in | ||||
| 	*=*)	;; | ||||
| 	*)	optarg=yes ;; | ||||
| 	esac | ||||
| 	enableopt=`echo ${option} | sed 's:^--::;s:=.*$::;s:-:_:g'` | ||||
| 	eval $enableopt="$optarg" | ||||
| 	;; | ||||
|   --norecursion | --no*) | ||||
| 	ml_norecursion=yes | ||||
| 	;; | ||||
|   --silent | --sil* | --quiet | --q*) | ||||
| 	ml_verbose=--silent | ||||
| 	;; | ||||
|   --verbose | --v | --verb*) | ||||
| 	ml_verbose=--verbose | ||||
| 	;; | ||||
|   --with-*) | ||||
| 	case "$option" in | ||||
| 	*=*)	;; | ||||
| 	*)	optarg=yes ;; | ||||
| 	esac | ||||
| 	withopt=`echo ${option} | sed 's:^--::;s:=.*$::;s:-:_:g'` | ||||
| 	eval $withopt="$optarg" | ||||
| 	;; | ||||
|   --without-*) | ||||
| 	withopt=`echo ${option} | sed 's:^--::;s:out::;s:-:_:g'` | ||||
| 	eval $withopt=no | ||||
| 	;; | ||||
|   esac | ||||
| done | ||||
|  | ||||
| # Only do this if --enable-multilib. | ||||
| if [ "${enable_multilib}" = yes ]; then | ||||
|  | ||||
| # Compute whether this is the library's top level directory | ||||
| # (ie: not a multilib subdirectory, and not a subdirectory like libg++/src). | ||||
| # ${with_multisubdir} tells us we're in the right branch, but we could be | ||||
| # in a subdir of that. | ||||
| # ??? The previous version could void this test by separating the process into | ||||
| # two files: one that only the library's toplevel configure.in ran (to | ||||
| # configure the multilib subdirs), and another that all configure.in's ran to | ||||
| # update the Makefile.  It seemed reasonable to collapse all multilib support | ||||
| # into one file, but it does leave us with having to perform this test. | ||||
| ml_toplevel_p=no | ||||
| if [ -z "${with_multisubdir}" ]; then | ||||
|   if [ "${srcdir}" = "." ]; then | ||||
|     # Use ${ml_realsrcdir} instead of ${srcdir} here to account for ${subdir}. | ||||
|     # ${with_target_subdir} = "." for native, otherwise target alias. | ||||
|     if [ "${with_target_subdir}" = "." ]; then | ||||
|       if [ -f ${ml_realsrcdir}/../config-ml.in ]; then | ||||
| 	ml_toplevel_p=yes | ||||
|       fi | ||||
|     else | ||||
|       if [ -f ${ml_realsrcdir}/../../config-ml.in ]; then | ||||
| 	ml_toplevel_p=yes | ||||
|       fi | ||||
|     fi | ||||
|   else | ||||
|     # Use ${ml_realsrcdir} instead of ${srcdir} here to account for ${subdir}. | ||||
|     if [ -f ${ml_realsrcdir}/../config-ml.in ]; then | ||||
|       ml_toplevel_p=yes | ||||
|     fi | ||||
|   fi | ||||
| fi | ||||
|  | ||||
| # If this is the library's top level directory, set multidirs to the | ||||
| # multilib subdirs to support.  This lives at the top because we need | ||||
| # `multidirs' set right away. | ||||
|  | ||||
| if [ "${ml_toplevel_p}" = yes ]; then | ||||
|  | ||||
| multidirs= | ||||
| for i in `${CC-gcc} --print-multi-lib 2>/dev/null`; do | ||||
|   dir=`echo $i | sed -e 's/;.*$//'` | ||||
|   if [ "${dir}" = "." ]; then | ||||
|     true | ||||
|   else | ||||
|     if [ -z "${multidirs}" ]; then | ||||
|       multidirs="${dir}" | ||||
|     else | ||||
|       multidirs="${multidirs} ${dir}" | ||||
|     fi | ||||
|   fi | ||||
| done | ||||
|  | ||||
| # Target libraries are configured for the host they run on, so we check | ||||
| # $host here, not $target. | ||||
|  | ||||
| case "${host}" in | ||||
| arc-*-elf*) | ||||
| 	if [ x$enable_biendian != xyes ] | ||||
| 	then | ||||
| 	  old_multidirs=${multidirs} | ||||
| 	  multidirs="" | ||||
| 	  for x in ${old_multidirs}; do | ||||
| 	    case "${x}" in | ||||
| 	      *be*) : ;; | ||||
| 	      *) multidirs="${multidirs} ${x}" ;; | ||||
| 	    esac | ||||
| 	  done | ||||
| 	fi | ||||
| 	;; | ||||
| arm-*-*) | ||||
| 	if [ x"$enable_fpu" = xno ] | ||||
| 	then | ||||
| 	  old_multidirs=${multidirs} | ||||
| 	  multidirs="" | ||||
| 	  for x in ${old_multidirs}; do | ||||
| 	    case "${x}" in | ||||
| 	      *fpu*) : ;; | ||||
| 	      *) multidirs="${multidirs} ${x}" ;; | ||||
| 	    esac | ||||
| 	  done | ||||
| 	fi | ||||
| 	if [ x"$enable_26bit" = xno ] | ||||
| 	then | ||||
| 	  old_multidirs=${multidirs} | ||||
| 	  multidirs="" | ||||
| 	  for x in ${old_multidirs}; do | ||||
| 	    case "${x}" in | ||||
| 	      *26bit*) : ;; | ||||
| 	      *) multidirs="${multidirs} ${x}" ;; | ||||
| 	    esac | ||||
| 	  done | ||||
| 	fi | ||||
| 	if [ x"$enable_underscore" = xno ] | ||||
| 	then | ||||
| 	  old_multidirs=${multidirs} | ||||
| 	  multidirs="" | ||||
| 	  for x in ${old_multidirs}; do | ||||
| 	    case "${x}" in | ||||
| 	      *under*) : ;; | ||||
| 	      *) multidirs="${multidirs} ${x}" ;; | ||||
| 	    esac | ||||
| 	  done | ||||
| 	fi | ||||
| 	if [ x"$enable_interwork" = xno ] | ||||
| 	then | ||||
| 	  old_multidirs=${multidirs} | ||||
| 	  multidirs="" | ||||
| 	  for x in ${old_multidirs}; do | ||||
| 	    case "${x}" in | ||||
| 	      *interwork*) : ;; | ||||
| 	      *) multidirs="${multidirs} ${x}" ;; | ||||
| 	    esac | ||||
| 	  done | ||||
| 	fi | ||||
| 	if [ x$enable_biendian = xno ] | ||||
| 	then | ||||
| 	  old_multidirs="${multidirs}" | ||||
| 	  multidirs="" | ||||
| 	  for x in ${old_multidirs}; do | ||||
| 	    case "$x" in | ||||
| 	      *le* ) : ;; | ||||
| 	      *be* ) : ;; | ||||
| 	      *) multidirs="${multidirs} ${x}" ;; | ||||
| 	    esac | ||||
| 	  done | ||||
| 	fi | ||||
| 	;; | ||||
| m68*-*-*) | ||||
| 	if [ x$enable_softfloat = xno ] | ||||
| 	then | ||||
| 	  old_multidirs="${multidirs}" | ||||
| 	  multidirs="" | ||||
| 	  for x in ${old_multidirs}; do | ||||
| 	    case "$x" in | ||||
| 	      *soft-float* ) : ;; | ||||
| 	      *) multidirs="${multidirs} ${x}" ;; | ||||
| 	    esac | ||||
| 	  done | ||||
| 	fi | ||||
| 	if [ x$enable_m68881 = xno ] | ||||
| 	then | ||||
| 	  old_multidirs="${multidirs}" | ||||
| 	  multidirs="" | ||||
| 	  for x in ${old_multidirs}; do | ||||
| 	    case "$x" in | ||||
| 	      *m68881* ) : ;; | ||||
| 	      *) multidirs="${multidirs} ${x}" ;; | ||||
| 	    esac | ||||
| 	  done | ||||
| 	fi | ||||
| 	if [ x$enable_m68000 = xno ] | ||||
| 	then | ||||
| 	  old_multidirs="${multidirs}" | ||||
| 	  multidirs="" | ||||
| 	  for x in ${old_multidirs}; do | ||||
| 	    case "$x" in | ||||
| 	      *m68000* ) : ;; | ||||
| 	      *) multidirs="${multidirs} ${x}" ;; | ||||
| 	    esac | ||||
| 	  done | ||||
| 	fi | ||||
| 	if [ x$enable_m68020 = xno ] | ||||
| 	then | ||||
| 	  old_multidirs="${multidirs}" | ||||
| 	  multidirs="" | ||||
| 	  for x in ${old_multidirs}; do | ||||
| 	    case "$x" in | ||||
| 	      *m68020* ) : ;; | ||||
| 	      *) multidirs="${multidirs} ${x}" ;; | ||||
| 	    esac | ||||
| 	  done | ||||
| 	fi | ||||
| 	;; | ||||
| mips*-*-*) | ||||
| 	if [ x$enable_single_float = xno ] | ||||
| 	then | ||||
| 	  old_multidirs="${multidirs}" | ||||
| 	  multidirs="" | ||||
| 	  for x in ${old_multidirs}; do | ||||
| 	    case "$x" in | ||||
| 	      *single* ) : ;; | ||||
| 	      *) multidirs="${multidirs} ${x}" ;; | ||||
| 	    esac | ||||
| 	  done | ||||
| 	fi | ||||
| 	if [ x$enable_biendian = xno ] | ||||
| 	then | ||||
| 	  old_multidirs="${multidirs}" | ||||
| 	  multidirs="" | ||||
| 	  for x in ${old_multidirs}; do | ||||
| 	    case "$x" in | ||||
| 	      *el* ) : ;; | ||||
| 	      *eb* ) : ;; | ||||
| 	      *) multidirs="${multidirs} ${x}" ;; | ||||
| 	    esac | ||||
| 	  done | ||||
| 	fi | ||||
| 	if [ x$enable_softfloat = xno ] | ||||
| 	then | ||||
| 	  old_multidirs="${multidirs}" | ||||
| 	  multidirs="" | ||||
| 	  for x in ${old_multidirs}; do | ||||
| 	    case "$x" in | ||||
| 	      *soft-float* ) : ;; | ||||
| 	      *) multidirs="${multidirs} ${x}" ;; | ||||
| 	    esac | ||||
| 	  done | ||||
| 	fi | ||||
| 	;; | ||||
| powerpc*-*-* | rs6000*-*-*) | ||||
| 	if [ x$enable_softfloat = xno ] | ||||
| 	then | ||||
| 	  old_multidirs="${multidirs}" | ||||
| 	  multidirs="" | ||||
| 	  for x in ${old_multidirs}; do | ||||
| 	    case "$x" in | ||||
| 	      *soft-float* ) : ;; | ||||
| 	      *) multidirs="${multidirs} ${x}" ;; | ||||
| 	    esac | ||||
| 	  done | ||||
| 	fi | ||||
| 	if [ x$enable_powercpu = xno ] | ||||
| 	then | ||||
| 	  old_multidirs="${multidirs}" | ||||
| 	  multidirs="" | ||||
| 	  for x in ${old_multidirs}; do | ||||
| 	    case "$x" in | ||||
| 	      power | */power | */power/* ) : ;; | ||||
| 	      *) multidirs="${multidirs} ${x}" ;; | ||||
| 	    esac | ||||
| 	  done | ||||
| 	fi | ||||
| 	if [ x$enable_powerpccpu = xno ] | ||||
| 	then | ||||
| 	  old_multidirs="${multidirs}" | ||||
| 	  multidirs="" | ||||
| 	  for x in ${old_multidirs}; do | ||||
| 	    case "$x" in | ||||
| 	      *powerpc* ) : ;; | ||||
| 	      *) multidirs="${multidirs} ${x}" ;; | ||||
| 	    esac | ||||
| 	  done | ||||
| 	fi | ||||
| 	if [ x$enable_powerpcos = xno ] | ||||
| 	then | ||||
| 	  old_multidirs="${multidirs}" | ||||
| 	  multidirs="" | ||||
| 	  for x in ${old_multidirs}; do | ||||
| 	    case "$x" in | ||||
| 	      *mcall-linux* | *mcall-solaris* ) : ;; | ||||
| 	      *) multidirs="${multidirs} ${x}" ;; | ||||
| 	    esac | ||||
| 	  done | ||||
| 	fi | ||||
| 	if [ x$enable_biendian = xno ] | ||||
| 	then | ||||
| 	  old_multidirs="${multidirs}" | ||||
| 	  multidirs="" | ||||
| 	  for x in ${old_multidirs}; do | ||||
| 	    case "$x" in | ||||
| 	      *mlittle* | *mbig* ) : ;; | ||||
| 	      *) multidirs="${multidirs} ${x}" ;; | ||||
| 	    esac | ||||
| 	  done | ||||
| 	fi | ||||
| 	if [ x$enable_sysv = xno ] | ||||
| 	then | ||||
| 	  old_multidirs="${multidirs}" | ||||
| 	  multidirs="" | ||||
| 	  for x in ${old_multidirs}; do | ||||
| 	    case "$x" in | ||||
| 	      *mcall-sysv* ) : ;; | ||||
| 	      *) multidirs="${multidirs} ${x}" ;; | ||||
| 	    esac | ||||
| 	  done | ||||
| 	fi | ||||
| 	if [ x$enable_aix = xno ] | ||||
| 	then | ||||
| 	  old_multidirs="${multidirs}" | ||||
| 	  multidirs="" | ||||
| 	  for x in ${old_multidirs}; do | ||||
| 	    case "$x" in | ||||
| 	      *mcall-aix* ) : ;; | ||||
| 	      *) multidirs="${multidirs} ${x}" ;; | ||||
| 	    esac | ||||
| 	  done | ||||
| 	fi | ||||
| 	;; | ||||
| esac | ||||
|  | ||||
| # Remove extraneous blanks from multidirs. | ||||
| # Tests like `if [ -n "$multidirs" ]' require it. | ||||
| multidirs=`echo "$multidirs" | sed -e 's/^[ ][ ]*//' -e 's/[ ][ ]*$//' -e 's/[ ][ ]*/ /g'` | ||||
|  | ||||
| # Add code to library's top level makefile to handle building the multilib | ||||
| # subdirs. | ||||
|  | ||||
| cat > Multi.tem <<\EOF | ||||
|  | ||||
| # FIXME: There should be an @-sign in front of the `if'. | ||||
| # Leave out until this is tested a bit more. | ||||
| multi-do: | ||||
| 	if [ -z "$(MULTIDIRS)" ]; then \ | ||||
| 	  true; \ | ||||
| 	else \ | ||||
| 	  rootpre=`pwd`/; export rootpre; \ | ||||
| 	  srcrootpre=`cd $(srcdir); pwd`/; export srcrootpre; \ | ||||
| 	  lib=`echo $${rootpre} | sed -e 's,^.*/\([^/][^/]*\)/$$,\1,'`; \ | ||||
| 	  compiler="$(CC)"; \ | ||||
| 	  for i in `$${compiler} --print-multi-lib 2>/dev/null`; do \ | ||||
| 	    dir=`echo $$i | sed -e 's/;.*$$//'`; \ | ||||
| 	    if [ "$${dir}" = "." ]; then \ | ||||
| 	      true; \ | ||||
| 	    else \ | ||||
| 	      if [ -d ../$${dir}/$${lib} ]; then \ | ||||
| 		flags=`echo $$i | sed -e 's/^[^;]*;//' -e 's/@/ -/g'`; \ | ||||
| 		if (cd ../$${dir}/$${lib}; $(MAKE) $(FLAGS_TO_PASS) \ | ||||
| 				CFLAGS="$(CFLAGS) $${flags}" \ | ||||
| 				CXXFLAGS="$(CXXFLAGS) $${flags}" \ | ||||
| 				LIBCFLAGS="$(LIBCFLAGS) $${flags}" \ | ||||
| 				LIBCXXFLAGS="$(LIBCXXFLAGS) $${flags}" \ | ||||
| 				LDFLAGS="$(LDFLAGS) $${flags}" \ | ||||
| 				$(DO)); then \ | ||||
| 		  true; \ | ||||
| 		else \ | ||||
| 		  exit 1; \ | ||||
| 		fi; \ | ||||
| 	      else true; \ | ||||
| 	      fi; \ | ||||
| 	    fi; \ | ||||
| 	  done; \ | ||||
| 	fi | ||||
|  | ||||
| # FIXME: There should be an @-sign in front of the `if'. | ||||
| # Leave out until this is tested a bit more. | ||||
| multi-clean: | ||||
| 	if [ -z "$(MULTIDIRS)" ]; then \ | ||||
| 	  true; \ | ||||
| 	else \ | ||||
| 	  lib=`pwd | sed -e 's,^.*/\([^/][^/]*\)$$,\1,'`; \ | ||||
| 	  for dir in Makefile $(MULTIDIRS); do \ | ||||
| 	    if [ -f ../$${dir}/$${lib}/Makefile ]; then \ | ||||
| 	      if (cd ../$${dir}/$${lib}; $(MAKE) $(FLAGS_TO_PASS) $(DO)); \ | ||||
| 	      then true; \ | ||||
| 	      else exit 1; \ | ||||
| 	      fi; \ | ||||
| 	    else true; \ | ||||
| 	    fi; \ | ||||
| 	  done; \ | ||||
| 	fi | ||||
| EOF | ||||
|  | ||||
| cat ${Makefile} Multi.tem > Makefile.tem | ||||
| rm -f ${Makefile} Multi.tem | ||||
| mv Makefile.tem ${Makefile} | ||||
|  | ||||
| fi # ${ml_toplevel_p} = yes | ||||
|  | ||||
| if [ "${ml_verbose}" = --verbose ]; then | ||||
|   echo "Adding multilib support to Makefile in ${ml_realsrcdir}" | ||||
|   if [ "${ml_toplevel_p}" = yes ]; then | ||||
|     echo "multidirs=${multidirs}" | ||||
|   fi | ||||
|   echo "with_multisubdir=${with_multisubdir}" | ||||
| fi | ||||
|  | ||||
| if [ "${srcdir}" = "." ]; then | ||||
|   if [ "${with_target_subdir}" != "." ]; then | ||||
|     ml_srcdotdot="../" | ||||
|   else | ||||
|     ml_srcdotdot="" | ||||
|   fi | ||||
| else | ||||
|   ml_srcdotdot="" | ||||
| fi | ||||
|  | ||||
| if [ -z "${with_multisubdir}" ]; then | ||||
|   ml_subdir= | ||||
|   ml_builddotdot= | ||||
|   : # ml_srcdotdot= # already set | ||||
| else | ||||
|   ml_subdir="/${with_multisubdir}" | ||||
|   # The '[^/][^/]*' appears that way to work around a SunOS sed bug. | ||||
|   ml_builddotdot=`echo ${with_multisubdir} | sed -e 's:[^/][^/]*:..:g'`/ | ||||
|   if [ "$srcdir" = "." ]; then | ||||
|     ml_srcdotdot=${ml_srcdotdot}${ml_builddotdot} | ||||
|   else | ||||
|     : # ml_srcdotdot= # already set | ||||
|   fi | ||||
| fi | ||||
|  | ||||
| if [ "${ml_toplevel_p}" = yes ]; then | ||||
|   ml_do='$(MAKE)' | ||||
|   ml_clean='$(MAKE)' | ||||
| else | ||||
|   ml_do=true | ||||
|   ml_clean=true | ||||
| fi | ||||
|  | ||||
| # TOP is used by newlib and should not be used elsewhere for this purpose. | ||||
| # MULTI{SRC,BUILD}TOP are the proper ones to use.  MULTISRCTOP is empty | ||||
| # when srcdir != builddir.  MULTIBUILDTOP is always some number of ../'s. | ||||
| # FIXME: newlib needs to be updated to use MULTI{SRC,BUILD}TOP so we can | ||||
| # delete TOP.  Newlib may wish to continue to use TOP for its own purposes | ||||
| # of course. | ||||
| # MULTIDIRS is non-empty for the cpu top level Makefile (eg: newlib/Makefile) | ||||
| # and lists the subdirectories to recurse into. | ||||
| # MULTISUBDIR is non-empty in each cpu subdirectory's Makefile | ||||
| # (eg: newlib/h8300h/Makefile) and is the installed subdirectory name with | ||||
| # a leading '/'. | ||||
| # MULTIDO is used for targets like all, install, and check where | ||||
| # $(FLAGS_TO_PASS) augmented with the subdir's compiler option is needed. | ||||
| # MULTICLEAN is used for the *clean targets. | ||||
| # | ||||
| # ??? It is possible to merge MULTIDO and MULTICLEAN into one.  They are | ||||
| # currently kept separate because we don't want the *clean targets to require | ||||
| # the existence of the compiler (which MULTIDO currently requires) and | ||||
| # therefore we'd have to record the directory options as well as names | ||||
| # (currently we just record the names and use --print-multi-lib to get the | ||||
| # options). | ||||
|  | ||||
| sed -e "s:^TOP[ 	]*=[ 	]*\([./]*\)[ 	]*$:TOP = ${ml_builddotdot}\1:" \ | ||||
|     -e "s:^MULTISRCTOP[ 	]*=.*$:MULTISRCTOP = ${ml_srcdotdot}:" \ | ||||
|     -e "s:^MULTIBUILDTOP[ 	]*=.*$:MULTIBUILDTOP = ${ml_builddotdot}:" \ | ||||
|     -e "s:^MULTIDIRS[ 	]*=.*$:MULTIDIRS = ${multidirs}:" \ | ||||
|     -e "s:^MULTISUBDIR[ 	]*=.*$:MULTISUBDIR = ${ml_subdir}:" \ | ||||
|     -e "s:^MULTIDO[ 	]*=.*$:MULTIDO = $ml_do:" \ | ||||
|     -e "s:^MULTICLEAN[ 	]*=.*$:MULTICLEAN = $ml_clean:" \ | ||||
| 	${Makefile} > Makefile.tem | ||||
| rm -f ${Makefile} | ||||
| mv Makefile.tem ${Makefile} | ||||
|  | ||||
| # If this is the library's top level, configure each multilib subdir. | ||||
| # This is done at the end because this is the loop that runs configure | ||||
| # in each multilib subdir and it seemed reasonable to finish updating the | ||||
| # Makefile before going on to configure the subdirs. | ||||
|  | ||||
| if [ "${ml_toplevel_p}" = yes ]; then | ||||
|  | ||||
| # We must freshly configure each subdirectory.  This bit of code is | ||||
| # actually partially stolen from the main configure script.  FIXME. | ||||
|  | ||||
| if [ -n "${multidirs}" ] && [ -z "${ml_norecursion}" ]; then | ||||
|  | ||||
|   if [ "${ml_verbose}" = --verbose ]; then | ||||
|     echo "Running configure in multilib subdirs ${multidirs}" | ||||
|     echo "pwd: `pwd`" | ||||
|   fi | ||||
|  | ||||
|   ml_origdir=`pwd` | ||||
|   ml_libdir=`echo $ml_origdir | sed -e 's,^.*/,,'` | ||||
|   # cd to top-level-build-dir/${with_target_subdir} | ||||
|   cd .. | ||||
|  | ||||
|   for ml_dir in ${multidirs}; do | ||||
|  | ||||
|     if [ "${ml_verbose}" = --verbose ]; then | ||||
|       echo "Running configure in multilib subdir ${ml_dir}" | ||||
|       echo "pwd: `pwd`" | ||||
|     fi | ||||
|  | ||||
|     if [ -d ${ml_dir} ]; then true; else mkdir ${ml_dir}; fi | ||||
|     if [ -d ${ml_dir}/${ml_libdir} ]; then true; else mkdir ${ml_dir}/${ml_libdir}; fi | ||||
|  | ||||
|     # Eg: if ${ml_dir} = m68000/m68881, dotdot = ../../ | ||||
|     dotdot=../`echo ${ml_dir} | sed -e 's|[^/]||g' -e 's|/|../|g'` | ||||
|  | ||||
|     case ${srcdir} in | ||||
|     ".") | ||||
|       echo Building symlink tree in `pwd`/${ml_dir}/${ml_libdir} | ||||
|       if [ "${with_target_subdir}" != "." ]; then | ||||
| 	ml_unsubdir="../" | ||||
|       else | ||||
| 	ml_unsubdir="" | ||||
|       fi | ||||
|       (cd ${ml_dir}/${ml_libdir}; | ||||
|        ../${dotdot}${ml_unsubdir}symlink-tree ../${dotdot}${ml_unsubdir}${ml_libdir} "") | ||||
|       if [ -f ${ml_dir}/${ml_libdir}/Makefile ]; then | ||||
| 	if [ x"${MAKE}" = x ]; then | ||||
| 	  (cd ${ml_dir}/${ml_libdir}; make distclean) | ||||
| 	else | ||||
| 	  (cd ${ml_dir}/${ml_libdir}; ${MAKE} distclean) | ||||
| 	fi | ||||
|       fi | ||||
|       ml_newsrcdir="." | ||||
|       ml_srcdiroption= | ||||
|       multisrctop=${dotdot} | ||||
|       ;; | ||||
|     *) | ||||
|       case "${srcdir}" in | ||||
|       /*) # absolute path | ||||
|         ml_newsrcdir=${srcdir} | ||||
|         ;; | ||||
|       *) # otherwise relative | ||||
|         ml_newsrcdir=${dotdot}${srcdir} | ||||
|         ;; | ||||
|       esac | ||||
|       ml_srcdiroption="-srcdir=${ml_newsrcdir}" | ||||
|       multisrctop= | ||||
|       ;; | ||||
|     esac | ||||
|  | ||||
|     case "${progname}" in | ||||
|     /*)     ml_recprog=${progname} ;; | ||||
|     *)      ml_recprog=${dotdot}${progname} ;; | ||||
|     esac | ||||
|  | ||||
|     # FIXME: POPDIR=${PWD=`pwd`} doesn't work here. | ||||
|     ML_POPDIR=`pwd` | ||||
|     cd ${ml_dir}/${ml_libdir} | ||||
|  | ||||
|     if [ -f ${ml_newsrcdir}/configure ]; then | ||||
|       ml_recprog=${ml_newsrcdir}/configure | ||||
|     fi | ||||
|     if eval ${ml_config_shell} ${ml_recprog} \ | ||||
| 	--with-multisubdir=${ml_dir} --with-multisrctop=${multisrctop} \ | ||||
| 	${ml_arguments} ${ml_srcdiroption} ; then | ||||
|       true | ||||
|     else | ||||
|       exit 1 | ||||
|     fi | ||||
|  | ||||
|     cd ${ML_POPDIR} | ||||
|  | ||||
|   done | ||||
|  | ||||
|   cd ${ml_origdir} | ||||
| fi | ||||
|  | ||||
| fi # ${ml_toplevel_p} = yes | ||||
| fi # ${enable_multilib} = yes | ||||
							
								
								
									
										1008
									
								
								config.guess
									
									
									
									
										vendored
									
									
										Executable file
									
								
							
							
						
						
									
										1008
									
								
								config.guess
									
									
									
									
										vendored
									
									
										Executable file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										87
									
								
								config.if
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										87
									
								
								config.if
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,87 @@ | ||||
| #! /dev/null | ||||
| # Don't call it directly. This shell script fragment is called to | ||||
| # determine: | ||||
| # | ||||
| #	1. libstcxx_interface: the interface name for libstdc++. | ||||
| #	2. cxx_interface: the interface name for c++. | ||||
| #	3. libc_interface: the interface name for libc. | ||||
| # | ||||
|  | ||||
| # Get the top level src dir. | ||||
| if [ -z "${topsrcdir}" -a -z "${top_srcdir}" ] | ||||
| then | ||||
|   echo "Undefined top level src dir: topsrcdir and top_srcdir are empty" >&2 | ||||
|   exit 1 | ||||
| fi | ||||
|  | ||||
| if [ -n "${topsrcdir}" ] | ||||
| then | ||||
|   if_topsrcdir=${topsrcdir} | ||||
| else | ||||
|   if_topsrcdir=${top_srcdir} | ||||
| fi | ||||
|  | ||||
| if [ -f ${if_topsrcdir}/libstdc++/Makefile.in ]; then | ||||
| # We check libstdc++ for libstdcxx_interface. | ||||
| libstdcxx_interface=`grep "^INTERFACE" ${if_topsrcdir}/libstdc++/Makefile.in | sed 's/INTERFACE[ 	]*=[ 	]*\(.*\)/\1/'` | ||||
| else | ||||
| libstdcxx_interface= | ||||
| fi | ||||
|  | ||||
| if [ -f ${if_topsrcdir}/gcc/cp/Makefile.in ]; then | ||||
| # We check gcc/cp for cxx_interface. | ||||
| cxx_interface=`grep "^INTERFACE" ${if_topsrcdir}/gcc/cp/Makefile.in | sed 's/INTERFACE[ 	]*=[ 	]*\(.*\)/\1/'` | ||||
| else | ||||
| cxx_interface= | ||||
| fi | ||||
|  | ||||
| # The trickiest part is libc_interface. | ||||
| if [ -z "${libc_interface}" ] | ||||
| then | ||||
|   case ${target_os} in | ||||
|   *linux*libc1*|*linux*libc5*) | ||||
|     case ${target_alias} in | ||||
|     *alpha*|*powerpc*) | ||||
|       libc_interface=-libc5.9- | ||||
|       ;; | ||||
|     *) | ||||
|       libc_interface=-libc5- | ||||
|       ;; | ||||
|     esac | ||||
|     ;; | ||||
|   *linux*gnu*) | ||||
|     # We have to work harder to figure it out. | ||||
|     if [ ${target_alias} = ${build_alias} ] | ||||
|     then | ||||
|       dummy=if$$ | ||||
|       cat >$dummy.c <<EOF | ||||
| #include <features.h>                       | ||||
| main(argc, argv) | ||||
|      int argc;           | ||||
|      char *argv[]; | ||||
| { | ||||
|   printf("%d\n", __GLIBC_MINOR__); | ||||
|   return 0; | ||||
| } | ||||
| EOF | ||||
|       ${CC-cc} $dummy.c -o $dummy 2>/dev/null | ||||
|       if [ "$?" = 0 ] | ||||
|       then | ||||
| 	libc_interface=-libc6.`./$dummy`- | ||||
| 	rm -f $dummy.c $dummy | ||||
|       else | ||||
| 	# It should never happen. | ||||
| 	echo "Cannot find the GNU C library minor version number." >&2 | ||||
| 	rm -f $dummy.c $dummy | ||||
| 	exit 1 | ||||
|       fi | ||||
|     else | ||||
|       # Cross compiling. Assume glibc 2.1. | ||||
|       libc_interface=-libc6.1- | ||||
|     fi | ||||
|     ;; | ||||
|   *) | ||||
|     libc_interface=- | ||||
|     ;; | ||||
|   esac | ||||
| fi | ||||
							
								
								
									
										1292
									
								
								config.sub
									
									
									
									
										vendored
									
									
										Executable file
									
								
							
							
						
						
									
										1292
									
								
								config.sub
									
									
									
									
										vendored
									
									
										Executable file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										392
									
								
								config/ChangeLog
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										392
									
								
								config/ChangeLog
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,392 @@ | ||||
| 1999-04-07  Michael Meissner  <meissner@cygnus.com> | ||||
|  | ||||
| 	* mt-d30v: New file, pass -g -Os -Wa,-C as default options. | ||||
|  | ||||
| 1999-02-08  Syd Polk  <spolk@cygnus.com> | ||||
|  | ||||
| 	* acinclude.m4: Added macros to find itcl files. | ||||
| 	Export TCL_CFLAGS from tclConfig.sh. | ||||
| 	Export TCL_LIB_FULL_PATH, TK_LIB_FULL_PATH, ITCL_LIB_FULL_PATH, | ||||
| 	ITK_LIB_FULL_PATH, and TIX_LIB_FULL_PATH | ||||
| 	Replace TIX macros with better ones from snavigator. | ||||
|  | ||||
| Tue Feb  2 22:51:21 1999 Philip Blundell  <philb@gnu.org> | ||||
|  | ||||
| 	* mh-armpic: New file.  Patch from Jim Pick <jim@jimpick.com>. | ||||
| 	* mt-armpic: Likewise. | ||||
|  | ||||
| Mon Jan 18 19:41:08 1999  Christopher Faylor <cgf@cygnus.com> | ||||
|  | ||||
| 	* cygwin.mh: Activate commented out dependencies for | ||||
| 	gdb: libtermcap. | ||||
|  | ||||
| Wed Nov 18 20:29:46 1998  Christopher Faylor <cgf@cygnus.com> | ||||
|  | ||||
| 	* cygwin.mh: Add extra libtermcap target information. | ||||
| 	Add commented out dependency for gdb to libtermcap for | ||||
| 	future readline requirement. | ||||
|  | ||||
| Mon Nov  2 15:15:33 1998  Geoffrey Noer  <noer@cygnus.com> | ||||
|  | ||||
|         * mh-cygwin32: delete | ||||
|         * mh-cygwin: was mh-cygwin32 | ||||
|  | ||||
| 1998-10-26  Syd Polk  <spolk@cygnus.com> | ||||
|  | ||||
| 	* acinclude.m4: TCLHDIR and TKHDIR need to be run through | ||||
| 	cygpath for Microsoft builds. | ||||
|  | ||||
| 1998-10-20  Syd Polk  <spolk@cygnus.com> | ||||
|  | ||||
| 	* acinclude.m4: Re-exported TCL_LIBS and TCL_LD_SEARCH_FLAGS | ||||
| 	because itcl needs them. | ||||
|  | ||||
| Mon Aug 31 17:50:53 1998  David Edelsohn  <edelsohn@mhpcc.edu> | ||||
|  | ||||
| 	* mh-aix43 (NM_FOR_TARGET): Add -X32_64 as well. | ||||
|  | ||||
| Sat Aug 29 14:32:55 1998  David Edelsohn  <edelsohn@mhpcc.edu> | ||||
|  | ||||
| 	* mh-aix43: New file. | ||||
|  | ||||
| Mon Aug 10 00:15:47 1998  HJ Lu (hjl@gnu.org) | ||||
|  | ||||
| 	* mt-linux (CXXFLAGS_FOR_TARGET): Add -D_GNU_SOURCE. | ||||
|  | ||||
| 1998-05-29  Rob Savoye  <rob@chinadoll.cygnus.com> | ||||
|  | ||||
| 	* acinclude.m4: New collection of generic autoconf macros. | ||||
| 	 | ||||
| Wed Apr 22 12:24:28 1998  Michael Meissner  <meissner@cygnus.com> | ||||
|  | ||||
| 	* mt-ospace: New file, support using -Os instead of -O2 to compile | ||||
| 	the libraries. | ||||
|  | ||||
| Wed Apr 22 10:53:14 1998  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de> | ||||
|  | ||||
| 	* mt-linux (CXXFLAGS_FOR_TARGET): Set this instead of CXXFLAGS. | ||||
|  | ||||
| Sat Apr 11 22:43:17 1998  J. Kean Johnston  <jkj@sco.com> | ||||
|  | ||||
| 	* mh-svsv5: New file - support for SCO UnixWare 7 / SVR5. | ||||
|  | ||||
| Thu Mar 26 01:54:25 1998  Geoffrey Noer  <noer@cygnus.com> | ||||
|  | ||||
| 	* mh-cygwin32: stop configuring and building dosrel. | ||||
|  | ||||
| Thu Sep 11 16:43:27 1997  Jim Wilson  <wilson@cygnus.com> | ||||
|  | ||||
| 	* mh-elfalphapic, mt-elfalphapic: New files. | ||||
|  | ||||
| Wed Jul 23 12:32:18 1997  Robert Hoehne <robert.hoehne@Mathematik.TU-Chemnitz.DE> | ||||
|  | ||||
| 	* mh-go32 (CFLAGS): Don't set -fno-omit-frame-pointer. | ||||
|  | ||||
| Mon Jun 16 19:06:41 1997  Geoff Keating  <geoffk@ozemail.com.au> | ||||
|  | ||||
| 	* mh-ppcpic: New file. | ||||
| 	* mt-ppcpic: New file. | ||||
|  | ||||
| Thu Mar 27 15:52:40 1997  Geoffrey Noer  <noer@cygnus.com> | ||||
|  | ||||
| 	* mh-cygwin32: override CXXFLAGS, setting to -O2 only | ||||
| 	(no debug) | ||||
|  | ||||
| Tue Mar 25 18:16:43 1997  Geoffrey Noer  <noer@cygnus.com> | ||||
|  | ||||
| 	* mh-cygwin32: override LIBGCC2_DEBUG_CFLAGS so debug info | ||||
| 	isn't included in cygwin32-hosted libgcc2.a by default | ||||
|  | ||||
| Wed Jan  8 19:56:43 1997  Geoffrey Noer  <noer@cygnus.com> | ||||
|  | ||||
|         * mh-cygwin32: override CFLAGS so debug info isn't included | ||||
|         in cygwin32-hosted tools by default | ||||
|  | ||||
| Tue Dec 31 16:04:26 1996  Ian Lance Taylor  <ian@cygnus.com> | ||||
|  | ||||
| 	* mh-linux: Remove. | ||||
|  | ||||
| Mon Nov 11 10:29:51 1996  Michael Meissner  <meissner@tiktok.cygnus.com> | ||||
|  | ||||
| 	* mt-ppc: Delete file, options moved to newlib configure. | ||||
|  | ||||
| Fri Oct  4 12:21:03 1996  Angela Marie Thomas (angela@cygnus.com) | ||||
|  | ||||
| 	* mh-dgux386: New file.  x86 dgux specific flags | ||||
|  | ||||
| Mon Sep 30 15:10:07 1996  Stan Shebs  <shebs@andros.cygnus.com> | ||||
|  | ||||
| 	* mpw-mh-mpw (EXTRALIBS_PPC_XCOFF): New, was EXTRALIBS_PPC. | ||||
| 	(EXTRALIBS_PPC): Use shared libraries instead of xcoff. | ||||
|  | ||||
| Sat Aug 17 04:56:25 1996  Geoffrey Noer  <noer@skaro.cygnus.com> | ||||
|  | ||||
| 	* mh-cygwin32: don't -D_WIN32 here anymore | ||||
|  | ||||
| Thu Aug 15 19:46:44 1996  Stan Shebs  <shebs@andros.cygnus.com> | ||||
|  | ||||
| 	* mpw-mh-mpw (SEGFLAG_68K, SEGFLAG_PPC): Remove. | ||||
| 	(EXTRALIBS_PPC): Add libgcc.xcoff. | ||||
|  | ||||
| Thu Aug  8 14:51:47 1996  Michael Meissner  <meissner@tiktok.cygnus.com> | ||||
|  | ||||
| 	* mt-ppc: New file, add -mrelocatable-lib and -mno-eabi to all | ||||
| 	target builds for PowerPC eabi targets. | ||||
|  | ||||
| Fri Jul 12 12:06:01 1996  Stan Shebs  <shebs@andros.cygnus.com> | ||||
|  | ||||
| 	* mpw: New subdir, Mac MPW configuration support bits. | ||||
|  | ||||
| Mon Jul  8 17:30:52 1996  Jim Wilson  <wilson@cygnus.com> | ||||
|  | ||||
| 	* mh-irix6: New file. | ||||
|  | ||||
| Mon Jul  8 15:15:37 1996  Jason Merrill  <jason@yorick.cygnus.com> | ||||
|  | ||||
| 	* mt-sparcpic (PICFLAG_FOR_TARGET): Use -fPIC. | ||||
|  | ||||
| Fri Jul  5 11:49:02 1996  Ian Lance Taylor  <ian@cygnus.com> | ||||
|  | ||||
| 	* mh-irix4 (RANLIB): Don't define; Irix 4 does have ranlib. | ||||
|  | ||||
| Sun Jun 23 22:59:25 1996  Geoffrey Noer  <noer@cygnus.com> | ||||
|  | ||||
| 	* mh-cygwin32: new file.  Like mh-go32 without the CFLAGS entry. | ||||
|  | ||||
| Tue Mar 26 14:10:41 1996  Ian Lance Taylor  <ian@cygnus.com> | ||||
|  | ||||
| 	* mh-go32 (CFLAGS): Define. | ||||
|  | ||||
| Thu Mar 14 19:20:54 1996  Ian Lance Taylor  <ian@cygnus.com> | ||||
|  | ||||
| 	* mh-necv4: New file. | ||||
|  | ||||
| Thu Feb 15 13:07:43 1996  Ian Lance Taylor  <ian@cygnus.com> | ||||
|  | ||||
| 	* mh-cxux (CC): New variable. | ||||
| 	(CFLAGS, LDFLAGS): Remove. | ||||
| 	* mh-ncrsvr43 (CC): New variable. | ||||
| 	(CFLAGS): Remove. | ||||
| 	* mh-solaris (CFLAGS): Remove. | ||||
|  | ||||
| 	* mh-go32: Remove most variable settings, since they presumed a | ||||
| 	Canadian Cross, which is now handled correctly by the configure | ||||
| 	script. | ||||
|  | ||||
| 	* mh-sparcpic (PICFLAG): Set to -fPIC, not -fpic. | ||||
|  | ||||
| Mon Feb 12 14:53:39 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de> | ||||
|  | ||||
| 	* mh-m68kpic, mt-m68kpic: New files. | ||||
|  | ||||
| Thu Feb  1 14:15:42 1996  Stan Shebs  <shebs@andros.cygnus.com> | ||||
|  | ||||
| 	* mpw-mh-mpw (CC_MWC68K): Add options similar to those used | ||||
| 	in CC_MWCPPC, and -mc68020 -model far. | ||||
| 	(AR_MWLINK68K): Add -xm library. | ||||
| 	(AR_AR): Define. | ||||
| 	(CC_LD_MWLINK68K): Remove -d. | ||||
| 	(EXTRALIBS_MWC68K): Define. | ||||
|  | ||||
| Thu Jan 25 16:05:33 1996  Ian Lance Taylor  <ian@cygnus.com> | ||||
|  | ||||
| 	* mh-ncrsvr43 (CFLAGS): Remove -Hnocopyr. | ||||
|  | ||||
| Tue Nov  7 15:41:30 1995  Stan Shebs  <shebs@andros.cygnus.com> | ||||
|  | ||||
| 	* mpw-mh-mpw (CC_MWC68K, CC_MWCPPC): Remove unused include path. | ||||
| 	(CC_MWCPPC): Add -mpw_chars, disable warnings, add comments | ||||
| 	explaining reasons for various flags. | ||||
| 	(EXTRALIBS_PPC, EXTRALIBS_MWCPPC ): Put runtime library first. | ||||
| 	 | ||||
| Fri Oct 13 14:44:25 1995  Jason Molenda  (crash@phydeaux.cygnus.com) | ||||
|  | ||||
| 	* mh-aix, mh-sun:  Removed. | ||||
|  | ||||
| 	* mh-decstation (X11_EXTRA_CFLAGS): Define. | ||||
|  | ||||
| 	* mh-sco, mh-solaris, mh-sysv4 (X11_EXTRA_LIBS): Define. | ||||
|  | ||||
|         * mh-hp300, mh-hpux, mh-hpux8, mh-solaris, mh-sun3, mh-sysv4: Don't  | ||||
| 	hardcode location of X stuff here. | ||||
|  | ||||
| Thu Sep 28 13:14:56 1995  Stan Shebs  <shebs@andros.cygnus.com> | ||||
|  | ||||
| 	* mpw-mh-mpw: Add definitions for various 68K and PowerMac | ||||
| 	compilers, add definitions for library and link steps for | ||||
| 	PowerMacs. | ||||
|  | ||||
| Thu Sep 14 08:20:04 1995  Fred Fish  <fnf@cygnus.com> | ||||
|  | ||||
| 	* mh-hp300 (CC): Add "CC = cc -Wp,-H256000" to avoid | ||||
| 	"too much defining" errors from the HPUX compiler. | ||||
|  | ||||
| Thu Aug 17 17:28:56 1995  Ken Raeburn  <raeburn@kr-laptop.cygnus.com> | ||||
|  | ||||
| 	* mh-hp300 (RANLIB): Use "ar ts", in case GNU ar was used and | ||||
| 	didn't build a symbol table. | ||||
|  | ||||
| Thu Jun 22 17:47:24 1995  Stan Shebs  <shebs@andros.cygnus.com> | ||||
|  | ||||
| 	* mpw-mh-mpw (CC): Define ANSI_PROTOTYPES. | ||||
|  | ||||
| Mon Apr 10 12:29:48 1995  Stan Shebs  <shebs@andros.cygnus.com> | ||||
|  | ||||
| 	* mpw-mh-mpw (EXTRALIBS): Always link in Math.o, CSANELIB.o, | ||||
|         and ToolLibs.o. | ||||
|  | ||||
| 	* mpw-mh-mpw (CC): Define ALMOST_STDC. | ||||
| 	(CFLAGS): Remove ALMOST_STDC, -mc68881. | ||||
| 	(LDFLAGS): add -w. | ||||
|  | ||||
| 	* mpw-mh-mpw (CFLAGS): Add -b option to put strings at the ends of | ||||
| 	functions. | ||||
|  | ||||
| 	* mpw-mh-mpw: New file, host makefile definitions for MPW. | ||||
|  | ||||
| Fri Mar 31 11:35:17 1995  Jason Molenda (crash@phydeaux.cygnus.com) | ||||
|  | ||||
| 	* mt-netware: New file. | ||||
|  | ||||
| Mon Mar 13 12:31:29 1995  Ian Lance Taylor  <ian@cygnus.com> | ||||
|  | ||||
| 	* mh-hpux8: New file. | ||||
| 	* mh-hpux: Use X11R5 rather than X11R4. | ||||
|  | ||||
| Thu Feb  9 11:04:13 1995  Ian Lance Taylor  <ian@cygnus.com> | ||||
|  | ||||
| 	* mh-linux (SYSV): Don't define. | ||||
| 	(RANLIB): Don't define. | ||||
|  | ||||
| Wed Jan 11 16:29:34 1995  Jason Merrill  <jason@phydeaux.cygnus.com> | ||||
|  | ||||
| 	* m?-*pic (LIBCXXFLAGS): Add -fno-implicit-templates. | ||||
|  | ||||
| Thu Nov  3 17:27:19 1994  Ken Raeburn  <raeburn@cujo.cygnus.com> | ||||
|  | ||||
| 	* mh-irix4 (CC): Increase maximum string length. | ||||
|  | ||||
| 	* mh-sco (CC): Define away const, it doesn't work right; elements | ||||
| 	of arrays of ptr-to-const are considered const themselves. | ||||
|  | ||||
| Sat Jul 16 12:17:49 1994  Stan Shebs  (shebs@andros.cygnus.com) | ||||
|  | ||||
| 	* mh-cxux: New file, from Bob Rusk (rrusk@mail.csd.harris.com). | ||||
|  | ||||
| Sat Jun  4 17:22:12 1994  Per Bothner  (bothner@kalessin.cygnus.com) | ||||
|  | ||||
| 	* mh-ncrsvr43:  New file from Tom McConnell | ||||
| 	<tmcconne@sedona.intel.com>. | ||||
|  | ||||
| Thu May 19 00:32:11 1994  Jeff Law  (law@snake.cs.utah.edu) | ||||
|  | ||||
| 	* mh-hpux (CC): Add -Wp,-H256000 to avoid "too much defining" | ||||
| 	errors from the HPUX 8 compilers. | ||||
|  | ||||
| Wed May  4 20:14:47 1994  D. V. Henkel-Wallace  (gumby@cygnus.com) | ||||
|  | ||||
| 	* mh-lynxrs6k: set SHELL to /bin/bash | ||||
|  | ||||
| Tue Apr 12 12:38:17 1994  Ian Lance Taylor  (ian@tweedledumb.cygnus.com) | ||||
|  | ||||
| 	* mh-irix4 (CC): Change -XNh1500 to -XNh2000. | ||||
|  | ||||
| Sat Dec 25 20:03:45 1993  Jeffrey A. Law  (law@snake.cs.utah.edu) | ||||
|  | ||||
| 	* mt-hppa: Delete. | ||||
|  | ||||
| Tue Nov 16 22:54:39 1993  Jim Kingdon  (kingdon@lioth.cygnus.com) | ||||
|  | ||||
| 	* mh-a68bsd: Define CC to gcc. | ||||
|  | ||||
| Mon Nov 15 16:56:51 1993  Jim Kingdon  (kingdon@lioth.cygnus.com) | ||||
|  | ||||
| 	* mh-linux: Don't put -static in LDFLAGS.  Add comments. | ||||
|  | ||||
| Mon Nov 15 13:37:58 1993  david d `zoo' zuhn  (zoo@cirdan.cygnus.com) | ||||
|  | ||||
| 	* mh-sysv4 (AR_FLAGS): change from cq to cr | ||||
|  | ||||
| Fri Nov  5 08:12:32 1993  D. V. Henkel-Wallace  (gumby@blues.cygnus.com) | ||||
|  | ||||
| 	* mh-unixware: remove.  It's the same as sysv4, and config.guess | ||||
| 	can't tell the difference.  So don't allow skew. | ||||
|  | ||||
| Wed Oct 20 20:35:14 1993  Jim Kingdon  (kingdon@lioth.cygnus.com) | ||||
|  | ||||
| 	* mh-hp300: Revert yesterday's change, but add comment explaining. | ||||
|  | ||||
| Tue Oct 19 18:58:21 1993  Jim Kingdon  (kingdon@lioth.cygnus.com) | ||||
|  | ||||
| 	* mh-hp300: Don't define CFLAGS to empty.  Why should hp300 be | ||||
| 	different from anything else?  ("gdb doesn't understand the native | ||||
| 	debug format" isn't a good enough answer because we might be using | ||||
| 	gcc). | ||||
|  | ||||
| Tue Oct  5 12:17:40 1993  Peter Schauer  (pes@regent.e-technik.tu-muenchen.de) | ||||
|  | ||||
| 	* mh-alphaosf: Remove, no longer necessary now that gdb knows | ||||
| 	how to handle OSF/1 shared libraries. | ||||
|  | ||||
| Tue Jul  6 11:27:33 1993  Steve Chamberlain  (sac@phydeaux.cygnus.com) | ||||
|  | ||||
| 	* mh-alphaosf: New file. | ||||
|  | ||||
| Thu Jul  1 15:49:33 1993  Jim Kingdon  (kingdon@lioth.cygnus.com) | ||||
|  | ||||
| 	* mh-riscos: New file. | ||||
|  | ||||
| Mon Jun 14 12:03:18 1993  david d `zoo' zuhn  (zoo at rtl.cygnus.com) | ||||
|  | ||||
| 	* mh-aix, mh-aix386, mh-decstation, mh-delta88, mh-hpux, mh-irix4, | ||||
| 	mh-ncr3000, mh-solaris, mh-sysv, mh-sysv4: remove INSTALL=cp line, | ||||
| 	now that we're using install.sh globally | ||||
|  | ||||
| Fri Jun  4 16:09:34 1993  Ian Lance Taylor  (ian@cygnus.com) | ||||
|  | ||||
| 	* mh-sysv4 (INSTALL): Use cp, not /usr/ucb/install. | ||||
|  | ||||
| Thu Apr  8 11:21:52 1993  Ian Lance Taylor  (ian@cygnus.com) | ||||
|  | ||||
| 	* mt-a29k, mt-ebmon29k, mt-os68k, mt-ose68000, mt-ose68k, | ||||
| 	mt-vxworks68, mt-vxworks960: Removed obsolete, unused target | ||||
| 	Makefile fragment files. | ||||
|  | ||||
| Mon Mar  8 15:05:25 1993  Ken Raeburn  (raeburn@cambridge.cygnus.com) | ||||
|  | ||||
| 	* mh-aix386: New file; old mh-aix, plus no-op RANLIB. | ||||
|  | ||||
| Thu Oct  1 13:50:48 1992  david d `zoo' zuhn  (zoo at cirdan.cygnus.com) | ||||
|  | ||||
| 	* mh-solaris: INSTALL is NOT /usr/ucb/install | ||||
|  | ||||
| Mon Aug 24 14:25:35 1992  Ian Lance Taylor  (ian@cygnus.com) | ||||
|  | ||||
| 	* mt-ose68000, mt-ose68k: renamed from mt-OSE*. | ||||
|  | ||||
| Tue Jul 21 02:11:01 1992  D. V. Henkel-Wallace  (gumby@cygnus.com) | ||||
|  | ||||
| 	* mt-OSE68k, mt-680000: new configs. | ||||
|  | ||||
| Thu Jul 16 17:12:09 1992  K. Richard Pixley  (rich@rtl.cygnus.com) | ||||
|  | ||||
| 	* mh-irix4: merged changes from progressive. | ||||
|  | ||||
| Tue Jun  9 23:29:38 1992  Per Bothner  (bothner@rtl.cygnus.com) | ||||
|  | ||||
| 	* Everywhere: Change RANLIB=echo>/dev/null (which confuses | ||||
| 	some shells - and I don't blame them) to RANLIB=true. | ||||
| 	* mh-solaris:  Use /usr/ucb/install for INSTALL. | ||||
|  | ||||
| Sun May 31 14:45:23 1992  Mark Eichin  (eichin at cygnus.com) | ||||
|  | ||||
| 	* mh-solaris2: Add new configuration for Solaris 2 (sysv, no ranlib) | ||||
|  | ||||
| Fri Apr 10 23:10:08 1992  Fred Fish  (fnf@cygnus.com) | ||||
|  | ||||
| 	* mh-ncr3000:  Add new configuration for NCR 3000. | ||||
|  | ||||
| Tue Dec 10 00:10:55 1991  K. Richard Pixley  (rich at rtl.cygnus.com) | ||||
|  | ||||
| 	* ChangeLog: fresh changelog. | ||||
|  | ||||
							
								
								
									
										1994
									
								
								config/acinclude.m4
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										1994
									
								
								config/acinclude.m4
									
									
									
									
									
										Executable file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										12
									
								
								config/mh-a68bsd
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										12
									
								
								config/mh-a68bsd
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,12 @@ | ||||
| RANLIB=true | ||||
|  | ||||
| #None of the Apollo compilers can compile gas or binutils.  The preprocessor | ||||
| # chokes on bfd, the compiler won't let you assign integers to enums, and | ||||
| # other problems.  Defining CC to gcc is a questionable way to say "don't use | ||||
| # the apollo compiler" (the preferred version of GCC could be called cc, | ||||
| # or whatever), but I'm not sure leaving CC as cc is any better... | ||||
|  | ||||
| #CC=cc -A ansi -A runtype,any -A systype,any -U__STDC__ -DNO_STDARG | ||||
| CC=gcc | ||||
|  | ||||
| BISON=yacc | ||||
							
								
								
									
										1
									
								
								config/mh-aix386
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								config/mh-aix386
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1 @@ | ||||
| RANLIB = @: | ||||
							
								
								
									
										4
									
								
								config/mh-aix43
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								config/mh-aix43
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,4 @@ | ||||
| # AIX 4.3 and above requires -X32_64 flag to all ar and nm commands | ||||
| # to handle both 32-bit and 64-bit objects. | ||||
| AR_FOR_TARGET=ar -X32_64 | ||||
| NM_FOR_TARGET=nm -X32_64 | ||||
							
								
								
									
										3
									
								
								config/mh-apollo68
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										3
									
								
								config/mh-apollo68
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,3 @@ | ||||
| HDEFINES = -DUSG | ||||
| RANLIB=true | ||||
| CC= cc -A ansi -A runtype,any -A systype,any -U__STDC__ -DUSG | ||||
							
								
								
									
										1
									
								
								config/mh-armpic
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								config/mh-armpic
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1 @@ | ||||
| PICFLAG=-fPIC | ||||
							
								
								
									
										14
									
								
								config/mh-cxux
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										14
									
								
								config/mh-cxux
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,14 @@ | ||||
| # Configuration for Harris CX/UX 7 (and maybe 6), based on sysv4 configuration. | ||||
|  | ||||
| # Define SYSV as -DSYSV if you are using a System V operating system. | ||||
| SYSV = -DSYSV -DSVR4 | ||||
| RANLIB = true | ||||
|  | ||||
| # C++ debugging is not yet supported under SVR4 (DWARF) | ||||
| CXXFLAGS=-O | ||||
|  | ||||
| # The l flag generates a warning from the SVR4 archiver, remove it. | ||||
| AR_FLAGS = cq | ||||
|  | ||||
| # Under CX/UX, we want to tell the compiler to use ANSI mode. | ||||
| CC=cc -Xa | ||||
							
								
								
									
										6
									
								
								config/mh-cygwin
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								config/mh-cygwin
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,6 @@ | ||||
| EXTRA_TARGET_HOST_ALL_MODULES=all-libtermcap | ||||
| EXTRA_TARGET_HOST_INSTALL_MODULES=install-libtermcap | ||||
|  | ||||
| all-gdb: all-libtermcap | ||||
|  | ||||
| install-gdb: all-libtermcap | ||||
							
								
								
									
										5
									
								
								config/mh-decstation
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								config/mh-decstation
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,5 @@ | ||||
| CC = cc -Wf,-XNg1000 | ||||
|  | ||||
| # for X11, since the native DECwindows include files are really broken when | ||||
| # it comes to function prototypes.   | ||||
| X11_EXTRA_CFLAGS = "-DNeedFunctionPrototypes=0" | ||||
							
								
								
									
										4
									
								
								config/mh-delta88
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								config/mh-delta88
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,4 @@ | ||||
| RANLIB = true | ||||
|  | ||||
|  | ||||
|  | ||||
							
								
								
									
										4
									
								
								config/mh-dgux
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								config/mh-dgux
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,4 @@ | ||||
| HDEFINES=-DHOST_SYS=DGUX_SYS | ||||
| CC=gcc -Wall -ansi -D__using_DGUX | ||||
| RANLIB=true | ||||
|  | ||||
							
								
								
									
										22
									
								
								config/mh-dgux386
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										22
									
								
								config/mh-dgux386
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,22 @@ | ||||
| # from mh-dgux | ||||
| HDEFINES=-DHOST_SYS=DGUX_SYS | ||||
| CC=gcc -Wall -ansi -D__using_DGUX | ||||
| RANLIB = true | ||||
|  | ||||
| # from mh-sysv4 | ||||
| # Define SYSV as -DSYSV if you are using a System V operating system. | ||||
| SYSV = -DSYSV -DSVR4 | ||||
| RANLIB = true | ||||
|  | ||||
| # C++ debugging is not yet supported under SVR4 (DWARF) | ||||
| CXXFLAGS=-O | ||||
|  | ||||
| # The l flag generates a warning from the SVR4 archiver, remove it. | ||||
| AR_FLAGS = cr | ||||
|  | ||||
| X11_EXTRA_LIBS = -lnsl | ||||
|  | ||||
| # from angela | ||||
| # no debugging due to broken compiler, use BSD style timeofday | ||||
| CFLAGS=-O -D_BSD_TIMEOFDAY_FLAVOR | ||||
|  | ||||
							
								
								
									
										4
									
								
								config/mh-djgpp
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								config/mh-djgpp
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,4 @@ | ||||
| # We don't want to use debugging information on DOS.  Unfortunately, | ||||
| # this requires that we set CFLAGS. | ||||
| # This used to set -fno-omit-frame-pointer. | ||||
| CFLAGS=-O2 | ||||
							
								
								
									
										1
									
								
								config/mh-elfalphapic
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								config/mh-elfalphapic
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1 @@ | ||||
| PICFLAG=-fPIC | ||||
							
								
								
									
										13
									
								
								config/mh-hp300
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										13
									
								
								config/mh-hp300
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,13 @@ | ||||
| # Define SYSV as -DSYSV if you are using a System V operating system. | ||||
| SYSV = -DSYSV | ||||
| # Avoid "too much defining" errors from HPUX compiler. | ||||
| CC = cc -Wp,-H256000 | ||||
| # If "ar" in $PATH is GNU ar, the symbol table may need rebuilding. | ||||
| # If it's HP/UX ar, this should be harmless. | ||||
| RANLIB = ar ts | ||||
|  | ||||
| # Native cc can't bootstrap gcc with -g.  Defining CFLAGS here loses (a) | ||||
| # for non-gcc directories, (b) if we are compiling with gcc, not | ||||
| # native cc.  Neither (a) nor (b) has a trivial fix though. | ||||
|  | ||||
| CFLAGS = | ||||
							
								
								
									
										4
									
								
								config/mh-hpux
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								config/mh-hpux
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,4 @@ | ||||
| # Define SYSV as -DSYSV if you are using a System V operating system. | ||||
| CC = cc -Wp,-H256000 | ||||
| SYSV = -DSYSV | ||||
| RANLIB = true | ||||
							
								
								
									
										4
									
								
								config/mh-hpux8
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								config/mh-hpux8
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,4 @@ | ||||
| # Define SYSV as -DSYSV if you are using a System V operating system. | ||||
| CC = cc -Wp,-H256000 | ||||
| SYSV = -DSYSV | ||||
| RANLIB = true | ||||
							
								
								
									
										14
									
								
								config/mh-interix
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										14
									
								
								config/mh-interix
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,14 @@ | ||||
| # The shell may not be in /bin.  | ||||
| SHELL = sh | ||||
| RANLIB = true | ||||
|  | ||||
| # We don't want debugging info in Interix-hosted toolchains. | ||||
| # Accomplish this by overriding CFLAGS. This is also a workaround | ||||
| # for LD crash when building shared libstdc++. | ||||
| CFLAGS=-O2 | ||||
| CXXFLAGS=-O2 | ||||
|  | ||||
| # We also need to override LIBGCC2_DEBUG_CFLAGS so libgcc2 will be | ||||
| # built without debugging information | ||||
|  | ||||
| LIBGCC2_DEBUG_CFLAGS= | ||||
							
								
								
									
										7
									
								
								config/mh-irix4
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										7
									
								
								config/mh-irix4
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,7 @@ | ||||
| # Makefile changes for SGI's running IRIX-4.x. | ||||
| # Tell compiler to use K&R C.  We can't compile under the SGI Ansi | ||||
| # environment.  Also bump switch table size so that cp-parse will | ||||
| # compile.  Bump string length limit so linker builds. | ||||
|  | ||||
| CC = cc -cckr -Wf,-XNg1500 -Wf,-XNk1000 -Wf,-XNh2000 -Wf,-XNl8192 | ||||
| SYSV = -DSYSV | ||||
							
								
								
									
										3
									
								
								config/mh-irix5
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										3
									
								
								config/mh-irix5
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,3 @@ | ||||
| # Makefile changes for SGI's running IRIX-5.x. | ||||
| SYSV = -DSYSV | ||||
| RANLIB = true | ||||
							
								
								
									
										7
									
								
								config/mh-irix6
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										7
									
								
								config/mh-irix6
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,7 @@ | ||||
| # Makefile changes for SGI's running IRIX-6.x. | ||||
| SYSV = -DSYSV | ||||
| RANLIB = true | ||||
| # Specify the ABI, to ensure that all Irix 6 systems will behave the same. | ||||
| # Also, using -32 avoids bugs that exist in the n32/n64 support in some | ||||
| # versions of the SGI compiler. | ||||
| CC = cc -32 | ||||
							
								
								
									
										2
									
								
								config/mh-lynxos
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										2
									
								
								config/mh-lynxos
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,2 @@ | ||||
| # /bin/cc is less than useful for our purposes.  Always use GCC | ||||
| CC = /bin/gcc | ||||
							
								
								
									
										8
									
								
								config/mh-lynxrs6k
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								config/mh-lynxrs6k
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,8 @@ | ||||
| # LynxOS running on the rs6000 doesn't have ranlib | ||||
| RANLIB = true | ||||
|  | ||||
| # /bin/cc is less than useful for our purposes.  Always use GCC | ||||
| CC = /usr/cygnus/progressive/bin/gcc | ||||
|  | ||||
| # /bin/sh is too buggy, so use /bin/bash instead. | ||||
| SHELL = /bin/bash | ||||
							
								
								
									
										1
									
								
								config/mh-m68kpic
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								config/mh-m68kpic
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1 @@ | ||||
| PICFLAG=-fpic | ||||
							
								
								
									
										12
									
								
								config/mh-mingw32
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										12
									
								
								config/mh-mingw32
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,12 @@ | ||||
| # We don't want debugging info in Win32-hosted toolchains. | ||||
| # Accomplish this by overriding CFLAGS. | ||||
| CFLAGS=-O2 | ||||
| CXXFLAGS=-O2 | ||||
|  | ||||
| # We also need to override LIBGCC2_DEBUG_CFLAGS so libgcc2 will be | ||||
| # built without debugging information | ||||
|  | ||||
| LIBGCC2_DEBUG_CFLAGS= | ||||
|  | ||||
| # custom installation rules for mingw32 (append .exe to binaries, etc.) | ||||
| # INSTALL_DOSREL=install-dosrel | ||||
							
								
								
									
										17
									
								
								config/mh-ncr3000
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										17
									
								
								config/mh-ncr3000
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,17 @@ | ||||
| # Host configuration file for an NCR 3000 (i486/SVR4) system. | ||||
|  | ||||
| # The NCR 3000 ships with a MetaWare compiler installed as /bin/cc. | ||||
| # This compiler not only emits obnoxious copyright messages every time | ||||
| # you run it, but it chokes and dies on a whole bunch of GNU source | ||||
| # files.  Default to using the AT&T compiler installed in /usr/ccs/ATT/cc. | ||||
| # Unfortunately though, the AT&T compiler sometimes generates code that | ||||
| # the assembler barfs on if -g is used, so disable it by default as well. | ||||
| CC = /usr/ccs/ATT/cc | ||||
| CFLAGS = | ||||
|  | ||||
| # Define SYSV as -DSYSV if you are using a System V operating system. | ||||
| SYSV = -DSYSV -DSVR4 | ||||
| RANLIB = true | ||||
|  | ||||
| # The l flag generates a warning from the SVR4 archiver, remove it. | ||||
| AR_FLAGS = cq | ||||
							
								
								
									
										9
									
								
								config/mh-ncrsvr43
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										9
									
								
								config/mh-ncrsvr43
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,9 @@ | ||||
| # Host configuration file for an NCR 3000 (i486/SVR43) system. | ||||
|  | ||||
| # The MetaWare compiler will generate a copyright message unless you | ||||
| # turn it off by adding the -Hnocopyr flag. | ||||
| CC = cc -Hnocopyr | ||||
|  | ||||
| # Define SYSV as -DSYSV if you are using a System V operating system. | ||||
| SYSV = -DSYSV -DSVR4 | ||||
| RANLIB = true | ||||
							
								
								
									
										11
									
								
								config/mh-necv4
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										11
									
								
								config/mh-necv4
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,11 @@ | ||||
| # Host Makefile fragment for NEC MIPS SVR4. | ||||
|  | ||||
| # The C compiler on NEC MIPS SVR4 needs bigger tables. | ||||
| CC = cc -ZXNd=5000 -ZXNg=1000 | ||||
|  | ||||
| # Define SYSV as -DSYSV if you are using a System V operating system. | ||||
| SYSV = -DSYSV -DSVR4 | ||||
| RANLIB = true | ||||
|  | ||||
| # NEC -lX11 needs some other libraries. | ||||
| X11_EXTRA_LIBS = -lsocket -lnsl | ||||
							
								
								
									
										1
									
								
								config/mh-papic
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								config/mh-papic
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1 @@ | ||||
| PICFLAG=-fPIC | ||||
							
								
								
									
										1
									
								
								config/mh-ppcpic
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								config/mh-ppcpic
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1 @@ | ||||
| PICFLAG=-fPIC | ||||
							
								
								
									
										15
									
								
								config/mh-riscos
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										15
									
								
								config/mh-riscos
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,15 @@ | ||||
| # This is for a MIPS running RISC/os 4.52C. | ||||
|  | ||||
| # This is needed for GDB, but needs to be in the top-level make because | ||||
| # if a library is compiled with the bsd headers and gets linked with the | ||||
| # sysv system libraries all hell can break loose (e.g. a jmp_buf might be | ||||
| # a different size). | ||||
| # ptrace(2) apparently has problems in the BSD environment.  No workaround is | ||||
| # known except to select the sysv environment.  Could we use /proc instead? | ||||
| # These "sysv environments" and "bsd environments" often end up being a pain. | ||||
| # | ||||
| # This is not part of CFLAGS because perhaps not all C compilers have this | ||||
| # option. | ||||
| CC= cc -systype sysv | ||||
|  | ||||
| RANLIB = true | ||||
							
								
								
									
										10
									
								
								config/mh-sco
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										10
									
								
								config/mh-sco
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,10 @@ | ||||
| # Define SYSV as -DSYSV if you are using a System V operating system. | ||||
| SYSV = -DSYSV | ||||
| RANLIB = true | ||||
| # You may need this if you don't have bison. | ||||
| # BISON = yacc -Sm10400 | ||||
| # The native C compiler botches some simple uses of const.  Unfortunately, | ||||
| # it doesn't defined anything like "__sco__" for us to test for in ansidecl.h. | ||||
| CC = cc -Dconst= | ||||
|  | ||||
| X11_EXTRA_LIBS = -lsocket -lm -lintl -lmalloc | ||||
							
								
								
									
										6
									
								
								config/mh-solaris
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								config/mh-solaris
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,6 @@ | ||||
| # Makefile changes for Suns running Solaris 2 | ||||
|  | ||||
| SYSV = -DSYSV | ||||
| RANLIB = true | ||||
|  | ||||
| X11_EXTRA_LIBS = -lnsl -lsocket | ||||
							
								
								
									
										1
									
								
								config/mh-sparcpic
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								config/mh-sparcpic
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1 @@ | ||||
| PICFLAG=`case "${LIBCFLAGS} ${LIBCXXFLAGS}" in *-fpic* ) echo -fpic ;; * ) echo -fPIC ;; esac` | ||||
							
								
								
									
										3
									
								
								config/mh-sun3
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										3
									
								
								config/mh-sun3
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,3 @@ | ||||
| # Sun's C compiler needs the -J flag to be able to compile cp-parse.c | ||||
| # without overflowing the jump tables (-J says to use a 32 bit table) | ||||
| CC = cc -J | ||||
							
								
								
									
										3
									
								
								config/mh-sysv
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										3
									
								
								config/mh-sysv
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,3 @@ | ||||
| # Define SYSV as -DSYSV if you are using a System V operating system. | ||||
| SYSV = -DSYSV | ||||
| RANLIB = true | ||||
							
								
								
									
										11
									
								
								config/mh-sysv4
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										11
									
								
								config/mh-sysv4
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,11 @@ | ||||
| # Define SYSV as -DSYSV if you are using a System V operating system. | ||||
| SYSV = -DSYSV -DSVR4 | ||||
| RANLIB = true | ||||
|  | ||||
| # C++ debugging is not yet supported under SVR4 (DWARF) | ||||
| CXXFLAGS=-O | ||||
|  | ||||
| # The l flag generates a warning from the SVR4 archiver, remove it. | ||||
| AR_FLAGS = cr | ||||
|  | ||||
| X11_EXTRA_LIBS = -lnsl | ||||
							
								
								
									
										8
									
								
								config/mh-sysv5
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								config/mh-sysv5
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,8 @@ | ||||
| # Define SYSV as -DSYSV if you are using a System V operating system. | ||||
| SYSV = -DSYSV -DSVR4 -DSVR5 | ||||
| RANLIB = true | ||||
|  | ||||
| # The l flag generates a warning from the SVR4 archiver, remove it. | ||||
| AR_FLAGS = cr | ||||
|  | ||||
| X11_EXTRA_LIBS = -lnsl | ||||
							
								
								
									
										2
									
								
								config/mh-vaxult2
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										2
									
								
								config/mh-vaxult2
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,2 @@ | ||||
| # The old BSD pcc isn't up to compiling parts of gdb so use gcc | ||||
| CC = gcc | ||||
							
								
								
									
										1
									
								
								config/mh-x86pic
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								config/mh-x86pic
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1 @@ | ||||
| PICFLAG=-fpic | ||||
							
								
								
									
										157
									
								
								config/mpw-mh-mpw
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										157
									
								
								config/mpw-mh-mpw
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,157 @@ | ||||
| # This is an MPW makefile fragment. | ||||
|  | ||||
| # Since there are a multiplicity of Mac compilers and two different | ||||
| # processors, this file is primarily a library of options for each | ||||
| # compiler.  Somebody else (such as a configure or build script) will | ||||
| # make the actual choice. | ||||
|  | ||||
| # Compiler to use for compiling. | ||||
|  | ||||
| CC_MPW_C = C -d MPW_C -d ALMOST_STDC -d ANSI_PROTOTYPES -d MPW -mc68020 -model far -b -w | ||||
|  | ||||
| CC_SC = SC -d ALMOST_STDC -d ANSI_PROTOTYPES -d MPW -mc68020 -model far -b -i '' -i : | ||||
|  | ||||
| CC_MWC68K = MWC68K -d MPW -enum int -mpw_chars -sym on -w off -mc68020 -model far | ||||
|  | ||||
| CC_PPCC = PPCC -d powerc=1 -d pascal= -d ALMOST_STDC -d ANSI_PROTOTYPES -d MPW -w | ||||
|  | ||||
| CC_MRC = MrC -d powerc=1 -d pascal= -d ALMOST_STDC -d ANSI_PROTOTYPES -d MPW -i '' -i : -jm | ||||
|  | ||||
| CC_SMrC = SMrC -d MPW | ||||
|  | ||||
| # "-mpw_chars" is necessary because GNU sources often mix signed and | ||||
| # unsigned casually. | ||||
| # "-w off" is not a great idea, but CW7 is complaining about enum | ||||
| # assignments. | ||||
| # "-opt global,peep,l4,speed" is sometimes good, and sometimes bad. | ||||
| # We must use {CIncludes} so that MPW tools will work; {MWCIncludes} | ||||
| # defines stdout, islower, etc, in ways that are incompatible with MPW's | ||||
| # runtime.  However, this cannot be done via  -i "{CIncludes}", since | ||||
| # that does not affect how <>-type includes happen; instead, the variable | ||||
| # MWCIncludes must be set to point at {CIncludes}. | ||||
|  | ||||
| CC_MWCPPC = MWCPPC -d MPW -enum int -mpw_chars -sym on -w off | ||||
|  | ||||
| # Note that GCC does *not* wire in a definition of "pascal", so that | ||||
| # it can be handled in another way if desired. | ||||
|  | ||||
| CC_68K_GCC = gC -Dpascal= -DANSI_PROTOTYPES -DMPW | ||||
|  | ||||
| CC_PPC_GCC = gC -Dpowerc=1 -Dpascal= -DANSI_PROTOTYPES -DMPW | ||||
|  | ||||
| # Nothing for the default CFLAGS. | ||||
|  | ||||
| CFLAGS =  | ||||
|  | ||||
| # Tool to use for making libraries/archives. | ||||
|  | ||||
| AR_LIB = Lib | ||||
|  | ||||
| AR_MWLINK68K = MWLink68K -xm library | ||||
|  | ||||
| AR_PPCLINK = PPCLink -xm library | ||||
|  | ||||
| AR_MWLINKPPC = MWLinkPPC -xm library | ||||
|  | ||||
| AR_AR = ar | ||||
|  | ||||
| AR_FLAGS = -o | ||||
|  | ||||
| RANLIB_NULL = null-command | ||||
|  | ||||
| RANLIB_RANLIB = ranlib | ||||
|  | ||||
| # Compiler and/or linker to use for linking. | ||||
|  | ||||
| CC_LD_LINK = Link -w -d -model far {CC_LD_TOOL_FLAGS} | ||||
|  | ||||
| CC_LD_MWLINK68K = MWLink68K -w {CC_LD_TOOL_FLAGS} -sym on -model far | ||||
|  | ||||
| CC_LD_PPCLINK = PPCLink -main __start -outputformat xcoff | ||||
|  | ||||
| CC_LD_MWLINKPPC = MWLinkPPC -w {CC_LD_TOOL_FLAGS} -sym on | ||||
|  | ||||
| CC_LD_GLD = gC | ||||
|  | ||||
| # Extension for linker output. | ||||
|  | ||||
| PROG_EXT_68K = | ||||
|  | ||||
| PROG_EXT_XCOFF = .xcoff | ||||
|  | ||||
| # Nothing for the default LDFLAGS. | ||||
|  | ||||
| LDFLAGS = -w | ||||
|  | ||||
| CC_LD_TOOL_FLAGS = -c 'MPS ' -t MPST | ||||
|  | ||||
| # Libraries to link against. | ||||
|  | ||||
| # It would appear that the math libraries are not | ||||
| # needed except to provide a definition for scalb, | ||||
| # which is called from ldexp, which is referenced | ||||
| # in the m68k opcodes library. | ||||
|  | ||||
| EXTRALIBS_C = \Option-d | ||||
| 	"{CLibraries}"StdClib.o \Option-d | ||||
| 	"{CLibraries}"Math.o \Option-d | ||||
| 	"{CLibraries}"CSANELib.o \Option-d | ||||
| 	"{Libraries}"Stubs.o \Option-d | ||||
| 	"{Libraries}"Runtime.o \Option-d | ||||
| 	"{Libraries}"Interface.o \Option-d | ||||
| 	"{Libraries}"ToolLibs.o | ||||
|  | ||||
| EXTRALIBS_MWC68K = \Option-d | ||||
| 	"{CLibraries}"StdClib.o \Option-d | ||||
| 	"{CLibraries}"Math.o \Option-d | ||||
| 	"{CLibraries}"CSANELib.o \Option-d | ||||
| 	"{Libraries}"Stubs.o \Option-d | ||||
| 	"{Libraries}"Runtime.o \Option-d | ||||
| 	"{Libraries}"Interface.o \Option-d | ||||
| 	"{Libraries}"ToolLibs.o \Option-d | ||||
| 	"{MW68KLibraries}MPW ANSI (4i) C.68K.Lib" | ||||
|  | ||||
| EXTRALIBS_PPC_XCOFF = \Option-d | ||||
| 	"{PPCLibraries}"StdCRuntime.o \Option-d | ||||
| 	"{PPCLibraries}"InterfaceLib.xcoff \Option-d | ||||
| 	"{PPCLibraries}"MathLib.xcoff \Option-d | ||||
| 	"{PPCLibraries}"StdCLib.xcoff \Option-d | ||||
| 	"{PPCLibraries}"PPCToolLibs.o \Option-d | ||||
| 	"{PPCLibraries}"PPCCRuntime.o \Option-d | ||||
| 	"{GCCPPCLibraries}"libgcc.xcoff | ||||
|  | ||||
| EXTRALIBS_PPC = \Option-d | ||||
| 	"{PPCLibraries}"StdCRuntime.o \Option-d | ||||
| 	"{SharedLibraries}"InterfaceLib \Option-d | ||||
| 	"{SharedLibraries}"MathLib \Option-d | ||||
| 	"{SharedLibraries}"StdCLib \Option-d | ||||
| 	"{PPCLibraries}"PPCToolLibs.o \Option-d | ||||
| 	"{PPCLibraries}"PPCCRuntime.o \Option-d | ||||
| 	"{GCCPPCLibraries}"libgcc.xcoff | ||||
|  | ||||
| EXTRALIBS_MWCPPC = \Option-d | ||||
| 	"{MWPPCLibraries}"MWStdCRuntime.Lib \Option-d | ||||
| 	"{MWPPCLibraries}"InterfaceLib \Option-d | ||||
| 	"{MWPPCLibraries}"StdCLib \Option-d | ||||
| 	"{MWPPCLibraries}"MathLib \Option-d | ||||
| 	"{MWPPCLibraries}"PPCToolLibs.o | ||||
|  | ||||
| # Tool to make PEF with, if needed. | ||||
|  | ||||
| MAKEPEF_NULL = null-command | ||||
|  | ||||
| MAKEPEF_PPC = MakePEF | ||||
|  | ||||
| MAKEPEF_FLAGS = \Option-d | ||||
| 	-l InterfaceLib.xcoff=InterfaceLib \Option-d | ||||
| 	-l MathLib.xcoff=MathLib \Option-d | ||||
| 	-l StdCLib.xcoff=StdCLib | ||||
|  | ||||
| MAKEPEF_TOOL_FLAGS = -ft MPST -fc 'MPS ' | ||||
|  | ||||
| # Resource compiler to use. | ||||
|  | ||||
| REZ_68K = Rez | ||||
|  | ||||
| REZ_PPC = Rez -d WANT_CFRG | ||||
|  | ||||
							
								
								
									
										53
									
								
								config/mpw/ChangeLog
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										53
									
								
								config/mpw/ChangeLog
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,53 @@ | ||||
| Tue Nov 26 12:34:12 1996  Stan Shebs  <shebs@andros.cygnus.com> | ||||
|  | ||||
| 	* g-mpw-make.sed: Fix some comments. | ||||
|  | ||||
| Mon Sep 16 14:42:52 1996  Stan Shebs  <shebs@andros.cygnus.com> | ||||
|  | ||||
| 	* g-mpw-make.sed (HLDENV): Edit out all references. | ||||
|  | ||||
| Thu Aug 15 19:49:23 1996  Stan Shebs  <shebs@andros.cygnus.com> | ||||
|  | ||||
| 	* true: New script, identical to mpw-true. | ||||
| 	* g-mpw-make.sed: Add @DASH_C_FLAG@ and @SEGMENT_FLAG()@ | ||||
| 	to the editors for compile commands. | ||||
|  | ||||
| Thu Aug  1 15:01:42 1996  Stan Shebs  <shebs@andros.cygnus.com> | ||||
|  | ||||
| 	* mpw-true, mpw-touch, null-command: New scripts. | ||||
| 	* README: Describe usage in more detail. | ||||
|  | ||||
| Tue Dec 12 14:51:51 1995  Stan Shebs  <shebs@andros.cygnus.com> | ||||
|  | ||||
| 	* g-mpw-make.sed: Don't edit out "version=" occurrences. | ||||
|  | ||||
| Fri Dec  1 11:46:18 1995  Stan Shebs  <shebs@andros.cygnus.com> | ||||
|  | ||||
| 	* g-mpw-make.sed (bindir, libdir): Edit the positions of | ||||
| 	pathname separators to work with other pathnames better. | ||||
|  | ||||
| Tue Nov  7 15:08:07 1995  Stan Shebs  <shebs@andros.cygnus.com> | ||||
|  | ||||
| 	* g-mpw-make.sed: Add comment about Duplicate vs Catenate, | ||||
| 	add additional pattern for editing link-compile commands. | ||||
|  | ||||
| Tue Oct 24 14:28:51 1995  Stan Shebs  <shebs@andros.cygnus.com> | ||||
|  | ||||
| 	* g-mpw-make.sed: Add handling for *.tab.[hc] files. | ||||
| 	(CHILL_FOR_TARGET, CHILL_LIB): Edit out tricky definitions | ||||
| 	of these. | ||||
|  | ||||
| Thu Sep 28 21:05:10 1995  Stan Shebs  <shebs@andros.cygnus.com> | ||||
|  | ||||
| 	* g-mpw-make.sed: New file, generic sed commands to translate | ||||
| 	Unix makefiles into MPW makefile syntax. | ||||
|  | ||||
| Fri Mar 17 11:51:20 1995  Stan Shebs  <shebs@andros.cygnus.com> | ||||
|  | ||||
| 	* README: Clarify instructions. | ||||
| 	* fi: Remove. | ||||
|  | ||||
| Wed Dec 21 15:45:53 1994  Stan Shebs  <shebs@andros.cygnus.com> | ||||
|  | ||||
| 	* MoveIfChange, README, fi, forward-include, open-brace, | ||||
|         tr-7to8-src: New files. | ||||
							
								
								
									
										19
									
								
								config/mpw/MoveIfChange
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								config/mpw/MoveIfChange
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,19 @@ | ||||
| # Rename a file only if it is different from a previously existing | ||||
| # file of the same name.  This is useful for keeping make from doing | ||||
| # too much work if the contents of a file haven't changed. | ||||
|  | ||||
| # This is an MPW translation of the standard GNU sh script move-if-change. | ||||
|  | ||||
| Set exit 0 | ||||
|  | ||||
| If "`exists -f "{2}"`" | ||||
|   Compare "{1}" "{2}" >dev:null | ||||
|   If {status} != 0 | ||||
|     Rename -y "{1}" "{2}" | ||||
|   Else | ||||
|     Echo "{2}" is unchanged | ||||
|     Delete -i -y "{1}" | ||||
|   End | ||||
| Else | ||||
|   Rename -y "{1}" "{2}" | ||||
| End | ||||
							
								
								
									
										23
									
								
								config/mpw/README
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										23
									
								
								config/mpw/README
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,23 @@ | ||||
| This directory contains MPW scripts and related files that are needed to | ||||
| build Cygnus GNU tools for MPW.  The scripts should be somewhere on the | ||||
| command path; our usual practice has been to have a separate directory | ||||
| for the scripts, and put the tools (byacc, flex, and sed at least) there | ||||
| also; then it's easier to drag the support bits around as a group, or to | ||||
| upgrade MPW versions.  The complete package of scripts and tool binaries | ||||
| is usually available as pub/mac/buildtools.cpt.hqx on ftp.cygnus.com. | ||||
|  | ||||
| "tr-7to8-src" is actually the source to an MPW script that transforms | ||||
| sequences like "\Option-d" into the actual 8-bit chars that MPW needs. | ||||
| It's only the source because it can't itself include any 8-bit chars. | ||||
| It *can* be processed into a genuine "tr-7to8" by using itself: | ||||
|  | ||||
| 	tr-7to8 tr-7to8-src | sed -e 's/Src//' >new-tr-7to8 | ||||
|  | ||||
| Use this to verify: | ||||
|  | ||||
| 	compare tr-7to8 new-tr-7to8 | ||||
|  | ||||
| If you don't have a working tr-7to8, then you will have to manually | ||||
| replace all occurrences of "\Option-d" with real Option-d (which looks | ||||
| like a delta), then do similarly with all the other "\Option-..." | ||||
| strings, and then change "\SrcOption-d" into the string "\Option-d". | ||||
							
								
								
									
										3
									
								
								config/mpw/forward-include
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										3
									
								
								config/mpw/forward-include
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,3 @@ | ||||
| Echo '#include' <20>""{1}"<22>" >"{2}".tem | ||||
| MoveIfChange "{2}".tem "{2}" | ||||
|  | ||||
							
								
								
									
										293
									
								
								config/mpw/g-mpw-make.sed
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										293
									
								
								config/mpw/g-mpw-make.sed
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,293 @@ | ||||
| # Sed commands to translate Unix makefiles into MPW makefiles. | ||||
| # These are nominally generic, but work best on the makefiles used | ||||
| # for GNU programs. | ||||
|  | ||||
| # Whack out any commented-out lines that are probably commands; | ||||
| # they can only cause trouble later on. | ||||
| /^#	/d | ||||
|  | ||||
| # Change dependency char. | ||||
| /:$/s/:/ \\Option-f/g | ||||
| /^[^ 	:#][^:]*:/s/\([ 	]*\):\([ 	]*\)/ \\Option-f /g | ||||
|  | ||||
| # Change syntax of Makefile vars. | ||||
| /\$/s/\${\([a-zA-Z0-9_-]*\)}/{\1}/g | ||||
| /\$/s/\$(\([a-zA-Z0-9_-]*\))/{\1}/g | ||||
| / $@/s/ $@/ {Targ}/ | ||||
|  | ||||
| # Double-$ are literals to Unix but not to MPW make. | ||||
| /\$\$/s/\$\$/$/g | ||||
|  | ||||
| # Change pathname syntax. | ||||
| /\//s,\.\./\/\.\./,:::,g | ||||
| /\//s,\.\./,::,g | ||||
| /\.\//s,\./,:,g | ||||
| /\//s,/,:,g | ||||
| # Undo excess changes. | ||||
| /and/s,and:or$,and/or, | ||||
| /and/s,and:or ,and/or , | ||||
| /want/s,want:need,want/need, | ||||
| # Fixing up sed commands. | ||||
| /-e/s_":\([^:]*\):d"_"/\1/d"_g | ||||
| /-e/s_":\([^:]*\):,:\([^:]*\):d"_"/\1/,/\2/d"_g | ||||
|  | ||||
| /=/s/ = \.$/ = :/ | ||||
|  | ||||
| # Make these go away so that later edits not confused. | ||||
| /HLDENV/s/{HLDENV}// | ||||
|  | ||||
| # Comment out any explicit srcdir setting. | ||||
| /srcdir/s/^srcdir/# srcdir/ | ||||
|  | ||||
| /BASEDIR/s/^BASEDIR =.*$/BASEDIR = "{srcroot}"/ | ||||
| /{BASEDIR}:/s/{BASEDIR}:/{BASEDIR}/g | ||||
| /{srcdir}:/s/{srcdir}:/"{srcdir}"/g | ||||
| /"{srcdir}":/s/"{srcdir}":/"{srcdir}"/g | ||||
|  | ||||
| # Tweak some conventions that are backwards for the Mac. | ||||
| /bindir/s/{exec_prefix}:bin/{exec_prefix}bin:/ | ||||
| /libdir/s/{exec_prefix}:lib/{exec_prefix}lib:/ | ||||
|  | ||||
| # Comment out settings of anything set by mpw host config. | ||||
| /CC/s/^CC *=/#CC =/ | ||||
| /CFLAGS/s/^CFLAGS *=/#CFLAGS =/ | ||||
| /AR/s/^AR *=/#AR =/ | ||||
| /AR_FLAGS/s/^AR_FLAGS *=/#AR_FLAGS =/ | ||||
| /RANLIB/s/^RANLIB *=/#RANLIB =/ | ||||
| /CC_LD/s/^CC_LD *=/#CC_LD =/ | ||||
| /LDFLAGS/s/^LDFLAGS *=/#LDFLAGS =/ | ||||
|  | ||||
| # Change -I usages. | ||||
| /-I/s/-I\./-i :/g | ||||
| /-I/s/-I::bfd/-i ::bfd:/g | ||||
| /-I/s/-I::include/-i ::include:/g | ||||
| /-I/s/-I/-i /g | ||||
|  | ||||
| # Change -D usage. | ||||
| /-D/s/\([ =]\)-D\([^ ]*\)/\1-d \2/g | ||||
|  | ||||
| # Change continuation char. | ||||
| /\\$/s/\\$/\\Option-d/ | ||||
|  | ||||
| # Change wildcard char. | ||||
| /\*/s/\*/\\Option-x/g | ||||
|  | ||||
| # Change path of various types of source files.  This rule does not allow | ||||
| # for file names with multiple dots in the name. | ||||
| /\.[chly]/s/\([ 	><=]\)\([-a-zA-Z0-9_${}:"]*\)\.\([chly]\)/\1"{s}"\2.\3/g | ||||
| /\.[chly]/s/^\([-a-zA-Z0-9_${}:"]*\)\.\([chly]\)/"{s}"\1.\2/ | ||||
| # Allow files named *.tab.[ch] as a special case. | ||||
| /\.tab\.[ch]/s/\([ 	><=]\)\([-a-zA-Z0-9_${}:"]*\.tab\)\.\([ch]\)/\1"{s}"\2.\3/g | ||||
| /\.tab\.[ch]/s/^\([-a-zA-Z0-9_${}:"]*\.tab\)\.\([ch]\)/"{s}"\1.\2/ | ||||
| # Fix some overenthusiasms. | ||||
| /{s}/s/"{s}""{srcdir}"/"{srcdir}"/g | ||||
| /{s}/s/"{s}"{\([a-zA-Z0-9_]*\)dir}/"{\1dir}"/g | ||||
| /{s}/s/"{s}"{\([a-zA-Z0-9_]*\)DIR}/"{\1DIR}"/g | ||||
| /{s}/s/"{s}""{\([a-zA-Z0-9_]*\)dir}"/"{\1dir}"/g | ||||
| /{s}/s/"{s}""{\([a-zA-Z0-9_]*\)DIR}"/"{\1DIR}"/g | ||||
| /{s}/s/"{s}":/:/g | ||||
| /{s}/s/^"{s}"//g | ||||
| /{s}/s/"{s}""{s}"/"{s}"/g | ||||
| /{s}/s/"{s}""{srcdir}"/"{s}"/g | ||||
| /{s}/s/"{srcdir}""{s}"/"{s}"/g | ||||
|  | ||||
| # The .def files are also typically source files. | ||||
| /\.def/s/\([ 	><]\)\([-a-zA-Z0-9_${}:"]*\)\.def/\1"{s}"\2.def/g | ||||
| /\.def/s/^\([-a-zA-Z0-9_${}:"]*\)\.def/"{s}"\1.def/g | ||||
|  | ||||
| # Change extension and path of objects. | ||||
| /\.o/s/\([ 	=]\)\([-a-zA-Z0-9_${}:"]*\)\.o/\1"{o}"\2.c.o/g | ||||
| /\.o/s/^\([-a-zA-Z0-9_${}:"]*\)\.o/"{o}"\1.c.o/ | ||||
| # Allow *.tab.o files as a special case of a 2-dot-name file. | ||||
| /\.o/s/\([ 	=]\)\([-a-zA-Z0-9_${}:"]*\)\.tab\.o/\1"{o}"\2.tab.c.o/g | ||||
| /\.o/s/^\([-a-zA-Z0-9_${}:"]*\)\.tab\.o/"{o}"\1.tab.c.o/ | ||||
| # Clean up. | ||||
| /"{o}"/s/"{o}""{o}"/"{o}"/g | ||||
| /"{o}"/s/^"{o}"\([a-zA-Z0-9_]*\)=/\1=/ | ||||
|  | ||||
| # Change extension of libs. | ||||
| /\.a/s/lib\([a-z]*\)\.a/lib\1.o/g | ||||
|  | ||||
| # Remove non-fail option. | ||||
| /-/s/^\([ 	]*\)-/\1/ | ||||
| # Fix overeagernesses - assumes no one-letter commands. | ||||
| /^[ 	]*[a-z] /s/^\([ 	]*\)\([a-z]\) /\1-\2 / | ||||
|  | ||||
| # Remove non-echo option. (watch out for autoconf things) | ||||
| /@/s/^\([ 	]*\)@/\1/ | ||||
|  | ||||
| # Change cp to Duplicate. | ||||
| # Catenate is perhaps more accurate, but the pattern would have to | ||||
| # identify the output file and add a '>' redirection into it. | ||||
| /cp/s/^\([ 	]*\)cp /\1Duplicate -d -y / | ||||
| # Change mv to Rename. | ||||
| /mv/s/^\([ 	]*\)mv /\1Rename -y / | ||||
| /Rename/s/^\([ 	]*\)Rename -y -f/\1Rename -y/ | ||||
| # Change rm to Delete. | ||||
| /rm -rf/s/^\([ 	]*\)rm -rf /\1Delete -i -y / | ||||
| /rm -f/s/^\([ 	]*\)rm -f /\1Delete -i -y / | ||||
| /rm/s/^\([ 	]*\)rm /\1Delete -i -y / | ||||
| # Note that we don't mess with ln - directory-specific scripts | ||||
| # must decide what to do with symlinks. | ||||
| # Change cat to Catenate. | ||||
| /cat/s/^\([ 	]*\)cat /\1Catenate / | ||||
| # Change touch to mpw-touch. | ||||
| /touch/s/^\([ 	]*\)touch /\1mpw-touch / | ||||
| # Change mkdir to NewFolder. | ||||
| /mkdir/s/^\([ 	]*\)mkdir /\1NewFolder / | ||||
| # Change var setting to Set. | ||||
| /=/s/^\([ 	]*\)\([-a-zA-Z0-9_]*\)=\([^;]*\); \\Option-d/\1Set \2 \3/ | ||||
|  | ||||
| # Change tests. | ||||
| /if /s/if \[ *-f \([^ ]*\) ] *; *\\Option-d/If "`Exists "\1"`" != ""/ | ||||
| /if /s/if \[ *-f \([^ ]*\) ] *; *then *\\Option-d/If "`Exists "\1"`" != ""/ | ||||
| /if /s/if \[ ! *-f \([^ ]*\) ] *; *\\Option-d/If "`Exists "\1"`" == ""/ | ||||
| /if /s/if \[ ! *-f \([^ ]*\) ] *; *then \\Option-d/If "`Exists "\1"`" == ""/ | ||||
|  | ||||
| /if /s/if \[ *-d \([^ ]*\) ] *; *\\Option-d/If "`Exists "\1"`" != ""/ | ||||
| /if /s/if \[ *-d \([^ ]*\) ] *; *then *\\Option-d/If "`Exists "\1"`" != ""/ | ||||
| /if /s/if \[ ! *-d \([^ ]*\) ] *; *\\Option-d/If "`Exists "\1"`" == ""/ | ||||
| /if /s/if \[ ! *-d \([^ ]*\) ] *; *then *\\Option-d/If "`Exists "\1"`" == ""/ | ||||
|  | ||||
| /if /s/if \[ -d \([^ ]*\) ] *; then true *; else mkdir \([^ ;]*\) *; fi/If "`Exists "\1"`" != "" NewFolder \2 End If/ | ||||
|  | ||||
| /if /s/if \[ \([^ ]*\) = \([^ ]*\) ] *; *\\Option-d/If "\1" == "\2"/ | ||||
| /if /s/if \[ \([^ ]*\) = \([^ ]*\) ] *; *then *\\Option-d/If "\1" == "\2"/ | ||||
|  | ||||
| /if /s/if \[ \([^ ]*\) != \([^ ]*\) ] *; *\\Option-d/If "\1" != "\2"/ | ||||
| /if /s/if \[ \([^ ]*\) != \([^ ]*\) ] *; *then *\\Option-d/If "\1" != "\2"/ | ||||
|  | ||||
| /if /s/if \[ \([^ ]*\) -eq \([^ ]*\) ] *; *\\Option-d/If "\1" != "\2"/ | ||||
| /if /s/if \[ \([^ ]*\) -eq \([^ ]*\) ] *; *then *\\Option-d/If "\1" != "\2"/ | ||||
|  | ||||
| /^[ 	]*else true$/c\ | ||||
| 	Else\ | ||||
| 		mpw-true\ | ||||
|  | ||||
|  | ||||
| /else/s/^\([ 	]*\)else[ 	]*$/\1Else/ | ||||
| /else/s/^\([ 	]*\)else[; 	]*\\Option-d$/\1Else/ | ||||
|  | ||||
| /^[ 	]*else[ 	]*true[ 	]*$/c\ | ||||
| 	Else\ | ||||
| 		mpw-true | ||||
|  | ||||
| /^[ 	]*else[ 	]*true[; 	]*fi$/c\ | ||||
| 	Else\ | ||||
| 		mpw-true\ | ||||
| 	End If | ||||
|  | ||||
| /fi/s/^\([ 	]*\)fi *$/\1End/ | ||||
| /fi/s/^\([ 	]*\)fi *; *\\Option-d/\1End/ | ||||
|  | ||||
| # Change looping. | ||||
| /for/s/^\([ 	]*\)for \([-a-zA-Z0-9_]*\) in \([^;]*\); *do *\\Option-d/\1For \2 In \3/ | ||||
| /^\([ 	]*\)do *\\Option-d/d | ||||
| /done/s/^\([ 	]*\)done *; *\\Option-d/\1End/ | ||||
| /done/s/^\([ 	]*\)done$/\1End/ | ||||
|  | ||||
| # Trailing semicolons and continued lines are unneeded sh syntax. | ||||
| /; \\Option-d/s/; \\Option-d// | ||||
|  | ||||
| # Change move-if-change to MoveIfChange. | ||||
| /move-if-change/s/\([^ 	]*\)move-if-change/MoveIfChange/g | ||||
|  | ||||
| # Change $(SHELL) to the script name by itself. | ||||
| /SHELL/s/^\([ 	]*\){SHELL} /\1/ | ||||
|  | ||||
| # Change syntax of default rule dependency. | ||||
| /^\.c\.o/s/^\.c\.o \\Option-f$/.c.o \\Option-f .c/ | ||||
|  | ||||
| # Change default rule's action. | ||||
| /{CC} -c/s/{CC} -c \(.*\) \$<$/{CC} @DASH_C_FLAG@ {DepDir}{Default}.c \1 @SEGMENT_FLAG({Default})@ -o {TargDir}{Default}.c.o/ | ||||
|  | ||||
| # This is pretty disgusting, but I can't seem to detect empty rules. | ||||
| /Option-f$/s/Option-f$/Option-f _oldest/g | ||||
|  | ||||
| # Remove -c from explicit compiler calls. (but should not if GCC) | ||||
| # Handle the case of a source file that is "{xxx}"file.c. | ||||
| / -c /s/{\([A-Z_]*\)CC}\(.*\) -c \(.*\)"\([^"]*\)"\([-a-z_]*\)\.c/{\1CC}\2 @DASH_C_FLAG@ \3"\4"\5.c -o "{o}"\5.c.o/ | ||||
| # Handle the case of a source file that is "{xxx}"dir:file.c. | ||||
| / -c /s/{\([A-Z_]*\)CC}\(.*\) -c \(.*\)"\([^"]*\)"\([-a-z_]*\):\([-a-z_]*\)\.c/{\1CC}\2 @DASH_C_FLAG@ \3"\4"\5:\6.c -o "{o}"\6.c.o/ | ||||
|  | ||||
| # Change linking cc to linking sequence. | ||||
| /-o/s/^\([ 	]*\){CC} \(.*\){\([A-Z_]*\)CFLAGS} \(.*\){LDFLAGS} \(.*\)-o \([^ ]*\) \(.*\)$/\1{CC_LD} \2 {\3CFLAGS} \4 {LDFLAGS} \5 -o \6{PROG_EXT} \7\ | ||||
| \1{MAKEPEF} \6{PROG_EXT} -o \6 {MAKEPEF_TOOL_FLAGS} {MAKEPEF_FLAGS}\ | ||||
| \1{REZ} "{s}"\6.r -o \6 -append -d PROG_NAME='"'\6'"' -d VERSION_STRING='"'{version}'"'/ | ||||
| /-o/s/^\([ 	]*\){CC} \(.*\){\([A-Z_]*\)CFLAGS} \(.*\)-o \([^ ]*\) \(.*\){LDFLAGS} \(.*\)$/\1{CC_LD} \2 {\3CFLAGS} \4 {LDFLAGS} \6 -o \5{PROG_EXT} \7\ | ||||
| \1{MAKEPEF} \5{PROG_EXT} -o \5 {MAKEPEF_TOOL_FLAGS} {MAKEPEF_FLAGS}\ | ||||
| \1{REZ} "{s}"\5.r -o \5 -append -d PROG_NAME='"'\5'"' -d VERSION_STRING='"'{version}'"'/ | ||||
| /-o/s/^\([ 	]*\){HOST_CC} \(.*\)-o \([^ ]*\) \(.*\)$/\1{HOST_CC_LD} \2 -o \3{PROG_EXT} \4\ | ||||
| \1{MAKEPEF} \3{PROG_EXT} -o \3 {MAKEPEF_TOOL_FLAGS} {MAKEPEF_FLAGS}\ | ||||
| \1{REZ} "{s}"\3.r -o \3 -append -d PROG_NAME='"'\3'"' -d VERSION_STRING='"'{version}'"'/ | ||||
|  | ||||
| # Comment out .NOEXPORT rules. | ||||
| /\.NOEXPORT/s/^\.NOEXPORT/#\.NOEXPORT/ | ||||
| # Comment out .PHONY rules. | ||||
| /\.PHONY/s/^\.PHONY/#\.PHONY/ | ||||
| # Comment out .PRECIOUS rules. | ||||
| /\.PRECIOUS/s/^\.PRECIOUS/#\.PRECIOUS/ | ||||
| # Comment out .SUFFIXES rules. | ||||
| /\.SUFFIXES/s/^\.SUFFIXES/#\.SUFFIXES/ | ||||
|  | ||||
| # Set the install program appropriately. | ||||
| /INSTALL/s/^INSTALL *= *`.*`:install.sh -c/INSTALL = Duplicate -y/ | ||||
|  | ||||
| # Don't try to decide whether to use the tree's own tools. | ||||
| /bison/s/`.*bison:bison.*`/bison -y/ | ||||
| /byacc/s/`.*byacc:byacc.*`/byacc/ | ||||
| /flex/s/`.*flex:flex.*`/flex/ | ||||
|  | ||||
| # Turn transformed C comments in echo commands back into comments. | ||||
| /echo/s,echo '\(.*\):\\Option-x\(.*\)\\Option-x:\(.*\)',echo '\1/*\2*/\3', | ||||
|  | ||||
| # Whack out various clever expressions that search for tools, since | ||||
| # the clever code is too /bin/sh specific. | ||||
|  | ||||
| /^AR_FOR_TARGET = `/,/`$/c\ | ||||
| AR_FOR_TARGET = ::binutils:ar\ | ||||
|  | ||||
|  | ||||
| /^RANLIB_FOR_TARGET = `/,/`$/c\ | ||||
| RANLIB_FOR_TARGET = ::binutils:ranlib\ | ||||
|  | ||||
|  | ||||
| /^RANLIB_TEST_FOR_TARGET = /,/ranlib ] )$/c\ | ||||
| RANLIB_TEST_FOR_TARGET = \ | ||||
|  | ||||
|  | ||||
| /^EXPECT = `/,/`$/c\ | ||||
| EXPECT = \ | ||||
|  | ||||
|  | ||||
| /^RUNTEST = `/,/`$/c\ | ||||
| RUNTEST = \ | ||||
|  | ||||
|  | ||||
| /^CC_FOR_TARGET = `/,/`$/c\ | ||||
| CC_FOR_TARGET = \ | ||||
|  | ||||
|  | ||||
| /^CXX_FOR_TARGET = `/,/`$/c\ | ||||
| CXX_FOR_TARGET = \ | ||||
|  | ||||
|  | ||||
| /^CHILL_FOR_TARGET = `/,/`$/c\ | ||||
| CHILL_FOR_TARGET = \ | ||||
|  | ||||
|  | ||||
| /^CHILL_LIB = `/,/`$/c\ | ||||
| CHILL_LIB = \ | ||||
|  | ||||
| /sanit/s/{start-sanit...-[a-z0-9]*}// | ||||
| /sanit/s/{end-sanit...-[a-z0-9]*}// | ||||
|  | ||||
| # Add standard defines and default rules. | ||||
| /^# srcdir/a\ | ||||
| \ | ||||
| s = "{srcdir}"\ | ||||
| \ | ||||
| o = :\ | ||||
| \ | ||||
| "{o}" \\Option-f : "{s}" | ||||
|  | ||||
							
								
								
									
										7
									
								
								config/mpw/mpw-touch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										7
									
								
								config/mpw/mpw-touch
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,7 @@ | ||||
| # "Touch" command. | ||||
|  | ||||
| If "`Exists "{1}"`" != "" | ||||
| 	SetFile -m . "{1}" | ||||
| Else | ||||
| 	Echo ' ' > "{1}" | ||||
| End If | ||||
							
								
								
									
										1
									
								
								config/mpw/mpw-true
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								config/mpw/mpw-true
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1 @@ | ||||
| Exit 0 | ||||
							
								
								
									
										1
									
								
								config/mpw/null-command
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								config/mpw/null-command
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1 @@ | ||||
| # This command does nothing. | ||||
							
								
								
									
										4
									
								
								config/mpw/open-brace
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								config/mpw/open-brace
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,4 @@ | ||||
| # MPW makefiles seem not to have any way to get a literal open | ||||
| # brace into a rule anywhere, so this does the job. | ||||
|  | ||||
| Echo '{' | ||||
							
								
								
									
										9
									
								
								config/mpw/tr-7to8-src
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										9
									
								
								config/mpw/tr-7to8-src
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,9 @@ | ||||
| StreamEdit -e \Option-d | ||||
|   '/\Option-x/ \Option-d | ||||
|     Replace /\Option-d\SrcOption-d/ "\Option-d\Option-d" -c \Option-5 ; \Option-d | ||||
|     Replace /\Option-d\SrcOption-f/ "\Option-d\Option-f" -c \Option-5 ; \Option-d | ||||
| 	Replace /\Option-d\SrcOption-8/ "\Option-d\Option-8" -c \Option-5 ; \Option-d | ||||
| 	Replace /\Option-d\SrcOption-5/ "\Option-d\Option-5" -c \Option-5 ; \Option-d | ||||
| 	Replace /\Option-d\SrcOption-x/ "\Option-d\Option-x" -c \Option-5 ; \Option-d | ||||
| 	Replace /\Option-d\SrcOption-r/ "\Option-d\Option-r" -c \Option-5'  \Option-d | ||||
|   "{1}" | ||||
							
								
								
									
										1
									
								
								config/mpw/true
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								config/mpw/true
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1 @@ | ||||
| Exit 0 | ||||
							
								
								
									
										1
									
								
								config/mt-armpic
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								config/mt-armpic
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1 @@ | ||||
| PICFLAG_FOR_TARGET=-fPIC | ||||
							
								
								
									
										4
									
								
								config/mt-d30v
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								config/mt-d30v
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,4 @@ | ||||
| # Build libraries optimizing for space, not speed. | ||||
| # Turn off warnings about symbols named the same as registers | ||||
|  CFLAGS_FOR_TARGET = -g -Os -Wa,-C | ||||
|  CXXFLAGS_FOR_TARGET = -g -Os -Wa,-C | ||||
							
								
								
									
										1
									
								
								config/mt-elfalphapic
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								config/mt-elfalphapic
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1 @@ | ||||
| PICFLAG_FOR_TARGET=-fPIC | ||||
							
								
								
									
										2
									
								
								config/mt-linux
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										2
									
								
								config/mt-linux
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,2 @@ | ||||
| # When using glibc 2 on Linux we must always use vtable thunks. | ||||
| CXXFLAGS_FOR_TARGET = $(CXXFLAGS) -fvtable-thunks -D_GNU_SOURCE | ||||
							
								
								
									
										1
									
								
								config/mt-m68kpic
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								config/mt-m68kpic
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1 @@ | ||||
| PICFLAG_FOR_TARGET=-fpic | ||||
							
								
								
									
										1
									
								
								config/mt-netware
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								config/mt-netware
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1 @@ | ||||
| GDB_NLM_DEPS = all-gcc all-ld | ||||
							
								
								
									
										3
									
								
								config/mt-ospace
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										3
									
								
								config/mt-ospace
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,3 @@ | ||||
| # Build libraries optimizing for space, not speed. | ||||
|  CFLAGS_FOR_TARGET = -g -Os | ||||
|  CXXFLAGS_FOR_TARGET = -g -Os | ||||
							
								
								
									
										1
									
								
								config/mt-papic
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								config/mt-papic
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1 @@ | ||||
| PICFLAG_FOR_TARGET=-fPIC | ||||
							
								
								
									
										1
									
								
								config/mt-ppcpic
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								config/mt-ppcpic
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1 @@ | ||||
| PICFLAG_FOR_TARGET=-fPIC | ||||
							
								
								
									
										1
									
								
								config/mt-sparcpic
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								config/mt-sparcpic
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1 @@ | ||||
| PICFLAG_FOR_TARGET=`case "${LIBCFLAGS} ${LIBCXXFLAGS}" in *-fpic* ) echo -fpic ;; * ) echo -fPIC ;; esac` | ||||
							
								
								
									
										4
									
								
								config/mt-v810
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								config/mt-v810
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,4 @@ | ||||
| CC_FOR_TARGET = ca732 -ansi | ||||
| AS_FOR_TARGET = as732 | ||||
| AR_FOR_TARGET = ar732 | ||||
| RANLIB_FOR_TARGET = true | ||||
							
								
								
									
										1
									
								
								config/mt-x86pic
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								config/mt-x86pic
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1 @@ | ||||
| PICFLAG_FOR_TARGET=-fpic | ||||
							
								
								
									
										17
									
								
								configure.bat
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										17
									
								
								configure.bat
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,17 @@ | ||||
| @echo off | ||||
|  | ||||
| chdir libiberty | ||||
| call configure %1 %2 %3 %4 %5 %6 %7 %8 %9 | ||||
| chdir ..\bfd | ||||
| call configure %1 %2 %3 %4 %5 %6 %7 %8 %9 | ||||
| chdir ..\opcodes | ||||
| call configure %1 %2 %3 %4 %5 %6 %7 %8 %9 | ||||
| chdir ..\gprof | ||||
| call configure %1 %2 %3 %4 %5 %6 %7 %8 %9 | ||||
| chdir ..\binutils | ||||
| call configure %1 %2 %3 %4 %5 %6 %7 %8 %9 | ||||
| chdir ..\gas | ||||
| call configure %1 %2 %3 %4 %5 %6 %7 %8 %9 | ||||
| chdir ..\ld | ||||
| call configure %1 %2 %3 %4 %5 %6 %7 %8 %9 | ||||
| chdir .. | ||||
							
								
								
									
										1184
									
								
								configure.in
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1184
									
								
								configure.in
									
									
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										507
									
								
								etc/ChangeLog
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										507
									
								
								etc/ChangeLog
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,507 @@ | ||||
| 1999-04-01  Jim Blandy  <jimb@zwingli.cygnus.com> | ||||
|  | ||||
| 	* add-log.el, add-log.vi: New files. | ||||
|  | ||||
| Wed Jan 20 01:33:50 1999  Angela Marie Thomas (angela@cygnus.com) | ||||
|  | ||||
| 	* comp-tools-verify: Remove some checks that are no longer valid. | ||||
|  | ||||
| 1998-12-03  Nick Clifton  <nickc@cygnus.com> | ||||
|  | ||||
| 	* targetdoc/fr30.texi: New document. | ||||
| 	 | ||||
| Thu Oct  1 21:15:59 1998  Angela Marie Thomas (angela@cygnus.com) | ||||
|  | ||||
| 	* comp-tools-fix, cross-tools-fix: Replace /usr/include | ||||
| 	with ${FIXINCDIR}. | ||||
|  | ||||
| Tue Aug 11 19:22:11 1998  Doug Evans  <devans@canuck.cygnus.com> | ||||
|  | ||||
| 	* make-rel-sym-tree (version): Update calculation. | ||||
|  | ||||
| Fri Jun 12 21:34:01 1998  Ian Lance Taylor  <ian@cygnus.com> | ||||
|  | ||||
| 	* configure.texi: Various additions. | ||||
| 	* Makefile.in (TEXI2HTML, DVIPS): New variables. | ||||
| 	(standards.ps): New target. | ||||
| 	(configure.dvi): Copy .tin files in as well. | ||||
| 	(configure.ps, configure.html): New targets. | ||||
| 	(clean): Remove configdev.jpg and configbuild.jpg. | ||||
| 	* configdev.fig: New file. | ||||
| 	* configdev.ein: New file (EPS version of configdev.fig). | ||||
| 	* configdev.jin: New file (JPEG version of configdev.fig). | ||||
| 	* configbuild.fig: New file. | ||||
| 	* configbuild.ein: New file (EPS version of configbuild.fig). | ||||
| 	* configbuild.jin: New file (JPEG version of configbuild.fig). | ||||
|  | ||||
| Wed Jun 10 14:41:25 1998  Ian Lance Taylor  <ian@cygnus.com> | ||||
|  | ||||
| 	* configure.texi: New file. | ||||
| 	* configdev.tin: New file. | ||||
| 	* configbuild.tin: New file. | ||||
| 	* Makefile.in (MAKEINFO): Use makeinfo from texinfo directory if | ||||
| 	it exists. | ||||
| 	(TEXI2DVI): Likewise for texi2dvi. | ||||
| 	(INFOFILES): Add configure.info. | ||||
| 	(DVIFILES): Add configure.dvi. | ||||
| 	(info): Only build info files if the source files exist. | ||||
| 	(install-info): Only install info files if they exist. | ||||
| 	(dvi): Only build DVI files if the sources files exist. | ||||
| 	(configure.info): New target. | ||||
| 	(configure.dvi): New target. | ||||
| 	(clean): Remove configdev and configbuild derived files. | ||||
|  | ||||
| 	Remove obsolete documentation. | ||||
| 	* intro.texi: Remove. | ||||
| 	* install.texi: Remove. | ||||
| 	* config-names.texi: Remove. | ||||
| 	* screen1.eps: Remove. | ||||
| 	* screen1.obj: Remove. | ||||
| 	* screen2.eps: Remove. | ||||
| 	* screen2.obj: Remove. | ||||
| 	* Makefile.in: Remove references to the above. | ||||
|  | ||||
| Thu May 21 14:34:51 1998  Nick Clifton  <nickc@cygnus.com> | ||||
|  | ||||
| 	* targetdoc/arm-interwork.texi: Add note about ignoring linker | ||||
| 	warning message when using --support-old-code. | ||||
|  | ||||
| Mon May 18 14:27:37 1998  Angela Marie Thomas (angela@cygnus.com) | ||||
|  | ||||
| 	* Install.in, comp-tools-fix, comp-tools-verify, cross-tools-fix: | ||||
| 	Use $GCCvn rather than substitute everywhere. | ||||
|  | ||||
| Thu May 14 14:43:10 1998  Nick Clifton  <nickc@cygnus.com> | ||||
|  | ||||
| 	* targetdoc/arm-interwork.texi: Document dlltool support of | ||||
| 	interworking.  | ||||
|  | ||||
| Thu May  7 16:49:38 1998  Jason Molenda  (crash@bugshack.cygnus.com) | ||||
|  | ||||
| 	* Install.in: Remove references to TCL_LIBRARY, TK_LIBRARY, | ||||
| 	and GDBTK_FILENAME. | ||||
|  | ||||
| Wed Apr  1 17:11:44 1998  Nick Clifton  <nickc@cygnus.com> | ||||
|  | ||||
| 	* targetdoc/arm-interwork.texi: Document ARM/thumb interworking.  | ||||
|  | ||||
| Tue Mar 31 15:28:20 1998  Ian Lance Taylor  <ian@cygnus.com> | ||||
|  | ||||
| 	* standards.texi, make-stds.texi: Update to current FSF versions. | ||||
| 	* Makefile.in (standards.info): Depend upon make-std.texi. | ||||
|  | ||||
| Tue Mar 24 16:13:26 1998  Stu Grossman  <grossman@bhuna.cygnus.co.uk> | ||||
|  | ||||
| 	* configure:  Regenerate with autoconf 2.12.1 to fix shell issues | ||||
| 	for NT native builds.  | ||||
|  | ||||
| Mon Mar  9 16:41:04 1998  Doug Evans  <devans@canuck.cygnus.com> | ||||
|  | ||||
| 	* make-rel-sym-tree (binprogs): Add objcopy. | ||||
|  | ||||
| Tue Feb 24 18:11:58 1998  Doug Evans  <devans@canuck.cygnus.com> | ||||
|  | ||||
| 	* make-rel-sym-tree: as.new -> as-new, ld.new -> ld-new | ||||
| 	nm.new -> nm-new.  Make symlinks to crt*.o. | ||||
|  | ||||
| Fri Nov 21 12:54:58 1997  Manfred Hollstein <manfred@s-direktnet.de> | ||||
|  | ||||
| 	* Makefile.in: Add --no-split argument to avoid creating files | ||||
| 	with names longer than 14 characters. | ||||
|  | ||||
| Thu Sep 25 13:13:11 1997  Jason Molenda  (crash@pern.cygnus.com) | ||||
|  | ||||
| 	* intro.texi: Add closing ifset. | ||||
|  | ||||
| Mon Sep  1 10:31:32 1997  Angela Marie Thomas (angela@cygnus.com) | ||||
|  | ||||
| 	* Install.in: Move setting HOST and TARGET to the beginning | ||||
| 	of the file for editing convenience. | ||||
|  | ||||
| Mon Sep  1 10:28:37 1997  Angela Marie Thomas (angela@cygnus.com) | ||||
|  | ||||
| 	* Install.in.: More friendly options/messages when extracting | ||||
| 	from a file instead of a tape device. | ||||
|  | ||||
| Tue Jun 17 15:50:23 1997  Angela Marie Thomas (angela@cygnus.com) | ||||
|  | ||||
| 	* Install.in: Add /usr/bsd to PATH for Irix (home of compress) | ||||
|  | ||||
| Thu Jun 12 13:47:00 1997  Angela Marie Thomas (angela@cygnus.com) | ||||
|  | ||||
|         * Install.in (show_exec_prefix_msg): fix quoting | ||||
|  | ||||
| Wed Jun  4 15:31:43 1997  Jason Molenda  (crash@godzilla.cygnus.co.jp) | ||||
|  | ||||
| 	* rebuilding.texi: Removed. | ||||
|  | ||||
| Sat May 24 18:02:20 1997  Angela Marie Thomas (angela@cygnus.com) | ||||
|  | ||||
| 	* cross-tools-fix:  Remove host check since it doesn't matter | ||||
| 	for this case. | ||||
| 	* Install.in (guess_system): clean up more unused hosts. | ||||
| 	* Install.in, cross-tools-fix, comp-tools-fix, comp-tools-verify: | ||||
| 	Hack for host check to not warn the user for certain cases. | ||||
|  | ||||
| Fri May 23 23:46:10 1997  Angela Marie Thomas (angela@cygnus.com) | ||||
|  | ||||
| 	* subst-strings: Remove a lot of unused code | ||||
| 	* Install.in: Remove reference to TAPEdflt, use variables instead of | ||||
| 	string substitution when able. | ||||
|  | ||||
| Fri Apr 11 17:25:52 1997  Ian Lance Taylor  <ian@cygnus.com> | ||||
|  | ||||
| 	* configure.in: Change file named in AC_INIT to Makefile.in. | ||||
| 	* configure: Rebuild. | ||||
|  | ||||
| Fri Apr 11 18:12:42 1997  Jason Molenda  (crash@godzilla.cygnus.co.jp) | ||||
|  | ||||
| 	* Install.in (guess_system): Back out change to INSTALLHOST to | ||||
| 	call all IRIX systems "mips-sgi-irix4" | ||||
|  | ||||
| 	* Makefile.in: Remove references to configure.texi and cfg-paper.texi. | ||||
|  | ||||
| Thu Apr 10 23:26:45 1997  Jason Molenda  (crash@godzilla.cygnus.co.jp) | ||||
|  | ||||
| 	* srctree.texi, emacs-relnotes.texi, cfg-paper.texi: Remove. | ||||
| 	* Install.in: Remove Ultrix-specific hacks. | ||||
| 	Update Cygnus phone numbers. | ||||
| 	(guess_system): Remove some old systems (Ultrix, OSF1 v1 & 2, | ||||
| 	m68k-HPUX, m68k SunOS, etc.) | ||||
| 	(show_gnu_root_msg): Remove. | ||||
| 	Removed all the remove option code. | ||||
|  | ||||
| Thu Apr 10 23:23:33 1997  Jason Molenda  (crash@godzilla.cygnus.co.jp) | ||||
|  | ||||
| 	* configure.man, configure.texi: Remote. | ||||
|  | ||||
| Mon Apr  7 18:15:00 1997  Brendan Kehoe <brendan@cygnus.com> | ||||
|  | ||||
|         * Fix the version string for OSF1 4.0 to recognize either | ||||
|         V4.* or X4.* | ||||
|  | ||||
| Mon Apr  7 15:34:47 1997  Ian Lance Taylor  <ian@cygnus.com> | ||||
|  | ||||
| 	* standards.texi, make-stds.texi: Update to current FSF versions. | ||||
|  | ||||
| Tue Nov 19 15:36:14 1996  Doug Evans  <dje@canuck.cygnus.com> | ||||
|  | ||||
| 	* make-rel-sym-tree: New file. | ||||
|  | ||||
| Wed Oct 23 00:34:07 1996  Angela Marie Thomas (angela@cygnus.com) | ||||
|  | ||||
| 	* Lots of patches from progressive... | ||||
|  	* Install.in: restore DDOPTS for AIX 4.x | ||||
|  	* Install.in, subst-strings: add case for DG Aviion | ||||
|  	* subst-strings: fix typo in INSTALLdir var setting | ||||
|  	* comp-tools-verify: set SHLIB_PATH for shared libs | ||||
|  	* Install.in, subst-strings:  add case for solaris2.5 | ||||
|  	* Install.in: fix regression for hppa1.1 check | ||||
|  	* comp-tools-fix: set LD_LIBRARY_PATH | ||||
|  	* comp-tools-fix: If fixincludes fixes /usr/include/limits.h, | ||||
|  	install it as syslimits.h. | ||||
|  | ||||
| Wed Oct 16 19:20:42 1996  Michael Meissner  <meissner@tiktok.cygnus.com> | ||||
|  | ||||
| 	* Install.in (guess_system): Treat powerpc-ibm-aix4.1 the same as | ||||
| 	rs6000-ibm-aix4.1, since the compiler now uses common mode by | ||||
| 	default. | ||||
|  | ||||
| Wed Oct  2 15:39:07 1996  Jason Molenda  (crash@godzilla.cygnus.co.jp) | ||||
|  | ||||
| 	* configure.in (AC_PROG_INSTALL): Added. | ||||
| 	* Makefile.in (distclean): Remove config.cache. | ||||
|  | ||||
| Wed Oct  2 14:33:58 1996  Jason Molenda  (crash@godzilla.cygnus.co.jp) | ||||
|  | ||||
| 	* configure.in: Switch to autoconf configure.in. | ||||
| 	* configure: New. | ||||
| 	* Makefile.in: Use autoconf-substituted values. | ||||
|  | ||||
| Tue Jun 25 18:56:08 1996  Jason Molenda  (crash@godzilla.cygnus.co.jp) | ||||
|  | ||||
| 	* Makefile.in (datadir): Changed to $(prefix)/share. | ||||
|  | ||||
| Fri Mar 29 11:38:01 1996  J.T. Conklin  (jtc@lisa.cygnus.com) | ||||
|  | ||||
| 	* configure.man: Changed to be recognized by catman -w on Solaris. | ||||
|  | ||||
| Wed Dec  6 15:40:28 1995  Doug Evans  <dje@canuck.cygnus.com> | ||||
|  | ||||
| 	* comp-tools-fix (fixincludes): Define FIXPROTO_DEFINES from | ||||
| 	.../install-tools/fixproto-defines. | ||||
|  | ||||
| Sun Nov 12 19:31:27 1995  Jason Molenda  (crash@phydeaux.cygnus.com) | ||||
|  | ||||
| 	* comp-tools-verify (verify_cxx_initializers): delete argv, | ||||
| 	argc declarations, add -static to compile line. | ||||
| 	(verify_cxx_hello_world): delete argv, argc declarations, add | ||||
| 	-static to compile line. | ||||
|  | ||||
| Wed Sep 20 13:21:52 1995  Ian Lance Taylor  <ian@cygnus.com> | ||||
|  | ||||
| 	* Makefile.in (maintainer-clean): New target, synonym for | ||||
| 	realclean. | ||||
|  | ||||
| Mon Aug 28 17:25:49 1995  Jason Molenda  (crash@phydeaux.cygnus.com) | ||||
|  | ||||
| 	* Install.in (PATH):  add /usr/ucb to $PATH (for SunOS 4.1.x). | ||||
|  | ||||
| Tue Aug 15 21:51:58 1995  Jason Molenda  (crash@phydeaux.cygnus.com) | ||||
|  | ||||
| 	* Install.in (guess_system): Match OSF/1 v3.x as the same as  | ||||
|         v2.x--v2.x binaries are upward compatible. | ||||
|  | ||||
| Tue Aug 15 21:46:54 1995  Jason Molenda  (crash@phydeaux.cygnus.com) | ||||
|  | ||||
| 	* Install.in (guess_system): recognize HP 9000/800 systems as the | ||||
| 	same as HP 9000/700 systems. | ||||
|  | ||||
| Tue Aug  8 13:11:56 1995  Brendan Kehoe  <brendan@lisa.cygnus.com> | ||||
|  | ||||
| 	* Install.in: For emacs, run show_emacs_alternate_msg and exit. | ||||
| 	(show_emacs_alternate_msg): New message saying how emacs can't be | ||||
| 	installed in an alternate prefix. | ||||
|  | ||||
| Thu Jun  8 00:42:56 1995  Angela Marie Thomas  <angela@cirdan.cygnus.com> | ||||
|  | ||||
|         * subst-strings: change du commands to $BINDIR/. & $SRCDIR/. just | ||||
|         in case they are symlinks. | ||||
|  | ||||
| Tue Apr 18 14:23:10 1995  J.T. Conklin  <jtc@rtl.cygnus.com> | ||||
|  | ||||
| 	* cdk-fix: Extracted table of targets that don't need their | ||||
| 	  headers fixed from gcc's configure script. | ||||
|  | ||||
| 	* cdk-fix, cdk-verify: Use ${HOST} instead of ||HOSTstr|| | ||||
|  | ||||
| 	* cdk-fix, cdk-verify: New files, install script fragments used | ||||
| 	  for Cygnus Developer's Kit. | ||||
|  | ||||
| 	* Install.in (do_mkdir): New function. | ||||
|  | ||||
| 	* Install.in: Added support for --with and --without options. | ||||
| 	  Changed so that tape commands are not run when extracting  | ||||
| 	  from a file. | ||||
| 	  (do_mt): Changed to take only one argument. | ||||
|  | ||||
| Wed Mar 29 11:16:38 1995  Jason Molenda (crash@phydeaux.cygnus.com) | ||||
|  | ||||
| 	* Install.in: catch UNAME==alpha-dec-osf2.x and correct entry for | ||||
| 	alpha-dec-osf1.x | ||||
| 	 | ||||
| Fri Jan 27 12:04:29 1995  J.T. Conklin  <jtc@rtl.cygnus.com> | ||||
|  | ||||
| 	* subst-strings (mips-sgi-irix5): New entry in table. | ||||
|  | ||||
| Thu Jan 19 12:15:44 1995  J.T. Conklin  <jtc@rtl.cygnus.com> | ||||
|  | ||||
| 	* Install.in: Major rewrite, bundle dependent code (for example, | ||||
| 	  fixincludes for comp-tools) will be inserted into the Install | ||||
| 	  script when it is generated. | ||||
|  | ||||
| Tue Jan 17 16:51:32 1995  Ian Lance Taylor  <ian@sanguine.cygnus.com> | ||||
|  | ||||
| 	* Makefile.in (Makefile): Rebuild using $(SHELL). | ||||
|  | ||||
| Thu Nov  3 19:30:33 1994  Ken Raeburn  <raeburn@cujo.cygnus.com> | ||||
|  | ||||
| 	* Makefile.in (install-info): Depend on info. | ||||
|  | ||||
| Fri Aug 19 16:16:38 1994  Jason Molenda     (crash@phydeaux.cygnus.com) | ||||
|  | ||||
| 	* Install.in: set $FIX_HEADER so fixproto can find fix-header. | ||||
|  | ||||
| Fri May  6 16:18:58 1994  Jason Molenda     (crash@sendai.cygnus.com) | ||||
|  | ||||
| 	* Makefile.in (install-info): add a semicolon in the if statement. | ||||
|  | ||||
| Fri Apr 29 16:56:07 1994  David J. Mackenzie  (djm@rtl.cygnus.com) | ||||
|  | ||||
| 	* cfg-paper.texi: Update some outdated information. | ||||
|  | ||||
| 	* Makefile.in (install-info): Pass file, not directory, as last | ||||
| 	arg to INSTALL_DATA. | ||||
| 	(uninstall): New target. | ||||
|  | ||||
| Thu Apr 28 14:42:22 1994  David J. Mackenzie  (djm@rtl.cygnus.com) | ||||
|  | ||||
| 	* configure.texi: Comment out @smallbook. | ||||
|  | ||||
| 	* Makefile.in: Define TEXI2DVI and TEXIDIR, and use the latter. | ||||
| 	Remove info files in realclean, not clean, per coding standards. | ||||
| 	Remove TeX output in clean. | ||||
|  | ||||
| Tue Apr 26 17:18:03 1994  Jason Molenda (crash@sendai.cygnus.com) | ||||
|  | ||||
|         * Install.in:  fixincludes output is actually put in fixincludes.log, | ||||
|         but echo'ed messages claim it is fixinc.log.  This is the same | ||||
| 	messages as I logged in March 4 1994, but for some reason we found | ||||
| 	the change hadn't been done.  I'll have to dig through the logs | ||||
| 	and find out what I really did do that day. :) | ||||
|  | ||||
| Mon Apr 25 20:28:19 1994  Jason Molenda   (crash@sendai.cygnus.com) | ||||
|  | ||||
| 	* Install.in:  use eval to call do_mt() for Ultrix brokenness. | ||||
|  | ||||
| Mon Apr 25 20:00:00 1994  Jason Molenda   (crash@sendai.cygnus.com) | ||||
|  | ||||
| 	* Install.in(do_mt): exit with error status 1 if # of parameters | ||||
| 	!= 3. | ||||
|  | ||||
| Mon Apr 25 19:42:36 1994  Jason Molenda   (crash@sendai.cygnus.com) | ||||
|  | ||||
| 	* Install.in:  lose TAPE_FORWARD and TAPE_REWIND, add do_mt() | ||||
| 	to do all tape movement operations.  Currently untested.  Addresses | ||||
| 	PR # 4886 from bull. | ||||
|  | ||||
| 	* Install.in: add 1994 to the copyright thing. | ||||
|  | ||||
| Fri Apr 22 19:05:13 1994  David J. Mackenzie  (djm@rtl.cygnus.com) | ||||
|  | ||||
| 	* standards.texi: Update from FSF. | ||||
|  | ||||
| Fri Apr 22 15:46:10 1994  Jason Molenda (crash@cygnus.com) | ||||
|  | ||||
| 	* Install.in: Add $DDOPTS, has ``bs=124b'' for all systems except | ||||
| 	AIX (some versions of AIX don't understand bs=124b.  Silly OS). | ||||
|  | ||||
| Mon Apr  4 22:55:05 1994  Jason Molenda (crash@sendai.cygnus.com) | ||||
|  | ||||
| 	* Install.in: null out $TOOLS before adding stuff to it | ||||
| 	non-destructively. | ||||
|  | ||||
| Wed Mar 30 21:45:35 1994  David J. Mackenzie  (djm@rtl.cygnus.com) | ||||
|  | ||||
| 	* standards.texi: Fix typo. | ||||
|  | ||||
| 	* configure.texi, configure.man: Document --disable-. | ||||
|  | ||||
| Mon Mar 28 13:22:15 1994  David J. Mackenzie  (djm@rtl.cygnus.com) | ||||
|  | ||||
| 	* standards.texi: Update from FSF. | ||||
|  | ||||
| Sat Mar 26 09:21:44 1994  David J. Mackenzie  (djm@rtl.cygnus.com) | ||||
|  | ||||
| 	* standards.texi, make-stds.texi: Update from FSF. | ||||
|  | ||||
| Fri Mar 25 22:59:45 1994  David J. Mackenzie  (djm@rtl.cygnus.com) | ||||
|  | ||||
| 	* configure.texi, configure.man: Document --enable-* options. | ||||
|  | ||||
| Wed Mar 23 23:38:24 1994  Jason Molenda  (crash@sendai.cygnus.com) | ||||
|  | ||||
| 	* Install.in: set CPP to be gcc -E for fixincludes. | ||||
|  | ||||
| Wed Mar 23 13:42:48 1994  Jason Molenda  (crash@sendai.cygnus.com) | ||||
|  | ||||
|         * Install.in: set PATH to $PATH:/bin:/usr/bin so we can pick | ||||
|         up native tools even if the user doesn't have them in his | ||||
|         path. | ||||
|  | ||||
|         * Install.in: ``hppa-1.1-hp-hpux'' -> ``hppa1.1-hp-hpux''. | ||||
|  | ||||
| Tue Mar 15 22:09:20 1994  Jason Molenda  (crash@sendai.cygnus.com) | ||||
|          | ||||
|         * Install.in: TAPE_REWIND and TAPE_FORWARD variables for Unixunaware, | ||||
|         added switch statement to detect if system is Unixunaware. | ||||
|  | ||||
| Fri Mar  4 12:10:30 1994  Jason Molenda (crash@sendai.cygnus.com) | ||||
|  | ||||
|         * Install.in:  fixincludes output is actually put in fixincludes.log, | ||||
|         but echo'ed messages claim it is fixinc.log. | ||||
|  | ||||
| Wed Nov  3 02:58:02 1993  Jeffrey Osier  (jeffrey@thepub.cygnus.com) | ||||
|  | ||||
| 	* subst-strings:  output TEXBUNDLE for more install notes matching | ||||
| 	* install-texi.in:  PRMS info now exists | ||||
|  | ||||
| Tue Oct 26 16:57:12 1993  K. Richard Pixley  (rich@sendai.cygnus.com) | ||||
|  | ||||
| 	* subst-strings: match solaris*.  Also, add default case to catch | ||||
| 	  and error out for unrecognized systems. | ||||
|  | ||||
| Thu Aug 19 18:21:31 1993  david d `zoo' zuhn  (zoo@rtl.cygnus.com) | ||||
|  | ||||
| 	* Install.in: handle the new fixproto work | ||||
|  | ||||
| Mon Jul 19 12:05:41 1993  david d `zoo' zuhn  (zoo@cirdan.cygnus.com) | ||||
|  | ||||
| 	* Install.in: remove "MT=tctl" for AIX (not needed, and barely | ||||
| 	worked anyway) | ||||
|  | ||||
| Mon Jun 14 19:09:22 1993  Jeffrey Osier  (jeffrey@cygnus.com) | ||||
|  | ||||
| 	* subst-strings: changed HOST to recognize Solaris for install notes | ||||
|  | ||||
| Thu Jun 10 16:01:25 1993  Jeffrey Osier  (jeffrey@cygnus.com) | ||||
|  | ||||
| 	* dos-inst.texi:  new file. | ||||
|  | ||||
| Wed Jun  9 19:23:59 1993  Jeffrey Osier  (jeffrey@rtl.cygnus.com) | ||||
|  | ||||
|         * install-texi.in:        added conditionals (nearly complete) | ||||
|                                   cleaned up | ||||
|                                   added support for other releases (not done) | ||||
|  | ||||
| Wed Jun  9 15:53:58 1993  Jim Kingdon  (kingdon@cygnus.com) | ||||
|  | ||||
| 	* Makefile.in (install-info): Use INSTALL_DATA. | ||||
| 	({dist,real}clean): Also delete Makefile and config.status. | ||||
|  | ||||
| Fri Jun  4 17:09:56 1993  Jeffrey Osier  (jeffrey@cygnus.com) | ||||
|  | ||||
| 	* subst-strings:  added data for OS_STRING | ||||
|  | ||||
| 	* subst-strings:  added support for OS_STRING | ||||
|  | ||||
| Thu Jun  3 00:37:01 1993  david d `zoo' zuhn  (zoo at cirdan.cygnus.com) | ||||
|  | ||||
| 	* Install.in: pull COPYING and COPYING.LIB off of the tape  | ||||
|  | ||||
| Tue Jun  1 16:52:08 1993  david d `zoo' zuhn  (zoo at cirdan.cygnus.com) | ||||
|  | ||||
| 	* subst-strings: replace RELEASE_DIR too | ||||
|  | ||||
| Mon Mar 22 23:55:27 1993  david d `zoo' zuhn  (zoo at cirdan.cygnus.com) | ||||
|  | ||||
| 	* Makefile.in: add installcheck target | ||||
|  | ||||
| Wed Mar 17 02:21:15 1993  david d `zoo' zuhn  (zoo at cirdan.cygnus.com) | ||||
|  | ||||
| 	* Install.in: fix 'source only' extraction bug where it looked for | ||||
| 	the src dir under H-<host>/src instead of src; also remove stray | ||||
| 	reference to EMACSHIBIN | ||||
|  | ||||
| Mon Mar 15 01:25:45 1993  david d `zoo' zuhn  (zoo at cirdan.cygnus.com) | ||||
|  | ||||
| 	* make-stds.texi: added 'installcheck' to the standard targets | ||||
|  | ||||
| Tue Mar  9 19:48:28 1993  david d `zoo' zuhn  (zoo at cirdan.cygnus.com) | ||||
|  | ||||
| 	* standards.texi: added INFO-DIR-ENTRY, updated version from the FSF | ||||
|  | ||||
| Tue Feb  9 12:40:23 1993  Ian Lance Taylor  (ian@cygnus.com) | ||||
|  | ||||
| 	* Makefile.in (standards.info): Added -I$(srcdir) to find | ||||
| 	make-stds.texi. | ||||
|  | ||||
| Mon Feb  1 16:32:56 1993  david d `zoo' zuhn  (zoo at cirdan.cygnus.com) | ||||
|  | ||||
| 	* standards.texi: updated to latest FSF version, which includes: | ||||
|  | ||||
| 	* make-stds.texi: new file | ||||
|  | ||||
| Mon Nov 30 01:31:40 1992  david d `zoo' zuhn  (zoo at cirdan.cygnus.com) | ||||
|  | ||||
| 	* install-texi.in, relnotes.texi, intro.texi: changed Cygnus phone | ||||
| 	numbers from the old Palo Alto ones to the new Mtn. View numbers | ||||
|  | ||||
| Mon Nov 16 16:50:43 1992  david d `zoo' zuhn  (zoo at cirdan.cygnus.com) | ||||
|  | ||||
| 	* Makefile.in: define $(RM) to "rm -f" | ||||
|  | ||||
| Sun Oct 11 16:05:48 1992  david d `zoo' zuhn  (zoo at cirdan.cygnus.com) | ||||
|  | ||||
| 	* intro.texi: added INFO-DIR-ENTRY | ||||
|  | ||||
							
								
								
									
										156
									
								
								etc/Makefile.in
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										156
									
								
								etc/Makefile.in
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,156 @@ | ||||
| #  | ||||
| # Makefile.in for etc | ||||
| # | ||||
|  | ||||
| prefix 		= @prefix@ | ||||
| exec_prefix 	= @exec_prefix@ | ||||
|  | ||||
| srcdir  = @srcdir@ | ||||
| VPATH	= @srcdir@ | ||||
|  | ||||
| bindir  = @bindir@ | ||||
| libdir  = @libdir@ | ||||
| tooldir = $(libdir) | ||||
| datadir = @datadir@ | ||||
|  | ||||
| mandir  = @mandir@ | ||||
| man1dir = $(mandir)/man1 | ||||
| man2dir = $(mandir)/man2 | ||||
| man3dir = $(mandir)/man3 | ||||
| man4dir = $(mandir)/man4 | ||||
| man5dir = $(mandir)/man5 | ||||
| man6dir = $(mandir)/man6 | ||||
| man7dir = $(mandir)/man7 | ||||
| man8dir = $(mandir)/man8 | ||||
| man9dir = $(mandir)/man9 | ||||
| infodir = @infodir@ | ||||
|  | ||||
| SHELL = /bin/sh | ||||
|  | ||||
| INSTALL 	= @INSTALL@ | ||||
| INSTALL_PROGRAM = @INSTALL_PROGRAM@ | ||||
| INSTALL_DATA    = @INSTALL_DATA@ | ||||
|  | ||||
| MAKEINFO = `if [ -f ../texinfo/makeinfo/makeinfo ]; \ | ||||
| 	then echo ../texinfo/makeinfo/makeinfo; \ | ||||
| 	else echo makeinfo; fi` | ||||
| TEXI2DVI = `if [ -f ../texinfo/util/texi2dvi ]; \ | ||||
| 	then echo ../texinfo/util/texi2dvi; \ | ||||
| 	else echo texi2dvi; fi` | ||||
| TEXI2HTML = texi2html | ||||
| DVIPS = dvips | ||||
|  | ||||
| # Where to find texinfo.tex to format documentation with TeX. | ||||
| TEXIDIR = $(srcdir)/../texinfo | ||||
|  | ||||
| #### Host, target, and site specific Makefile fragments come in here. | ||||
| ### | ||||
|  | ||||
| INFOFILES = standards.info configure.info | ||||
| DVIFILES = standards.dvi configure.dvi | ||||
|  | ||||
| all: | ||||
|  | ||||
| install: | ||||
|  | ||||
| uninstall: | ||||
|  | ||||
| info: | ||||
| 	for f in $(INFOFILES); do \ | ||||
| 	  if test -f $(srcdir)/`echo $$f | sed -e 's/.info$$/.texi/'`; then \ | ||||
| 	    if $(MAKE) "MAKEINFO=$(MAKEINFO)" $$f; then \ | ||||
| 	      true; \ | ||||
| 	    else \ | ||||
| 	      exit 1; \ | ||||
| 	    fi; \ | ||||
| 	  fi; \ | ||||
| 	done | ||||
|  | ||||
| install-info: info | ||||
| 	$(SHELL) $(srcdir)/../mkinstalldirs $(infodir) | ||||
| 	if test ! -f standards.info; then cd $(srcdir); fi; \ | ||||
| 	if test -f standards.info; then \ | ||||
| 	  for i in standards.info*; do \ | ||||
| 	    $(INSTALL_DATA) $$i $(infodir)/$$i; \ | ||||
| 	  done; \ | ||||
| 	fi | ||||
| 	if test ! -f configure.info; then cd $(srcdir); fi; \ | ||||
| 	if test -f configure.info; then \ | ||||
| 	  for i in configure.info*; do \ | ||||
| 	    $(INSTALL_DATA) $$i $(infodir)/$$i; \ | ||||
| 	  done; \ | ||||
| 	fi | ||||
|  | ||||
| dvi: | ||||
| 	for f in $(DVIFILES); do \ | ||||
| 	  if test -f $(srcdir)/`echo $$f | sed -e 's/.dvi$$/.texi/'`; then \ | ||||
| 	    if $(MAKE) "TEXI2DVI=$(TEXI2DVI)" $$f; then \ | ||||
| 	      true; \ | ||||
| 	    else \ | ||||
| 	      exit 1; \ | ||||
| 	    fi; \ | ||||
| 	  fi; \ | ||||
| 	done | ||||
|  | ||||
| standards.info: $(srcdir)/standards.texi $(srcdir)/make-stds.texi | ||||
| 	$(MAKEINFO) --no-split -I$(srcdir) -o standards.info $(srcdir)/standards.texi | ||||
|  | ||||
| standards.dvi: $(srcdir)/standards.texi | ||||
| 	TEXINPUTS=$(TEXIDIR):$$TEXINPUTS $(TEXI2DVI) $(srcdir)/standards.texi | ||||
|  | ||||
| standards.ps: standards.dvi | ||||
| 	$(DVIPS) standards.dvi -o standards.ps | ||||
|  | ||||
| # makeinfo requires images to be in the current directory. | ||||
| configure.info: $(srcdir)/configure.texi $(srcdir)/configdev.tin $(srcdir)/configbuild.tin | ||||
| 	rm -f configdev.txt configbuild.txt | ||||
| 	cp $(srcdir)/configdev.tin configdev.txt | ||||
| 	cp $(srcdir)/configbuild.tin configbuild.txt | ||||
| 	$(MAKEINFO) -I$(srcdir) -o configure.info $(srcdir)/configure.texi | ||||
| 	rm -f configdev.txt configbuild.txt | ||||
|  | ||||
| # texi2dvi wants both the .txt and the .eps files. | ||||
| configure.dvi: $(srcdir)/configure.texi $(srcdir)/configdev.tin $(srcdir)/configbuild.tin $(srcdir)/configdev.ein $(srcdir)/configbuild.ein | ||||
| 	rm -f configdev.txt configbuild.txt | ||||
| 	cp $(srcdir)/configdev.tin configdev.txt | ||||
| 	cp $(srcdir)/configbuild.tin configbuild.txt | ||||
| 	rm -f configdev.eps configbuild.eps | ||||
| 	cp $(srcdir)/configdev.ein configdev.eps | ||||
| 	cp $(srcdir)/configbuild.ein configbuild.eps | ||||
| 	TEXINPUTS=$(TEXIDIR):$$TEXINPUTS $(TEXI2DVI) $(srcdir)/configure.texi | ||||
| 	rm -f configdev.txt configbuild.txt | ||||
| 	rm -f configdev.eps configbuild.eps | ||||
|  | ||||
| # dvips requires images to be in the current directory | ||||
| configure.ps: configure.dvi $(srcdir)/configdev.ein $(srcdir)/configbuild.ein | ||||
| 	rm -f configdev.eps configbuild.eps | ||||
| 	cp $(srcdir)/configdev.ein configdev.eps | ||||
| 	cp $(srcdir)/configbuild.ein configbuild.eps | ||||
| 	$(DVIPS) configure.dvi -o configure.ps | ||||
| 	rm -f configdev.eps configbuild.eps | ||||
|  | ||||
| configure.html: $(srcdir)/configure.texi | ||||
| 	$(TEXI2HTML) -split_chapter $(srcdir)/configure.texi | ||||
|  | ||||
| clean: | ||||
| 	rm -f *.aux *.cp *.cps *.dvi *.fn *.fns *.ky *.kys *.log | ||||
| 	rm -f *.pg *.pgs *.toc *.tp *.tps *.vr *.vrs | ||||
| 	rm -f configdev.txt configbuild.txt configdev.eps configbuild.eps | ||||
| 	rm -f configdev.jpg configbuild.jpg | ||||
|  | ||||
| mostlyclean: clean | ||||
|  | ||||
| distclean:   clean | ||||
| 	rm -f Makefile config.status config.cache | ||||
|  | ||||
| maintainer-clean realclean:   distclean | ||||
| 	rm -f *.info* | ||||
|  | ||||
| Makefile: $(srcdir)/Makefile.in $(host_makefile_frag) $(target_makefile_frag) | ||||
| 	$(SHELL) ./config.status | ||||
|  | ||||
| ## these last targets are for standards.texi conformance | ||||
| dist: | ||||
| check: | ||||
| installcheck: | ||||
| TAGS: | ||||
							
								
								
									
										573
									
								
								etc/add-log.el
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										573
									
								
								etc/add-log.el
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,573 @@ | ||||
| ;;; ============ NOTE WELL! ============= | ||||
| ;;; | ||||
| ;;; You only need to use this file if you're using a version of Emacs | ||||
| ;;; prior to 20.1 to work on GDB.  The only difference between this | ||||
| ;;; and the standard add-log.el provided with 19.34 is that it | ||||
| ;;; generates dates using the terser format used by Emacs 20.  This is | ||||
| ;;; the format recommended for use in GDB ChangeLogs. | ||||
| ;;; | ||||
| ;;; To use this code, you should create a directory `~/elisp', save the code | ||||
| ;;; below in `~/elisp/add-log.el', and then put something like this in | ||||
| ;;; your `~/.emacs' file, to tell Emacs where to find it: | ||||
| ;;;  | ||||
| ;;; (setq load-path | ||||
| ;;;       (cons (expand-file-name "~/elisp") | ||||
| ;;;             load-path)) | ||||
| ;;;  | ||||
| ;;; If you want, you can also byte-compile it --- it'll run a little | ||||
| ;;; faster, and use a little less memory.  (Not that those matter much for | ||||
| ;;; this file.)  To do that, after you've saved the text as | ||||
| ;;; ~/elisp/add-log.el, bring it up in Emacs, and type | ||||
| ;;;  | ||||
| ;;;     C-u M-x byte-compile-file | ||||
| ;;; | ||||
| ;;; --- Jim Blandy | ||||
|  | ||||
| ;;; add-log.el --- change log maintenance commands for Emacs | ||||
|  | ||||
| ;; Copyright (C) 1985, 1986, 1988, 1993, 1994 Free Software Foundation, Inc. | ||||
|  | ||||
| ;; Keywords: maint | ||||
|  | ||||
| ;; This file is part of GNU Emacs. | ||||
|  | ||||
| ;; GNU Emacs 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, or (at your option) | ||||
| ;; any later version. | ||||
|  | ||||
| ;; GNU Emacs 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 GNU Emacs; see the file COPYING.  If not, write to the | ||||
| ;; Free Software Foundation, Inc., 59 Temple Place - Suite 330, | ||||
| ;; Boston, MA 02111-1307, USA. | ||||
|  | ||||
| ;;; Commentary: | ||||
|  | ||||
| ;; This facility is documented in the Emacs Manual. | ||||
|  | ||||
| ;;; Code: | ||||
|  | ||||
| (defvar change-log-default-name nil | ||||
|   "*Name of a change log file for \\[add-change-log-entry].") | ||||
|  | ||||
| (defvar add-log-current-defun-function nil | ||||
|   "\ | ||||
| *If non-nil, function to guess name of current function from surrounding text. | ||||
| \\[add-change-log-entry] calls this function (if nil, `add-log-current-defun' | ||||
| instead) with no arguments.  It returns a string or nil if it cannot guess.") | ||||
|  | ||||
| ;;;###autoload | ||||
| (defvar add-log-full-name nil | ||||
|   "*Full name of user, for inclusion in ChangeLog daily headers. | ||||
| This defaults to the value returned by the `user-full-name' function.") | ||||
|  | ||||
| ;;;###autoload | ||||
| (defvar add-log-mailing-address nil | ||||
|   "*Electronic mail address of user, for inclusion in ChangeLog daily headers. | ||||
| This defaults to the value of `user-mail-address'.") | ||||
|  | ||||
| (defvar change-log-font-lock-keywords | ||||
|   '(("^[SMTWF].+" . font-lock-function-name-face)	; Date line. | ||||
|     ("^\t\\* \\([^ :\n]+\\)" 1 font-lock-comment-face)	; File name. | ||||
|     ("(\\([^)\n]+\\)):" 1 font-lock-keyword-face))	; Function name. | ||||
|   "Additional expressions to highlight in Change Log mode.") | ||||
|  | ||||
| (defvar change-log-mode-map nil | ||||
|   "Keymap for Change Log major mode.") | ||||
| (if change-log-mode-map | ||||
|     nil | ||||
|   (setq change-log-mode-map (make-sparse-keymap)) | ||||
|   (define-key change-log-mode-map "\M-q" 'change-log-fill-paragraph)) | ||||
|  | ||||
| (defun change-log-name () | ||||
|   (or change-log-default-name | ||||
|       (if (eq system-type 'vax-vms)  | ||||
| 	  "$CHANGE_LOG$.TXT"  | ||||
| 	(if (or (eq system-type 'ms-dos) (eq system-type 'windows-nt)) | ||||
| 	    "changelo" | ||||
| 	  "ChangeLog")))) | ||||
|  | ||||
| ;;;###autoload | ||||
| (defun prompt-for-change-log-name () | ||||
|   "Prompt for a change log name." | ||||
|   (let* ((default (change-log-name)) | ||||
| 	 (name (expand-file-name | ||||
| 		(read-file-name (format "Log file (default %s): " default) | ||||
| 				nil default)))) | ||||
|     ;; Handle something that is syntactically a directory name. | ||||
|     ;; Look for ChangeLog or whatever in that directory. | ||||
|     (if (string= (file-name-nondirectory name) "") | ||||
| 	(expand-file-name (file-name-nondirectory default) | ||||
| 			  name) | ||||
|       ;; Handle specifying a file that is a directory. | ||||
|       (if (file-directory-p name) | ||||
| 	  (expand-file-name (file-name-nondirectory default) | ||||
| 			    (file-name-as-directory name)) | ||||
| 	name)))) | ||||
|  | ||||
| ;;;###autoload | ||||
| (defun find-change-log (&optional file-name) | ||||
|   "Find a change log file for \\[add-change-log-entry] and return the name. | ||||
|  | ||||
| Optional arg FILE-NAME specifies the file to use. | ||||
| If FILE-NAME is nil, use the value of `change-log-default-name'. | ||||
| If 'change-log-default-name' is nil, behave as though it were 'ChangeLog' | ||||
| \(or whatever we use on this operating system). | ||||
|  | ||||
| If 'change-log-default-name' contains a leading directory component, then | ||||
| simply find it in the current directory.  Otherwise, search in the current  | ||||
| directory and its successive parents for a file so named. | ||||
|  | ||||
| Once a file is found, `change-log-default-name' is set locally in the | ||||
| current buffer to the complete file name." | ||||
|   ;; If user specified a file name or if this buffer knows which one to use, | ||||
|   ;; just use that. | ||||
|   (or file-name | ||||
|       (setq file-name (and change-log-default-name | ||||
| 			   (file-name-directory change-log-default-name) | ||||
| 			   change-log-default-name)) | ||||
|       (progn | ||||
| 	;; Chase links in the source file | ||||
| 	;; and use the change log in the dir where it points. | ||||
| 	(setq file-name (or (and buffer-file-name | ||||
| 				 (file-name-directory | ||||
| 				  (file-chase-links buffer-file-name))) | ||||
| 			    default-directory)) | ||||
| 	(if (file-directory-p file-name) | ||||
| 	    (setq file-name (expand-file-name (change-log-name) file-name))) | ||||
| 	;; Chase links before visiting the file. | ||||
| 	;; This makes it easier to use a single change log file | ||||
| 	;; for several related directories. | ||||
| 	(setq file-name (file-chase-links file-name)) | ||||
| 	(setq file-name (expand-file-name file-name)) | ||||
| 	;; Move up in the dir hierarchy till we find a change log file. | ||||
| 	(let ((file1 file-name) | ||||
| 	      parent-dir) | ||||
| 	  (while (and (not (or (get-file-buffer file1) (file-exists-p file1))) | ||||
| 		      (progn (setq parent-dir | ||||
| 				   (file-name-directory | ||||
| 				    (directory-file-name | ||||
| 				     (file-name-directory file1)))) | ||||
| 			     ;; Give up if we are already at the root dir. | ||||
| 			     (not (string= (file-name-directory file1) | ||||
| 					   parent-dir)))) | ||||
| 	    ;; Move up to the parent dir and try again. | ||||
| 	    (setq file1 (expand-file-name  | ||||
| 			 (file-name-nondirectory (change-log-name)) | ||||
| 			 parent-dir))) | ||||
| 	  ;; If we found a change log in a parent, use that. | ||||
| 	  (if (or (get-file-buffer file1) (file-exists-p file1)) | ||||
| 	      (setq file-name file1))))) | ||||
|   ;; Make a local variable in this buffer so we needn't search again. | ||||
|   (set (make-local-variable 'change-log-default-name) file-name) | ||||
|   file-name) | ||||
|  | ||||
| ;;;###autoload | ||||
| (defun add-change-log-entry (&optional whoami file-name other-window new-entry) | ||||
|   "Find change log file and add an entry for today. | ||||
| Optional arg (interactive prefix) non-nil means prompt for user name and site. | ||||
| Second arg is file name of change log.  If nil, uses `change-log-default-name'. | ||||
| Third arg OTHER-WINDOW non-nil means visit in other window. | ||||
| Fourth arg NEW-ENTRY non-nil means always create a new entry at the front; | ||||
| never append to an existing entry." | ||||
|   (interactive (list current-prefix-arg | ||||
| 		     (prompt-for-change-log-name))) | ||||
|   (or add-log-full-name | ||||
|       (setq add-log-full-name (user-full-name))) | ||||
|   (or add-log-mailing-address | ||||
|       (setq add-log-mailing-address user-mail-address)) | ||||
|   (if whoami | ||||
|       (progn | ||||
| 	(setq add-log-full-name (read-input "Full name: " add-log-full-name)) | ||||
| 	 ;; Note that some sites have room and phone number fields in | ||||
| 	 ;; full name which look silly when inserted.  Rather than do | ||||
| 	 ;; anything about that here, let user give prefix argument so that | ||||
| 	 ;; s/he can edit the full name field in prompter if s/he wants. | ||||
| 	(setq add-log-mailing-address | ||||
| 	      (read-input "Mailing address: " add-log-mailing-address)))) | ||||
|   (let ((defun (funcall (or add-log-current-defun-function | ||||
| 			    'add-log-current-defun))) | ||||
| 	paragraph-end entry) | ||||
|  | ||||
|     (setq file-name (expand-file-name (find-change-log file-name))) | ||||
|  | ||||
|     ;; Set ENTRY to the file name to use in the new entry. | ||||
|     (and buffer-file-name | ||||
| 	 ;; Never want to add a change log entry for the ChangeLog file itself. | ||||
| 	 (not (string= buffer-file-name file-name)) | ||||
| 	 (setq entry (if (string-match | ||||
| 			  (concat "^" (regexp-quote (file-name-directory | ||||
| 						     file-name))) | ||||
| 			  buffer-file-name) | ||||
| 			 (substring buffer-file-name (match-end 0)) | ||||
| 		       (file-name-nondirectory buffer-file-name)))) | ||||
|  | ||||
|     (if (and other-window (not (equal file-name buffer-file-name))) | ||||
| 	(find-file-other-window file-name) | ||||
|       (find-file file-name)) | ||||
|     (or (eq major-mode 'change-log-mode) | ||||
| 	(change-log-mode)) | ||||
|     (undo-boundary) | ||||
|     (goto-char (point-min)) | ||||
|     (let ((heading (format "%s  %s  <%s>" | ||||
| 			   (format-time-string "%Y-%m-%d") | ||||
| 			   add-log-full-name | ||||
| 			   add-log-mailing-address))) | ||||
|       (if (looking-at (regexp-quote heading)) | ||||
| 	  (forward-line 1) | ||||
| 	(insert heading "\n\n"))) | ||||
|  | ||||
|     ;; Search only within the first paragraph. | ||||
|     (if (looking-at "\n*[^\n* \t]") | ||||
| 	(skip-chars-forward "\n") | ||||
|       (forward-paragraph 1)) | ||||
|     (setq paragraph-end (point)) | ||||
|     (goto-char (point-min)) | ||||
|  | ||||
|     ;; Now insert the new line for this entry. | ||||
|     (cond ((re-search-forward "^\\s *\\*\\s *$" paragraph-end t) | ||||
| 	   ;; Put this file name into the existing empty entry. | ||||
| 	   (if entry | ||||
| 	       (insert entry))) | ||||
| 	  ((and (not new-entry) | ||||
| 		(let (case-fold-search) | ||||
| 		  (re-search-forward | ||||
| 		   (concat (regexp-quote (concat "* " entry)) | ||||
| 			   ;; Don't accept `foo.bar' when | ||||
| 			   ;; looking for `foo': | ||||
| 			   "\\(\\s \\|[(),:]\\)") | ||||
| 		   paragraph-end t))) | ||||
| 	   ;; Add to the existing entry for the same file. | ||||
| 	   (re-search-forward "^\\s *$\\|^\\s \\*") | ||||
| 	   (goto-char (match-beginning 0)) | ||||
| 	   ;; Delete excess empty lines; make just 2. | ||||
| 	   (while (and (not (eobp)) (looking-at "^\\s *$")) | ||||
| 	     (delete-region (point) (save-excursion (forward-line 1) (point)))) | ||||
| 	   (insert "\n\n") | ||||
| 	   (forward-line -2) | ||||
| 	   (indent-relative-maybe)) | ||||
| 	  (t | ||||
| 	   ;; Make a new entry. | ||||
| 	   (forward-line 1) | ||||
| 	   (while (looking-at "\\sW") | ||||
| 	     (forward-line 1)) | ||||
| 	   (while (and (not (eobp)) (looking-at "^\\s *$")) | ||||
| 	     (delete-region (point) (save-excursion (forward-line 1) (point)))) | ||||
| 	   (insert "\n\n\n") | ||||
| 	   (forward-line -2) | ||||
| 	   (indent-to left-margin) | ||||
| 	   (insert "* " (or entry "")))) | ||||
|     ;; Now insert the function name, if we have one. | ||||
|     ;; Point is at the entry for this file, | ||||
|     ;; either at the end of the line or at the first blank line. | ||||
|     (if defun | ||||
| 	(progn | ||||
| 	  ;; Make it easy to get rid of the function name. | ||||
| 	  (undo-boundary) | ||||
| 	  (insert (if (save-excursion | ||||
| 			(beginning-of-line 1) | ||||
| 			(looking-at "\\s *$"))  | ||||
| 		      "" | ||||
| 		    " ") | ||||
| 		  "(" defun "): ")) | ||||
|       ;; No function name, so put in a colon unless we have just a star. | ||||
|       (if (not (save-excursion | ||||
| 		 (beginning-of-line 1) | ||||
| 		 (looking-at "\\s *\\(\\*\\s *\\)?$"))) | ||||
| 	  (insert ": "))))) | ||||
|  | ||||
| ;;;###autoload | ||||
| (defun add-change-log-entry-other-window (&optional whoami file-name) | ||||
|   "Find change log file in other window and add an entry for today. | ||||
| Optional arg (interactive prefix) non-nil means prompt for user name and site. | ||||
| Second arg is file name of change log.  \ | ||||
| If nil, uses `change-log-default-name'." | ||||
|   (interactive (if current-prefix-arg | ||||
| 		   (list current-prefix-arg | ||||
| 			 (prompt-for-change-log-name)))) | ||||
|   (add-change-log-entry whoami file-name t)) | ||||
| ;;;###autoload (define-key ctl-x-4-map "a" 'add-change-log-entry-other-window) | ||||
|  | ||||
| ;;;###autoload | ||||
| (defun change-log-mode () | ||||
|   "Major mode for editing change logs; like Indented Text Mode. | ||||
| Prevents numeric backups and sets `left-margin' to 8 and `fill-column' to 74. | ||||
| New log entries are usually made with \\[add-change-log-entry] or \\[add-change-log-entry-other-window]. | ||||
| Each entry behaves as a paragraph, and the entries for one day as a page. | ||||
| Runs `change-log-mode-hook'." | ||||
|   (interactive) | ||||
|   (kill-all-local-variables) | ||||
|   (indented-text-mode) | ||||
|   (setq major-mode 'change-log-mode | ||||
| 	mode-name "Change Log" | ||||
| 	left-margin 8 | ||||
| 	fill-column 74 | ||||
|     indent-tabs-mode t | ||||
|     tab-width 8) | ||||
|   (use-local-map change-log-mode-map) | ||||
|   ;; Let each entry behave as one paragraph: | ||||
|   ;; We really do want "^" in paragraph-start below: it is only the lines that | ||||
|   ;; begin at column 0 (despite the left-margin of 8) that we are looking for. | ||||
|   (set (make-local-variable 'paragraph-start) "\\s *$\\|\f\\|^\\sw") | ||||
|   (set (make-local-variable 'paragraph-separate) "\\s *$\\|\f\\|^\\sw") | ||||
|   ;; Let all entries for one day behave as one page. | ||||
|   ;; Match null string on the date-line so that the date-line | ||||
|   ;; is grouped with what follows. | ||||
|   (set (make-local-variable 'page-delimiter) "^\\<\\|^\f") | ||||
|   (set (make-local-variable 'version-control) 'never) | ||||
|   (set (make-local-variable 'adaptive-fill-regexp) "\\s *") | ||||
|   (set (make-local-variable 'font-lock-defaults) | ||||
|        '(change-log-font-lock-keywords t)) | ||||
|   (run-hooks 'change-log-mode-hook)) | ||||
|  | ||||
| ;; It might be nice to have a general feature to replace this.  The idea I | ||||
| ;; have is a variable giving a regexp matching text which should not be | ||||
| ;; moved from bol by filling.  change-log-mode would set this to "^\\s *\\s(". | ||||
| ;; But I don't feel up to implementing that today. | ||||
| (defun change-log-fill-paragraph (&optional justify) | ||||
|   "Fill the paragraph, but preserve open parentheses at beginning of lines. | ||||
| Prefix arg means justify as well." | ||||
|   (interactive "P") | ||||
|   (let ((end (save-excursion (forward-paragraph) (point))) | ||||
| 	(beg (save-excursion (backward-paragraph)(point))) | ||||
| 	(paragraph-start (concat paragraph-start "\\|\\s *\\s("))) | ||||
|     (fill-region beg end justify))) | ||||
|  | ||||
| (defvar add-log-current-defun-header-regexp | ||||
|   "^\\([A-Z][A-Z_ ]*[A-Z_]\\|[-_a-zA-Z]+\\)[ \t]*[:=]" | ||||
|   "*Heuristic regexp used by `add-log-current-defun' for unknown major modes.") | ||||
|  | ||||
| ;;;###autoload | ||||
| (defun add-log-current-defun () | ||||
|   "Return name of function definition point is in, or nil. | ||||
|  | ||||
| Understands C, Lisp, LaTeX (\"functions\" are chapters, sections, ...), | ||||
| Texinfo (@node titles), Perl, and Fortran. | ||||
|  | ||||
| Other modes are handled by a heuristic that looks in the 10K before | ||||
| point for uppercase headings starting in the first column or | ||||
| identifiers followed by `:' or `=', see variable | ||||
| `add-log-current-defun-header-regexp'. | ||||
|  | ||||
| Has a preference of looking backwards." | ||||
|   (condition-case nil | ||||
|       (save-excursion | ||||
| 	(let ((location (point))) | ||||
| 	  (cond ((memq major-mode '(emacs-lisp-mode lisp-mode scheme-mode | ||||
| 						    lisp-interaction-mode)) | ||||
| 		 ;; If we are now precisely at the beginning of a defun, | ||||
| 		 ;; make sure beginning-of-defun finds that one | ||||
| 		 ;; rather than the previous one. | ||||
| 		 (or (eobp) (forward-char 1)) | ||||
| 		 (beginning-of-defun) | ||||
| 		 ;; Make sure we are really inside the defun found, not after it. | ||||
| 		 (if (and (looking-at "\\s(") | ||||
| 			  (progn (end-of-defun) | ||||
| 				 (< location (point))) | ||||
| 			  (progn (forward-sexp -1) | ||||
| 				 (>= location (point)))) | ||||
| 		     (progn | ||||
| 		       (if (looking-at "\\s(") | ||||
| 			   (forward-char 1)) | ||||
| 		       (forward-sexp 1) | ||||
| 		       (skip-chars-forward " '") | ||||
| 		       (buffer-substring (point) | ||||
| 					 (progn (forward-sexp 1) (point)))))) | ||||
| 		((and (memq major-mode '(c-mode c++-mode c++-c-mode objc-mode)) | ||||
| 		      (save-excursion (beginning-of-line) | ||||
| 				      ;; Use eq instead of = here to avoid | ||||
| 				      ;; error when at bob and char-after | ||||
| 				      ;; returns nil. | ||||
| 				      (while (eq (char-after (- (point) 2)) ?\\) | ||||
| 					(forward-line -1)) | ||||
| 				      (looking-at "[ \t]*#[ \t]*define[ \t]"))) | ||||
| 		 ;; Handle a C macro definition. | ||||
| 		 (beginning-of-line) | ||||
| 		 (while (eq (char-after (- (point) 2)) ?\\) ;not =; note above | ||||
| 		   (forward-line -1)) | ||||
| 		 (search-forward "define") | ||||
| 		 (skip-chars-forward " \t") | ||||
| 		 (buffer-substring (point) | ||||
| 				   (progn (forward-sexp 1) (point)))) | ||||
| 		((memq major-mode '(c-mode c++-mode c++-c-mode objc-mode)) | ||||
| 		 (beginning-of-line) | ||||
| 		 ;; See if we are in the beginning part of a function, | ||||
| 		 ;; before the open brace.  If so, advance forward. | ||||
| 		 (while (not (looking-at "{\\|\\(\\s *$\\)")) | ||||
| 		   (forward-line 1)) | ||||
| 		 (or (eobp) | ||||
| 		     (forward-char 1)) | ||||
| 		 (beginning-of-defun) | ||||
| 		 (if (progn (end-of-defun) | ||||
| 			    (< location (point))) | ||||
| 		     (progn | ||||
| 		       (backward-sexp 1) | ||||
| 		       (let (beg tem) | ||||
|  | ||||
| 			 (forward-line -1) | ||||
| 			 ;; Skip back over typedefs of arglist. | ||||
| 			 (while (and (not (bobp)) | ||||
| 				     (looking-at "[ \t\n]")) | ||||
| 			   (forward-line -1)) | ||||
| 			 ;; See if this is using the DEFUN macro used in Emacs, | ||||
| 			 ;; or the DEFUN macro used by the C library. | ||||
| 			 (if (condition-case nil | ||||
| 				 (and (save-excursion | ||||
| 					(end-of-line) | ||||
| 					(while (= (preceding-char) ?\\) | ||||
| 					  (end-of-line 2)) | ||||
| 					(backward-sexp 1) | ||||
| 					(beginning-of-line) | ||||
| 					(setq tem (point)) | ||||
| 					(looking-at "DEFUN\\b")) | ||||
| 				      (>= location tem)) | ||||
| 			       (error nil)) | ||||
| 			     (progn | ||||
| 			       (goto-char tem) | ||||
| 			       (down-list 1) | ||||
| 			       (if (= (char-after (point)) ?\") | ||||
| 				   (progn | ||||
| 				     (forward-sexp 1) | ||||
| 				     (skip-chars-forward " ,"))) | ||||
| 			       (buffer-substring (point) | ||||
| 						 (progn (forward-sexp 1) (point)))) | ||||
|                            (if (looking-at "^[+-]") | ||||
|                                (get-method-definition) | ||||
|                              ;; Ordinary C function syntax. | ||||
|                              (setq beg (point)) | ||||
|                              (if (and (condition-case nil | ||||
| 					  ;; Protect against "Unbalanced parens" error. | ||||
| 					  (progn | ||||
| 					    (down-list 1) ; into arglist | ||||
| 					    (backward-up-list 1) | ||||
| 					    (skip-chars-backward " \t") | ||||
| 					    t) | ||||
| 					(error nil)) | ||||
| 				      ;; Verify initial pos was after | ||||
| 				      ;; real start of function. | ||||
| 				      (save-excursion | ||||
| 					(goto-char beg) | ||||
| 					;; For this purpose, include the line | ||||
| 					;; that has the decl keywords.  This | ||||
| 					;; may also include some of the | ||||
| 					;; comments before the function. | ||||
| 					(while (and (not (bobp)) | ||||
| 						    (save-excursion | ||||
| 						      (forward-line -1) | ||||
| 						      (looking-at "[^\n\f]"))) | ||||
| 					  (forward-line -1)) | ||||
| 					(>= location (point))) | ||||
|                                           ;; Consistency check: going down and up | ||||
|                                           ;; shouldn't take us back before BEG. | ||||
|                                           (> (point) beg)) | ||||
| 				 (let (end middle) | ||||
| 				   ;; Don't include any final newline | ||||
| 				   ;; in the name we use. | ||||
| 				   (if (= (preceding-char) ?\n) | ||||
| 				       (forward-char -1)) | ||||
| 				   (setq end (point)) | ||||
| 				   (backward-sexp 1) | ||||
| 				   ;; Now find the right beginning of the name. | ||||
| 				   ;; Include certain keywords if they | ||||
| 				   ;; precede the name. | ||||
| 				   (setq middle (point)) | ||||
| 				   (forward-word -1) | ||||
| 				   ;; Ignore these subparts of a class decl | ||||
| 				   ;; and move back to the class name itself. | ||||
| 				   (while (looking-at "public \\|private ") | ||||
| 				     (skip-chars-backward " \t:") | ||||
| 				     (setq end (point)) | ||||
| 				     (backward-sexp 1) | ||||
| 				     (setq middle (point)) | ||||
| 				     (forward-word -1)) | ||||
| 				   (and (bolp) | ||||
| 					(looking-at "struct \\|union \\|class ") | ||||
| 					(setq middle (point))) | ||||
| 				   (buffer-substring middle end))))))))) | ||||
| 		((memq major-mode | ||||
| 		       '(TeX-mode plain-TeX-mode LaTeX-mode;; tex-mode.el | ||||
| 				  plain-tex-mode latex-mode;; cmutex.el | ||||
| 				  )) | ||||
| 		 (if (re-search-backward | ||||
| 		      "\\\\\\(sub\\)*\\(section\\|paragraph\\|chapter\\)" nil t) | ||||
| 		     (progn | ||||
| 		       (goto-char (match-beginning 0)) | ||||
| 		       (buffer-substring (1+ (point));; without initial backslash | ||||
| 					 (progn | ||||
| 					   (end-of-line) | ||||
| 					   (point)))))) | ||||
| 		((eq major-mode 'texinfo-mode) | ||||
| 		 (if (re-search-backward "^@node[ \t]+\\([^,\n]+\\)" nil t) | ||||
| 		     (buffer-substring (match-beginning 1) | ||||
| 				       (match-end 1)))) | ||||
| 		((eq major-mode 'perl-mode) | ||||
| 		 (if (re-search-backward "^sub[ \t]+\\([^ \t\n]+\\)" nil t) | ||||
| 		     (buffer-substring (match-beginning 1) | ||||
| 				       (match-end 1)))) | ||||
|                 ((eq major-mode 'fortran-mode) | ||||
|                  ;; must be inside function body for this to work | ||||
|                  (beginning-of-fortran-subprogram) | ||||
|                  (let ((case-fold-search t)) ; case-insensitive | ||||
|                    ;; search for fortran subprogram start | ||||
|                    (if (re-search-forward | ||||
| 			 "^[ \t]*\\(program\\|subroutine\\|function\ | ||||
| \\|[ \ta-z0-9*]*[ \t]+function\\)" | ||||
| 			 nil t) | ||||
|                        (progn | ||||
|                          ;; move to EOL or before first left paren | ||||
|                          (if (re-search-forward "[(\n]" nil t) | ||||
| 			     (progn (forward-char -1) | ||||
| 				    (skip-chars-backward " \t")) | ||||
| 			   (end-of-line)) | ||||
| 			 ;; Use the name preceding that. | ||||
|                          (buffer-substring (point) | ||||
|                                            (progn (forward-sexp -1) | ||||
|                                                   (point))))))) | ||||
| 		(t | ||||
| 		 ;; If all else fails, try heuristics | ||||
| 		 (let (case-fold-search) | ||||
| 		   (end-of-line) | ||||
| 		   (if (re-search-backward add-log-current-defun-header-regexp | ||||
| 					   (- (point) 10000) | ||||
| 					   t) | ||||
| 		       (buffer-substring (match-beginning 1) | ||||
| 					 (match-end 1)))))))) | ||||
|     (error nil))) | ||||
|  | ||||
| (defvar get-method-definition-md) | ||||
|  | ||||
| ;; Subroutine used within get-method-definition. | ||||
| ;; Add the last match in the buffer to the end of `md', | ||||
| ;; followed by the string END; move to the end of that match. | ||||
| (defun get-method-definition-1 (end) | ||||
|   (setq get-method-definition-md | ||||
| 	(concat get-method-definition-md  | ||||
| 		(buffer-substring (match-beginning 1) (match-end 1)) | ||||
| 		end)) | ||||
|   (goto-char (match-end 0))) | ||||
|  | ||||
| ;; For objective C, return the method name if we are in a method. | ||||
| (defun get-method-definition () | ||||
|   (let ((get-method-definition-md "[")) | ||||
|     (save-excursion | ||||
|       (if (re-search-backward "^@implementation\\s-*\\([A-Za-z_]*\\)" nil t) | ||||
| 	  (get-method-definition-1 " "))) | ||||
|     (save-excursion | ||||
|       (cond | ||||
|        ((re-search-forward "^\\([-+]\\)[ \t\n\f\r]*\\(([^)]*)\\)?\\s-*" nil t) | ||||
| 	(get-method-definition-1 "") | ||||
| 	(while (not (looking-at "[{;]")) | ||||
| 	  (looking-at | ||||
| 	   "\\([A-Za-z_]*:?\\)\\s-*\\(([^)]*)\\)?[A-Za-z_]*[ \t\n\f\r]*") | ||||
| 	  (get-method-definition-1 "")) | ||||
| 	(concat get-method-definition-md "]")))))) | ||||
|  | ||||
|  | ||||
| (provide 'add-log) | ||||
|  | ||||
| ;;; add-log.el ends here | ||||
							
								
								
									
										11
									
								
								etc/add-log.vi
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										11
									
								
								etc/add-log.vi
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,11 @@ | ||||
| Here is a vi macro to create entries in the recommended format for | ||||
| GDB's ChangeLogs. | ||||
|  | ||||
| map  1GO:r !date '+\%Y-\%m-\%d'2GA  Jason Molenda  (:r !whoamikJxA@:r !hostnameA)kJxkddjO | ||||
| 	*  | ||||
| k$ | ||||
|  | ||||
| It contains control and escape sequences, so don't just cut and paste it. | ||||
| You'll need to change the "Jason Molenda" bit, of course. :-)  Put this | ||||
| in your $HOME/.exrc and when you type control-X in move-around-mode, | ||||
| you'll have a changelog template inserted. | ||||
							
								
								
									
										149
									
								
								etc/configbuild.ein
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										149
									
								
								etc/configbuild.ein
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,149 @@ | ||||
| %!PS-Adobe-2.0 EPSF-2.0 | ||||
| %%Title: configbuild.fig | ||||
| %%Creator: fig2dev Version 3.1 Patchlevel 1 | ||||
| %%CreationDate: Fri Jun 12 20:13:16 1998 | ||||
| %%For: ian@tito.cygnus.com (Ian Lance Taylor) | ||||
| %%Orientation: Portrait | ||||
| %%BoundingBox: 0 0 322 173 | ||||
| %%Pages: 0 | ||||
| %%BeginSetup | ||||
| %%IncludeFeature: *PageSize Letter | ||||
| %%EndSetup | ||||
| %%EndComments | ||||
| /$F2psDict 200 dict def | ||||
| $F2psDict begin | ||||
| $F2psDict /mtrx matrix put | ||||
| /col-1 {} def | ||||
| /col0 {0.000 0.000 0.000 srgb} bind def | ||||
| /col1 {0.000 0.000 1.000 srgb} bind def | ||||
| /col2 {0.000 1.000 0.000 srgb} bind def | ||||
| /col3 {0.000 1.000 1.000 srgb} bind def | ||||
| /col4 {1.000 0.000 0.000 srgb} bind def | ||||
| /col5 {1.000 0.000 1.000 srgb} bind def | ||||
| /col6 {1.000 1.000 0.000 srgb} bind def | ||||
| /col7 {1.000 1.000 1.000 srgb} bind def | ||||
| /col8 {0.000 0.000 0.560 srgb} bind def | ||||
| /col9 {0.000 0.000 0.690 srgb} bind def | ||||
| /col10 {0.000 0.000 0.820 srgb} bind def | ||||
| /col11 {0.530 0.810 1.000 srgb} bind def | ||||
| /col12 {0.000 0.560 0.000 srgb} bind def | ||||
| /col13 {0.000 0.690 0.000 srgb} bind def | ||||
| /col14 {0.000 0.820 0.000 srgb} bind def | ||||
| /col15 {0.000 0.560 0.560 srgb} bind def | ||||
| /col16 {0.000 0.690 0.690 srgb} bind def | ||||
| /col17 {0.000 0.820 0.820 srgb} bind def | ||||
| /col18 {0.560 0.000 0.000 srgb} bind def | ||||
| /col19 {0.690 0.000 0.000 srgb} bind def | ||||
| /col20 {0.820 0.000 0.000 srgb} bind def | ||||
| /col21 {0.560 0.000 0.560 srgb} bind def | ||||
| /col22 {0.690 0.000 0.690 srgb} bind def | ||||
| /col23 {0.820 0.000 0.820 srgb} bind def | ||||
| /col24 {0.500 0.190 0.000 srgb} bind def | ||||
| /col25 {0.630 0.250 0.000 srgb} bind def | ||||
| /col26 {0.750 0.380 0.000 srgb} bind def | ||||
| /col27 {1.000 0.500 0.500 srgb} bind def | ||||
| /col28 {1.000 0.630 0.630 srgb} bind def | ||||
| /col29 {1.000 0.750 0.750 srgb} bind def | ||||
| /col30 {1.000 0.880 0.880 srgb} bind def | ||||
| /col31 {1.000 0.840 0.000 srgb} bind def | ||||
|  | ||||
| end | ||||
| save | ||||
| -62.0 226.0 translate | ||||
| 1 -1 scale | ||||
|  | ||||
| /clp {closepath} bind def | ||||
| /ef {eofill} bind def | ||||
| /gr {grestore} bind def | ||||
| /gs {gsave} bind def | ||||
| /l {lineto} bind def | ||||
| /m {moveto} bind def | ||||
| /n {newpath} bind def | ||||
| /s {stroke} bind def | ||||
| /slc {setlinecap} bind def | ||||
| /slj {setlinejoin} bind def | ||||
| /slw {setlinewidth} bind def | ||||
| /srgb {setrgbcolor} bind def | ||||
| /rot {rotate} bind def | ||||
| /sc {scale} bind def | ||||
| /tr {translate} bind def | ||||
| /tnt {dup dup currentrgbcolor | ||||
|   4 -2 roll dup 1 exch sub 3 -1 roll mul add | ||||
|   4 -2 roll dup 1 exch sub 3 -1 roll mul add | ||||
|   4 -2 roll dup 1 exch sub 3 -1 roll mul add srgb} | ||||
|   bind def | ||||
| /shd {dup dup currentrgbcolor 4 -2 roll mul 4 -2 roll mul | ||||
|   4 -2 roll mul srgb} bind def | ||||
| /$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def | ||||
| /$F2psEnd {$F2psEnteredState restore end} def | ||||
| %%EndProlog | ||||
|  | ||||
| $F2psBegin | ||||
| 10 setmiterlimit | ||||
|  0.06000 0.06000 sc | ||||
| 7.500 slw | ||||
| % Polyline | ||||
| n 1050 900 m 2100 900 l  2100 1425 l  1050 1425 l  clp  gs col-1 s gr  | ||||
| % Polyline | ||||
| n 1500 1425 m 1500 2100 l  gs col-1 s gr  | ||||
| n 1530.00 1980.00 m 1500.00 2100.00 l 1470.00 1980.00 l  1500.50 1980.50 l 1530.00 1980.00 l clp gs 0.00 setgray ef gr gs col-1 s gr | ||||
| % Polyline | ||||
| n 1500 2625 m 1500 3300 l  gs col-1 s gr  | ||||
| n 1530.00 3180.00 m 1500.00 3300.00 l 1470.00 3180.00 l  1500.50 3180.50 l 1530.00 3180.00 l clp gs 0.00 setgray ef gr gs col-1 s gr | ||||
| % Polyline | ||||
| n 2925 900 m 3825 900 l  3825 1425 l  2925 1425 l  clp  gs col-1 s gr  | ||||
| % Polyline | ||||
| n 1155 2100 m 1050 2100 1050 2520 105 arcto 4 {pop} repeat 1050 2625 2220 2625 105 arcto 4 {pop} repeat 2325 2625 2325 2205 105 arcto 4 {pop} repeat 2325 2100 1155 2100 105 arcto 4 {pop} repeat clp  gs col-1 s gr  | ||||
| % Polyline | ||||
| n 2850 2100 m 4125 2100 l  4125 2625 l  2850 2625 l  clp  gs col-1 s gr  | ||||
| % Polyline | ||||
| n 3375 1425 m 3375 2100 l  gs col-1 s gr  | ||||
| n 3405.00 1980.00 m 3375.00 2100.00 l 3345.00 1980.00 l  3375.50 1980.50 l 3405.00 1980.00 l clp gs 0.00 setgray ef gr gs col-1 s gr | ||||
| % Polyline | ||||
| n 5100 900 m 6300 900 l  6300 1350 l  5100 1350 l  clp  gs col-1 s gr  | ||||
| % Polyline | ||||
| n 5625 1350 m 5625 2100 l  gs col-1 s gr  | ||||
| n 5655.00 1980.00 m 5625.00 2100.00 l 5595.00 1980.00 l  5625.50 1980.50 l 5655.00 1980.00 l clp gs 0.00 setgray ef gr gs col-1 s gr | ||||
| % Polyline | ||||
| n 5205 2100 m 5100 2100 5100 2520 105 arcto 4 {pop} repeat 5100 2625 6270 2625 105 arcto 4 {pop} repeat 6375 2625 6375 2205 105 arcto 4 {pop} repeat 6375 2100 5205 2100 105 arcto 4 {pop} repeat clp  gs col-1 s gr  | ||||
| % Polyline | ||||
| n 5625 2625 m 5625 3300 l  gs col-1 s gr  | ||||
| n 5655.00 3180.00 m 5625.00 3300.00 l 5595.00 3180.00 l  5625.50 3180.50 l 5655.00 3180.00 l clp gs 0.00 setgray ef gr gs col-1 s gr | ||||
| % Polyline | ||||
| n 5100 3300 m 6225 3300 l  6225 3750 l  5100 3750 l  clp  gs col-1 s gr  | ||||
| % Polyline | ||||
| 	[1 50.0] 50.000000 setdash | ||||
| n 2850 2400 m 2325 2400 l  gs col-1 s gr 	[] 0 setdash | ||||
| n 2445.00 2430.00 m 2325.00 2400.00 l 2445.00 2370.00 l  2445.50 2400.50 l 2445.00 2430.00 l clp gs 0.00 setgray ef gr gs col-1 s gr | ||||
| % Polyline | ||||
| 	[1 50.0] 50.000000 setdash | ||||
| n 4125 2400 m 5100 2400 l  gs col-1 s gr 	[] 0 setdash | ||||
| n 4980.00 2370.00 m 5100.00 2400.00 l 4980.00 2430.00 l  4980.50 2400.50 l 4980.00 2370.00 l clp gs 0.00 setgray ef gr gs col-1 s gr | ||||
| % Polyline | ||||
| n 1050 3300 m 1950 3300 l  1950 3750 l  1050 3750 l  clp  gs col-1 s gr  | ||||
| /Times-Roman findfont 180.00 scalefont setfont | ||||
| 1200 1200 m | ||||
| gs 1 -1 sc (config.in) col-1 show gr | ||||
| /Times-Roman findfont 180.00 scalefont setfont | ||||
| 3000 1200 m | ||||
| gs 1 -1 sc (configure) col-1 show gr | ||||
| /Times-Roman findfont 180.00 scalefont setfont | ||||
| 3000 2400 m | ||||
| gs 1 -1 sc (config.status) col-1 show gr | ||||
| /Times-Roman findfont 180.00 scalefont setfont | ||||
| 1200 2400 m | ||||
| gs 1 -1 sc (config.status) col-1 show gr | ||||
| /Times-Roman findfont 180.00 scalefont setfont | ||||
| 1200 3600 m | ||||
| gs 1 -1 sc (config.h) col-1 show gr | ||||
| /Times-Roman findfont 180.00 scalefont setfont | ||||
| 5250 1200 m | ||||
| gs 1 -1 sc (Makefile.in) col-1 show gr | ||||
| /Times-Roman findfont 180.00 scalefont setfont | ||||
| 5250 2400 m | ||||
| gs 1 -1 sc (config.status) col-1 show gr | ||||
| /Times-Roman findfont 180.00 scalefont setfont | ||||
| 5250 3600 m | ||||
| gs 1 -1 sc (Makefile) col-1 show gr | ||||
| $F2psEnd | ||||
| restore | ||||
							
								
								
									
										50
									
								
								etc/configbuild.fig
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										50
									
								
								etc/configbuild.fig
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,50 @@ | ||||
| #FIG 3.1 | ||||
| Portrait | ||||
| Center | ||||
| Inches | ||||
| 1200 2 | ||||
| 2 2 0 1 -1 7 0 0 -1 0.000 0 0 0 0 0 5 | ||||
| 	 1050 900 2100 900 2100 1425 1050 1425 1050 900 | ||||
| 2 1 0 1 -1 7 0 0 -1 0.000 0 0 -1 1 0 2 | ||||
| 	1 1 1.00 60.00 120.00 | ||||
| 	 1500 1425 1500 2100 | ||||
| 2 1 0 1 -1 7 0 0 -1 0.000 0 0 -1 1 0 2 | ||||
| 	1 1 1.00 60.00 120.00 | ||||
| 	 1500 2625 1500 3300 | ||||
| 2 2 0 1 -1 7 0 0 -1 0.000 0 0 0 0 0 5 | ||||
| 	 2925 900 3825 900 3825 1425 2925 1425 2925 900 | ||||
| 2 4 0 1 -1 7 0 0 -1 0.000 0 0 7 0 0 5 | ||||
| 	 2325 2625 2325 2100 1050 2100 1050 2625 2325 2625 | ||||
| 2 2 0 1 -1 7 0 0 -1 0.000 0 0 0 0 0 5 | ||||
| 	 2850 2100 4125 2100 4125 2625 2850 2625 2850 2100 | ||||
| 2 1 0 1 -1 7 0 0 -1 0.000 0 0 -1 1 0 2 | ||||
| 	1 1 1.00 60.00 120.00 | ||||
| 	 3375 1425 3375 2100 | ||||
| 2 2 0 1 -1 7 0 0 -1 0.000 0 0 0 0 0 5 | ||||
| 	 5100 900 6300 900 6300 1350 5100 1350 5100 900 | ||||
| 2 1 0 1 -1 7 0 0 -1 0.000 0 0 -1 1 0 2 | ||||
| 	1 1 1.00 60.00 120.00 | ||||
| 	 5625 1350 5625 2100 | ||||
| 2 4 0 1 -1 7 0 0 -1 0.000 0 0 7 0 0 5 | ||||
| 	 6375 2625 6375 2100 5100 2100 5100 2625 6375 2625 | ||||
| 2 1 0 1 -1 7 0 0 -1 0.000 0 0 -1 1 0 2 | ||||
| 	1 1 1.00 60.00 120.00 | ||||
| 	 5625 2625 5625 3300 | ||||
| 2 2 0 1 -1 7 0 0 -1 0.000 0 0 0 0 0 5 | ||||
| 	 5100 3300 6225 3300 6225 3750 5100 3750 5100 3300 | ||||
| 2 1 2 1 -1 7 0 0 -1 3.000 0 0 -1 1 0 2 | ||||
| 	1 1 1.00 60.00 120.00 | ||||
| 	 2850 2400 2325 2400 | ||||
| 2 1 2 1 -1 7 0 0 -1 3.000 0 0 -1 1 0 2 | ||||
| 	1 1 1.00 60.00 120.00 | ||||
| 	 4125 2400 5100 2400 | ||||
| 2 2 0 1 -1 7 0 0 -1 0.000 0 0 0 0 0 5 | ||||
| 	 1050 3300 1950 3300 1950 3750 1050 3750 1050 3300 | ||||
| 4 0 -1 0 0 0 12 0.0000000 4 180 645 1200 1200 config.in\001 | ||||
| 4 0 -1 0 0 0 12 0.0000000 4 180 705 3000 1200 configure\001 | ||||
| 4 0 -1 0 0 0 12 0.0000000 4 180 990 3000 2400 config.status\001 | ||||
| 4 0 -1 0 0 0 12 0.0000000 4 180 990 1200 2400 config.status\001 | ||||
| 4 0 -1 0 0 0 12 0.0000000 4 180 600 1200 3600 config.h\001 | ||||
| 4 0 -1 0 0 0 12 0.0000000 4 135 855 5250 1200 Makefile.in\001 | ||||
| 4 0 -1 0 0 0 12 0.0000000 4 180 990 5250 2400 config.status\001 | ||||
| 4 0 -1 0 0 0 12 0.0000000 4 135 675 5250 3600 Makefile\001 | ||||
							
								
								
									
										
											BIN
										
									
								
								etc/configbuild.jin
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								etc/configbuild.jin
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| After Width: | Height: | Size: 11 KiB | 
							
								
								
									
										9
									
								
								etc/configbuild.tin
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										9
									
								
								etc/configbuild.tin
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,9 @@ | ||||
|    config.in        *configure*      Makefile.in | ||||
|       |                  |               | | ||||
|       |                  v               | | ||||
|       |             config.status        | | ||||
|       |                  |               | | ||||
|    *config.status*<======+==========>*config.status* | ||||
|       |                                  | | ||||
|       v                                  v | ||||
|    config.h                          Makefile | ||||
							
								
								
									
										185
									
								
								etc/configdev.ein
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										185
									
								
								etc/configdev.ein
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,185 @@ | ||||
| %!PS-Adobe-2.0 EPSF-2.0 | ||||
| %%Title: configdev.fig | ||||
| %%Creator: fig2dev Version 3.1 Patchlevel 1 | ||||
| %%CreationDate: Mon Jun 15 17:35:19 1998 | ||||
| %%For: ian@tito.cygnus.com (Ian Lance Taylor) | ||||
| %%Orientation: Portrait | ||||
| %%BoundingBox: 0 0 344 317 | ||||
| %%Pages: 0 | ||||
| %%BeginSetup | ||||
| %%IncludeFeature: *PageSize Letter | ||||
| %%EndSetup | ||||
| %%EndComments | ||||
| /$F2psDict 200 dict def | ||||
| $F2psDict begin | ||||
| $F2psDict /mtrx matrix put | ||||
| /col-1 {} def | ||||
| /col0 {0.000 0.000 0.000 srgb} bind def | ||||
| /col1 {0.000 0.000 1.000 srgb} bind def | ||||
| /col2 {0.000 1.000 0.000 srgb} bind def | ||||
| /col3 {0.000 1.000 1.000 srgb} bind def | ||||
| /col4 {1.000 0.000 0.000 srgb} bind def | ||||
| /col5 {1.000 0.000 1.000 srgb} bind def | ||||
| /col6 {1.000 1.000 0.000 srgb} bind def | ||||
| /col7 {1.000 1.000 1.000 srgb} bind def | ||||
| /col8 {0.000 0.000 0.560 srgb} bind def | ||||
| /col9 {0.000 0.000 0.690 srgb} bind def | ||||
| /col10 {0.000 0.000 0.820 srgb} bind def | ||||
| /col11 {0.530 0.810 1.000 srgb} bind def | ||||
| /col12 {0.000 0.560 0.000 srgb} bind def | ||||
| /col13 {0.000 0.690 0.000 srgb} bind def | ||||
| /col14 {0.000 0.820 0.000 srgb} bind def | ||||
| /col15 {0.000 0.560 0.560 srgb} bind def | ||||
| /col16 {0.000 0.690 0.690 srgb} bind def | ||||
| /col17 {0.000 0.820 0.820 srgb} bind def | ||||
| /col18 {0.560 0.000 0.000 srgb} bind def | ||||
| /col19 {0.690 0.000 0.000 srgb} bind def | ||||
| /col20 {0.820 0.000 0.000 srgb} bind def | ||||
| /col21 {0.560 0.000 0.560 srgb} bind def | ||||
| /col22 {0.690 0.000 0.690 srgb} bind def | ||||
| /col23 {0.820 0.000 0.820 srgb} bind def | ||||
| /col24 {0.500 0.190 0.000 srgb} bind def | ||||
| /col25 {0.630 0.250 0.000 srgb} bind def | ||||
| /col26 {0.750 0.380 0.000 srgb} bind def | ||||
| /col27 {1.000 0.500 0.500 srgb} bind def | ||||
| /col28 {1.000 0.630 0.630 srgb} bind def | ||||
| /col29 {1.000 0.750 0.750 srgb} bind def | ||||
| /col30 {1.000 0.880 0.880 srgb} bind def | ||||
| /col31 {1.000 0.840 0.000 srgb} bind def | ||||
|  | ||||
| end | ||||
| save | ||||
| -62.0 370.0 translate | ||||
| 1 -1 scale | ||||
|  | ||||
| /clp {closepath} bind def | ||||
| /ef {eofill} bind def | ||||
| /gr {grestore} bind def | ||||
| /gs {gsave} bind def | ||||
| /l {lineto} bind def | ||||
| /m {moveto} bind def | ||||
| /n {newpath} bind def | ||||
| /s {stroke} bind def | ||||
| /slc {setlinecap} bind def | ||||
| /slj {setlinejoin} bind def | ||||
| /slw {setlinewidth} bind def | ||||
| /srgb {setrgbcolor} bind def | ||||
| /rot {rotate} bind def | ||||
| /sc {scale} bind def | ||||
| /tr {translate} bind def | ||||
| /tnt {dup dup currentrgbcolor | ||||
|   4 -2 roll dup 1 exch sub 3 -1 roll mul add | ||||
|   4 -2 roll dup 1 exch sub 3 -1 roll mul add | ||||
|   4 -2 roll dup 1 exch sub 3 -1 roll mul add srgb} | ||||
|   bind def | ||||
| /shd {dup dup currentrgbcolor 4 -2 roll mul 4 -2 roll mul | ||||
|   4 -2 roll mul srgb} bind def | ||||
| /$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def | ||||
| /$F2psEnd {$F2psEnteredState restore end} def | ||||
| %%EndProlog | ||||
|  | ||||
| $F2psBegin | ||||
| 10 setmiterlimit | ||||
|  0.06000 0.06000 sc | ||||
| 7.500 slw | ||||
| % Polyline | ||||
| n 1050 900 m 2100 900 l  2100 1425 l  1050 1425 l  clp  gs col-1 s gr  | ||||
| % Polyline | ||||
| n 2925 900 m 3975 900 l  3975 1425 l  2925 1425 l  clp  gs col-1 s gr  | ||||
| % Polyline | ||||
| n 5550 900 m 6750 900 l  6750 1350 l  5550 1350 l  clp  gs col-1 s gr  | ||||
| % Polyline | ||||
| n 3750 1800 m 5025 1800 l  5025 2250 l  3750 2250 l  clp  gs col-1 s gr  | ||||
| % Polyline | ||||
| n 1155 2100 m 1050 2100 1050 2520 105 arcto 4 {pop} repeat 1050 2625 2070 2625 105 arcto 4 {pop} repeat 2175 2625 2175 2205 105 arcto 4 {pop} repeat 2175 2100 1155 2100 105 arcto 4 {pop} repeat clp  gs col-1 s gr  | ||||
| % Polyline | ||||
| n 5550 3300 m 6675 3300 l  6675 3750 l  5550 3750 l  clp  gs col-1 s gr  | ||||
| % Polyline | ||||
| n 5655 2100 m 5550 2100 5550 2520 105 arcto 4 {pop} repeat 5550 2625 6495 2625 105 arcto 4 {pop} repeat 6600 2625 6600 2205 105 arcto 4 {pop} repeat 6600 2100 5655 2100 105 arcto 4 {pop} repeat clp  gs col-1 s gr  | ||||
| % Polyline | ||||
| n 3750 3600 m 4875 3600 l  4875 4050 l  3750 4050 l  clp  gs col-1 s gr  | ||||
| % Polyline | ||||
| n 3855 2700 m 3750 2700 3750 3045 105 arcto 4 {pop} repeat 3750 3150 4545 3150 105 arcto 4 {pop} repeat 4650 3150 4650 2805 105 arcto 4 {pop} repeat 4650 2700 3855 2700 105 arcto 4 {pop} repeat clp  gs col-1 s gr  | ||||
| % Polyline | ||||
| n 2850 5700 m 3750 5700 l  3750 6150 l  2850 6150 l  clp  gs col-1 s gr  | ||||
| % Polyline | ||||
| n 3030 4800 m 2925 4800 2925 5145 105 arcto 4 {pop} repeat 2925 5250 3645 5250 105 arcto 4 {pop} repeat 3750 5250 3750 4905 105 arcto 4 {pop} repeat 3750 4800 3030 4800 105 arcto 4 {pop} repeat clp  gs col-1 s gr  | ||||
| % Polyline | ||||
| n 1500 1425 m 1500 2100 l  gs col-1 s gr  | ||||
| n 1530.00 1980.00 m 1500.00 2100.00 l 1470.00 1980.00 l  1500.50 1980.50 l 1530.00 1980.00 l clp gs 0.00 setgray ef gr gs col-1 s gr | ||||
| % Polyline | ||||
| n 3300 1425 m 3300 4800 l  gs col-1 s gr  | ||||
| n 3330.00 4680.00 m 3300.00 4800.00 l 3270.00 4680.00 l  3300.50 4680.50 l 3330.00 4680.00 l clp gs 0.00 setgray ef gr gs col-1 s gr | ||||
| % Polyline | ||||
| n 3300 1575 m 1875 1575 l  1875 2100 l  gs col-1 s gr  | ||||
| n 1905.00 1980.00 m 1875.00 2100.00 l 1845.00 1980.00 l  1875.50 1980.50 l 1905.00 1980.00 l clp gs 0.00 setgray ef gr gs col-1 s gr | ||||
| % Polyline | ||||
| n 3300 1575 m 5700 1575 l  5700 2100 l  gs col-1 s gr  | ||||
| n 5730.00 1980.00 m 5700.00 2100.00 l 5670.00 1980.00 l  5700.50 1980.50 l 5730.00 1980.00 l clp gs 0.00 setgray ef gr gs col-1 s gr | ||||
| % Polyline | ||||
| n 6225 1350 m 6225 2100 l  gs col-1 s gr  | ||||
| n 6255.00 1980.00 m 6225.00 2100.00 l 6195.00 1980.00 l  6225.50 1980.50 l 6255.00 1980.00 l clp gs 0.00 setgray ef gr gs col-1 s gr | ||||
| % Polyline | ||||
| n 6075 2625 m 6075 3300 l  gs col-1 s gr  | ||||
| n 6105.00 3180.00 m 6075.00 3300.00 l 6045.00 3180.00 l  6075.50 3180.50 l 6105.00 3180.00 l clp gs 0.00 setgray ef gr gs col-1 s gr | ||||
| % Polyline | ||||
| n 4200 2250 m 4200 2700 l  gs col-1 s gr  | ||||
| n 4230.00 2580.00 m 4200.00 2700.00 l 4170.00 2580.00 l  4200.50 2580.50 l 4230.00 2580.00 l clp gs 0.00 setgray ef gr gs col-1 s gr | ||||
| % Polyline | ||||
| n 4200 3150 m 4200 3600 l  gs col-1 s gr  | ||||
| n 4230.00 3480.00 m 4200.00 3600.00 l 4170.00 3480.00 l  4200.50 3480.50 l 4230.00 3480.00 l clp gs 0.00 setgray ef gr gs col-1 s gr | ||||
| % Polyline | ||||
| n 4200 4050 m 4200 4500 l  3675 4500 l  3675 4800 l  gs col-1 s gr  | ||||
| n 3705.00 4680.00 m 3675.00 4800.00 l 3645.00 4680.00 l  3675.50 4680.50 l 3705.00 4680.00 l clp gs 0.00 setgray ef gr gs col-1 s gr | ||||
| % Polyline | ||||
| n 3375 5250 m 3375 5700 l  gs col-1 s gr  | ||||
| n 3405.00 5580.00 m 3375.00 5700.00 l 3345.00 5580.00 l  3375.50 5580.50 l 3405.00 5580.00 l clp gs 0.00 setgray ef gr gs col-1 s gr | ||||
| % Polyline | ||||
| n 3300 2925 m 3750 2925 l  gs col-1 s gr  | ||||
| n 3630.00 2895.00 m 3750.00 2925.00 l 3630.00 2955.00 l  3630.50 2925.50 l 3630.00 2895.00 l clp gs 0.00 setgray ef gr gs col-1 s gr | ||||
| % Polyline | ||||
| n 1500 2625 m 1500 3300 l  gs col-1 s gr  | ||||
| n 1530.00 3180.00 m 1500.00 3300.00 l 1470.00 3180.00 l  1500.50 3180.50 l 1530.00 3180.00 l clp gs 0.00 setgray ef gr gs col-1 s gr | ||||
| % Polyline | ||||
| n 1050 3300 m 2100 3300 l  2100 3750 l  1050 3750 l  clp  gs col-1 s gr  | ||||
| % Polyline | ||||
| n 4875 3825 m 5250 3825 l  5250 2400 l  5550 2400 l  gs col-1 s gr  | ||||
| n 5430.00 2370.00 m 5550.00 2400.00 l 5430.00 2430.00 l  5430.50 2400.50 l 5430.00 2370.00 l clp gs 0.00 setgray ef gr gs col-1 s gr | ||||
| /Times-Roman findfont 180.00 scalefont setfont | ||||
| 1200 1200 m | ||||
| gs 1 -1 sc (acconfig.h) col-1 show gr | ||||
| /Times-Roman findfont 180.00 scalefont setfont | ||||
| 3000 1200 m | ||||
| gs 1 -1 sc (configure.in) col-1 show gr | ||||
| /Times-Roman findfont 180.00 scalefont setfont | ||||
| 5700 1200 m | ||||
| gs 1 -1 sc (Makefile.am) col-1 show gr | ||||
| /Times-Roman findfont 180.00 scalefont setfont | ||||
| 3900 2100 m | ||||
| gs 1 -1 sc (acinclude.m4) col-1 show gr | ||||
| /Times-Roman findfont 180.00 scalefont setfont | ||||
| 1200 2400 m | ||||
| gs 1 -1 sc (autoheader) col-1 show gr | ||||
| /Times-Roman findfont 180.00 scalefont setfont | ||||
| 1200 3600 m | ||||
| gs 1 -1 sc (config.in) col-1 show gr | ||||
| /Times-Roman findfont 180.00 scalefont setfont | ||||
| 5700 3600 m | ||||
| gs 1 -1 sc (Makefile.in) col-1 show gr | ||||
| /Times-Roman findfont 180.00 scalefont setfont | ||||
| 5700 2400 m | ||||
| gs 1 -1 sc (automake) col-1 show gr | ||||
| /Times-Roman findfont 180.00 scalefont setfont | ||||
| 3900 3900 m | ||||
| gs 1 -1 sc (aclocal.m4) col-1 show gr | ||||
| /Times-Roman findfont 180.00 scalefont setfont | ||||
| 3900 3000 m | ||||
| gs 1 -1 sc (aclocal) col-1 show gr | ||||
| /Times-Roman findfont 180.00 scalefont setfont | ||||
| 3000 6000 m | ||||
| gs 1 -1 sc (configure) col-1 show gr | ||||
| /Times-Roman findfont 180.00 scalefont setfont | ||||
| 3000 5100 m | ||||
| gs 1 -1 sc (autoconf) col-1 show gr | ||||
| $F2psEnd | ||||
| restore | ||||
							
								
								
									
										80
									
								
								etc/configdev.fig
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										80
									
								
								etc/configdev.fig
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,80 @@ | ||||
| #FIG 3.1 | ||||
| Portrait | ||||
| Center | ||||
| Inches | ||||
| 1200 2 | ||||
| 2 2 0 1 -1 7 0 0 -1 0.000 0 0 0 0 0 5 | ||||
| 	 1050 900 2100 900 2100 1425 1050 1425 1050 900 | ||||
| 2 2 0 1 -1 7 0 0 -1 0.000 0 0 0 0 0 5 | ||||
| 	 2925 900 3975 900 3975 1425 2925 1425 2925 900 | ||||
| 2 2 0 1 -1 7 0 0 -1 0.000 0 0 0 0 0 5 | ||||
| 	 5550 900 6750 900 6750 1350 5550 1350 5550 900 | ||||
| 2 2 0 1 -1 7 0 0 -1 0.000 0 0 0 0 0 5 | ||||
| 	 3750 1800 5025 1800 5025 2250 3750 2250 3750 1800 | ||||
| 2 4 0 1 -1 7 0 0 -1 0.000 0 0 7 0 0 5 | ||||
| 	 2175 2625 2175 2100 1050 2100 1050 2625 2175 2625 | ||||
| 2 2 0 1 -1 7 0 0 -1 0.000 0 0 0 0 0 5 | ||||
| 	 5550 3300 6675 3300 6675 3750 5550 3750 5550 3300 | ||||
| 2 4 0 1 -1 7 0 0 -1 0.000 0 0 7 0 0 5 | ||||
| 	 6600 2625 6600 2100 5550 2100 5550 2625 6600 2625 | ||||
| 2 2 0 1 -1 7 0 0 -1 0.000 0 0 0 0 0 5 | ||||
| 	 3750 3600 4875 3600 4875 4050 3750 4050 3750 3600 | ||||
| 2 4 0 1 -1 7 0 0 -1 0.000 0 0 7 0 0 5 | ||||
| 	 4650 3150 4650 2700 3750 2700 3750 3150 4650 3150 | ||||
| 2 2 0 1 -1 7 0 0 -1 0.000 0 0 0 0 0 5 | ||||
| 	 2850 5700 3750 5700 3750 6150 2850 6150 2850 5700 | ||||
| 2 4 0 1 -1 7 0 0 -1 0.000 0 0 7 0 0 5 | ||||
| 	 3750 5250 3750 4800 2925 4800 2925 5250 3750 5250 | ||||
| 2 1 0 1 -1 7 0 0 -1 0.000 0 0 -1 1 0 2 | ||||
| 	1 1 1.00 60.00 120.00 | ||||
| 	 1500 1425 1500 2100 | ||||
| 2 1 0 1 -1 7 0 0 -1 0.000 0 0 -1 1 0 2 | ||||
| 	1 1 1.00 60.00 120.00 | ||||
| 	 3300 1425 3300 4800 | ||||
| 2 1 0 1 -1 7 0 0 -1 0.000 0 0 -1 1 0 3 | ||||
| 	1 1 1.00 60.00 120.00 | ||||
| 	 3300 1575 1875 1575 1875 2100 | ||||
| 2 1 0 1 -1 7 0 0 -1 0.000 0 0 -1 1 0 3 | ||||
| 	1 1 1.00 60.00 120.00 | ||||
| 	 3300 1575 5700 1575 5700 2100 | ||||
| 2 1 0 1 -1 7 0 0 -1 0.000 0 0 -1 1 0 2 | ||||
| 	1 1 1.00 60.00 120.00 | ||||
| 	 6225 1350 6225 2100 | ||||
| 2 1 0 1 -1 7 0 0 -1 0.000 0 0 -1 1 0 2 | ||||
| 	1 1 1.00 60.00 120.00 | ||||
| 	 6075 2625 6075 3300 | ||||
| 2 1 0 1 -1 7 0 0 -1 0.000 0 0 -1 1 0 2 | ||||
| 	1 1 1.00 60.00 120.00 | ||||
| 	 4200 2250 4200 2700 | ||||
| 2 1 0 1 -1 7 0 0 -1 0.000 0 0 -1 1 0 2 | ||||
| 	1 1 1.00 60.00 120.00 | ||||
| 	 4200 3150 4200 3600 | ||||
| 2 1 0 1 -1 7 0 0 -1 0.000 0 0 -1 1 0 4 | ||||
| 	1 1 1.00 60.00 120.00 | ||||
| 	 4200 4050 4200 4500 3675 4500 3675 4800 | ||||
| 2 1 0 1 -1 7 0 0 -1 0.000 0 0 -1 1 0 2 | ||||
| 	1 1 1.00 60.00 120.00 | ||||
| 	 3375 5250 3375 5700 | ||||
| 2 1 0 1 -1 7 0 0 -1 0.000 0 0 -1 1 0 2 | ||||
| 	1 1 1.00 60.00 120.00 | ||||
| 	 3300 2925 3750 2925 | ||||
| 2 1 0 1 -1 7 0 0 -1 0.000 0 0 -1 1 0 2 | ||||
| 	1 1 1.00 60.00 120.00 | ||||
| 	 1500 2625 1500 3300 | ||||
| 2 2 0 1 -1 7 0 0 -1 0.000 0 0 0 0 0 5 | ||||
| 	 1050 3300 2100 3300 2100 3750 1050 3750 1050 3300 | ||||
| 2 1 0 1 -1 7 0 0 -1 0.000 0 0 -1 1 0 4 | ||||
| 	1 1 1.00 60.00 120.00 | ||||
| 	 4875 3825 5250 3825 5250 2400 5550 2400 | ||||
| 4 0 -1 0 0 0 12 0.0000000 4 180 780 1200 1200 acconfig.h\001 | ||||
| 4 0 -1 0 0 0 12 0.0000000 4 180 885 3000 1200 configure.in\001 | ||||
| 4 0 -1 0 0 0 12 0.0000000 4 135 945 5700 1200 Makefile.am\001 | ||||
| 4 0 -1 0 0 0 12 0.0000000 4 135 990 3900 2100 acinclude.m4\001 | ||||
| 4 0 -1 0 0 0 12 0.0000000 4 135 840 1200 2400 autoheader\001 | ||||
| 4 0 -1 0 0 0 12 0.0000000 4 180 645 1200 3600 config.in\001 | ||||
| 4 0 -1 0 0 0 12 0.0000000 4 135 855 5700 3600 Makefile.in\001 | ||||
| 4 0 -1 0 0 0 12 0.0000000 4 135 735 5700 2400 automake\001 | ||||
| 4 0 -1 0 0 0 12 0.0000000 4 135 810 3900 3900 aclocal.m4\001 | ||||
| 4 0 -1 0 0 0 12 0.0000000 4 135 540 3900 3000 aclocal\001 | ||||
| 4 0 -1 0 0 0 12 0.0000000 4 180 705 3000 6000 configure\001 | ||||
| 4 0 -1 0 0 0 12 0.0000000 4 135 660 3000 5100 autoconf\001 | ||||
							
								
								
									
										
											BIN
										
									
								
								etc/configdev.jin
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								etc/configdev.jin
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| After Width: | Height: | Size: 18 KiB | 
							
								
								
									
										17
									
								
								etc/configdev.tin
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										17
									
								
								etc/configdev.tin
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,17 @@ | ||||
|    acconfig.h       configure.in                 Makefile.am | ||||
|        |                |                           | | ||||
|        |  --------------+----------------------     | | ||||
|        |  |             |                     |     | | ||||
|        v  v             |    acinclude.m4     |     | | ||||
|    *autoheader*         |         |           v     v | ||||
|        |                |         v      --->*automake*  | ||||
|        v                |--->*aclocal*   |       |       | ||||
|    config.in            |         |      |       v       | ||||
|                         |         v      |   Makefile.in | ||||
|                         |    aclocal.m4--- | ||||
|                         |     | | ||||
|                         v     v | ||||
|                        *autoconf* | ||||
|                            | | ||||
|                            v | ||||
|                        configure | ||||
							
								
								
									
										862
									
								
								etc/configure
									
									
									
									
										vendored
									
									
										Executable file
									
								
							
							
						
						
									
										862
									
								
								etc/configure
									
									
									
									
										vendored
									
									
										Executable file
									
								
							| @@ -0,0 +1,862 @@ | ||||
| #! /bin/sh | ||||
|  | ||||
| # Guess values for system-dependent variables and create Makefiles. | ||||
| # Generated automatically using autoconf version 2.12.1  | ||||
| # Copyright (C) 1992, 93, 94, 95, 96 Free Software Foundation, Inc. | ||||
| # | ||||
| # This configure script is free software; the Free Software Foundation | ||||
| # gives unlimited permission to copy, distribute and modify it. | ||||
|  | ||||
| # Defaults: | ||||
| ac_help= | ||||
| ac_default_prefix=/usr/local | ||||
| # Any additions from configure.in: | ||||
|  | ||||
| # Initialize some variables set by options. | ||||
| # The variables have the same names as the options, with | ||||
| # dashes changed to underlines. | ||||
| build=NONE | ||||
| cache_file=./config.cache | ||||
| exec_prefix=NONE | ||||
| host=NONE | ||||
| no_create= | ||||
| nonopt=NONE | ||||
| no_recursion= | ||||
| prefix=NONE | ||||
| program_prefix=NONE | ||||
| program_suffix=NONE | ||||
| program_transform_name=s,x,x, | ||||
| silent= | ||||
| site= | ||||
| srcdir= | ||||
| target=NONE | ||||
| verbose= | ||||
| x_includes=NONE | ||||
| x_libraries=NONE | ||||
| bindir='${exec_prefix}/bin' | ||||
| sbindir='${exec_prefix}/sbin' | ||||
| libexecdir='${exec_prefix}/libexec' | ||||
| datadir='${prefix}/share' | ||||
| sysconfdir='${prefix}/etc' | ||||
| sharedstatedir='${prefix}/com' | ||||
| localstatedir='${prefix}/var' | ||||
| libdir='${exec_prefix}/lib' | ||||
| includedir='${prefix}/include' | ||||
| oldincludedir='/usr/include' | ||||
| infodir='${prefix}/info' | ||||
| mandir='${prefix}/man' | ||||
|  | ||||
| # Initialize some other variables. | ||||
| subdirs= | ||||
| MFLAGS= MAKEFLAGS= | ||||
| SHELL=${CONFIG_SHELL-/bin/sh} | ||||
| # Maximum number of lines to put in a shell here document. | ||||
| ac_max_here_lines=12 | ||||
|  | ||||
| ac_prev= | ||||
| for ac_option | ||||
| do | ||||
|  | ||||
|   # If the previous option needs an argument, assign it. | ||||
|   if test -n "$ac_prev"; then | ||||
|     eval "$ac_prev=\$ac_option" | ||||
|     ac_prev= | ||||
|     continue | ||||
|   fi | ||||
|  | ||||
|   case "$ac_option" in | ||||
|   -*=*) ac_optarg=`echo "$ac_option" | sed 's/[-_a-zA-Z0-9]*=//'` ;; | ||||
|   *) ac_optarg= ;; | ||||
|   esac | ||||
|  | ||||
|   # Accept the important Cygnus configure options, so we can diagnose typos. | ||||
|  | ||||
|   case "$ac_option" in | ||||
|  | ||||
|   -bindir | --bindir | --bindi | --bind | --bin | --bi) | ||||
|     ac_prev=bindir ;; | ||||
|   -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*) | ||||
|     bindir="$ac_optarg" ;; | ||||
|  | ||||
|   -build | --build | --buil | --bui | --bu) | ||||
|     ac_prev=build ;; | ||||
|   -build=* | --build=* | --buil=* | --bui=* | --bu=*) | ||||
|     build="$ac_optarg" ;; | ||||
|  | ||||
|   -cache-file | --cache-file | --cache-fil | --cache-fi \ | ||||
|   | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c) | ||||
|     ac_prev=cache_file ;; | ||||
|   -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \ | ||||
|   | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*) | ||||
|     cache_file="$ac_optarg" ;; | ||||
|  | ||||
|   -datadir | --datadir | --datadi | --datad | --data | --dat | --da) | ||||
|     ac_prev=datadir ;; | ||||
|   -datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* \ | ||||
|   | --da=*) | ||||
|     datadir="$ac_optarg" ;; | ||||
|  | ||||
|   -disable-* | --disable-*) | ||||
|     ac_feature=`echo $ac_option|sed -e 's/-*disable-//'` | ||||
|     # Reject names that are not valid shell variable names. | ||||
|     if test -n "`echo $ac_feature| sed 's/[-a-zA-Z0-9_]//g'`"; then | ||||
|       { echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; } | ||||
|     fi | ||||
|     ac_feature=`echo $ac_feature| sed 's/-/_/g'` | ||||
|     eval "enable_${ac_feature}=no" ;; | ||||
|  | ||||
|   -enable-* | --enable-*) | ||||
|     ac_feature=`echo $ac_option|sed -e 's/-*enable-//' -e 's/=.*//'` | ||||
|     # Reject names that are not valid shell variable names. | ||||
|     if test -n "`echo $ac_feature| sed 's/[-_a-zA-Z0-9]//g'`"; then | ||||
|       { echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; } | ||||
|     fi | ||||
|     ac_feature=`echo $ac_feature| sed 's/-/_/g'` | ||||
|     case "$ac_option" in | ||||
|       *=*) ;; | ||||
|       *) ac_optarg=yes ;; | ||||
|     esac | ||||
|     eval "enable_${ac_feature}='$ac_optarg'" ;; | ||||
|  | ||||
|   -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \ | ||||
|   | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \ | ||||
|   | --exec | --exe | --ex) | ||||
|     ac_prev=exec_prefix ;; | ||||
|   -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \ | ||||
|   | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \ | ||||
|   | --exec=* | --exe=* | --ex=*) | ||||
|     exec_prefix="$ac_optarg" ;; | ||||
|  | ||||
|   -gas | --gas | --ga | --g) | ||||
|     # Obsolete; use --with-gas. | ||||
|     with_gas=yes ;; | ||||
|  | ||||
|   -help | --help | --hel | --he) | ||||
|     # Omit some internal or obsolete options to make the list less imposing. | ||||
|     # This message is too long to be a string in the A/UX 3.1 sh. | ||||
|     cat << EOF | ||||
| Usage: configure [options] [host] | ||||
| Options: [defaults in brackets after descriptions] | ||||
| Configuration: | ||||
|   --cache-file=FILE       cache test results in FILE | ||||
|   --help                  print this message | ||||
|   --no-create             do not create output files | ||||
|   --quiet, --silent       do not print \`checking...' messages | ||||
|   --version               print the version of autoconf that created configure | ||||
| Directory and file names: | ||||
|   --prefix=PREFIX         install architecture-independent files in PREFIX | ||||
|                           [$ac_default_prefix] | ||||
|   --exec-prefix=EPREFIX   install architecture-dependent files in EPREFIX | ||||
|                           [same as prefix] | ||||
|   --bindir=DIR            user executables in DIR [EPREFIX/bin] | ||||
|   --sbindir=DIR           system admin executables in DIR [EPREFIX/sbin] | ||||
|   --libexecdir=DIR        program executables in DIR [EPREFIX/libexec] | ||||
|   --datadir=DIR           read-only architecture-independent data in DIR | ||||
|                           [PREFIX/share] | ||||
|   --sysconfdir=DIR        read-only single-machine data in DIR [PREFIX/etc] | ||||
|   --sharedstatedir=DIR    modifiable architecture-independent data in DIR | ||||
|                           [PREFIX/com] | ||||
|   --localstatedir=DIR     modifiable single-machine data in DIR [PREFIX/var] | ||||
|   --libdir=DIR            object code libraries in DIR [EPREFIX/lib] | ||||
|   --includedir=DIR        C header files in DIR [PREFIX/include] | ||||
|   --oldincludedir=DIR     C header files for non-gcc in DIR [/usr/include] | ||||
|   --infodir=DIR           info documentation in DIR [PREFIX/info] | ||||
|   --mandir=DIR            man documentation in DIR [PREFIX/man] | ||||
|   --srcdir=DIR            find the sources in DIR [configure dir or ..] | ||||
|   --program-prefix=PREFIX prepend PREFIX to installed program names | ||||
|   --program-suffix=SUFFIX append SUFFIX to installed program names | ||||
|   --program-transform-name=PROGRAM | ||||
|                           run sed PROGRAM on installed program names | ||||
| EOF | ||||
|     cat << EOF | ||||
| Host type: | ||||
|   --build=BUILD           configure for building on BUILD [BUILD=HOST] | ||||
|   --host=HOST             configure for HOST [guessed] | ||||
|   --target=TARGET         configure for TARGET [TARGET=HOST] | ||||
| Features and packages: | ||||
|   --disable-FEATURE       do not include FEATURE (same as --enable-FEATURE=no) | ||||
|   --enable-FEATURE[=ARG]  include FEATURE [ARG=yes] | ||||
|   --with-PACKAGE[=ARG]    use PACKAGE [ARG=yes] | ||||
|   --without-PACKAGE       do not use PACKAGE (same as --with-PACKAGE=no) | ||||
|   --x-includes=DIR        X include files are in DIR | ||||
|   --x-libraries=DIR       X library files are in DIR | ||||
| EOF | ||||
|     if test -n "$ac_help"; then | ||||
|       echo "--enable and --with options recognized:$ac_help" | ||||
|     fi | ||||
|     exit 0 ;; | ||||
|  | ||||
|   -host | --host | --hos | --ho) | ||||
|     ac_prev=host ;; | ||||
|   -host=* | --host=* | --hos=* | --ho=*) | ||||
|     host="$ac_optarg" ;; | ||||
|  | ||||
|   -includedir | --includedir | --includedi | --included | --include \ | ||||
|   | --includ | --inclu | --incl | --inc) | ||||
|     ac_prev=includedir ;; | ||||
|   -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \ | ||||
|   | --includ=* | --inclu=* | --incl=* | --inc=*) | ||||
|     includedir="$ac_optarg" ;; | ||||
|  | ||||
|   -infodir | --infodir | --infodi | --infod | --info | --inf) | ||||
|     ac_prev=infodir ;; | ||||
|   -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*) | ||||
|     infodir="$ac_optarg" ;; | ||||
|  | ||||
|   -libdir | --libdir | --libdi | --libd) | ||||
|     ac_prev=libdir ;; | ||||
|   -libdir=* | --libdir=* | --libdi=* | --libd=*) | ||||
|     libdir="$ac_optarg" ;; | ||||
|  | ||||
|   -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \ | ||||
|   | --libexe | --libex | --libe) | ||||
|     ac_prev=libexecdir ;; | ||||
|   -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \ | ||||
|   | --libexe=* | --libex=* | --libe=*) | ||||
|     libexecdir="$ac_optarg" ;; | ||||
|  | ||||
|   -localstatedir | --localstatedir | --localstatedi | --localstated \ | ||||
|   | --localstate | --localstat | --localsta | --localst \ | ||||
|   | --locals | --local | --loca | --loc | --lo) | ||||
|     ac_prev=localstatedir ;; | ||||
|   -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \ | ||||
|   | --localstate=* | --localstat=* | --localsta=* | --localst=* \ | ||||
|   | --locals=* | --local=* | --loca=* | --loc=* | --lo=*) | ||||
|     localstatedir="$ac_optarg" ;; | ||||
|  | ||||
|   -mandir | --mandir | --mandi | --mand | --man | --ma | --m) | ||||
|     ac_prev=mandir ;; | ||||
|   -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*) | ||||
|     mandir="$ac_optarg" ;; | ||||
|  | ||||
|   -nfp | --nfp | --nf) | ||||
|     # Obsolete; use --without-fp. | ||||
|     with_fp=no ;; | ||||
|  | ||||
|   -no-create | --no-create | --no-creat | --no-crea | --no-cre \ | ||||
|   | --no-cr | --no-c) | ||||
|     no_create=yes ;; | ||||
|  | ||||
|   -no-recursion | --no-recursion | --no-recursio | --no-recursi \ | ||||
|   | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) | ||||
|     no_recursion=yes ;; | ||||
|  | ||||
|   -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \ | ||||
|   | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \ | ||||
|   | --oldin | --oldi | --old | --ol | --o) | ||||
|     ac_prev=oldincludedir ;; | ||||
|   -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \ | ||||
|   | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \ | ||||
|   | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*) | ||||
|     oldincludedir="$ac_optarg" ;; | ||||
|  | ||||
|   -prefix | --prefix | --prefi | --pref | --pre | --pr | --p) | ||||
|     ac_prev=prefix ;; | ||||
|   -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*) | ||||
|     prefix="$ac_optarg" ;; | ||||
|  | ||||
|   -program-prefix | --program-prefix | --program-prefi | --program-pref \ | ||||
|   | --program-pre | --program-pr | --program-p) | ||||
|     ac_prev=program_prefix ;; | ||||
|   -program-prefix=* | --program-prefix=* | --program-prefi=* \ | ||||
|   | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*) | ||||
|     program_prefix="$ac_optarg" ;; | ||||
|  | ||||
|   -program-suffix | --program-suffix | --program-suffi | --program-suff \ | ||||
|   | --program-suf | --program-su | --program-s) | ||||
|     ac_prev=program_suffix ;; | ||||
|   -program-suffix=* | --program-suffix=* | --program-suffi=* \ | ||||
|   | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*) | ||||
|     program_suffix="$ac_optarg" ;; | ||||
|  | ||||
|   -program-transform-name | --program-transform-name \ | ||||
|   | --program-transform-nam | --program-transform-na \ | ||||
|   | --program-transform-n | --program-transform- \ | ||||
|   | --program-transform | --program-transfor \ | ||||
|   | --program-transfo | --program-transf \ | ||||
|   | --program-trans | --program-tran \ | ||||
|   | --progr-tra | --program-tr | --program-t) | ||||
|     ac_prev=program_transform_name ;; | ||||
|   -program-transform-name=* | --program-transform-name=* \ | ||||
|   | --program-transform-nam=* | --program-transform-na=* \ | ||||
|   | --program-transform-n=* | --program-transform-=* \ | ||||
|   | --program-transform=* | --program-transfor=* \ | ||||
|   | --program-transfo=* | --program-transf=* \ | ||||
|   | --program-trans=* | --program-tran=* \ | ||||
|   | --progr-tra=* | --program-tr=* | --program-t=*) | ||||
|     program_transform_name="$ac_optarg" ;; | ||||
|  | ||||
|   -q | -quiet | --quiet | --quie | --qui | --qu | --q \ | ||||
|   | -silent | --silent | --silen | --sile | --sil) | ||||
|     silent=yes ;; | ||||
|  | ||||
|   -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb) | ||||
|     ac_prev=sbindir ;; | ||||
|   -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \ | ||||
|   | --sbi=* | --sb=*) | ||||
|     sbindir="$ac_optarg" ;; | ||||
|  | ||||
|   -sharedstatedir | --sharedstatedir | --sharedstatedi \ | ||||
|   | --sharedstated | --sharedstate | --sharedstat | --sharedsta \ | ||||
|   | --sharedst | --shareds | --shared | --share | --shar \ | ||||
|   | --sha | --sh) | ||||
|     ac_prev=sharedstatedir ;; | ||||
|   -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \ | ||||
|   | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \ | ||||
|   | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \ | ||||
|   | --sha=* | --sh=*) | ||||
|     sharedstatedir="$ac_optarg" ;; | ||||
|  | ||||
|   -site | --site | --sit) | ||||
|     ac_prev=site ;; | ||||
|   -site=* | --site=* | --sit=*) | ||||
|     site="$ac_optarg" ;; | ||||
|  | ||||
|   -srcdir | --srcdir | --srcdi | --srcd | --src | --sr) | ||||
|     ac_prev=srcdir ;; | ||||
|   -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*) | ||||
|     srcdir="$ac_optarg" ;; | ||||
|  | ||||
|   -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \ | ||||
|   | --syscon | --sysco | --sysc | --sys | --sy) | ||||
|     ac_prev=sysconfdir ;; | ||||
|   -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \ | ||||
|   | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*) | ||||
|     sysconfdir="$ac_optarg" ;; | ||||
|  | ||||
|   -target | --target | --targe | --targ | --tar | --ta | --t) | ||||
|     ac_prev=target ;; | ||||
|   -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*) | ||||
|     target="$ac_optarg" ;; | ||||
|  | ||||
|   -v | -verbose | --verbose | --verbos | --verbo | --verb) | ||||
|     verbose=yes ;; | ||||
|  | ||||
|   -version | --version | --versio | --versi | --vers) | ||||
|     echo "configure generated by autoconf version 2.12.1" | ||||
|     exit 0 ;; | ||||
|  | ||||
|   -with-* | --with-*) | ||||
|     ac_package=`echo $ac_option|sed -e 's/-*with-//' -e 's/=.*//'` | ||||
|     # Reject names that are not valid shell variable names. | ||||
|     if test -n "`echo $ac_package| sed 's/[-_a-zA-Z0-9]//g'`"; then | ||||
|       { echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; } | ||||
|     fi | ||||
|     ac_package=`echo $ac_package| sed 's/-/_/g'` | ||||
|     case "$ac_option" in | ||||
|       *=*) ;; | ||||
|       *) ac_optarg=yes ;; | ||||
|     esac | ||||
|     eval "with_${ac_package}='$ac_optarg'" ;; | ||||
|  | ||||
|   -without-* | --without-*) | ||||
|     ac_package=`echo $ac_option|sed -e 's/-*without-//'` | ||||
|     # Reject names that are not valid shell variable names. | ||||
|     if test -n "`echo $ac_package| sed 's/[-a-zA-Z0-9_]//g'`"; then | ||||
|       { echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; } | ||||
|     fi | ||||
|     ac_package=`echo $ac_package| sed 's/-/_/g'` | ||||
|     eval "with_${ac_package}=no" ;; | ||||
|  | ||||
|   --x) | ||||
|     # Obsolete; use --with-x. | ||||
|     with_x=yes ;; | ||||
|  | ||||
|   -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \ | ||||
|   | --x-incl | --x-inc | --x-in | --x-i) | ||||
|     ac_prev=x_includes ;; | ||||
|   -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \ | ||||
|   | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*) | ||||
|     x_includes="$ac_optarg" ;; | ||||
|  | ||||
|   -x-libraries | --x-libraries | --x-librarie | --x-librari \ | ||||
|   | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l) | ||||
|     ac_prev=x_libraries ;; | ||||
|   -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \ | ||||
|   | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*) | ||||
|     x_libraries="$ac_optarg" ;; | ||||
|  | ||||
|   -*) { echo "configure: error: $ac_option: invalid option; use --help to show usage" 1>&2; exit 1; } | ||||
|     ;; | ||||
|  | ||||
|   *) | ||||
|     if test -n "`echo $ac_option| sed 's/[-a-z0-9.]//g'`"; then | ||||
|       echo "configure: warning: $ac_option: invalid host type" 1>&2 | ||||
|     fi | ||||
|     if test "x$nonopt" != xNONE; then | ||||
|       { echo "configure: error: can only configure for one host and one target at a time" 1>&2; exit 1; } | ||||
|     fi | ||||
|     nonopt="$ac_option" | ||||
|     ;; | ||||
|  | ||||
|   esac | ||||
| done | ||||
|  | ||||
| if test -n "$ac_prev"; then | ||||
|   { echo "configure: error: missing argument to --`echo $ac_prev | sed 's/_/-/g'`" 1>&2; exit 1; } | ||||
| fi | ||||
|  | ||||
| trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15 | ||||
|  | ||||
| # File descriptor usage: | ||||
| # 0 standard input | ||||
| # 1 file creation | ||||
| # 2 errors and warnings | ||||
| # 3 some systems may open it to /dev/tty | ||||
| # 4 used on the Kubota Titan | ||||
| # 6 checking for... messages and results | ||||
| # 5 compiler messages saved in config.log | ||||
| if test "$silent" = yes; then | ||||
|   exec 6>/dev/null | ||||
| else | ||||
|   exec 6>&1 | ||||
| fi | ||||
| exec 5>./config.log | ||||
|  | ||||
| echo "\ | ||||
| This file contains any messages produced by compilers while | ||||
| running configure, to aid debugging if configure makes a mistake. | ||||
| " 1>&5 | ||||
|  | ||||
| # Strip out --no-create and --no-recursion so they do not pile up. | ||||
| # Also quote any args containing shell metacharacters. | ||||
| ac_configure_args= | ||||
| for ac_arg | ||||
| do | ||||
|   case "$ac_arg" in | ||||
|   -no-create | --no-create | --no-creat | --no-crea | --no-cre \ | ||||
|   | --no-cr | --no-c) ;; | ||||
|   -no-recursion | --no-recursion | --no-recursio | --no-recursi \ | ||||
|   | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) ;; | ||||
|   *" "*|*"	"*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?]*) | ||||
|   ac_configure_args="$ac_configure_args '$ac_arg'" ;; | ||||
|   *) ac_configure_args="$ac_configure_args $ac_arg" ;; | ||||
|   esac | ||||
| done | ||||
|  | ||||
| # NLS nuisances. | ||||
| # Only set these to C if already set.  These must not be set unconditionally | ||||
| # because not all systems understand e.g. LANG=C (notably SCO). | ||||
| # Fixing LC_MESSAGES prevents Solaris sh from translating var values in `set'! | ||||
| # Non-C LC_CTYPE values break the ctype check. | ||||
| if test "${LANG+set}"   = set; then LANG=C;   export LANG;   fi | ||||
| if test "${LC_ALL+set}" = set; then LC_ALL=C; export LC_ALL; fi | ||||
| if test "${LC_MESSAGES+set}" = set; then LC_MESSAGES=C; export LC_MESSAGES; fi | ||||
| if test "${LC_CTYPE+set}"    = set; then LC_CTYPE=C;    export LC_CTYPE;    fi | ||||
|  | ||||
| # confdefs.h avoids OS command line length limits that DEFS can exceed. | ||||
| rm -rf conftest* confdefs.h | ||||
| # AIX cpp loses on an empty file, so make sure it contains at least a newline. | ||||
| echo > confdefs.h | ||||
|  | ||||
| # A filename unique to this package, relative to the directory that | ||||
| # configure is in, which we can look for to find out if srcdir is correct. | ||||
| ac_unique_file=Makefile.in | ||||
|  | ||||
| # Find the source files, if location was not specified. | ||||
| if test -z "$srcdir"; then | ||||
|   ac_srcdir_defaulted=yes | ||||
|   # Try the directory containing this script, then its parent. | ||||
|   ac_prog=$0 | ||||
|   ac_confdir=`echo $ac_prog|sed 's%/[^/][^/]*$%%'` | ||||
|   test "x$ac_confdir" = "x$ac_prog" && ac_confdir=. | ||||
|   srcdir=$ac_confdir | ||||
|   if test ! -r $srcdir/$ac_unique_file; then | ||||
|     srcdir=.. | ||||
|   fi | ||||
| else | ||||
|   ac_srcdir_defaulted=no | ||||
| fi | ||||
| if test ! -r $srcdir/$ac_unique_file; then | ||||
|   if test "$ac_srcdir_defaulted" = yes; then | ||||
|     { echo "configure: error: can not find sources in $ac_confdir or .." 1>&2; exit 1; } | ||||
|   else | ||||
|     { echo "configure: error: can not find sources in $srcdir" 1>&2; exit 1; } | ||||
|   fi | ||||
| fi | ||||
| srcdir=`echo "${srcdir}" | sed 's%\([^/]\)/*$%\1%'` | ||||
|  | ||||
| # Prefer explicitly selected file to automatically selected ones. | ||||
| if test -z "$CONFIG_SITE"; then | ||||
|   if test "x$prefix" != xNONE; then | ||||
|     CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site" | ||||
|   else | ||||
|     CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site" | ||||
|   fi | ||||
| fi | ||||
| for ac_site_file in $CONFIG_SITE; do | ||||
|   if test -r "$ac_site_file"; then | ||||
|     echo "loading site script $ac_site_file" | ||||
|     . "$ac_site_file" | ||||
|   fi | ||||
| done | ||||
|  | ||||
| if test -r "$cache_file"; then | ||||
|   echo "loading cache $cache_file" | ||||
|   . $cache_file | ||||
| else | ||||
|   echo "creating cache $cache_file" | ||||
|   > $cache_file | ||||
| fi | ||||
|  | ||||
| ac_ext=c | ||||
| # CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. | ||||
| ac_cpp='$CPP $CPPFLAGS' | ||||
| ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' | ||||
| ac_link='${CC-cc} -o conftest $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' | ||||
| cross_compiling=$ac_cv_prog_cc_cross | ||||
|  | ||||
| if (echo "testing\c"; echo 1,2,3) | grep c >/dev/null; then | ||||
|   # Stardent Vistra SVR4 grep lacks -e, says ghazi@caip.rutgers.edu. | ||||
|   if (echo -n testing; echo 1,2,3) | sed s/-n/xn/ | grep xn >/dev/null; then | ||||
|     ac_n= ac_c=' | ||||
| ' ac_t='	' | ||||
|   else | ||||
|     ac_n=-n ac_c= ac_t= | ||||
|   fi | ||||
| else | ||||
|   ac_n= ac_c='\c' ac_t= | ||||
| fi | ||||
|  | ||||
|  | ||||
|  | ||||
| ac_aux_dir= | ||||
| for ac_dir in $srcdir $srcdir/.. $srcdir/../..; do | ||||
|   if test -f $ac_dir/install-sh; then | ||||
|     ac_aux_dir=$ac_dir | ||||
|     ac_install_sh="$ac_aux_dir/install-sh -c" | ||||
|     break | ||||
|   elif test -f $ac_dir/install.sh; then | ||||
|     ac_aux_dir=$ac_dir | ||||
|     ac_install_sh="$ac_aux_dir/install.sh -c" | ||||
|     break | ||||
|   fi | ||||
| done | ||||
| if test -z "$ac_aux_dir"; then | ||||
|   { echo "configure: error: can not find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." 1>&2; exit 1; } | ||||
| fi | ||||
| ac_config_guess=$ac_aux_dir/config.guess | ||||
| ac_config_sub=$ac_aux_dir/config.sub | ||||
| ac_configure=$ac_aux_dir/configure # This should be Cygnus configure. | ||||
|  | ||||
| # Find a good install program.  We prefer a C program (faster), | ||||
| # so one script is as good as another.  But avoid the broken or | ||||
| # incompatible versions: | ||||
| # SysV /etc/install, /usr/sbin/install | ||||
| # SunOS /usr/etc/install | ||||
| # IRIX /sbin/install | ||||
| # AIX /bin/install | ||||
| # AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag | ||||
| # AFS /usr/afsws/bin/install, which mishandles nonexistent args | ||||
| # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" | ||||
| # ./install, which can be erroneously created by make from ./install.sh. | ||||
| echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6 | ||||
| echo "configure:555: checking for a BSD compatible install" >&5 | ||||
| if test -z "$INSTALL"; then | ||||
| if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then | ||||
|   echo $ac_n "(cached) $ac_c" 1>&6 | ||||
| else | ||||
|     IFS="${IFS= 	}"; ac_save_IFS="$IFS"; IFS="${IFS}:" | ||||
|   for ac_dir in $PATH; do | ||||
|     # Account for people who put trailing slashes in PATH elements. | ||||
|     case "$ac_dir/" in | ||||
|     /|./|.//|/etc/*|/usr/sbin/*|/usr/etc/*|/sbin/*|/usr/afsws/bin/*|/usr/ucb/*) ;; | ||||
|     *) | ||||
|       # OSF1 and SCO ODT 3.0 have their own names for install. | ||||
|       # Don't use installbsd from OSF since it installs stuff as root | ||||
|       # by default. | ||||
|       for ac_prog in ginstall scoinst install; do | ||||
|         if test -f $ac_dir/$ac_prog; then | ||||
| 	  if test $ac_prog = install && | ||||
|             grep dspmsg $ac_dir/$ac_prog >/dev/null 2>&1; then | ||||
| 	    # AIX install.  It has an incompatible calling convention. | ||||
| 	    : | ||||
| 	  else | ||||
| 	    ac_cv_path_install="$ac_dir/$ac_prog -c" | ||||
| 	    break 2 | ||||
| 	  fi | ||||
| 	fi | ||||
|       done | ||||
|       ;; | ||||
|     esac | ||||
|   done | ||||
|   IFS="$ac_save_IFS" | ||||
|  | ||||
| fi | ||||
|   if test "${ac_cv_path_install+set}" = set; then | ||||
|     INSTALL="$ac_cv_path_install" | ||||
|   else | ||||
|     # As a last resort, use the slow shell script.  We don't cache a | ||||
|     # path for INSTALL within a source directory, because that will | ||||
|     # break other packages using the cache if that directory is | ||||
|     # removed, or if the path is relative. | ||||
|     INSTALL="$ac_install_sh" | ||||
|   fi | ||||
| fi | ||||
| echo "$ac_t""$INSTALL" 1>&6 | ||||
|  | ||||
| # Use test -z because SunOS4 sh mishandles braces in ${var-val}. | ||||
| # It thinks the first close brace ends the variable substitution. | ||||
| test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}' | ||||
|  | ||||
| test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' | ||||
|  | ||||
|  | ||||
| trap '' 1 2 15 | ||||
| cat > confcache <<\EOF | ||||
| # This file is a shell script that caches the results of configure | ||||
| # tests run on this system so they can be shared between configure | ||||
| # scripts and configure runs.  It is not useful on other systems. | ||||
| # If it contains results you don't want to keep, you may remove or edit it. | ||||
| # | ||||
| # By default, configure uses ./config.cache as the cache file, | ||||
| # creating it if it does not exist already.  You can give configure | ||||
| # the --cache-file=FILE option to use a different cache file; that is | ||||
| # what configure does when it calls configure scripts in | ||||
| # subdirectories, so they share the cache. | ||||
| # Giving --cache-file=/dev/null disables caching, for debugging configure. | ||||
| # config.status only pays attention to the cache file if you give it the | ||||
| # --recheck option to rerun configure. | ||||
| # | ||||
| EOF | ||||
| # The following way of writing the cache mishandles newlines in values, | ||||
| # but we know of no workaround that is simple, portable, and efficient. | ||||
| # So, don't put newlines in cache variables' values. | ||||
| # Ultrix sh set writes to stderr and can't be redirected directly, | ||||
| # and sets the high bit in the cache file unless we assign to the vars. | ||||
| (set) 2>&1 | | ||||
|   case `(ac_space=' '; set) 2>&1 | grep ac_space` in | ||||
|   *ac_space=\ *) | ||||
|     # `set' does not quote correctly, so add quotes (double-quote substitution | ||||
|     # turns \\\\ into \\, and sed turns \\ into \). | ||||
|     sed -n \ | ||||
|       -e "s/'/'\\\\''/g" \ | ||||
|       -e "s/^\\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\\)=\\(.*\\)/\\1=\${\\1='\\2'}/p" | ||||
|     ;; | ||||
|   *) | ||||
|     # `set' quotes correctly as required by POSIX, so do not add quotes. | ||||
|     sed -n -e 's/^\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\)=\(.*\)/\1=${\1=\2}/p' | ||||
|     ;; | ||||
|   esac >> confcache | ||||
| if cmp -s $cache_file confcache; then | ||||
|   : | ||||
| else | ||||
|   if test -w $cache_file; then | ||||
|     echo "updating cache $cache_file" | ||||
|     cat confcache > $cache_file | ||||
|   else | ||||
|     echo "not updating unwritable cache $cache_file" | ||||
|   fi | ||||
| fi | ||||
| rm -f confcache | ||||
|  | ||||
| trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15 | ||||
|  | ||||
| test "x$prefix" = xNONE && prefix=$ac_default_prefix | ||||
| # Let make expand exec_prefix. | ||||
| test "x$exec_prefix" = xNONE && exec_prefix='${prefix}' | ||||
|  | ||||
| # Any assignment to VPATH causes Sun make to only execute | ||||
| # the first set of double-colon rules, so remove it if not needed. | ||||
| # If there is a colon in the path, we need to keep it. | ||||
| if test "x$srcdir" = x.; then | ||||
|   ac_vpsub='/^[ 	]*VPATH[ 	]*=[^:]*$/d' | ||||
| fi | ||||
|  | ||||
| trap 'rm -f $CONFIG_STATUS conftest*; exit 1' 1 2 15 | ||||
|  | ||||
| # Transform confdefs.h into DEFS. | ||||
| # Protect against shell expansion while executing Makefile rules. | ||||
| # Protect against Makefile macro expansion. | ||||
| cat > conftest.defs <<\EOF | ||||
| s%#define \([A-Za-z_][A-Za-z0-9_]*\) *\(.*\)%-D\1=\2%g | ||||
| s%[ 	`~#$^&*(){}\\|;'"<>?]%\\&%g | ||||
| s%\[%\\&%g | ||||
| s%\]%\\&%g | ||||
| s%\$%$$%g | ||||
| EOF | ||||
| DEFS=`sed -f conftest.defs confdefs.h | tr '\012' ' '` | ||||
| rm -f conftest.defs | ||||
|  | ||||
|  | ||||
| # Without the "./", some shells look in PATH for config.status. | ||||
| : ${CONFIG_STATUS=./config.status} | ||||
|  | ||||
| echo creating $CONFIG_STATUS | ||||
| rm -f $CONFIG_STATUS | ||||
| cat > $CONFIG_STATUS <<EOF | ||||
| #! /bin/sh | ||||
| # Generated automatically by configure. | ||||
| # Run this file to recreate the current configuration. | ||||
| # This directory was configured as follows, | ||||
| # on host `(hostname || uname -n) 2>/dev/null | sed 1q`: | ||||
| # | ||||
| # $0 $ac_configure_args | ||||
| # | ||||
| # Compiler output produced by configure, useful for debugging | ||||
| # configure, is in ./config.log if it exists. | ||||
|  | ||||
| ac_cs_usage="Usage: $CONFIG_STATUS [--recheck] [--version] [--help]" | ||||
| for ac_option | ||||
| do | ||||
|   case "\$ac_option" in | ||||
|   -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) | ||||
|     echo "running \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion" | ||||
|     exec \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion ;; | ||||
|   -version | --version | --versio | --versi | --vers | --ver | --ve | --v) | ||||
|     echo "$CONFIG_STATUS generated by autoconf version 2.12.1" | ||||
|     exit 0 ;; | ||||
|   -help | --help | --hel | --he | --h) | ||||
|     echo "\$ac_cs_usage"; exit 0 ;; | ||||
|   *) echo "\$ac_cs_usage"; exit 1 ;; | ||||
|   esac | ||||
| done | ||||
|  | ||||
| ac_given_srcdir=$srcdir | ||||
| ac_given_INSTALL="$INSTALL" | ||||
|  | ||||
| trap 'rm -fr `echo "Makefile" | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15 | ||||
| EOF | ||||
| cat >> $CONFIG_STATUS <<EOF | ||||
|  | ||||
| # Protect against being on the right side of a sed subst in config.status. | ||||
| sed 's/%@/@@/; s/@%/@@/; s/%g\$/@g/; /@g\$/s/[\\\\&%]/\\\\&/g; | ||||
|  s/@@/%@/; s/@@/@%/; s/@g\$/%g/' > conftest.subs <<\\CEOF | ||||
| $ac_vpsub | ||||
| $extrasub | ||||
| s%@SHELL@%$SHELL%g | ||||
| s%@CFLAGS@%$CFLAGS%g | ||||
| s%@CPPFLAGS@%$CPPFLAGS%g | ||||
| s%@CXXFLAGS@%$CXXFLAGS%g | ||||
| s%@DEFS@%$DEFS%g | ||||
| s%@LDFLAGS@%$LDFLAGS%g | ||||
| s%@LIBS@%$LIBS%g | ||||
| s%@exec_prefix@%$exec_prefix%g | ||||
| s%@prefix@%$prefix%g | ||||
| s%@program_transform_name@%$program_transform_name%g | ||||
| s%@bindir@%$bindir%g | ||||
| s%@sbindir@%$sbindir%g | ||||
| s%@libexecdir@%$libexecdir%g | ||||
| s%@datadir@%$datadir%g | ||||
| s%@sysconfdir@%$sysconfdir%g | ||||
| s%@sharedstatedir@%$sharedstatedir%g | ||||
| s%@localstatedir@%$localstatedir%g | ||||
| s%@libdir@%$libdir%g | ||||
| s%@includedir@%$includedir%g | ||||
| s%@oldincludedir@%$oldincludedir%g | ||||
| s%@infodir@%$infodir%g | ||||
| s%@mandir@%$mandir%g | ||||
| s%@INSTALL_PROGRAM@%$INSTALL_PROGRAM%g | ||||
| s%@INSTALL_DATA@%$INSTALL_DATA%g | ||||
|  | ||||
| CEOF | ||||
| EOF | ||||
|  | ||||
| cat >> $CONFIG_STATUS <<\EOF | ||||
|  | ||||
| # Split the substitutions into bite-sized pieces for seds with | ||||
| # small command number limits, like on Digital OSF/1 and HP-UX. | ||||
| ac_max_sed_cmds=90 # Maximum number of lines to put in a sed script. | ||||
| ac_file=1 # Number of current file. | ||||
| ac_beg=1 # First line for current file. | ||||
| ac_end=$ac_max_sed_cmds # Line after last line for current file. | ||||
| ac_more_lines=: | ||||
| ac_sed_cmds="" | ||||
| while $ac_more_lines; do | ||||
|   if test $ac_beg -gt 1; then | ||||
|     sed "1,${ac_beg}d; ${ac_end}q" conftest.subs > conftest.s$ac_file | ||||
|   else | ||||
|     sed "${ac_end}q" conftest.subs > conftest.s$ac_file | ||||
|   fi | ||||
|   if test ! -s conftest.s$ac_file; then | ||||
|     ac_more_lines=false | ||||
|     rm -f conftest.s$ac_file | ||||
|   else | ||||
|     if test -z "$ac_sed_cmds"; then | ||||
|       ac_sed_cmds="sed -f conftest.s$ac_file" | ||||
|     else | ||||
|       ac_sed_cmds="$ac_sed_cmds | sed -f conftest.s$ac_file" | ||||
|     fi | ||||
|     ac_file=`expr $ac_file + 1` | ||||
|     ac_beg=$ac_end | ||||
|     ac_end=`expr $ac_end + $ac_max_sed_cmds` | ||||
|   fi | ||||
| done | ||||
| if test -z "$ac_sed_cmds"; then | ||||
|   ac_sed_cmds=cat | ||||
| fi | ||||
| EOF | ||||
|  | ||||
| cat >> $CONFIG_STATUS <<EOF | ||||
|  | ||||
| CONFIG_FILES=\${CONFIG_FILES-"Makefile"} | ||||
| EOF | ||||
| cat >> $CONFIG_STATUS <<\EOF | ||||
| for ac_file in .. $CONFIG_FILES; do if test "x$ac_file" != x..; then | ||||
|   # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in". | ||||
|   case "$ac_file" in | ||||
|   *:*) ac_file_in=`echo "$ac_file"|sed 's%[^:]*:%%'` | ||||
|        ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;; | ||||
|   *) ac_file_in="${ac_file}.in" ;; | ||||
|   esac | ||||
|  | ||||
|   # Adjust a relative srcdir, top_srcdir, and INSTALL for subdirectories. | ||||
|  | ||||
|   # Remove last slash and all that follows it.  Not all systems have dirname. | ||||
|   ac_dir=`echo $ac_file|sed 's%/[^/][^/]*$%%'` | ||||
|   if test "$ac_dir" != "$ac_file" && test "$ac_dir" != .; then | ||||
|     # The file is in a subdirectory. | ||||
|     test ! -d "$ac_dir" && mkdir "$ac_dir" | ||||
|     ac_dir_suffix="/`echo $ac_dir|sed 's%^\./%%'`" | ||||
|     # A "../" for each directory in $ac_dir_suffix. | ||||
|     ac_dots=`echo $ac_dir_suffix|sed 's%/[^/]*%../%g'` | ||||
|   else | ||||
|     ac_dir_suffix= ac_dots= | ||||
|   fi | ||||
|  | ||||
|   case "$ac_given_srcdir" in | ||||
|   .)  srcdir=. | ||||
|       if test -z "$ac_dots"; then top_srcdir=. | ||||
|       else top_srcdir=`echo $ac_dots|sed 's%/$%%'`; fi ;; | ||||
|   /*) srcdir="$ac_given_srcdir$ac_dir_suffix"; top_srcdir="$ac_given_srcdir" ;; | ||||
|   *) # Relative path. | ||||
|     srcdir="$ac_dots$ac_given_srcdir$ac_dir_suffix" | ||||
|     top_srcdir="$ac_dots$ac_given_srcdir" ;; | ||||
|   esac | ||||
|  | ||||
|   case "$ac_given_INSTALL" in | ||||
|   [/$]*) INSTALL="$ac_given_INSTALL" ;; | ||||
|   *) INSTALL="$ac_dots$ac_given_INSTALL" ;; | ||||
|   esac | ||||
|  | ||||
|   echo creating "$ac_file" | ||||
|   rm -f "$ac_file" | ||||
|   configure_input="Generated automatically from `echo $ac_file_in|sed 's%.*/%%'` by configure." | ||||
|   case "$ac_file" in | ||||
|   *Makefile*) ac_comsub="1i\\ | ||||
| # $configure_input" ;; | ||||
|   *) ac_comsub= ;; | ||||
|   esac | ||||
|  | ||||
|   ac_file_inputs=`echo $ac_file_in|sed -e "s%^%$ac_given_srcdir/%" -e "s%:% $ac_given_srcdir/%g"` | ||||
|   sed -e "$ac_comsub | ||||
| s%@configure_input@%$configure_input%g | ||||
| s%@srcdir@%$srcdir%g | ||||
| s%@top_srcdir@%$top_srcdir%g | ||||
| s%@INSTALL@%$INSTALL%g | ||||
| " $ac_file_inputs | (eval "$ac_sed_cmds") > $ac_file | ||||
| fi; done | ||||
| rm -f conftest.s* | ||||
|  | ||||
| EOF | ||||
| cat >> $CONFIG_STATUS <<EOF | ||||
|  | ||||
| EOF | ||||
| cat >> $CONFIG_STATUS <<\EOF | ||||
|  | ||||
| exit 0 | ||||
| EOF | ||||
| chmod +x $CONFIG_STATUS | ||||
| rm -fr confdefs* $ac_clean_files | ||||
| test "$no_create" = yes || ${CONFIG_SHELL-/bin/sh} $CONFIG_STATUS || exit 1 | ||||
|  | ||||
							
								
								
									
										7
									
								
								etc/configure.in
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										7
									
								
								etc/configure.in
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,7 @@ | ||||
| dnl Process this file with autoconf to produce a configure script. | ||||
| AC_PREREQ(2.5) | ||||
| AC_INIT(Makefile.in) | ||||
|  | ||||
| AC_PROG_INSTALL | ||||
|  | ||||
| AC_OUTPUT(Makefile) | ||||
							
								
								
									
										2644
									
								
								etc/configure.texi
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										2644
									
								
								etc/configure.texi
									
									
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										914
									
								
								etc/make-stds.texi
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										914
									
								
								etc/make-stds.texi
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,914 @@ | ||||
| @comment This file is included by both standards.texi and make.texinfo. | ||||
| @comment It was broken out of standards.texi on 1/6/93 by roland. | ||||
|  | ||||
| @node Makefile Conventions | ||||
| @chapter Makefile Conventions | ||||
| @comment standards.texi does not print an index, but make.texinfo does. | ||||
| @cindex makefile, conventions for | ||||
| @cindex conventions for makefiles | ||||
| @cindex standards for makefiles | ||||
|  | ||||
| This | ||||
| @ifinfo | ||||
| node | ||||
| @end ifinfo | ||||
| @iftex | ||||
| @ifset CODESTD | ||||
| section | ||||
| @end ifset | ||||
| @ifclear CODESTD | ||||
| chapter | ||||
| @end ifclear | ||||
| @end iftex | ||||
| describes conventions for writing the Makefiles for GNU programs. | ||||
|  | ||||
| @menu | ||||
| * Makefile Basics::		General Conventions for Makefiles | ||||
| * Utilities in Makefiles::	Utilities in Makefiles | ||||
| * Command Variables::		Variables for Specifying Commands | ||||
| * Directory Variables::		Variables for Installation Directories | ||||
| * Standard Targets::		Standard Targets for Users | ||||
| * Install Command Categories::  Three categories of commands in the `install' | ||||
|                                   rule: normal, pre-install and post-install. | ||||
| @end menu | ||||
|  | ||||
| @node Makefile Basics | ||||
| @section General Conventions for Makefiles | ||||
|  | ||||
| Every Makefile should contain this line: | ||||
|  | ||||
| @example | ||||
| SHELL = /bin/sh | ||||
| @end example | ||||
|  | ||||
| @noindent | ||||
| to avoid trouble on systems where the @code{SHELL} variable might be | ||||
| inherited from the environment.  (This is never a problem with GNU | ||||
| @code{make}.) | ||||
|  | ||||
| Different @code{make} programs have incompatible suffix lists and | ||||
| implicit rules, and this sometimes creates confusion or misbehavior.  So | ||||
| it is a good idea to set the suffix list explicitly using only the | ||||
| suffixes you need in the particular Makefile, like this: | ||||
|  | ||||
| @example | ||||
| .SUFFIXES: | ||||
| .SUFFIXES: .c .o | ||||
| @end example | ||||
|  | ||||
| @noindent | ||||
| The first line clears out the suffix list, the second introduces all | ||||
| suffixes which may be subject to implicit rules in this Makefile. | ||||
|  | ||||
| Don't assume that @file{.} is in the path for command execution.  When | ||||
| you need to run programs that are a part of your package during the | ||||
| make, please make sure that it uses @file{./} if the program is built as | ||||
| part of the make or @file{$(srcdir)/} if the file is an unchanging part | ||||
| of the source code.  Without one of these prefixes, the current search | ||||
| path is used. | ||||
|  | ||||
| The distinction between @file{./} (the @dfn{build directory}) and | ||||
| @file{$(srcdir)/} (the @dfn{source directory}) is important because | ||||
| users can build in a separate directory using the @samp{--srcdir} option | ||||
| to @file{configure}.  A rule of the form: | ||||
|  | ||||
| @smallexample | ||||
| foo.1 : foo.man sedscript | ||||
|         sed -e sedscript foo.man > foo.1 | ||||
| @end smallexample | ||||
|  | ||||
| @noindent | ||||
| will fail when the build directory is not the source directory, because | ||||
| @file{foo.man} and @file{sedscript} are in the the source directory. | ||||
|  | ||||
| When using GNU @code{make}, relying on @samp{VPATH} to find the source | ||||
| file will work in the case where there is a single dependency file, | ||||
| since the @code{make} automatic variable @samp{$<} will represent the | ||||
| source file wherever it is.  (Many versions of @code{make} set @samp{$<} | ||||
| only in implicit rules.)  A Makefile target like | ||||
|  | ||||
| @smallexample | ||||
| foo.o : bar.c | ||||
|         $(CC) -I. -I$(srcdir) $(CFLAGS) -c bar.c -o foo.o | ||||
| @end smallexample | ||||
|  | ||||
| @noindent | ||||
| should instead be written as | ||||
|  | ||||
| @smallexample | ||||
| foo.o : bar.c | ||||
|         $(CC) -I. -I$(srcdir) $(CFLAGS) -c $< -o $@@ | ||||
| @end smallexample | ||||
|  | ||||
| @noindent | ||||
| in order to allow @samp{VPATH} to work correctly.  When the target has | ||||
| multiple dependencies, using an explicit @samp{$(srcdir)} is the easiest | ||||
| way to make the rule work well.  For example, the target above for | ||||
| @file{foo.1} is best written as: | ||||
|  | ||||
| @smallexample | ||||
| foo.1 : foo.man sedscript | ||||
|         sed -e $(srcdir)/sedscript $(srcdir)/foo.man > $@@ | ||||
| @end smallexample | ||||
|  | ||||
| GNU distributions usually contain some files which are not source | ||||
| files---for example, Info files, and the output from Autoconf, Automake, | ||||
| Bison or Flex.  Since these files normally appear in the source | ||||
| directory, they should always appear in the source directory, not in the | ||||
| build directory.  So Makefile rules to update them should put the | ||||
| updated files in the source directory. | ||||
|  | ||||
| However, if a file does not appear in the distribution, then the | ||||
| Makefile should not put it in the source directory, because building a | ||||
| program in ordinary circumstances should not modify the source directory | ||||
| in any way. | ||||
|  | ||||
| Try to make the build and installation targets, at least (and all their | ||||
| subtargets) work correctly with a parallel @code{make}. | ||||
|  | ||||
| @node Utilities in Makefiles | ||||
| @section Utilities in Makefiles | ||||
|  | ||||
| Write the Makefile commands (and any shell scripts, such as | ||||
| @code{configure}) to run in @code{sh}, not in @code{csh}.  Don't use any | ||||
| special features of @code{ksh} or @code{bash}. | ||||
|  | ||||
| The @code{configure} script and the Makefile rules for building and | ||||
| installation should not use any utilities directly except these: | ||||
|  | ||||
| @c dd find | ||||
| @c gunzip gzip md5sum | ||||
| @c mkfifo mknod tee uname  | ||||
|  | ||||
| @example | ||||
| cat cmp cp diff echo egrep expr false grep install-info | ||||
| ln ls mkdir mv pwd rm rmdir sed sleep sort tar test touch true | ||||
| @end example | ||||
|  | ||||
| The compression program @code{gzip} can be used in the @code{dist} rule. | ||||
|  | ||||
| Stick to the generally supported options for these programs.  For | ||||
| example, don't use @samp{mkdir -p}, convenient as it may be, because | ||||
| most systems don't support it. | ||||
|  | ||||
| It is a good idea to avoid creating symbolic links in makefiles, since a | ||||
| few systems don't support them. | ||||
|  | ||||
| The Makefile rules for building and installation can also use compilers | ||||
| and related programs, but should do so via @code{make} variables so that the | ||||
| user can substitute alternatives.  Here are some of the programs we | ||||
| mean: | ||||
|  | ||||
| @example | ||||
| ar bison cc flex install ld ldconfig lex | ||||
| make makeinfo ranlib texi2dvi yacc | ||||
| @end example | ||||
|  | ||||
| Use the following @code{make} variables to run those programs: | ||||
|  | ||||
| @example | ||||
| $(AR) $(BISON) $(CC) $(FLEX) $(INSTALL) $(LD) $(LDCONFIG) $(LEX) | ||||
| $(MAKE) $(MAKEINFO) $(RANLIB) $(TEXI2DVI) $(YACC) | ||||
| @end example | ||||
|  | ||||
| When you use @code{ranlib} or @code{ldconfig}, you should make sure | ||||
| nothing bad happens if the system does not have the program in question. | ||||
| Arrange to ignore an error from that command, and print a message before | ||||
| the command to tell the user that failure of this command does not mean | ||||
| a problem.  (The Autoconf @samp{AC_PROG_RANLIB} macro can help with | ||||
| this.) | ||||
|  | ||||
| If you use symbolic links, you should implement a fallback for systems | ||||
| that don't have symbolic links. | ||||
|  | ||||
| Additional utilities that can be used via Make variables are: | ||||
|  | ||||
| @example | ||||
| chgrp chmod chown mknod | ||||
| @end example | ||||
|  | ||||
| It is ok to use other utilities in Makefile portions (or scripts) | ||||
| intended only for particular systems where you know those utilities | ||||
| exist. | ||||
|  | ||||
| @node Command Variables | ||||
| @section Variables for Specifying Commands | ||||
|  | ||||
| Makefiles should provide variables for overriding certain commands, options, | ||||
| and so on. | ||||
|  | ||||
| In particular, you should run most utility programs via variables. | ||||
| Thus, if you use Bison, have a variable named @code{BISON} whose default | ||||
| value is set with @samp{BISON = bison}, and refer to it with | ||||
| @code{$(BISON)} whenever you need to use Bison. | ||||
|  | ||||
| File management utilities such as @code{ln}, @code{rm}, @code{mv}, and | ||||
| so on, need not be referred to through variables in this way, since users | ||||
| don't need to replace them with other programs. | ||||
|  | ||||
| Each program-name variable should come with an options variable that is | ||||
| used to supply options to the program.  Append @samp{FLAGS} to the | ||||
| program-name variable name to get the options variable name---for | ||||
| example, @code{BISONFLAGS}.  (The names @code{CFLAGS} for the C | ||||
| compiler, @code{YFLAGS} for yacc, and @code{LFLAGS} for lex, are | ||||
| exceptions to this rule, but we keep them because they are standard.) | ||||
| Use @code{CPPFLAGS} in any compilation command that runs the | ||||
| preprocessor, and use @code{LDFLAGS} in any compilation command that | ||||
| does linking as well as in any direct use of @code{ld}. | ||||
|  | ||||
| If there are C compiler options that @emph{must} be used for proper | ||||
| compilation of certain files, do not include them in @code{CFLAGS}. | ||||
| Users expect to be able to specify @code{CFLAGS} freely themselves. | ||||
| Instead, arrange to pass the necessary options to the C compiler | ||||
| independently of @code{CFLAGS}, by writing them explicitly in the | ||||
| compilation commands or by defining an implicit rule, like this: | ||||
|  | ||||
| @smallexample | ||||
| CFLAGS = -g | ||||
| ALL_CFLAGS = -I. $(CFLAGS) | ||||
| .c.o: | ||||
|         $(CC) -c $(CPPFLAGS) $(ALL_CFLAGS) $< | ||||
| @end smallexample | ||||
|  | ||||
| Do include the @samp{-g} option in @code{CFLAGS}, because that is not | ||||
| @emph{required} for proper compilation.  You can consider it a default | ||||
| that is only recommended.  If the package is set up so that it is | ||||
| compiled with GCC by default, then you might as well include @samp{-O} | ||||
| in the default value of @code{CFLAGS} as well. | ||||
|  | ||||
| Put @code{CFLAGS} last in the compilation command, after other variables | ||||
| containing compiler options, so the user can use @code{CFLAGS} to | ||||
| override the others. | ||||
|  | ||||
| @code{CFLAGS} should be used in every invocation of the C compiler, | ||||
| both those which do compilation and those which do linking. | ||||
|  | ||||
| Every Makefile should define the variable @code{INSTALL}, which is the | ||||
| basic command for installing a file into the system. | ||||
|  | ||||
| Every Makefile should also define the variables @code{INSTALL_PROGRAM} | ||||
| and @code{INSTALL_DATA}.  (The default for each of these should be | ||||
| @code{$(INSTALL)}.)  Then it should use those variables as the commands | ||||
| for actual installation, for executables and nonexecutables | ||||
| respectively.  Use these variables as follows: | ||||
|  | ||||
| @example | ||||
| $(INSTALL_PROGRAM) foo $(bindir)/foo | ||||
| $(INSTALL_DATA) libfoo.a $(libdir)/libfoo.a | ||||
| @end example | ||||
|  | ||||
| Optionally, you may prepend the value of @code{DESTDIR} to the target | ||||
| filename.  Doing this allows the installer to create a snapshot of the | ||||
| installation to be copied onto the real target filesystem later.  Do not | ||||
| set the value of @code{DESTDIR} in your Makefile, and do not include it | ||||
| in any installed files.  With support for @code{DESTDIR}, the above | ||||
| examples become: | ||||
|  | ||||
| @example | ||||
| $(INSTALL_PROGRAM) foo $(DESTDIR)$(bindir)/foo | ||||
| $(INSTALL_DATA) libfoo.a $(DESTDIR)$(libdir)/libfoo.a | ||||
| @end example | ||||
|  | ||||
| @noindent | ||||
| Always use a file name, not a directory name, as the second argument of | ||||
| the installation commands.  Use a separate command for each file to be | ||||
| installed. | ||||
|  | ||||
| @node Directory Variables | ||||
| @section Variables for Installation Directories | ||||
|  | ||||
| Installation directories should always be named by variables, so it is | ||||
| easy to install in a nonstandard place.  The standard names for these | ||||
| variables are described below.  They are based on a standard filesystem | ||||
| layout; variants of it are used in SVR4, 4.4BSD, Linux, Ultrix v4, and | ||||
| other modern operating systems. | ||||
|  | ||||
| These two variables set the root for the installation.  All the other | ||||
| installation directories should be subdirectories of one of these two, | ||||
| and nothing should be directly installed into these two directories. | ||||
|  | ||||
| @table @samp | ||||
| @item prefix | ||||
| A prefix used in constructing the default values of the variables listed | ||||
| below.  The default value of @code{prefix} should be @file{/usr/local}. | ||||
| When building the complete GNU system, the prefix will be empty and | ||||
| @file{/usr} will be a symbolic link to @file{/}. | ||||
| (If you are using Autoconf, write it as @samp{@@prefix@@}.) | ||||
|  | ||||
| Running @samp{make install} with a different value of @code{prefix} | ||||
| from the one used to build the program should @var{not} recompile | ||||
| the program. | ||||
|  | ||||
| @item exec_prefix | ||||
| A prefix used in constructing the default values of some of the | ||||
| variables listed below.  The default value of @code{exec_prefix} should | ||||
| be @code{$(prefix)}. | ||||
| (If you are using Autoconf, write it as @samp{@@exec_prefix@@}.) | ||||
|  | ||||
| Generally, @code{$(exec_prefix)} is used for directories that contain | ||||
| machine-specific files (such as executables and subroutine libraries), | ||||
| while @code{$(prefix)} is used directly for other directories. | ||||
|  | ||||
| Running @samp{make install} with a different value of @code{exec_prefix} | ||||
| from the one used to build the program should @var{not} recompile the | ||||
| program. | ||||
| @end table | ||||
|  | ||||
| Executable programs are installed in one of the following directories. | ||||
|  | ||||
| @table @samp | ||||
| @item bindir | ||||
| The directory for installing executable programs that users can run. | ||||
| This should normally be @file{/usr/local/bin}, but write it as | ||||
| @file{$(exec_prefix)/bin}. | ||||
| (If you are using Autoconf, write it as @samp{@@bindir@@}.) | ||||
|  | ||||
| @item sbindir | ||||
| The directory for installing executable programs that can be run from | ||||
| the shell, but are only generally useful to system administrators.  This | ||||
| should normally be @file{/usr/local/sbin}, but write it as | ||||
| @file{$(exec_prefix)/sbin}. | ||||
| (If you are using Autoconf, write it as @samp{@@sbindir@@}.) | ||||
|  | ||||
| @item libexecdir | ||||
| @comment This paragraph adjusted to avoid overfull hbox --roland 5jul94 | ||||
| The directory for installing executable programs to be run by other | ||||
| programs rather than by users.  This directory should normally be | ||||
| @file{/usr/local/libexec}, but write it as @file{$(exec_prefix)/libexec}. | ||||
| (If you are using Autoconf, write it as @samp{@@libexecdir@@}.) | ||||
| @end table | ||||
|  | ||||
| Data files used by the program during its execution are divided into | ||||
| categories in two ways. | ||||
|  | ||||
| @itemize @bullet | ||||
| @item | ||||
| Some files are normally modified by programs; others are never normally | ||||
| modified (though users may edit some of these). | ||||
|  | ||||
| @item | ||||
| Some files are architecture-independent and can be shared by all | ||||
| machines at a site; some are architecture-dependent and can be shared | ||||
| only by machines of the same kind and operating system; others may never | ||||
| be shared between two machines. | ||||
| @end itemize | ||||
|  | ||||
| This makes for six different possibilities.  However, we want to | ||||
| discourage the use of architecture-dependent files, aside from object | ||||
| files and libraries.  It is much cleaner to make other data files | ||||
| architecture-independent, and it is generally not hard. | ||||
|  | ||||
| Therefore, here are the variables Makefiles should use to specify | ||||
| directories: | ||||
|  | ||||
| @table @samp | ||||
| @item datadir | ||||
| The directory for installing read-only architecture independent data | ||||
| files.  This should normally be @file{/usr/local/share}, but write it as | ||||
| @file{$(prefix)/share}. | ||||
| (If you are using Autoconf, write it as @samp{@@datadir@@}.) | ||||
| As a special exception, see @file{$(infodir)} | ||||
| and @file{$(includedir)} below. | ||||
|  | ||||
| @item sysconfdir | ||||
| The directory for installing read-only data files that pertain to a | ||||
| single machine--that is to say, files for configuring a host.  Mailer | ||||
| and network configuration files, @file{/etc/passwd}, and so forth belong | ||||
| here.  All the files in this directory should be ordinary ASCII text | ||||
| files.  This directory should normally be @file{/usr/local/etc}, but | ||||
| write it as @file{$(prefix)/etc}. | ||||
| (If you are using Autoconf, write it as @samp{@@sysconfdir@@}.) | ||||
|  | ||||
| Do not install executables here in this directory (they probably belong | ||||
| in @file{$(libexecdir)} or @file{$(sbindir)}).  Also do not install | ||||
| files that are modified in the normal course of their use (programs | ||||
| whose purpose is to change the configuration of the system excluded). | ||||
| Those probably belong in @file{$(localstatedir)}. | ||||
|  | ||||
| @item sharedstatedir | ||||
| The directory for installing architecture-independent data files which | ||||
| the programs modify while they run.  This should normally be | ||||
| @file{/usr/local/com}, but write it as @file{$(prefix)/com}. | ||||
| (If you are using Autoconf, write it as @samp{@@sharedstatedir@@}.) | ||||
|  | ||||
| @item localstatedir | ||||
| The directory for installing data files which the programs modify while | ||||
| they run, and that pertain to one specific machine.  Users should never | ||||
| need to modify files in this directory to configure the package's | ||||
| operation; put such configuration information in separate files that go | ||||
| in @file{$(datadir)} or @file{$(sysconfdir)}.  @file{$(localstatedir)} | ||||
| should normally be @file{/usr/local/var}, but write it as | ||||
| @file{$(prefix)/var}. | ||||
| (If you are using Autoconf, write it as @samp{@@localstatedir@@}.) | ||||
|  | ||||
| @item libdir | ||||
| The directory for object files and libraries of object code.  Do not | ||||
| install executables here, they probably ought to go in @file{$(libexecdir)} | ||||
| instead.  The value of @code{libdir} should normally be | ||||
| @file{/usr/local/lib}, but write it as @file{$(exec_prefix)/lib}. | ||||
| (If you are using Autoconf, write it as @samp{@@libdir@@}.) | ||||
|  | ||||
| @item infodir | ||||
| The directory for installing the Info files for this package.  By | ||||
| default, it should be @file{/usr/local/info}, but it should be written | ||||
| as @file{$(prefix)/info}. | ||||
| (If you are using Autoconf, write it as @samp{@@infodir@@}.) | ||||
|  | ||||
| @item lispdir | ||||
| The directory for installing any Emacs Lisp files in this package.  By | ||||
| default, it should be @file{/usr/local/share/emacs/site-lisp}, but it | ||||
| should be written as @file{$(prefix)/share/emacs/site-lisp}. | ||||
|  | ||||
| If you are using Autoconf, write the default as @samp{@@lispdir@@}. | ||||
| In order to make @samp{@@lispdir@@} work, you need the following lines | ||||
| in your @file{configure.in} file: | ||||
|  | ||||
| @example | ||||
| lispdir='$@{datadir@}/emacs/site-lisp' | ||||
| AC_SUBST(lispdir) | ||||
| @end example | ||||
|  | ||||
| @item includedir | ||||
| @c rewritten to avoid overfull hbox --roland | ||||
| The directory for installing header files to be included by user | ||||
| programs with the C @samp{#include} preprocessor directive.  This | ||||
| should normally be @file{/usr/local/include}, but write it as | ||||
| @file{$(prefix)/include}. | ||||
| (If you are using Autoconf, write it as @samp{@@includedir@@}.) | ||||
|  | ||||
| Most compilers other than GCC do not look for header files in directory | ||||
| @file{/usr/local/include}.  So installing the header files this way is | ||||
| only useful with GCC.  Sometimes this is not a problem because some | ||||
| libraries are only really intended to work with GCC.  But some libraries | ||||
| are intended to work with other compilers.  They should install their | ||||
| header files in two places, one specified by @code{includedir} and one | ||||
| specified by @code{oldincludedir}. | ||||
|  | ||||
| @item oldincludedir | ||||
| The directory for installing @samp{#include} header files for use with | ||||
| compilers other than GCC.  This should normally be @file{/usr/include}. | ||||
| (If you are using Autoconf, you can write it as @samp{@@oldincludedir@@}.) | ||||
|  | ||||
| The Makefile commands should check whether the value of | ||||
| @code{oldincludedir} is empty.  If it is, they should not try to use | ||||
| it; they should cancel the second installation of the header files. | ||||
|  | ||||
| A package should not replace an existing header in this directory unless | ||||
| the header came from the same package.  Thus, if your Foo package | ||||
| provides a header file @file{foo.h}, then it should install the header | ||||
| file in the @code{oldincludedir} directory if either (1) there is no | ||||
| @file{foo.h} there or (2) the @file{foo.h} that exists came from the Foo | ||||
| package. | ||||
|  | ||||
| To tell whether @file{foo.h} came from the Foo package, put a magic | ||||
| string in the file---part of a comment---and @code{grep} for that string. | ||||
| @end table | ||||
|  | ||||
| Unix-style man pages are installed in one of the following: | ||||
|  | ||||
| @table @samp | ||||
| @item mandir | ||||
| The top-level directory for installing the man pages (if any) for this | ||||
| package.  It will normally be @file{/usr/local/man}, but you should | ||||
| write it as @file{$(prefix)/man}. | ||||
| (If you are using Autoconf, write it as @samp{@@mandir@@}.) | ||||
|  | ||||
| @item man1dir | ||||
| The directory for installing section 1 man pages.  Write it as | ||||
| @file{$(mandir)/man1}. | ||||
| @item man2dir | ||||
| The directory for installing section 2 man pages.  Write it as | ||||
| @file{$(mandir)/man2} | ||||
| @item @dots{} | ||||
|  | ||||
| @strong{Don't make the primary documentation for any GNU software be a | ||||
| man page.  Write a manual in Texinfo instead.  Man pages are just for | ||||
| the sake of people running GNU software on Unix, which is a secondary | ||||
| application only.} | ||||
|  | ||||
| @item manext | ||||
| The file name extension for the installed man page.  This should contain | ||||
| a period followed by the appropriate digit; it should normally be @samp{.1}. | ||||
|  | ||||
| @item man1ext | ||||
| The file name extension for installed section 1 man pages. | ||||
| @item man2ext | ||||
| The file name extension for installed section 2 man pages. | ||||
| @item @dots{} | ||||
| Use these names instead of @samp{manext} if the package needs to install man | ||||
| pages in more than one section of the manual. | ||||
| @end table | ||||
|  | ||||
| And finally, you should set the following variable: | ||||
|  | ||||
| @table @samp | ||||
| @item srcdir | ||||
| The directory for the sources being compiled.  The value of this | ||||
| variable is normally inserted by the @code{configure} shell script. | ||||
| (If you are using Autconf, use @samp{srcdir = @@srcdir@@}.) | ||||
| @end table | ||||
|  | ||||
| For example: | ||||
|  | ||||
| @smallexample | ||||
| @c I have changed some of the comments here slightly to fix an overfull | ||||
| @c hbox, so the make manual can format correctly. --roland | ||||
| # Common prefix for installation directories. | ||||
| # NOTE: This directory must exist when you start the install. | ||||
| prefix = /usr/local | ||||
| exec_prefix = $(prefix) | ||||
| # Where to put the executable for the command `gcc'. | ||||
| bindir = $(exec_prefix)/bin | ||||
| # Where to put the directories used by the compiler. | ||||
| libexecdir = $(exec_prefix)/libexec | ||||
| # Where to put the Info files. | ||||
| infodir = $(prefix)/info | ||||
| @end smallexample | ||||
|  | ||||
| If your program installs a large number of files into one of the | ||||
| standard user-specified directories, it might be useful to group them | ||||
| into a subdirectory particular to that program.  If you do this, you | ||||
| should write the @code{install} rule to create these subdirectories. | ||||
|  | ||||
| Do not expect the user to include the subdirectory name in the value of | ||||
| any of the variables listed above.  The idea of having a uniform set of | ||||
| variable names for installation directories is to enable the user to | ||||
| specify the exact same values for several different GNU packages.  In | ||||
| order for this to be useful, all the packages must be designed so that | ||||
| they will work sensibly when the user does so. | ||||
|  | ||||
| @node Standard Targets | ||||
| @section Standard Targets for Users | ||||
|  | ||||
| All GNU programs should have the following targets in their Makefiles: | ||||
|  | ||||
| @table @samp | ||||
| @item all | ||||
| Compile the entire program.  This should be the default target.  This | ||||
| target need not rebuild any documentation files; Info files should | ||||
| normally be included in the distribution, and DVI files should be made | ||||
| only when explicitly asked for. | ||||
|  | ||||
| By default, the Make rules should compile and link with @samp{-g}, so | ||||
| that executable programs have debugging symbols.  Users who don't mind | ||||
| being helpless can strip the executables later if they wish. | ||||
|  | ||||
| @item install | ||||
| Compile the program and copy the executables, libraries, and so on to | ||||
| the file names where they should reside for actual use.  If there is a | ||||
| simple test to verify that a program is properly installed, this target | ||||
| should run that test. | ||||
|  | ||||
| Do not strip executables when installing them.  Devil-may-care users can | ||||
| use the @code{install-strip} target to do that. | ||||
|  | ||||
| If possible, write the @code{install} target rule so that it does not | ||||
| modify anything in the directory where the program was built, provided | ||||
| @samp{make all} has just been done.  This is convenient for building the | ||||
| program under one user name and installing it under another. | ||||
|  | ||||
| The commands should create all the directories in which files are to be | ||||
| installed, if they don't already exist.  This includes the directories | ||||
| specified as the values of the variables @code{prefix} and | ||||
| @code{exec_prefix}, as well as all subdirectories that are needed. | ||||
| One way to do this is by means of an @code{installdirs} target | ||||
| as described below. | ||||
|  | ||||
| Use @samp{-} before any command for installing a man page, so that | ||||
| @code{make} will ignore any errors.  This is in case there are systems | ||||
| that don't have the Unix man page documentation system installed. | ||||
|  | ||||
| The way to install Info files is to copy them into @file{$(infodir)} | ||||
| with @code{$(INSTALL_DATA)} (@pxref{Command Variables}), and then run | ||||
| the @code{install-info} program if it is present.  @code{install-info} | ||||
| is a program that edits the Info @file{dir} file to add or update the | ||||
| menu entry for the given Info file; it is part of the Texinfo package. | ||||
| Here is a sample rule to install an Info file: | ||||
|  | ||||
| @comment This example has been carefully formatted for the Make manual. | ||||
| @comment Please do not reformat it without talking to roland@gnu.ai.mit.edu. | ||||
| @smallexample | ||||
| $(DESTDIR)$(infodir)/foo.info: foo.info | ||||
|         $(POST_INSTALL) | ||||
| # There may be a newer info file in . than in srcdir. | ||||
|         -if test -f foo.info; then d=.; \ | ||||
|          else d=$(srcdir); fi; \ | ||||
|         $(INSTALL_DATA) $$d/foo.info $(DESTDIR)$@@; \ | ||||
| # Run install-info only if it exists. | ||||
| # Use `if' instead of just prepending `-' to the | ||||
| # line so we notice real errors from install-info. | ||||
| # We use `$(SHELL) -c' because some shells do not | ||||
| # fail gracefully when there is an unknown command. | ||||
|         if $(SHELL) -c 'install-info --version' \ | ||||
|            >/dev/null 2>&1; then \ | ||||
|           install-info --dir-file=$(DESTDIR)$(infodir)/dir \ | ||||
|                        $(DESTDIR)$(infodir)/foo.info; \ | ||||
|         else true; fi | ||||
| @end smallexample | ||||
|  | ||||
| When writing the @code{install} target, you must classify all the | ||||
| commands into three categories: normal ones, @dfn{pre-installation} | ||||
| commands and @dfn{post-installation} commands.  @xref{Install Command | ||||
| Categories}. | ||||
|  | ||||
| @item uninstall | ||||
| Delete all the installed files---the copies that the @samp{install} | ||||
| target creates. | ||||
|  | ||||
| This rule should not modify the directories where compilation is done, | ||||
| only the directories where files are installed. | ||||
|  | ||||
| The uninstallation commands are divided into three categories, just like | ||||
| the installation commands.  @xref{Install Command Categories}. | ||||
|  | ||||
| @item install-strip | ||||
| Like @code{install}, but strip the executable files while installing | ||||
| them.  In many cases, the definition of this target can be very simple: | ||||
|  | ||||
| @smallexample | ||||
| install-strip: | ||||
|         $(MAKE) INSTALL_PROGRAM='$(INSTALL_PROGRAM) -s' \ | ||||
|                 install | ||||
| @end smallexample | ||||
|  | ||||
| Normally we do not recommend stripping an executable unless you are sure | ||||
| the program has no bugs.  However, it can be reasonable to install a | ||||
| stripped executable for actual execution while saving the unstripped | ||||
| executable elsewhere in case there is a bug. | ||||
|  | ||||
| @comment The gratuitous blank line here is to make the table look better | ||||
| @comment in the printed Make manual.  Please leave it in. | ||||
| @item clean | ||||
|  | ||||
| Delete all files from the current directory that are normally created by | ||||
| building the program.  Don't delete the files that record the | ||||
| configuration.  Also preserve files that could be made by building, but | ||||
| normally aren't because the distribution comes with them. | ||||
|  | ||||
| Delete @file{.dvi} files here if they are not part of the distribution. | ||||
|  | ||||
| @item distclean | ||||
| Delete all files from the current directory that are created by | ||||
| configuring or building the program.  If you have unpacked the source | ||||
| and built the program without creating any other files, @samp{make | ||||
| distclean} should leave only the files that were in the distribution. | ||||
|  | ||||
| @item mostlyclean | ||||
| Like @samp{clean}, but may refrain from deleting a few files that people | ||||
| normally don't want to recompile.  For example, the @samp{mostlyclean} | ||||
| target for GCC does not delete @file{libgcc.a}, because recompiling it | ||||
| is rarely necessary and takes a lot of time. | ||||
|  | ||||
| @item maintainer-clean | ||||
| Delete almost everything from the current directory that can be | ||||
| reconstructed with this Makefile.  This typically includes everything | ||||
| deleted by @code{distclean}, plus more: C source files produced by | ||||
| Bison, tags tables, Info files, and so on. | ||||
|  | ||||
| The reason we say ``almost everything'' is that running the command | ||||
| @samp{make maintainer-clean} should not delete @file{configure} even if | ||||
| @file{configure} can be remade using a rule in the Makefile.  More generally, | ||||
| @samp{make maintainer-clean} should not delete anything that needs to | ||||
| exist in order to run @file{configure} and then begin to build the | ||||
| program.  This is the only exception; @code{maintainer-clean} should | ||||
| delete everything else that can be rebuilt. | ||||
|  | ||||
| The @samp{maintainer-clean} target is intended to be used by a maintainer of | ||||
| the package, not by ordinary users.  You may need special tools to | ||||
| reconstruct some of the files that @samp{make maintainer-clean} deletes. | ||||
| Since these files are normally included in the distribution, we don't | ||||
| take care to make them easy to reconstruct.  If you find you need to | ||||
| unpack the full distribution again, don't blame us. | ||||
|  | ||||
| To help make users aware of this, the commands for the special | ||||
| @code{maintainer-clean} target should start with these two: | ||||
|  | ||||
| @smallexample | ||||
| @@echo 'This command is intended for maintainers to use; it' | ||||
| @@echo 'deletes files that may need special tools to rebuild.' | ||||
| @end smallexample | ||||
|  | ||||
| @item TAGS | ||||
| Update a tags table for this program. | ||||
| @c ADR: how? | ||||
|  | ||||
| @item info | ||||
| Generate any Info files needed.  The best way to write the rules is as | ||||
| follows: | ||||
|  | ||||
| @smallexample | ||||
| info: foo.info | ||||
|  | ||||
| foo.info: foo.texi chap1.texi chap2.texi | ||||
|         $(MAKEINFO) $(srcdir)/foo.texi | ||||
| @end smallexample | ||||
|  | ||||
| @noindent | ||||
| You must define the variable @code{MAKEINFO} in the Makefile.  It should | ||||
| run the @code{makeinfo} program, which is part of the Texinfo | ||||
| distribution. | ||||
|  | ||||
| Normally a GNU distribution comes with Info files, and that means the | ||||
| Info files are present in the source directory.  Therefore, the Make | ||||
| rule for an info file should update it in the source directory.  When | ||||
| users build the package, ordinarily Make will not update the Info files | ||||
| because they will already be up to date. | ||||
|  | ||||
| @item dvi | ||||
| Generate DVI files for all Texinfo documentation. | ||||
| For example: | ||||
|  | ||||
| @smallexample | ||||
| dvi: foo.dvi | ||||
|  | ||||
| foo.dvi: foo.texi chap1.texi chap2.texi | ||||
|         $(TEXI2DVI) $(srcdir)/foo.texi | ||||
| @end smallexample | ||||
|  | ||||
| @noindent | ||||
| You must define the variable @code{TEXI2DVI} in the Makefile.  It should | ||||
| run the program @code{texi2dvi}, which is part of the Texinfo | ||||
| distribution.@footnote{@code{texi2dvi} uses @TeX{} to do the real work | ||||
| of formatting. @TeX{} is not distributed with Texinfo.}  Alternatively, | ||||
| write just the dependencies, and allow GNU @code{make} to provide the command. | ||||
|  | ||||
| @item dist | ||||
| Create a distribution tar file for this program.  The tar file should be | ||||
| set up so that the file names in the tar file start with a subdirectory | ||||
| name which is the name of the package it is a distribution for.  This | ||||
| name can include the version number. | ||||
|  | ||||
| For example, the distribution tar file of GCC version 1.40 unpacks into | ||||
| a subdirectory named @file{gcc-1.40}. | ||||
|  | ||||
| The easiest way to do this is to create a subdirectory appropriately | ||||
| named, use @code{ln} or @code{cp} to install the proper files in it, and | ||||
| then @code{tar} that subdirectory. | ||||
|  | ||||
| Compress the tar file file with @code{gzip}.  For example, the actual | ||||
| distribution file for GCC version 1.40 is called @file{gcc-1.40.tar.gz}. | ||||
|  | ||||
| The @code{dist} target should explicitly depend on all non-source files | ||||
| that are in the distribution, to make sure they are up to date in the | ||||
| distribution. | ||||
| @ifset CODESTD | ||||
| @xref{Releases, , Making Releases}. | ||||
| @end ifset | ||||
| @ifclear CODESTD | ||||
| @xref{Releases, , Making Releases, standards, GNU Coding Standards}. | ||||
| @end ifclear | ||||
|  | ||||
| @item check | ||||
| Perform self-tests (if any).  The user must build the program before | ||||
| running the tests, but need not install the program; you should write | ||||
| the self-tests so that they work when the program is built but not | ||||
| installed. | ||||
| @end table | ||||
|  | ||||
| The following targets are suggested as conventional names, for programs | ||||
| in which they are useful. | ||||
|  | ||||
| @table @code | ||||
| @item installcheck | ||||
| Perform installation tests (if any).  The user must build and install | ||||
| the program before running the tests.  You should not assume that | ||||
| @file{$(bindir)} is in the search path. | ||||
|  | ||||
| @item installdirs | ||||
| It's useful to add a target named @samp{installdirs} to create the | ||||
| directories where files are installed, and their parent directories. | ||||
| There is a script called @file{mkinstalldirs} which is convenient for | ||||
| this; you can find it in the Texinfo package. | ||||
| @c It's in /gd/gnu/lib/mkinstalldirs. | ||||
| You can use a rule like this: | ||||
|  | ||||
| @comment This has been carefully formatted to look decent in the Make manual. | ||||
| @comment Please be sure not to make it extend any further to the right.--roland | ||||
| @smallexample | ||||
| # Make sure all installation directories (e.g. $(bindir)) | ||||
| # actually exist by making them if necessary. | ||||
| installdirs: mkinstalldirs | ||||
|         $(srcdir)/mkinstalldirs $(bindir) $(datadir) \ | ||||
|                                 $(libdir) $(infodir) \ | ||||
|                                 $(mandir) | ||||
| @end smallexample | ||||
|  | ||||
| This rule should not modify the directories where compilation is done. | ||||
| It should do nothing but create installation directories. | ||||
| @end table | ||||
|  | ||||
| @node Install Command Categories | ||||
| @section Install Command Categories | ||||
|  | ||||
| @cindex pre-installation commands | ||||
| @cindex post-installation commands | ||||
| When writing the @code{install} target, you must classify all the | ||||
| commands into three categories: normal ones, @dfn{pre-installation} | ||||
| commands and @dfn{post-installation} commands. | ||||
|  | ||||
| Normal commands move files into their proper places, and set their | ||||
| modes.  They may not alter any files except the ones that come entirely | ||||
| from the package they belong to. | ||||
|  | ||||
| Pre-installation and post-installation commands may alter other files; | ||||
| in particular, they can edit global configuration files or data bases. | ||||
|  | ||||
| Pre-installation commands are typically executed before the normal | ||||
| commands, and post-installation commands are typically run after the | ||||
| normal commands. | ||||
|  | ||||
| The most common use for a post-installation command is to run | ||||
| @code{install-info}.  This cannot be done with a normal command, since | ||||
| it alters a file (the Info directory) which does not come entirely and | ||||
| solely from the package being installed.  It is a post-installation | ||||
| command because it needs to be done after the normal command which | ||||
| installs the package's Info files. | ||||
|  | ||||
| Most programs don't need any pre-installation commands, but we have the | ||||
| feature just in case it is needed. | ||||
|  | ||||
| To classify the commands in the @code{install} rule into these three | ||||
| categories, insert @dfn{category lines} among them.  A category line | ||||
| specifies the category for the commands that follow. | ||||
|  | ||||
| A category line consists of a tab and a reference to a special Make | ||||
| variable, plus an optional comment at the end.  There are three | ||||
| variables you can use, one for each category; the variable name | ||||
| specifies the category.  Category lines are no-ops in ordinary execution | ||||
| because these three Make variables are normally undefined (and you | ||||
| @emph{should not} define them in the makefile). | ||||
|  | ||||
| Here are the three possible category lines, each with a comment that | ||||
| explains what it means: | ||||
|  | ||||
| @smallexample | ||||
|         $(PRE_INSTALL)     # @r{Pre-install commands follow.} | ||||
|         $(POST_INSTALL)    # @r{Post-install commands follow.} | ||||
|         $(NORMAL_INSTALL)  # @r{Normal commands follow.} | ||||
| @end smallexample | ||||
|  | ||||
| If you don't use a category line at the beginning of the @code{install} | ||||
| rule, all the commands are classified as normal until the first category | ||||
| line.  If you don't use any category lines, all the commands are | ||||
| classified as normal. | ||||
|  | ||||
| These are the category lines for @code{uninstall}: | ||||
|  | ||||
| @smallexample | ||||
|         $(PRE_UNINSTALL)     # @r{Pre-uninstall commands follow.} | ||||
|         $(POST_UNINSTALL)    # @r{Post-uninstall commands follow.} | ||||
|         $(NORMAL_UNINSTALL)  # @r{Normal commands follow.} | ||||
| @end smallexample | ||||
|  | ||||
| Typically, a pre-uninstall command would be used for deleting entries | ||||
| from the Info directory. | ||||
|  | ||||
| If the @code{install} or @code{uninstall} target has any dependencies | ||||
| which act as subroutines of installation, then you should start | ||||
| @emph{each} dependency's commands with a category line, and start the | ||||
| main target's commands with a category line also.  This way, you can | ||||
| ensure that each command is placed in the right category regardless of | ||||
| which of the dependencies actually run. | ||||
|  | ||||
| Pre-installation and post-installation commands should not run any | ||||
| programs except for these: | ||||
|  | ||||
| @example | ||||
| [ basename bash cat chgrp chmod chown cmp cp dd diff echo | ||||
| egrep expand expr false fgrep find getopt grep gunzip gzip | ||||
| hostname install install-info kill ldconfig ln ls md5sum | ||||
| mkdir mkfifo mknod mv printenv pwd rm rmdir sed sort tee | ||||
| test touch true uname xargs yes | ||||
| @end example | ||||
|  | ||||
| @cindex binary packages | ||||
| The reason for distinguishing the commands in this way is for the sake | ||||
| of making binary packages.  Typically a binary package contains all the | ||||
| executables and other files that need to be installed, and has its own | ||||
| method of installing them---so it does not need to run the normal | ||||
| installation commands.  But installing the binary package does need to | ||||
| execute the pre-installation and post-installation commands. | ||||
|  | ||||
| Programs to build binary packages work by extracting the | ||||
| pre-installation and post-installation commands.  Here is one way of | ||||
| extracting the pre-installation commands: | ||||
|  | ||||
| @smallexample | ||||
| make -n install -o all \ | ||||
|       PRE_INSTALL=pre-install \ | ||||
|       POST_INSTALL=post-install \ | ||||
|       NORMAL_INSTALL=normal-install \ | ||||
|   | gawk -f pre-install.awk | ||||
| @end smallexample | ||||
|  | ||||
| @noindent | ||||
| where the file @file{pre-install.awk} could contain this: | ||||
|  | ||||
| @smallexample | ||||
| $0 ~ /^\t[ \t]*(normal_install|post_install)[ \t]*$/ @{on = 0@} | ||||
| on @{print $0@} | ||||
| $0 ~ /^\t[ \t]*pre_install[ \t]*$/ @{on = 1@} | ||||
| @end smallexample | ||||
|  | ||||
| The resulting file of pre-installation commands is executed as a shell | ||||
| script as part of installing the binary package. | ||||
							
								
								
									
										3093
									
								
								etc/standards.texi
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										3093
									
								
								etc/standards.texi
									
									
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										340
									
								
								include/COPYING
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										340
									
								
								include/COPYING
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,340 @@ | ||||
| 		    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. | ||||
|  | ||||
| 		    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.) | ||||
|  | ||||
| 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. | ||||
|  | ||||
|   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. | ||||
|  | ||||
|   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 | ||||
|  | ||||
| 	    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) 19yy  <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) 19yy 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. | ||||
							
								
								
									
										1527
									
								
								include/ChangeLog
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1527
									
								
								include/ChangeLog
									
									
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										163
									
								
								include/ansidecl.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										163
									
								
								include/ansidecl.h
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,163 @@ | ||||
| /* ANSI and traditional C compatability macros | ||||
|    Copyright 1991, 1992, 1996 Free Software Foundation, Inc. | ||||
|    This file is part of the GNU C Library. | ||||
|  | ||||
| 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.  */ | ||||
|  | ||||
| /* ANSI and traditional C compatibility macros | ||||
|  | ||||
|    ANSI C is assumed if __STDC__ is #defined. | ||||
|  | ||||
|    Macro	ANSI C definition	Traditional C definition | ||||
|    -----	---- - ----------	----------- - ---------- | ||||
|    PTR		`void *'		`char *' | ||||
|    LONG_DOUBLE	`long double'		`double' | ||||
|    VOLATILE	`volatile'		`' | ||||
|    SIGNED	`signed'		`' | ||||
|    PTRCONST	`void *const'		`char *' | ||||
|    ANSI_PROTOTYPES  1			not defined | ||||
|  | ||||
|    CONST is also defined, but is obsolete.  Just use const. | ||||
|  | ||||
|    obsolete --     DEFUN (name, arglist, args) | ||||
|  | ||||
| 	Defines function NAME. | ||||
|  | ||||
| 	ARGLIST lists the arguments, separated by commas and enclosed in | ||||
| 	parentheses.  ARGLIST becomes the argument list in traditional C. | ||||
|  | ||||
| 	ARGS list the arguments with their types.  It becomes a prototype in | ||||
| 	ANSI C, and the type declarations in traditional C.  Arguments should | ||||
| 	be separated with `AND'.  For functions with a variable number of | ||||
| 	arguments, the last thing listed should be `DOTS'. | ||||
|  | ||||
|    obsolete --     DEFUN_VOID (name) | ||||
|  | ||||
| 	Defines a function NAME, which takes no arguments. | ||||
|  | ||||
|    obsolete --     EXFUN (name, (prototype))	-- obsolete. | ||||
|  | ||||
| 	Replaced by PARAMS.  Do not use; will disappear someday soon. | ||||
| 	Was used in external function declarations. | ||||
| 	In ANSI C it is `NAME PROTOTYPE' (so PROTOTYPE should be enclosed in | ||||
| 	parentheses).  In traditional C it is `NAME()'. | ||||
| 	For a function that takes no arguments, PROTOTYPE should be `(void)'. | ||||
|  | ||||
|    obsolete --     PROTO (type, name, (prototype)    -- obsolete. | ||||
|  | ||||
| 	This one has also been replaced by PARAMS.  Do not use. | ||||
|  | ||||
|    PARAMS ((args)) | ||||
|  | ||||
| 	We could use the EXFUN macro to handle prototype declarations, but | ||||
| 	the name is misleading and the result is ugly.  So we just define a | ||||
| 	simple macro to handle the parameter lists, as in: | ||||
|  | ||||
| 	      static int foo PARAMS ((int, char)); | ||||
|  | ||||
| 	This produces:  `static int foo();' or `static int foo (int, char);' | ||||
|  | ||||
| 	EXFUN would have done it like this: | ||||
|  | ||||
| 	      static int EXFUN (foo, (int, char)); | ||||
|  | ||||
| 	but the function is not external...and it's hard to visually parse | ||||
| 	the function name out of the mess.   EXFUN should be considered | ||||
| 	obsolete; new code should be written to use PARAMS. | ||||
|  | ||||
|    DOTS is also obsolete. | ||||
|  | ||||
|    Examples: | ||||
|  | ||||
| 	extern int printf PARAMS ((const char *format, ...)); | ||||
| */ | ||||
|  | ||||
| #ifndef	_ANSIDECL_H | ||||
|  | ||||
| #define	_ANSIDECL_H	1 | ||||
|  | ||||
|  | ||||
| /* Every source file includes this file, | ||||
|    so they will all get the switch for lint.  */ | ||||
| /* LINTLIBRARY */ | ||||
|  | ||||
|  | ||||
| #if defined (__STDC__) || defined (_AIX) || (defined (__mips) && defined (_SYSTYPE_SVR4)) || defined(_WIN32) | ||||
| /* All known AIX compilers implement these things (but don't always | ||||
|    define __STDC__).  The RISC/OS MIPS compiler defines these things | ||||
|    in SVR4 mode, but does not define __STDC__.  */ | ||||
|  | ||||
| #define	PTR		void * | ||||
| #define	PTRCONST	void *CONST | ||||
| #define	LONG_DOUBLE	long double | ||||
|  | ||||
| #ifndef IN_GCC | ||||
| #define	AND		, | ||||
| #define	NOARGS		void | ||||
| #define	VOLATILE	volatile | ||||
| #define	SIGNED		signed | ||||
| #endif /* ! IN_GCC */ | ||||
|  | ||||
| #define PARAMS(paramlist)		paramlist | ||||
| #define ANSI_PROTOTYPES			1 | ||||
|  | ||||
| #define VPARAMS(ARGS)			ARGS | ||||
| #define VA_START(va_list,var)		va_start(va_list,var) | ||||
|  | ||||
| /* These are obsolete.  Do not use.  */ | ||||
| #ifndef IN_GCC | ||||
| #define CONST				const | ||||
| #define DOTS				, ... | ||||
| #define PROTO(type, name, arglist)	type name arglist | ||||
| #define EXFUN(name, proto)		name proto | ||||
| #define DEFUN(name, arglist, args)	name(args) | ||||
| #define DEFUN_VOID(name)		name(void) | ||||
| #endif /* ! IN_GCC */ | ||||
|  | ||||
| #else	/* Not ANSI C.  */ | ||||
|  | ||||
| #define	PTR		char * | ||||
| #define	PTRCONST	PTR | ||||
| #define	LONG_DOUBLE	double | ||||
|  | ||||
| #ifndef IN_GCC | ||||
| #define	AND		; | ||||
| #define	NOARGS | ||||
| #define	VOLATILE | ||||
| #define	SIGNED | ||||
| #endif /* !IN_GCC */ | ||||
|  | ||||
| #ifndef const /* some systems define it in header files for non-ansi mode */ | ||||
| #define	const | ||||
| #endif | ||||
|  | ||||
| #define PARAMS(paramlist)		() | ||||
|  | ||||
| #define VPARAMS(ARGS)			(va_alist) va_dcl | ||||
| #define VA_START(va_list,var)		va_start(va_list) | ||||
|  | ||||
| /* These are obsolete.  Do not use.  */ | ||||
| #ifndef IN_GCC | ||||
| #define CONST | ||||
| #define DOTS | ||||
| #define PROTO(type, name, arglist)	type name () | ||||
| #define EXFUN(name, proto)		name() | ||||
| #define DEFUN(name, arglist, args)	name arglist args; | ||||
| #define DEFUN_VOID(name)		name() | ||||
| #endif /* ! IN_GCC */ | ||||
|  | ||||
| #endif	/* ANSI C.  */ | ||||
|  | ||||
| #endif	/* ansidecl.h	*/ | ||||
							
								
								
									
										178
									
								
								include/aout/ChangeLog
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										178
									
								
								include/aout/ChangeLog
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,178 @@ | ||||
| Sun Jun 28 11:33:48 1998  Peter Schauer  <pes@regent.e-technik.tu-muenchen.de> | ||||
|  | ||||
| 	* stab.def:  Add N_ALIAS from SunPro F77. | ||||
|  | ||||
| Mon Mar 11 12:15:52 1996  Ian Lance Taylor  <ian@cygnus.com> | ||||
|  | ||||
| 	* stab.def: Use __define_stab_duplicate rather than __define_stab | ||||
| 	for duplicate entries N_BROWS and N_MOD2. | ||||
| 	* stab_gnu.h (__define_stab_duplicate): Define before including | ||||
| 	stab.def. | ||||
|  | ||||
| Fri Oct 27 17:47:16 1995  Niklas Hallqvist  <niklas@appli.se> | ||||
|  | ||||
| 	* aout64.h, host.h, hp300hpux.h, sun4.h: Changed PAGE_SIZE to | ||||
| 	TARGET_PAGE_SIZE. | ||||
|  | ||||
| Tue Sep 12 12:07:02 1995  Ian Lance Taylor  <ian@cygnus.com> | ||||
|  | ||||
| 	* sun4.h (struct internal_sun4_dynamic_link): Change all fields | ||||
| 	from long to unsigned long. | ||||
|  | ||||
| Wed Jul 12 00:15:13 1995  Ken Raeburn  <raeburn@kr-pc.cygnus.com> | ||||
|  | ||||
| 	* sun4.h (PAGE_SIZE): Undefine before defining. | ||||
|  | ||||
| Thu Jun 16 14:22:55 1994  Ian Lance Taylor  (ian@tweedledumb.cygnus.com) | ||||
|  | ||||
| 	* aout64.h (BMAGIC): Define. | ||||
|  | ||||
| Sat Jun 11 16:16:09 1994  Ian Lance Taylor  (ian@tweedledumb.cygnus.com) | ||||
|  | ||||
| 	Add weak symbols as an extension to a.out. | ||||
| 	* aout64.h (N_WEAKU, N_WEAKA, N_WEAKT, N_WEAKD, N_WEAKB): Define. | ||||
| 	* stab.def: Update symbol value table. | ||||
|  | ||||
| Thu Jun  2 17:13:38 1994  Ian Lance Taylor  (ian@tweedledumb.cygnus.com) | ||||
|  | ||||
| 	* sun4.h (EXTERNAL_SUN4_DYNAMIC_DEBUGGER_SIZE): Correct from 28 to | ||||
| 	24.  Fix up ld_got comment. | ||||
|  | ||||
| Wed Mar 30 00:31:49 1994  Peter Schauer  (pes@regent.e-technik.tu-muenchen.de) | ||||
|  | ||||
| 	* dynix3.h:  Cleanup, adapt to current bfd version. | ||||
|  | ||||
| Sat Feb 26 10:25:53 1994  Ian Lance Taylor  (ian@cygnus.com) | ||||
|  | ||||
| 	* aout64.h: Add casts to avoid warnings from SVR4 cc. | ||||
|  | ||||
| Fri Feb 11 12:56:04 1994  Stan Shebs  (shebs@andros.cygnus.com) | ||||
|  | ||||
| 	* ar.h (ARMAG, ARMAGB, ARFMAG): Change '\n' to '\012', for greater | ||||
| 	portability. | ||||
|  | ||||
| Fri Jan 21 00:59:06 1994  Ian Lance Taylor  (ian@tweedledumb.cygnus.com) | ||||
|  | ||||
| 	* sun4.h: Added information about SunOS shared libraries. | ||||
|  | ||||
| Fri Jan  7 08:20:13 1994  Jim Kingdon  (kingdon@deneb.cygnus.com) | ||||
|  | ||||
| 	* aout64.h (N_TXTADDR): Add comment regarding OMAGIC and NMAGIC. | ||||
|  | ||||
| Sat Dec 25 14:55:41 1993  Jim Kingdon  (kingdon@lioth.cygnus.com) | ||||
|  | ||||
| 	* aout64.h (N_DATOFF): Don't pad (revert change of 8 Jul 1993). | ||||
|  | ||||
| Tue Nov 16 15:43:46 1993  Jim Kingdon  (kingdon@lioth.cygnus.com) | ||||
|  | ||||
| 	* aout64.h: New macros ZMAGIC_DISK_BLOCK_SIZE and N_DISK_BLOCK_SIZE | ||||
| 	for Linux ZMAGIC. | ||||
| 	(N_TXTOFF, N_DATOFF): Use them. | ||||
|  | ||||
| Thu Nov  4 00:33:48 1993  Ken Raeburn  (raeburn@kr-pc.cygnus.com) | ||||
|  | ||||
| 	* aout64.h (RELOC_STD_BITS_RELATIVE_LITTLE): Fixed value to match | ||||
| 	sun3 system; used to overlap other fields. | ||||
| 	(RELOC_STD_BITS_JMPTABLE_LITTLE): Likewise. | ||||
|  | ||||
| Wed Nov  3 13:48:27 1993  David J. Mackenzie  (djm@thepub.cygnus.com) | ||||
|  | ||||
| 	* aout64.h (RELOC_STD_BITS_BASEREL_LITTLE): Make it 0x10 (Ken's | ||||
| 	suggestion) to avoid conflict with RELOC_STD_BITS_EXTERN_LITTLE. | ||||
|  | ||||
| Fri Oct 29 15:09:52 1993  Ian Lance Taylor  (ian@tweedledumb.cygnus.com) | ||||
|  | ||||
| 	* hp300hpux.h (N_SHARED_LIB): Define to be 0. | ||||
|  | ||||
| Mon Sep 13 21:00:56 1993  John Gilmore  (gnu@cygnus.com) | ||||
|  | ||||
| 	* ar.h (ARMAP_TIME_OFFSET):  Add and describe. | ||||
|  | ||||
| Mon Aug 23  Sean Fagan  (sef@cygnus.com) | ||||
|  | ||||
| 	* aout64.h [ARCH_SIZE != 64]: Allow N_BADMAG to be overridden. | ||||
|  | ||||
| Mon Aug 16 14:30:14 1993  Jim Kingdon  (kingdon@lioth.cygnus.com) | ||||
|  | ||||
| 	* stab_gnu.h: Include aout/stab.def not just stab.def. | ||||
|  | ||||
| Sun Jul 18 21:41:47 1993  Jim Kingdon  (kingdon@rtl.cygnus.com) | ||||
|  | ||||
| 	* dynix3.h: New, for symmetry running dynix. | ||||
|  | ||||
| Thu Jul  8 12:52:22 1993  Jim Kingdon  (kingdon@lioth.cygnus.com) | ||||
|  | ||||
| 	* aout64.h (N_BADMAG): Recognize QMAGIC. | ||||
| 	N_TXTOFF, N_TXTADDR, N_TXTSIZE: Special code for QMAGIC. | ||||
| 	N_DATOFF: Pad text size if we need to. | ||||
|  | ||||
| Fri Jun 18 19:19:38 1993  Jim Kingdon  (kingdon@lioth.cygnus.com) | ||||
|  | ||||
| 	* stab.def (N_ECOML): Fix comment. | ||||
|  | ||||
| Mon May 31 09:21:30 1993  Jim Kingdon  (kingdon@cygnus.com) | ||||
|  | ||||
| 	* stab.def: Remove Solaris information on N_FUN stabstring grammar; | ||||
| 	I've transferred it to gdb/doc/stabs.texinfo, where it belongs. | ||||
|  | ||||
| Mon May 10 05:48:43 1993  Ken Raeburn  (raeburn@kr-pc.cygnus.com) | ||||
|  | ||||
| 	* hp300hpux.h: Patch from Glenn Engel for linker problem and | ||||
| 	compatibility fix: | ||||
| 	(OMAGIC, NMAGIC): New definitions. | ||||
| 	(SHAREMAGIC): Deleted. | ||||
| 	(HPUX_DOT_O_MAGIC): New macro. | ||||
| 	(_N_BADMAG): Adjusted. | ||||
| 	(N_HEADER_IN_TEXT, N_DATADDR): New macros. | ||||
|  | ||||
| Thu Apr 29 12:07:37 1993  Ken Raeburn  (raeburn@deneb.cygnus.com) | ||||
|  | ||||
| 	* hp300hpux.h: New file from Glenn Engel, glenne@lsid.hp.com. | ||||
|  | ||||
| Tue Apr 27 05:51:04 1993  Ken Raeburn  (raeburn@kr-pc.cygnus.com) | ||||
|  | ||||
| 	* aout64.h (struct external_exec, *MAGIC, N_BADMAG): Don't define | ||||
| 	if `external_exec' is already defined as a macro. | ||||
| 	(N_DATOFF, N_TRELOFF, N_DRELOFF, N_SYMOFF, N_STROFF): Don't define | ||||
| 	if already defined. | ||||
| 	(struct external_nlist, EXTERNAL_NLIST_SIZE): Don't define if | ||||
| 	`external_nlist' is already defined as a macro. | ||||
|  | ||||
| Sat Aug 15 04:23:02 1992  John Gilmore  (gnu@cygnus.com) | ||||
|  | ||||
| 	* adobe.h:  Add description of a.out.adobe format. | ||||
|  | ||||
| Fri Jul  3 00:36:52 1992  John Gilmore  (gnu at cygnus.com) | ||||
|  | ||||
| 	* stab.def:  Update more Solaris definitions. | ||||
| 	* stab_gnu.h:  Add N_SO language types, and Solaris basic float types. | ||||
|  | ||||
| Sun Jun 14 10:53:53 1992  John Gilmore  (gnu at cygnus.com) | ||||
|  | ||||
| 	* stab.def:  Update descriptions of Solaris-2 stabs; add N_UNDF. | ||||
|  | ||||
| Thu Jun 11 01:12:07 1992  John Gilmore  (gnu at cygnus.com) | ||||
|  | ||||
| 	* stab.def:  Add N_OBJ and N_OPT from Solaris-2. | ||||
|  | ||||
| Thu Jan 30 18:12:44 1992  John Gilmore  (gnu at cygnus.com) | ||||
|  | ||||
| 	* aout/aout64.h: N_TXTSIZE needs some more parentheses. | ||||
| 	I don't trust C precedence. | ||||
|  | ||||
| Wed Dec 18 14:32:01 1991  Per Bothner  (bothner at cygnus.com) | ||||
|  | ||||
| 	* aout/aout64.h:  Move common sunos-specific test | ||||
| 	to recognize shared libraries into new macro N_SHARED_LIB. | ||||
| 	Use it to simplify&reformat N_TXTADDR, N_TXTOFF, N_TXTSIZE. | ||||
|  | ||||
| Sat Nov 30 20:34:52 1991  Steve Chamberlain  (sac at rtl.cygnus.com) | ||||
|  | ||||
| 	* ChangeLog, aout64.h, ar.h, encap.h, host.h, hp.h, ranlib.h, | ||||
| 	reloc.h, stab.def, stab_gnu.h, sun4.h: All moved from the | ||||
| 	devo/include directory | ||||
|  | ||||
|  | ||||
| Local Variables: | ||||
| version-control: never | ||||
| End: | ||||
							
								
								
									
										297
									
								
								include/aout/adobe.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										297
									
								
								include/aout/adobe.h
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,297 @@ | ||||
| /* `a.out.adobe' differences from standard a.out files */ | ||||
|  | ||||
| #ifndef __A_OUT_ADOBE_H__ | ||||
| #define __A_OUT_ADOBE_H__ | ||||
|  | ||||
| #define	BYTES_IN_WORD	4 | ||||
|  | ||||
| /* Struct external_exec is the same.  */ | ||||
|  | ||||
| /* This is the layout on disk of the 32-bit or 64-bit exec header. */ | ||||
|  | ||||
| struct external_exec  | ||||
| { | ||||
|   bfd_byte e_info[4];		/* magic number and stuff		*/ | ||||
|   bfd_byte e_text[BYTES_IN_WORD]; /* length of text section in bytes	*/ | ||||
|   bfd_byte e_data[BYTES_IN_WORD]; /* length of data section in bytes	*/ | ||||
|   bfd_byte e_bss[BYTES_IN_WORD]; /* length of bss area in bytes 		*/ | ||||
|   bfd_byte e_syms[BYTES_IN_WORD]; /* length of symbol table in bytes 	*/ | ||||
|   bfd_byte e_entry[BYTES_IN_WORD]; /* start address 			*/ | ||||
|   bfd_byte e_trsize[BYTES_IN_WORD]; /* length of text relocation info	*/ | ||||
|   bfd_byte e_drsize[BYTES_IN_WORD]; /* length of data relocation info 	*/ | ||||
| }; | ||||
|  | ||||
| #define	EXEC_BYTES_SIZE	(4 + BYTES_IN_WORD * 7) | ||||
|  | ||||
| /* Magic numbers for a.out files */ | ||||
|  | ||||
| #undef	ZMAGIC | ||||
| #define	ZMAGIC	0xAD0BE		/* Cute, eh?  */ | ||||
| #undef	OMAGIC | ||||
| #undef	NMAGIC | ||||
|  | ||||
| #define N_BADMAG(x)	  ((x).a_info != ZMAGIC) | ||||
|  | ||||
| /* By default, segment size is constant.  But some machines override this | ||||
|    to be a function of the a.out header (e.g. machine type).  */ | ||||
| #ifndef	N_SEGSIZE | ||||
| #define	N_SEGSIZE(x)	SEGMENT_SIZE | ||||
| #endif | ||||
| #undef N_SEGSIZE   /* FIXMEXXXX */ | ||||
|  | ||||
| /* Segment information for the a.out.Adobe format is specified after the | ||||
|    file header.  It contains N segment descriptors, followed by one with | ||||
|    a type of zero.   | ||||
|  | ||||
|    The actual text of the segments starts at N_TXTOFF in the file, | ||||
|    regardless of how many or how few segment headers there are.  */ | ||||
|  | ||||
| struct external_segdesc { | ||||
| 	unsigned char e_type[1]; | ||||
| 	unsigned char e_size[3]; | ||||
| 	unsigned char e_virtbase[4]; | ||||
| 	unsigned char e_filebase[4]; | ||||
| }; | ||||
|  | ||||
| struct internal_segdesc { | ||||
| 	unsigned int	a_type:8;	/* Segment type N_TEXT, N_DATA, 0 */ | ||||
| 	unsigned int 	a_size:24;	/* Segment size */ | ||||
| 	bfd_vma		a_virtbase;	/* Virtual address */ | ||||
| 	unsigned int	a_filebase;	/* Base address in object file */ | ||||
| }; | ||||
|  | ||||
| #define N_TXTADDR(x) \ | ||||
|  | ||||
| /* This is documented to be at 1024, but appears to really be at 2048. | ||||
|    FIXME?!  */ | ||||
| #define N_TXTOFF(x)	2048 | ||||
|  | ||||
| #define	N_TXTSIZE(x) ((x).a_text) | ||||
|  | ||||
| #define N_DATADDR(x) | ||||
|  | ||||
| #define N_BSSADDR(x) | ||||
|  | ||||
| /* Offsets of the various portions of the file after the text segment.  */ | ||||
|  | ||||
| #define N_DATOFF(x)	( N_TXTOFF(x) + N_TXTSIZE(x) ) | ||||
| #define N_TRELOFF(x)	( N_DATOFF(x) + (x).a_data ) | ||||
| #define N_DRELOFF(x)	( N_TRELOFF(x) + (x).a_trsize ) | ||||
| #define N_SYMOFF(x)	( N_DRELOFF(x) + (x).a_drsize ) | ||||
| #define N_STROFF(x)	( N_SYMOFF(x) + (x).a_syms ) | ||||
|  | ||||
| /* Symbols */ | ||||
| struct external_nlist { | ||||
|   bfd_byte e_strx[BYTES_IN_WORD];	/* index into string table of name */ | ||||
|   bfd_byte e_type[1];			/* type of symbol */ | ||||
|   bfd_byte e_other[1];			/* misc info (usually empty) */ | ||||
|   bfd_byte e_desc[2];			/* description field */ | ||||
|   bfd_byte e_value[BYTES_IN_WORD];	/* value of symbol */ | ||||
| }; | ||||
|  | ||||
| #define EXTERNAL_NLIST_SIZE (BYTES_IN_WORD+4+BYTES_IN_WORD) | ||||
|  | ||||
| struct internal_nlist { | ||||
|   unsigned long n_strx;			/* index into string table of name */ | ||||
|   unsigned char n_type;			/* type of symbol */ | ||||
|   unsigned char n_other;		/* misc info (usually empty) */ | ||||
|   unsigned short n_desc;		/* description field */ | ||||
|   bfd_vma n_value;			/* value of symbol */ | ||||
| }; | ||||
|  | ||||
| /* The n_type field is the symbol type, containing:  */ | ||||
|  | ||||
| #define N_UNDF	0	/* Undefined symbol */ | ||||
| #define N_ABS 	2	/* Absolute symbol -- defined at particular addr */ | ||||
| #define N_TEXT 	4	/* Text sym -- defined at offset in text seg */ | ||||
| #define N_DATA 	6	/* Data sym -- defined at offset in data seg */ | ||||
| #define N_BSS 	8	/* BSS  sym -- defined at offset in zero'd seg */ | ||||
| #define	N_COMM	0x12	/* Common symbol (visible after shared lib dynlink) */ | ||||
| #define N_FN	0x1f	/* File name of .o file */ | ||||
| #define	N_FN_SEQ 0x0C	/* N_FN from Sequent compilers (sigh) */ | ||||
| /* Note: N_EXT can only be usefully OR-ed with N_UNDF, N_ABS, N_TEXT, | ||||
|    N_DATA, or N_BSS.  When the low-order bit of other types is set, | ||||
|    (e.g. N_WARNING versus N_FN), they are two different types.  */ | ||||
| #define N_EXT 	1	/* External symbol (as opposed to local-to-this-file) */ | ||||
| #define N_TYPE  0x1e | ||||
| #define N_STAB 	0xe0	/* If any of these bits are on, it's a debug symbol */ | ||||
|  | ||||
| #define N_INDR 0x0a | ||||
|  | ||||
| /* The following symbols refer to set elements. | ||||
|    All the N_SET[ATDB] symbols with the same name form one set. | ||||
|    Space is allocated for the set in the text section, and each set | ||||
|    elements value is stored into one word of the space. | ||||
|    The first word of the space is the length of the set (number of elements). | ||||
|  | ||||
|    The address of the set is made into an N_SETV symbol | ||||
|    whose name is the same as the name of the set. | ||||
|    This symbol acts like a N_DATA global symbol | ||||
|    in that it can satisfy undefined external references.  */ | ||||
|  | ||||
| /* These appear as input to LD, in a .o file.  */ | ||||
| #define	N_SETA	0x14		/* Absolute set element symbol */ | ||||
| #define	N_SETT	0x16		/* Text set element symbol */ | ||||
| #define	N_SETD	0x18		/* Data set element symbol */ | ||||
| #define	N_SETB	0x1A		/* Bss set element symbol */ | ||||
|  | ||||
| /* This is output from LD.  */ | ||||
| #define N_SETV	0x1C		/* Pointer to set vector in data area.  */ | ||||
|  | ||||
| /* Warning symbol. The text gives a warning message, the next symbol | ||||
|    in the table will be undefined. When the symbol is referenced, the | ||||
|    message is printed.  */ | ||||
|  | ||||
| #define	N_WARNING 0x1e | ||||
|  | ||||
| /* Relocations  | ||||
|  | ||||
|   There	are two types of relocation flavours for a.out systems, | ||||
|   standard and extended. The standard form is used on systems where the | ||||
|   instruction has room for all the bits of an offset to the operand, whilst | ||||
|   the extended form is used when an address operand has to be split over n | ||||
|   instructions. Eg, on the 68k, each move instruction can reference | ||||
|   the target with a displacement of 16 or 32 bits. On the sparc, move | ||||
|   instructions use an offset of 14 bits, so the offset is stored in | ||||
|   the reloc field, and the data in the section is ignored. | ||||
| */ | ||||
|  | ||||
| /* This structure describes a single relocation to be performed. | ||||
|    The text-relocation section of the file is a vector of these structures, | ||||
|    all of which apply to the text section. | ||||
|    Likewise, the data-relocation section applies to the data section.  */ | ||||
|  | ||||
| struct reloc_std_external { | ||||
|   bfd_byte r_address[BYTES_IN_WORD];	/* offset of of data to relocate */ | ||||
|   bfd_byte r_index[3];	/* symbol table index of symbol 	*/ | ||||
|   bfd_byte r_type[1];	/* relocation type			*/ | ||||
| }; | ||||
|  | ||||
| #define	RELOC_STD_BITS_PCREL_BIG	0x80 | ||||
| #define	RELOC_STD_BITS_PCREL_LITTLE	0x01 | ||||
|  | ||||
| #define	RELOC_STD_BITS_LENGTH_BIG	0x60 | ||||
| #define	RELOC_STD_BITS_LENGTH_SH_BIG	5	/* To shift to units place */ | ||||
| #define	RELOC_STD_BITS_LENGTH_LITTLE	0x06 | ||||
| #define	RELOC_STD_BITS_LENGTH_SH_LITTLE	1 | ||||
|  | ||||
| #define	RELOC_STD_BITS_EXTERN_BIG	0x10 | ||||
| #define	RELOC_STD_BITS_EXTERN_LITTLE	0x08 | ||||
|  | ||||
| #define	RELOC_STD_BITS_BASEREL_BIG	0x08 | ||||
| #define	RELOC_STD_BITS_BASEREL_LITTLE	0x08 | ||||
|  | ||||
| #define	RELOC_STD_BITS_JMPTABLE_BIG	0x04 | ||||
| #define	RELOC_STD_BITS_JMPTABLE_LITTLE	0x04 | ||||
|  | ||||
| #define	RELOC_STD_BITS_RELATIVE_BIG	0x02 | ||||
| #define	RELOC_STD_BITS_RELATIVE_LITTLE	0x02 | ||||
|  | ||||
| #define	RELOC_STD_SIZE	(BYTES_IN_WORD + 3 + 1)		/* Bytes per relocation entry */ | ||||
|  | ||||
| struct reloc_std_internal | ||||
| { | ||||
|   bfd_vma r_address;		/* Address (within segment) to be relocated.  */ | ||||
|   /* The meaning of r_symbolnum depends on r_extern.  */ | ||||
|   unsigned int r_symbolnum:24; | ||||
|   /* Nonzero means value is a pc-relative offset | ||||
|      and it should be relocated for changes in its own address | ||||
|      as well as for changes in the symbol or section specified.  */ | ||||
|   unsigned int r_pcrel:1; | ||||
|   /* Length (as exponent of 2) of the field to be relocated. | ||||
|      Thus, a value of 2 indicates 1<<2 bytes.  */ | ||||
|   unsigned int r_length:2; | ||||
|   /* 1 => relocate with value of symbol. | ||||
|      r_symbolnum is the index of the symbol | ||||
|      in files the symbol table. | ||||
|      0 => relocate with the address of a segment. | ||||
|      r_symbolnum is N_TEXT, N_DATA, N_BSS or N_ABS | ||||
|      (the N_EXT bit may be set also, but signifies nothing).  */ | ||||
|   unsigned int r_extern:1; | ||||
|   /* The next three bits are for SunOS shared libraries, and seem to | ||||
|      be undocumented.  */ | ||||
|   unsigned int r_baserel:1;	/* Linkage table relative */ | ||||
|   unsigned int r_jmptable:1;	/* pc-relative to jump table */ | ||||
|   unsigned int r_relative:1;	/* "relative relocation" */ | ||||
|   /* unused */ | ||||
|   unsigned int r_pad:1;		/* Padding -- set to zero */ | ||||
| }; | ||||
|  | ||||
|  | ||||
| /* EXTENDED RELOCS  */ | ||||
|  | ||||
| struct reloc_ext_external { | ||||
|   bfd_byte r_address[BYTES_IN_WORD];	/* offset of of data to relocate 	*/ | ||||
|   bfd_byte r_index[3];	/* symbol table index of symbol 	*/ | ||||
|   bfd_byte r_type[1];	/* relocation type			*/ | ||||
|   bfd_byte r_addend[BYTES_IN_WORD];	/* datum addend				*/ | ||||
| }; | ||||
|  | ||||
| #define	RELOC_EXT_BITS_EXTERN_BIG	0x80 | ||||
| #define	RELOC_EXT_BITS_EXTERN_LITTLE	0x01 | ||||
|  | ||||
| #define	RELOC_EXT_BITS_TYPE_BIG		0x1F | ||||
| #define	RELOC_EXT_BITS_TYPE_SH_BIG	0 | ||||
| #define	RELOC_EXT_BITS_TYPE_LITTLE	0xF8 | ||||
| #define	RELOC_EXT_BITS_TYPE_SH_LITTLE	3 | ||||
|  | ||||
| /* Bytes per relocation entry */ | ||||
| #define	RELOC_EXT_SIZE	(BYTES_IN_WORD + 3 + 1 + BYTES_IN_WORD) | ||||
|  | ||||
| enum reloc_type | ||||
| { | ||||
|   /* simple relocations */ | ||||
|   RELOC_8,			/* data[0:7] = addend + sv 		*/ | ||||
|   RELOC_16,			/* data[0:15] = addend + sv 		*/ | ||||
|   RELOC_32,			/* data[0:31] = addend + sv 		*/ | ||||
|   /* pc-rel displacement */ | ||||
|   RELOC_DISP8,			/* data[0:7] = addend - pc + sv 	*/ | ||||
|   RELOC_DISP16,			/* data[0:15] = addend - pc + sv 	*/ | ||||
|   RELOC_DISP32,			/* data[0:31] = addend - pc + sv 	*/ | ||||
|   /* Special */ | ||||
|   RELOC_WDISP30,		/* data[0:29] = (addend + sv - pc)>>2 	*/ | ||||
|   RELOC_WDISP22,		/* data[0:21] = (addend + sv - pc)>>2 	*/ | ||||
|   RELOC_HI22,			/* data[0:21] = (addend + sv)>>10 	*/ | ||||
|   RELOC_22,			/* data[0:21] = (addend + sv) 		*/ | ||||
|   RELOC_13,			/* data[0:12] = (addend + sv)		*/ | ||||
|   RELOC_LO10,			/* data[0:9] = (addend + sv)		*/ | ||||
|   RELOC_SFA_BASE,		 | ||||
|   RELOC_SFA_OFF13, | ||||
|   /* P.I.C. (base-relative) */ | ||||
|   RELOC_BASE10,  		/* Not sure - maybe we can do this the */ | ||||
|   RELOC_BASE13,			/* right way now */ | ||||
|   RELOC_BASE22, | ||||
|   /* for some sort of pc-rel P.I.C. (?) */ | ||||
|   RELOC_PC10, | ||||
|   RELOC_PC22, | ||||
|   /* P.I.C. jump table */ | ||||
|   RELOC_JMP_TBL, | ||||
|   /* reputedly for shared libraries somehow */ | ||||
|   RELOC_SEGOFF16, | ||||
|   RELOC_GLOB_DAT, | ||||
|   RELOC_JMP_SLOT, | ||||
|   RELOC_RELATIVE, | ||||
|  | ||||
|   RELOC_11,	 | ||||
|   RELOC_WDISP2_14, | ||||
|   RELOC_WDISP19, | ||||
|   RELOC_HHI22,			/* data[0:21] = (addend + sv) >> 42     */ | ||||
|   RELOC_HLO10,			/* data[0:9] = (addend + sv) >> 32      */ | ||||
|    | ||||
|   /* 29K relocation types */ | ||||
|   RELOC_JUMPTARG, | ||||
|   RELOC_CONST, | ||||
|   RELOC_CONSTH, | ||||
|    | ||||
|   NO_RELOC | ||||
|   }; | ||||
|  | ||||
|  | ||||
| struct reloc_internal { | ||||
|   bfd_vma r_address;		/* offset of of data to relocate 	*/ | ||||
|   long	r_index;		/* symbol table index of symbol 	*/ | ||||
|   enum reloc_type r_type;	/* relocation type			*/ | ||||
|   bfd_vma r_addend;		/* datum addend				*/ | ||||
| }; | ||||
|  | ||||
| #endif				/* __A_OUT_ADOBE_H__ */ | ||||
							
								
								
									
										475
									
								
								include/aout/aout64.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										475
									
								
								include/aout/aout64.h
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,475 @@ | ||||
| /* `a.out' object-file definitions, including extensions to 64-bit fields */ | ||||
|  | ||||
| #ifndef __A_OUT_64_H__ | ||||
| #define __A_OUT_64_H__ | ||||
|  | ||||
| /* This is the layout on disk of the 32-bit or 64-bit exec header. */ | ||||
|  | ||||
| #ifndef external_exec | ||||
| struct external_exec  | ||||
| { | ||||
|   bfd_byte e_info[4];		/* magic number and stuff		*/ | ||||
|   bfd_byte e_text[BYTES_IN_WORD]; /* length of text section in bytes	*/ | ||||
|   bfd_byte e_data[BYTES_IN_WORD]; /* length of data section in bytes	*/ | ||||
|   bfd_byte e_bss[BYTES_IN_WORD]; /* length of bss area in bytes 		*/ | ||||
|   bfd_byte e_syms[BYTES_IN_WORD]; /* length of symbol table in bytes 	*/ | ||||
|   bfd_byte e_entry[BYTES_IN_WORD]; /* start address 			*/ | ||||
|   bfd_byte e_trsize[BYTES_IN_WORD]; /* length of text relocation info	*/ | ||||
|   bfd_byte e_drsize[BYTES_IN_WORD]; /* length of data relocation info 	*/ | ||||
| }; | ||||
|  | ||||
| #define	EXEC_BYTES_SIZE	(4 + BYTES_IN_WORD * 7) | ||||
|  | ||||
| /* Magic numbers for a.out files */ | ||||
|  | ||||
| #if ARCH_SIZE==64 | ||||
| #define OMAGIC 0x1001		/* Code indicating object file  */ | ||||
| #define ZMAGIC 0x1002		/* Code indicating demand-paged executable.  */ | ||||
| #define NMAGIC 0x1003		/* Code indicating pure executable.  */ | ||||
|  | ||||
| /* There is no 64-bit QMAGIC as far as I know.  */ | ||||
|  | ||||
| #define N_BADMAG(x)	  (N_MAGIC(x) != OMAGIC		\ | ||||
| 			&& N_MAGIC(x) != NMAGIC		\ | ||||
|   			&& N_MAGIC(x) != ZMAGIC) | ||||
| #else | ||||
| #define OMAGIC 0407		/* ...object file or impure executable.  */ | ||||
| #define NMAGIC 0410		/* Code indicating pure executable.  */ | ||||
| #define ZMAGIC 0413		/* Code indicating demand-paged executable.  */ | ||||
| #define BMAGIC 0415		/* Used by a b.out object.  */ | ||||
|  | ||||
| /* This indicates a demand-paged executable with the header in the text. | ||||
|    It is used by 386BSD (and variants) and Linux, at least.  */ | ||||
| #ifndef QMAGIC | ||||
| #define QMAGIC 0314 | ||||
| #endif | ||||
| # ifndef N_BADMAG | ||||
| #  define N_BADMAG(x)	  (N_MAGIC(x) != OMAGIC		\ | ||||
| 			&& N_MAGIC(x) != NMAGIC		\ | ||||
|   			&& N_MAGIC(x) != ZMAGIC \ | ||||
| 		        && N_MAGIC(x) != QMAGIC) | ||||
| # endif /* N_BADMAG */ | ||||
| #endif | ||||
|  | ||||
| #endif | ||||
|  | ||||
| #ifdef QMAGIC | ||||
| #define N_IS_QMAGIC(x) (N_MAGIC (x) == QMAGIC) | ||||
| #else | ||||
| #define N_IS_QMAGIC(x) (0) | ||||
| #endif | ||||
|  | ||||
| /* The difference between TARGET_PAGE_SIZE and N_SEGSIZE is that TARGET_PAGE_SIZE is | ||||
|    the finest granularity at which you can page something, thus it | ||||
|    controls the padding (if any) before the text segment of a ZMAGIC | ||||
|    file.  N_SEGSIZE is the resolution at which things can be marked as | ||||
|    read-only versus read/write, so it controls the padding between the | ||||
|    text segment and the data segment (in memory; on disk the padding | ||||
|    between them is TARGET_PAGE_SIZE).  TARGET_PAGE_SIZE and N_SEGSIZE are the same | ||||
|    for most machines, but different for sun3.  */ | ||||
|  | ||||
| /* By default, segment size is constant.  But some machines override this | ||||
|    to be a function of the a.out header (e.g. machine type).  */ | ||||
|  | ||||
| #ifndef	N_SEGSIZE | ||||
| #define	N_SEGSIZE(x)	SEGMENT_SIZE | ||||
| #endif | ||||
|  | ||||
| /* Virtual memory address of the text section. | ||||
|    This is getting very complicated.  A good reason to discard a.out format | ||||
|    for something that specifies these fields explicitly.  But til then... | ||||
|  | ||||
|    * OMAGIC and NMAGIC files: | ||||
|        (object files: text for "relocatable addr 0" right after the header) | ||||
|        start at 0, offset is EXEC_BYTES_SIZE, size as stated. | ||||
|    * The text address, offset, and size of ZMAGIC files depend | ||||
|      on the entry point of the file: | ||||
|      * entry point below TEXT_START_ADDR: | ||||
|        (hack for SunOS shared libraries) | ||||
|        start at 0, offset is 0, size as stated. | ||||
|      * If N_HEADER_IN_TEXT(x) is true (which defaults to being the | ||||
|        case when the entry point is EXEC_BYTES_SIZE or further into a page): | ||||
|        no padding is needed; text can start after exec header.  Sun | ||||
|        considers the text segment of such files to include the exec header; | ||||
|        for BFD's purposes, we don't, which makes more work for us. | ||||
|        start at TEXT_START_ADDR + EXEC_BYTES_SIZE, offset is EXEC_BYTES_SIZE, | ||||
|        size as stated minus EXEC_BYTES_SIZE. | ||||
|      * If N_HEADER_IN_TEXT(x) is false (which defaults to being the case when | ||||
|        the entry point is less than EXEC_BYTES_SIZE into a page (e.g. page | ||||
|        aligned)): (padding is needed so that text can start at a page boundary) | ||||
|        start at TEXT_START_ADDR, offset TARGET_PAGE_SIZE, size as stated. | ||||
|  | ||||
|     Specific configurations may want to hardwire N_HEADER_IN_TEXT, | ||||
|     for efficiency or to allow people to play games with the entry point. | ||||
|     In that case, you would #define N_HEADER_IN_TEXT(x) as 1 for sunos, | ||||
|     and as 0 for most other hosts (Sony News, Vax Ultrix, etc). | ||||
|     (Do this in the appropriate bfd target file.) | ||||
|     (The default is a heuristic that will break if people try changing | ||||
|     the entry point, perhaps with the ld -e flag.) | ||||
|  | ||||
|     * QMAGIC is always like a ZMAGIC for which N_HEADER_IN_TEXT is true, | ||||
|     and for which the starting address is TARGET_PAGE_SIZE (or should this be | ||||
|     SEGMENT_SIZE?) (TEXT_START_ADDR only applies to ZMAGIC, not to QMAGIC). | ||||
|     */ | ||||
|  | ||||
| /* This macro is only relevant for ZMAGIC files; QMAGIC always has the header | ||||
|    in the text.  */ | ||||
| #ifndef N_HEADER_IN_TEXT | ||||
| #define N_HEADER_IN_TEXT(x) (((x).a_entry & (TARGET_PAGE_SIZE-1)) >= EXEC_BYTES_SIZE) | ||||
| #endif | ||||
|  | ||||
| /* Sun shared libraries, not linux.  This macro is only relevant for ZMAGIC | ||||
|    files.  */ | ||||
| #ifndef N_SHARED_LIB | ||||
| #define N_SHARED_LIB(x) ((x).a_entry < TEXT_START_ADDR) | ||||
| #endif | ||||
|  | ||||
| /* Returning 0 not TEXT_START_ADDR for OMAGIC and NMAGIC is based on | ||||
|    the assumption that we are dealing with a .o file, not an | ||||
|    executable.  This is necessary for OMAGIC (but means we don't work | ||||
|    right on the output from ld -N); more questionable for NMAGIC.  */ | ||||
|  | ||||
| #ifndef N_TXTADDR | ||||
| #define N_TXTADDR(x) \ | ||||
|     (/* The address of a QMAGIC file is always one page in, */ \ | ||||
|      /* with the header in the text.  */ \ | ||||
|      N_IS_QMAGIC (x) ? TARGET_PAGE_SIZE + EXEC_BYTES_SIZE : \ | ||||
|      N_MAGIC(x) != ZMAGIC ? 0 :	/* object file or NMAGIC */\ | ||||
|      N_SHARED_LIB(x) ? 0 :	\ | ||||
|      N_HEADER_IN_TEXT(x)  ?	\ | ||||
| 	    TEXT_START_ADDR + EXEC_BYTES_SIZE :	/* no padding */\ | ||||
| 	    TEXT_START_ADDR			/* a page of padding */\ | ||||
|     ) | ||||
| #endif | ||||
|  | ||||
| /* If N_HEADER_IN_TEXT is not true for ZMAGIC, there is some padding | ||||
|    to make the text segment start at a certain boundary.  For most | ||||
|    systems, this boundary is TARGET_PAGE_SIZE.  But for Linux, in the | ||||
|    time-honored tradition of crazy ZMAGIC hacks, it is 1024 which is | ||||
|    not what TARGET_PAGE_SIZE needs to be for QMAGIC.  */ | ||||
|  | ||||
| #ifndef ZMAGIC_DISK_BLOCK_SIZE | ||||
| #define ZMAGIC_DISK_BLOCK_SIZE TARGET_PAGE_SIZE | ||||
| #endif | ||||
|  | ||||
| #define N_DISK_BLOCK_SIZE(x) \ | ||||
|   (N_MAGIC(x) == ZMAGIC ? ZMAGIC_DISK_BLOCK_SIZE : TARGET_PAGE_SIZE) | ||||
|  | ||||
| /* Offset in an a.out of the start of the text section. */ | ||||
| #ifndef N_TXTOFF | ||||
| #define N_TXTOFF(x)	\ | ||||
|     (/* For {O,N,Q}MAGIC, no padding.  */ \ | ||||
|      N_MAGIC(x) != ZMAGIC ? EXEC_BYTES_SIZE : \ | ||||
|      N_SHARED_LIB(x) ? 0 : \ | ||||
|      N_HEADER_IN_TEXT(x) ?	\ | ||||
| 	    EXEC_BYTES_SIZE :			/* no padding */\ | ||||
| 	    ZMAGIC_DISK_BLOCK_SIZE		/* a page of padding */\ | ||||
|     ) | ||||
| #endif | ||||
| /* Size of the text section.  It's always as stated, except that we | ||||
|    offset it to `undo' the adjustment to N_TXTADDR and N_TXTOFF | ||||
|    for ZMAGIC files that nominally include the exec header | ||||
|    as part of the first page of text.  (BFD doesn't consider the | ||||
|    exec header to be part of the text segment.)  */ | ||||
| #ifndef N_TXTSIZE | ||||
| #define	N_TXTSIZE(x) \ | ||||
|     (/* For QMAGIC, we don't consider the header part of the text section.  */\ | ||||
|      N_IS_QMAGIC (x) ? (x).a_text - EXEC_BYTES_SIZE : \ | ||||
|      (N_MAGIC(x) != ZMAGIC || N_SHARED_LIB(x)) ? (x).a_text : \ | ||||
|      N_HEADER_IN_TEXT(x)  ?	\ | ||||
| 	    (x).a_text - EXEC_BYTES_SIZE:	/* no padding */\ | ||||
| 	    (x).a_text				/* a page of padding */\ | ||||
|     ) | ||||
| #endif | ||||
| /* The address of the data segment in virtual memory. | ||||
|    It is the text segment address, plus text segment size, rounded | ||||
|    up to a N_SEGSIZE boundary for pure or pageable files. */ | ||||
| #ifndef N_DATADDR | ||||
| #define N_DATADDR(x) \ | ||||
|     (N_MAGIC(x)==OMAGIC? (N_TXTADDR(x)+N_TXTSIZE(x)) \ | ||||
|      :  (N_SEGSIZE(x) + ((N_TXTADDR(x)+N_TXTSIZE(x)-1) & ~(N_SEGSIZE(x)-1)))) | ||||
| #endif | ||||
| /* The address of the BSS segment -- immediately after the data segment.  */ | ||||
|  | ||||
| #define N_BSSADDR(x)	(N_DATADDR(x) + (x).a_data) | ||||
|  | ||||
| /* Offsets of the various portions of the file after the text segment.  */ | ||||
|  | ||||
| /* For {Q,Z}MAGIC, there is padding to make the data segment start on | ||||
|    a page boundary.  Most of the time the a_text field (and thus | ||||
|    N_TXTSIZE) already contains this padding.  It is possible that for | ||||
|    BSDI and/or 386BSD it sometimes doesn't contain the padding, and | ||||
|    perhaps we should be adding it here.  But this seems kind of | ||||
|    questionable and probably should be BSDI/386BSD-specific if we do | ||||
|    do it. | ||||
|  | ||||
|    For NMAGIC (at least for hp300 BSD, probably others), there is | ||||
|    padding in memory only, not on disk, so we must *not* ever pad here | ||||
|    for NMAGIC.  */ | ||||
|  | ||||
| #ifndef N_DATOFF | ||||
| #define N_DATOFF(x) \ | ||||
|  (N_TXTOFF(x) + N_TXTSIZE(x)) | ||||
| #endif | ||||
|  | ||||
| #ifndef N_TRELOFF | ||||
| #define N_TRELOFF(x)	( N_DATOFF(x) + (x).a_data ) | ||||
| #endif | ||||
| #ifndef N_DRELOFF | ||||
| #define N_DRELOFF(x)	( N_TRELOFF(x) + (x).a_trsize ) | ||||
| #endif | ||||
| #ifndef N_SYMOFF | ||||
| #define N_SYMOFF(x)	( N_DRELOFF(x) + (x).a_drsize ) | ||||
| #endif | ||||
| #ifndef N_STROFF | ||||
| #define N_STROFF(x)	( N_SYMOFF(x) + (x).a_syms ) | ||||
| #endif | ||||
|  | ||||
| /* Symbols */ | ||||
| #ifndef external_nlist | ||||
| struct external_nlist { | ||||
|   bfd_byte e_strx[BYTES_IN_WORD];	/* index into string table of name */ | ||||
|   bfd_byte e_type[1];			/* type of symbol */ | ||||
|   bfd_byte e_other[1];			/* misc info (usually empty) */ | ||||
|   bfd_byte e_desc[2];			/* description field */ | ||||
|   bfd_byte e_value[BYTES_IN_WORD];	/* value of symbol */ | ||||
| }; | ||||
| #define EXTERNAL_NLIST_SIZE (BYTES_IN_WORD+4+BYTES_IN_WORD) | ||||
| #endif | ||||
|  | ||||
| struct internal_nlist { | ||||
|   unsigned long n_strx;			/* index into string table of name */ | ||||
|   unsigned char n_type;			/* type of symbol */ | ||||
|   unsigned char n_other;		/* misc info (usually empty) */ | ||||
|   unsigned short n_desc;		/* description field */ | ||||
|   bfd_vma n_value;			/* value of symbol */ | ||||
| }; | ||||
|  | ||||
| /* The n_type field is the symbol type, containing:  */ | ||||
|  | ||||
| #define N_UNDF	0	/* Undefined symbol */ | ||||
| #define N_ABS 	2	/* Absolute symbol -- defined at particular addr */ | ||||
| #define N_TEXT 	4	/* Text sym -- defined at offset in text seg */ | ||||
| #define N_DATA 	6	/* Data sym -- defined at offset in data seg */ | ||||
| #define N_BSS 	8	/* BSS  sym -- defined at offset in zero'd seg */ | ||||
| #define	N_COMM	0x12	/* Common symbol (visible after shared lib dynlink) */ | ||||
| #define N_FN	0x1f	/* File name of .o file */ | ||||
| #define	N_FN_SEQ 0x0C	/* N_FN from Sequent compilers (sigh) */ | ||||
| /* Note: N_EXT can only be usefully OR-ed with N_UNDF, N_ABS, N_TEXT, | ||||
|    N_DATA, or N_BSS.  When the low-order bit of other types is set, | ||||
|    (e.g. N_WARNING versus N_FN), they are two different types.  */ | ||||
| #define N_EXT 	1	/* External symbol (as opposed to local-to-this-file) */ | ||||
| #define N_TYPE  0x1e | ||||
| #define N_STAB 	0xe0	/* If any of these bits are on, it's a debug symbol */ | ||||
|  | ||||
| #define N_INDR 0x0a | ||||
|  | ||||
| /* The following symbols refer to set elements. | ||||
|    All the N_SET[ATDB] symbols with the same name form one set. | ||||
|    Space is allocated for the set in the text section, and each set | ||||
|    elements value is stored into one word of the space. | ||||
|    The first word of the space is the length of the set (number of elements). | ||||
|  | ||||
|    The address of the set is made into an N_SETV symbol | ||||
|    whose name is the same as the name of the set. | ||||
|    This symbol acts like a N_DATA global symbol | ||||
|    in that it can satisfy undefined external references.  */ | ||||
|  | ||||
| /* These appear as input to LD, in a .o file.  */ | ||||
| #define	N_SETA	0x14		/* Absolute set element symbol */ | ||||
| #define	N_SETT	0x16		/* Text set element symbol */ | ||||
| #define	N_SETD	0x18		/* Data set element symbol */ | ||||
| #define	N_SETB	0x1A		/* Bss set element symbol */ | ||||
|  | ||||
| /* This is output from LD.  */ | ||||
| #define N_SETV	0x1C		/* Pointer to set vector in data area.  */ | ||||
|  | ||||
| /* Warning symbol. The text gives a warning message, the next symbol | ||||
|    in the table will be undefined. When the symbol is referenced, the | ||||
|    message is printed.  */ | ||||
|  | ||||
| #define	N_WARNING 0x1e | ||||
|  | ||||
| /* Weak symbols.  These are a GNU extension to the a.out format.  The | ||||
|    semantics are those of ELF weak symbols.  Weak symbols are always | ||||
|    externally visible.  The N_WEAK? values are squeezed into the | ||||
|    available slots.  The value of a N_WEAKU symbol is 0.  The values | ||||
|    of the other types are the definitions.  */ | ||||
| #define N_WEAKU	0x0d		/* Weak undefined symbol.  */ | ||||
| #define N_WEAKA 0x0e		/* Weak absolute symbol.  */ | ||||
| #define N_WEAKT 0x0f		/* Weak text symbol.  */ | ||||
| #define N_WEAKD 0x10		/* Weak data symbol.  */ | ||||
| #define N_WEAKB 0x11		/* Weak bss symbol.  */ | ||||
|  | ||||
| /* Relocations  | ||||
|  | ||||
|   There	are two types of relocation flavours for a.out systems, | ||||
|   standard and extended. The standard form is used on systems where the | ||||
|   instruction has room for all the bits of an offset to the operand, whilst | ||||
|   the extended form is used when an address operand has to be split over n | ||||
|   instructions. Eg, on the 68k, each move instruction can reference | ||||
|   the target with a displacement of 16 or 32 bits. On the sparc, move | ||||
|   instructions use an offset of 14 bits, so the offset is stored in | ||||
|   the reloc field, and the data in the section is ignored. | ||||
| */ | ||||
|  | ||||
| /* This structure describes a single relocation to be performed. | ||||
|    The text-relocation section of the file is a vector of these structures, | ||||
|    all of which apply to the text section. | ||||
|    Likewise, the data-relocation section applies to the data section.  */ | ||||
|  | ||||
| struct reloc_std_external { | ||||
|   bfd_byte	r_address[BYTES_IN_WORD];	/* offset of of data to relocate 	*/ | ||||
|   bfd_byte r_index[3];	/* symbol table index of symbol 	*/ | ||||
|   bfd_byte r_type[1];	/* relocation type			*/ | ||||
| }; | ||||
|  | ||||
| #define	RELOC_STD_BITS_PCREL_BIG	((unsigned int) 0x80) | ||||
| #define	RELOC_STD_BITS_PCREL_LITTLE	((unsigned int) 0x01) | ||||
|  | ||||
| #define	RELOC_STD_BITS_LENGTH_BIG	((unsigned int) 0x60) | ||||
| #define	RELOC_STD_BITS_LENGTH_SH_BIG	5 | ||||
| #define	RELOC_STD_BITS_LENGTH_LITTLE	((unsigned int) 0x06) | ||||
| #define	RELOC_STD_BITS_LENGTH_SH_LITTLE	1 | ||||
|  | ||||
| #define	RELOC_STD_BITS_EXTERN_BIG	((unsigned int) 0x10) | ||||
| #define	RELOC_STD_BITS_EXTERN_LITTLE	((unsigned int) 0x08) | ||||
|  | ||||
| #define	RELOC_STD_BITS_BASEREL_BIG	((unsigned int) 0x08) | ||||
| #define	RELOC_STD_BITS_BASEREL_LITTLE	((unsigned int) 0x10) | ||||
|  | ||||
| #define	RELOC_STD_BITS_JMPTABLE_BIG	((unsigned int) 0x04) | ||||
| #define	RELOC_STD_BITS_JMPTABLE_LITTLE	((unsigned int) 0x20) | ||||
|  | ||||
| #define	RELOC_STD_BITS_RELATIVE_BIG	((unsigned int) 0x02) | ||||
| #define	RELOC_STD_BITS_RELATIVE_LITTLE	((unsigned int) 0x40) | ||||
|  | ||||
| #define	RELOC_STD_SIZE	(BYTES_IN_WORD + 3 + 1)		/* Bytes per relocation entry */ | ||||
|  | ||||
| struct reloc_std_internal | ||||
| { | ||||
|   bfd_vma r_address;		/* Address (within segment) to be relocated.  */ | ||||
|   /* The meaning of r_symbolnum depends on r_extern.  */ | ||||
|   unsigned int r_symbolnum:24; | ||||
|   /* Nonzero means value is a pc-relative offset | ||||
|      and it should be relocated for changes in its own address | ||||
|      as well as for changes in the symbol or section specified.  */ | ||||
|   unsigned int r_pcrel:1; | ||||
|   /* Length (as exponent of 2) of the field to be relocated. | ||||
|      Thus, a value of 2 indicates 1<<2 bytes.  */ | ||||
|   unsigned int r_length:2; | ||||
|   /* 1 => relocate with value of symbol. | ||||
|      r_symbolnum is the index of the symbol | ||||
|      in files the symbol table. | ||||
|      0 => relocate with the address of a segment. | ||||
|      r_symbolnum is N_TEXT, N_DATA, N_BSS or N_ABS | ||||
|      (the N_EXT bit may be set also, but signifies nothing).  */ | ||||
|   unsigned int r_extern:1; | ||||
|   /* The next three bits are for SunOS shared libraries, and seem to | ||||
|      be undocumented.  */ | ||||
|   unsigned int r_baserel:1;	/* Linkage table relative */ | ||||
|   unsigned int r_jmptable:1;	/* pc-relative to jump table */ | ||||
|   unsigned int r_relative:1;	/* "relative relocation" */ | ||||
|   /* unused */ | ||||
|   unsigned int r_pad:1;		/* Padding -- set to zero */ | ||||
| }; | ||||
|  | ||||
|  | ||||
| /* EXTENDED RELOCS  */ | ||||
|  | ||||
| struct reloc_ext_external { | ||||
|   bfd_byte r_address[BYTES_IN_WORD];	/* offset of of data to relocate 	*/ | ||||
|   bfd_byte r_index[3];	/* symbol table index of symbol 	*/ | ||||
|   bfd_byte r_type[1];	/* relocation type			*/ | ||||
|   bfd_byte r_addend[BYTES_IN_WORD];	/* datum addend				*/ | ||||
| }; | ||||
|  | ||||
| #define	RELOC_EXT_BITS_EXTERN_BIG	((unsigned int) 0x80) | ||||
| #define	RELOC_EXT_BITS_EXTERN_LITTLE	((unsigned int) 0x01) | ||||
|  | ||||
| #define	RELOC_EXT_BITS_TYPE_BIG		((unsigned int) 0x1F) | ||||
| #define	RELOC_EXT_BITS_TYPE_SH_BIG	0 | ||||
| #define	RELOC_EXT_BITS_TYPE_LITTLE	((unsigned int) 0xF8) | ||||
| #define	RELOC_EXT_BITS_TYPE_SH_LITTLE	3 | ||||
|  | ||||
| /* Bytes per relocation entry */ | ||||
| #define	RELOC_EXT_SIZE	(BYTES_IN_WORD + 3 + 1 + BYTES_IN_WORD) | ||||
|  | ||||
| enum reloc_type | ||||
| { | ||||
|   /* simple relocations */ | ||||
|   RELOC_8,			/* data[0:7] = addend + sv 		*/ | ||||
|   RELOC_16,			/* data[0:15] = addend + sv 		*/ | ||||
|   RELOC_32,			/* data[0:31] = addend + sv 		*/ | ||||
|   /* pc-rel displacement */ | ||||
|   RELOC_DISP8,			/* data[0:7] = addend - pc + sv 	*/ | ||||
|   RELOC_DISP16,			/* data[0:15] = addend - pc + sv 	*/ | ||||
|   RELOC_DISP32,			/* data[0:31] = addend - pc + sv 	*/ | ||||
|   /* Special */ | ||||
|   RELOC_WDISP30,		/* data[0:29] = (addend + sv - pc)>>2 	*/ | ||||
|   RELOC_WDISP22,		/* data[0:21] = (addend + sv - pc)>>2 	*/ | ||||
|   RELOC_HI22,			/* data[0:21] = (addend + sv)>>10 	*/ | ||||
|   RELOC_22,			/* data[0:21] = (addend + sv) 		*/ | ||||
|   RELOC_13,			/* data[0:12] = (addend + sv)		*/ | ||||
|   RELOC_LO10,			/* data[0:9] = (addend + sv)		*/ | ||||
|   RELOC_SFA_BASE,		 | ||||
|   RELOC_SFA_OFF13, | ||||
|   /* P.I.C. (base-relative) */ | ||||
|   RELOC_BASE10,  		/* Not sure - maybe we can do this the */ | ||||
|   RELOC_BASE13,			/* right way now */ | ||||
|   RELOC_BASE22, | ||||
|   /* for some sort of pc-rel P.I.C. (?) */ | ||||
|   RELOC_PC10, | ||||
|   RELOC_PC22, | ||||
|   /* P.I.C. jump table */ | ||||
|   RELOC_JMP_TBL, | ||||
|   /* reputedly for shared libraries somehow */ | ||||
|   RELOC_SEGOFF16, | ||||
|   RELOC_GLOB_DAT, | ||||
|   RELOC_JMP_SLOT, | ||||
|   RELOC_RELATIVE, | ||||
|  | ||||
|   RELOC_11,	 | ||||
|   RELOC_WDISP2_14, | ||||
|   RELOC_WDISP19, | ||||
|   RELOC_HHI22,			/* data[0:21] = (addend + sv) >> 42     */ | ||||
|   RELOC_HLO10,			/* data[0:9] = (addend + sv) >> 32      */ | ||||
|    | ||||
|   /* 29K relocation types */ | ||||
|   RELOC_JUMPTARG, | ||||
|   RELOC_CONST, | ||||
|   RELOC_CONSTH, | ||||
|    | ||||
|   /* All the new ones I can think of, for sparc v9 */ | ||||
|  | ||||
|   RELOC_64,			/* data[0:63] = addend + sv 		*/ | ||||
|   RELOC_DISP64,			/* data[0:63] = addend - pc + sv 	*/ | ||||
|   RELOC_WDISP21,		/* data[0:20] = (addend + sv - pc)>>2 	*/ | ||||
|   RELOC_DISP21,			/* data[0:20] = addend - pc + sv        */ | ||||
|   RELOC_DISP14,			/* data[0:13] = addend - pc + sv 	*/ | ||||
|   /* Q . | ||||
|      What are the other ones, | ||||
|      Since this is a clean slate, can we throw away the ones we dont | ||||
|      understand ? Should we sort the values ? What about using a | ||||
|      microcode format like the 68k ? | ||||
|      */ | ||||
|   NO_RELOC | ||||
|   }; | ||||
|  | ||||
|  | ||||
| struct reloc_internal { | ||||
|   bfd_vma r_address;		/* offset of of data to relocate 	*/ | ||||
|   long	r_index;		/* symbol table index of symbol 	*/ | ||||
|   enum reloc_type r_type;	/* relocation type			*/ | ||||
|   bfd_vma r_addend;		/* datum addend				*/ | ||||
| }; | ||||
|  | ||||
| /* Q. | ||||
|    Should the length of the string table be 4 bytes or 8 bytes ? | ||||
|  | ||||
|    Q. | ||||
|    What about archive indexes ? | ||||
|  | ||||
|  */ | ||||
|  | ||||
| #endif				/* __A_OUT_64_H__ */ | ||||
Some files were not shown because too many files have changed in this diff Show More
		Reference in New Issue
	
	Block a user