From ea2de33c6b4550c7150502ddb8a80e975c5e09ab Mon Sep 17 00:00:00 2001 From: kan Date: Wed, 26 Mar 2003 18:12:01 +0000 Subject: This commit was generated by cvs2svn to compensate for changes in r112680, which included commits to RCS files with non-trunk default branches. --- contrib/gcc/FAQ | 653 ---- contrib/gcc/GNATS | 187 - contrib/gcc/MAINTAINERS | 254 -- contrib/gcc/bugs.html | 698 ---- contrib/gcc/config-ml.in | 871 ----- contrib/gcc/config.if | 79 - contrib/gcc/config.sub | 1450 ------- contrib/gcc/config/ChangeLog | 477 --- contrib/gcc/config/acinclude.m4 | 1995 ---------- contrib/gcc/config/mh-a68bsd | 12 - contrib/gcc/config/mh-aix386 | 1 - contrib/gcc/config/mh-apollo68 | 3 - contrib/gcc/config/mh-armpic | 1 - contrib/gcc/config/mh-cxux | 14 - contrib/gcc/config/mh-cygwin | 6 - contrib/gcc/config/mh-decstation | 5 - contrib/gcc/config/mh-delta88 | 4 - contrib/gcc/config/mh-dgux | 4 - contrib/gcc/config/mh-dgux386 | 22 - contrib/gcc/config/mh-djgpp | 14 - contrib/gcc/config/mh-elfalphapic | 1 - contrib/gcc/config/mh-hp300 | 13 - contrib/gcc/config/mh-hpux | 4 - contrib/gcc/config/mh-hpux8 | 4 - contrib/gcc/config/mh-i370pic | 1 - contrib/gcc/config/mh-ia64pic | 1 - contrib/gcc/config/mh-interix | 14 - contrib/gcc/config/mh-irix4 | 7 - contrib/gcc/config/mh-irix5 | 3 - contrib/gcc/config/mh-irix6 | 3 - contrib/gcc/config/mh-lynxos | 2 - contrib/gcc/config/mh-lynxrs6k | 8 - contrib/gcc/config/mh-m68kpic | 1 - contrib/gcc/config/mh-mingw32 | 12 - contrib/gcc/config/mh-ncr3000 | 17 - contrib/gcc/config/mh-ncrsvr43 | 9 - contrib/gcc/config/mh-necv4 | 11 - contrib/gcc/config/mh-openedition | 2 - contrib/gcc/config/mh-papic | 1 - contrib/gcc/config/mh-ppcpic | 1 - contrib/gcc/config/mh-riscos | 15 - contrib/gcc/config/mh-sco | 10 - contrib/gcc/config/mh-solaris | 6 - contrib/gcc/config/mh-sparcpic | 1 - contrib/gcc/config/mh-sun3 | 3 - contrib/gcc/config/mh-sysv | 3 - contrib/gcc/config/mh-sysv4 | 11 - contrib/gcc/config/mh-sysv5 | 8 - contrib/gcc/config/mh-vaxult2 | 2 - contrib/gcc/config/mh-x86pic | 1 - contrib/gcc/config/mpw-mh-mpw | 157 - contrib/gcc/config/mpw/ChangeLog | 81 - contrib/gcc/config/mpw/MoveIfChange | 19 - contrib/gcc/config/mpw/README | 23 - contrib/gcc/config/mpw/forward-include | 3 - contrib/gcc/config/mpw/g-mpw-make.sed | 293 -- contrib/gcc/config/mpw/mpw-touch | 7 - contrib/gcc/config/mpw/mpw-true | 1 - contrib/gcc/config/mpw/null-command | 1 - contrib/gcc/config/mpw/open-brace | 4 - contrib/gcc/config/mpw/tr-7to8-src | 9 - contrib/gcc/config/mpw/true | 1 - contrib/gcc/config/mt-aix43 | 4 - contrib/gcc/config/mt-alphaieee | 2 - contrib/gcc/config/mt-armpic | 1 - contrib/gcc/config/mt-d30v | 4 - contrib/gcc/config/mt-elfalphapic | 1 - contrib/gcc/config/mt-i370pic | 1 - contrib/gcc/config/mt-ia64pic | 1 - contrib/gcc/config/mt-linux | 1 - contrib/gcc/config/mt-m68kpic | 1 - contrib/gcc/config/mt-netware | 1 - contrib/gcc/config/mt-ospace | 3 - contrib/gcc/config/mt-papic | 1 - contrib/gcc/config/mt-ppcpic | 1 - contrib/gcc/config/mt-sparcpic | 1 - contrib/gcc/config/mt-v810 | 4 - contrib/gcc/config/mt-wince | 10 - contrib/gcc/config/mt-x86pic | 1 - contrib/gcc/contrib/ChangeLog | 721 ---- contrib/gcc/contrib/analyze_brprob | 146 - contrib/gcc/contrib/compare_tests | 98 - contrib/gcc/contrib/convert_to_f2c | 48 - contrib/gcc/contrib/convert_to_g2c | 48 - contrib/gcc/contrib/download_f2c | 77 - contrib/gcc/contrib/gcc_build | 316 -- contrib/gcc/contrib/gcc_update | 226 -- contrib/gcc/contrib/gccbug.el | 84 - contrib/gcc/contrib/gennews | 56 - contrib/gcc/contrib/index-prop | 26 - contrib/gcc/contrib/newcvsroot | 34 - contrib/gcc/contrib/regression/ChangeLog | 37 - contrib/gcc/contrib/regression/README | 18 - contrib/gcc/contrib/regression/btest-gcc.sh | 172 - contrib/gcc/contrib/regression/objs-gcc.sh | 121 - contrib/gcc/contrib/regression/site.exp | 18 - contrib/gcc/contrib/test_installed | 114 - contrib/gcc/contrib/test_summary | 142 - contrib/gcc/contrib/texi2pod.pl | 427 --- contrib/gcc/contrib/warn_summary | 210 - contrib/gcc/faq.html | 698 ---- contrib/gcc/gnats.html | 170 - contrib/gcc/include/COPYING | 340 -- contrib/gcc/include/ChangeLog | 1960 ---------- contrib/gcc/include/ansidecl.h | 295 -- contrib/gcc/include/demangle.h | 163 - contrib/gcc/include/dyn-string.h | 92 - contrib/gcc/include/fibheap.h | 81 - contrib/gcc/include/floatformat.h | 122 - contrib/gcc/include/fnmatch.h | 70 - contrib/gcc/include/getopt.h | 141 - contrib/gcc/include/hashtab.h | 155 - contrib/gcc/include/libiberty.h | 317 -- contrib/gcc/include/md5.h | 142 - contrib/gcc/include/objalloc.h | 115 - contrib/gcc/include/obstack.h | 599 --- contrib/gcc/include/partition.h | 81 - contrib/gcc/include/safe-ctype.h | 103 - contrib/gcc/include/sort.h | 48 - contrib/gcc/include/splay-tree.h | 154 - contrib/gcc/include/symcat.h | 49 - contrib/gcc/include/ternary.h | 51 - contrib/gcc/include/xregex.h | 28 - contrib/gcc/include/xregex2.h | 571 --- contrib/gcc/install-sh | 251 -- contrib/gcc/libtool.m4 | 854 ----- contrib/gcc/ltcf-c.sh | 815 ---- contrib/gcc/ltcf-cxx.sh | 1005 ----- contrib/gcc/ltcf-gcj.sh | 651 ---- contrib/gcc/ltconfig | 2795 -------------- contrib/gcc/ltmain.sh | 5483 --------------------------- contrib/gcc/missing | 190 - contrib/gcc/mkdep | 87 - contrib/gcc/mkinstalldirs | 36 - contrib/gcc/symlink-tree | 53 - contrib/gcc/ylwrap | 123 - 136 files changed, 29589 deletions(-) delete mode 100644 contrib/gcc/FAQ delete mode 100644 contrib/gcc/GNATS delete mode 100644 contrib/gcc/MAINTAINERS delete mode 100644 contrib/gcc/bugs.html delete mode 100644 contrib/gcc/config-ml.in delete mode 100644 contrib/gcc/config.if delete mode 100755 contrib/gcc/config.sub delete mode 100644 contrib/gcc/config/ChangeLog delete mode 100644 contrib/gcc/config/acinclude.m4 delete mode 100644 contrib/gcc/config/mh-a68bsd delete mode 100644 contrib/gcc/config/mh-aix386 delete mode 100644 contrib/gcc/config/mh-apollo68 delete mode 100644 contrib/gcc/config/mh-armpic delete mode 100644 contrib/gcc/config/mh-cxux delete mode 100644 contrib/gcc/config/mh-cygwin delete mode 100644 contrib/gcc/config/mh-decstation delete mode 100644 contrib/gcc/config/mh-delta88 delete mode 100644 contrib/gcc/config/mh-dgux delete mode 100644 contrib/gcc/config/mh-dgux386 delete mode 100644 contrib/gcc/config/mh-djgpp delete mode 100644 contrib/gcc/config/mh-elfalphapic delete mode 100644 contrib/gcc/config/mh-hp300 delete mode 100644 contrib/gcc/config/mh-hpux delete mode 100644 contrib/gcc/config/mh-hpux8 delete mode 100644 contrib/gcc/config/mh-i370pic delete mode 100644 contrib/gcc/config/mh-ia64pic delete mode 100644 contrib/gcc/config/mh-interix delete mode 100644 contrib/gcc/config/mh-irix4 delete mode 100644 contrib/gcc/config/mh-irix5 delete mode 100644 contrib/gcc/config/mh-irix6 delete mode 100644 contrib/gcc/config/mh-lynxos delete mode 100644 contrib/gcc/config/mh-lynxrs6k delete mode 100644 contrib/gcc/config/mh-m68kpic delete mode 100644 contrib/gcc/config/mh-mingw32 delete mode 100644 contrib/gcc/config/mh-ncr3000 delete mode 100644 contrib/gcc/config/mh-ncrsvr43 delete mode 100644 contrib/gcc/config/mh-necv4 delete mode 100644 contrib/gcc/config/mh-openedition delete mode 100644 contrib/gcc/config/mh-papic delete mode 100644 contrib/gcc/config/mh-ppcpic delete mode 100644 contrib/gcc/config/mh-riscos delete mode 100644 contrib/gcc/config/mh-sco delete mode 100644 contrib/gcc/config/mh-solaris delete mode 100644 contrib/gcc/config/mh-sparcpic delete mode 100644 contrib/gcc/config/mh-sun3 delete mode 100644 contrib/gcc/config/mh-sysv delete mode 100644 contrib/gcc/config/mh-sysv4 delete mode 100644 contrib/gcc/config/mh-sysv5 delete mode 100644 contrib/gcc/config/mh-vaxult2 delete mode 100644 contrib/gcc/config/mh-x86pic delete mode 100644 contrib/gcc/config/mpw-mh-mpw delete mode 100644 contrib/gcc/config/mpw/ChangeLog delete mode 100644 contrib/gcc/config/mpw/MoveIfChange delete mode 100644 contrib/gcc/config/mpw/README delete mode 100644 contrib/gcc/config/mpw/forward-include delete mode 100644 contrib/gcc/config/mpw/g-mpw-make.sed delete mode 100644 contrib/gcc/config/mpw/mpw-touch delete mode 100644 contrib/gcc/config/mpw/mpw-true delete mode 100644 contrib/gcc/config/mpw/null-command delete mode 100644 contrib/gcc/config/mpw/open-brace delete mode 100644 contrib/gcc/config/mpw/tr-7to8-src delete mode 100644 contrib/gcc/config/mpw/true delete mode 100644 contrib/gcc/config/mt-aix43 delete mode 100644 contrib/gcc/config/mt-alphaieee delete mode 100644 contrib/gcc/config/mt-armpic delete mode 100644 contrib/gcc/config/mt-d30v delete mode 100644 contrib/gcc/config/mt-elfalphapic delete mode 100644 contrib/gcc/config/mt-i370pic delete mode 100644 contrib/gcc/config/mt-ia64pic delete mode 100644 contrib/gcc/config/mt-linux delete mode 100644 contrib/gcc/config/mt-m68kpic delete mode 100644 contrib/gcc/config/mt-netware delete mode 100644 contrib/gcc/config/mt-ospace delete mode 100644 contrib/gcc/config/mt-papic delete mode 100644 contrib/gcc/config/mt-ppcpic delete mode 100644 contrib/gcc/config/mt-sparcpic delete mode 100644 contrib/gcc/config/mt-v810 delete mode 100644 contrib/gcc/config/mt-wince delete mode 100644 contrib/gcc/config/mt-x86pic delete mode 100644 contrib/gcc/contrib/ChangeLog delete mode 100755 contrib/gcc/contrib/analyze_brprob delete mode 100755 contrib/gcc/contrib/compare_tests delete mode 100755 contrib/gcc/contrib/convert_to_f2c delete mode 100755 contrib/gcc/contrib/convert_to_g2c delete mode 100755 contrib/gcc/contrib/download_f2c delete mode 100755 contrib/gcc/contrib/gcc_build delete mode 100755 contrib/gcc/contrib/gcc_update delete mode 100644 contrib/gcc/contrib/gccbug.el delete mode 100755 contrib/gcc/contrib/gennews delete mode 100755 contrib/gcc/contrib/index-prop delete mode 100755 contrib/gcc/contrib/newcvsroot delete mode 100644 contrib/gcc/contrib/regression/ChangeLog delete mode 100644 contrib/gcc/contrib/regression/README delete mode 100755 contrib/gcc/contrib/regression/btest-gcc.sh delete mode 100755 contrib/gcc/contrib/regression/objs-gcc.sh delete mode 100644 contrib/gcc/contrib/regression/site.exp delete mode 100755 contrib/gcc/contrib/test_installed delete mode 100755 contrib/gcc/contrib/test_summary delete mode 100755 contrib/gcc/contrib/texi2pod.pl delete mode 100755 contrib/gcc/contrib/warn_summary delete mode 100644 contrib/gcc/faq.html delete mode 100644 contrib/gcc/gnats.html delete mode 100644 contrib/gcc/include/COPYING delete mode 100644 contrib/gcc/include/ChangeLog delete mode 100644 contrib/gcc/include/ansidecl.h delete mode 100644 contrib/gcc/include/demangle.h delete mode 100644 contrib/gcc/include/dyn-string.h delete mode 100644 contrib/gcc/include/fibheap.h delete mode 100644 contrib/gcc/include/floatformat.h delete mode 100644 contrib/gcc/include/fnmatch.h delete mode 100644 contrib/gcc/include/getopt.h delete mode 100644 contrib/gcc/include/hashtab.h delete mode 100644 contrib/gcc/include/libiberty.h delete mode 100644 contrib/gcc/include/md5.h delete mode 100644 contrib/gcc/include/objalloc.h delete mode 100644 contrib/gcc/include/obstack.h delete mode 100644 contrib/gcc/include/partition.h delete mode 100644 contrib/gcc/include/safe-ctype.h delete mode 100644 contrib/gcc/include/sort.h delete mode 100644 contrib/gcc/include/splay-tree.h delete mode 100644 contrib/gcc/include/symcat.h delete mode 100644 contrib/gcc/include/ternary.h delete mode 100644 contrib/gcc/include/xregex.h delete mode 100644 contrib/gcc/include/xregex2.h delete mode 100755 contrib/gcc/install-sh delete mode 100644 contrib/gcc/libtool.m4 delete mode 100644 contrib/gcc/ltcf-c.sh delete mode 100644 contrib/gcc/ltcf-cxx.sh delete mode 100644 contrib/gcc/ltcf-gcj.sh delete mode 100755 contrib/gcc/ltconfig delete mode 100644 contrib/gcc/ltmain.sh delete mode 100755 contrib/gcc/missing delete mode 100755 contrib/gcc/mkdep delete mode 100755 contrib/gcc/mkinstalldirs delete mode 100755 contrib/gcc/symlink-tree delete mode 100755 contrib/gcc/ylwrap (limited to 'contrib/gcc') diff --git a/contrib/gcc/FAQ b/contrib/gcc/FAQ deleted file mode 100644 index a40c0f9..0000000 --- a/contrib/gcc/FAQ +++ /dev/null @@ -1,653 +0,0 @@ - - GCC Frequently Asked Questions - - The latest version of this document is always available at - [1]http://www.gnu.org/software/gcc/faq.html. - - This FAQ tries to answer specific questions concerning GCC. For - general information regarding C, C++, resp. Fortran please check the - [2]comp.lang.c FAQ, [3]comp.std.c++ FAQ, and the [4]Fortran - Information page. - - Other GCC-related FAQs: [5]libstdc++-v3, and [6]GCJ. - _________________________________________________________________ - - Questions - - 1. [7]General information - 1. [8]What is the relationship between GCC and EGCS? - 2. [9]What is the relationship between GCC and Cygnus / Red Hat? - 3. [10]What is an open development model? - 4. [11]How do I report a bug? - 5. [12]How do I get a bug fixed or a feature added? - 6. [13]Does GCC work on my platform? - 2. [14]Installation - 1. [15]How to install multiple versions of GCC - 2. [16]Dynamic linker is unable to find GCC libraries - 3. [17]libstdc++/libio tests fail badly with --enable-shared - 4. [18]GCC can not find GNU as/GNU ld - 5. [19]cpp: Usage:... Error - 6. [20]Optimizing the compiler itself - 3. [21]Testsuite problems - 1. [22]Unable to run the testsuite - 2. [23]How do I pass flags like -fnew-abi to the testsuite? - 3. [24]How can I run the test suite with multiple options? - 4. [25]Older versions of GCC - 1. [26]Is there a stringstream / sstream for GCC 2.95.2? - 5. [27]Miscellaneous - 1. [28]Virtual memory exhausted - 2. [29]Friend Templates - 3. [30]dynamic_cast, throw, typeid don't work with shared - libraries - 4. [31]Why do I need autoconf, bison, xgettext, automake, etc? - 5. [32]Why can't I build a shared library? - 6. [33]How to work around too long C++ symbol names? - (-fsquangle) - 7. [34]When building C++, the linker says my constructors, - destructors or virtual tables are undefined, but I defined - them - 8. [35]Will GCC someday include an incremental linker? - _________________________________________________________________ - - General information - -What is the relationship between GCC and EGCS? - - In 1990/1991 gcc version 1 had reached a point of stability. For the - targets it could support, it worked well. It had limitations inherent - in its design that would be difficult to resolve, so a major effort - was made to resolve those limitiations and gcc version 2 was the - result. - - When we had gcc2 in a useful state, development efforts on gcc1 - stopped and we all concentrated on making gcc2 better than gcc1 could - ever be. This is the kind of step forward we wanted to make with the - EGCS project when it was formed in 1997. - - In April 1999 the Free Software Foundation officially halted - development on the gcc2 compiler and appointed the EGCS project as the - official GCC maintainers. The net result was a single project which - carries forward GCC development under the ultimate control of the - [36]GCC Steering Committee. - _________________________________________________________________ - -What is the relationship between GCC and Cygnus / Red Hat? - - It is a common mis-conception that Red Hat controls GCC either - directly or indirectly. - - While Red Hat does donate hardware, network connections, code and - developer time to GCC development, Red Hat does not control GCC. - - Overall control of GCC is in the hands of the [37]GCC Steering - Committee which includes people from a variety of different - organizations and backgrounds. The purpose of the steering committee - is to make decisions in the best interest of GCC and to help ensure - that no individual or company has control over the project. - - To summarize, Red Hat contributes to the GCC project, but does not - exert a controlling influence over GCC. - _________________________________________________________________ - -What is an open development model? - - We are using a bazaar style [38][1] approach to GCC development: we - make snapshots publicly available to anyone who wants to try them; we - welcome anyone to join the development mailing list. All of the - discussions on the development mailing list are available via the web. - We're going to be making releases with a much higher frequency than - they have been made in the past. - - In addition to weekly snapshots of the GCC development sources, we - have the sources readable from a CVS server by anyone. Furthermore we - are using remote CVS to allow remote maintainers write access to the - sources. - - There have been many potential GCC developers who were not able to - participate in GCC development in the past. We want these people to - help in any way they can; we ultimately want GCC to be the best - compiler in the world. - - A compiler is a complicated piece of software, there will still be - strong central maintainers who will reject patches, who will demand - documentation of implementations, and who will keep the level of - quality as high as it is today. Code that could use wider testing may - be integrated--code that is simply ill-conceived won't be. - - GCC is not the first piece of software to use this open development - process; FreeBSD, the Emacs lisp repository, and the Linux kernel are - a few examples of the bazaar style of development. - - With GCC, we are adding new features and optimizations at a rate that - has not been done since the creation of gcc2; these additions - inevitably have a temporarily destabilizing effect. With the help of - developers working together with this bazaar style development, the - resulting stability and quality levels will be better than we've had - before. - - [1] We've been discussing different development models a lot over - the past few months. The paper which started all of this introduced - two terms: A cathedral development model versus a bazaar - development model. The paper is written by Eric S. Raymond, it is - called ``[39]The Cathedral and the Bazaar''. The paper is a useful - starting point for discussions. - _________________________________________________________________ - -How do I report a bug? - - There are complete instructions [40]here. - _________________________________________________________________ - -How do I get a bug fixed or a feature added? - - There are lots of ways to get something fixed. The list below may be - incomplete, but it covers many of the common cases. These are listed - roughly in order of increasing difficulty for the average GCC user, - meaning someone who is not skilled in the internals of GCC, and where - difficulty is measured in terms of the time required to fix the bug. - No alternative is better than any other; each has its benefits and - disadvantages. - * Hire someone to fix it for you. There are various companies and - individuals providing support for GCC. This alternative costs - money, but is relatively likely to get results. - * [41]Report the problem to the GCC GNATS bug tracking system and - hope that someone will be kind enough to fix it for you. While - this is certainly possible, and often happens, there is no - guarantee that it will. You should not expect the same response - from this method that you would see from a commercial support - organization since the people who read GCC bug reports, if they - choose to help you, will be volunteering their time. This - alternative will work best if you follow the directions on - [42]submitting bugreports. - * Fix it yourself. This alternative will probably bring results, if - you work hard enough, but will probably take a lot of time, and, - depending on the quality of your work and the perceived benefits - of your changes, your code may or may not ever make it into an - official release of GCC. - _________________________________________________________________ - -Does GCC work on my platform? - - The host/target specific installation notes for GCC include - information about known problems with installing or using GCC on - particular platforms. These are included in the sources for a release - in INSTALL/specific.html, and the [43]latest version is always - available at the GCC web site. Reports of [44]successful builds for - several versions of GCC are also available at the web site. - _________________________________________________________________ - - Installation - -How to install multiple versions of GCC - - It may be desirable to install multiple versions of the compiler on - the same system. This can be done by using different prefix paths at - configure time and a few symlinks. - - Basically, configure the two compilers with different --prefix - options, then build and install each compiler. Assume you want "gcc" - to be the latest compiler and available in /usr/local/bin; also assume - that you want "gcc2" to be the older gcc2 compiler and also available - in /usr/local/bin. - - The easiest way to do this is to configure the new GCC with - --prefix=/usr/local/gcc and the older gcc2 with - --prefix=/usr/local/gcc2. Build and install both compilers. Then make - a symlink from /usr/local/bin/gcc to /usr/local/gcc/bin/gcc and from - /usr/local/bin/gcc2 to /usr/local/gcc2/bin/gcc. Create similar links - for the "g++", "c++" and "g77" compiler drivers. - - An alternative to using symlinks is to configure with a - --program-transform-name option. This option specifies a sed command - to process installed program names with. Using it you can, for - instance, have all the new GCC programs installed as "new-gcc" and the - like. You will still have to specify different --prefix options for - new GCC and old GCC, because it is only the executable program names - that are transformed. The difference is that you (as administrator) do - not have to set up symlinks, but must specify additional directories - in your (as a user) PATH. A complication with --program-transform-name - is that the sed command invariably contains characters significant to - the shell, and these have to be escaped correctly, also it is not - possible to use "^" or "$" in the command. Here is the option to - prefix "new-" to the new GCC installed programs: - - --program-transform-name='s,\\\\(.*\\\\),new-\\\\1,' - - With the above --prefix option, that will install the new GCC programs - into /usr/local/gcc/bin with names prefixed by "new-". You can use - --program-transform-name if you have multiple versions of GCC, and - wish to be sure about which version you are invoking. - - If you use --prefix, GCC may have difficulty locating a GNU assembler - or linker on your system, [45]GCC can not find GNU as/GNU ld explains - how to deal with this. - - Another option that may be easier is to use the --program-prefix= or - --program-suffix= options to configure. So if you're installing GCC - 2.95.2 and don't want to disturb the current version of GCC in - /usr/local/bin/, you could do - - configure --program-suffix=-2.95.2 - - This should result in GCC being installed as /usr/local/bin/gcc-2.95.2 - instead of /usr/local/bin/gcc. - _________________________________________________________________ - -Dynamic linker is unable to find GCC libraries - - This problem manifests itself by programs not finding shared libraries - they depend on when the programs are started. Note this problem often - manifests itself with failures in the libio/libstdc++ tests after - configuring with --enable-shared and building GCC. - - GCC does not specify a runpath so that the dynamic linker can find - dynamic libraries at runtime. - - The short explanation is that if you always pass a -R option to the - linker, then your programs become dependent on directories which may - be NFS mounted, and programs may hang unnecessarily when an NFS server - goes down. - - The problem is not programs that do require the directories; those - programs are going to hang no matter what you do. The problem is - programs that do not require the directories. - - SunOS effectively always passed a -R option for every -L option; this - was a bad idea, and so it was removed for Solaris. We should not - recreate it. - - However, if you feel you really need such an option to be passed - automatically to the linker, you may add it to the GCC specs file. - This file can be found in the same directory that contains cc1 (run - gcc -print-prog-name=cc1 to find it). You may add linker flags such as - -R or -rpath, depending on platform and linker, to the *link or *lib - specs. - - Another alternative is to install a wrapper script around gcc, g++ or - ld that adds the appropriate directory to the environment variable - LD_RUN_PATH or equivalent (again, it's platform-dependent). - - Yet another option, that works on a few platforms, is to hard-code the - full pathname of the library into its soname. This can only be - accomplished by modifying the appropriate .ml file within - libstdc++/config (and also libg++/config, if you are building libg++), - so that $(libdir)/ appears just before the library name in -soname or - -h options. - _________________________________________________________________ - -GCC can not find GNU as/GNU ld - - GCC searches the PATH for an assembler and a loader, but it only does - so after searching a directory list hard-coded in the GCC executables. - Since, on most platforms, the hard-coded list includes directories in - which the system asembler and loader can be found, you may have to - take one of the following actions to arrange that GCC uses the GNU - versions of those programs. - - To ensure that GCC finds the GNU assembler (the GNU loader), which are - required by [46]some configurations, you should configure these with - the same --prefix option as you used for GCC. Then build & install GNU - as (GNU ld) and proceed with building GCC. - - Another alternative is to create links to GNU as and ld in any of the - directories printed by the command `gcc -print-search-dirs | grep - '^programs:''. The link to `ld' should be named `real-ld' if `ld' - already exists. If such links do not exist while you're compiling GCC, - you may have to create them in the build directories too, within the - gcc directory and in all the gcc/stage* subdirectories. - - GCC 2.95 allows you to specify the full pathname of the assembler and - the linker to use. The configure flags are `--with-as=/path/to/as' and - `--with-ld=/path/to/ld'. GCC will try to use these pathnames before - looking for `as' or `(real-)ld' in the standard search dirs. If, at - configure-time, the specified programs are found to be GNU utilities, - `--with-gnu-as' and `--with-gnu-ld' need not be used; these flags will - be auto-detected. One drawback of this option is that it won't allow - you to override the search path for assembler and linker with - command-line options -B/path/ if the specified filenames exist. - _________________________________________________________________ - -cpp: Usage:... Error - - If you get an error like this when building GCC (particularly when - building __mulsi3), then you likely have a problem with your - environment variables. - cpp: Usage: /usr/lib/gcc-lib/i586-unknown-linux-gnulibc1/2.7.2.3/cpp - [switches] input output - - First look for an explicit '.' in either LIBRARY_PATH or - GCC_EXEC_PREFIX from your environment. If you do not find an explicit - '.', look for an empty pathname in those variables. Note that ':' at - either the start or end of these variables is an implicit '.' and will - cause problems. - - Also note '::' in these paths will also cause similar problems. - _________________________________________________________________ - -Optimizing the compiler itself - - If you want to test a particular optimization option, it's useful to - try bootstrapping the compiler with that option turned on. For - example, to test the -fssa option, you could bootstrap like this: -make BOOT_CFLAGS="-O2 -fssa" bootstrap - _________________________________________________________________ - - Testsuite problems - -Unable to run the testsuite - - If you get a message about unable to find "standard.exp" when trying - to run the GCC testsuites, then your dejagnu is too old to run the GCC - tests. You will need to get a newer version of dejagnu from - [47]http://www.gnu.org/software/dejagnu/dejagnu.html. - _________________________________________________________________ - -How do I pass flags like -fnew-abi to the testsuite? - - If you invoke runtest directly, you can use the --tool_opts option, - e.g: - runtest --tool_opts "-fnew-abi -fno-honor-std" - - Or, if you use make check you can use the make variable RUNTESTFLAGS, - e.g: - make RUNTESTFLAGS="--tool_opts '-fnew-abi -fno-honor-std'" check-g++ - _________________________________________________________________ - -How can I run the test suite with multiple options? - - If you invoke runtest directly, you can use the --target_board option, - e.g: - runtest --target_board "unix{-fPIC,-fpic,}" - - Or, if you use make check you can use the make variable RUNTESTFLAGS, - e.g: - make RUNTESTFLAGS="--target_board 'unix{-fPIC,-fpic,}'" check-gcc - - Either of these examples will run the tests three times. Once with - -fPIC, once with -fpic, and once with no additional flags. - - This technique is particularly useful on multilibbed targets. - _________________________________________________________________ - - Older versions of GCC and EGCS - -Is there a stringstream / sstream for GCC 2.95.2? - - Yes, it's at: - [48]http://gcc.gnu.org/ml/libstdc++/2000-q2/msg00700/sstream. - _________________________________________________________________ - - Miscellaneous - -Virtual memory exhausted error - - This error means your system ran out of memory; this can happen for - large files, particularly when optimizing. If you're getting this - error you should consider trying to simplify your files or reducing - the optimization level. - - Note that using -pedantic or -Wreturn-type can cause an explosion in - the amount of memory needed for template-heavy C++ code, such as code - that uses STL. Also note that -Wall includes -Wreturn-type, so if you - use -Wall you will need to specify -Wno-return-type to turn it off. - _________________________________________________________________ - -Friend Templates - - In order to make a specialization of a template function a friend of a - (possibly template) class, you must explicitly state that the friend - function is a template, by appending angle brackets to its name, and - this template function must have been declared already. Here's an - example: -template class foo { - friend void bar(foo); -} - - The above declaration declares a non-template function named bar, so - it must be explicitly defined for each specialization of foo. A - template definition of bar won't do, because it is unrelated with the - non-template declaration above. So you'd have to end up writing: -void bar(foo) { /* ... */ } -void bar(foo) { /* ... */ } - - If you meant bar to be a template function, you should have - forward-declared it as follows. Note that, since the template function - declaration refers to the template class, the template class must be - forward-declared too: -template -class foo; - -template -void bar(foo); - -template -class foo { - friend void bar<>(foo); -}; - -template -void bar(foo) { /* ... */ } - - In this case, the template argument list could be left empty, because - it can be implicitly deduced from the function arguments, but the - angle brackets must be present, otherwise the declaration will be - taken as a non-template function. Furthermore, in some cases, you may - have to explicitly specify the template arguments, to remove - ambiguity. - - An error in the last public comment draft of the ANSI/ISO C++ Standard - and the fact that previous releases of GCC would accept such friend - declarations as template declarations has led people to believe that - the forward declaration was not necessary, but, according to the final - version of the Standard, it is. - _________________________________________________________________ - -dynamic_cast, throw, typeid don't work with shared libraries - - The new C++ ABI in the GCC 3.0 series uses address comparisons, rather - than string compares, to determine type equality. This leads to better - performance. Like other objects that have to be present in the final - executable, these std::typeinfo_t objects have what is called vague - linkage because they are not tightly bound to any one particular - translation unit (object file). The compiler has to emit them in any - translation unit that requires their presence, and then rely on the - linking and loading process to make sure that only one of them is - active in the final executable. With static linking all of these - symbols are resolved at link time, but with dynamic linking, further - resolution occurs at load time. You have to ensure that objects within - a shared library are resolved against objects in the executable and - other shared libraries. - * For a program which is linked against a shared library, no - additional precautions need taking. - * You cannot create a shared library with the "-Bsymbolic" option, - as that prevents the resolution described above. - * If you use dlopen to explicitly load code from a shared library, - you must do several things. First, export global symbols from the - executable by linking it with the "-E" flag (you will have to - specify this as "-Wl,-E" if you are invoking the linker in the - usual manner from the compiler driver, g++). You must also make - the external symbols in the loaded library available for - subsequent libraries by providing the RTLD_GLOBAL flag to dlopen. - The symbol resolution can be immediate or lazy. - - Template instantiations are another, user visible, case of objects - with vague linkage, which needs similar resolution. If you do not take - the above precautions, you may discover that a template instantiation - with the same argument list, but instantiated in multiple translation - units, has several addresses, depending in which translation unit the - address is taken. (This is not an exhaustive list of the kind of - objects which have vague linkage and are expected to be resolved - during linking & loading.) - - If you are worried about different objects with the same name - colliding during the linking or loading process, then you should use - namespaces to disambiguate them. Giving distinct objects with global - linkage the same name is a violation of the One Definition Rule (ODR) - [basic.def.odr]. - - For more details about the way that GCC implements these and other C++ - features, please read the [49]ABI specification. Note the - std::typeinfo_t objects which must be resolved all begin with "_ZTS". - Refer to ld's documentation for a description of the "-E" & - "-Bsymbolic" flags. - _________________________________________________________________ - -Why do I need autoconf, bison, xgettext, automake, etc? - - If you're using diffs up dated from one snapshot to the next, or if - you're using the CVS repository, you may need several additional - programs to build GCC. - - These include, but are not necessarily limited to autoconf, automake, - bison, and xgettext. - - This is necessary because neither diff nor cvs keep timestamps - correct. This causes problems for generated files as "make" may think - those generated files are out of date and try to regenerate them. - - An easy way to work around this problem is to use the gcc_update - script in the contrib subdirectory of GCC, which handles this - transparently without requiring installation of any additional tools. - (Note: Up to and including GCC 2.95 this script was called egcs_update - .) - - When building from diffs or CVS or if you modified some sources, you - may also need to obtain development versions of some GNU tools, as the - production versions do not necessarily handle all features needed to - rebuild GCC. - - In general, the current versions of these tools from - [50]ftp://ftp.gnu.org/gnu/ will work. At present, Autoconf 2.50 is not - supported, and you will need to use Autoconf 2.13; work is in progress - to fix this problem. Also look at - [51]ftp://gcc.gnu.org/pub/gcc/infrastructure/ for any special versions - of packages. - _________________________________________________________________ - -Why can't I build a shared library? - - When building a shared library you may get an error message from the - linker like `assert pure-text failed:' or `DP relative code in file'. - - This kind of error occurs when you've failed to provide proper flags - to gcc when linking the shared library. - - You can get this error even if all the .o files for the shared library - were compiled with the proper PIC option. When building a shared - library, gcc will compile additional code to be included in the - library. That additional code must also be compiled with the proper - PIC option. - - Adding the proper PIC option (-fpic or -fPIC) to the link line which - creates the shared library will fix this problem on targets that - support PIC in this manner. For example: - gcc -c -fPIC myfile.c - gcc -shared -o libmyfile.so -fPIC myfile.o - _________________________________________________________________ - -How to work around too long C++ symbol names (-fsquangle) - - This question does not apply to GCC 3.0 or later versions, which have - a new C++ ABI with much shorter mangled names. - - If the standard assembler of your platform can't cope with the large - symbol names that the default g++ name mangling mechanism produces, - your best bet is to use GNU as, from the GNU binutils package. - - Unfortunately, GNU as does not support all platforms supported by GCC, - so you may have to use an experimental work-around: the -fsquangle - option, that enables compression of symbol names. - - Note that this option is still under development, and subject to - change. Since it modifies the name mangling mechanism, you'll need to - build libstdc++ and any other C++ libraries with this option enabled. - Furthermore, if this option changes its behavior in the future, you'll - have to rebuild them all again. :-( - - This option can be enabled by default by initializing - `flag_do_squangling' with `1' in `gcc/cp/decl2.c' (it is not - initialized by default), then rebuilding GCC and any C++ libraries. - _________________________________________________________________ - -When building C++, the linker says my constructors, destructors or virtual -tables are undefined, but I defined them - - The ISO C++ Standard specifies that all virtual methods of a class - that are not pure-virtual must be defined, but does not require any - diagnostic for violations of this rule [class.virtual]/8. Based on - this assumption, GCC will only emit the implicitly defined - constructors, the assignment operator, the destructor and the virtual - table of a class in the translation unit that defines its first such - non-inline method. - - Therefore, if you fail to define this particular method, the linker - may complain about the lack of definitions for apparently unrelated - symbols. Unfortunately, in order to improve this error message, it - might be necessary to change the linker, and this can't always be - done. - - The solution is to ensure that all virtual methods that are not pure - are defined. Note that a destructor must be defined even if it is - declared pure-virtual [class.dtor]/7. - _________________________________________________________________ - -Will GCC someday include an incremental linker? - - Incremental linking is part of the linker, not the compiler. As such, - GCC doesn't have anything to do with incremental linking. Depending on - what platform you use, it may be possible to tell GCC to use the - platform's native linker (e.g., Solaris' ild(1)). - -References - - 1. http://www.gnu.org/software/gcc/faq.html - 2. http://www.eskimo.com/~scs/C-faq/top.html - 3. http://www.research.att.com/~austern/csc/faq.html - 4. http://www.fortran.com/fortran/info.html - 5. http://gcc.gnu.org/onlinedocs/libstdc++/faq/index.html - 6. http://gcc.gnu.org/java/faq.html - 7. http://gcc.gnu.org/faq.html#general - 8. http://gcc.gnu.org/faq.html#gcc - 9. http://gcc.gnu.org/faq.html#cygnus - 10. http://gcc.gnu.org/faq.html#open-development - 11. http://gcc.gnu.org/faq.html#bugreport - 12. http://gcc.gnu.org/faq.html#support - 13. http://gcc.gnu.org/faq.html#platforms - 14. http://gcc.gnu.org/faq.html#installation - 15. http://gcc.gnu.org/faq.html#multiple - 16. http://gcc.gnu.org/faq.html#rpath - 17. http://gcc.gnu.org/faq.html#rpath - 18. http://gcc.gnu.org/faq.html#gas - 19. http://gcc.gnu.org/faq.html#environ - 20. http://gcc.gnu.org/faq.html#optimizing - 21. http://gcc.gnu.org/faq.html#testsuite - 22. http://gcc.gnu.org/faq.html#dejagnu - 23. http://gcc.gnu.org/faq.html#testoptions - 24. http://gcc.gnu.org/faq.html#multipletests - 25. http://gcc.gnu.org/faq.html#old - 26. http://gcc.gnu.org/faq.html#2.95sstream - 27. http://gcc.gnu.org/faq.html#misc - 28. http://gcc.gnu.org/faq.html#memexhausted - 29. http://gcc.gnu.org/faq.html#friend - 30. http://gcc.gnu.org/faq.html#dso - 31. http://gcc.gnu.org/faq.html#generated_files - 32. http://gcc.gnu.org/faq.html#picflag-needed - 33. http://gcc.gnu.org/faq.html#squangle - 34. http://gcc.gnu.org/faq.html#vtables - 35. http://gcc.gnu.org/faq.html#incremental - 36. http://gcc.gnu.org/steering.html - 37. http://gcc.gnu.org/steering.html - 38. http://gcc.gnu.org/faq.html#cathedral-vs-bazaar - 39. http://www.tuxedo.org/~esr/writings/cathedral-bazaar/ - 40. http://gcc.gnu.org/bugs.html - 41. http://gcc.gnu.org/bugs.html - 42. http://gcc.gnu.org/bugs.html - 43. http://gcc.gnu.org/install/specific.html - 44. http://gcc.gnu.org/buildstat.html - 45. http://gcc.gnu.org/faq.html#gas - 46. http://gcc.gnu.org/install/specific.html - 47. http://www.gnu.org/software/dejagnu/dejagnu.html - 48. http://gcc.gnu.org/ml/libstdc++/2000-q2/msg00700/sstream - 49. http://www.codesourcery.com/cxx-abi/ - 50. ftp://ftp.gnu.org/gnu/ - 51. ftp://gcc.gnu.org/pub/gcc/infrastructure/ diff --git a/contrib/gcc/GNATS b/contrib/gcc/GNATS deleted file mode 100644 index aa67bc9..0000000 --- a/contrib/gcc/GNATS +++ /dev/null @@ -1,187 +0,0 @@ - - Submitting Bug Reports using GNATS - -gnatsweb and gccbug - - GNATS, the GNU bug tracking system, is used to track GCC bug reports. - Before submitting a bug report, please read the [1]general - instructions. - - The preferred way to submit a bug report is by means of the - [2]gnatsweb interface. Make sure you include an e-mail address, so we - can inform you when the status of your report changes. - - Another way is to use the gccbug program that is automatically - installed with current versions of GCC, which submits the bug report - by e-mail. - - Both techniques use the same GNATS bug database. - -Filling out a report - - The bug report form provides a number of fields; you'll need to - fill-out most of those (as indicated below) to provide a complete - report. The fields have the following purpose: - - Originator - Your name. - - Organization - Your organization. You can leave this field blank. - - Confidential - This field is unused and set to 'no'. All bug reports, - including sample code, are publicly accessible. - - Synopsis - A one-line description of the problem; something like "GCC 2.95 - does not foo", "objc crashes when doing bar". - - Severity - Can be one of - - critical - GCC is completely not operational; no work-around known. - - serious - GCC is not working properly; a work-around is possible. - - non-critical - Report indicates minor problem. - - Priority - Can be one of - - high - A solution is necessary as soon as possible. This is - reserved to GCC maintainers. - - medium - The problem should be solved in the next release. - - low - The problem should be solved in a future release. - - Category - This indicates the GCC subproject which is affected by the - problem. Currently, it can be one of - - ada - A problem with the Ada compiler, libraries or tools. - - bootstrap - GCC fails to bootstrap. This should be filed only if a - bootstrap failure prevails for an extended period of time - (at least one week) on any platform (and possibly - not-so-common conditions like a read-only srcdir), or - non-mainstream platforms. - - c++ - A problem with the C++ compiler. - - c - A problem with the C compiler. - - debug - A problem with generating debugging information. - - fortran - A problem with the Fortran compiler. - - java - A problem with the Java compiler. - - libf2c - A problem in the Fortran runtime library. - - libgcj - A problem in the Java runtime library. - - libobjc - A problem in the Objective C runtime library. - - libstdc++ - A problem in the Standard C++ runtime library. - - middle-end - A problem in the internal compiler passes. - - objc - A problem with the Objective C compiler. - - optimization - A problem only occurring under optimization. - - preprocessor - A problem with the C preprocessor. - - target - The problem depends on the specific target architecture. - - web - There is an error or omission on the Web pages. - - other - The problem is in none of these categories. - - Class - A classification of the problem; one of - - doc-bug - The documentation is incorrect. - - accepts-illegal - GCC fails to reject erroneous code. - - rejects-legal - GCC gives an error message for correct code. - - wrong-code - The machine code generated by GCC is incorrect. - - ice-on-legal-code - GCC gives an Internal Compiler Error (ICE) for correct - code. - - ice-on-illegal-code - GCC gives an ICE instead of reporting an error. - - pessimizes-code - GCC misses an important optimization opportunity. - - sw-bug - Software bug of some other class than above. - - change-request - A feature in GCC is missing. - - support - I need help with GCC. - - Release - GCC version, as obtained from 'gcc -v' (one line). - - Environment - Information about your operating system version, hardware - architecture, and environment settings that affect GCC. - - Description - Precise description of the problem. You should put the error - messages printed by GCC here; source code should go into the - next section. - - How-To-Repeat - Please put the complete source code to reproduce the problem - here. The gccbug script currently does not support file - attachments. Instead, if you have multiple files, include them - uuencoded (compressing them before if they are large). If you - use gnatsweb, you can use the file attachments button instead. - - Fix - How to correct or work around the problem, if known (multiple - lines). - -References - - 1. http://gcc.gnu.org/bugs.html - 2. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?database=gcc&user=guest&password=guest&cmd=login diff --git a/contrib/gcc/MAINTAINERS b/contrib/gcc/MAINTAINERS deleted file mode 100644 index 805c439..0000000 --- a/contrib/gcc/MAINTAINERS +++ /dev/null @@ -1,254 +0,0 @@ -Note -==== - -This file contains information about people who are permitted to make -changes to various parts of the compiler and associated libraries. - -Please do not contact the people in this file directly to report -problems in GCC. - -For general information about GCC, please visit: - - http://gcc.gnu.org - -To report problems in GCC, please visit: - - http://gcc.gnu.org/bugs.html - -Maintainers -=========== - - Blanket Write Privs. - -John Carr jfc@mit.edu -Richard Earnshaw rearnsha@arm.com -Richard Henderson rth@redhat.com -Geoffrey Keating geoffk@geoffk.org -Richard Kenner kenner@nyu.edu -Jeff Law law@redhat.com -Jason Merrill jason@redhat.com -Michael Meissner meissner@redhat.com -David S. Miller davem@redhat.com -Mark Mitchell mark@codesourcery.com -Bernd Schmidt bernds@redhat.com -Jim Wilson wilson@redhat.com - - - CPU Port Maintainers (CPU alphabetical order) - -alpha port Richard Henderson rth@redhat.com -arc port Richard Kenner kenner@nyu.edu -arm port Nick Clifton nickc@redhat.com -arm port Richard Earnshaw rearnsha@arm.com -avr port Denis Chertykov denisc@overta.ru -avr port Marek Michalkiewicz marekm@linux.org.pl -c4x port Michael Hayes m.hayes@elec.canterbury.ac.nz -cris port Hans-Peter Nilsson hp@axis.com -fr30 port Nick Clifton nickc@redhat.com -h8 port Jeff Law law@redhat.com -h8 port Kazu Hirata kazu@cs.umass.edu -hppa port Jeff Law law@redhat.com -hppa port Dave Anglin dave.anglin@nrc.ca -i386 port Richard Henderson rth@redhat.com -i860 port Jason Eckhardt jle@redhat.com -i960 port Jim Wilson wilson@redhat.com -ia64 port Jim Wilson wilson@redhat.com -m32r port Nick Clifton nickc@redhat.com -m32r port Michael Meissner meissner@redhat.com -m68hc11 port Stephane Carrez stcarrez@nerim.fr -m68k port (?) Jeff Law law@redhat.com -m68k-motorola-sysv port Philippe De Muyter phdm@macqel.be -mcore port Nick Clifton nickc@redhat.com -mips port Eric Christopher echristo@redhat.com -mmix port Hans-Peter Nilsson hp@bitrange.com -mn10200 port Jeff Law law@redhat.com -mn10300 port Jeff Law law@redhat.com -mn10300 port Alexandre Oliva aoliva@redhat.com -rs6000 port Geoff Keating geoffk@geoffk.org -rs6000 port David Edelsohn dje@watson.ibm.com -s390 port Hartmut Penner hpenner@de.ibm.com -s390 port Ulrich Weigand uweigand@de.ibm.com -sh port Joern Rennecke joern.rennecke@superh.com -sh port Alexandre Oliva aoliva@redhat.com -sparc port Richard Henderson rth@redhat.com -sparc port David S. Miller davem@redhat.com -sparc port Jakub Jelinek jakub@redhat.com -v850 port Nick Clifton nickc@redhat.com -v850 port Michael Meissner meissner@redhat.com -vax port Dave Anglin dave.anglin@nrc.ca -x86-64 port Jan Hubicka jh@suse.cz -xstormy16 port Geoffrey Keating geoffk@geoffk.org -xtensa port Bob Wilson bob.wilson@acm.org - - OS Port Maintainers (OS alphabetical order) - -darwin port Stan Shebs shebs@apple.com -netbsd Jason Thorpe thorpej@wasabisystems.com -sco5, unixware, sco udk Robert Lipe robertlipe@usa.net - - Various Maintainers - -C front end/ISO C99 Joseph Myers jsm28@cam.ac.uk -C front end/ISO C99 Richard Henderson rth@redhat.com -Ada front end Geert Bosch bosch@gnat.com -Ada front end Robert Dewar dewar@gnat.com -fortran Richard Henderson rth@redhat.com -fortran Toon Moene toon@moene.indiv.nluug.nl -c++ Jason Merrill jason@redhat.com -c++ Mark Mitchell mark@codesourcery.com -cpplib Dave Brolley brolley@redhat.com -cpplib Per Bothner per@bothner.com -cpplib Zack Weinberg zack@codesourcery.com -cpplib Neil Booth neil@daikokuya.co.uk -java Per Bothner per@bothner.com -java Alexandre Petit-Bianco apbianco@redhat.com -mercury Fergus Henderson fjh@cs.mu.oz.au -objective-c Stan Shebs shebs@apple.com -objective-c Ovidiu Predescu ovidiu@cup.hp.com -alias analysis John Carr jfc@mit.edu -loop unrolling Jim Wilson wilson@redhat.com -loop discovery Michael Hayes m.hayes@elec.canterbury.ac.nz -scheduler (+ haifa) Jim Wilson wilson@redhat.com -scheduler (+ haifa) Michael Meissner meissner@redhat.com -scheduler (+ haifa) Jeff Law law@redhat.com -reorg Jeff Law law@redhat.com -caller-save.c Jeff Law law@redhat.com -debugging code Jim Wilson wilson@redhat.com -dwarf debugging code Jason Merrill jason@redhat.com -c++ runtime libs Paolo Carlini pcarlini@unitus.it -c++ runtime libs Gabriel Dos Reis gdr@integrable-solutions.net -c++ runtime libs Ulrich Drepper drepper@redhat.com -c++ runtime libs Phil Edwards pme@gcc.gnu.org -c++ runtime libs Benjamin Kosnik bkoz@redhat.com -*synthetic multiply Torbjorn Granlund tege@swox.com -*c-torture Torbjorn Granlund tege@swox.com -fixincludes Bruce Korb bkorb@gnu.org -gcse.c Jeff Law law@redhat.com -global opt framework Jeff Law law@redhat.com -jump.c David S. Miller davem@redhat.com -web pages Gerald Pfeifer pfeifer@dbai.tuwien.ac.at -config.sub/config.guess Ben Elliston config-patches@gnu.org -basic block reordering Jason Eckhardt jle@redhat.com -i18n Philipp Thomas pthomas@suse.de -diagnostic messages Gabriel Dos Reis gdr@integrable-solutions.net -windows, cygwin, mingw Christopher Faylor cgf@redhat.com -windows, cygwin, mingw DJ Delorie dj@redhat.com -DJGPP DJ Delorie dj@delorie.com -libiberty DJ Delorie dj@redhat.com -build machinery (*.in) DJ Delorie dj@redhat.com -build machinery (*.in) Alexandre Oliva aoliva@redhat.com -docs co-maintainer Gerald Pfeifer pfeifer@dbai.tuwien.ac.at -docs co-maintainer Joseph Myers jsm28@cam.ac.uk -Pico-Java port Steve Chamberlain sac@transmeta.com -RTEMS Ports Joel Sherrill -predict.def Jan Hubicka jh@suse.cz -contrib/regression Geoff Keating geoffk@geoffk.org - -Note individuals who maintain parts of the compiler need approval to check -in changes outside of the parts of the compiler they maintain. - - - Write After Approval (last name alphabetical order) - -Matt Austern austern@apple.com -Scott Bambrough scottb@netwinder.org -Daniel Berlin dan@dberlin.org -David Billinghurst David.Billinghurst@riotinto.com -Laurynas Biveinis lauras@softhome.net -Jim Blandy jimb@redhat.com -Phil Blundell pb@futuretv.com -Hans Boehm hboehm@gcc.gnu.org -Eric Botcazou ebotcazou@libertysurf.fr -Andrew Cagney cagney@redhat.com -Chandra Chavva cchavva@redhat.com -William Cohen wcohen@redhat.com -Chris Demetriou cgd@broadcom.com -*Paul Eggert eggert@twinsun.com -Ben Elliston bje@redhat.com -Marc Espie espie@cvs.openbsd.org -Doug Evans devans@transmeta.com -Kaveh Ghazi ghazi@caip.rutgers.edu -Matthew Gingell gingell@gnat.com -Anthony Green green@redhat.com -Stu Grossman grossman@redhat.com -Laurent Guerby guerby@acm.org -Andrew Haley aph@redhat.com -Stuart Hastings stuart@apple.com -Aldy Hernandez aldyh@redhat.com -Matthew Hiller hiller@redhat.com -Manfred Hollstein mhollstein@redhat.com -Andreas Jaeger aj@suse.de -Jakub Jelinek jakub@redhat.com -Dale Johannesen dalej@apple.com -Janis Johnson janis187@us.ibm.com -Klaus Kaempf kkaempf@progis.de -Brendan Kehoe brendan@zen.org -Mumit Khan khan@xraylith.wisc.edu -Matthias Klose doko@debian.org -Jeff Knaggs jknaggs@redhat.com -Matt Kraai kraai@alumni.carnegiemellon.edu -Ziemowit Laski zlaski@apple.com -Marc Lehmann pcg@goof.com -Alan Lehotsky apl@alum.mit.edu -Warren Levy warrenl@redhat.com -Kriang Lerdsuwanakij lerdsuwa@users.sourceforge.net -Don Lindsay dlindsay@redhat.com -Dave Love d.love@dl.ac.uk -Martin v. Löwis loewis@informatik.hu-berlin.de -*HJ Lu hjl@lucon.org -Andrew Macleod amacleod@redhat.com -Vladimir Makarov vmakarov@redhat.com -Michael Matz matz@suse.de -Greg McGary gkm@gnu.org -Bryce McKinlay bryce@gcc.gnu.org -Adam Megacz adam@xwt.org -Alan Modra amodra@bigpond.net.au -Toon Moene toon@moene.indiv.nluug.nl -Catherine Moore clm@redhat.com -Adam Nemet anemet@lnxw.com -Diego Novillo dnovillo@redhat.com -David O'Brien obrien@FreeBSD.org -Turly O'Connor turly@apple.com -Jeffrey D. Oldham oldham@codesourcery.com -Rainer Orth ro@TechFak.Uni-Bielefeld.DE -Devang Patel dpatel@apple.com -Nicola Pero n.pero@mi.flashnet.it -Alexandre Petit-Bianco apbianco@redhat.com -Clinton Popetz cpopetz@cpopetz.com -Ken Raeburn raeburn@redhat.com -Rolf Rasmussen rolfwr@gcc.gnu.org -Loren J. Rittle ljrittle@acm.org -Tom Rix trix@redhat.com -Craig Rodrigues rodrigc@gcc.gnu.org -Gavin Romig-Koch gavin@redhat.com -Ira Ruben ira@apple.com -Alex Samuel samuel@codesourcery.com -Richard Sandiford rsandifo@redhat.com -Roger Sayle roger@eyesopen.com -Bernd Schmidt bernds@redhat.com -Andreas Schwab schwab@suse.de -Stan Shebs shebs@apple.com -Nathan Sidwell nathan@acm.org -Franz Sirl franz.sirl-kernel@lauterbach.com -Danny Smith dannysmith@users.sourceforge.net -Michael Sokolov msokolov@ivan.Harhan.ORG -Richard Stallman rms@gnu.org -Graham Stott grahams@redhat.com -Mike Stump mrs@apple.com -Ian Taylor ian@zembu.com -Michael Tiemann tiemann@redhat.com -Philipp Thomas pthomas@suse.de -Kresten Krab Thorup krab@gcc.gnu.org -Tom Tromey tromey@redhat.com -John Wehle john@feith.com -Florian Weimer fw@deneb.enyo.de -Mark Wielaard mark@gcc.gnu.org - -GNATS only accounts - -James Dennett jdennett jdennett@acm.org - -Peter Bienstman(?) -Benjamin Chelf(?) -Mark Galassi(?) -Jeff Strum(?) diff --git a/contrib/gcc/bugs.html b/contrib/gcc/bugs.html deleted file mode 100644 index a8dab54..0000000 --- a/contrib/gcc/bugs.html +++ /dev/null @@ -1,698 +0,0 @@ - - - -GCC Bugs - - - -

GCC Bugs

- -

The latest version of this document is always available at -http://www.gnu.org/software/gcc/bugs.html.

- -
- -

Table of Contents

- - -
- -

Reporting Bugs

- -

Our preferred way of receiving bugs is via the -GCC GNATS bug reporting system.

- -

Before you report a bug, please check the -list of well-known bugs and, if possible -in any way, try a current development snapshot. -If you want to report a bug with versions of GCC before 3.1 we strongly -recommend upgrading to the current release first.

- -

Before reporting that GCC compiles your code incorrectly, please -compile it with gcc -Wall and see whether this shows -anything wrong with your code that could be the cause instead of a bug -in GCC.

- -

Summarized bug reporting instructions

- -

After this summary, you'll find detailed bug reporting -instructions, that explain how to obtain some of the information -requested in this summary.

- -

What we need

- -Please include in your bug report all of the following items, the first -three of which can be obtained from the output of gcc -v: - -
    -
  • the exact version of GCC;
  • -
  • the system type;
  • -
  • the options given when GCC was configured/built;
  • -
  • the complete command line that triggers the bug;
  • -
  • the compiler output (error messages, warnings, etc.); and
  • -
  • the preprocessed file (*.i*) that triggers the - bug, generated by adding -save-temps to the complete - compilation command, or, in the case of a bug report for the GNAT front end, - a complete set of source files (see below).
  • -
- -

What we do not want

- -
    -
  • A source file that #includes header files that are left - out of the bug report (see above)
  • - -
  • That source file and a collection of header files.
  • - -
  • An attached archive (tar, zip, shar, whatever) containing all - (or some :-) of the above.
  • - -
  • A code snippet that won't cause the compiler to produce the - exact output mentioned in the bug report (e.g., a snippet with just - a few lines around the one that apparently triggers the bug, - with some pieces replaced with ellipses or comments for extra - obfuscation :-)
  • - -
  • The location (URL) of the package that failed to build (we won't - download it, anyway, since you've already given us what we need to - duplicate the bug, haven't you? :-)
  • - -
  • An error that occurs only some of the times a certain file is - compiled, such that retrying a sufficient number of times results in - a successful compilation; this is a symptom of a hardware problem, - not of a compiler bug (sorry)
  • - -
  • E-mail messages that complement previous, incomplete bug - reports. Post a new, self-contained, full bug report instead, if - possible as a follow-up to the original bug report
  • - -
  • Assembly files (*.s) produced by the compiler, or any - binary files, such as object files, executables or core files
  • - -
  • Duplicate bug reports, or reports of bugs already fixed in the - development tree, especially those that have already been reported - as fixed last week :-)
  • - -
  • Bugs in the assembler, the linker or the C library. These are - separate projects, with separate mailing lists and different bug - reporting procedures
  • - -
  • Bugs in releases or snapshots of GCC not issued by the GNU - Project. Report them to whoever provided you with the release
  • - -
  • Questions about the correctness or the expected behavior of - certain constructs that are not GCC extensions. Ask them in forums - dedicated to the discussion of the programming language
  • -
- -

Where to post it

- -

Please submit your bug report directly to the -GCC GNATS bug database. -Only if this is not possible, mail all information to -bug-gcc@gnu.org or -gcc-bugs@gcc.gnu.org.

- -

The GCC lists have message size limits (200 kbytes) and bug reports -over those limits will currently be bounced. If your bug is larger -than that, please post it using the GCC GNATS bug -database.

- -

Detailed bug reporting instructions

- -

Please refer to the next section when reporting -bugs in GNAT, the Ada compiler.

- -

In general, all the information we need can be obtained by -collecting the command line below, as well as its output and the -preprocessed file it generates.

- -
gcc -v -save-temps all-your-options -source-file
- -

Typically the preprocessed file (extension .i for C or -.ii for C++) will be large, so please compress the -resulting file with one of the popular compression programs such as -bzip2, gzip, zip or compress (in -decreasing order of preference). Use maximum compression -(-9) if available. Please include the compressed -preprocessor output in your bug report, even if the source code is -freely available elsewhere; it makes the job of our volunteer testers -much easier.

- -

The only excuses to not send us the preprocessed sources are -(i) if you've found a bug in the preprocessor, or (ii) if you've -reduced the testcase to a small file that doesn't include any -other file. If you can't post the preprocessed sources because -they're proprietary code, then try to create a small file that -triggers the same problem.

- -

Since we're supposed to be able to re-create the assembly output -(extension .s), you usually should not include -it in the bug report, although you may want to post parts of it to -point out assembly code you consider to be wrong.

- -

Whether to use MIME attachments or uuencode is up to -you. In any case, make sure the compiler command line, version and -error output are in plain text, so that we don't have to decode the -bug report in order to tell who should take care of it. A meaningful -subject indicating language and platform also helps.

- -

Please avoid posting an archive (.tar, .shar or .zip); we generally -need just a single file to reproduce the bug (the .i/.ii preprocessed -file), and, by storing it in an archive, you're just making our -volunteers' jobs harder. Only when your bug report requires multiple -source files to be reproduced should you use an archive. In any case, -make sure the compiler version, error message, etc, are included in -the body of your bug report as plain text, even if needlessly -duplicated as part of an archive.

- -

If you fail to supply enough information for a bug report to be -reproduced, someone will probably ask you to post additional -information (or just ignore your bug report, if they're in a bad day, -so try to get it right on the first posting :-). In this case, please -post the additional information to the bug reporting mailing list, not -just to the person who requested it, unless explicitly told so. If -possible, please include in this follow-up all the information you had -supplied in the incomplete bug report (including the preprocessor -output), so that the new bug report is self-contained.

- -

Detailed bug reporting instructions for GNAT

- -

See the previous section for bug reporting -instructions for GCC language implementations other than Ada.

- -

Bug reports have to contain at least the following information in -order to be useful:

- -
    -
  • the exact version of GCC, as shown by "gcc -v";
  • -
  • the system type;
  • -
  • the options when GCC was configured/built;
  • -
  • the exact command line passed to the gcc program -triggering the bug -(not just the flags passed to gnatmake, but -gnatmake prints the parameters it passed to gcc)
  • -
  • a collection of source files for reproducing the bug, -preferably a minimal set (see below);
  • -
  • a description of the expected behavior;
  • -
  • a description of actual behavior.
  • -
- -

If your code depends on additional source files (usually package -specifications), submit the source code for these compilation units in -a single file that is acceptable input to gnatchop, -i.e. contains no non-Ada text. If the compilation terminated -normally, you can usually obtain a list of dependencies using the -"gnatls -d main_unit" command, where -main_unit is the file name of the main compilation -unit (which is also passed to gcc).

- -

If you report a bug which causes the compiler to print a bug box, -include that bug box in your report, and do not forget to send all the -source files listed after the bug box along with your report.

- -

If you use gnatprep, be sure to send in preprocessed -sources (unless you have to report a bug in gnatprep).

- -

When you have checked that your report meets these criteria, please -submit it accoding to our generic instructions. -(If you use a mailing list for reporting, please include an -"[Ada]" tag in the subject.)

- -

Managing Bugs (GNATS and the test-suite)

- -

This section contains information mostly intended for GCC -contributors.

- -

If you find a bug, but you are not fixing it (yet):

-
    -
  1. Create a (minimal) test-case.
  2. -
  3. Add the test-case to our test-suite, marking it as XFAIL unless -the bug is a regression.
  4. -
  5. Add a bug report referencing the test-case to GNATS.
  6. -
- -

If you fix a bug for which there is already a GNATS entry:

-
    -
  1. Remove the XFAIL on the test-case.
  2. -
  3. Close the bug report in GNATS.
  4. -
- -

If you find a bug, and you are fixing it right then:

-
    -
  1. Create a (minimal) test-case.
  2. -
  3. Add the test-case to our test-suite, marking it as PASS.
  4. -
  5. Check in your fixes.
  6. -
- -
- -

Frequently Reported Bugs in GCC

- -

Fortran

- -

Fortran bugs are documented in the G77 manual rather than -explicitly listed here. Please see -Known Causes of -Trouble with GNU Fortran in the G77 manual.

- -
- -

C

- -

The following are not bugs in the C compiler, but are reported -often enough to warrant a mention here.

- -
-
Cannot initialize a static variable with stdin.
-

This has nothing to do with GCC, but people ask us about it a -lot. Code like this:

- -
-#include <stdio.h>
-
-FILE *yyin = stdin;
-
- -

will not compile with GNU libc (GNU/Linux libc6), because -stdin is not a constant. This was done deliberately, to make -it easier to maintain binary compatibility when the type FILE -needs to be changed. It is surprising for people used to traditional Unix -C libraries, but it is permitted by the C standard.

- -

This construct commonly occurs in code generated by old versions of -lex or yacc. We suggest you try regenerating the parser with a -current version of flex or bison, respectively. In your own code, the -appropriate fix is to move the initialization to the beginning of -main.

- -

There is a common misconception that the GCC developers are -responsible for GNU libc. These are in fact two entirely separate -projects; please check the -GNU libc web pages -for details. -

- -
Cannot use preprocessor directive in macro arguments.
-

Let me guess... you wrote code that looks something like this:

-
-  memcpy(dest, src,
-#ifdef PLATFORM1
-	 12
-#else
-	 24
-#endif
-	);
-
-

and you got a whole pile of error messages:

-
- -test.c:11: warning: preprocessing directive not recognized within -macro arg
-test.c:11: warning: preprocessing directive not recognized within -macro arg
-test.c:11: warning: preprocessing directive not recognized within -macro arg
-test.c: In function `foo':
-test.c:6: undefined or invalid # directive
-test.c:8: undefined or invalid # directive
-test.c:9: parse error before `24'
-test.c:10: undefined or invalid # directive
-test.c:11: parse error before `#'
-
- -

Update: As of GCC 3.2 this kind of construct is -always accepted and CPP will probably do what you expect, but see the -manual for detailed semantics.

- -

However, versions of GCC prior to 3.2 did not allow you to put -#ifdef (or any other directive) inside the arguments of a -macro. Your C library's <string.h> happens to -define memcpy as a macro - this is perfectly legitimate. -The code therefore would not compile.

- -

This kind of code is not portable. It is "undefined behavior" -according to the C standard; that means different compilers will do -different things with it. It is always possible to rewrite code which -uses conditionals inside macros so that it doesn't. You could write -the above example

-
-#ifdef PLATFORM1
-   memcpy(dest, src, 12);
-#else
-   memcpy(dest, src, 24);
-#endif
-
-

This is a bit more typing, but I personally think it's better style -in addition to being more portable.

- -

In recent versions of glibc, printf is among the -functions which are implemented as macros.

-
- -
- -

C++

- -

This is the list of bugs (and non-bugs) in g++ (aka GNU C++) that -are reported very often, but not yet fixed. While it is certainly -better to fix bugs instead of documenting them, this document might -save people the effort of writing a bug report when the bug is already -well-known. How to report bugs tells you how to -report a bug.

- -

There are many reasons why reported bugs don't get fixed. It might -be difficult to fix, or fixing it might break compatibility. Often, -reports get a low priority when there is a simple work-around. In -particular, bugs caused by invalid C++ code have a simple work-around, -fix the code. Now that there is an agreed ISO/ANSI standard -for C++, the compiler has a definitive document to adhere to. Earlier -versions might have accepted source code that is no longer -C++. This means that code which might have `worked' in a previous -version, is now rejected. You should update your code to be C++.

- -

You should try to use the latest stable release of the GNU C++ -compiler.

- -

Common problems updating from G++ 2.95 to G++ -3.0

- -

G++ 3.0 conforms much closer to the ISO C++ standard (available at -http://www.ncits.org/cplusplus.htm).

- -

We have also implemented some of the core and library defect reports -(available at -http://anubis.dkuug.dk/jtc1/sc22/wg21/docs/cwg_defects.html -& - -http://anubis.dkuug.dk/jtc1/sc22/wg21/docs/lwg-defects.html -respectively).

- -
    - -
  • The ABI has changed. This means that both class layout and name -mangling is different. You must recompile all c++ libraries (if -you don't you will get link errors).
  • - -
  • The standard library is much more conformant, and uses the -std:: namespace.
  • - -
  • std:: is now a real namespace, not an alias for -::.
  • - -
  • The standard header files for the c library don't end with -.h, but begin with c (i.e. -<cstdlib> rather than <stdlib.h>). -The .h names are still available, but are deprecated.
  • - -
  • <strstream> is deprecated, use -<sstream> instead.
  • - -
  • streambuf::seekoff & -streambuf::seekpos are private, instead use -streambuf::pubseekoff & -streambuf::pubseekpos respectively.
  • - -
  • If std::operator << (std::ostream &, long long) -doesn't exist, you need to recompile libstdc++ with ---enable-long-long.
  • - -
- -This means you may get lots of errors about things like -strcmp not being found. You've most likely forgotton to -tell the compiler to look in the std:: namespace. There are -several ways to do this, - -
    - -
  • Say, std::strcmp at the call. This is the most explicit -way of saying what you mean.
  • - -
  • Say, using std::strcmp; somewhere before the call. You -will need to do this for each function or type you wish to use from the -standard library.
  • - -
  • Say, using namespace std; somewhere before the call. -This is the quick-but-dirty fix. This brings the whole of the -std:: namespace into scope. Never do this in a -header file, as you will be forcing users of your header file to do the -same.
  • - -
- -

ABI bugs

- -

3.0 had a new ABI, which affected class layout, function mangling and -calling conventions. We had intended it to be complete, unfortunately -some issues came to light, too late to fix in the 3.0 series. -The ABI should not change in dot releases, so we addressed most issues -in GCC 3.1. -

- -
- -
Covariant return types
- -
We do not implement non-trivial covariant returns. We also generate -incorrect virtual function tables for trivial covariance. Although -trivial covariance will work, it is incompatible with the ABI. GNATS PR -3706 tracks this problem.
- -
- -

Non-bugs

- -

Here are some features that have been reported as bugs, but are -not.

- -
- -
Nested classes can access private types of the containing -class.
-

G++ now implements type access control on member types. Defect -report 45 clarifies that nested classes are members of the class they -are nested in, and so are granted access to private members of that -class.

- -
Classes in exception specifiers must be complete types.
-

[15.4]/1 tells you that you cannot have an incomplete type, or -pointer to incomplete (other than cv void *) in -an exception specification.

- -
G++ emits two copies of constructors and destructors.
- -

In general there are three types of constructors (and -destructors).

-
    -
  1. The complete object constructor/destructor.
  2. -
  3. The base object constructor/destructor.
  4. -
  5. The allocating destructor/deallocating destructor.
  6. -
-

The first two are different, when virtual base classes are involved. -In some cases we can do better, and this is logged in GNATS.

- -
Exceptions don't work in multithreaded applications.
- -

You need to rebuild g++ and libstdc++ with ---enable-threads. Remember, c++ exceptions are not like -hardware interrupts. You cannot throw an exception in one thread and -catch it in another. You cannot throw an exception from a signal -handler, and catch it in the main thread.

- -
Global destructors are not run in the correct order.
- -

Global destructors should be run in the reverse order of their -constructors completing. In most cases this is the same as -the reverse order of constructors starting, but sometimes it -is different, and that is important. You need to compile and link your -programs with --use-cxa-atexit. We have not turned this -switch on by default, as it requires a cxa aware runtime -library (libc, glibc, or -equivalent).

- -
Problems with floating point computations.
-

In a number of cases, GCC appears to perform floating point -computations incorrectly. For example, the program

-
-#include <iostream>
-
-int main() {
-
- double min = 0.0;
- double max = 0.5;
- double width = 0.01;
- std::cout << (int)(((max - min) / width) - 1) << - std::endl;
-
-}
-
-

might print 50 on some systems and optimization levels, and 51 on -others.

- -

The is the result of rounding: The computer cannot -represent all real numbers exactly, so it has to use -approximations. When computing with approximation, the computer needs -to round to the nearest representable number.

- -

This is not a bug in the compiler, but an inherent limitation of -the float and double types. Please study -this paper -for more information.

- -
Templates, scoping, and digraphs.
- -

If you have a class in global namespace, say named -X, and want to give it as a template argument to some -other class, say std::vector, then this here fails with a -parser error: std::vector<::X>. -

- -

-The reason is that the standard mandates that the sequence -<: is treated as if it were the token -[, and the parser then reports a parse error before the -character : (by which it means the second -colon). There are several such combinations of characters, and -they are called digraphs. -

- -

-The simplest way to avoid this is to write std::vector< -::X>, i.e. place a space between the opening angle bracket -and the scope operator. -

- - -
- -

Missing features

-

We know some things are missing from G++.

- -
- -
The export keyword is not implemented.
-

Most C++ compilers (G++ included) do not yet implement -export, which is necessary for separate compilation of -template declarations and definitions. Without export, a -template definition must be in scope to be used. The obvious -workaround is simply to place all definitions in the header -itself. Alternatively, the compilation unit containing template -definitions may be included from the header.

- -
Two stage lookup in templates is not implemented.
-

[14.6] specifies how names are looked up inside a template. G++ -does not do this correctly, but for most templates this will not be -noticeable.

- -
- -

Parse errors for "simple" code

- -Up to and including GCC 3.0, the compiler will give "parse error" for -seemingly simple code, such as - -
-struct A{
-  A();
-  A(int);
-  void func();
-};
-
-struct B{
-  B(A);
-  B(A,A);
-  void func();
-};
-
-void foo(){
-  B b(A(),A(1));     //Variable b, initialized with two temporaries
-  B(A(2)).func();    //B temporary, initialized with A temporary
-}
-
-The problem is that GCC starts to parse the declaration of -b as a function b returning B, -taking a function returning A as an argument. When it -sees the 1, it is too late. The work-around in these cases is to add -additional parentheses around the expressions that are mistaken as -declarations: -
-  (B(A(2))).func();
-
-Sometimes, even that is not enough; to show the compiler that this -should be really an expression, a comma operator with a dummy argument -can be used: -
-  B b((0,A()),A(1));
-
-

-Another example is the parse error for the return -statement in

-
-struct A{};
-
-struct B{
-  A a;
-  A f1(bool);
-};
-
-A B::f1(bool b)
-{
-  if (b)
-    return (A()); 
-  return a;
-}
-
-

The problem is that the compiler interprets A() as a -function (taking no arguments, returning A), and -(A()) as a cast - with a missing expression, hence the -parse error. The work-around is to omit the parentheses:

-
-  if (b)
-    return A(); 
-
-

This problem occurs in a number of variants; in throw -statements, people also frequently put the object in parentheses. The -exact error also somewhat varies with the compiler version. The -work-arounds proposed do not change the semantics of the program at -all; they make them perhaps less readable.

- -

Optimization at -O3 takes a -very long time

-

At -O3, all functions are candidates for inlining. The -heuristic used has some deficiencies which show up when allowed such -freedom. This is g++ specific, as it has an earlier inliner than -gcc.

- - - diff --git a/contrib/gcc/config-ml.in b/contrib/gcc/config-ml.in deleted file mode 100644 index 16885f9..0000000 --- a/contrib/gcc/config-ml.in +++ /dev/null @@ -1,871 +0,0 @@ -# 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 -# -# -# 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 -# -# ./ -# newlib -# m68020/ -# newlib -# m68881/ -# 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 newlib/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 - if [ x"$enable_nofmult" = xno ] - then - old_multidirs="${multidirs}" - multidirs="" - for x in ${old_multidirs}; do - case "$x" in - *nofmult* ) : ;; - *) 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 - case " $multidirs " in - *" mabi=64 "*) - # We will not be able to create libraries with -mabi=64 if - # we cannot even link a trivial program. It usually - # indicates the 64bit libraries are missing. - if echo 'main() {}' > conftest.c && - ${CC-gcc} -mabi=64 conftest.c -o conftest; then - : - else - echo Could not link program with -mabi=64, disabling it. - old_multidirs="${multidirs}" - multidirs="" - for x in ${old_multidirs}; do - case "$x" in - *mabi=64* ) : ;; - *) multidirs="${multidirs} ${x}" ;; - esac - done - fi - rm -f conftest.c conftest - ;; - esac - ;; -powerpc*-*-* | rs6000*-*-*) - if [ x$enable_aix64 = xno ] - then - old_multidirs="${multidirs}" - multidirs="" - for x in ${old_multidirs}; do - case "$x" in - *ppc64* ) : ;; - *) multidirs="${multidirs} ${x}" ;; - esac - done - fi - if [ x$enable_pthread = xno ] - then - old_multidirs="${multidirs}" - multidirs="" - for x in ${old_multidirs}; do - case "$x" in - *pthread* ) : ;; - *) 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 - 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 - ;; -sparc*-*-*) - case " $multidirs " in - *" m64 "*) - # We will not be able to create libraries with -m64 if - # we cannot even link a trivial program. It usually - # indicates the 64bit libraries are missing. - if echo 'main() {}' > conftest.c && - ${CC-gcc} -m64 conftest.c -o conftest; then - : - else - echo Could not link program with -m64, disabling it. - old_multidirs="${multidirs}" - multidirs="" - for x in ${old_multidirs}; do - case "$x" in - *m64* ) : ;; - *) multidirs="${multidirs} ${x}" ;; - esac - done - fi - rm -f conftest.c conftest - ;; - esac - ;; -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}" \ - prefix="$(prefix)" \ - exec_prefix="$(exec_prefix)" \ - GCJFLAGS="$(GCJFLAGS) $${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 -p ${ml_dir}'' See also mkinstalldirs. - pathcomp="" - for d in `echo ":${ml_dir}" | sed -ne 's/^:\//#/;s/^://;s/\// /g;s/^#/\//;p'`; do - pathcomp="$pathcomp$d" - case "$pathcomp" in - -* ) pathcomp=./$pathcomp ;; - esac - if test ! -d "$pathcomp"; then - echo "mkdir $pathcomp" 1>&2 - mkdir "$pathcomp" > /dev/null 2>&1 || lasterr=$? - fi - if test ! -d "$pathcomp"; then - exit $lasterr - fi - pathcomp="$pathcomp/" - done - 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 - /* | [A-Za-z]:[\\/]* ) # absolute path - ml_newsrcdir=${srcdir} - ;; - *) # otherwise relative - ml_newsrcdir=${dotdot}${srcdir} - ;; - esac - ml_srcdiroption="-srcdir=${ml_newsrcdir}" - multisrctop= - ;; - esac - - case "${progname}" in - /* | [A-Za-z]:[\\/]* ) 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 --cache-file=../config.cache" - fi - - # find compiler flag corresponding to ${ml_dir} - for i in `${CC-gcc} --print-multi-lib 2>/dev/null`; do - dir=`echo $i | sed -e 's/;.*$//'` - if [ "${dir}" = "${ml_dir}" ]; then - flags=`echo $i | sed -e 's/^[^;]*;//' -e 's/@/ -/g'` - break - fi - done - ml_config_env='CC="${CC_}$flags" CXX="${CXX_}$flags" GCJ="${GCJ_}$flags"' - - if [ "${with_target_subdir}" = "." ]; then - CC_=$CC' ' - CXX_=$CXX' ' - GCJ_=$GCJ' ' - else - # Create a regular expression that matches any string as long - # as ML_POPDIR. - popdir_rx=`echo ${ML_POPDIR} | sed 's,.,.,g'` - CC_= - for arg in ${CC}; do - case $arg in - -[BIL]"${ML_POPDIR}"/*) - CC_="${CC_}"`echo "X${arg}" | sed -n "s/X\\(-[BIL]${popdir_rx}\\).*/\\1/p"`/${ml_dir}`echo "X${arg}" | sed -n "s/X-[BIL]${popdir_rx}\\(.*\\)/\1/p"`' ' ;; - "${ML_POPDIR}"/*) - CC_="${CC_}"`echo "X${arg}" | sed -n "s/X\\(${popdir_rx}\\).*/\\1/p"`/${ml_dir}`echo "X${arg}" | sed -n "s/X${popdir_rx}\\(.*\\)/\\1/p"`' ' ;; - *) - CC_="${CC_}${arg} " ;; - esac - done - - CXX_= - for arg in ${CXX}; do - case $arg in - -[BIL]"${ML_POPDIR}"/*) - CXX_="${CXX_}"`echo "X${arg}" | sed -n "s/X\\(-[BIL]${popdir_rx}\\).*/\\1/p"`/${ml_dir}`echo "X${arg}" | sed -n "s/X-[BIL]${popdir_rx}\\(.*\\)/\\1/p"`' ' ;; - "${ML_POPDIR}"/*) - CXX_="${CXX_}"`echo "X${arg}" | sed -n "s/X\\(${popdir_rx}\\).*/\\1/p"`/${ml_dir}`echo "X${arg}" | sed -n "s/X${popdir_rx}\\(.*\\)/\\1/p"`' ' ;; - *) - CXX_="${CXX_}${arg} " ;; - esac - done - - GCJ_= - for arg in ${GCJ}; do - case $arg in - -[BIL]"${ML_POPDIR}"/*) - GCJ_="${GCJ_}"`echo "X${arg}" | sed -n "s/X\\(-[BIL]${popdir_rx}\\).*/\\1/p"`/${ml_dir}`echo "X${arg}" | sed -n "s/X-[BIL]${popdir_rx}\\(.*\\)/\\1/p"`' ' ;; - "${ML_POPDIR}"/*) - GCJ_="${GCJ_}"`echo "X${arg}" | sed -n "s/X\\(${popdir_rx}\\).*/\\1/p"`/${ml_dir}`echo "X${arg}" | sed -n "s/X${popdir_rx}\\(.*\\)/\\1/p"`' ' ;; - *) - GCJ_="${GCJ_}${arg} " ;; - esac - done - - if test "x${LD_LIBRARY_PATH+set}" = xset; then - LD_LIBRARY_PATH_= - for arg in `echo "$LD_LIBRARY_PATH" | tr ':' ' '`; do - case "$arg" in - "${ML_POPDIR}"/*) - arg=`echo "X${arg}" | sed -n "s/X\\(${popdir_rx}\\).*/\\1/p"`/${ml_dir}`echo "X${arg}" | sed -n "s/X${popdir_rx}\\(.*\\)/\\1/p"` - ;; - esac - if test "x$LD_LIBRARY_PATH_" != x; then - LD_LIBRARY_PATH_=$LD_LIBRARY_PATH_:$arg - else - LD_LIBRARY_PATH_=$arg - fi - done - ml_config_env="$ml_config_env LD_LIBRARY_PATH=$LD_LIBRARY_PATH_" - fi - - if test "x${SHLIB_PATH+set}" = xset; then - SHLIB_PATH_= - for arg in `echo "$SHLIB_PATH" | tr ':' ' '`; do - case "$arg" in - "${ML_POPDIR}"/*) - arg=`echo "X${arg}" | sed -n "s/X\\(${popdir_rx}\\).*/\\1/p"`/${ml_dir}`echo "X${arg}" | sed -n "s/X${popdir_rx}\\(.*\\)/\\1/p"` - ;; - esac - if test "x$SHLIB_PATH_" != x; then - SHLIB_PATH_=$SHLIB_PATH_:$arg - else - SHLIB_PATH_=$arg - fi - done - ml_config_env="$ml_config_env SHLIB_PATH=$SHLIB_PATH_" - fi - fi - - if eval ${ml_config_env} ${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 diff --git a/contrib/gcc/config.if b/contrib/gcc/config.if deleted file mode 100644 index aa35a3f..0000000 --- a/contrib/gcc/config.if +++ /dev/null @@ -1,79 +0,0 @@ -#! /dev/null -# Don't call it directly. This shell script fragment is called to -# determine: -# -# 1. libstcxx_incdir: the interface name for libstdc++. -# 2. 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 - -# Set libstdcxx_incdir. -# This is the same as gcc/configure.in and libstdc++-v3/acinclude.m4. -gcc_version_trigger=${if_topsrcdir}/gcc/version.c -gcc_version_full=`grep version_string ${gcc_version_trigger} | sed -e 's/.*"\([^"]*\)".*/\1/'` -gcc_version=`echo ${gcc_version_full} | sed -e 's/\([^ ]*\) .*/\1/'` -libstdcxx_incdir=c++/${gcc_version} - -# 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 < -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 diff --git a/contrib/gcc/config.sub b/contrib/gcc/config.sub deleted file mode 100755 index c840398..0000000 --- a/contrib/gcc/config.sub +++ /dev/null @@ -1,1450 +0,0 @@ -#! /bin/sh -# Configuration validation subroutine script. -# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, -# 2000, 2001, 2002 Free Software Foundation, Inc. - -timestamp='2002-02-01' - -# This file is (in principle) common to ALL GNU software. -# The presence of a machine in this file suggests that SOME GNU software -# can handle that machine. It does not imply ALL GNU software can. -# -# This file 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. - -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. - -# Please send patches to . Submit a context -# diff and a properly formatted ChangeLog entry. -# -# Configuration subroutine to validate and canonicalize a configuration type. -# Supply the specified configuration type as an argument. -# If it is invalid, we print an error message on stderr and exit with code 1. -# Otherwise, we print the canonical config type on stdout and succeed. - -# This file is supposed to be the same for all GNU packages -# and recognize all the CPU types, system types and aliases -# that are meaningful with *any* GNU software. -# Each package is responsible for reporting which valid configurations -# it does not support. The user should be able to distinguish -# a failure to support a valid configuration from a meaningless -# configuration. - -# The goal of this file is to map all the various variations of a given -# machine specification into a single specification in the form: -# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM -# or in some cases, the newer four-part form: -# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM -# It is wrong to echo any other type of specification. - -me=`echo "$0" | sed -e 's,.*/,,'` - -usage="\ -Usage: $0 [OPTION] CPU-MFR-OPSYS - $0 [OPTION] ALIAS - -Canonicalize a configuration name. - -Operation modes: - -h, --help print this help, then exit - -t, --time-stamp print date of last modification, then exit - -v, --version print version number, then exit - -Report bugs and patches to ." - -version="\ -GNU config.sub ($timestamp) - -Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001 -Free Software Foundation, Inc. - -This is free software; see the source for copying conditions. There is NO -warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." - -help=" -Try \`$me --help' for more information." - -# Parse command line -while test $# -gt 0 ; do - case $1 in - --time-stamp | --time* | -t ) - echo "$timestamp" ; exit 0 ;; - --version | -v ) - echo "$version" ; exit 0 ;; - --help | --h* | -h ) - echo "$usage"; exit 0 ;; - -- ) # Stop option processing - shift; break ;; - - ) # Use stdin as input. - break ;; - -* ) - echo "$me: invalid option $1$help" - exit 1 ;; - - *local*) - # First pass through any local machine types. - echo $1 - exit 0;; - - * ) - break ;; - esac -done - -case $# in - 0) echo "$me: missing argument$help" >&2 - exit 1;; - 1) ;; - *) echo "$me: too many arguments$help" >&2 - exit 1;; -esac - -# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). -# Here we must recognize all the valid KERNEL-OS combinations. -maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` -case $maybe_os in - nto-qnx* | linux-gnu* | storm-chaos* | os2-emx* | windows32-*) - os=-$maybe_os - basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` - ;; - *) - basic_machine=`echo $1 | sed 's/-[^-]*$//'` - if [ $basic_machine != $1 ] - then os=`echo $1 | sed 's/.*-/-/'` - else os=; fi - ;; -esac - -### Let's recognize common machines as not being operating systems so -### that things like config.sub decstation-3100 work. We also -### recognize some manufacturers as not being operating systems, so we -### can provide default operating systems below. -case $os in - -sun*os*) - # Prevent following clause from handling this invalid input. - ;; - -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ - -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ - -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ - -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ - -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ - -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ - -apple | -axis) - os= - basic_machine=$1 - ;; - -sim | -cisco | -oki | -wec | -winbond) - os= - basic_machine=$1 - ;; - -scout) - ;; - -wrs) - os=-vxworks - basic_machine=$1 - ;; - -chorusos*) - os=-chorusos - basic_machine=$1 - ;; - -chorusrdb) - os=-chorusrdb - basic_machine=$1 - ;; - -hiux*) - os=-hiuxwe2 - ;; - -sco5) - os=-sco3.2v5 - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -sco4) - os=-sco3.2v4 - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -sco3.2.[4-9]*) - os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -sco3.2v[4-9]*) - # Don't forget version if it is 3.2v4 or newer. - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -sco*) - os=-sco3.2v2 - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -udk*) - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -isc) - os=-isc2.2 - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -clix*) - basic_machine=clipper-intergraph - ;; - -isc*) - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; - -lynx*) - os=-lynxos - ;; - -ptx*) - basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` - ;; - -windowsnt*) - os=`echo $os | sed -e 's/windowsnt/winnt/'` - ;; - -psos*) - os=-psos - ;; - -mint | -mint[0-9]*) - basic_machine=m68k-atari - os=-mint - ;; -esac - -# Decode aliases for certain CPU-COMPANY combinations. -case $basic_machine in - # Recognize the basic CPU types without company name. - # Some are omitted here because they have special meanings below. - 1750a | 580 \ - | a29k \ - | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ - | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ - | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr \ - | c4x | clipper \ - | d10v | d30v | dsp16xx \ - | fr30 \ - | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ - | i370 | i860 | i960 | ia64 \ - | m32r | m68000 | m68k | m88k | mcore \ - | mips16 | mips64 | mips64el | mips64orion | mips64orionel \ - | mips64vr4100 | mips64vr4100el | mips64vr4300 \ - | mips64vr4300el | mips64vr5000 | mips64vr5000el \ - | mipsbe | mipseb | mipsel | mipsle | mipstx39 | mipstx39el \ - | mipsisa32 \ - | mn10200 | mn10300 \ - | ns16k | ns32k \ - | openrisc | or32 \ - | pdp10 | pdp11 | pj | pjl \ - | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \ - | pyramid \ - | sh | sh[34] | sh[34]eb | shbe | shle | sh64 \ - | sparc | sparc64 | sparclet | sparclite | sparcv9 | sparcv9b \ - | strongarm \ - | tahoe | thumb | tic80 | tron \ - | v850 | v850e \ - | we32k \ - | x86 | xscale | xstormy16 | xtensa \ - | z8k) - basic_machine=$basic_machine-unknown - ;; - m6811 | m68hc11 | m6812 | m68hc12) - # Motorola 68HC11/12. - basic_machine=$basic_machine-unknown - os=-none - ;; - m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) - ;; - - # We use `pc' rather than `unknown' - # because (1) that's what they normally are, and - # (2) the word "unknown" tends to confuse beginning users. - i*86 | x86_64) - basic_machine=$basic_machine-pc - ;; - # Object if more than one company name word. - *-*-*) - echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 - exit 1 - ;; - # Recognize the basic CPU types with company name. - 580-* \ - | a29k-* \ - | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ - | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ - | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \ - | arm-* | armbe-* | armle-* | armv*-* \ - | avr-* \ - | bs2000-* \ - | c[123]* | c30-* | [cjt]90-* | c54x-* \ - | clipper-* | cray2-* | cydra-* \ - | d10v-* | d30v-* \ - | elxsi-* \ - | f30[01]-* | f700-* | fr30-* | fx80-* \ - | h8300-* | h8500-* \ - | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ - | i*86-* | i860-* | i960-* | ia64-* \ - | m32r-* \ - | m68000-* | m680[01234]0-* | m68360-* | m683?2-* | m68k-* \ - | m88110-* | m88k-* | mcore-* \ - | mips-* | mips16-* | mips64-* | mips64el-* | mips64orion-* \ - | mips64orionel-* | mips64vr4100-* | mips64vr4100el-* \ - | mips64vr4300-* | mips64vr4300el-* | mipsbe-* | mipseb-* \ - | mipsle-* | mipsel-* | mipstx39-* | mipstx39el-* \ - | none-* | np1-* | ns16k-* | ns32k-* \ - | orion-* \ - | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ - | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \ - | pyramid-* \ - | romp-* | rs6000-* \ - | sh-* | sh[34]-* | sh[34]eb-* | shbe-* | shle-* | sh64-* \ - | sparc-* | sparc64-* | sparc86x-* | sparclite-* \ - | sparcv9-* | sparcv9b-* | strongarm-* | sv1-* \ - | t3e-* | tahoe-* | thumb-* | tic30-* | tic54x-* | tic80-* | tron-* \ - | v850-* | v850e-* | vax-* \ - | we32k-* \ - | x86-* | x86_64-* | xmp-* | xps100-* | xscale-* | xstormy16-* \ - | xtensa-* \ - | ymp-* \ - | z8k-*) - ;; - # Recognize the various machine names and aliases which stand - # for a CPU type and a company and sometimes even an OS. - 386bsd) - basic_machine=i386-unknown - os=-bsd - ;; - 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) - basic_machine=m68000-att - ;; - 3b*) - basic_machine=we32k-att - ;; - a29khif) - basic_machine=a29k-amd - os=-udi - ;; - adobe68k) - basic_machine=m68010-adobe - os=-scout - ;; - alliant | fx80) - basic_machine=fx80-alliant - ;; - altos | altos3068) - basic_machine=m68k-altos - ;; - am29k) - basic_machine=a29k-none - os=-bsd - ;; - amdahl) - basic_machine=580-amdahl - os=-sysv - ;; - amiga | amiga-*) - basic_machine=m68k-unknown - ;; - amigaos | amigados) - basic_machine=m68k-unknown - os=-amigaos - ;; - amigaunix | amix) - basic_machine=m68k-unknown - os=-sysv4 - ;; - apollo68) - basic_machine=m68k-apollo - os=-sysv - ;; - apollo68bsd) - basic_machine=m68k-apollo - os=-bsd - ;; - aux) - basic_machine=m68k-apple - os=-aux - ;; - balance) - basic_machine=ns32k-sequent - os=-dynix - ;; - convex-c1) - basic_machine=c1-convex - os=-bsd - ;; - convex-c2) - basic_machine=c2-convex - os=-bsd - ;; - convex-c32) - basic_machine=c32-convex - os=-bsd - ;; - convex-c34) - basic_machine=c34-convex - os=-bsd - ;; - convex-c38) - basic_machine=c38-convex - os=-bsd - ;; - cray | ymp) - basic_machine=ymp-cray - os=-unicos - ;; - cray2) - basic_machine=cray2-cray - os=-unicos - ;; - [cjt]90) - basic_machine=${basic_machine}-cray - os=-unicos - ;; - crds | unos) - basic_machine=m68k-crds - ;; - cris | cris-* | etrax*) - basic_machine=cris-axis - ;; - da30 | da30-*) - basic_machine=m68k-da30 - ;; - decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) - basic_machine=mips-dec - ;; - decsystem10* | dec10*) - basic_machine=pdp10-dec - os=-tops10 - ;; - decsystem20* | dec20*) - basic_machine=pdp10-dec - os=-tops20 - ;; - delta | 3300 | motorola-3300 | motorola-delta \ - | 3300-motorola | delta-motorola) - basic_machine=m68k-motorola - ;; - delta88) - basic_machine=m88k-motorola - os=-sysv3 - ;; - dpx20 | dpx20-*) - basic_machine=rs6000-bull - os=-bosx - ;; - dpx2* | dpx2*-bull) - basic_machine=m68k-bull - os=-sysv3 - ;; - ebmon29k) - basic_machine=a29k-amd - os=-ebmon - ;; - elxsi) - basic_machine=elxsi-elxsi - os=-bsd - ;; - encore | umax | mmax) - basic_machine=ns32k-encore - ;; - es1800 | OSE68k | ose68k | ose | OSE) - basic_machine=m68k-ericsson - os=-ose - ;; - fx2800) - basic_machine=i860-alliant - ;; - genix) - basic_machine=ns32k-ns - ;; - gmicro) - basic_machine=tron-gmicro - os=-sysv - ;; - go32) - basic_machine=i386-pc - os=-go32 - ;; - h3050r* | hiux*) - basic_machine=hppa1.1-hitachi - os=-hiuxwe2 - ;; - h8300hms) - basic_machine=h8300-hitachi - os=-hms - ;; - h8300xray) - basic_machine=h8300-hitachi - os=-xray - ;; - h8500hms) - basic_machine=h8500-hitachi - os=-hms - ;; - harris) - basic_machine=m88k-harris - os=-sysv3 - ;; - hp300-*) - basic_machine=m68k-hp - ;; - hp300bsd) - basic_machine=m68k-hp - os=-bsd - ;; - hp300hpux) - basic_machine=m68k-hp - os=-hpux - ;; - hp3k9[0-9][0-9] | hp9[0-9][0-9]) - basic_machine=hppa1.0-hp - ;; - hp9k2[0-9][0-9] | hp9k31[0-9]) - basic_machine=m68000-hp - ;; - hp9k3[2-9][0-9]) - basic_machine=m68k-hp - ;; - hp9k6[0-9][0-9] | hp6[0-9][0-9]) - basic_machine=hppa1.0-hp - ;; - hp9k7[0-79][0-9] | hp7[0-79][0-9]) - basic_machine=hppa1.1-hp - ;; - hp9k78[0-9] | hp78[0-9]) - # FIXME: really hppa2.0-hp - basic_machine=hppa1.1-hp - ;; - hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) - # FIXME: really hppa2.0-hp - basic_machine=hppa1.1-hp - ;; - hp9k8[0-9][13679] | hp8[0-9][13679]) - basic_machine=hppa1.1-hp - ;; - hp9k8[0-9][0-9] | hp8[0-9][0-9]) - basic_machine=hppa1.0-hp - ;; - hppa-next) - os=-nextstep3 - ;; - hppaosf) - basic_machine=hppa1.1-hp - os=-osf - ;; - hppro) - basic_machine=hppa1.1-hp - os=-proelf - ;; - i370-ibm* | ibm*) - basic_machine=i370-ibm - ;; -# I'm not sure what "Sysv32" means. Should this be sysv3.2? - i*86v32) - basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` - os=-sysv32 - ;; - i*86v4*) - basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` - os=-sysv4 - ;; - i*86v) - basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` - os=-sysv - ;; - i*86sol2) - basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` - os=-solaris2 - ;; - i386mach) - basic_machine=i386-mach - os=-mach - ;; - i386-vsta | vsta) - basic_machine=i386-unknown - os=-vsta - ;; - iris | iris4d) - basic_machine=mips-sgi - case $os in - -irix*) - ;; - *) - os=-irix4 - ;; - esac - ;; - isi68 | isi) - basic_machine=m68k-isi - os=-sysv - ;; - m88k-omron*) - basic_machine=m88k-omron - ;; - magnum | m3230) - basic_machine=mips-mips - os=-sysv - ;; - merlin) - basic_machine=ns32k-utek - os=-sysv - ;; - mingw32) - basic_machine=i386-pc - os=-mingw32 - ;; - miniframe) - basic_machine=m68000-convergent - ;; - *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) - basic_machine=m68k-atari - os=-mint - ;; - mipsel*-linux*) - basic_machine=mipsel-unknown - os=-linux-gnu - ;; - mips*-linux*) - basic_machine=mips-unknown - os=-linux-gnu - ;; - mips3*-*) - basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` - ;; - mips3*) - basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown - ;; - mmix*) - basic_machine=mmix-knuth - os=-mmixware - ;; - monitor) - basic_machine=m68k-rom68k - os=-coff - ;; - morphos) - basic_machine=powerpc-unknown - os=-morphos - ;; - msdos) - basic_machine=i386-pc - os=-msdos - ;; - mvs) - basic_machine=i370-ibm - os=-mvs - ;; - ncr3000) - basic_machine=i486-ncr - os=-sysv4 - ;; - netbsd386) - basic_machine=i386-unknown - os=-netbsd - ;; - netwinder) - basic_machine=armv4l-rebel - os=-linux - ;; - news | news700 | news800 | news900) - basic_machine=m68k-sony - os=-newsos - ;; - news1000) - basic_machine=m68030-sony - os=-newsos - ;; - news-3600 | risc-news) - basic_machine=mips-sony - os=-newsos - ;; - necv70) - basic_machine=v70-nec - os=-sysv - ;; - next | m*-next ) - basic_machine=m68k-next - case $os in - -nextstep* ) - ;; - -ns2*) - os=-nextstep2 - ;; - *) - os=-nextstep3 - ;; - esac - ;; - nh3000) - basic_machine=m68k-harris - os=-cxux - ;; - nh[45]000) - basic_machine=m88k-harris - os=-cxux - ;; - nindy960) - basic_machine=i960-intel - os=-nindy - ;; - mon960) - basic_machine=i960-intel - os=-mon960 - ;; - nonstopux) - basic_machine=mips-compaq - os=-nonstopux - ;; - np1) - basic_machine=np1-gould - ;; - nsr-tandem) - basic_machine=nsr-tandem - ;; - op50n-* | op60c-*) - basic_machine=hppa1.1-oki - os=-proelf - ;; - or32 | or32-*) - basic_machine=or32-unknown - os=-coff - ;; - OSE68000 | ose68000) - basic_machine=m68000-ericsson - os=-ose - ;; - os68k) - basic_machine=m68k-none - os=-os68k - ;; - pa-hitachi) - basic_machine=hppa1.1-hitachi - os=-hiuxwe2 - ;; - paragon) - basic_machine=i860-intel - os=-osf - ;; - pbd) - basic_machine=sparc-tti - ;; - pbb) - basic_machine=m68k-tti - ;; - pc532 | pc532-*) - basic_machine=ns32k-pc532 - ;; - pentium | p5 | k5 | k6 | nexgen | viac3) - basic_machine=i586-pc - ;; - pentiumpro | p6 | 6x86 | athlon) - basic_machine=i686-pc - ;; - pentiumii | pentium2) - basic_machine=i686-pc - ;; - pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) - basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - pentiumpro-* | p6-* | 6x86-* | athlon-*) - basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - pentiumii-* | pentium2-*) - basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - pn) - basic_machine=pn-gould - ;; - power) basic_machine=power-ibm - ;; - ppc) basic_machine=powerpc-unknown - ;; - ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - ppcle | powerpclittle | ppc-le | powerpc-little) - basic_machine=powerpcle-unknown - ;; - ppcle-* | powerpclittle-*) - basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - ppc64) basic_machine=powerpc64-unknown - ;; - ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - ppc64le | powerpc64little | ppc64-le | powerpc64-little) - basic_machine=powerpc64le-unknown - ;; - ppc64le-* | powerpc64little-*) - basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - ps2) - basic_machine=i386-ibm - ;; - pw32) - basic_machine=i586-unknown - os=-pw32 - ;; - rom68k) - basic_machine=m68k-rom68k - os=-coff - ;; - rm[46]00) - basic_machine=mips-siemens - ;; - rtpc | rtpc-*) - basic_machine=romp-ibm - ;; - s390 | s390-*) - basic_machine=s390-ibm - ;; - s390x | s390x-*) - basic_machine=s390x-ibm - ;; - sa29200) - basic_machine=a29k-amd - os=-udi - ;; - sequent) - basic_machine=i386-sequent - ;; - sh) - basic_machine=sh-hitachi - os=-hms - ;; - sparclite-wrs | simso-wrs) - basic_machine=sparclite-wrs - os=-vxworks - ;; - sps7) - basic_machine=m68k-bull - os=-sysv2 - ;; - spur) - basic_machine=spur-unknown - ;; - st2000) - basic_machine=m68k-tandem - ;; - stratus) - basic_machine=i860-stratus - os=-sysv4 - ;; - sun2) - basic_machine=m68000-sun - ;; - sun2os3) - basic_machine=m68000-sun - os=-sunos3 - ;; - sun2os4) - basic_machine=m68000-sun - os=-sunos4 - ;; - sun3os3) - basic_machine=m68k-sun - os=-sunos3 - ;; - sun3os4) - basic_machine=m68k-sun - os=-sunos4 - ;; - sun4os3) - basic_machine=sparc-sun - os=-sunos3 - ;; - sun4os4) - basic_machine=sparc-sun - os=-sunos4 - ;; - sun4sol2) - basic_machine=sparc-sun - os=-solaris2 - ;; - sun3 | sun3-*) - basic_machine=m68k-sun - ;; - sun4) - basic_machine=sparc-sun - ;; - sun386 | sun386i | roadrunner) - basic_machine=i386-sun - ;; - sv1) - basic_machine=sv1-cray - os=-unicos - ;; - symmetry) - basic_machine=i386-sequent - os=-dynix - ;; - t3e) - basic_machine=t3e-cray - os=-unicos - ;; - tic54x | c54x*) - basic_machine=tic54x-unknown - os=-coff - ;; - tx39) - basic_machine=mipstx39-unknown - ;; - tx39el) - basic_machine=mipstx39el-unknown - ;; - toad1) - basic_machine=pdp10-xkl - os=-tops20 - ;; - tower | tower-32) - basic_machine=m68k-ncr - ;; - udi29k) - basic_machine=a29k-amd - os=-udi - ;; - ultra3) - basic_machine=a29k-nyu - os=-sym1 - ;; - v810 | necv810) - basic_machine=v810-nec - os=-none - ;; - vaxv) - basic_machine=vax-dec - os=-sysv - ;; - vms) - basic_machine=vax-dec - os=-vms - ;; - vpp*|vx|vx-*) - basic_machine=f301-fujitsu - ;; - vxworks960) - basic_machine=i960-wrs - os=-vxworks - ;; - vxworks68) - basic_machine=m68k-wrs - os=-vxworks - ;; - vxworks29k) - basic_machine=a29k-wrs - os=-vxworks - ;; - w65*) - basic_machine=w65-wdc - os=-none - ;; - w89k-*) - basic_machine=hppa1.1-winbond - os=-proelf - ;; - windows32) - basic_machine=i386-pc - os=-windows32-msvcrt - ;; - xmp) - basic_machine=xmp-cray - os=-unicos - ;; - xps | xps100) - basic_machine=xps100-honeywell - ;; - z8k-*-coff) - basic_machine=z8k-unknown - os=-sim - ;; - none) - basic_machine=none-none - os=-none - ;; - -# Here we handle the default manufacturer of certain CPU types. It is in -# some cases the only manufacturer, in others, it is the most popular. - w89k) - basic_machine=hppa1.1-winbond - ;; - op50n) - basic_machine=hppa1.1-oki - ;; - op60c) - basic_machine=hppa1.1-oki - ;; - mips) - if [ x$os = x-linux-gnu ]; then - basic_machine=mips-unknown - else - basic_machine=mips-mips - fi - ;; - romp) - basic_machine=romp-ibm - ;; - rs6000) - basic_machine=rs6000-ibm - ;; - vax) - basic_machine=vax-dec - ;; - pdp10) - # there are many clones, so DEC is not a safe bet - basic_machine=pdp10-unknown - ;; - pdp11) - basic_machine=pdp11-dec - ;; - we32k) - basic_machine=we32k-att - ;; - sh3 | sh4 | sh3eb | sh4eb) - basic_machine=sh-unknown - ;; - sh64) - basic_machine=sh64-unknown - ;; - sparc | sparcv9 | sparcv9b) - basic_machine=sparc-sun - ;; - cydra) - basic_machine=cydra-cydrome - ;; - orion) - basic_machine=orion-highlevel - ;; - orion105) - basic_machine=clipper-highlevel - ;; - mac | mpw | mac-mpw) - basic_machine=m68k-apple - ;; - pmac | pmac-mpw) - basic_machine=powerpc-apple - ;; - c4x*) - basic_machine=c4x-none - os=-coff - ;; - *-unknown) - # Make sure to match an already-canonicalized machine name. - ;; - *) - echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 - exit 1 - ;; -esac - -# Here we canonicalize certain aliases for manufacturers. -case $basic_machine in - *-digital*) - basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` - ;; - *-commodore*) - basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` - ;; - *) - ;; -esac - -# Decode manufacturer-specific aliases for certain operating systems. - -if [ x"$os" != x"" ] -then -case $os in - # First match some system type aliases - # that might get confused with valid system types. - # -solaris* is a basic system type, with this one exception. - -solaris1 | -solaris1.*) - os=`echo $os | sed -e 's|solaris1|sunos4|'` - ;; - -solaris) - os=-solaris2 - ;; - -svr4*) - os=-sysv4 - ;; - -unixware*) - os=-sysv4.2uw - ;; - -gnu/linux*) - os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` - ;; - # First accept the basic system types. - # The portable systems comes first. - # Each alternative MUST END IN A *, to match a version number. - # -sysv* is not here because it comes later, after sysvr4. - -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ - | -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\ - | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \ - | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ - | -aos* \ - | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ - | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ - | -hiux* | -386bsd* | -netbsd* | -openbsd* | -freebsd* | -riscix* \ - | -lynxos* | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ - | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ - | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ - | -chorusos* | -chorusrdb* \ - | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ - | -mingw32* | -linux-gnu* | -uxpv* | -beos* | -mpeix* | -udk* \ - | -interix* | -uwin* | -rhapsody* | -darwin* | -opened* \ - | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ - | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ - | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* | -morphos*) - # Remember, each alternative MUST END IN *, to match a version number. - ;; - -qnx*) - case $basic_machine in - x86-* | i*86-*) - ;; - *) - os=-nto$os - ;; - esac - ;; - -nto*) - os=-nto-qnx - ;; - -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ - | -windows* | -osx | -abug | -netware* | -os9* | -beos* \ - | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) - ;; - -mac*) - os=`echo $os | sed -e 's|mac|macos|'` - ;; - -linux*) - os=`echo $os | sed -e 's|linux|linux-gnu|'` - ;; - -sunos5*) - os=`echo $os | sed -e 's|sunos5|solaris2|'` - ;; - -sunos6*) - os=`echo $os | sed -e 's|sunos6|solaris3|'` - ;; - -opened*) - os=-openedition - ;; - -wince*) - os=-wince - ;; - -osfrose*) - os=-osfrose - ;; - -osf*) - os=-osf - ;; - -utek*) - os=-bsd - ;; - -dynix*) - os=-bsd - ;; - -acis*) - os=-aos - ;; - -atheos*) - os=-atheos - ;; - -386bsd) - os=-bsd - ;; - -ctix* | -uts*) - os=-sysv - ;; - -ns2 ) - os=-nextstep2 - ;; - -nsk*) - os=-nsk - ;; - # Preserve the version number of sinix5. - -sinix5.*) - os=`echo $os | sed -e 's|sinix|sysv|'` - ;; - -sinix*) - os=-sysv4 - ;; - -triton*) - os=-sysv3 - ;; - -oss*) - os=-sysv3 - ;; - -svr4) - os=-sysv4 - ;; - -svr3) - os=-sysv3 - ;; - -sysvr4) - os=-sysv4 - ;; - # This must come after -sysvr4. - -sysv*) - ;; - -ose*) - os=-ose - ;; - -es1800*) - os=-ose - ;; - -xenix) - os=-xenix - ;; - -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) - os=-mint - ;; - -none) - ;; - *) - # Get rid of the `-' at the beginning of $os. - os=`echo $os | sed 's/[^-]*-//'` - echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 - exit 1 - ;; -esac -else - -# Here we handle the default operating systems that come with various machines. -# The value should be what the vendor currently ships out the door with their -# machine or put another way, the most popular os provided with the machine. - -# Note that if you're going to try to match "-MANUFACTURER" here (say, -# "-sun"), then you have to tell the case statement up towards the top -# that MANUFACTURER isn't an operating system. Otherwise, code above -# will signal an error saying that MANUFACTURER isn't an operating -# system, and we'll never get to this point. - -case $basic_machine in - *-acorn) - os=-riscix1.2 - ;; - arm*-rebel) - os=-linux - ;; - arm*-semi) - os=-aout - ;; - # This must come before the *-dec entry. - pdp10-*) - os=-tops20 - ;; - pdp11-*) - os=-none - ;; - *-dec | vax-*) - os=-ultrix4.2 - ;; - m68*-apollo) - os=-domain - ;; - i386-sun) - os=-sunos4.0.2 - ;; - m68000-sun) - os=-sunos3 - # This also exists in the configure program, but was not the - # default. - # os=-sunos4 - ;; - m68*-cisco) - os=-aout - ;; - mips*-cisco) - os=-elf - ;; - mips*-*) - os=-elf - ;; - or32-*) - os=-coff - ;; - *-tti) # must be before sparc entry or we get the wrong os. - os=-sysv3 - ;; - sparc-* | *-sun) - os=-sunos4.1.1 - ;; - *-be) - os=-beos - ;; - *-ibm) - os=-aix - ;; - *-wec) - os=-proelf - ;; - *-winbond) - os=-proelf - ;; - *-oki) - os=-proelf - ;; - *-hp) - os=-hpux - ;; - *-hitachi) - os=-hiux - ;; - i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) - os=-sysv - ;; - *-cbm) - os=-amigaos - ;; - *-dg) - os=-dgux - ;; - *-dolphin) - os=-sysv3 - ;; - m68k-ccur) - os=-rtu - ;; - m88k-omron*) - os=-luna - ;; - *-next ) - os=-nextstep - ;; - *-sequent) - os=-ptx - ;; - *-crds) - os=-unos - ;; - *-ns) - os=-genix - ;; - i370-*) - os=-mvs - ;; - *-next) - os=-nextstep3 - ;; - *-gould) - os=-sysv - ;; - *-highlevel) - os=-bsd - ;; - *-encore) - os=-bsd - ;; - *-sgi) - os=-irix - ;; - *-siemens) - os=-sysv4 - ;; - *-masscomp) - os=-rtu - ;; - f30[01]-fujitsu | f700-fujitsu) - os=-uxpv - ;; - *-rom68k) - os=-coff - ;; - *-*bug) - os=-coff - ;; - *-apple) - os=-macos - ;; - *-atari*) - os=-mint - ;; - *) - os=-none - ;; -esac -fi - -# Here we handle the case where we know the os, and the CPU type, but not the -# manufacturer. We pick the logical manufacturer. -vendor=unknown -case $basic_machine in - *-unknown) - case $os in - -riscix*) - vendor=acorn - ;; - -sunos*) - vendor=sun - ;; - -aix*) - vendor=ibm - ;; - -beos*) - vendor=be - ;; - -hpux*) - vendor=hp - ;; - -mpeix*) - vendor=hp - ;; - -hiux*) - vendor=hitachi - ;; - -unos*) - vendor=crds - ;; - -dgux*) - vendor=dg - ;; - -luna*) - vendor=omron - ;; - -genix*) - vendor=ns - ;; - -mvs* | -opened*) - vendor=ibm - ;; - -ptx*) - vendor=sequent - ;; - -vxsim* | -vxworks*) - vendor=wrs - ;; - -aux*) - vendor=apple - ;; - -hms*) - vendor=hitachi - ;; - -mpw* | -macos*) - vendor=apple - ;; - -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) - vendor=atari - ;; - -vos*) - vendor=stratus - ;; - esac - basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` - ;; -esac - -echo $basic_machine$os -exit 0 - -# Local variables: -# eval: (add-hook 'write-file-hooks 'time-stamp) -# time-stamp-start: "timestamp='" -# time-stamp-format: "%:y-%02m-%02d" -# time-stamp-end: "'" -# End: diff --git a/contrib/gcc/config/ChangeLog b/contrib/gcc/config/ChangeLog deleted file mode 100644 index 78ea3bb..0000000 --- a/contrib/gcc/config/ChangeLog +++ /dev/null @@ -1,477 +0,0 @@ -2002-11-19 Release Manager - - * GCC 3.2.1 Released. - -2002-11-19 Release Manager - - * GCC 3.2.1 Released. - -2002-11-18 Release Manager - - * GCC 3.2.1 Released. - -2002-08-14 Release Manager - - * GCC 3.2 Released. - -2002-07-25 Release Manager - - * GCC 3.1.1 Released. - -2002-05-14 Release Manager - - * GCC 3.1 Released. - -2002-05-14 Release Manager - - * GCC 3.1 Released. - -2001-10-07 Joseph S. Myers - - * acinclude.m4: Fix spelling error of "separate" as "seperate". - -2001-05-22 Jason Merrill - - * mt-linux (CXXFLAGS_FOR_TARGET): Lose -fvtable-thunks. - -2001-01-27 Richard Henderson - - * mt-alphaieee: New file. - -2001-01-02 Laurynas Biveinis - - * mh-djgpp: do not set CFLAGS. - -2000-08-04 Mark Elbrecht - - * mh-djgpp: Conditionally set 'target_alias' to djgpp. Conditionally - modify 'gcc_version'. - -2000-07-21 Andrew Haley - - * mh-ia64pic: New file. - * mt-ia64pic: New file. - -Fri Jul 14 18:13:23 2000 Mark P Mitchell - - * mh-irix6 (CC): Don't set it. - -2000-06-21 Branko Cibej - - * mh-sparcpic: Use single instead of double quotes. - * mt-sparcpic: Likewise. - -2000-06-19 Syd Polk - - * acinclude.m4: Updated for Incr Tcl 3.0. - -2000-02-23 Linas Vepstas - - * mh-i370pic: New file. - * mt-i370pic: New file. - -2000-02-22 Nick Clifton - - * config/mt-wince: new file: Makefile fragment for WinCE targets. - -2000-01-06 Geoff Keating - - * mh-aix43: Delete, move to mt-aix43. - * mt-aix43: New file. - -Tue Sep 7 23:31:01 1999 Linas Vepstas - - * mh-openedition: New file. - -1999-04-07 Michael Meissner - - * mt-d30v: New file, pass -g -Os -Wa,-C as default options. - -1999-02-08 Syd Polk - - * 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 - - * mh-armpic: New file. Patch from Jim Pick . - * mt-armpic: Likewise. - -Mon Jan 18 19:41:08 1999 Christopher Faylor - - * cygwin.mh: Activate commented out dependencies for - gdb: libtermcap. - -Wed Nov 18 20:29:46 1998 Christopher Faylor - - * 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 - - * mh-cygwin32: delete - * mh-cygwin: was mh-cygwin32 - -1998-10-26 Syd Polk - - * acinclude.m4: TCLHDIR and TKHDIR need to be run through - cygpath for Microsoft builds. - -1998-10-20 Syd Polk - - * acinclude.m4: Re-exported TCL_LIBS and TCL_LD_SEARCH_FLAGS - because itcl needs them. - -Mon Aug 31 17:50:53 1998 David Edelsohn - - * mh-aix43 (NM_FOR_TARGET): Add -X32_64 as well. - -Sat Aug 29 14:32:55 1998 David Edelsohn - - * 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 - - * acinclude.m4: New collection of generic autoconf macros. - -Wed Apr 22 12:24:28 1998 Michael Meissner - - * mt-ospace: New file, support using -Os instead of -O2 to compile - the libraries. - -Wed Apr 22 10:53:14 1998 Andreas Schwab - - * mt-linux (CXXFLAGS_FOR_TARGET): Set this instead of CXXFLAGS. - -Sat Apr 11 22:43:17 1998 J. Kean Johnston - - * mh-svsv5: New file - support for SCO UnixWare 7 / SVR5. - -Thu Mar 26 01:54:25 1998 Geoffrey Noer - - * mh-cygwin32: stop configuring and building dosrel. - -Thu Sep 11 16:43:27 1997 Jim Wilson - - * mh-elfalphapic, mt-elfalphapic: New files. - -Wed Jul 23 12:32:18 1997 Robert Hoehne - - * mh-go32 (CFLAGS): Don't set -fno-omit-frame-pointer. - -Mon Jun 16 19:06:41 1997 Geoff Keating - - * mh-ppcpic: New file. - * mt-ppcpic: New file. - -Thu Mar 27 15:52:40 1997 Geoffrey Noer - - * mh-cygwin32: override CXXFLAGS, setting to -O2 only - (no debug) - -Tue Mar 25 18:16:43 1997 Geoffrey Noer - - * 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 - - * 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 - - * mh-linux: Remove. - -Mon Nov 11 10:29:51 1996 Michael Meissner - - * 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 - - * 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 - - * mh-cygwin32: don't -D_WIN32 here anymore - -Thu Aug 15 19:46:44 1996 Stan Shebs - - * mpw-mh-mpw (SEGFLAG_68K, SEGFLAG_PPC): Remove. - (EXTRALIBS_PPC): Add libgcc.xcoff. - -Thu Aug 8 14:51:47 1996 Michael Meissner - - * 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 - - * mpw: New subdir, Mac MPW configuration support bits. - -Mon Jul 8 17:30:52 1996 Jim Wilson - - * mh-irix6: New file. - -Mon Jul 8 15:15:37 1996 Jason Merrill - - * mt-sparcpic (PICFLAG_FOR_TARGET): Use -fPIC. - -Fri Jul 5 11:49:02 1996 Ian Lance Taylor - - * mh-irix4 (RANLIB): Don't define; Irix 4 does have ranlib. - -Sun Jun 23 22:59:25 1996 Geoffrey Noer - - * mh-cygwin32: new file. Like mh-go32 without the CFLAGS entry. - -Tue Mar 26 14:10:41 1996 Ian Lance Taylor - - * mh-go32 (CFLAGS): Define. - -Thu Mar 14 19:20:54 1996 Ian Lance Taylor - - * mh-necv4: New file. - -Thu Feb 15 13:07:43 1996 Ian Lance Taylor - - * 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 - - * mh-m68kpic, mt-m68kpic: New files. - -Thu Feb 1 14:15:42 1996 Stan Shebs - - * 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 - - * mh-ncrsvr43 (CFLAGS): Remove -Hnocopyr. - -Tue Nov 7 15:41:30 1995 Stan Shebs - - * 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 - - * 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 - - * 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 - - * 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 - - * mpw-mh-mpw (CC): Define ANSI_PROTOTYPES. - -Mon Apr 10 12:29:48 1995 Stan Shebs - - * 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 - - * mh-hpux8: New file. - * mh-hpux: Use X11R5 rather than X11R4. - -Thu Feb 9 11:04:13 1995 Ian Lance Taylor - - * mh-linux (SYSV): Don't define. - (RANLIB): Don't define. - -Wed Jan 11 16:29:34 1995 Jason Merrill - - * m?-*pic (LIBCXXFLAGS): Add -fno-implicit-templates. - -Thu Nov 3 17:27:19 1994 Ken Raeburn - - * 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 - . - -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. - diff --git a/contrib/gcc/config/acinclude.m4 b/contrib/gcc/config/acinclude.m4 deleted file mode 100644 index 6669ac2..0000000 --- a/contrib/gcc/config/acinclude.m4 +++ /dev/null @@ -1,1995 +0,0 @@ -dnl This file is included into all any other acinclude file that needs -dnl to use these macros. - -dnl This is copied from autoconf 2.12, but does calls our own AC_PROG_CC_WORKS, -dnl and doesn't call AC_PROG_CXX_GNU, cause we test for that in AC_PROG_CC_WORKS. -dnl We are probably using a cross compiler, which will not be able to fully -dnl link an executable. This should really be fixed in autoconf itself. -dnl Find a working G++ cross compiler. This only works for the GNU C++ compiler. -AC_DEFUN(CYG_AC_PROG_CXX_CROSS, -[AC_BEFORE([$0], [AC_PROG_CXXCPP]) -AC_CHECK_PROGS(CXX, $CCC c++ g++ gcc CC cxx cc++, gcc) - -CYG_AC_PROG_GXX_WORKS - -if test $ac_cv_prog_gxx = yes; then - GXX=yes -dnl Check whether -g works, even if CXXFLAGS is set, in case the package -dnl plays around with CXXFLAGS (such as to build both debugging and -dnl normal versions of a library), tasteless as that idea is. - ac_test_CXXFLAGS="${CXXFLAGS+set}" - ac_save_CXXFLAGS="$CXXFLAGS" - CXXFLAGS= - AC_PROG_CXX_G - if test "$ac_test_CXXFLAGS" = set; then - CXXFLAGS="$ac_save_CXXFLAGS" - elif test $ac_cv_prog_cxx_g = yes; then - CXXFLAGS="-g -O2" - else - CXXFLAGS="-O2" - fi -else - GXX= - test "${CXXFLAGS+set}" = set || CXXFLAGS="-g" -fi -]) - -dnl See if the G++ compiler we found works. -AC_DEFUN(CYG_AC_PROG_GXX_WORKS, -[AC_MSG_CHECKING([whether the G++ compiler ($CXX $CXXFLAGS $LDFLAGS) actually works]) -AC_LANG_SAVE -AC_LANG_CPLUSPLUS -dnl Try a test case. We only compile, because it's close to impossible -dnl to get a correct fully linked executable with a cross compiler. For -dnl most cross compilers, this test is bogus. For G++, we can use various -dnl other compile line options to get a decent idea that the cross compiler -dnl actually does work, even though we can't produce an executable without -dnl more info about the target it's being compiled for. This only works -dnl for the GNU C++ compiler. - -dnl Transform the name of the compiler to it's cross variant, unless -dnl CXX is set. This is also what CXX gets set to in the generated -dnl Makefile. -if test x"${CXX}" = xc++ ; then - CXX=`echo gcc | sed -e "${program_transform_name}"` -fi - -dnl Get G++'s full path to libgcc.a -libgccpath=`${CXX} --print-libgcc` - -dnl If we don't have a path with libgcc.a on the end, this isn't G++. -if test `echo $libgccpath | sed -e 's:/.*/::'` = libgcc.a ; then - ac_cv_prog_gxx=yes -else - ac_cv_prog_gxx=no -fi - -dnl If we are using G++, look for the files that need to exist if this -dnl compiler works. -if test x"${ac_cv_prog_gxx}" = xyes ; then - gccfiles=`echo $libgccpath | sed -e 's:/libgcc.a::'` - if test -f ${gccfiles}/specs -a -f ${gccfiles}/cpp -a -f ${gccfiles}/cc1plus; then - gccfiles=yes - else - gccfiles=no - fi - gcclibs=`echo $libgccpath | sed -e 's:lib/gcc-lib/::' -e 's:/libgcc.a::' -e 's,\(.*\)/.*,\1,g'`/lib - if test -d ${gcclibs}/ldscripts -a -f ${gcclibs}/libc.a -a -f ${gcclibs}/libstdc++.a ; then - gcclibs=yes - else - gcclibs=no - fi -fi - -dnl If everything is OK, then we can safely assume the compiler works. -if test x"${gccfiles}" = xno -o x"${gcclibs}" = xno; then - ac_cv_prog_cxx_works=no - AC_MSG_ERROR(${CXX} is a non-working cross compiler) -else - ac_cv_prog_cxx_works=yes -fi - -AC_LANG_RESTORE -AC_MSG_RESULT($ac_cv_prog_cxx_works) -if test x"$ac_cv_prog_cxx_works" = xno; then - AC_MSG_ERROR([installation or configuration problem: C++ compiler cannot create executables.]) -fi -AC_MSG_CHECKING([whether the G++ compiler ($CXX $CXXFLAGS $LDFLAGS) is a cross-compiler]) -AC_MSG_RESULT($ac_cv_prog_cxx_cross) -cross_compiling=$ac_cv_prog_cxx_cross -AC_SUBST(CXX) -]) - -dnl ==================================================================== -dnl Find a working GCC cross compiler. This only works for the GNU gcc compiler. -dnl This is based on the macros above for G++. -AC_DEFUN(CYG_AC_PROG_CC_CROSS, -[AC_BEFORE([$0], [AC_PROG_CCPP]) -AC_CHECK_PROGS(CC, cc, gcc) - -CYG_AC_PROG_GCC_WORKS - -if test $ac_cv_prog_gcc = yes; then - GCC=yes -dnl Check whether -g works, even if CFLAGS is set, in case the package -dnl plays around with CFLAGS (such as to build both debugging and -dnl normal versions of a library), tasteless as that idea is. - ac_test_CFLAGS="${CFLAGS+set}" - ac_save_CFLAGS="$CFLAGS" - CFLAGS= - AC_PROG_CC_G - if test "$ac_test_CFLAGS" = set; then - CFLAGS="$ac_save_CFLAGS" - elif test $ac_cv_prog_cc_g = yes; then - CFLAGS="-g -O2" - else - CFLAGS="-O2" - fi -else - GXX= - test "${CFLAGS+set}" = set || CFLAGS="-g" -fi -]) - -dnl See if the GCC compiler we found works. -AC_DEFUN(CYG_AC_PROG_GCC_WORKS, -[AC_MSG_CHECKING([whether the Gcc compiler ($CC $CFLAGS $LDFLAGS) actually works]) -AC_LANG_SAVE -AC_LANG_C -dnl Try a test case. We only compile, because it's close to impossible -dnl to get a correct fully linked executable with a cross -dnl compiler. For most cross compilers, this test is bogus. For G++, -dnl we can use various other compile line options to get a decent idea -dnl that the cross compiler actually does work, even though we can't -dnl produce an executable without more info about the target it's -dnl being compiled for. This only works for the GNU C++ compiler. - -dnl Transform the name of the compiler to it's cross variant, unless -dnl CXX is set. This is also what CC gets set to in the generated Makefile. -if test x"${CC}" = xcc ; then - CC=`echo gcc | sed -e "${program_transform_name}"` -fi - -dnl Get Gcc's full path to libgcc.a -libgccpath=`${CC} --print-libgcc` - -dnl If we don't have a path with libgcc.a on the end, this isn't G++. -if test `echo $libgccpath | sed -e 's:/.*/::'` = libgcc.a ; then - ac_cv_prog_gcc=yes -else - ac_cv_prog_gcc=no -fi - -dnl If we are using Gcc, look for the files that need to exist if this -dnl compiler works. -if test x"${ac_cv_prog_gcc}" = xyes ; then - gccfiles=`echo $libgccpath | sed -e 's:/libgcc.a::'` - if test -f ${gccfiles}/specs -a -f ${gccfiles}/cpp -a -f ${gccfiles}/cc1plus; then - gccfiles=yes - else - gccfiles=no - fi - gcclibs=`echo $libgccpath | sed -e 's:lib/gcc-lib/::' -e 's:/libgcc.a::' -e 's,\(.*\)/.*,\1,g'`/lib - if test -d ${gcclibs}/ldscripts -a -f ${gcclibs}/libc.a -a -f ${gcclibs}/libstdc++.a ; then - gcclibs=yes - else - gcclibs=no - fi -fi - -dnl If everything is OK, then we can safely assume the compiler works. -if test x"${gccfiles}" = xno -o x"${gcclibs}" = xno; then - ac_cv_prog_cc_works=no - AC_MSG_ERROR(${CC} is a non-working cross compiler) -else - ac_cv_prog_cc_works=yes -fi - -AC_LANG_RESTORE -AC_MSG_RESULT($ac_cv_prog_cc_works) -if test x"$ac_cv_prog_cc_works" = xno; then - AC_MSG_ERROR([installation or configuration problem: C++ compiler cannot create executables.]) -fi -AC_MSG_CHECKING([whether the Gcc compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler]) -AC_MSG_RESULT($ac_cv_prog_cc_cross) -cross_compiling=$ac_cv_prog_cc_cross -AC_SUBST(CC) -]) - -dnl ==================================================================== -dnl Find the BFD library in the build tree. This is used to access and -dnl manipulate object or executable files. -AC_DEFUN(CYG_AC_PATH_BFD, [ -AC_MSG_CHECKING(for the bfd header in the build tree) -dirlist=".. ../../ ../../../ ../../../../ ../../../../../ ../../../../../../ ../../../../../../.. ../../../../../../../.. ../../../../../../../../.. ../../../../../../../../../.." -dnl Look for the header file -AC_CACHE_VAL(ac_cv_c_bfdh,[ -for i in $dirlist; do - if test -f "$i/bfd/bfd.h" ; then - ac_cv_c_bfdh=`(cd $i/bfd; pwd)` - break - fi -done -]) -if test x"${ac_cv_c_bfdh}" != x; then - BFDHDIR="-I${ac_cv_c_bfdh}" - AC_MSG_RESULT(${ac_cv_c_bfdh}) -else - AC_MSG_RESULT(none) -fi -AC_SUBST(BFDHDIR) - -dnl Look for the library -AC_MSG_CHECKING(for the bfd library in the build tree) -AC_CACHE_VAL(ac_cv_c_bfdlib,[ -for i in $dirlist; do - if test -f "$i/bfd/Makefile" ; then - ac_cv_c_bfdlib=`(cd $i/bfd; pwd)` - fi -done -]) -dnl We list two directories cause bfd now uses libtool -if test x"${ac_cv_c_bfdlib}" != x; then - BFDLIB="-L${ac_cv_c_bfdlib} -L${ac_cv_c_bfdlib}/.libs" - AC_MSG_RESULT(${ac_cv_c_bfdlib}) -else - AC_MSG_RESULT(none) -fi -AC_SUBST(BFDLIB) -]) - -dnl ==================================================================== -dnl Find the libiberty library. This defines many commonly used C -dnl functions that exists in various states based on the underlying OS. -AC_DEFUN(CYG_AC_PATH_LIBERTY, [ -AC_MSG_CHECKING(for the liberty library in the build tree) -dirlist=".. ../../ ../../../ ../../../../ ../../../../../ ../../../../../../ ../../../../../../.. ../../../../../../../.. ../../../../../../../../.. ../../../../../../../../../.." -AC_CACHE_VAL(ac_cv_c_liberty,[ -for i in $dirlist; do - if test -f "$i/libiberty/Makefile" ; then - ac_cv_c_liberty=`(cd $i/libiberty; pwd)` - fi -done -]) -if test x"${ac_cv_c_liberty}" != x; then - LIBERTY="-L${ac_cv_c_liberty}" - AC_MSG_RESULT(${ac_cv_c_liberty}) -else - AC_MSG_RESULT(none) -fi -AC_SUBST(LIBERTY) -]) - -dnl ==================================================================== -dnl Find the opcodes library. This is used to do dissasemblies. -AC_DEFUN(CYG_AC_PATH_OPCODES, [ -AC_MSG_CHECKING(for the opcodes library in the build tree) -dirlist=".. ../../ ../../../ ../../../../ ../../../../../ ../../../../../../ ../../../../../../.. ../../../../../../../.. ../../../../../../../../.. ../../../../../../../../../.." -AC_CACHE_VAL(ac_cv_c_opc,[ -for i in $dirlist; do - if test -f "$i/opcodes/Makefile" ; then - ac_cv_c_opc=`(cd $i/opcodes; pwd)` - fi -done -]) -if test x"${ac_cv_c_opc}" != x; then - OPCODESLIB="-L${ac_cv_c_opc}" - AC_MSG_RESULT(${ac_cv_c_opc}) -else - AC_MSG_RESULT(none) -fi -AC_SUBST(OPCODESLIB) -]) - -dnl ==================================================================== -dnl Look for the DejaGnu header file in the source tree. This file -dnl defines the functions used to testing support. -AC_DEFUN(CYG_AC_PATH_DEJAGNU, [ -AC_MSG_CHECKING(for the testing support files in the source tree) -dirlist=".. ../../ ../../../ ../../../../ ../../../../../ ../../../../../../ ../../../../../../.. ../../../../../../../.. ../../../../../../../../.. ../../../../../../../../../.." -AC_CACHE_VAL(ac_cv_c_dejagnu,[ -for i in $dirlist; do - if test -f "$srcdir/$i/ecc/ecc/infra/testlib/current/include/dejagnu.h" ; then - ac_cv_c_dejagnu=`(cd $srcdir/$i/ecc/ecc/infra/testlib/current/include; pwd)` - fi -done -]) -if test x"${ac_cv_c_dejagnu}" != x; then - DEJAGNUHDIR="-I${ac_cv_c_dejagnu}" - AC_MSG_RESULT(${ac_cv_c_dejagnu}) -else - AC_MSG_RESULT(none) -fi -AC_CACHE_VAL(ac_cv_c_dejagnulib,[ -for i in $dirlist; do - if test -f "$srcdir/$i/infra/testlib/current/lib/hostutil.exp" ; then - ac_cv_c_dejagnulib=`(cd $srcdir/$i/infra/testlib/current/lib; pwd)` - fi -done -]) -if test x"${ac_cv_c_dejagnulib}" != x; then - DEJAGNULIB="${ac_cv_c_dejagnulib}" -else - DEJAGNULIB="" -fi -AC_MSG_CHECKING(for runtest in the source tree) -AC_CACHE_VAL(ac_cv_c_runtest,[ -for i in $dirlist; do - if test -f "$srcdir/$i/dejagnu/runtest" ; then - ac_cv_c_runtest=`(cd $srcdir/$i/dejagnu; pwd)` - fi -done -]) -if test x"${ac_cv_c_runtest}" != x; then - RUNTESTDIR="${ac_cv_c_runtest}" - AC_MSG_RESULT(${ac_cv_c_runtest}) -else - RUNTESTDIR="" - AC_MSG_RESULT(none) -fi -AC_SUBST(RUNTESTDIR) -AC_SUBST(DEJAGNULIB) -AC_SUBST(DEJAGNUHDIR) -]) - -dnl ==================================================================== -dnl Find the libintl library in the build tree. This is for -dnl internationalization support. -AC_DEFUN(CYG_AC_PATH_INTL, [ -AC_MSG_CHECKING(for the intl header in the build tree) -dirlist=".. ../../ ../../../ ../../../../ ../../../../../ ../../../../../../ ../../../../../../.. ../../../../../../../.. ../../../../../../../../.. ../../../../../../../../../.." -dnl Look for the header file -AC_CACHE_VAL(ac_cv_c_intlh,[ -for i in $dirlist; do - if test -f "$i/intl/libintl.h" ; then - ac_cv_c_intlh=`(cd $i/intl; pwd)` - break - fi -done -]) -if test x"${ac_cv_c_intlh}" != x; then - INTLHDIR="-I${ac_cv_c_intlh}" - AC_MSG_RESULT(${ac_cv_c_intlh}) -else - AC_MSG_RESULT(none) -fi -AC_SUBST(INTLHDIR) - -dnl Look for the library -AC_MSG_CHECKING(for the libintl library in the build tree) -AC_CACHE_VAL(ac_cv_c_intllib,[ -for i in $dirlist; do - if test -f "$i/intl/Makefile" ; then - ac_cv_c_intllib=`(cd $i/intl; pwd)` - fi -done -]) -if test x"${ac_cv_c_intllib}" != x; then - INTLLIB="-L${ac_cv_c_intllib} -lintl" - AC_MSG_RESULT(${ac_cv_c_intllib}) -else - AC_MSG_RESULT(none) -fi -AC_SUBST(INTLLIB) -]) - -dnl ==================================================================== -dnl Find the simulator library. -AC_DEFUN(CYG_AC_PATH_SIM, [ -dirlist=".. ../../ ../../../ ../../../../ ../../../../../ ../../../../../../ ../../../../../../.. ../../../../../../../.. ../../../../../../../../.. ../../../../../../../../../.. ../../../../../../../../../.." -case "$target_cpu" in - powerpc) target_dir=ppc ;; - sparc*) target_dir=erc32 ;; - mips*) target_dir=mips ;; - *) target_dir=$target_cpu ;; -esac -dnl First look for the header file -AC_MSG_CHECKING(for the simulator header file) -AC_CACHE_VAL(ac_cv_c_simh,[ -for i in $dirlist; do - if test -f "${srcdir}/$i/include/remote-sim.h" ; then - ac_cv_c_simh=`(cd ${srcdir}/$i/include; pwd)` - break - fi -done -]) -if test x"${ac_cv_c_simh}" != x; then - SIMHDIR="-I${ac_cv_c_simh}" - AC_MSG_RESULT(${ac_cv_c_simh}) -else - AC_MSG_RESULT(none) -fi -AC_SUBST(SIMHDIR) - -dnl See whether it's a devo or Foundry branch simulator -AC_MSG_CHECKING(Whether this is a devo simulator ) -AC_CACHE_VAL(ac_cv_c_simdevo,[ - CPPFLAGS="$CPPFLAGS $SIMHDIR" - AC_EGREP_HEADER([SIM_DESC sim_open.*struct _bfd], remote-sim.h, - ac_cv_c_simdevo=yes, - ac_cv_c_simdevo=no) -]) -if test x"$ac_cv_c_simdevo" = x"yes" ; then - AC_DEFINE(HAVE_DEVO_SIM) -fi -AC_MSG_RESULT(${ac_cv_c_simdevo}) -AC_SUBST(HAVE_DEVO_SIM) - -dnl Next look for the library -AC_MSG_CHECKING(for the simulator library) -AC_CACHE_VAL(ac_cv_c_simlib,[ -for i in $dirlist; do - if test -f "$i/sim/$target_dir/Makefile" ; then - ac_cv_c_simlib=`(cd $i/sim/$target_dir; pwd)` - fi -done -]) -if test x"${ac_cv_c_simlib}" != x; then - SIMLIB="-L${ac_cv_c_simlib}" -else - AC_MSG_RESULT(none) - dnl FIXME: this is kinda bogus, cause umtimately the TM will build - dnl all the libraries for several architectures. But for now, this - dnl will work till then. -dnl AC_MSG_CHECKING(for the simulator installed with the compiler libraries) - dnl Transform the name of the compiler to it's cross variant, unless - dnl CXX is set. This is also what CXX gets set to in the generated - dnl Makefile. - CROSS_GCC=`echo gcc | sed -e "s/^/$target/"` - - dnl Get G++'s full path to libgcc.a -changequote(,) - gccpath=`${CROSS_GCC} --print-libgcc | sed -e 's:[a-z0-9A-Z\.\-]*/libgcc.a::' -e 's:lib/gcc-lib/::'`lib -changequote([,]) - if test -f $gccpath/libsim.a -o -f $gccpath/libsim.so ; then - ac_cv_c_simlib="$gccpath/" - SIMLIB="-L${ac_cv_c_simlib}" - AC_MSG_RESULT(${ac_cv_c_simlib}) - else - AM_CONDITIONAL(PSIM, test x$psim = xno) - SIMLIB="" - AC_MSG_RESULT(none) -dnl ac_cv_c_simlib=none - fi -fi -AC_SUBST(SIMLIB) -]) - -dnl ==================================================================== -dnl Find the libiberty library. -AC_DEFUN(CYG_AC_PATH_LIBIBERTY, [ -AC_MSG_CHECKING(for the libiberty library in the build tree) -dirlist=".. ../../ ../../../ ../../../../ ../../../../../ ../../../../../../ ../../../../../../.. ../../../../../../../.. ../../../../../../../../.. ../../../../../../../../../.." -AC_CACHE_VAL(ac_cv_c_libib,[ -for i in $dirlist; do - if test -f "$i/libiberty/Makefile" ; then - ac_cv_c_libib=`(cd $i/libiberty/; pwd)` - fi -done -]) -if test x"${ac_cv_c_libib}" != x; then - LIBIBERTY="-L${ac_cv_c_libib}" - AC_MSG_RESULT(${ac_cv_c_libib}) -else - AC_MSG_RESULT(none) -fi -AC_SUBST(LIBIBERTY) -]) - -dnl ==================================================================== -AC_DEFUN(CYG_AC_PATH_DEVO, [ -AC_MSG_CHECKING(for devo headers in the source tree) -dirlist=".. ../../ ../../../ ../../../../ ../../../../../ ../../../../../../ ../../../../../../.. ../../../../../../../.. ../../../../../../../../.. ../../../../../../../../../.." -AC_CACHE_VAL(ac_cv_c_devoh,[ -for i in $dirlist; do - if test -f "${srcdir}/$i/include/remote-sim.h" ; then - ac_cv_c_devoh=`(cd ${srcdir}/$i/include; pwd)` - fi -done -]) -if test x"${ac_cv_c_devoh}" != x; then - DEVOHDIR="-I${ac_cv_c_devoh}" - AC_MSG_RESULT(${ac_cv_c_devoh}) -else - AC_MSG_RESULT(none) -fi -AC_SUBST(DEVOHDIR) -]) - -dnl ==================================================================== -dnl find the IDE library and headers. -AC_DEFUN(CYG_AC_PATH_IDE, [ -AC_MSG_CHECKING(for IDE headers in the source tree) -dirlist=".. ../../ ../../../ ../../../../ ../../../../../ ../../../../../../ ../../../../../../.. ../../../../../../../.. ../../../../../../../../.. ../../../../../../../../../.." -IDEHDIR= -IDELIB= -AC_CACHE_VAL(ac_cv_c_ideh,[ -for i in $dirlist; do - if test -f "${srcdir}/$i/libide/src/event.h" ; then - ac_cv_c_ideh=`(cd ${srcdir}/$i/libide/src; pwd)`; - fi -done -]) -if test x"${ac_cv_c_ideh}" != x; then - IDEHDIR="-I${ac_cv_c_ideh}" - AC_MSG_RESULT(${ac_cv_c_ideh}) -else - AC_MSG_RESULT(none) -fi - -AC_MSG_CHECKING(for LIBIDE TCL headers in the source tree) -AC_CACHE_VAL(ac_cv_c_idetclh,[ -for i in $dirlist; do - if test -f "${srcdir}/$i/libidetcl/src/idetcl.h" ; then - ac_cv_c_idetclh=`(cd ${srcdir}/$i/libidetcl/src; pwd)`; - fi -done -]) -if test x"${ac_cv_c_idetclh}" != x; then - IDEHDIR="${IDEHDIR} -I${ac_cv_c_idetclh}" - AC_MSG_RESULT(${ac_cv_c_idetclh}) -else - AC_MSG_RESULT(none) -fi - -AC_MSG_CHECKING(for IDE headers in the build tree) -AC_CACHE_VAL(ac_cv_c_ideh2,[ -for i in $dirlist; do - if test -f "$i/libide/src/Makefile" ; then - ac_cv_c_ideh2=`(cd $i/libide/src; pwd)`; - fi -done -]) -if test x"${ac_cv_c_ideh2}" != x; then - IDEHDIR="${IDEHDIR} -I${ac_cv_c_ideh2}" - AC_MSG_RESULT(${ac_cv_c_ideh2}) -else - AC_MSG_RESULT(none) -fi - -dnl look for the library -AC_MSG_CHECKING(for IDE library) -AC_CACHE_VAL(ac_cv_c_idelib,[ -if test x"${ac_cv_c_idelib}" = x ; then - for i in $dirlist; do - if test -f "$i/libide/src/Makefile" ; then - ac_cv_c_idelib=`(cd $i/libide/src; pwd)` - break - fi - done -fi]) -if test x"${ac_cv_c_idelib}" != x ; then - IDELIB="-L${ac_cv_c_idelib}" - AC_MSG_RESULT(${ac_cv_c_idelib}) -else - AC_MSG_RESULT(none) -fi - -dnl find libiddetcl.a if it exists -AC_MSG_CHECKING(for IDE TCL library) -AC_CACHE_VAL(ac_cv_c_idetcllib,[ -if test x"${ac_cv_c_idetcllib}" = x ; then - for i in $dirlist; do - if test -f "$i/libidetcl/src/Makefile" ; then - ac_cv_c_idetcllib=`(cd $i/libidetcl/src; pwd)` - break - fi - done -fi -]) -if test x"${ac_cv_c_idetcllib}" != x ; then - IDELIB="${IDELIB} -L${ac_cv_c_idetcllib}" - IDETCLLIB="-lidetcl" - AC_MSG_RESULT(${ac_cv_c_idetcllib}) -else - AC_MSG_RESULT(none) -fi -AC_SUBST(IDEHDIR) -AC_SUBST(IDELIB) -AC_SUBST(IDETCLLIB) -]) - -dnl ==================================================================== -dnl Find all the ILU headers and libraries -AC_DEFUN(CYG_AC_PATH_ILU, [ -AC_MSG_CHECKING(for ILU kernel headers in the source tree) -dirlist=".. ../../ ../../../ ../../../../ ../../../../../ ../../../../../../ ../../../../../../.. ../../../../../../../.. ../../../../../../../../.. ../../../../../../../../../.." -AC_CACHE_VAL(ac_cv_c_iluh,[ -for i in $dirlist; do - if test -f "${srcdir}/$i/ilu/runtime/kernel/method.h" ; then - ac_cv_c_iluh=`(cd ${srcdir}/$i/ilu/runtime/kernel; pwd)` - fi -done -]) -if test x"${ac_cv_c_iluh}" != x; then - ILUHDIR="-I${ac_cv_c_iluh}" - AC_MSG_RESULT(${ac_cv_c_iluh}) -else - AC_MSG_RESULT(none) -fi - -AC_MSG_CHECKING(for ILU kernel headers in the build tree) -dirlist=".. ../../ ../../../ ../../../../ ../../../../../ ../../../../../../ ../../../../../../.. ../../../../../../../.. ../../../../../../../../.. ../../../../../../../../../.." -AC_CACHE_VAL(ac_cv_c_iluh5,[ -for i in $dirlist; do - if test -f "$i/ilu/runtime/kernel/iluconf.h" ; then - ac_cv_c_iluh5=`(cd $i/ilu/runtime/kernel; pwd)` - fi -done -]) -if test x"${ac_cv_c_iluh5}" != x; then - ILUHDIR="${ILUHDIR} -I${ac_cv_c_iluh5}" - AC_MSG_RESULT(${ac_cv_c_iluh5}) -else - AC_MSG_RESULT(none) -fi - -AC_MSG_CHECKING(for ILU C++ headers in the source tree) -AC_CACHE_VAL(ac_cv_c_iluh2,[ -for i in $dirlist; do - if test -f "${srcdir}/$i/ilu/stubbers/cpp/resource.h" ; then - ac_cv_c_iluh2=`(cd ${srcdir}/$i/ilu/stubbers/cpp; pwd)` - fi -done -]) -if test x"${ac_cv_c_iluh2}" != x; then - ILUHDIR="${ILUHDIR} -I${ac_cv_c_iluh2}" - AC_MSG_RESULT(${ac_cv_c_iluh2}) -else - AC_MSG_RESULT(none) -fi - -AC_MSG_CHECKING(for ILU C headers) -AC_CACHE_VAL(ac_cv_c_iluh3,[ -for i in $dirlist; do - if test -f "${srcdir}/$i/ilu/stubbers/c/resource.h" ; then - ac_cv_c_iluh3=`(cd ${srcdir}/$i/ilu/stubbers/c ; pwd)` - fi -done -]) -if test x"${ac_cv_c_iluh3}" != x; then - ILUHDIR="${ILUHDIR} -I${ac_cv_c_iluh3}" - AC_MSG_RESULT(${ac_cv_c_iluh3}) -else - AC_MSG_RESULT(none) -fi - -AC_MSG_CHECKING(for ILU C runtime headers) -AC_CACHE_VAL(ac_cv_c_iluh4,[ -for i in $dirlist; do - if test -f "${srcdir}/$i/ilu/runtime/c/ilucstub.h" ; then - ac_cv_c_iluh4=`(cd ${srcdir}/$i/ilu/runtime/c ; pwd)` - fi -done -]) -if test x"${ac_cv_c_iluh4}" != x; then - ILUHDIR="${ILUHDIR} -I${ac_cv_c_iluh4}" - AC_MSG_RESULT(${ac_cv_c_iluh4}) -else - AC_MSG_RESULT(none) -fi - -AC_CACHE_VAL(ac_cv_c_ilupath,[ -for i in $dirlist; do - if test -f "$i/ilu/Makefile" ; then - ac_cv_c_ilupath=`(cd $i/ilu; pwd)` - break - fi -done -]) -ILUTOP=${ac_cv_c_ilupath} - -AC_MSG_CHECKING(for the ILU library in the build tree) -AC_CACHE_VAL(ac_cv_c_ilulib,[ -if test -f "$ac_cv_c_ilupath/runtime/kernel/Makefile" ; then - ac_cv_c_ilulib=`(cd $ac_cv_c_ilupath/runtime/kernel; pwd)` - AC_MSG_RESULT(found ${ac_cv_c_ilulib}/libilu.a) -else - AC_MSG_RESULT(no) -fi]) - -AC_MSG_CHECKING(for the ILU C++ bindings library in the build tree) -AC_CACHE_VAL(ac_cv_c_ilulib2,[ -if test -f "$ac_cv_c_ilupath/runtime/cpp/Makefile" ; then - ac_cv_c_ilulib2=`(cd $ac_cv_c_ilupath/runtime/cpp; pwd)` - AC_MSG_RESULT(found ${ac_cv_c_ilulib2}/libilu-c++.a) -else - AC_MSG_RESULT(no) -fi]) - -AC_MSG_CHECKING(for the ILU C bindings library in the build tree) -AC_CACHE_VAL(ac_cv_c_ilulib3,[ -if test -f "$ac_cv_c_ilupath/runtime/c/Makefile" ; then - ac_cv_c_ilulib3=`(cd $ac_cv_c_ilupath/runtime/c; pwd)` - AC_MSG_RESULT(found ${ac_cv_c_ilulib3}/libilu-c.a) -else - AC_MSG_RESULT(no) -fi]) - -AC_MSG_CHECKING(for the ILU Tk bindings library in the build tree) -AC_CACHE_VAL(ac_cv_c_ilulib4,[ -if test -f "$ac_cv_c_ilupath/runtime/mainloop/Makefile" ; then - ac_cv_c_ilulib4=`(cd $ac_cv_c_ilupath/runtime/mainloop; pwd)` - AC_MSG_RESULT(found ${ac_cv_c_ilulib4}/libilu-tk.a) -else - AC_MSG_RESULT(no) -fi]) - -if test x"${ac_cv_c_ilulib}" = x -a x"${ac_cv_c_ilulib2}" = x; then - ILUHDIR="" -fi - -if test x"${ac_cv_c_ilulib}" != x -a x"${ac_cv_c_ilulib2}" != x; then - ILULIB="-L${ac_cv_c_ilulib} -L${ac_cv_c_ilulib2} -L${ac_cv_c_ilulib3} -L${ac_cv_c_ilulib4}" -else - ILULIB="" -fi - -if test x"${ILULIB}" = x; then - AC_MSG_CHECKING(for ILU libraries installed with the compiler) - AC_CACHE_VAL(ac_cv_c_ilulib5,[ - NATIVE_GCC=`echo gcc | sed -e "${program_transform_name}"` - - dnl Get G++'s full path to it's libraries - ac_cv_c_ilulib5=`${NATIVE_GCC} --print-libgcc | sed -e 's:lib/gcc-lib/.*::'`lib - if test -f $ac_cv_c_ilulib5/libilu-c.a -o -f $ac_cv_c_ilulib5/libilu-c.so ; then - if test x"${ILUHDIR}" = x; then - ILUHDIR="-I${ac_cv_c_ilulib5}/../include" - fi - ILULIB="-L${ac_cv_c_ilulib5}" - AC_MSG_RESULT(${ac_cv_c_ilulib5}) - else - ac_cv_c_ilulib=none - AC_MSG_RESULT(none) - fi -fi]) -AC_SUBST(ILUHDIR) -AC_SUBST(ILULIB) -AC_SUBST(ILUTOP) -]) - -dnl ==================================================================== -dnl This defines the byte order for the host. We can't use -dnl AC_C_BIGENDIAN, cause we want to create a config file and -dnl substitue the real value, so the header files work right -AC_DEFUN(CYG_AC_C_ENDIAN, [ -AC_MSG_CHECKING(to see if this is a little endian host) -AC_CACHE_VAL(ac_cv_c_little_endian, [ -ac_cv_c_little_endian=unknown -# See if sys/param.h defines the BYTE_ORDER macro. -AC_TRY_COMPILE([#include -#include ], [ -#if !BYTE_ORDER || !_BIG_ENDIAN || !_LITTLE_ENDIAN - bogus endian macros -#endif], [# It does; now see whether it defined to _LITTLE_ENDIAN or not. -AC_TRY_COMPILE([#include -#include ], [ -#if BYTE_ORDER != _LITTLE_ENDIAN - not big endian -#endif], ac_cv_c_little_endian=yes, ac_cv_c_little_endian=no) -]) -if test ${ac_cv_c_little_endian} = unknown; then -old_cflags=$CFLAGS -CFLAGS=-g -AC_TRY_RUN([ -main () { - /* Are we little or big endian? From Harbison&Steele. */ - union - { - long l; - char c[sizeof (long)]; - } u; - u.l = 1; - exit (u.c[0] == 1); -}], -ac_cv_c_little_endian=no, -ac_cv_c_little_endian=yes,[ -dnl Yes, this is ugly, and only used for a canadian cross anyway. This -dnl is just to keep configure from stopping here. -case "${host}" in -changequote(,) - i[3456]86-*-*) ac_cv_c_little_endian=yes ;; - sparc*-*-*) ac_cv_c_little_endian=no ;; -changequote([,]) - *) AC_MSG_WARN(Can't cross compile this test) ;; -esac]) -CFLAGS=$old_cflags -fi]) - -if test x"${ac_cv_c_little_endian}" = xyes; then - AC_DEFINE(LITTLE_ENDIAN_HOST) - ENDIAN="CYG_LSBFIRST"; -else - ENDIAN="CYG_MSBFIRST"; -fi -AC_MSG_RESULT(${ac_cv_c_little_endian}) -AC_SUBST(ENDIAN) -]) - -dnl ==================================================================== -dnl Look for the path to libgcc, so we can use it to directly link -dnl in libgcc.a with LD. -AC_DEFUN(CYG_AC_PATH_LIBGCC, -[AC_MSG_CHECKING([Looking for the path to libgcc.a]) -AC_LANG_SAVE -AC_LANG_C - -dnl Get Gcc's full path to libgcc.a -libgccpath=`${CC} --print-libgcc` - -dnl If we don't have a path with libgcc.a on the end, this isn't G++. -if test `echo $libgccpath | sed -e 's:/.*/::'` = libgcc.a ; then - ac_cv_prog_gcc=yes -else - ac_cv_prog_gcc=no -fi - -dnl -if test x"${ac_cv_prog_gcc}" = xyes ; then - gccpath=`echo $libgccpath | sed -e 's:/libgcc.a::'` - LIBGCC="-L${gccpath}" - AC_MSG_RESULT(${gccpath}) -else - LIBGCC="" - AC_MSG_ERROR(Not using gcc) -fi - -AC_LANG_RESTORE -AC_SUBST(LIBGCC) -]) - -dnl ==================================================================== -dnl Ok, lets find the tcl source trees so we can use the headers -dnl Warning: transition of version 9 to 10 will break this algorithm -dnl because 10 sorts before 9. We also look for just tcl. We have to -dnl be careful that we don't match stuff like tclX by accident. -dnl the alternative search directory is involked by --with-tclinclude -AC_DEFUN(CYG_AC_PATH_TCL, [ - CYG_AC_PATH_TCLH - CYG_AC_PATH_TCLCONFIG - CYG_AC_LOAD_TCLCONFIG -]) -AC_DEFUN(CYG_AC_PATH_TCLH, [ -dirlist=".. ../../ ../../../ ../../../../ ../../../../../ ../../../../../../ ../../../../../../.. ../../../../../../../.. ../../../../../../../../.. ../../../../../../../../../.." -no_tcl=true -AC_MSG_CHECKING(for Tcl headers in the source tree) -AC_ARG_WITH(tclinclude, [ --with-tclinclude directory where tcl headers are], with_tclinclude=${withval}) -AC_CACHE_VAL(ac_cv_c_tclh,[ -dnl first check to see if --with-tclinclude was specified -if test x"${with_tclinclude}" != x ; then - if test -f ${with_tclinclude}/tcl.h ; then - ac_cv_c_tclh=`(cd ${with_tclinclude}; pwd)` - elif test -f ${with_tclinclude}/generic/tcl.h ; then - ac_cv_c_tclh=`(cd ${with_tclinclude}/generic; pwd)` - else - AC_MSG_ERROR([${with_tclinclude} directory doesn't contain headers]) - fi -fi - -dnl next check if it came with Tcl configuration file -if test x"${ac_cv_c_tclconfig}" != x ; then - for i in $dirlist; do - if test -f $ac_cv_c_tclconfig/$i/generic/tcl.h ; then - ac_cv_c_tclh=`(cd $ac_cv_c_tclconfig/$i/generic; pwd)` - break - fi - done -fi - -dnl next check in private source directory -dnl since ls returns lowest version numbers first, reverse its output -if test x"${ac_cv_c_tclh}" = x ; then - dnl find the top level Tcl source directory - for i in $dirlist; do - if test -n "`ls -dr $srcdir/$i/tcl* 2>/dev/null`" ; then - tclpath=$srcdir/$i - break - fi - done - - dnl find the exact Tcl source dir. We do it this way, cause there - dnl might be multiple version of Tcl, and we want the most recent one. - for i in `ls -dr $tclpath/tcl* 2>/dev/null ` ; do - if test -f $i/generic/tcl.h ; then - ac_cv_c_tclh=`(cd $i/generic; pwd)` - break - fi - done -fi - -dnl check if its installed with the compiler -if test x"${ac_cv_c_tclh}" = x ; then - dnl Get the path to the compiler - ccpath=`which ${CC} | sed -e 's:/bin/.*::'`/include - if test -f $ccpath/tcl.h; then - ac_cv_c_tclh=$ccpath - fi -fi - -dnl see if one is installed -if test x"${ac_cv_c_tclh}" = x ; then - AC_MSG_RESULT(none) - AC_CHECK_HEADER(tcl.h, ac_cv_c_tclh=installed, ac_cv_c_tclh="") -else - AC_MSG_RESULT(${ac_cv_c_tclh}) -fi -]) - TCLHDIR="" -if test x"${ac_cv_c_tclh}" = x ; then - AC_MSG_ERROR([Can't find any Tcl headers]) -fi -if test x"${ac_cv_c_tclh}" != x ; then - no_tcl="" - if test x"${ac_cv_c_tclh}" != x"installed" ; then - if test x"${CC}" = xcl ; then - tmp="`cygpath --windows ${ac_cv_c_tclh}`" - ac_cv_c_tclh="`echo $tmp | sed -e s#\\\\\\\\#/#g`" - fi - AC_MSG_RESULT(${ac_cv_c_tclh}) - TCLHDIR="-I${ac_cv_c_tclh}" - fi -fi - -AC_SUBST(TCLHDIR) -]) - -dnl ==================================================================== -dnl Ok, lets find the tcl configuration -AC_DEFUN(CYG_AC_PATH_TCLCONFIG, [ -dirlist=".. ../../ ../../../ ../../../../ ../../../../../ ../../../../../../ ../../../../../../.. ../../../../../../../.. ../../../../../../../../.. ../../../../../../../../../.." -dnl First, look for one uninstalled. -dnl the alternative search directory is invoked by --with-tclconfig -if test x"${no_tcl}" = x ; then - dnl we reset no_tcl in case something fails here - no_tcl=true - AC_ARG_WITH(tclconfig, [ --with-tclconfig directory containing tcl configuration (tclConfig.sh)], - with_tclconfig=${withval}) - AC_MSG_CHECKING([for Tcl configuration script]) - AC_CACHE_VAL(ac_cv_c_tclconfig,[ - - dnl First check to see if --with-tclconfig was specified. - if test x"${with_tclconfig}" != x ; then - if test -f "${with_tclconfig}/tclConfig.sh" ; then - ac_cv_c_tclconfig=`(cd ${with_tclconfig}; pwd)` - else - AC_MSG_ERROR([${with_tclconfig} directory doesn't contain tclConfig.sh]) - fi - fi - - dnl next check if it came with Tcl configuration file in the source tree - if test x"${ac_cv_c_tclconfig}" = x ; then - for i in $dirlist; do - if test -f $srcdir/$i/unix/tclConfig.sh ; then - ac_cv_c_tclconfig=`(cd $srcdir/$i/unix; pwd)` - break - fi - done - fi - dnl check in a few other locations - if test x"${ac_cv_c_tclconfig}" = x ; then - dnl find the top level Tcl source directory - for i in $dirlist; do - if test -n "`ls -dr $i/tcl* 2>/dev/null`" ; then - tclconfpath=$i - break - fi - done - - dnl find the exact Tcl dir. We do it this way, cause there - dnl might be multiple version of Tcl, and we want the most recent one. - for i in `ls -dr $tclconfpath/tcl* 2>/dev/null ` ; do - if test -f $i/unix/tclConfig.sh ; then - ac_cv_c_tclconfig=`(cd $i/unix; pwd)` - break - fi - done - fi - - dnl Check to see if it's installed. We have to look in the $CC path - dnl to find it, cause our $prefix may not match the compilers. - if test x"${ac_cv_c_tclconfig}" = x ; then - dnl Get the path to the compiler - ccpath=`which ${CC} | sed -e 's:/bin/.*::'`/lib - if test -f $ccpath/tclConfig.sh; then - ac_cv_c_tclconfig=$ccpath - fi - fi - ]) dnl end of cache_val - - if test x"${ac_cv_c_tclconfig}" = x ; then - TCLCONFIG="" - AC_MSG_WARN(Can't find Tcl configuration definitions) - else - no_tcl="" - TCLCONFIG=${ac_cv_c_tclconfig}/tclConfig.sh - AC_MSG_RESULT(${TCLCONFIG}) - fi -fi -AC_SUBST(TCLCONFIG) -]) - -dnl Defined as a separate macro so we don't have to cache the values -dnl from PATH_TCLCONFIG (because this can also be cached). -AC_DEFUN(CYG_AC_LOAD_TCLCONFIG, [ - . $TCLCONFIG - -dnl AC_SUBST(TCL_VERSION) -dnl AC_SUBST(TCL_MAJOR_VERSION) -dnl AC_SUBST(TCL_MINOR_VERSION) -dnl AC_SUBST(TCL_CC) - AC_SUBST(TCL_DEFS) - -dnl not used, don't export to save symbols - AC_SUBST(TCL_LIB_FILE) - AC_SUBST(TCL_LIB_FULL_PATH) - AC_SUBST(TCL_LIBS) -dnl not used, don't export to save symbols -dnl AC_SUBST(TCL_PREFIX) - - AC_SUBST(TCL_CFLAGS) - -dnl not used, don't export to save symbols -dnl AC_SUBST(TCL_EXEC_PREFIX) - - AC_SUBST(TCL_SHLIB_CFLAGS) - AC_SUBST(TCL_SHLIB_LD) -dnl don't export, not used outside of configure -dnl AC_SUBST(TCL_SHLIB_LD_LIBS) -dnl AC_SUBST(TCL_SHLIB_SUFFIX) -dnl not used, don't export to save symbols -dnl AC_SUBST(TCL_DL_LIBS) - AC_SUBST(TCL_LD_FLAGS) - AC_SUBST(TCL_LD_SEARCH_FLAGS) -dnl don't export, not used outside of configure -dnl AC_SUBST(TCL_COMPAT_OBJS) - AC_SUBST(TCL_RANLIB) - AC_SUBST(TCL_BUILD_LIB_SPEC) - AC_SUBST(TCL_LIB_SPEC) - AC_SUBST(TCL_BIN_DIR) -dnl AC_SUBST(TCL_LIB_VERSIONS_OK) - -dnl not used, don't export to save symbols -dnl AC_SUBST(TCL_SHARED_LIB_SUFFIX) - -dnl not used, don't export to save symbols -dnl AC_SUBST(TCL_UNSHARED_LIB_SUFFIX) -]) - -dnl ==================================================================== -AC_DEFUN(CYG_AC_PATH_TK, [ - CYG_AC_PATH_TKH - CYG_AC_PATH_TKCONFIG - CYG_AC_LOAD_TKCONFIG -]) -AC_DEFUN(CYG_AC_PATH_TKH, [ -# -# Ok, lets find the tk source trees so we can use the headers -# If the directory (presumably symlink) named "tk" exists, use that one -# in preference to any others. Same logic is used when choosing library -# and again with Tcl. The search order is the best place to look first, then in -# decreasing significance. The loop breaks if the trigger file is found. -# Note the gross little conversion here of srcdir by cd'ing to the found -# directory. This converts the path from a relative to an absolute, so -# recursive cache variables for the path will work right. We check all -# the possible paths in one loop rather than many separate loops to speed -# things up. -# the alternative search directory is involked by --with-tkinclude -# -dirlist=".. ../../ ../../../ ../../../../ ../../../../../ ../../../../../../ ../../../../../../.. ../../../../../../../.. ../../../../../../../../.. ../../../../../../../../../.." -no_tk=true -AC_MSG_CHECKING(for Tk headers in the source tree) -AC_ARG_WITH(tkinclude, [ --with-tkinclude directory where tk headers are], with_tkinclude=${withval}) -AC_CACHE_VAL(ac_cv_c_tkh,[ -dnl first check to see if --with-tkinclude was specified -if test x"${with_tkinclude}" != x ; then - if test -f ${with_tkinclude}/tk.h ; then - ac_cv_c_tkh=`(cd ${with_tkinclude}; pwd)` - elif test -f ${with_tkinclude}/generic/tk.h ; then - ac_cv_c_tkh=`(cd ${with_tkinclude}/generic; pwd)` - else - AC_MSG_ERROR([${with_tkinclude} directory doesn't contain headers]) - fi -fi - -dnl next check if it came with Tk configuration file -if test x"${ac_cv_c_tkconfig}" != x ; then - for i in $dirlist; do - if test -f $ac_cv_c_tkconfig/$i/generic/tk.h ; then - ac_cv_c_tkh=`(cd $ac_cv_c_tkconfig/$i/generic; pwd)` - break - fi - done -fi - -dnl next check in private source directory -dnl since ls returns lowest version numbers first, reverse its output -if test x"${ac_cv_c_tkh}" = x ; then - dnl find the top level Tk source directory - for i in $dirlist; do - if test -n "`ls -dr $srcdir/$i/tk* 2>/dev/null`" ; then - tkpath=$srcdir/$i - break - fi - done - - dnl find the exact Tk source dir. We do it this way, cause there - dnl might be multiple version of Tk, and we want the most recent one. - for i in `ls -dr $tkpath/tk* 2>/dev/null ` ; do - if test -f $i/generic/tk.h ; then - ac_cv_c_tkh=`(cd $i/generic; pwd)` - break - fi - done -fi - -dnl see if one is installed -if test x"${ac_cv_c_tkh}" = x ; then - AC_MSG_RESULT(none) - dnl Get the path to the compiler. We do it this way instead of using - dnl AC_CHECK_HEADER, cause this doesn't depend in having X configured. - ccpath=`which ${CC} | sed -e 's:/bin/.*::'`/include - if test -f $ccpath/tk.h; then - ac_cv_c_tkh=$ccpath - fi -else - AC_MSG_RESULT(${ac_cv_c_tkh}) -fi -]) - TKHDIR="" -if test x"${ac_cv_c_tkh}" = x ; then - AC_MSG_ERROR([Can't find any Tk headers]) -fi -if test x"${ac_cv_c_tkh}" != x ; then - no_tk="" - if test x"${ac_cv_c_tkh}" != x"installed" ; then - if test x"${CC}" = xcl ; then - tmp="`cygpath --windows ${ac_cv_c_tkh}`" - ac_cv_c_tkh="`echo $tmp | sed -e s#\\\\\\\\#/#g`" - fi - AC_MSG_RESULT([found in ${ac_cv_c_tkh}]) - TKHDIR="-I${ac_cv_c_tkh}" - fi -fi - -AC_SUBST(TKHDIR) -]) - -AC_DEFUN(CYG_AC_PATH_TKCONFIG, [ -dirlist=".. ../../ ../../../ ../../../../ ../../../../../ ../../../../../../ ../../../../../../.. ../../../../../../../.. ../../../../../../../../.. ../../../../../../../../../.." -dnl First, look for one uninstalled. -dnl the alternative search directory is invoked by --with-tkconfig -if test x"${no_tk}" = x ; then - dnl we reset no_tk in case something fails here - no_tk=true - AC_ARG_WITH(tkconfig, [ --with-tkconfig directory containing tk configuration (tkConfig.sh)], - with_tkconfig=${withval}) - AC_MSG_CHECKING([for Tk configuration script]) - AC_CACHE_VAL(ac_cv_c_tkconfig,[ - - dnl First check to see if --with-tkconfig was specified. - if test x"${with_tkconfig}" != x ; then - if test -f "${with_tkconfig}/tkConfig.sh" ; then - ac_cv_c_tkconfig=`(cd ${with_tkconfig}; pwd)` - else - AC_MSG_ERROR([${with_tkconfig} directory doesn't contain tkConfig.sh]) - fi - fi - - dnl next check if it came with Tk configuration file in the source tree - if test x"${ac_cv_c_tkconfig}" = x ; then - for i in $dirlist; do - if test -f $srcdir/$i/unix/tkConfig.sh ; then - ac_cv_c_tkconfig=`(cd $srcdir/$i/unix; pwd)` - break - fi - done - fi - dnl check in a few other locations - if test x"${ac_cv_c_tkconfig}" = x ; then - dnl find the top level Tk source directory - for i in $dirlist; do - if test -n "`ls -dr $i/tk* 2>/dev/null`" ; then - tkconfpath=$i - break - fi - done - - dnl find the exact Tk dir. We do it this way, cause there - dnl might be multiple version of Tk, and we want the most recent one. - for i in `ls -dr $tkconfpath/tk* 2>/dev/null ` ; do - if test -f $i/unix/tkConfig.sh ; then - ac_cv_c_tkconfig=`(cd $i/unix; pwd)` - break - fi - done - fi - - dnl Check to see if it's installed. We have to look in the $CC path - dnl to find it, cause our $prefix may not match the compilers. - if test x"${ac_cv_c_tkconfig}" = x ; then - dnl Get the path to the compiler - ccpath=`which ${CC} | sed -e 's:/bin/.*::'`/lib - if test -f $ccpath/tkConfig.sh; then - ac_cv_c_tkconfig=$ccpath - fi - fi - ]) dnl end of cache_val - - if test x"${ac_cv_c_tkconfig}" = x ; then - TKCONFIG="" - AC_MSG_WARN(Can't find Tk configuration definitions) - else - no_tk="" - TKCONFIG=${ac_cv_c_tkconfig}/tkConfig.sh - AC_MSG_RESULT(${TKCONFIG}) - fi -fi -AC_SUBST(TKCONFIG) -]) - -dnl Defined as a separate macro so we don't have to cache the values -dnl from PATH_TKCONFIG (because this can also be cached). -AC_DEFUN(CYG_AC_LOAD_TKCONFIG, [ - if test -f "$TKCONFIG" ; then - . $TKCONFIG - fi - - AC_SUBST(TK_VERSION) -dnl not actually used, don't export to save symbols -dnl AC_SUBST(TK_MAJOR_VERSION) -dnl AC_SUBST(TK_MINOR_VERSION) - AC_SUBST(TK_DEFS) - -dnl not used, don't export to save symbols - AC_SUBST(TK_LIB_FILE) - AC_SUBST(TK_LIB_FULL_PATH) - AC_SUBST(TK_LIBS) -dnl not used, don't export to save symbols -dnl AC_SUBST(TK_PREFIX) - -dnl not used, don't export to save symbols -dnl AC_SUBST(TK_EXEC_PREFIX) - AC_SUBST(TK_BUILD_INCLUDES) - AC_SUBST(TK_XINCLUDES) - AC_SUBST(TK_XLIBSW) - AC_SUBST(TK_BUILD_LIB_SPEC) - AC_SUBST(TK_LIB_SPEC) -]) - -dnl ==================================================================== -dnl Ok, lets find the itcl source trees so we can use the headers -dnl the alternative search directory is involked by --with-itclinclude -AC_DEFUN(CYG_AC_PATH_ITCL, [ - CYG_AC_PATH_ITCLH - CYG_AC_PATH_ITCLLIB - CYG_AC_PATH_ITCLSH - CYG_AC_PATH_ITCLMKIDX -]) -AC_DEFUN(CYG_AC_PATH_ITCLH, [ -dirlist=".. ../../ ../../../ ../../../../ ../../../../../ ../../../../../../ ../../../../../../.. ../../../../../../../.. ../../../../../../../../.. ../../../../../../../../../.." -no_itcl=true -AC_MSG_CHECKING(for Itcl headers in the source tree) -AC_ARG_WITH(itclinclude, [ --with-itclinclude directory where itcl headers are], with_itclinclude=${withval}) -AC_CACHE_VAL(ac_cv_c_itclh,[ -dnl first check to see if --with-itclinclude was specified -if test x"${with_itclinclude}" != x ; then - if test -f ${with_itclinclude}/itcl.h ; then - ac_cv_c_itclh=`(cd ${with_itclinclude}; pwd)` - elif test -f ${with_itclinclude}/src/itcl.h ; then - ac_cv_c_itclh=`(cd ${with_itclinclude}/src; pwd)` - else - AC_MSG_ERROR([${with_itclinclude} directory doesn't contain headers]) - fi -fi - -dnl next check if it came with Itcl configuration file -if test x"${ac_cv_c_itclconfig}" != x ; then - for i in $dirlist; do - if test -f $ac_cv_c_itclconfig/$i/src/itcl.h ; then - ac_cv_c_itclh=`(cd $ac_cv_c_itclconfig/$i/src; pwd)` - break - fi - done -fi - -dnl next check in private source directory -dnl since ls returns lowest version numbers first, reverse its output -if test x"${ac_cv_c_itclh}" = x ; then - dnl find the top level Itcl source directory - for i in $dirlist; do - if test -n "`ls -dr $srcdir/$i/itcl* 2>/dev/null`" ; then - itclpath=$srcdir/$i - break - fi - done - - dnl find the exact Itcl source dir. We do it this way, cause there - dnl might be multiple version of Itcl, and we want the most recent one. - for i in `ls -dr $itclpath/itcl* 2>/dev/null ` ; do - if test -f $i/src/itcl.h ; then - ac_cv_c_itclh=`(cd $i/src; pwd)` - break - fi - done -fi - -dnl see if one is installed -if test x"${ac_cv_c_itclh}" = x ; then - AC_MSG_RESULT(none) - AC_CHECK_HEADER(itcl.h, ac_cv_c_itclh=installed, ac_cv_c_itclh="") -else - AC_MSG_RESULT(${ac_cv_c_itclh}) -fi -]) - ITCLHDIR="" -if test x"${ac_cv_c_itclh}" = x ; then - AC_MSG_ERROR([Can't find any Itcl headers]) -fi -if test x"${ac_cv_c_itclh}" != x ; then - no_itcl="" - if test x"${ac_cv_c_itclh}" != x"installed" ; then - AC_MSG_RESULT(${ac_cv_c_itclh}) - ITCLHDIR="-I${ac_cv_c_itclh}" - fi -fi - -AC_SUBST(ITCLHDIR) -]) - -dnl Ok, lets find the itcl library -dnl First, look for one uninstalled. -dnl the alternative search directory is invoked by --with-itcllib -AC_DEFUN(CYG_AC_PATH_ITCLLIB, [ -dirlist=".. ../../ ../../../ ../../../../ ../../../../../ ../../../../../../ ../../../../../../.. ../../../../../../../.. ../../../../../../../../.. ../../../../../../../../../.." -if test x"${no_itcl}" = x ; then - dnl we reset no_itcl incase something fails here - no_itcl=true - AC_ARG_WITH(itcllib, - [ --with-itcllib directory where the itcl library is], - with_itcllib=${withval}) - AC_MSG_CHECKING([for Itcl library]) - AC_CACHE_VAL(ac_cv_c_itcllib,[ - dnl First check to see if --with-itcllib was specified. - if test x"${with_itcllib}" != x ; then - if test -f "${with_itcllib}/libitcl$TCL_SHARED_LIB_SUFFIX" ; then - ac_cv_c_itcllib=`(cd ${with_itcllib}; pwd)`/libitcl$TCL_SHARED_LIB_SUFFIX - else - if test -f "${with_itcllib}/libitcl$TCL_UNSHARED_LIB_SUFFIX"; then - ac_cv_c_itcllib=`(cd ${with_itcllib}; pwd)`/libitcl$TCL_UNSHARED_LIB_SUFFIX - fi - fi - fi - dnl then check for a Itcl library. Since these are uninstalled, - dnl use the simple lib name root. - if test x"${ac_cv_c_itcllib}" = x ; then - dnl find the top level Itcl build directory - for i in $dirlist; do - if test -n "`ls -dr $i/itcl* 2>/dev/null`" ; then - itclpath=$i/itcl - break - fi - done - dnl Itcl 7.5 and greater puts library in subdir. Look there first. - if test -f "$itclpath/src/libitcl.$TCL_SHLIB_SUFFIX" ; then - ac_cv_c_itcllib=`(cd $itclpath/src; pwd)` - elif test -f "$itclpath/src/libitcl.a"; then - ac_cv_c_itcllib=`(cd $itclpath/src; pwd)` - fi - fi - dnl check in a few other private locations - if test x"${ac_cv_c_itcllib}" = x ; then - for i in ${dirlist}; do - if test -n "`ls -dr ${srcdir}/$i/itcl* 2>/dev/null`" ; then - itclpath=${srcdir}/$i - break - fi - done - for i in `ls -dr ${itclpath}/itcl* 2>/dev/null` ; do - dnl Itcl 7.5 and greater puts library in subdir. Look there first. - if test -f "$i/src/libitcl$TCL_SHLIB_SUFFIX" ; then - ac_cv_c_itcllib=`(cd $i/src; pwd)` - break - elif test -f "$i/src/libitcl.a"; then - ac_cv_c_itcllib=`(cd $i/src; pwd)` - break - fi - done - fi - - dnl see if one is conveniently installed with the compiler - if test x"${ac_cv_c_itcllib}" = x ; then - dnl Get the path to the compiler - ccpath=`which ${CC} | sed -e 's:/bin/.*::'`/lib - dnl Itcl 7.5 and greater puts library in subdir. Look there first. - if test -f "${ccpath}/libitcl$TCL_SHLIB_SUFFIX" ; then - ac_cv_c_itcllib=`(cd ${ccpath}; pwd)` - elif test -f "${ccpath}/libitcl.a"; then - ac_cv_c_itcllib=`(cd ${ccpath}; pwd)` - fi - fi - ]) - if test x"${ac_cv_c_itcllib}" = x ; then - ITCLLIB="" - AC_MSG_WARN(Can't find Itcl library) - else - ITCLLIB="-L${ac_cv_c_itcllib}" - AC_MSG_RESULT(${ac_cv_c_itcllib}) - no_itcl="" - fi -fi - -AC_PROVIDE([$0]) -AC_SUBST(ITCLLIB) -]) - - -dnl ==================================================================== -dnl Ok, lets find the itcl source trees so we can use the itcl_sh script -dnl the alternative search directory is involked by --with-itclinclude -AC_DEFUN(CYG_AC_PATH_ITCLSH, [ -dirlist=".. ../../ ../../../ ../../../../ ../../../../../ ../../../../../../ ../../../../../../.. ../../../../../../../.. ../../../../../../../../.. ../../../../../../../../../.." -no_itcl=true -AC_MSG_CHECKING(for the itcl_sh script) -AC_ARG_WITH(itclinclude, [ --with-itclinclude directory where itcl headers are], with_itclinclude=${withval}) -AC_CACHE_VAL(ac_cv_c_itclsh,[ -dnl first check to see if --with-itclinclude was specified -if test x"${with_itclinclude}" != x ; then - if test -f ${with_itclinclude}/itcl_sh ; then - ac_cv_c_itclsh=`(cd ${with_itclinclude}; pwd)` - elif test -f ${with_itclinclude}/src/itcl_sh ; then - ac_cv_c_itclsh=`(cd ${with_itclinclude}/src; pwd)` - else - AC_MSG_ERROR([${with_itclinclude} directory doesn't contain itcl_sh]) - fi -fi - -dnl next check in private source directory -dnl since ls returns lowest version numbers first, reverse its output -if test x"${ac_cv_c_itclsh}" = x ; then - dnl find the top level Itcl source directory - for i in $dirlist; do - if test -n "`ls -dr $srcdir/$i/itcl* 2>/dev/null`" ; then - itclpath=$srcdir/$i - break - fi - done - - dnl find the exact Itcl source dir. We do it this way, cause there - dnl might be multiple version of Itcl, and we want the most recent one. - for i in `ls -dr $itclpath/itcl* 2>/dev/null ` ; do - if test -f $i/src/itcl_sh ; then - ac_cv_c_itclsh=`(cd $i/src; pwd)`/itcl_sh - break - fi - done -fi - -dnl see if one is installed -if test x"${ac_cv_c_itclsh}" = x ; then - AC_MSG_RESULT(none) - AC_PATH_PROG(ac_cv_c_itclsh, itcl_sh) -else - AC_MSG_RESULT(${ac_cv_c_itclsh}) -fi -]) - -if test x"${ac_cv_c_itclsh}" = x ; then - AC_MSG_ERROR([Can't find the itcl_sh script]) -fi -if test x"${ac_cv_c_itclsh}" != x ; then - no_itcl="" - AC_MSG_RESULT(${ac_cv_c_itclsh}) - ITCLSH="${ac_cv_c_itclsh}" -fi -AC_SUBST(ITCLSH) -]) - - -dnl ==================================================================== -dnl Ok, lets find the itcl source trees so we can use the itcl_sh script -dnl the alternative search directory is involked by --with-itclinclude -AC_DEFUN(CYG_AC_PATH_ITCLMKIDX, [ -dirlist=".. ../../ ../../../ ../../../../ ../../../../../ ../../../../../../ ../../../../../../.. ../../../../../../../.. ../../../../../../../../.. ../../../../../../../../../.." -no_itcl=true -AC_MSG_CHECKING(for itcl_mkindex.tcl script) -AC_ARG_WITH(itclinclude, [ --with-itclinclude directory where itcl headers are], with_itclinclude=${withval}) -AC_CACHE_VAL(ac_cv_c_itclmkidx,[ -dnl first check to see if --with-itclinclude was specified -if test x"${with_itclinclude}" != x ; then - if test -f ${with_itclinclude}/itcl_sh ; then - ac_cv_c_itclmkidx=`(cd ${with_itclinclude}; pwd)` - elif test -f ${with_itclinclude}/src/itcl_sh ; then - ac_cv_c_itclmkidx=`(cd ${with_itclinclude}/src; pwd)` - else - AC_MSG_ERROR([${with_itclinclude} directory doesn't contain itcl_sh]) - fi -fi - -dnl next check in private source directory -dnl since ls returns lowest version numbers first, reverse its output -if test x"${ac_cv_c_itclmkidx}" = x ; then - dnl find the top level Itcl source directory - for i in $dirlist; do - if test -n "`ls -dr $srcdir/$i/itcl* 2>/dev/null`" ; then - itclpath=$srcdir/$i - break - fi - done - - dnl find the exact Itcl source dir. We do it this way, cause there - dnl might be multiple version of Itcl, and we want the most recent one. - for i in `ls -dr $itclpath/itcl* 2>/dev/null ` ; do - if test -f $i/library/itcl_mkindex.tcl ; then - ac_cv_c_itclmkidx=`(cd $i/library; pwd)`/itcl_mkindex.tcl - break - fi - done -fi -if test x"${ac_cv_c_itclmkidx}" = x ; then - dnl Get the path to the compiler - ccpath=`which ${CC} | sed -e 's:/bin/.*::'`/share - dnl Itcl 7.5 and greater puts library in subdir. Look there first. - for i in `ls -dr $ccpath/itcl* 2>/dev/null ` ; do - if test -f $i/itcl_mkindex.tcl ; then - ac_cv_c_itclmkidx=`(cd $i; pwd)`/itcl_mkindex.tcl - break - fi - done -fi -]) - -if test x"${ac_cv_c_itclmkidx}" = x ; then - AC_MSG_ERROR([Can't find the itcl_mkindex.tcl script]) -fi -if test x"${ac_cv_c_itclmkidx}" != x ; then - no_itcl="" - AC_MSG_RESULT(${ac_cv_c_itclmkidx}) - ITCLMKIDX="${ac_cv_c_itclmkidx}" -else - AC_MSG_RESULT(none) -fi -AC_SUBST(ITCLMKIDX) -]) - -dnl ==================================================================== -dnl Ok, lets find the tix source trees so we can use the headers -dnl the alternative search directory is involked by --with-tixinclude -AC_DEFUN(CYG_AC_PATH_TIX, [ - CYG_AC_PATH_TIXH - CYG_AC_PATH_TIXLIB -]) -AC_DEFUN(CYG_AC_PATH_TIXH, [ -dirlist=".. ../../ ../../../ ../../../../ ../../../../../ ../../../../../../ ../../../../../../.. ../../../../../../../.. ../../../../../../../../.. ../../../../../../../../../.." -no_tix=true -AC_MSG_CHECKING(for Tix headers in the source tree) -AC_ARG_WITH(tixinclude, [ --with-tixinclude directory where tix headers are], with_tixinclude=${withval}) -AC_CACHE_VAL(ac_cv_c_tixh,[ -dnl first check to see if --with-tixinclude was specified -if test x"${with_tixinclude}" != x ; then - if test -f ${with_tixinclude}/tix.h ; then - ac_cv_c_tixh=`(cd ${with_tixinclude}; pwd)` - elif test -f ${with_tixinclude}/generic/tix.h ; then - ac_cv_c_tixh=`(cd ${with_tixinclude}/generic; pwd)` - else - AC_MSG_ERROR([${with_tixinclude} directory doesn't contain headers]) - fi -fi - -dnl next check if it came with Tix configuration file -if test x"${ac_cv_c_tixconfig}" != x ; then - for i in $dirlist; do - if test -f $ac_cv_c_tixconfig/$i/generic/tix.h ; then - ac_cv_c_tixh=`(cd $ac_cv_c_tixconfig/$i/generic; pwd)` - break - fi - done -fi - -dnl next check in private source directory -dnl since ls returns lowest version numbers first, reverse its output -if test x"${ac_cv_c_tixh}" = x ; then - dnl find the top level Tix source directory - for i in $dirlist; do - if test -n "`ls -dr $srcdir/$i/tix* 2>/dev/null`" ; then - tixpath=$srcdir/$i - break - fi - done - - dnl find the exact Tix source dir. We do it this way, cause there - dnl might be multiple version of Tix, and we want the most recent one. - for i in `ls -dr $tixpath/tix* 2>/dev/null ` ; do - if test -f $i/generic/tix.h ; then - ac_cv_c_tixh=`(cd $i/generic; pwd)` - break - fi - done -fi - -dnl see if one is installed -if test x"${ac_cv_c_tixh}" = x ; then - AC_MSG_RESULT(none) - dnl Get the path to the compiler - - dnl Get the path to the compiler. We do it this way instead of using - dnl AC_CHECK_HEADER, cause this doesn't depend in having X configured. - ccpath=`which ${CC} | sed -e 's:/bin/.*::'`/include - if test -f $ccpath/tix.h; then - ac_cv_c_tixh=installed - fi -else - AC_MSG_RESULT(${ac_cv_c_tixh}) -fi -]) -if test x"${ac_cv_c_tixh}" = x ; then - AC_MSG_ERROR([Can't find any Tix headers]) -fi -if test x"${ac_cv_c_tixh}" != x ; then - no_tix="" - AC_MSG_RESULT(${ac_cv_c_tixh}) - if test x"${ac_cv_c_tixh}" != x"installed" ; then - TIXHDIR="-I${ac_cv_c_tixh}" - fi -fi - -AC_SUBST(TIXHDIR) -]) - -AC_DEFUN(CYG_AC_PATH_TIXCONFIG, [ -# -# Ok, lets find the tix configuration -# First, look for one uninstalled. -# the alternative search directory is invoked by --with-tixconfig -# - -if test x"${no_tix}" = x ; then - # we reset no_tix in case something fails here - no_tix=true - AC_ARG_WITH(tixconfig, [ --with-tixconfig directory containing tix configuration (tixConfig.sh)], - with_tixconfig=${withval}) - AC_MSG_CHECKING([for Tix configuration]) - AC_CACHE_VAL(ac_cv_c_tixconfig,[ - - # First check to see if --with-tixconfig was specified. - if test x"${with_tixconfig}" != x ; then - if test -f "${with_tixconfig}/tixConfig.sh" ; then - ac_cv_c_tixconfig=`(cd ${with_tixconfig}; pwd)` - else - AC_MSG_ERROR([${with_tixconfig} directory doesn't contain tixConfig.sh]) - fi - fi - - # then check for a private Tix library - if test x"${ac_cv_c_tixconfig}" = x ; then - for i in \ - ../tix \ - `ls -dr ../tix[[4]]* 2>/dev/null` \ - ../../tix \ - `ls -dr ../../tix[[4]]* 2>/dev/null` \ - ../../../tix \ - `ls -dr ../../../tix[[4]]* 2>/dev/null` ; do - if test -f "$i/tixConfig.sh" ; then - ac_cv_c_tixconfig=`(cd $i; pwd)` - break - fi - done - fi - # check in a few common install locations - if test x"${ac_cv_c_tixconfig}" = x ; then - for i in `ls -d ${prefix}/lib /usr/local/lib 2>/dev/null` ; do - if test -f "$i/tixConfig.sh" ; then - ac_cv_c_tkconfig=`(cd $i; pwd)` - break - fi - done - fi - # check in a few other private locations - if test x"${ac_cv_c_tixconfig}" = x ; then - for i in \ - ${srcdir}/../tix \ - `ls -dr ${srcdir}/../tix[[4-9]]* 2>/dev/null` ; do - if test -f "$i/tixConfig.sh" ; then - ac_cv_c_tixconfig=`(cd $i; pwd)` - break - fi - done - fi - ]) - if test x"${ac_cv_c_tixconfig}" = x ; then - TIXCONFIG="# no Tix configs found" - AC_MSG_WARN(Can't find Tix configuration definitions) - else - no_tix= - TIXCONFIG=${ac_cv_c_tixconfig}/tixConfig.sh - AC_MSG_RESULT(found $TIXCONFIG) - fi -fi - -]) - -# Defined as a separate macro so we don't have to cache the values -# from PATH_TIXCONFIG (because this can also be cached). -AC_DEFUN(CYG_AC_LOAD_TIXCONFIG, [ - if test -f "$TIXCONFIG" ; then - . $TIXCONFIG - fi - - AC_SUBST(TIX_BUILD_LIB_SPEC) - AC_SUBST(TIX_LIB_FULL_PATH) -]) - -AC_DEFUN(CYG_AC_PATH_ITCLCONFIG, [ -# -# Ok, lets find the itcl configuration -# First, look for one uninstalled. -# the alternative search directory is invoked by --with-itclconfig -# - -if test x"${no_itcl}" = x ; then - # we reset no_itcl in case something fails here - no_itcl=true - AC_ARG_WITH(itclconfig, [ --with-itclconfig directory containing itcl configuration (itclConfig.sh)], - with_itclconfig=${withval}) - AC_MSG_CHECKING([for Itcl configuration]) - AC_CACHE_VAL(ac_cv_c_itclconfig,[ - - # First check to see if --with-itclconfig was specified. - if test x"${with_itclconfig}" != x ; then - if test -f "${with_itclconfig}/itclConfig.sh" ; then - ac_cv_c_itclconfig=`(cd ${with_itclconfig}; pwd)` - else - AC_MSG_ERROR([${with_itclconfig} directory doesn't contain itclConfig.sh]) - fi - fi - - # then check for a private itcl library - if test x"${ac_cv_c_itclconfig}" = x ; then - for i in \ - ../itcl/itcl \ - `ls -dr ../itcl/itcl[[3]]* 2>/dev/null` \ - ../../itcl/itcl \ - `ls -dr ../../itcl/itcl[[3]]* 2>/dev/null` \ - ../../../itcl/itcl \ - `ls -dr ../../../itcl/itcl[[3]]* 2>/dev/null` ; do - if test -f "$i/itclConfig.sh" ; then - ac_cv_c_itclconfig=`(cd $i; pwd)` - break - fi - done - fi - # check in a few common install locations - if test x"${ac_cv_c_itclconfig}" = x ; then - for i in `ls -d ${prefix}/lib /usr/local/lib 2>/dev/null` ; do - if test -f "$i/itclConfig.sh" ; then - ac_cv_c_itclconfig=`(cd $i; pwd)` - break - fi - done - fi - # check in a few other private locations - if test x"${ac_cv_c_itclconfig}" = x ; then - for i in \ - ${srcdir}/../itcl/itcl \ - `ls -dr ${srcdir}/../itcl/itcl[[3]]* 2>/dev/null` ; do - if test -f "$i/itcl/itclConfig.sh" ; then - ac_cv_c_itclconfig=`(cd $i; pwd)` - break - fi - done - fi - ]) - if test x"${ac_cv_c_itclconfig}" = x ; then - ITCLCONFIG="# no itcl configs found" - AC_MSG_WARN(Can't find itcl configuration definitions) - else - no_itcl= - ITCLCONFIG=${ac_cv_c_itclconfig}/itclConfig.sh - AC_MSG_RESULT(found $ITCLCONFIG) - fi -fi - -]) - -# Defined as a separate macro so we don't have to cache the values -# from PATH_ITCLCONFIG (because this can also be cached). -AC_DEFUN(CYG_AC_LOAD_ITCLCONFIG, [ - if test -f "$ITCLCONFIG" ; then - . $ITCLCONFIG - fi - - AC_SUBST(ITCL_BUILD_LIB_SPEC) - AC_SUBST(ITCL_SH) - AC_SUBST(ITCL_LIB_FILE) - AC_SUBST(ITCL_LIB_FULL_PATH) - -]) - - -AC_DEFUN(CYG_AC_PATH_ITKCONFIG, [ -# -# Ok, lets find the itk configuration -# First, look for one uninstalled. -# the alternative search directory is invoked by --with-itkconfig -# - -if test x"${no_itk}" = x ; then - # we reset no_itk in case something fails here - no_itk=true - AC_ARG_WITH(itkconfig, [ --with-itkconfig directory containing itk configuration (itkConfig.sh)], - with_itkconfig=${withval}) - AC_MSG_CHECKING([for Itk configuration]) - AC_CACHE_VAL(ac_cv_c_itkconfig,[ - - # First check to see if --with-itkconfig was specified. - if test x"${with_itkconfig}" != x ; then - if test -f "${with_itkconfig}/itkConfig.sh" ; then - ac_cv_c_itkconfig=`(cd ${with_itkconfig}; pwd)` - else - AC_MSG_ERROR([${with_itkconfig} directory doesn't contain itkConfig.sh]) - fi - fi - - # then check for a private itk library - if test x"${ac_cv_c_itkconfig}" = x ; then - for i in \ - ../itcl/itk \ - `ls -dr ../itcl/itk[[3]]* 2>/dev/null` \ - ../../itcl/itk \ - `ls -dr ../../itcl/itk[[3]]* 2>/dev/null` \ - ../../../itcl/itk \ - `ls -dr ../../../itcl/itk[[3]]* 2>/dev/null` ; do - if test -f "$i/itkConfig.sh" ; then - ac_cv_c_itkconfig=`(cd $i; pwd)` - break - fi - done - fi - # check in a few common install locations - if test x"${ac_cv_c_itkconfig}" = x ; then - for i in `ls -d ${prefix}/lib /usr/local/lib 2>/dev/null` ; do - if test -f "$i/itcl/itkConfig.sh" ; then - ac_cv_c_itkconfig=`(cd $i; pwd)` - break - fi - done - fi - # check in a few other private locations - if test x"${ac_cv_c_itkconfig}" = x ; then - for i in \ - ${srcdir}/../itcl/itk \ - `ls -dr ${srcdir}/../itcl/itk[[3]]* 2>/dev/null` ; do - if test -f "$i/itkConfig.sh" ; then - ac_cv_c_itkconfig=`(cd $i; pwd)` - break - fi - done - fi - ]) - if test x"${ac_cv_c_itkconfig}" = x ; then - ITCLCONFIG="# no itk configs found" - AC_MSG_WARN(Can't find itk configuration definitions) - else - no_itk= - ITKCONFIG=${ac_cv_c_itkconfig}/itkConfig.sh - AC_MSG_RESULT(found $ITKCONFIG) - fi -fi - -]) - -# Defined as a separate macro so we don't have to cache the values -# from PATH_ITKCONFIG (because this can also be cached). -AC_DEFUN(CYG_AC_LOAD_ITKCONFIG, [ - if test -f "$ITKCONFIG" ; then - . $ITKCONFIG - fi - - AC_SUBST(ITK_BUILD_LIB_SPEC) - AC_SUBST(ITK_LIB_FILE) - AC_SUBST(ITK_LIB_FULL_PATH) -]) - - -dnl ==================================================================== -dnl Ok, lets find the libgui source trees so we can use the headers -dnl the alternative search directory is involked by --with-libguiinclude -AC_DEFUN(CYG_AC_PATH_LIBGUI, [ - CYG_AC_PATH_LIBGUIH - CYG_AC_PATH_LIBGUILIB -]) -AC_DEFUN(CYG_AC_PATH_LIBGUIH, [ -dirlist=".. ../../ ../../../ ../../../../ ../../../../../ ../../../../../../ ../../../../../../.. ../../../../../../../.. ../../../../../../../../.. ../../../../../../../../../..../../../../../../../../../../.." -no_libgui=true -AC_MSG_CHECKING(for Libgui headers in the source tree) -AC_ARG_WITH(libguiinclude, [ --with-libguiinclude directory where libgui headers are], with_libguiinclude=${withval}) -AC_CACHE_VAL(ac_cv_c_libguih,[ -dnl first check to see if --with-libguiinclude was specified -if test x"${with_libguiinclude}" != x ; then - if test -f ${with_libguiinclude}/guitcl.h ; then - ac_cv_c_libguih=`(cd ${with_libguiinclude}; pwd)` - elif test -f ${with_libguiinclude}/src/guitcl.h ; then - ac_cv_c_libguih=`(cd ${with_libguiinclude}/src; pwd)` - else - AC_MSG_ERROR([${with_libguiinclude} directory doesn't contain headers]) - fi -fi - -dnl next check if it came with Libgui configuration file -if test x"${ac_cv_c_libguiconfig}" != x ; then - for i in $dirlist; do - if test -f $ac_cv_c_libguiconfig/$i/src/guitcl.h ; then - ac_cv_c_libguih=`(cd $ac_cv_c_libguiconfig/$i/src; pwd)` - break - fi - done -fi - -dnl next check in private source directory -dnl since ls returns lowest version numbers first, reverse its output -if test x"${ac_cv_c_libguih}" = x ; then - dnl find the top level Libgui source directory - for i in $dirlist; do - if test -n "`ls -dr $srcdir/$i/libgui* 2>/dev/null`" ; then - libguipath=$srcdir/$i - break - fi - done - - dnl find the exact Libgui source dir. We do it this way, cause there - dnl might be multiple version of Libgui, and we want the most recent one. - for i in `ls -dr $libguipath/libgui* 2>/dev/null ` ; do - if test -f $i/src/guitcl.h ; then - ac_cv_c_libguih=`(cd $i/src; pwd)` - break - fi - done -fi - -dnl see if one is installed -if test x"${ac_cv_c_libguih}" = x ; then - AC_MSG_RESULT(none) - AC_CHECK_HEADER(guitcl.h, ac_cv_c_libguih=installed, ac_cv_c_libguih="") -fi -]) -LIBGUIHDIR="" -if test x"${ac_cv_c_libguih}" = x ; then - AC_MSG_WARN([Can't find any Libgui headers]) -fi -if test x"${ac_cv_c_libguih}" != x ; then - no_libgui="" - if test x"${ac_cv_c_libguih}" != x"installed" ; then - LIBGUIHDIR="-I${ac_cv_c_libguih}" - fi -fi -AC_MSG_RESULT(${ac_cv_c_libguih}) -AC_SUBST(LIBGUIHDIR) -]) - -dnl ==================================================================== -dnl find the GUI library -AC_DEFUN(CYG_AC_PATH_LIBGUILIB, [ -AC_MSG_CHECKING(for GUI library in the build tree) -dirlist=".. ../../ ../../../ ../../../../ ../../../../../ ../../../../../../ ../../../../../../.. ../../../../../../../.. ../../../../../../../../.. ../../../../../../../../../.." -dnl look for the library -AC_MSG_CHECKING(for GUI library) -AC_CACHE_VAL(ac_cv_c_libguilib,[ -if test x"${ac_cv_c_libguilib}" = x ; then - for i in $dirlist; do - if test -f "$i/libgui/src/Makefile" ; then - ac_cv_c_libguilib=`(cd $i/libgui/src; pwd)` - break - fi - done -fi -]) -if test x"${ac_cv_c_libguilib}" != x ; then - GUILIB="${GUILIB} -L${ac_cv_c_libguilib}" - LIBGUILIB="-lgui" - AC_MSG_RESULT(${ac_cv_c_libguilib}) -else - AC_MSG_RESULT(none) -fi - -AC_SUBST(GUILIB) -AC_SUBST(LIBGUILIB) -]) diff --git a/contrib/gcc/config/mh-a68bsd b/contrib/gcc/config/mh-a68bsd deleted file mode 100644 index c991289..0000000 --- a/contrib/gcc/config/mh-a68bsd +++ /dev/null @@ -1,12 +0,0 @@ -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 diff --git a/contrib/gcc/config/mh-aix386 b/contrib/gcc/config/mh-aix386 deleted file mode 100644 index 4accd1c..0000000 --- a/contrib/gcc/config/mh-aix386 +++ /dev/null @@ -1 +0,0 @@ -RANLIB = @: diff --git a/contrib/gcc/config/mh-apollo68 b/contrib/gcc/config/mh-apollo68 deleted file mode 100644 index 4497ed9..0000000 --- a/contrib/gcc/config/mh-apollo68 +++ /dev/null @@ -1,3 +0,0 @@ -HDEFINES = -DUSG -RANLIB=true -CC= cc -A ansi -A runtype,any -A systype,any -U__STDC__ -DUSG diff --git a/contrib/gcc/config/mh-armpic b/contrib/gcc/config/mh-armpic deleted file mode 100644 index 35cf2c8..0000000 --- a/contrib/gcc/config/mh-armpic +++ /dev/null @@ -1 +0,0 @@ -PICFLAG=-fPIC diff --git a/contrib/gcc/config/mh-cxux b/contrib/gcc/config/mh-cxux deleted file mode 100644 index 54b2a16..0000000 --- a/contrib/gcc/config/mh-cxux +++ /dev/null @@ -1,14 +0,0 @@ -# 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 diff --git a/contrib/gcc/config/mh-cygwin b/contrib/gcc/config/mh-cygwin deleted file mode 100644 index 241027f..0000000 --- a/contrib/gcc/config/mh-cygwin +++ /dev/null @@ -1,6 +0,0 @@ -EXTRA_TARGET_HOST_ALL_MODULES=all-libtermcap -EXTRA_TARGET_HOST_INSTALL_MODULES=install-libtermcap - -all-gdb: all-libtermcap - -install-gdb: all-libtermcap diff --git a/contrib/gcc/config/mh-decstation b/contrib/gcc/config/mh-decstation deleted file mode 100644 index 3720192..0000000 --- a/contrib/gcc/config/mh-decstation +++ /dev/null @@ -1,5 +0,0 @@ -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" diff --git a/contrib/gcc/config/mh-delta88 b/contrib/gcc/config/mh-delta88 deleted file mode 100644 index bc9c453..0000000 --- a/contrib/gcc/config/mh-delta88 +++ /dev/null @@ -1,4 +0,0 @@ -RANLIB = true - - - diff --git a/contrib/gcc/config/mh-dgux b/contrib/gcc/config/mh-dgux deleted file mode 100644 index e7d85d6..0000000 --- a/contrib/gcc/config/mh-dgux +++ /dev/null @@ -1,4 +0,0 @@ -HDEFINES=-DHOST_SYS=DGUX_SYS -CC=gcc -Wall -ansi -D__using_DGUX -RANLIB=true - diff --git a/contrib/gcc/config/mh-dgux386 b/contrib/gcc/config/mh-dgux386 deleted file mode 100644 index 15885c3..0000000 --- a/contrib/gcc/config/mh-dgux386 +++ /dev/null @@ -1,22 +0,0 @@ -# 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 - diff --git a/contrib/gcc/config/mh-djgpp b/contrib/gcc/config/mh-djgpp deleted file mode 100644 index 88d250a..0000000 --- a/contrib/gcc/config/mh-djgpp +++ /dev/null @@ -1,14 +0,0 @@ -# Shorten the target alias so when it is used to set 'libsubdir' -# the name will work in both short and long filename environments. -ifeq ($(findstring -pc-msdosdjgpp,$(target_alias)),-pc-msdosdjgpp) -target_alias=djgpp -endif - -# The version string must be modified to contain just one dot -# because DOS filenames can only have one dot when long filenames -# are not available. -__version:=$(gcc_version) -__version:=$(subst ., ,$(__version)) -ifeq ($(words $(__version)),3) -gcc_version=$(word 1,$(__version)).$(word 2,$(__version))$(word 3,$(__version)) -endif diff --git a/contrib/gcc/config/mh-elfalphapic b/contrib/gcc/config/mh-elfalphapic deleted file mode 100644 index 35cf2c8..0000000 --- a/contrib/gcc/config/mh-elfalphapic +++ /dev/null @@ -1 +0,0 @@ -PICFLAG=-fPIC diff --git a/contrib/gcc/config/mh-hp300 b/contrib/gcc/config/mh-hp300 deleted file mode 100644 index 761724d..0000000 --- a/contrib/gcc/config/mh-hp300 +++ /dev/null @@ -1,13 +0,0 @@ -# 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 = diff --git a/contrib/gcc/config/mh-hpux b/contrib/gcc/config/mh-hpux deleted file mode 100644 index 4d71c9d..0000000 --- a/contrib/gcc/config/mh-hpux +++ /dev/null @@ -1,4 +0,0 @@ -# Define SYSV as -DSYSV if you are using a System V operating system. -CC = cc -Wp,-H256000 -SYSV = -DSYSV -RANLIB = true diff --git a/contrib/gcc/config/mh-hpux8 b/contrib/gcc/config/mh-hpux8 deleted file mode 100644 index 4d71c9d..0000000 --- a/contrib/gcc/config/mh-hpux8 +++ /dev/null @@ -1,4 +0,0 @@ -# Define SYSV as -DSYSV if you are using a System V operating system. -CC = cc -Wp,-H256000 -SYSV = -DSYSV -RANLIB = true diff --git a/contrib/gcc/config/mh-i370pic b/contrib/gcc/config/mh-i370pic deleted file mode 100644 index 35cf2c8..0000000 --- a/contrib/gcc/config/mh-i370pic +++ /dev/null @@ -1 +0,0 @@ -PICFLAG=-fPIC diff --git a/contrib/gcc/config/mh-ia64pic b/contrib/gcc/config/mh-ia64pic deleted file mode 100644 index 92e48d9..0000000 --- a/contrib/gcc/config/mh-ia64pic +++ /dev/null @@ -1 +0,0 @@ -PICFLAG=-fpic diff --git a/contrib/gcc/config/mh-interix b/contrib/gcc/config/mh-interix deleted file mode 100644 index 19b8ecf..0000000 --- a/contrib/gcc/config/mh-interix +++ /dev/null @@ -1,14 +0,0 @@ -# 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= diff --git a/contrib/gcc/config/mh-irix4 b/contrib/gcc/config/mh-irix4 deleted file mode 100644 index 6872145..0000000 --- a/contrib/gcc/config/mh-irix4 +++ /dev/null @@ -1,7 +0,0 @@ -# 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 diff --git a/contrib/gcc/config/mh-irix5 b/contrib/gcc/config/mh-irix5 deleted file mode 100644 index 8bd7c99..0000000 --- a/contrib/gcc/config/mh-irix5 +++ /dev/null @@ -1,3 +0,0 @@ -# Makefile changes for SGI's running IRIX-5.x. -SYSV = -DSYSV -RANLIB = true diff --git a/contrib/gcc/config/mh-irix6 b/contrib/gcc/config/mh-irix6 deleted file mode 100644 index e792678..0000000 --- a/contrib/gcc/config/mh-irix6 +++ /dev/null @@ -1,3 +0,0 @@ -# Makefile changes for SGI's running IRIX-6.x. -SYSV = -DSYSV -RANLIB = true diff --git a/contrib/gcc/config/mh-lynxos b/contrib/gcc/config/mh-lynxos deleted file mode 100644 index 9afcb79..0000000 --- a/contrib/gcc/config/mh-lynxos +++ /dev/null @@ -1,2 +0,0 @@ -# /bin/cc is less than useful for our purposes. Always use GCC -CC = /bin/gcc diff --git a/contrib/gcc/config/mh-lynxrs6k b/contrib/gcc/config/mh-lynxrs6k deleted file mode 100644 index b279399..0000000 --- a/contrib/gcc/config/mh-lynxrs6k +++ /dev/null @@ -1,8 +0,0 @@ -# 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 diff --git a/contrib/gcc/config/mh-m68kpic b/contrib/gcc/config/mh-m68kpic deleted file mode 100644 index 92e48d9..0000000 --- a/contrib/gcc/config/mh-m68kpic +++ /dev/null @@ -1 +0,0 @@ -PICFLAG=-fpic diff --git a/contrib/gcc/config/mh-mingw32 b/contrib/gcc/config/mh-mingw32 deleted file mode 100644 index 8c4839d..0000000 --- a/contrib/gcc/config/mh-mingw32 +++ /dev/null @@ -1,12 +0,0 @@ -# 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 diff --git a/contrib/gcc/config/mh-ncr3000 b/contrib/gcc/config/mh-ncr3000 deleted file mode 100644 index 5bbd803..0000000 --- a/contrib/gcc/config/mh-ncr3000 +++ /dev/null @@ -1,17 +0,0 @@ -# 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 diff --git a/contrib/gcc/config/mh-ncrsvr43 b/contrib/gcc/config/mh-ncrsvr43 deleted file mode 100644 index 43b0991..0000000 --- a/contrib/gcc/config/mh-ncrsvr43 +++ /dev/null @@ -1,9 +0,0 @@ -# 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 diff --git a/contrib/gcc/config/mh-necv4 b/contrib/gcc/config/mh-necv4 deleted file mode 100644 index e887736..0000000 --- a/contrib/gcc/config/mh-necv4 +++ /dev/null @@ -1,11 +0,0 @@ -# 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 diff --git a/contrib/gcc/config/mh-openedition b/contrib/gcc/config/mh-openedition deleted file mode 100644 index e99ef15..0000000 --- a/contrib/gcc/config/mh-openedition +++ /dev/null @@ -1,2 +0,0 @@ -RANLIB = true -CC = c89 diff --git a/contrib/gcc/config/mh-papic b/contrib/gcc/config/mh-papic deleted file mode 100644 index 35cf2c8..0000000 --- a/contrib/gcc/config/mh-papic +++ /dev/null @@ -1 +0,0 @@ -PICFLAG=-fPIC diff --git a/contrib/gcc/config/mh-ppcpic b/contrib/gcc/config/mh-ppcpic deleted file mode 100644 index 35cf2c8..0000000 --- a/contrib/gcc/config/mh-ppcpic +++ /dev/null @@ -1 +0,0 @@ -PICFLAG=-fPIC diff --git a/contrib/gcc/config/mh-riscos b/contrib/gcc/config/mh-riscos deleted file mode 100644 index e586b30..0000000 --- a/contrib/gcc/config/mh-riscos +++ /dev/null @@ -1,15 +0,0 @@ -# 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 diff --git a/contrib/gcc/config/mh-sco b/contrib/gcc/config/mh-sco deleted file mode 100644 index cc337c9..0000000 --- a/contrib/gcc/config/mh-sco +++ /dev/null @@ -1,10 +0,0 @@ -# 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 diff --git a/contrib/gcc/config/mh-solaris b/contrib/gcc/config/mh-solaris deleted file mode 100644 index ddbea54..0000000 --- a/contrib/gcc/config/mh-solaris +++ /dev/null @@ -1,6 +0,0 @@ -# Makefile changes for Suns running Solaris 2 - -SYSV = -DSYSV -RANLIB = true - -X11_EXTRA_LIBS = -lnsl -lsocket diff --git a/contrib/gcc/config/mh-sparcpic b/contrib/gcc/config/mh-sparcpic deleted file mode 100644 index e218bb4..0000000 --- a/contrib/gcc/config/mh-sparcpic +++ /dev/null @@ -1 +0,0 @@ -PICFLAG=`case '${LIBCFLAGS} ${LIBCXXFLAGS}' in *-fpic* ) echo -fpic ;; * ) echo -fPIC ;; esac` diff --git a/contrib/gcc/config/mh-sun3 b/contrib/gcc/config/mh-sun3 deleted file mode 100644 index dcd5155..0000000 --- a/contrib/gcc/config/mh-sun3 +++ /dev/null @@ -1,3 +0,0 @@ -# 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 diff --git a/contrib/gcc/config/mh-sysv b/contrib/gcc/config/mh-sysv deleted file mode 100644 index 16b1187..0000000 --- a/contrib/gcc/config/mh-sysv +++ /dev/null @@ -1,3 +0,0 @@ -# Define SYSV as -DSYSV if you are using a System V operating system. -SYSV = -DSYSV -RANLIB = true diff --git a/contrib/gcc/config/mh-sysv4 b/contrib/gcc/config/mh-sysv4 deleted file mode 100644 index 8106651..0000000 --- a/contrib/gcc/config/mh-sysv4 +++ /dev/null @@ -1,11 +0,0 @@ -# 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 diff --git a/contrib/gcc/config/mh-sysv5 b/contrib/gcc/config/mh-sysv5 deleted file mode 100644 index 1fa38e5..0000000 --- a/contrib/gcc/config/mh-sysv5 +++ /dev/null @@ -1,8 +0,0 @@ -# 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 diff --git a/contrib/gcc/config/mh-vaxult2 b/contrib/gcc/config/mh-vaxult2 deleted file mode 100644 index 3de2dc8..0000000 --- a/contrib/gcc/config/mh-vaxult2 +++ /dev/null @@ -1,2 +0,0 @@ -# The old BSD pcc isn't up to compiling parts of gdb so use gcc -CC = gcc diff --git a/contrib/gcc/config/mh-x86pic b/contrib/gcc/config/mh-x86pic deleted file mode 100644 index 92e48d9..0000000 --- a/contrib/gcc/config/mh-x86pic +++ /dev/null @@ -1 +0,0 @@ -PICFLAG=-fpic diff --git a/contrib/gcc/config/mpw-mh-mpw b/contrib/gcc/config/mpw-mh-mpw deleted file mode 100644 index 543ef4f..0000000 --- a/contrib/gcc/config/mpw-mh-mpw +++ /dev/null @@ -1,157 +0,0 @@ -# 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 - diff --git a/contrib/gcc/config/mpw/ChangeLog b/contrib/gcc/config/mpw/ChangeLog deleted file mode 100644 index 722b5a3..0000000 --- a/contrib/gcc/config/mpw/ChangeLog +++ /dev/null @@ -1,81 +0,0 @@ -2002-11-19 Release Manager - - * GCC 3.2.1 Released. - -2002-11-19 Release Manager - - * GCC 3.2.1 Released. - -2002-11-18 Release Manager - - * GCC 3.2.1 Released. - -2002-08-14 Release Manager - - * GCC 3.2 Released. - -2002-07-25 Release Manager - - * GCC 3.1.1 Released. - -2002-05-14 Release Manager - - * GCC 3.1 Released. - -2002-05-14 Release Manager - - * GCC 3.1 Released. - -Tue Nov 26 12:34:12 1996 Stan Shebs - - * g-mpw-make.sed: Fix some comments. - -Mon Sep 16 14:42:52 1996 Stan Shebs - - * g-mpw-make.sed (HLDENV): Edit out all references. - -Thu Aug 15 19:49:23 1996 Stan Shebs - - * 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 - - * mpw-true, mpw-touch, null-command: New scripts. - * README: Describe usage in more detail. - -Tue Dec 12 14:51:51 1995 Stan Shebs - - * g-mpw-make.sed: Don't edit out "version=" occurrences. - -Fri Dec 1 11:46:18 1995 Stan Shebs - - * 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 - - * 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 - - * 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 - - * 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 - - * README: Clarify instructions. - * fi: Remove. - -Wed Dec 21 15:45:53 1994 Stan Shebs - - * MoveIfChange, README, fi, forward-include, open-brace, - tr-7to8-src: New files. diff --git a/contrib/gcc/config/mpw/MoveIfChange b/contrib/gcc/config/mpw/MoveIfChange deleted file mode 100644 index 0dbc125..0000000 --- a/contrib/gcc/config/mpw/MoveIfChange +++ /dev/null @@ -1,19 +0,0 @@ -# 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 diff --git a/contrib/gcc/config/mpw/README b/contrib/gcc/config/mpw/README deleted file mode 100644 index 554700a..0000000 --- a/contrib/gcc/config/mpw/README +++ /dev/null @@ -1,23 +0,0 @@ -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". diff --git a/contrib/gcc/config/mpw/forward-include b/contrib/gcc/config/mpw/forward-include deleted file mode 100644 index ddd6bd7..0000000 --- a/contrib/gcc/config/mpw/forward-include +++ /dev/null @@ -1,3 +0,0 @@ -Echo '#include' ¶""{1}"¶" >"{2}".tem -MoveIfChange "{2}".tem "{2}" - diff --git a/contrib/gcc/config/mpw/g-mpw-make.sed b/contrib/gcc/config/mpw/g-mpw-make.sed deleted file mode 100644 index e7d3c77..0000000 --- a/contrib/gcc/config/mpw/g-mpw-make.sed +++ /dev/null @@ -1,293 +0,0 @@ -# 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}" - diff --git a/contrib/gcc/config/mpw/mpw-touch b/contrib/gcc/config/mpw/mpw-touch deleted file mode 100644 index c743a51..0000000 --- a/contrib/gcc/config/mpw/mpw-touch +++ /dev/null @@ -1,7 +0,0 @@ -# "Touch" command. - -If "`Exists "{1}"`" != "" - SetFile -m . "{1}" -Else - Echo ' ' > "{1}" -End If diff --git a/contrib/gcc/config/mpw/mpw-true b/contrib/gcc/config/mpw/mpw-true deleted file mode 100644 index 0506530..0000000 --- a/contrib/gcc/config/mpw/mpw-true +++ /dev/null @@ -1 +0,0 @@ -Exit 0 diff --git a/contrib/gcc/config/mpw/null-command b/contrib/gcc/config/mpw/null-command deleted file mode 100644 index 4844c8e..0000000 --- a/contrib/gcc/config/mpw/null-command +++ /dev/null @@ -1 +0,0 @@ -# This command does nothing. diff --git a/contrib/gcc/config/mpw/open-brace b/contrib/gcc/config/mpw/open-brace deleted file mode 100644 index 58465dc..0000000 --- a/contrib/gcc/config/mpw/open-brace +++ /dev/null @@ -1,4 +0,0 @@ -# MPW makefiles seem not to have any way to get a literal open -# brace into a rule anywhere, so this does the job. - -Echo '{' diff --git a/contrib/gcc/config/mpw/tr-7to8-src b/contrib/gcc/config/mpw/tr-7to8-src deleted file mode 100644 index b20b649..0000000 --- a/contrib/gcc/config/mpw/tr-7to8-src +++ /dev/null @@ -1,9 +0,0 @@ -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}" diff --git a/contrib/gcc/config/mpw/true b/contrib/gcc/config/mpw/true deleted file mode 100644 index 0506530..0000000 --- a/contrib/gcc/config/mpw/true +++ /dev/null @@ -1 +0,0 @@ -Exit 0 diff --git a/contrib/gcc/config/mt-aix43 b/contrib/gcc/config/mt-aix43 deleted file mode 100644 index 0c6627f..0000000 --- a/contrib/gcc/config/mt-aix43 +++ /dev/null @@ -1,4 +0,0 @@ -# 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 -B -X32_64 diff --git a/contrib/gcc/config/mt-alphaieee b/contrib/gcc/config/mt-alphaieee deleted file mode 100644 index 9c20531..0000000 --- a/contrib/gcc/config/mt-alphaieee +++ /dev/null @@ -1,2 +0,0 @@ -CFLAGS_FOR_TARGET += -mieee -CXXFLAGS_FOR_TARGET += -mieee diff --git a/contrib/gcc/config/mt-armpic b/contrib/gcc/config/mt-armpic deleted file mode 100644 index 35b8c9e..0000000 --- a/contrib/gcc/config/mt-armpic +++ /dev/null @@ -1 +0,0 @@ -PICFLAG_FOR_TARGET=-fPIC diff --git a/contrib/gcc/config/mt-d30v b/contrib/gcc/config/mt-d30v deleted file mode 100644 index d34b774..0000000 --- a/contrib/gcc/config/mt-d30v +++ /dev/null @@ -1,4 +0,0 @@ -# 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 diff --git a/contrib/gcc/config/mt-elfalphapic b/contrib/gcc/config/mt-elfalphapic deleted file mode 100644 index 35b8c9e..0000000 --- a/contrib/gcc/config/mt-elfalphapic +++ /dev/null @@ -1 +0,0 @@ -PICFLAG_FOR_TARGET=-fPIC diff --git a/contrib/gcc/config/mt-i370pic b/contrib/gcc/config/mt-i370pic deleted file mode 100644 index 35b8c9e..0000000 --- a/contrib/gcc/config/mt-i370pic +++ /dev/null @@ -1 +0,0 @@ -PICFLAG_FOR_TARGET=-fPIC diff --git a/contrib/gcc/config/mt-ia64pic b/contrib/gcc/config/mt-ia64pic deleted file mode 100644 index ff98727..0000000 --- a/contrib/gcc/config/mt-ia64pic +++ /dev/null @@ -1 +0,0 @@ -PICFLAG_FOR_TARGET=-fpic diff --git a/contrib/gcc/config/mt-linux b/contrib/gcc/config/mt-linux deleted file mode 100644 index 15bf417..0000000 --- a/contrib/gcc/config/mt-linux +++ /dev/null @@ -1 +0,0 @@ -CXXFLAGS_FOR_TARGET = $(CXXFLAGS) -D_GNU_SOURCE diff --git a/contrib/gcc/config/mt-m68kpic b/contrib/gcc/config/mt-m68kpic deleted file mode 100644 index ff98727..0000000 --- a/contrib/gcc/config/mt-m68kpic +++ /dev/null @@ -1 +0,0 @@ -PICFLAG_FOR_TARGET=-fpic diff --git a/contrib/gcc/config/mt-netware b/contrib/gcc/config/mt-netware deleted file mode 100644 index 9482f9b..0000000 --- a/contrib/gcc/config/mt-netware +++ /dev/null @@ -1 +0,0 @@ -GDB_NLM_DEPS = all-gcc all-ld diff --git a/contrib/gcc/config/mt-ospace b/contrib/gcc/config/mt-ospace deleted file mode 100644 index 7f09104..0000000 --- a/contrib/gcc/config/mt-ospace +++ /dev/null @@ -1,3 +0,0 @@ -# Build libraries optimizing for space, not speed. - CFLAGS_FOR_TARGET = -g -Os - CXXFLAGS_FOR_TARGET = -g -Os diff --git a/contrib/gcc/config/mt-papic b/contrib/gcc/config/mt-papic deleted file mode 100644 index 35b8c9e..0000000 --- a/contrib/gcc/config/mt-papic +++ /dev/null @@ -1 +0,0 @@ -PICFLAG_FOR_TARGET=-fPIC diff --git a/contrib/gcc/config/mt-ppcpic b/contrib/gcc/config/mt-ppcpic deleted file mode 100644 index 35b8c9e..0000000 --- a/contrib/gcc/config/mt-ppcpic +++ /dev/null @@ -1 +0,0 @@ -PICFLAG_FOR_TARGET=-fPIC diff --git a/contrib/gcc/config/mt-sparcpic b/contrib/gcc/config/mt-sparcpic deleted file mode 100644 index a62b38b..0000000 --- a/contrib/gcc/config/mt-sparcpic +++ /dev/null @@ -1 +0,0 @@ -PICFLAG_FOR_TARGET=`case '${LIBCFLAGS} ${LIBCXXFLAGS}' in *-fpic* ) echo -fpic ;; * ) echo -fPIC ;; esac` diff --git a/contrib/gcc/config/mt-v810 b/contrib/gcc/config/mt-v810 deleted file mode 100644 index 97da6c2..0000000 --- a/contrib/gcc/config/mt-v810 +++ /dev/null @@ -1,4 +0,0 @@ -CC_FOR_TARGET = ca732 -ansi -AS_FOR_TARGET = as732 -AR_FOR_TARGET = ar732 -RANLIB_FOR_TARGET = true diff --git a/contrib/gcc/config/mt-wince b/contrib/gcc/config/mt-wince deleted file mode 100644 index cc7d67b..0000000 --- a/contrib/gcc/config/mt-wince +++ /dev/null @@ -1,10 +0,0 @@ -# For Windows CE, we need to build the program that converts, copies, -# and renames the platform SDK files into gcc directories. - -EXTRA_TARGET_HOST_ALL_MODULES:=$(EXTRA_TARGET_HOST_ALL_MODULES) all-utils -EXTRA_TARGET_HOST_INSTALL_MODULES:=$(EXTRA_TARGET_HOST_INSTALL_MODULES) install-utils - -all-utils : all-libiberty - -install-utils : all-libiberty - diff --git a/contrib/gcc/config/mt-x86pic b/contrib/gcc/config/mt-x86pic deleted file mode 100644 index ff98727..0000000 --- a/contrib/gcc/config/mt-x86pic +++ /dev/null @@ -1 +0,0 @@ -PICFLAG_FOR_TARGET=-fpic diff --git a/contrib/gcc/contrib/ChangeLog b/contrib/gcc/contrib/ChangeLog deleted file mode 100644 index 37b4b56..0000000 --- a/contrib/gcc/contrib/ChangeLog +++ /dev/null @@ -1,721 +0,0 @@ -2002-11-19 Release Manager - - * GCC 3.2.1 Released. - -2002-11-19 Release Manager - - * GCC 3.2.1 Released. - -2002-11-18 Release Manager - - * GCC 3.2.1 Released. - -2002-08-14 Release Manager - - * GCC 3.2 Released. - -2002-08-14 Mark Mitchell - - * gennews (files): Add GCC 3.2 files. - -2002-07-25 Release Manager - - * GCC 3.1.1 Released. - -2002-07-22 Gerald Pfeifer - - * gennews (files): Add proper files for the GCC 3.1 release series. - Simplify and reformat introductory wording. - -2002-05-14 Release Manager - - * GCC 3.1 Released. - -2002-05-14 Release Manager - - * GCC 3.1 Released. - -2002-04-03 Zack Weinberg - - * texi2pod.pl: Handle @end ftable and @end vtable. - -2002-03-12 Zack Weinberg - - * texi2pod.pl: Handle @include, @ftable, @vtable. - Reformat some code for clarity. - -2002-02-24 Christian Jönsson - - * test_summary: Additional to XPASS and FAIL, add UNRESOLVED, - WARNING and ERROR output from the *.sum files. - -2002-01-26 Gerald Pfeifer - - * gennews (files): Replace gcc-2.95/gcc-2.95.html, - gcc-2.95/gcc-2.95.1.html, gcc-2.95/gcc-2.95.2.html, - and gcc-2.95/gcc-2.95.3.html by gcc-2.95/index.html. - -2002-01-16 Gerald Pfeifer - - * gennews (files): Replace egcs-1.1/egcs-1.1.2.html, - egcs-1.1/egcs-1.1.1.html, and egcs-1.1/egcs-1.1.html by - egcs-1.1/index.html. - -2002-01-01 Kaveh R. Ghazi - - * warn_summary: Add -ada subdirectory flag. - -2001-12-12 Matthias Klose - - * texi2pod.pl: Merge changes from binutils' texi2pod.pl. Allows - generation of more than one man page from one source. - Add '-' to set of valid chars for an identifier. - Let -D option accept flags of the form =. - Use \s+ for whitespace detection in '@c man' lines. - Handle @set and @clear independent of $output. - Substitute all @value{}'s in a line. - -2001-11-14 Joseph S. Myers - - * texi2pod.pl: Handle @ifnottex, @iftex and @display. Handle @var - in verbatim blocks specially. Handle @unnumbered, @unnumberedsec - and @center. Allow [a-z] after @enumerate. Handle 0 and numbers - greater than 9 in enumerations. - -2001-11-07 Laurent Guerby - - * gcc_update (files_and_dependencies): Add Ada dependencies. - -2001-10-08 Joseph S. Myers - - * snapshot: Remove. - -2001-09-07 Richard Sandiford - - Revert: - * gcc_update: (files_and_dependencies) Add gcc/java/parse.c - gcc/java/parse-scan.c and gcc/java/keyword.h to list of files to - touch. - -2001-09-04 David.Billinghurst - - * gcc_update: (files_and_dependencies) Add gcc/java/parse.c - gcc/java/parse-scan.c and gcc/java/keyword.h to list of files to - touch. - -Mon Aug 13 02:29:08 CEST 2001 Jan Hubicka - - * analyze_brprob: Update for changes in gcc debug output. - -Sat Jul 28 22:37:49 CEST 2001 Jan Hubicka - - * analyze_brprob: Avoid more overflows. - -2001-07-27 Richard Henderson - - * test_summary: Copy LAST_UPDATED UTC time to head of summary. - -Fri Jul 27 18:01:21 CEST 2001 Jan Hubicka - - * analyze_brprob: Avoid overflows. - -2001-07-27 Richard Henderson - - * gcc_update: Dump timestamp in LAST_UPDATED. - -2001-07-26 Andreas Jaeger , - Hans-Peter Nilsson - - * analyze_brprob: Fix documentation. - -Mon Jul 23 15:47:19 CEST 2001 Jan Hubicka - - * analyze_brprob: Fix awk compatibility problems; update comment. - -2001-07-23 Andreas Jaeger - - * analyze_brprob: Fix more typos. - -2001-07-23 Andreas Jaeger - - * analyze_brprob: Fix typos. - -2001-07-03 Joseph S. Myers - - * texi2pod.pl: Handle @r inside @item. - -2001-07-02 Zack Weinberg - - * gcc_update: Remove entries for gcc.1, cpp.1, gcov.1. - -2001-07-01 Zoltan Felleg - - * warn_summary: Fix typo in a comment. - -2001-06-14 Albert Chin-A-Young - - * contrib/gcc_update: Fix timestamp on gcc/f/intdoc.texi. - -2001-06-13 Mark Mitchell - - * gennews: Set TERM to vt100 for Lynx. - -2001-06-13 Gerald Pfeifer - - * release: Remove. - -Tue Jun 12 12:21:40 CEST 2001 Jan Hubicka - - * analyze_brprob: New file. - -2001-06-11 Mark Mitchell - - * gcc_build: Output information about the commands used to - configure the compiler. - -2001-06-07 Joseph S. Myers - - * gennews: Update for GCC 3.0. - -2001-06-02 Joseph S. Myers - - * gcc_update: Update for move of documentation to gcc/doc. - -2001-05-28 Rainer Orth - - * contrib/test_summary (files): Sort before evaluating. - -2001-05-23 Gerald Pfeifer - - * gcc_update (UPDATE_OPTIONS): Add -d to the default settings. - -2001-05-21 Mark Mitchell - - * gcc_build: Use -d when invoking gcc_update. - -2001-05-18 Andreas Jaeger - - * gcc_update: Add rules for libf2c/libI77. - -2001-05-17 Alexandre Oliva - - * gcc_update (touch_files): Use simpler, yet as portable, syntax. - -2001-05-14 Loren J. Rittle - - * gcc_update (touch_files): Enhance make portability. - -2001-05-14 Alexandre Oliva - - * gcc_update (touch_files): Use a Makefile to touch files. - -2001-05-03 Joseph S. Myers - - * texi2pod.pl: Add copyright and GPL notices. - -2001-01-24 Joseph S. Myers - - * texi2pod.pl: Handle "\,". - -2001-01-15 Joseph S. Myers - - * texi2pod.pl: Fix regular expression for @r to avoid exponential - recursion. From Russ Allbery . Remove perl - version check. - -2001-01-15 Kaveh R. Ghazi - - * warn_summary (stageNfilter): Update for recent changes in - bootstrap logic. - -2001-01-14 Joseph S. Myers - - * texi2pod.pl: Require at least perl 5.6.0. - -2001-01-13 Joseph S. Myers - - * gcc_update: Add gcc/gcc.1 to generated files. - * texi2pod.pl: Handle @r and @gccoptlist. Handle @gol. Handle - discarding to end of sentence with @xref where the sentence has an - interior "." in markup, and handle discarding parentheses around - such a sentence. - -2001-01-11 Bernd Schmidt - - * gennews: Add gcc-2.95.3. - -2001-01-10 Joseph S. Myers - - * texi2pod.pl: Handle @gcctabopt and @env in tables. Handle - @command. Format URLs and email addresses in bold. - -2001-01-03 Joseph S. Myers - - * gcc_update: Add cpp.1 to the list of generated files. - - * texi2pod.pl: Handle @option and @env. - -2001-01-03 Mike Stump - - * snapshot: Update to account for java libraries. - -2000-12-28 Jeffrey Oldham - - * test_summary: Export filesuffix, not fileprefix. - -2000-12-22 Joseph S. Myers - - * release: Change some EGCS references to GCC. - -2000-12-14 Kaveh R. Ghazi - - * warn_summary: Fix subdirectory filtering. Add -intl and -fixinc - subdirectory flags. Add source directory prefix filtering. - Redirect diagnostic output to stderr. - -2000-12-07 Zack Weinberg - - * texi2pod.pl: If multiple @c man sections with the same tag - appear, concatenate them in the final output. When skipping, - ignore block commands that can't cause skipping, and honor - those that can. Ensure that verbatim blocks are separate - paragraphs. - -2000-12-07 Joseph S. Myers - - * gcc_update: Don't touch tradcif.c or java/parse.h. - -2000-12-05 Zack Weinberg - - * texi2pod.pl: Restructure for comprehensibility, add - comments. Merge handling of @ignore and @ifxxx. Handle a - whole bunch more Texinfo commands. Use consistent formatting - style. - -2000-12-04 Joseph S. Myers - - * gennews: New script. - -2000-11-22 Gerald Pfeifer - - * gcc_update: Update a comment as we now require bison for CVS users. - -2000-11-22 Joseph S. Myers - - * gcc_update: Add gcov.1 to the list of generated files. - -2000-11-21 Mark Mitchell - - * gcc_build: Remove code to put information in a log file. - -2000-11-19 Zack Weinberg - - * texi2pod.pl: - - Add real command line parsing. - - Support @ifset, @ifclear, @set, @value, -D switch. - - Support @sc. Improve handling of @ref and friends. - - Discard @subsection, @need, @node lines. - - Un-nest font changes to match texinfo semantics. - - Handle @{ and @}. Oops. - - Don't emit E<> directives inside verbatim blocks. - -2000-11-12 Bruce Korb - - * release: generalize the release script a bit. - -Sat Nov 11 17:29:03 2000 Mark P Mitchell - - * gcc_build: Add -o option for setting the objdir to use. - -2000-11-11 Jeff Law , - - * release: New file. - -2000-11-08 Jeff Law , - Gerald Pfeifer - - * snapshot: New file. - -2000-11-08 Jeffrey Oldham - - * gcc_build (bootstrap_gcc): New function. - (configure_gcc): Likewise. - (build_gcc): Rewritten to use configure and bootstrap. - (MAKE_BOOTSTRAP_OPTIONS): Replaced MAKE_OPTIONS. - -2000-10-31 Mark Mitchell - - * gcc_build (MAKE): New variable. - (build_gcc): Use it. Fix logging of errors. - (install_gcc): Likewise. - -2000-10-29 Mark Mitchell - - * gcc_build: Save the output from CVS into the logfile as well. - -2000-10-25 Mark Mitchell - - * gcc_build: Fix typos. - -2000-10-14 Joseph S. Myers - - * gperf-2.7-19981006.pat: Remove. - -2000-10-08 Joseph S. Myers - - * test_installed: Change EGCS references to refer to GCC. - -2000-09-28 Gerald Pfeifer - - * gcc_update (touch_files): Add some informative output. - -2000-09-16 Andreas Jaeger - - * gcc_update: Remove gcc/c-parse.gperf. - -2000-08-30 Gerald Pfeifer , - Alexandre Oliva - - * gcc_update: Execute touch_files_reexec even if `cvs update` - failed. - -2000-08-09 Alexandre Oliva - - * test_summary: AWK breaks with filenames containing `='. - -Sun Jul 16 12:04:33 2000 Mark P Mitchell - - * gcc_build: New script. - -2000-07-13 Mark Mitchell - - * gcc_update (files_and_dependencies): Remove generated YACC files. - -2000-07-12 Mark Mitchell - - * gcc_update (files_and_dependencies): Remove generated YACC files. - -2000-06-04 Mark Mitchell - - * newcvsroot: Handle filenames that contain spaces. - -2000-06-03 Zack Weinberg - - * test_summary: In generated script, use cat <<'EOF' not cat <<\EOF. - Elide --with-gcc-version-trigger and --norecursion from - configure flags. Remove code to report status of haifa scheduler. - -2000-05-18 Alexandre Oliva - - * gcc_update (self): Set to `$0'. - (touch_files_reexec): Use `$self' instead of `$0'. - -2000-05-12 Alexandre Oliva - - * gcc_update (touch_files_reexec): New function, run after the - tree is modified. - -2000-05-08 Richard Hendeson - - * gcc_update: Remove references to inclhack.tpl. - -2000-04-28 Jason Merrill - - * index-prop: Use a single pattern. Also support *** cdiffs. - -2000-04-28 Pavel Roskin - - * index-prop: Don't change /dev/null. - -2000-04-27 Gerald Pfeifer - - * gcc_update: Refer to GCC and gcc_update instead of egcs and - egcs_update. - -2000-04-26 Jonathan Larmour - - * index-prop: Fix occasional problem when using cvs diff -p. - -2000-04-18 Zack Weinberg - - * gcc_update: Remove references to cexp.c/cexp.y. - -1999-12-18 Gerald Pfeifer - - * newcvsroot: Add check on the number of command-line arguments. - Add usage. - -Sun Nov 28 00:41:44 1999 William Bader (william@nscs.fast.net) - - * gcc_update: Allow patches compressed by bzip2. - -1999-10-11 Martin v. Löwis - - * newcvsroot: New file. - -1999-09-11 Craig Burley - - * convert_to_f2c, convert_to_g2c, download_f2c: New file. - -1999-08-16 Gerald Pfeifer - - * gcc_update: New file. - * egcs_update: Renamed to gcc_update. - -1999-08-09 Robert Lipe - - * test_summary: Quote curly braces in 1999-07-03 change. - -1999-07-28 Alexandre Oliva - - * egcs_update (files_and_dependencies): Fixed typo in - gcc/cstamp-h.in. Added gcc/config.in. - -1999-07-27 Alexandre Oliva - - * egcs_update (files_and_dependencies): New function, with - complete list of files to be updated, as well as their - dependencies. - (touch_files): Check the timestamp of each generated file against - its dependencies'. - (main): New flags --touch, --list and --help. Remove the - pre-update step. - -1999-07-17 Alexandre Oliva - - * test_summary: Replace egcs with gcc. Update e-mail address. - -1999-07-05 Gerald Pfeifer - Jerry Quinn - - * egcs_update (touch_files, apply_patch): New functions. - Use them. New command-line option --patch. Split test of local - tree into two parts. Add comments. - -1999-07-03 Alexandre Oliva - - * test_summary: If Target is `unix{*}', append the Target variants - to Host. - -1999-06-12 Alexandre Oliva - - * test_summary: Set default mail-address and version for egcs - instead of relying on unpredictable pathnames. - Reported by Andreas Jaeger - -Fri Apr 2 16:09:02 1999 Jeffrey A Law (law@cygnus.com) - - * fixinc/*: Delete obsolete files. - -1999-02-04 Robert Lipe - - * egcs_update: Test return values of 'cvs update'. Propogate - to caller as exit values. - -1999-01-25 Gerald Pfeifer - - * egcs_update: Use "if" instead of "&&". Touch generated files - only after the corresponding *.y files. - -1999-01-19 Gerald Pfeifer - - * egcs_update: Do not use xargs, but a backquote construct. - -1999-01-07 Alexandre Oliva - - * test_summary (version): Remove carriage return that gawk inserts - in the version string for some reason. - -1998-11-30 Gerald Pfeifer - - * egcs_update: Only touch files that already exist. - -1998-11-29 Alexandre Oliva - - * test_summary (EOF): Remove double backslash. - Reported by Franz Sirl - -1998-11-28 Alexandre Oliva - - * test_summary (address): Set to egcs-testresults mailing list. - -1998-11-27 Alexandre Oliva - - * test_summary (address): Added Marc Lehmann's testsuite-results - to the default e-mail address. - -1998-11-25 Alexandre Oliva - - * test_summary (-p, prepend_logs): Add these before the summary. - (Compiler, Platform): Print these just before configflags. - -Sat Oct 31 10:53:40 1998 Kaveh R. Ghazi - - * warn_summary (longLineFilter): New shell function to encapsulate - this functionality. It is off by default, only active if -llf - flag is specified. - (subdirectoryFilter): Fix bug in filtering which made some - subdirectory warnings erroneously appear in the toplevel set. - (stageNfilter): Renamed from `stageNwarns'. Updated to collect - warnings from stage1 as well as stage0, which means warnings from - outside the bootstrap directory. Eg, the libraries, etc. - (warningFilter): New shell function to encapsulate this - functionality. - (keywordFilter): New shell function to encapsulate this - functionality. - - Store data in a temp file rather than calculating it 3x. Arrange - to remove it on exit and signals. - - Add -pass/-wpass flags to do "pass through" (i.e. manual - inspection) of bootstrap output from a particular stageN as well - as language subdirs. - - Add better comments/documentation. - -Sat Oct 31 16:39:31 1998 Gerald Pfeifer - - * egcs_update: Add comment about keeping the FAQ synchronized. - -Fri Oct 30 00:39:27 1998 Jeffrey A Law (law@cygnus.com) - - * egcs_update: Do touch java/parse.c and java/parse-scan.c. They're - in the repo again. - -Fri Oct 16 07:35:00 1998 Bruce Korb - - * egcs_update: Added gcc/fixinc/* generated files to touch list. - -Tue Oct 13 23:28:33 1998 Jeffrey A Law (law@cygnus.com) - - * egcs_update: Remove gcc/java/parse.c from list of files to - touch. - -Wed Oct 7 13:00:40 1998 Kaveh R. Ghazi - - * gperf-2.7-19981006.pat: New file, patch for egcs-local gperf. - -Mon Oct 5 14:19:48 1998 Kaveh R. Ghazi - - * warn_summary (subdirectoryFilter): New shell function to - optionally filter in/out gcc subdirectories when summarizing - warnings. Add new flags to support subdirectory filtering. - - Also, ensure the bootstrap stage is a number. Add some more C - keywords that are preserved in the "warning type" summary and - tighten up the "arg ???" regexp. - -Tue Sep 22 07:30 Bruce Korb - - * fixinc/inclhack.def: Not all C++ comments in C headers - were treated alike. They are now. Also fixed syntax - of sed expression in "systypes" fix. - - * fixinc/inclhack.def: Removed SVR4.2-ism from shell invocation - - * egcs_update: Added fixinc/* generated files to touch list. - -Wed Sep 16 16:06:51 1998 Kaveh R. Ghazi - - * egcs_update: Additionally touch gcc/java/parse.[ch]. - -Thu Sep 9 16:48 Bruce Korb - - * fixinc/inclhack.def: Added two files required by - SCO's Open Server 5's avoid_bool fix. - Regenerated fixinc.x and inclhack.sh to incorporate - the update. - -Thu Sep 3 10:11:32 1998 Robert Lipe - - * egcs_update: Do the pass 1 CVS update only for files that - may reasonably be under CVS control. - -1998-08-14 Alexandre Oliva - - * test_installed: New script for testing already-installed - gcc/g++/g77. - -Wed Aug 12 19:59:36 1998 Gerald Pfeifer - - * egcs_update: Assigned copyright to FSF. - -Tue Aug 11 17:55:53 1998 Gerald Pfeifer - Alexandre Oliva - - * egcs_update: New switch --nostdflags and documentation - enhancements. - -Tue Aug 11 17:33:19 1998 Gerald Pfeifer - - * egcs_update: New script. - -1998-08-05 Bruce Korb - - * fixinc/Makefile - Added define for target machine so machine-specific tests - can be selected for or against. - - * fixinc/fixincl.c - Added an array of string pointers to machines to select - or avoid, depending on a FD_MACH_IFNOT bit flag. - Used a shell script to match the defined TARGET_MACHINE - with any of the given match patterns. - - * fixinc/fixincl.tpl - Generate the array of strings and bit flag, as needed, - depending on "mach" and "not_machine" attributes for a fix. - - * fixinc/mkfixinc.sh - Invoke the make with TARGET assigned the value of the - machine name argument. - -Mon Jul 27 22:08:12 1998 Mike Stump (mrs@wrs.com) - - * compare_tests: New script. - -1998-07-28 Alexandre Oliva - - * test_summary: Assigned copyright to FSF. - -Mon Jul 27 20:33:02 1998 Gerald Pfeifer - - * test_summary: Corrected script name in comments providing - documentation. Added linebreaks for lines with > 80 characters. - -Fri Jun 19 02:36:59 1998 Alexandre Oliva - - * test_summary: New switch, -i, and environment variable, - append_logs, for including files in the report. - -1998-06-01 Manfred Hollstein - - * warn_summary: Update to Kaveh's latest version allowing to - specify the last stage built. - -1998-05-29 Bruce Korb - - * fixinc/mkfixinc.sh - Changes to make it easier to invoke on platforms that - normally do not invoke fixincludes. - - * fixinc/inclhack.def - Applied fixes from egcs/gcc/fixincludes from the past several - months. - -1998-05-28 Bruce Korb - - * fixinc/*: Updated most everything for a first real - try at getting "fast_fixincludes" working. - -1998-05-28 Jason Merrill - - * index-prop: New file. - -Sat May 23 23:38:49 1998 Matthias Klose - - * test_summary: find good awk (copied from warn_summary). - -Sat May 23 23:38:33 1998 Jeffrey A Law (law@cygnus.com) - - * test_summary, warn_summary: New files diff --git a/contrib/gcc/contrib/analyze_brprob b/contrib/gcc/contrib/analyze_brprob deleted file mode 100755 index 3650e60..0000000 --- a/contrib/gcc/contrib/analyze_brprob +++ /dev/null @@ -1,146 +0,0 @@ -#!/usr/bin/awk -f -# Script to analyze experimental results of our branch prediction heuristics -# Contributed by Jan Hubicka, SuSE Inc. -# Copyright (C) 2001 Free Software Foundation, Inc. -# -# This file is part of GNU CC. -# -# GNU CC 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 CC 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 CC; see the file COPYING. If not, write to -# the Free Software Foundation, 59 Temple Place - Suite 330, -# Boston, MA 02111-1307, USA. -# -# -# This script is used to calculate two basic properties of the branch prediction -# heuristics - coverage and hitrate. Coverage is number of executions of a given -# branch matched by the heuristics and hitrate is probability that once branch is -# predicted as taken it is really taken. -# -# These values are useful to determine the quality of given heuristics. Hitrate -# may be directly used in predict.c. -# -# Usage: -# Step 1: Compile and profile your program. You need to use -fprofile-arcs -# flag to get the profiles -# Step 2: Generate log files. The information about given heuristics are -# saved into *.life dumps. You need to pass the -df switch to the compiler as well -# as -fbranch-probabilities to get the results of profiling noted in the dumps. -# Ensure that there are no "Arc profiling: some edge counts were bad." warnings. -# Step 3: Run this script to concatenate all *.life files: -# analyze_brprob `find . -name *.life` -# the information is collected and print once all files are parsed. This -# may take a while. -# Note that the script does use bc to perform long arithmetic. -# Step 4: Read the results. Basically the following table is printed: -# (this is just an example from a very early stage of branch prediction pass -# development, so please don't take these numbers seriously) -# -#HEURISTICS BRANCHES (REL) HITRATE COVERAGE (REL) -#opcode 2889 83.7% 94.96%/ 97.62% 7516383 75.3% -#pointer 246 7.1% 99.69%/ 99.86% 118791 1.2% -#loop header 449 13.0% 98.32%/ 99.07% 43553 0.4% -#first match 3450 100.0% 89.92%/ 97.27% 9979782 100.0% -#loop exit 924 26.8% 88.95%/ 95.58% 9026266 90.4% -#error return 150 4.3% 64.48%/ 86.81% 453542 4.5% -#call 803 23.3% 51.66%/ 98.61% 3614037 36.2% -#loop branch 51 1.5% 99.26%/ 99.27% 26854 0.3% -#noreturn call 951 27.6% 100.00%/100.00% 1759809 17.6% -# -# The heuristic called "first match" is a heuristic used by GCC branch -# prediction pass and it predicts 89.92% branches correctly. -# -# The quality of heuristics can be rated using both, coverage and hitrate -# parameters. For example "loop branch" heuristics (predicting loopback edge -# as taken) have both very high hitrate and coverage, so it is very useful. -# On the other hand, "exit block" heuristics (predicting exit edges as not -# taken) have good hitrate, but poor coverage, so only 3 branches have been -# predicted. The "loop header" heuristic has problems, since it tends to -# misspredict. -# -# The implementation of this script is somewhat brute force. My awk skills -# are limited. - -function longeval(e) -{ - e = "echo \"scale = 2 ;"e"\" | bc" - e | getline res - close (e) - return res -} - -BEGIN {nnames = 0} - -/^ .* heuristics: .*.$/ { - name=$0 - sub (/^ /,"",name) - sub (/ heuristics: .*.$/,"",name) - if (!(name in branches)) - { - names[nnames] = name - branches[name]=0 - counts[name]=0 - hits[name]=0 - phits[name]=0 - nnames++ - } - branches[name]+=1 - } - -/^ .* heuristics: .*. exec [0-9]* hit [0-9]* (.*.)$/ { - name=$0 - sub (/^ /,"",name) - sub (/ heuristics: .*. exec [0-9]* hit [0-9]* (.*.)$/,"",name) - pred=$0 - sub (/^ .* heuristics: /,"",pred) - sub (/. exec [0-9]* hit [0-9]* (.*.)$/,"",pred) - count=$0 - sub (/^ .* heuristics: .*. exec /,"",count) - sub (/ hit [0-9]* (.*.)$/,"",count) - hit=$0 - sub (/^ .* heuristics: .*. exec [0-9]* hit /,"",hit) - sub (/ (.*.)$/,"",hit) - - if (int(pred) < 50.0) - { - hit = count"-"hit; - } - counts[name]=counts[name] "+" count - hits[name]=hits[name] "+" hit - phits[name]=phits[name] "+(("hit")<"count"/2)*("count"-("hit"))+(("hit")>="count"/2)*("hit")" - - #BC crashes on long strings. Irritating. - if (length(counts[name]) > 2000) - counts[name] = longeval(counts[name]) - if (length(hits[name]) > 2000) - hits[name] = longeval(hits[name]) - if (length(phits[name]) > 2000) - phits[name] = longeval(phits[name]) - } -END { - # Heuristics called combined predicts just everything. - maxcounts = longeval(counts["combined"]) - maxbranches = branches["combined"] - max = names["combined"] - printf("HEURISTICS BRANCHES (REL) HITRATE COVERAGE (REL)\n") - for (i = 0; i < nnames ; i++) - { - name = names[i] - counts[name] = longeval(counts[name]) - printf ("%-27s %8i %5.1f%% %6s%%/%6s%% %12s %5.1f%%\n", - name, - branches[name], branches[name] * 100 / maxbranches, - longeval("("hits[name]") * 100 /(" counts[name]"-0.00001)"), - longeval("("phits[name]") * 100 /(" counts[name]"-0.00001)"), - counts[name], longeval(counts[name]" * 100 / ("maxcounts"-0.00001)")) - } -} diff --git a/contrib/gcc/contrib/compare_tests b/contrib/gcc/contrib/compare_tests deleted file mode 100755 index 7a1d76c..0000000 --- a/contrib/gcc/contrib/compare_tests +++ /dev/null @@ -1,98 +0,0 @@ -#!/bin/sh -# This script automatically test the given tool with the tool's test cases, -# reporting anything of interest. - -# exits with 1 if there is nothing of interest -# exits with 0 if there is something interesting -# exits with 2 if an error occurred - -# Give two .sum files to compare them - -# Written by Mike Stump - -tmp1=/tmp/$tool-testing.$$a -tmp2=/tmp/$tool-testing.$$b -now_s=/tmp/$tool-testing.$$d -before_s=/tmp/$tool-testing.$$e - -if [ "$2" = "" ]; then - echo "Usage: $0 previous current" >&2 - exit 2 -fi - -sed 's/^XFAIL/FAIL/; s/^XPASS/PASS/' < "$1" >$tmp1 -sed 's/^XFAIL/FAIL/; s/^XPASS/PASS/' < "$2" >$tmp2 - -before=$tmp1 -now=$tmp2 - -trap "rm -f $tmp1 $tmp2 $now_s $before_s" 0 1 2 3 5 9 13 15 - -sort +0.4 "$now" > "$now_s" -sort +0.4 "$before" > "$before_s" - -grep '^FAIL' "$now_s" | sed 's/^....: //' >$tmp1 -grep '^PASS' "$before_s" | sed 's/^....: //' | comm -12 $tmp1 - >$tmp2 - -grep -s . $tmp2 >/dev/null -if [ $? = 0 ]; then - echo "Tests that now fail, but worked before:" - echo - cat $tmp2 - echo -fi - -grep '^PASS' "$now_s" | sed 's/^....: //' >$tmp1 -grep '^FAIL' "$before_s" | sed 's/^....: //' | comm -12 $tmp1 - >$tmp2 - -grep -s . $tmp2 >/dev/null -if [ $? = 0 ]; then - echo "Tests that now work, but didn't before:" - echo - cat $tmp2 - echo -fi - -grep '^FAIL' "$now_s" | sed 's/^....: //' >$tmp1 -grep '^[PF]A[SI][SL]' "$before_s" | sed 's/^....: //' | comm -23 $tmp1 - >$tmp2 - -grep -s . $tmp2 >/dev/null -if [ $? = 0 ]; then - echo "New tests that FAIL:" - echo - cat $tmp2 - echo -fi - -grep '^PASS' "$now_s" | sed 's/^....: //' >$tmp1 -grep '^[PF]A[SI][SL]' "$before_s" | sed 's/^....: //' | comm -23 $tmp1 - >$tmp2 - -grep -s . $tmp2 >/dev/null -if [ $? = 0 ]; then - echo "New tests that PASS:" - echo - cat $tmp2 - echo -fi - -grep '^[PF]A[SI][SL]' "$now_s" | sed 's/^....: //' >$tmp1 -grep '^PASS' "$before_s" | sed 's/^....: //' | comm -13 $tmp1 - >$tmp2 - -grep -s . $tmp2 >/dev/null -if [ $? = 0 ]; then - echo "Old tests that passed, that have disappeared: (Eeek!)" - echo - cat $tmp2 - echo -fi - -grep '^[PF]A[SI][SL]' "$now_s" | sed 's/^....: //' >$tmp1 -grep '^FAIL' "$before_s" | sed 's/^....: //' | comm -13 $tmp1 - >$tmp2 - -grep -s . $tmp2 >/dev/null -if [ $? = 0 ]; then - echo "Old tests that failed, that have disappeared: (Eeek!)" - echo - cat $tmp2 - echo -fi diff --git a/contrib/gcc/contrib/convert_to_f2c b/contrib/gcc/contrib/convert_to_f2c deleted file mode 100755 index 9a499fc..0000000 --- a/contrib/gcc/contrib/convert_to_f2c +++ /dev/null @@ -1,48 +0,0 @@ -#!/bin/sh -# -# convert_to_f2c [g2c-dir] -# -# Renames certain files in a g2c (libg2c) directory so they no longer have the -# `.netlib' suffix, a la netlib's f2c distribution. If `g2c-dir' is not -# specified, `g2c-YYYYMMDD' is the default, where YYYYMMDD is the current -# date. The directory is renamed such that the first `g' becomes an `f', -# usually `g2c-YYYYMMDD' -> `f2c-YYYYMMDD'. -# -# (C) 1999 Free Software Foundation -# Originally by James Craig Burley , September 1999. -# -# This script is Free Software, and it can be copied, distributed and -# modified as defined in the GNU General Public License. A copy of -# its license can be downloaded from http://www.gnu.org/copyleft/gpl.html - -set -e - -if [ x$1 = x ] -then - dir=g2c-`date +%Y%m%d` -else - dir=$1 -fi - -newdir=`echo $dir | sed -e "s:g:f:"` - -cd $dir - -set +e - -mv -i changes.netlib changes -mv -i disclaimer.netlib disclaimer -mv -i g2c.hin f2c.h -mv -i permission.netlib permission -mv -i readme.netlib readme -cd libF77 -mv -i README.netlib README -mv -i makefile.netlib makefile -cd ../libI77 -mv -i README.netlib README -mv -i makefile.netlib makefile -cd .. - -cd .. - -mv -iv $dir $newdir diff --git a/contrib/gcc/contrib/convert_to_g2c b/contrib/gcc/contrib/convert_to_g2c deleted file mode 100755 index 5d05f84..0000000 --- a/contrib/gcc/contrib/convert_to_g2c +++ /dev/null @@ -1,48 +0,0 @@ -#!/bin/sh -# -# convert_to_g2c [f2c-dir] -# -# Renames certain files in a netlib f2c directory so they have the `.netlib' -# suffix, a la g77's version of f2c (libg2c). If `f2c-dir' is not specified, -# `f2c-YYYYMMDD' is the default, where YYYYMMDD is the current date. -# The directory is renamed such that the first `f' becomes a `g', -# usually `f2c-YYYYMMDD' -> `g2c-YYYYMMDD'. -# -# (C) 1999 Free Software Foundation -# Originally by James Craig Burley , September 1999. -# -# This script is Free Software, and it can be copied, distributed and -# modified as defined in the GNU General Public License. A copy of -# its license can be downloaded from http://www.gnu.org/copyleft/gpl.html - -set -e - -if [ x$1 = x ] -then - dir=f2c-`date +%Y%m%d` -else - dir=$1 -fi - -newdir=`echo $dir | sed -e "s:f:g:"` - -cd $dir - -set +e - -mv -i changes changes.netlib -mv -i disclaimer disclaimer.netlib -mv -i f2c.h g2c.hin -mv -i permission permission.netlib -mv -i readme readme.netlib -cd libF77 -mv -i README README.netlib -mv -i makefile makefile.netlib -cd ../libI77 -mv -i README README.netlib -mv -i makefile makefile.netlib -cd .. - -cd .. - -mv -iv $dir $newdir diff --git a/contrib/gcc/contrib/download_f2c b/contrib/gcc/contrib/download_f2c deleted file mode 100755 index 159c52e..0000000 --- a/contrib/gcc/contrib/download_f2c +++ /dev/null @@ -1,77 +0,0 @@ -#!/bin/sh -# -# download_f2c -# -# Unpacks a directory full of f2c stuff obtained from netlib, naming -# the directory f2c-YYYYMMDD (YYYYMMDD being the current date), -# leaving it in current working directory. -# -# This shell script downloads the tarball from netlib, unpacks everything, -# and strips off the redundant files, leaving a bare-bones (but fully -# reproducible) f2c source directory. (You must have yacc/bison to rebuild -# gram.c, by the way.) -# -# (C) 1999 Free Software Foundation -# Originally by James Craig Burley , September 1999. -# -# This script is Free Software, and it can be copied, distributed and -# modified as defined in the GNU General Public License. A copy of -# its license can be downloaded from http://www.gnu.org/copyleft/gpl.html -# -# FIXME: Replace WHOAMI with whatever is the canonical way to -# obtain the user's email address these days. - -dir=f2c-`date +%Y%m%d` -if [ ! -d $dir ] -then - mkdir $dir -fi -cd $dir - -echo Preparing $dir... - -if [ ! -d tmp ] -then - mkdir tmp -fi - -if [ ! -f tmp/f2c.tar ] -then - cd tmp - echo Downloading f2c.tar via ftp... - ftp -n netlib.bell-labs.com < /dev/null && rm libf77 -rm -f libF77/xsum0.out libF77/libF77.xsum -sh libi77 > /dev/null && rm libi77 -rm -f libI77/xsum0.out libI77/libI77.xsum -rm -f src/xsum0.out -touch src/xsum.out -cmp f2c.h src/f2c.h && rm -fv src/f2c.h -cmp src/readme src/README && rm -fv src/readme - -echo Deleting f2c.tar... -rm tmp/f2c.tar -rmdir tmp - -cd .. - -echo Latest f2c now in $dir. diff --git a/contrib/gcc/contrib/gcc_build b/contrib/gcc/contrib/gcc_build deleted file mode 100755 index 4d0eea3..0000000 --- a/contrib/gcc/contrib/gcc_build +++ /dev/null @@ -1,316 +0,0 @@ -#! /bin/sh - -######################################################################## -# -# File: gcc_build -# Author: Mark Mitchell -# Date: 07/10/2000 -# -# Contents: -# Script to automatically download and build GCC. -# -# Copyright (c) 2000, 2001 Free Software Foundation. -# -# This file is part of GNU CC. -# -# GNU CC 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 CC 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 CC; see the file COPYING. If not, write to -# the Free Software Foundation, 59 Temple Place - Suite 330, -# Boston, MA 02111-1307, USA. -# -######################################################################## - -######################################################################## -# Notes -######################################################################## - -# If you are using password-based CVS, you must manually log in, and -# not log out from, the CVS server before running this script. - -# You can set the following variables in the environment. They -# have no corresponding command-line options because they should -# only be needed infrequently: -# -# MAKE The path to `make'. - -######################################################################## -# Functions -######################################################################## - -# Issue the error message given by $1 and exit with a non-zero -# exit code. - -error() { - echo "gcc_build: error: $1" - exit 1 -} - -# Issue a usage message explaining how to use this script. - -usage() { -cat <, August 1998. -# -# This script is Free Software, and it can be copied, distributed and -# modified as defined in the GNU General Public License. A copy of -# its license can be downloaded from http://www.gnu.org/copyleft/gpl.html - - -# Default options used when updating via CVS. -UPDATE_OPTIONS=-Pd -# Use -P to prune empty directories. -# Use -d to create any directories that exist in the repository but not -# locally. -# Use -A to reset any sticky tags, dates, or `-k' options. - -######## Anything below shouldn't be changed by regular users. - -# Arrange for the value of $0 to be available for functions -self=$0 - -# This function prints a list of all generated files, along with their -# dependencies. Note that only one target is supported per line: the -# colon is stripped from the output. -files_and_dependencies () { - sed -e 's/ *#.*//' -e '/^$/d' -e 's/://' <<\EOF -# All automake dependencies within texinfo -# In fact, not all, since we do not care about sub-directories that -# we do not build. In particular, *.po and *.gmo are not touched. -texinfo/aclocal.m4: texinfo/configure.in texinfo/acinclude.m4 -texinfo/Makefile.in: texinfo/Makefile.am texinfo/configure.in texinfo/aclocal.m4 -texinfo/configure: texinfo/configure.in texinfo/aclocal.m4 -texinfo/stamp-h.in: texinfo/configure.in texinfo/aclocal.m4 texinfo/acconfig.h -texinfo/lib/Makefile.in: texinfo/lib/Makefile.am texinfo/configure.in texinfo/aclocal.m4 -texinfo/makeinfo/Makefile.in: texinfo/makeinfo/Makefile.am texinfo/configure.in texinfo/aclocal.m4 -texinfo/util/Makefile.in: texinfo/util/Makefile.am texinfo/configure.in texinfo/aclocal.m4 -# Now, proceed to gcc automatically generated files -gcc/configure: gcc/configure.in -gcc/cstamp-h.in: gcc/configure.in gcc/acconfig.h -gcc/config.in: gcc/cstamp-h.in -gcc/fixinc/fixincl.x: gcc/fixinc/fixincl.tpl gcc/fixinc/inclhack.def -# And then, language-specific files -gcc/f/intdoc.texi: gcc/f/intdoc.in gcc/f/intdoc.c gcc/f/intrin.h gcc/f/intrin.def -gcc/ada/treeprs.ads: gcc/ada/treeprs.adt gcc/ada/sinfo.ads gcc/ada/xtreeprs.adb -gcc/ada/einfo.h: gcc/ada/einfo.ads gcc/ada/einfo.adb gcc/ada/xeinfo.adb -gcc/ada/sinfo.h: gcc/ada/sinfo.ads gcc/ada/xsinfo.adb -gcc/ada/nmake.adb: gcc/ada/sinfo.ads gcc/ada/nmake.adt gcc/ada/xnmake.adb -gcc/ada/nmake.ads: gcc/ada/sinfo.ads gcc/ada/nmake.adt gcc/ada/xnmake.adb -# And libraries, at last -libchill/configure: libchill/configure.in -libf2c/configure: libf2c/configure.in -libf2c/libF77/configure: libf2c/libF77/configure.in -libf2c/libI77/configure: libf2c/libI77/configure.in -libf2c/libI77/stamp-h.in: libf2c/libI77/configure.in -libf2c/libI77/config.h.in: libf2c/libI77/configure.in libf2c/libI77/stamp-h.in -libf2c/libU77/configure: libf2c/libU77/configure.in -libf2c/libU77/stamp-h.in: libf2c/libU77/configure.in libf2c/libU77/acconfig.h -libobjc/configure: libobjc/configure.in -# fastjar -fastjar/aclocal.m4: fastjar/configure.in -fastjar/Makefile.in: fastjar/Makefile.am fastjar/configure.in fastjar/aclocal.m4 -fastjar/configure: fastjar/configure.in fastjar/aclocal.m4 -fastjar/stamp-h.in: fastjar/configure.in fastjar/aclocal.m4 -boehm-gc/aclocal.m4: boehm-gc/configure.in boehm-gc/acinclude.m4 -boehm-gc/Makefile.in: boehm-gc/Makefile.am boehm-gc/configure.in boehm-gc/aclocal.m4 -boehm-gc/configure: boehm-gc/configure.in boehm-gc/aclocal.m4 -libjava/aclocal.m4: libjava/configure.in libjava/acinclude.m4 -libjava/Makefile.in: libjava/Makefile.am libjava/configure.in libjava/aclocal.m4 -libjava/configure: libjava/configure.in libjava/aclocal.m4 -libjava/libltdl/aclocal.m4: libjava/libltdl/configure.in libjava/libltdl/acinclude.m4 -libjava/libltdl/Makefile.in: libjava/libltdl/Makefile.am libjava/libltdl/configure.in libjava/libltdl/aclocal.m4 -libjava/libltdl/configure: libjava/libltdl/configure.in libjava/libltdl/aclocal.m4 -libjava/libltdl/stamp-h.in: libjava/libltdl/configure.in libjava/libltdl/aclocal.m4 libjava/libltdl/acconfig.h -EOF -} - - -# This function touches generated files such that the ``end'' user does -# not have to rebuild them. -touch_files () { - rm -f Makefile.$$ - echo 'all: \' > Makefile.$$ - files_and_dependencies | sed 's, .*, \\,' >> Makefile.$$ - echo '; @true' >> Makefile.$$ - files_and_dependencies | sed 's, ,: ,' >> Makefile.$$ - files_and_dependencies | sed 's, .*, \\,' >> Makefile.$$ - echo ':' >> Makefile.$$ - echo ' @for f in $?; do test -f $$f || exit 0; done; \' >> Makefile.$$ - echo ' echo Touching $@...; \' >> Makefile.$$ - echo ' echo Touching $@... 1>&2; \' >> Makefile.$$ - echo ' touch $@' >> Makefile.$$ - files_and_dependencies | sed 's,[^ ]* ,,;s,$, :,' >> Makefile.$$ - while ${MAKE-make} -f Makefile.$$ all | grep . > /dev/null; do - sleep 1 - done 2>&1 - rm -f Makefile.$$ -} - - -# Whenever we update the tree or install a patch, we may be modifying -# this script. By re-execing it, we ensure that the appropriate -# dependencies and rules will be used. -touch_files_reexec () { - echo "Adjusting file timestamps" - exec ${CONFIG_SHELL-/bin/sh} $self --touch -} - -# This functions applies a patch to an existing tree. -apply_patch () { - if [ -f $1 ]; then - echo "Applying patch file $1" - case "$1" in - *gz) - gzip -d -c $1 | patch -p1 ;; - *bz2) - bzip2 -d -c $1 | patch -p1 ;; - *) - cat $1 | patch -p1 ;; - esac - fi - touch_files_reexec -} - -# Check whether this indeed looks like a local tree. -if [ ! -f gcc/version.c ]; then - echo "This does not seem to be a GCC tree!" - exit -fi - -case "$1" in -# First of all, check whether we are going to process a patch. ---patch) - if test "$#" != 2; then - echo "$1" expects only one argument >&2 - exit 1 - fi - apply_patch "${2}" - exit $? - ;; - ---touch) - if test "$#" != 1; then - echo "$1" does not expect any argument >&2 - exit 1 - fi - touch_files - exit $? - ;; - ---list) - if test "$#" != 1; then - echo "$1" does not expect any argument >&2 - exit 1 - fi - files_and_dependencies | sed 's/ /: /' - exit $? - ;; - ---help) - sed -e '1,2d' -e '/^UPDATE_OPTIONS=/{i\ -\ - -p -}' \ - -e '/^$/,$d' -e 's/#//' -e 's/^ //' < $0 - exit $? - ;; - -esac - -# Check whether this indeed looks like a local CVS tree. -if [ ! -d CVS ]; then - echo "This does not seem to be a GCC CVS tree!" - exit -fi - -# Check command-line options -if [ x"${1}"x = x"--nostdflags"x ]; then - shift -else - set -- $UPDATE_OPTIONS ${1+"$@"} -fi - -echo "Updating CVS tree" -cvs -q update ${1+"$@"} -if [ $? -ne 0 ]; then - (touch_files_reexec) - echo "CVS update of full tree failed." >&2 - exit 1 -fi - -{ - date - TZ=UTC date -} > LAST_UPDATED -touch_files_reexec diff --git a/contrib/gcc/contrib/gccbug.el b/contrib/gcc/contrib/gccbug.el deleted file mode 100644 index 55821e5..0000000 --- a/contrib/gcc/contrib/gccbug.el +++ /dev/null @@ -1,84 +0,0 @@ -;;; gccbug.el --- forward bug reports to gnats -;; (C) 2000 Free Software Foundation -;; Written by Martin v. Löwis -;; Usage: -;; In rmail, bind a key to rmail-gccbug-reply, e.g. -;; (require 'rmail) -;; (require 'gccbug) -;; (define-key rmail-mode-map "R" 'rmail-gccbug-reply) -;; Then, when reviewing a report, type R to create a gnats-formatted -;; message. - -(provide 'gccbug) - -(defun gccbug-reply () - (interactive) - (let ((orig-yank-prefix mail-yank-prefix)) - (insert ">Submitter-Id: net\n") - (insert ">Originator: \n") - (insert ">Confidential: no\n") - (insert ">Synopsis: ") - (save-excursion - (mail-subject) - (let ((stop (point))) - (re-search-backward "Re: ") - (copy-region-as-kill (match-end 0) stop))) - (yank) - (insert "\n") - (insert ">Severity: serious\n") - (insert ">Priority: medium\n") - (insert ">Category: \n") - (insert ">Class: \n") - ;(insert ">State: analyzed\n") - (insert ">Release: 2.95.2\n") - (insert ">Environment:\n") - (insert ">Description:\n") - (set 'mail-yank-prefix nil) - (set 'mail-yank-ignored-headers - "^via:\\|^mail-from:\\|^origin:\\|^status:\\|^remailed\\|^received:\\|^summary-line:\\|^to:\\|^subject:\\|^in-reply-to:\\|^return-path:\\|^X-.*:\\|^User-Agent:\\|^MIME-Version:\\|^Content-.*:\\|^List-.*:\\|C[Cc]:\\|^Precedence:\\|^Sender:\\|^Mailing-List:\\|^Delivered-To:\\|^>From") - (mail-yank-original t) - (set 'mail-yank-prefix orig-yank-prefix) - ; Copy From: field to Originator: - (re-search-backward "From: ") - (let ((beg (match-end 0))) - (end-of-line) - (kill-region beg (point))) - (re-search-backward ">Originator: ") - (goto-char (match-end 0)) - (yank) - ; Kill From: line - (re-search-forward "From:") - (beginning-of-line) - (kill-line 1) - ; Replace Message-ID: with Original-Message-ID - (beginning-of-buffer) - (re-search-forward "Message-ID: .*") - (replace-match "Original-\\&") - ; Replace To: line, adding recipient to Notify list - (mail-to) - (re-search-backward "To: ") - (replace-match "To: gcc-gnats@gcc.gnu.org\nX-GNATS-Notify: ") - ; add additional fields - (end-of-buffer) - (insert ">How-To-Repeat: \n>Fix: \n") - ; See whether an Organization: is present - (let ((org (re-search-backward "Organization:.*" nil t))) - (if org - (progn - (kill-region (point) (match-end 0)) - (re-search-backward ">Confidential") - (insert ">") - (yank) - (insert "\n")))) -; This kills CC: lines, but rmail-reply below won't create any -; (mail-cc) -; (beginning-of-line) -; (kill-line 1) - )) - -(defun rmail-gccbug-reply () - (interactive) - (rmail-toggle-header 0) - (rmail-reply t) - (gccbug-reply)) - diff --git a/contrib/gcc/contrib/gennews b/contrib/gcc/contrib/gennews deleted file mode 100755 index 3db519d..0000000 --- a/contrib/gcc/contrib/gennews +++ /dev/null @@ -1,56 +0,0 @@ -#! /bin/sh -# -# Script to generate the NEWS file from online release notes. -# Contributed by Joseph Myers . -# -# Copyright (C) 2000, 2001, 2002 Free Software Foundation, Inc. -# This file is part of GNU CC. -# -# GNU CC 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 CC 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 CC; see the file COPYING. If not, write to -# the Free Software Foundation, 59 Temple Place - Suite 330, -# Boston, MA 02111-1307, USA. - -website=http://gcc.gnu.org/ -files="gcc-3.2/index.html gcc-3.2/changes.html - gcc-3.1/index.html gcc-3.1/changes.html - gcc-3.0/gcc-3.0.html gcc-3.0/features.html gcc-3.0/caveats.html - gcc-2.95/index.html gcc-2.95/features.html gcc-2.95/caveats.html - egcs-1.1/index.html egcs-1.1/features.html egcs-1.1/caveats.html - egcs-1.0/egcs-1.0.3.html egcs-1.0/egcs-1.0.2.html egcs-1.0/egcs-1.0.1.html - egcs-1.0/egcs-1.0.html egcs-1.0/features.html egcs-1.0/caveats.html" - -set -e - -cat < - -while (<>) -{ - if (/^Index: (.*)/) - { - $full = $1; - print; - for (1..7) - { - $_ = <>; - s/^([-+*]{3}) [^\t]+\t/$1 $full\t/ - unless m{ /dev/null\t}; - print; - } - } - else - { - print; - } -} diff --git a/contrib/gcc/contrib/newcvsroot b/contrib/gcc/contrib/newcvsroot deleted file mode 100755 index 43e8e07..0000000 --- a/contrib/gcc/contrib/newcvsroot +++ /dev/null @@ -1,34 +0,0 @@ -#! /usr/bin/env bash -# Written by Roland McGrath - -# Replaces all CVS/Root and CVS/Repository files in a checked-out CVS -# tree. Requires shell with # and % variable substitution (e.g. bash). - -# Usage: newcvsroot - -if [ $# != 3 ]; then - echo "usage: `basename $0` " - exit 1 -fi - -root=$1; shift -module=$1; shift -topdir=$1; shift - -rep=${root##*:} - -case "$topdir" in -/*|./*|../*) echo >&2 "$0 wants relative path from top of checkout"; exit 1;; -esac - -find $topdir \( -name Repository -o -name Root \) -print | while read f; do - -case "$f" in -*/CVS/Root) echo $root > "$f" ;; -*/CVS/Repository) - r=${module}${f#${topdir}} - echo > "$f" $rep/${r%/CVS/Repository} - ;; -esac - -done diff --git a/contrib/gcc/contrib/regression/ChangeLog b/contrib/gcc/contrib/regression/ChangeLog deleted file mode 100644 index 196a593..0000000 --- a/contrib/gcc/contrib/regression/ChangeLog +++ /dev/null @@ -1,37 +0,0 @@ -2002-11-19 Release Manager - - * GCC 3.2.1 Released. - -2002-11-19 Release Manager - - * GCC 3.2.1 Released. - -2002-11-18 Release Manager - - * GCC 3.2.1 Released. - -2002-08-14 Release Manager - - * GCC 3.2 Released. - -2002-07-25 Release Manager - - * GCC 3.1.1 Released. - -2002-05-14 Release Manager - - * GCC 3.1 Released. - -2002-05-14 Release Manager - - * GCC 3.1 Released. - -2002-01-31 Geoffrey Keating - - * btest-gcc.sh: New file. - * objs-gcc.sh: New file. - * site.exp: New file. - * ChangeLog: New file. - * README: New file. - - diff --git a/contrib/gcc/contrib/regression/README b/contrib/gcc/contrib/regression/README deleted file mode 100644 index 7e0e657..0000000 --- a/contrib/gcc/contrib/regression/README +++ /dev/null @@ -1,18 +0,0 @@ -This directory contains scripts that are used by the regression -tester, . - -The primary script is 'btest-gcc.sh'. This is the script that is run -to actually test the compiler. - -'objs-gcc.sh' takes a combined tree and builds (but does not test) the -tools required for 'btest-gcc.sh'. It is run periodically to update -the tools. This script is followed by running 'btest-gcc.sh' using -the newly-build tools to check that they will not cause regressions. - -'site.exp' is what $DEJAGNU points to when the regression tester runs -these scripts. - -Note that any changes made here need to be approved by the regression -tester's maintainer (see MAINTAINERS). The changes will be used on -the tester's next run, so `experimental' changes are very strongly -discouraged :-). diff --git a/contrib/gcc/contrib/regression/btest-gcc.sh b/contrib/gcc/contrib/regression/btest-gcc.sh deleted file mode 100755 index 1bd7e8c..0000000 --- a/contrib/gcc/contrib/regression/btest-gcc.sh +++ /dev/null @@ -1,172 +0,0 @@ -#!/bin/sh - -# Test GCC. -# Copyright (C) 1999, 2000, 2001, 2002 Free Software Foundation, Inc. - -# 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 - -# INPUT: -# btest -# TARGET is the target triplet. It should be the same one -# as used in constructing PREFIX. -TARGET=$1 -# SOURCE is the directory containing the toplevel configure. -SOURCE=$2 - -# PREFIX is the directory for the --prefix option to configure. -# For cross compilers, it needs to contain header files, -# libraries, and binutils. PATH should probably include -# $PREFIX/bin. -PREFIX=$3 -# This script also needs to include the GDB testsuite in -# $PREFIX/share/gdb-testsuite. -GDB_TESTSUITE=$PREFIX/share/gdb-testsuite - -# STATE is where the tester maintains its internal state, -# described below. -STATE=$4 - -# BUILD is a temporary directory that this script will -# delete and recreate, containing the build tree. -BUILD=$5 - -# you also probably need to set these variables: -# PATH: should contain a native gcc, and a cross gdb. -# DEJAGNU: should point to a site.exp suitable for testing -# the compiler and debugger. - - -# OUTPUT: in $RESULT, one of the following keywords: -# error the script failed due to -# a misconfiguration or resource limitation -# build the build failed -# regress- the build succeeded, but there were -# testsuite regressions, listed in $REGRESS -# pass build succeeded and there were no regressions -RESULT=$STATE/RESULT -# in BUILD_LOG, the output of the build -BUILD_LOG=$STATE/build_log -# in FAILED, a list of failing testcases -FAILED=$STATE/failed -# in PASSES, the list of testcases we expect to pass -PASSES=$STATE/passes -# in REGRESS, a list of testcases we expected to pass but that failed -REGRESS=$STATE/regress - -# Make sure various files exist. -[ -d $STATE ] || mkdir $STATE -[ -f $PASSES ] || touch $PASSES - -# These lines should stay in this order, because -# that way if something is badly wrong and $RESULT can't -# be modified then cron will mail the error message. -# The reverse order could lead to the testsuite claiming that -# everything always passes, without running any tests. -echo error > $RESULT || exit 1 -exec > $BUILD_LOG 2>&1 || exit 1 - -set -x - -# Nuke $BUILD and recreate it. -rm -rf $BUILD $REGRESS $FAILED -mkdir $BUILD || exit 1 -cd $BUILD || exit 1 - -H_BUILD=`$SOURCE/config.guess || exit 1` -H_HOST=$H_BUILD -if [ $TARGET = native ] ; then - H_TARGET=$H_HOST -else - H_TARGET=$TARGET -fi -H_REAL_TARGET=`$SOURCE/config.sub $H_TARGET || exit 1` - -# TESTLOGS is the list of dejagnu .sum files that the tester should -# look at. -TESTLOGS="gcc/testsuite/gcc.sum -gcc/testsuite/g++.sum -gcc/testsuite/g77.sum -gcc/testsuite/objc.sum -test-gdb/gdb.sum" -# $H_TARGET/libstdc++-v3/testsuite/libstdc++-v3.sum - -# Build. -echo build > $RESULT -$SOURCE/configure --prefix=$PREFIX --target=$H_TARGET || exit 1 -if [ $H_HOST = $H_TARGET ] ; then - if ! make bootstrap ; then - [ -s gcc/.bad_compare ] || exit 1 - cat gcc/.bad_compare >> $REGRESS || exit 1 - make all || exit 1 - fi -else - make || exit 1 -fi -echo error > $RESULT || exit 1 - -# Test GCC against its internal testsuite. -make -k check-gcc - -# Test libstd++-v3 -make check-target-libstdc++-v3 - -# Test the just-built GCC with the GDB testsuite. -mkdir test-gdb || exit 1 -cd $GDB_TESTSUITE || exit 1 -for i in gdb.* ; do - if [ -d $i ] ; then - mkdir $BUILD/test-gdb/$i - fi -done -cd $BUILD/test-gdb || exit 1 -echo "set host_alias $H_HOST" > site.exp -echo "set host_triplet $H_HOST" >> site.exp -echo "set target_alias $H_TARGET" >> site.exp -echo "set target_triplet $H_REAL_TARGET" >> site.exp -echo "set build_alias $H_BUILD" >> site.exp -echo "set build_triplet $H_BUILD" >> site.exp -echo "set srcdir $GDB_TESTSUITE" >> site.exp -runtest --tool gdb - -# Sanity-check the testlogs. They should contain at least one PASS. -cd $BUILD || exit 1 -for LOG in $TESTLOGS ; do - if ! grep ^PASS: $LOG > /dev/null ; then - echo build > $RESULT - exit 1 - fi -done - -# Work out what failed -for LOG in $TESTLOGS ; do - L=`basename $LOG` - awk '/^FAIL: / { print "'$L'",$2; }' $LOG || exit 1 -done | sort | uniq > $FAILED || exit 1 -comm -12 $FAILED $PASSES >> $REGRESS || exit 1 -NUMREGRESS=`wc -l < $REGRESS | tr -d ' '` -if [ $NUMREGRESS -ne 0 ] ; then - echo regress-$NUMREGRESS > $RESULT - exit 1 -fi - -# It passed. Update the state. -for LOG in $TESTLOGS ; do - L=`basename $LOG` - awk '/^PASS: / { print "'$L'",$2; }' $LOG || exit 1 -done | sort | uniq | comm -23 - $FAILED > ${PASSES}~ || exit 1 -[ -s ${PASSES}~ ] || exit 1 -mv ${PASSES}~ ${PASSES} || exit 1 -echo pass > $RESULT -exit 0 diff --git a/contrib/gcc/contrib/regression/objs-gcc.sh b/contrib/gcc/contrib/regression/objs-gcc.sh deleted file mode 100755 index 839fcff..0000000 --- a/contrib/gcc/contrib/regression/objs-gcc.sh +++ /dev/null @@ -1,121 +0,0 @@ -#!/bin/sh - -# Build tools for testing GCC. -# Copyright (C) 1999, 2000, 2001, 2002 Free Software Foundation, Inc. - -# 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 - -# INPUT: -# btest -# TARGET is the target triplet. It should be the same one -# as used in constructing PREFIX. -TARGET=$1 -# SOURCE is the directory containing the toplevel configure. -SOURCE=$2 - -# PREFIX is the directory for the --prefix option to configure. -PREFIX=$3 - -# STATE is where the tester maintains its internal state, -# described below. -STATE=$4 - -# BUILD is a temporary directory that this script will -# delete and recreate, containing the build tree. -BUILD=$5 - -# you also probably need to set these variables: -# DEJAGNU: should point to a site.exp suitable for testing -# the compiler and debugger. - -# OUTPUT: in $RESULT, one of the following keywords: -# error the script failed due to -# a misconfiguration or resource limitation -# build the build failed -# regress- the build succeeded, but there were -# testsuite regressions, listed in $REGRESS -# pass build succeeded and there were no regressions -RESULT=$STATE/RESULT -# in BUILD_LOG, the output of the build -BUILD_LOG=$STATE/build_log -# in FAILED, a list of failing testcases -FAILED=$STATE/failed -# in PASSES, the list of testcases we expect to pass -PASSES=$STATE/passes -# in REGRESS, a list of testcases we expected to pass but that failed -REGRESS=$STATE/regress - -# Make sure various files exist. -[ -d $STATE ] || mkdir $STATE -[ -f $PASSES ] || touch $PASSES - -# These lines should stay in this order, because -# that way if something is badly wrong and $RESULT can't -# be modified then cron will mail the error message. -# The reverse order could lead to the testsuite claiming that -# everything always passes, without running any tests. -echo error > $RESULT || exit 1 -exec > $BUILD_LOG 2>&1 || exit 1 - -set -x - -# TESTLOGS is the list of dejagnu .sum files that the tester should -# look at. -TESTLOGS="test/gcc/gcc.sum -test/g++/g++.sum" - -# Nuke $BUILD and recreate it. -rm -rf $BUILD $REGRESS $FAILED -mkdir $BUILD $BUILD/build $BUILD/objs || exit 1 -cd $BUILD || exit 1 - -# This script used to use config.guess, but that is not how releng -# determines hostnames. -H_BUILD=`$SOURCE/config.guess || exit 1` -H_HOST=$H_BUILD -if [ $TARGET = native ] ; then - H_TARGET=$H_HOST -else - H_TARGET=$TARGET -fi -H_REAL_TARGET=`$SOURCE/config.sub $H_TARGET || exit 1` -H_REAL_BUILD=`$SOURCE/config.sub $H_BUILD || exit 1` -H_REAL_HOST=`$SOURCE/config.sub $H_HOST || exit 1` - -# Build. -echo build > $RESULT - -cd $BUILD/build || exit 1 -TMP_PREFIX=$BUILD/install -$SOURCE/configure --prefix=$PREFIX --target=$H_TARGET || exit 1 -if [ $H_REAL_TARGET = $H_REAL_HOST -a $H_REAL_TARGET = i686-pc-linux-gnu ] - then - make all-gdb all-dejagnu all-ld || exit 1 - make install-gdb install-dejagnu install-ld || exit 1 -else - make || exit 1 - make install || exit 1 -fi - -mkdir -p $PREFIX/share/gdb-testsuite || exit 1 -cd $SOURCE/gdb/testsuite || exit 1 -find . -print | cpio -pdmu $PREFIX/share/gdb-testsuite || exit 1 -# selftest.exp requires keeping old sources around, which is impractical -rm $PREFIX/share/gdb-testsuite/gdb.base/selftest.exp -# these tests seem to be broken and randomly failing -rm -r $PREFIX/share/gdb-testsuite/gdb.mi - -echo pass > $RESULT -exit 0 diff --git a/contrib/gcc/contrib/regression/site.exp b/contrib/gcc/contrib/regression/site.exp deleted file mode 100644 index fa50920..0000000 --- a/contrib/gcc/contrib/regression/site.exp +++ /dev/null @@ -1,18 +0,0 @@ -global target_list - -case "$target_triplet" in { - { "powerpc*-*eabi*" } { -# if { [info exists tool] && $tool == "gcc" } { -# set target_list { "powerpc-sim{,-fpic}" } -# } else { - set target_list { "powerpc-sim" } -# } - } - { "mips-elf" } { - set target_list { "mips-sim" } - } - - default { - set target_list { "unix" } - } -} diff --git a/contrib/gcc/contrib/test_installed b/contrib/gcc/contrib/test_installed deleted file mode 100755 index 1ef27bf..0000000 --- a/contrib/gcc/contrib/test_installed +++ /dev/null @@ -1,114 +0,0 @@ -#! /bin/sh - -# (C) 1998, 2000 Free Software Foundation -# Originally by Alexandre Oliva - -# This script is Free Software, and it can be copied, distributed and -# modified as defined in the GNU General Public License. A copy of -# its license can be downloaded from http://www.gnu.org/copyleft/gpl.html - -# This scripts assumes it lives in the contrib directory of the GCC -# source tree, so it will find the testsuite tree from its location. -# If you move it elsewhere, or want to use another testsuite tree, you -# can override the defaults with --srcdir=/some/dir/GCC or -# --testsuite=/some/dir/GCC/gcc/testsuite. If you specify -# --testsuite, --srcdir will be ignored; otherwise, `/gcc/testsuite' -# will be appended to the srcdir. - -# You may specify where the binaries to be tested should be picked up -# from. If you specify --prefix=/some/dir, gcc, g++ and g77 will be -# looked for at /some/dir/bin. Each one may be overridden by -# specifying --with-gcc=/pathname/to/gcc, --with-g++=/pathname/to/g++ -# and --with-g77=/pathname/to/g77. If you specify --without-gcc, -# --without-g++ or --without-g77, the test for the specified program -# will be skipped. By default, gcc, g++ and g77 will be searched in -# the PATH. - -# An additional argument may specify --tmpdir=/some/dir; by default, -# temporaries will be stored in the current directory, where the log -# files will be stored. - -# The script will interpret arguments until it finds one it does not -# understand. The remaining ones will be passed to `runtest'. A -# double-dash can be used to explicitly separate the arguments to -# `test_installed' from the ones to `runtest'. - -# This script should be run in an empty directory; it will refuse to -# run if it finds a file named site.exp in the current directory. - - -if test -f site.exp; then - echo site.exp already exists >&2 - exit 1 -fi - -while true; do - case "$1" in - --with-testsuite=*) testsuite=`echo "$1" | sed 's/[^=]*=//'`; shift;; - --srcdir=*) srcdir=`echo "$1" | sed 's/[^=]*=//'`; shift;; - - --prefix=*) prefix=`echo "$1" | sed 's/[^=]*=//'`; shift;; - --with-gcc=*) GCC_UNDER_TEST=`echo "$1" | sed 's/[^=]*=//'`; shift;; - --with-g++=*) GXX_UNDER_TEST=`echo "$1" | sed 's/[^=]*=//'`; shift;; - --with-g77=*) G77_UNDER_TEST=`echo "$1" | sed 's/[^=]*=//'`; shift;; - --without-gcc) GCC_UNDER_TEST=no; shift;; - --without-g++) GXX_UNDER_TEST=no; shift;; - --without-g77) G77_UNDER_TEST=no; shift;; - - --tmpdir=*) tmpdir=`echo "$1" | sed 's/[^=]*=//'`; shift;; - - --help) cat <<\EOF -Runs the testsuite for an installed version of gcc/g++/g77 -Copyright (C) 1998 Free Software Foundation -by Alexandre Oliva - -Supported arguments: - ---help prints this page - ---with-testsuite=/some/dir/gcc/testsuite specify the testsuite directory ---srcdir=/some/dir same as --with-testsuite=/some/dir/gcc/testsuite - [deduced from shell-script pathname] - ---prefix=/some/dir use gcc, g++ and g77 from /some/dir/bin [PATH] ---with-gcc=/some/dir/bin/gcc use specified gcc program [gcc] ---with-g++=/some/dir/bin/g++ use specified g++ program [g++] ---with-g77=/some/dir/bin/g77 use specified g77 program [g77] ---without-gcc do not run gcc testsuite ---without-g++ do not run g++ testsuite ---without-g77 do not run g77 testsuite - ---tmpdir=/some/dir create temporaries and leave failed programs - at specified directory [.] - --- end of argument list; following arguments are passed to runtest -EOF - exit - ;; - - --) shift; break;; - *) break;; - esac -done - -if test x"${testsuite+set}" != x"set" && test x"${srcdir+set}" != x"set"; then - file=$0 - while [ -h $file ]; do - file=`ls -l $file | sed s/'.* -> '//` - done - srcdir=`CDPATH=. && cd \`echo "$file" | sed 's,/*[^/]*$,,;s,^$,.,'\`/.. >/dev/null && pwd` -fi - -cat >site.exp < - -# This script is Free Software, and it can be copied, distributed and -# modified as defined in the GNU General Public License. A copy of -# its license can be downloaded from http://www.gnu.org/copyleft/gpl.html - -# This script processes *.{sum,log} files, producing a shell-script -# that sends e-mail to the appropriate lists and renames files to -# *.sent. It currently handles only gcc, but it should be quite easy -# to modify it to handle other packages and its mailing lists. - -# The scripts assumes it is run in the root directory of the build -# tree, and it will include all .sum files it finds in the mail -# report. - -# configure flags are extracted from ./config.status - -# if the BOOT_CFLAGS environment variable is set, it will be included -# in the mail report too. - -# The usage pattern of this script is as follows: - -# test_summary | more # so as to observe what should be done - -# test_summary | sh # so as to actually send e-mail and move log files - -# It accepts a few command line arguments. For example: -# -o: re-reads logs that have been mailed already (.sum.sent) -# -t: prevents logs from being renamed -# -p: prepend specified file (or list of files: -p "a b") to the report -# -i: append specified file (or list of files: -i "a b") to the report -# -m: specify the e-mail address to send notes to. An appropriate default -# should be selected from the log files. -# -f: force reports to be mailed; if omitted, only reports that differ -# from the sent.* version are sent. - -# Find a good awk. -if test -z "$AWK" ; then - for AWK in gawk nawk awk ; do - if type $AWK 2>&1 | grep 'not found' > /dev/null 2>&1 ; then - : - else - break - fi - done -fi - -: ${filesuffix=}; export filesuffix -: ${move=true}; export move -: ${forcemail=false}; export forcemail -while true; do - case "$1" in - -o) filesuffix=.sent; move=false; : ${mailto=nobody}; shift;; - -t) move=false; shift;; - -p) prepend_logs=${prepend_logs+"$prepend_logs "}"$2"; shift 2;; - -i) append_logs=${append_logs+"$append_logs "}"$2"; shift 2;; - -m) mailto=$2; forcemail=true; shift 2;; - -f) unset mailto; forcemail=true; shift;; - *) break;; - esac -done -: ${mailto="\" address \""}; export mailto -files=`find . -name \*.sum$filesuffix -print | sort` -anyfile=false anychange=$forcemail && -for file in $files; do - [ -f $file ] && - anyfile=true && - { $anychange || - anychange=`diff -u $file.sent $file 2>/dev/null | - if test ! -f $file.sent || - egrep '^[-+](XPASS|FAIL)' >/dev/null; then - echo true - else - echo false - fi - ` - } - true -done && -$anyfile && -if $forcemail || $anychange; then :; else mailto=nobody; fi && -# We use cat instead of listing the files as arguments to AWK because -# GNU awk 3.0.0 would break if any of the filenames contained `=' and -# was preceded by an invalid ``variable'' name. -cat ./config.status $files | -$AWK ' -BEGIN { - lang=""; - address="gcc-testresults@gcc.gnu.org"; - version="gcc"; - print "cat <<'"'"'EOF'"'"' |"; -'${prepend_logs+" system(\"cat $prepend_logs\"); "}' -} -$1 ~ /\/configure$/ { - srcdir = $1; - gsub(/\/configure$/, "", srcdir); - printf "LAST_UPDATED: "; - system("tail -1 " srcdir "/LAST_UPDATED"); - print ""; - - $1 = "configure flags:"; configflags = $0; - gsub(/--with-gcc-version-trigger=[^ ]* /, "", configflags); - gsub(/ --norecursion/, "", configflags) -} -/^Running target / { print ""; print; } -/^Target / { if (host != "") next; else host = $3; } -/^Host / && host ~ /^unix\{.*\}$/ { host = $3 " " substr(host, 5); } -/^Native / { if (host != "") next; else host = $4; } -/^[ ]*=== [^ ]+ tests ===/ { - if (lang == "") lang = " "$2" "; else lang = " "; -} -$2 == "version" { save = $0; $1 = ""; $2 = ""; version = $0; gsub(/^ */, "", version); gsub(/\r$/, "", version); $0 = save; } -/\===.*Summary/ { print ""; print; blanks=1; } -/tests ===/ || /^(Target|Host|Native)/ || $2 == "version" { print; blanks=1; } -/^(XPASS|FAIL|UNRESOLVED|WARNING|ERROR|# of )/ { print; } -# dumpall != 0 && /^X?(PASS|FAIL|UNTESTED)|^testcase/ { dumpall=0; } -# dumpall != 0 { print; } -# /^FAIL/ { dumpall=1; } -/^$/ && blanks>0 { print; --blanks; } -END { if (lang != "") { - print ""; - print "Compiler version: " prefix version lang; - print "Platform: " host; - print configflags; - '${BOOT_CFLAGS+'print "BOOT_CFLAGS='"${BOOT_CFLAGS}"'";'}' - if (boot_cflags != 0) print boot_cflags; -'${append_logs+" system(\"cat $append_logs\"); "}' - print "EOF"; - print "Mail -s \"Results for " prefix version lang "testsuite on " host "\" '"${mailto}"' &&"; -}} -{ next; } -' | sed "s/\([\`\$\\\\]\)/\\\\\\1/g" && -if $move; then - for file in $files `ls -1 $files | sed s/sum$/log/`; do - [ -f $file ] && echo "mv `pwd`/$file `pwd`/$file.sent &&" - done -fi && -echo true -exit 0 diff --git a/contrib/gcc/contrib/texi2pod.pl b/contrib/gcc/contrib/texi2pod.pl deleted file mode 100755 index 4fb8892..0000000 --- a/contrib/gcc/contrib/texi2pod.pl +++ /dev/null @@ -1,427 +0,0 @@ -#! /usr/bin/perl -w - -# Copyright (C) 1999, 2000, 2001 Free Software Foundation, Inc. - -# This file is part of GNU CC. - -# GNU CC 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 CC 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 CC; see the file COPYING. If not, write to -# the Free Software Foundation, 59 Temple Place - Suite 330, -# Boston MA 02111-1307, USA. - -# This does trivial (and I mean _trivial_) conversion of Texinfo -# markup to Perl POD format. It's intended to be used to extract -# something suitable for a manpage from a Texinfo document. - -$output = 0; -$skipping = 0; -%sects = (); -$section = ""; -@icstack = (); -@endwstack = (); -@skstack = (); -@instack = (); -$shift = ""; -%defs = (); -$fnno = 1; -$inf = ""; -$ibase = ""; - -while ($_ = shift) { - if (/^-D(.*)$/) { - if ($1 ne "") { - $flag = $1; - } else { - $flag = shift; - } - $value = ""; - ($flag, $value) = ($flag =~ /^([^=]+)(?:=(.+))?/); - die "no flag specified for -D\n" - unless $flag ne ""; - die "flags may only contain letters, digits, hyphens, dashes and underscores\n" - unless $flag =~ /^[a-zA-Z0-9_-]+$/; - $defs{$flag} = $value; - } elsif (/^-/) { - usage(); - } else { - $in = $_, next unless defined $in; - $out = $_, next unless defined $out; - usage(); - } -} - -if (defined $in) { - $inf = gensym(); - open($inf, "<$in") or die "opening \"$in\": $!\n"; - $ibase = $1 if $in =~ m|^(.+)/[^/]+$|; -} else { - $inf = \*STDIN; -} - -if (defined $out) { - open(STDOUT, ">$out") or die "opening \"$out\": $!\n"; -} - -while(defined $inf) { -while(<$inf>) { - # Certain commands are discarded without further processing. - /^\@(?: - [a-z]+index # @*index: useful only in complete manual - |need # @need: useful only in printed manual - |(?:end\s+)?group # @group .. @end group: ditto - |page # @page: ditto - |node # @node: useful only in .info file - |(?:end\s+)?ifnottex # @ifnottex .. @end ifnottex: use contents - )\b/x and next; - - chomp; - - # Look for filename and title markers. - /^\@setfilename\s+([^.]+)/ and $fn = $1, next; - /^\@settitle\s+([^.]+)/ and $tl = postprocess($1), next; - - # Identify a man title but keep only the one we are interested in. - /^\@c\s+man\s+title\s+([A-Za-z0-9-]+)\s+(.+)/ and do { - if (exists $defs{$1}) { - $fn = $1; - $tl = postprocess($2); - } - next; - }; - - # Look for blocks surrounded by @c man begin SECTION ... @c man end. - # This really oughta be @ifman ... @end ifman and the like, but such - # would require rev'ing all other Texinfo translators. - /^\@c\s+man\s+begin\s+([A-Z]+)\s+([A-Za-z0-9-]+)/ and do { - $output = 1 if exists $defs{$2}; - $sect = $1; - next; - }; - /^\@c\s+man\s+begin\s+([A-Z]+)/ and $sect = $1, $output = 1, next; - /^\@c\s+man\s+end/ and do { - $sects{$sect} = "" unless exists $sects{$sect}; - $sects{$sect} .= postprocess($section); - $section = ""; - $output = 0; - next; - }; - - # handle variables - /^\@set\s+([a-zA-Z0-9_-]+)\s*(.*)$/ and do { - $defs{$1} = $2; - next; - }; - /^\@clear\s+([a-zA-Z0-9_-]+)/ and do { - delete $defs{$1}; - next; - }; - - next unless $output; - - # Discard comments. (Can't do it above, because then we'd never see - # @c man lines.) - /^\@c\b/ and next; - - # End-block handler goes up here because it needs to operate even - # if we are skipping. - /^\@end\s+([a-z]+)/ and do { - # Ignore @end foo, where foo is not an operation which may - # cause us to skip, if we are presently skipping. - my $ended = $1; - next if $skipping && $ended !~ /^(?:ifset|ifclear|ignore|menu|iftex)$/; - - die "\@end $ended without \@$ended at line $.\n" unless defined $endw; - die "\@$endw ended by \@end $ended at line $.\n" unless $ended eq $endw; - - $endw = pop @endwstack; - - if ($ended =~ /^(?:ifset|ifclear|ignore|menu|iftex)$/) { - $skipping = pop @skstack; - next; - } elsif ($ended =~ /^(?:example|smallexample|display)$/) { - $shift = ""; - $_ = ""; # need a paragraph break - } elsif ($ended =~ /^(?:itemize|enumerate|[fv]?table)$/) { - $_ = "\n=back\n"; - $ic = pop @icstack; - } else { - die "unknown command \@end $ended at line $.\n"; - } - }; - - # We must handle commands which can cause skipping even while we - # are skipping, otherwise we will not process nested conditionals - # correctly. - /^\@ifset\s+([a-zA-Z0-9_-]+)/ and do { - push @endwstack, $endw; - push @skstack, $skipping; - $endw = "ifset"; - $skipping = 1 unless exists $defs{$1}; - next; - }; - - /^\@ifclear\s+([a-zA-Z0-9_-]+)/ and do { - push @endwstack, $endw; - push @skstack, $skipping; - $endw = "ifclear"; - $skipping = 1 if exists $defs{$1}; - next; - }; - - /^\@(ignore|menu|iftex)\b/ and do { - push @endwstack, $endw; - push @skstack, $skipping; - $endw = $1; - $skipping = 1; - next; - }; - - next if $skipping; - - # Character entities. First the ones that can be replaced by raw text - # or discarded outright: - s/\@copyright\{\}/(c)/g; - s/\@dots\{\}/.../g; - s/\@enddots\{\}/..../g; - s/\@([.!? ])/$1/g; - s/\@[:-]//g; - s/\@bullet(?:\{\})?/*/g; - s/\@TeX\{\}/TeX/g; - s/\@pounds\{\}/\#/g; - s/\@minus(?:\{\})?/-/g; - s/\\,/,/g; - - # Now the ones that have to be replaced by special escapes - # (which will be turned back into text by unmunge()) - s/&/&/g; - s/\@\{/{/g; - s/\@\}/}/g; - s/\@\@/&at;/g; - - # Inside a verbatim block, handle @var specially. - if ($shift ne "") { - s/\@var\{([^\}]*)\}/<$1>/g; - } - - # POD doesn't interpret E<> inside a verbatim block. - if ($shift eq "") { - s//>/g; - } else { - s//>/g; - } - - # Single line command handlers. - - /^\@include\s+(.+)$/ and do { - push @instack, $inf; - $inf = gensym(); - - # Try cwd and $ibase. - open($inf, "<" . $1) - or open($inf, "<" . $ibase . "/" . $1) - or die "cannot open $1 or $ibase/$1: $!\n"; - next; - }; - - /^\@(?:section|unnumbered|unnumberedsec|center)\s+(.+)$/ - and $_ = "\n=head2 $1\n"; - /^\@subsection\s+(.+)$/ - and $_ = "\n=head3 $1\n"; - - # Block command handlers: - /^\@itemize\s+(\@[a-z]+|\*|-)/ and do { - push @endwstack, $endw; - push @icstack, $ic; - $ic = $1; - $_ = "\n=over 4\n"; - $endw = "itemize"; - }; - - /^\@enumerate(?:\s+([a-zA-Z0-9]+))?/ and do { - push @endwstack, $endw; - push @icstack, $ic; - if (defined $1) { - $ic = $1 . "."; - } else { - $ic = "1."; - } - $_ = "\n=over 4\n"; - $endw = "enumerate"; - }; - - /^\@([fv]?table)\s+(\@[a-z]+)/ and do { - push @endwstack, $endw; - push @icstack, $ic; - $endw = $1; - $ic = $2; - $ic =~ s/\@(?:samp|strong|key|gcctabopt|env)/B/; - $ic =~ s/\@(?:code|kbd)/C/; - $ic =~ s/\@(?:dfn|var|emph|cite|i)/I/; - $ic =~ s/\@(?:file)/F/; - $_ = "\n=over 4\n"; - }; - - /^\@((?:small)?example|display)/ and do { - push @endwstack, $endw; - $endw = $1; - $shift = "\t"; - $_ = ""; # need a paragraph break - }; - - /^\@itemx?\s*(.+)?$/ and do { - if (defined $1) { - # Entity escapes prevent munging by the <> processing below. - $_ = "\n=item $ic\<$1\>\n"; - } else { - $_ = "\n=item $ic\n"; - $ic =~ y/A-Ya-y/B-Zb-z/; - $ic =~ s/(\d+)/$1 + 1/eg; - } - }; - - $section .= $shift.$_."\n"; -} -# End of current file. -close($inf); -$inf = pop @instack; -} - -die "No filename or title\n" unless defined $fn && defined $tl; - -$sects{NAME} = "$fn \- $tl\n"; -$sects{FOOTNOTES} .= "=back\n" if exists $sects{FOOTNOTES}; - -for $sect (qw(NAME SYNOPSIS DESCRIPTION OPTIONS ENVIRONMENT FILES - BUGS NOTES FOOTNOTES SEEALSO AUTHOR COPYRIGHT)) { - if(exists $sects{$sect}) { - $head = $sect; - $head =~ s/SEEALSO/SEE ALSO/; - print "=head1 $head\n\n"; - print scalar unmunge ($sects{$sect}); - print "\n"; - } -} - -sub usage -{ - die "usage: $0 [-D toggle...] [infile [outfile]]\n"; -} - -sub postprocess -{ - local $_ = $_[0]; - - # @value{foo} is replaced by whatever 'foo' is defined as. - while (m/(\@value\{([a-zA-Z0-9_-]+)\})/g) { - if (! exists $defs{$2}) { - print STDERR "Option $2 not defined\n"; - s/\Q$1\E//; - } else { - $value = $defs{$2}; - s/\Q$1\E/$value/; - } - } - - # Formatting commands. - # Temporary escape for @r. - s/\@r\{([^\}]*)\}/R<$1>/g; - s/\@(?:dfn|var|emph|cite|i)\{([^\}]*)\}/I<$1>/g; - s/\@(?:code|kbd)\{([^\}]*)\}/C<$1>/g; - s/\@(?:gccoptlist|samp|strong|key|option|env|command|b)\{([^\}]*)\}/B<$1>/g; - s/\@sc\{([^\}]*)\}/\U$1/g; - s/\@file\{([^\}]*)\}/F<$1>/g; - s/\@w\{([^\}]*)\}/S<$1>/g; - s/\@(?:dmn|math)\{([^\}]*)\}/$1/g; - - # Cross references are thrown away, as are @noindent and @refill. - # (@noindent is impossible in .pod, and @refill is unnecessary.) - # @* is also impossible in .pod; we discard it and any newline that - # follows it. Similarly, our macro @gol must be discarded. - - s/\(?\@xref\{(?:[^\}]*)\}(?:[^.<]|(?:<[^<>]*>))*\.\)?//g; - s/\s+\(\@pxref\{(?:[^\}]*)\}\)//g; - s/;\s+\@pxref\{(?:[^\}]*)\}//g; - s/\@noindent\s*//g; - s/\@refill//g; - s/\@gol//g; - s/\@\*\s*\n?//g; - - # @uref can take one, two, or three arguments, with different - # semantics each time. @url and @email are just like @uref with - # one argument, for our purposes. - s/\@(?:uref|url|email)\{([^\},]*)\}/<B<$1>>/g; - s/\@uref\{([^\},]*),([^\},]*)\}/$2 (C<$1>)/g; - s/\@uref\{([^\},]*),([^\},]*),([^\},]*)\}/$3/g; - - # Turn B blah> into B I B to - # match Texinfo semantics of @emph inside @samp. Also handle @r - # inside bold. - s/<//g; - 1 while s/B<((?:[^<>]|I<[^<>]*>)*)R<([^>]*)>/B<$1>${2}B]*)I<([^>]+)>/B<$1>I<$2>B]*)B<([^>]+)>/I<$1>B<$2>I//g; - s/([BI])<(\s+)([^>]+)>/$2$1<$3>/g; - s/([BI])<([^>]+?)(\s+)>/$1<$2>$3/g; - - # Extract footnotes. This has to be done after all other - # processing because otherwise the regexp will choke on formatting - # inside @footnote. - while (/\@footnote/g) { - s/\@footnote\{([^\}]+)\}/[$fnno]/; - add_footnote($1, $fnno); - $fnno++; - } - - return $_; -} - -sub unmunge -{ - # Replace escaped symbols with their equivalents. - local $_ = $_[0]; - - s/</E/g; - s/>/E/g; - s/{/\{/g; - s/}/\}/g; - s/&at;/\@/g; - s/&/&/g; - return $_; -} - -sub add_footnote -{ - unless (exists $sects{FOOTNOTES}) { - $sects{FOOTNOTES} = "\n=over 4\n\n"; - } - - $sects{FOOTNOTES} .= "=item $fnno.\n\n"; $fnno++; - $sects{FOOTNOTES} .= $_[0]; - $sects{FOOTNOTES} .= "\n\n"; -} - -# stolen from Symbol.pm -{ - my $genseq = 0; - sub gensym - { - my $name = "GEN" . $genseq++; - my $ref = \*{$name}; - delete $::{$name}; - return $ref; - } -} diff --git a/contrib/gcc/contrib/warn_summary b/contrib/gcc/contrib/warn_summary deleted file mode 100755 index 10b4c0d..0000000 --- a/contrib/gcc/contrib/warn_summary +++ /dev/null @@ -1,210 +0,0 @@ -#!/bin/sh -# -# This script parses the output of a gcc bootstrap when using warning -# flags and determines various statistics. -# -# usage: warn_summary [-llf] [-s stage] [-nosub|-ch|-cp|-f|-java|-ada|-intl|-fixinc] -# [-pass|-wpass] [file(s)] -# -# -llf -# Filter out long lines from the bootstrap output before any other -# action. This is useful for systems with broken awks/greps which choke -# on long lines. It is not done by default as it sometimes slows things -# down. -# -# -s number -# Take warnings from stage "Number". Stage 0 means show warnings from -# before and after the gcc bootstrap directory. E.g. libraries, etc. -# This presupposes using "gcc -W*" for the stage1 compiler. -# -# -nosub -# Only show warnings from the gcc top level directory. -# -ch|-cp|-f|-java|-ada|-intl|-fixinc -# Only show warnings from the specified language subdirectory. -# These override each other so only the last one passed takes effect. -# -# -pass -# Pass through the bootstrap output after filtering stage and subdir -# (useful for manual inspection.) This is all lines, not just warnings. -# -wpass -# Pass through only warnings from the bootstrap output after filtering -# stage and subdir. -# -# By Kaveh Ghazi (ghazi@caip.rutgers.edu) 12/13/97. - - -# Some awks choke on long lines, sed seems to do a better job. -# Truncate lines > 255 characters. RE '.\{255,\}' doesn't seem to work. :-( -# Only do this if -llf was specified, because it can really slow things down. -longLineFilter() -{ - if test -z "$llf" ; then - cat - else - sed 's/^\(...............................................................................................................................................................................................................................................................\).*/\1/' - fi -} - -# This function does one of three things. It either passes through -# all warning data, or passes through gcc toplevel warnings, or passes -# through a particular subdirectory set of warnings. -subdirectoryFilter() -{ - longLineFilter | ( - if test -z "$filter" ; then - # Pass through all lines. - cat - else - if test "$filter" = nosub ; then - # Omit all subdirectories. - egrep -v '/gcc/(ch|cp|f|java|intl|fixinc)/' - else - # Pass through only subdir $filter. - grep "/gcc/$filter/" - fi - fi ) -} - -# This function displays all lines from stageN of the bootstrap. If -# stage==0, then show lines prior to stage1 and lines from after the last -# stage. I.e. utilities, libraries, etc. -stageNfilter() -{ - if test "$stageN" -lt 1 ; then - # stage "0" means check everything *but* gcc. - $AWK "BEGIN{t=1} ; /^Bootstrapping the compiler/{t=0} ; /^Building runtime libraries/{t=1} ; {if(t==1)print}" - else - if test "$stageN" -eq 1 ; then - $AWK "/^Bootstrapping the compiler|^Building the C and C\+\+ compiler/{t=1} ; /stage$stageN/{t=0} ; {if(t==1)print}" - else - stageNminus1=`expr $stageN - 1` - $AWK "/stage${stageNminus1}\//{t=1} ; /stage$stageN/{t=0} ; {if(t==1)print}" - fi - fi -} - -# This function displays lines containing warnings. -warningFilter() -{ - grep ' warning: ' -} - -# This function replaces `xxx' with `???', where xxx is usually some -# variable or function name. This allows similar warnings to be -# counted together when summarizing. However it avoids replacing -# certain C keywords which are known appear in various messages. - -keywordFilter() { - sed 's/.*warning: //; - s/`\(int\)'"'"'/"\1"/g; - s/`\(long\)'"'"'/"\1"/g; - s/`\(char\)'"'"'/"\1"/g; - s/`\(inline\)'"'"'/"\1"/g; - s/`\(else\)'"'"'/"\1"/g; - s/`\(return\)'"'"'/"\1"/g; - s/`\(static\)'"'"'/"\1"/g; - s/`\(extern\)'"'"'/"\1"/g; - s/`\(const\)'"'"'/"\1"/g; - s/`\(noreturn\)'"'"'/"\1"/g; - s/`\(longjmp\)'"'"' or `\(vfork\)'"'"'/"\1" or "\2"/g; - s/`'"[^']*'/"'`???'"'/g;"' - s/.*format, .* arg (arg [0-9][0-9]*)/??? format, ??? arg (arg ???)/; - s/\([( ]\)arg [0-9][0-9]*\([) ]\)/\1arg ???\2/; - s/"\([^"]*\)"/`\1'"'"'/g' -} - -# This function strips out relative pathnames for source files printed -# by the warningFilter function. This is done so that as the snapshot -# directory name changes every week, the output of this program can be -# compared to previous runs without spurious diffs caused by source -# directory name changes. - -srcdirFilter() -{ - sed ' -s%^[^ ]*/\(gcc/\)%\1%; -s%^[^ ]*/\(include/\)%\1%; -s%^[^ ]*/\(texinfo/\)%\1%; -s%^[^ ]*/\(fastjar/\)%\1%; -s%^[^ ]*/\(zlib/\)%\1%; -s%^[^ ]*/\(lib[a-z23+-]*/\)%\1%;' -} - -# Start the main section. - -usage="usage: `basename $0` [-llf] [-s stage] [-nosub|-ch|-cp|-f|-java|-ada|-intl|-fixinc] [-pass|-wpass] [file(s)]" -stageN=3 -tmpfile=/tmp/tmp-warn.$$ - -# Remove $tmpfile on exit and various signals. -trap "rm -f $tmpfile" 0 -trap "rm -f $tmpfile ; exit 1" 1 2 3 5 9 13 15 - -# Find a good awk. -if test -z "$AWK" ; then - for AWK in gawk nawk awk ; do - if type $AWK 2>&1 | grep 'not found' > /dev/null 2>&1 ; then - : - else - break - fi - done -fi - -# Parse command line arguments. -while test -n "$1" ; do - case "$1" in - -llf) llf=1 ; shift ;; - -s) if test -z "$2"; then echo $usage 1>&2; exit 1; fi - stageN="$2"; shift 2 ;; - -s*) stageN="`expr $1 : '-s\(.*\)'`" ; shift ;; - -nosub|-ch|-cp|-f|-java|-ada|-intl|-fixinc) filter="`expr $1 : '-\(.*\)'`" ; shift ;; - -pass) pass=1 ; shift ;; - -wpass) pass=w ; shift ;; - -*) echo $usage 1>&2 ; exit 1 ;; - *) break ;; - esac -done - -# Check for a valid value of $stageN. -case "$stageN" in - [0-9]) ;; - *) echo "Stage <$stageN> must be in the range [0..9]." 1>&2 ; exit 1 ;; -esac - -for file in "$@" ; do - - stageNfilter < $file | subdirectoryFilter > $tmpfile - - # (Just) show me the warnings. - if test "$pass" != '' ; then - if test "$pass" = w ; then - warningFilter < $tmpfile - else - cat $tmpfile - fi - continue - fi - - if test -z "$filter" ; then - echo "Counting all warnings," - else - if test "$filter" = nosub ; then - echo "Counting non-subdirectory warnings," - else - echo "Counting warnings in the gcc/$filter subdirectory," - fi - fi - count=`warningFilter < $tmpfile | wc -l` - echo there are $count warnings in stage$stageN of this bootstrap. - - echo - echo Number of warnings per file: - warningFilter < $tmpfile | srcdirFilter | $AWK -F: '{print$1}' | sort | \ - uniq -c | sort -nr - - echo - echo Number of warning types: - warningFilter < $tmpfile | keywordFilter | sort | uniq -c | sort -nr - -done diff --git a/contrib/gcc/faq.html b/contrib/gcc/faq.html deleted file mode 100644 index 9170647..0000000 --- a/contrib/gcc/faq.html +++ /dev/null @@ -1,698 +0,0 @@ - - - -GCC Frequently Asked Questions - - - - -

GCC Frequently Asked Questions

- -

The latest version of this document is always available at -http://www.gnu.org/software/gcc/faq.html.

- -

This FAQ tries to answer specific questions concerning GCC. For -general information regarding C, C++, resp. Fortran please check the -comp.lang.c FAQ, -comp.std.c++ -FAQ, -and the Fortran -Information page.

- -

Other GCC-related FAQs: - - libstdc++-v3, and - GCJ.

- -
-

Questions

-
    -
  1. General information -
      -
    1. What is the relationship between GCC and EGCS?
    2. -
    3. What is the relationship between GCC and Cygnus / Red Hat?
    4. -
    5. What is an open development model?
    6. -
    7. How do I report a bug?
    8. -
    9. How do I get a bug fixed or a feature added?
    10. -
    11. Does GCC work on my platform?
    12. -
  2. - -
  3. Installation -
      -
    1. How to install multiple versions of GCC
    2. -
    3. Dynamic linker is unable to find GCC libraries
    4. -
    5. libstdc++/libio tests fail badly with --enable-shared
    6. -
    7. GCC can not find GNU as/GNU ld
    8. -
    9. cpp: Usage:... Error
    10. -
    11. Optimizing the compiler itself
    12. -
  4. - -
  5. Testsuite problems -
      -
    1. Unable to run the testsuite
    2. -
    3. How do I pass flags like - -fnew-abi to the testsuite?
    4. -
    5. How can I run the test suite with multiple options?
    6. -
  6. - -
  7. Older versions of GCC -
      -
    1. Is there a stringstream / sstream for GCC 2.95.2?
    2. -
  8. - -
  9. Miscellaneous -
      -
    1. Virtual memory exhausted
    2. -
    3. Friend Templates
    4. -
    5. dynamic_cast, throw, typeid don't work with shared libraries
    6. -
    7. Why do I need autoconf, bison, xgettext, automake, etc?
    8. -
    9. Why can't I build a shared library?
    10. -
    11. How to work around too long C++ symbol names? - (-fsquangle)
    12. -
    13. When building C++, the linker says my constructors, destructors or virtual tables are undefined, but I defined them
    14. -
    15. Will GCC someday include an incremental linker?
    16. -
  10. -
- - -
- -

General information

- -

What is the relationship between GCC and EGCS?

- -

In 1990/1991 gcc version 1 had reached a point of stability. For the -targets it could support, it worked well. It had limitations inherent in -its design that would be difficult to resolve, so a major effort was made -to resolve those limitiations and gcc version 2 was the result.

- -

When we had gcc2 in a useful state, development efforts on gcc1 stopped -and we all concentrated on making gcc2 better than gcc1 could ever be. This -is the kind of step forward we wanted to make with the EGCS project when it -was formed in 1997.

- -

In April 1999 the Free Software Foundation officially halted -development on the gcc2 compiler and appointed the EGCS project as the -official GCC maintainers. The net result was a single project which -carries forward GCC development under the ultimate control of the -GCC Steering Committee.

- - -
-

What is the relationship between GCC and Cygnus / Red Hat?

- -

It is a common mis-conception that Red Hat controls GCC either -directly or indirectly.

- -

While Red Hat does donate hardware, network connections, code and -developer time to GCC development, Red Hat does not control GCC.

- -

Overall control of GCC is in the hands of the -GCC Steering Committee -which includes people from a variety of different organizations and -backgrounds. The purpose of the steering committee is to make -decisions in the best interest of GCC and to help ensure that no -individual or company has control over the project.

- -

To summarize, Red Hat contributes to the GCC project, but does not exert -a controlling influence over GCC.

- -
-

What is an open development model?

- -

We are using a bazaar style -[1] -approach to GCC development: we make snapshots publicly available to -anyone who wants to try them; we welcome anyone to join -the development mailing list. All of the discussions on the -development mailing list are available via the web. We're going to be -making releases with a much higher frequency than they have been made -in the past.

- -

In addition to weekly snapshots of the GCC development sources, we -have the sources readable from a CVS server by anyone. Furthermore we -are using remote CVS to allow remote maintainers write access to the -sources.

- -

There have been many potential GCC developers who were not able to -participate in GCC development in the past. We want these people to -help in any way they can; we ultimately want GCC to be the best compiler -in the world.

- -

A compiler is a complicated piece of software, there will still be -strong central maintainers who will reject patches, who will demand -documentation of implementations, and who will keep the level of -quality as high as it is today. Code that could use wider testing may -be integrated--code that is simply ill-conceived won't be.

- -

GCC is not the first piece of software to use this open development -process; FreeBSD, the Emacs lisp repository, and the Linux kernel are -a few examples of the bazaar style of development.

- -

With GCC, we are adding new features and optimizations at a -rate that has not been done since the creation of gcc2; these -additions inevitably have a temporarily destabilizing effect. -With the help of developers working together with this bazaar style -development, the resulting stability and quality levels will be better -than we've had before.

- -
-[1] - We've been discussing different development models a lot over the - past few months. The paper which started all of this introduced two - terms: A cathedral development model versus a bazaar - development model. The paper is written by Eric S. Raymond, it is - called ``The - Cathedral and the Bazaar''. The paper is a useful starting point - for discussions. -
- - -
-

How do I report a bug?

- -

There are complete instructions here.

- - -
-

How do I get a bug fixed or a feature added?

- -

There are lots of ways to get something fixed. The list below may be -incomplete, but it covers many of the common cases. These are listed -roughly in order of increasing difficulty for the average GCC user, -meaning someone who is not skilled in the internals of GCC, and where -difficulty is measured in terms of the time required to fix the bug. -No alternative is better than any other; each has its benefits and -disadvantages.

- -
    -
  • Hire someone to fix it for you. There are various companies and - individuals providing support for GCC. This alternative costs - money, but is relatively likely to get results.
  • - -
  • Report the problem to the GCC GNATS bug tracking system - and hope that someone will be kind - enough to fix it for you. While this is certainly possible, and - often happens, there is no guarantee that it will. You should - not expect the same response from this method that you would see - from a commercial support organization since the people who read - GCC bug reports, if they choose to help you, will be volunteering their - time. This alternative will work best if you follow the directions - on submitting bugreports.
  • - -
  • Fix it yourself. This alternative will probably bring results, - if you work hard enough, but will probably take a lot of time, - and, depending on the quality of your work and the perceived - benefits of your changes, your code may or may not ever make it - into an official release of GCC.
  • -
- -
- -

Does GCC work on my platform?

- -

The host/target specific installation notes for GCC include information -about known problems with installing or using GCC on particular platforms. -These are included in the sources for a release in INSTALL/specific.html, -and the latest version -is always available at the GCC web site. -Reports of successful builds -for several versions of GCC are also available at the web site.

- -
- -

Installation

- -

How to install multiple versions of GCC

- -

It may be desirable to install multiple versions of the compiler on -the same system. This can be done by using different prefix paths at -configure time and a few symlinks.

- -

Basically, configure the two compilers with different --prefix options, -then build and install each compiler. Assume you want "gcc" to be the latest -compiler and available in /usr/local/bin; also assume that you want "gcc2" -to be the older gcc2 compiler and also available in /usr/local/bin.

- -

The easiest way to do this is to configure the new GCC with ---prefix=/usr/local/gcc and the older gcc2 with ---prefix=/usr/local/gcc2. Build and install both -compilers. Then make a symlink from /usr/local/bin/gcc -to /usr/local/gcc/bin/gcc and from -/usr/local/bin/gcc2 to -/usr/local/gcc2/bin/gcc. Create similar links for the -"g++", "c++" and "g77" compiler drivers.

- -

An alternative to using symlinks is to configure with a ---program-transform-name option. This option specifies a -sed command to process installed program names with. Using it you can, -for instance, have all the new GCC programs installed as "new-gcc" and -the like. You will still have to specify different ---prefix options for new GCC and old GCC, because it is -only the executable program names that are transformed. The difference -is that you (as administrator) do not have to set up symlinks, but -must specify additional directories in your (as a user) PATH. A -complication with --program-transform-name is that the -sed command invariably contains characters significant to the shell, -and these have to be escaped correctly, also it is not possible to use -"^" or "$" in the command. Here is the option to prefix "new-" to the -new GCC installed programs:

-
---program-transform-name='s,\\\\(.*\\\\),new-\\\\1,' -
-

With the above --prefix option, that will install the new -GCC programs into /usr/local/gcc/bin with names prefixed -by "new-". You can use --program-transform-name if you -have multiple versions of GCC, and wish to be sure about which version -you are invoking.

- -

If you use --prefix, GCC may have difficulty locating a GNU -assembler or linker on your system, GCC can not find GNU -as/GNU ld explains how to deal with this.

- -

Another option that may be easier is to use the ---program-prefix= or --program-suffix= -options to configure. So if you're installing GCC 2.95.2 and don't -want to disturb the current version of GCC in -/usr/local/bin/, you could do

-
-configure --program-suffix=-2.95.2 <other configure options> -
-

This should result in GCC being installed as -/usr/local/bin/gcc-2.95.2 instead of -/usr/local/bin/gcc.

- -
-

Dynamic linker is unable to find GCC libraries

- -

This problem manifests itself by programs not finding shared -libraries they depend on when the programs are started. Note this -problem often manifests itself with failures in the libio/libstdc++ -tests after configuring with --enable-shared and building GCC.

- -

GCC does not specify a runpath so that the dynamic linker can find -dynamic libraries at runtime.

- -

The short explanation is that if you always pass a -R option to the -linker, then your programs become dependent on directories which -may be NFS mounted, and programs may hang unnecessarily when an -NFS server goes down.

- -

The problem is not programs that do require the directories; those -programs are going to hang no matter what you do. The problem is -programs that do not require the directories.

- -

SunOS effectively always passed a -R option for every --L option; this was a bad idea, and so it was removed for -Solaris. We should not recreate it.

- -

However, if you feel you really need such an option to be passed -automatically to the linker, you may add it to the GCC specs file. -This file can be found in the same directory that contains cc1 (run -gcc -print-prog-name=cc1 to find it). You may add linker -flags such as -R or -rpath, depending on -platform and linker, to the *link or *lib -specs.

- -

Another alternative is to install a wrapper script around gcc, g++ -or ld that adds the appropriate directory to the environment variable -LD_RUN_PATH or equivalent (again, it's -platform-dependent).

- -

Yet another option, that works on a few platforms, is to hard-code -the full pathname of the library into its soname. This can only be -accomplished by modifying the appropriate .ml file within -libstdc++/config (and also libg++/config, if you are -building libg++), so that $(libdir)/ appears just before -the library name in -soname or -h options.

- -
-

GCC can not find GNU as/GNU ld

-

GCC searches the PATH for an assembler and a loader, but it only -does so after searching a directory list hard-coded in the GCC -executables. Since, on most platforms, the hard-coded list includes -directories in which the system asembler and loader can be found, you -may have to take one of the following actions to arrange that GCC uses -the GNU versions of those programs.

- -

To ensure that GCC finds the GNU assembler (the GNU loader), which -are required by some -configurations, -you should configure these with the same --prefix option as you used -for GCC. Then build & install GNU as (GNU ld) and proceed with -building GCC.

- -

Another alternative is to create links to GNU as and ld in any of -the directories printed by the command `gcc -print-search-dirs | -grep '^programs:''. The link to `ld' should be named -`real-ld' if `ld' already exists. If such links do -not exist while you're compiling GCC, you may have to create them in -the build directories too, within the gcc directory -and in all the gcc/stage* subdirectories.

- -

GCC 2.95 allows you to specify the full pathname of the assembler -and the linker to use. The configure flags are -`--with-as=/path/to/as' and `--with-ld=/path/to/ld'. -GCC will try to use these pathnames before looking for `as' -or `(real-)ld' in the standard search dirs. If, at -configure-time, the specified programs are found to be GNU utilities, -`--with-gnu-as' and `--with-gnu-ld' need not be -used; these flags will be auto-detected. One drawback of this option -is that it won't allow you to override the search path for assembler -and linker with command-line options -B/path/ if the -specified filenames exist.

- -
-

cpp: Usage:... Error

- -

If you get an error like this when building GCC (particularly when building -__mulsi3), then you likely have a problem with your environment variables.

-
-  cpp: Usage: /usr/lib/gcc-lib/i586-unknown-linux-gnulibc1/2.7.2.3/cpp
-  [switches] input output
-
-

First look for an explicit '.' in either LIBRARY_PATH or GCC_EXEC_PREFIX -from your environment. If you do not find an explicit '.', look for -an empty pathname in those variables. Note that ':' at either the start -or end of these variables is an implicit '.' and will cause problems.

- -

Also note '::' in these paths will also cause similar problems.

- - -
-

Optimizing the compiler itself

- -

If you want to test a particular optimization option, it's useful to try -bootstrapping the compiler with that option turned on. For example, to -test the -fssa option, you could bootstrap like this:

- -
make BOOT_CFLAGS="-O2 -fssa" bootstrap
- - -
- -

Testsuite problems

- -

Unable to run the testsuite

- -

If you get a message about unable to find "standard.exp" when trying to -run the GCC testsuites, then your dejagnu is too old to run the GCC tests. -You will need to get a newer version of dejagnu from - - http://www.gnu.org/software/dejagnu/dejagnu.html.

- -
-

How do I pass flags like - -fnew-abi to the testsuite?

- -

If you invoke runtest directly, you can use the ---tool_opts option, e.g:

-
-  runtest --tool_opts "-fnew-abi -fno-honor-std" <other options>
-
-

Or, if you use make check you can use the -make variable RUNTESTFLAGS, e.g:

-
-  make RUNTESTFLAGS="--tool_opts '-fnew-abi -fno-honor-std'" check-g++
-
- -
-

How can I run the test suite with multiple options?

- -

If you invoke runtest directly, you can use the ---target_board option, e.g:

-
-  runtest --target_board "unix{-fPIC,-fpic,}" <other options>
-
-

Or, if you use make check you can use the -make variable RUNTESTFLAGS, e.g:

-
-  make RUNTESTFLAGS="--target_board 'unix{-fPIC,-fpic,}'" check-gcc
-
-

Either of these examples will run the tests three times. Once -with -fPIC, once with -fpic, and once with -no additional flags.

- -

This technique is particularly useful on multilibbed targets.

- -
- -

Older versions of GCC and EGCS

- -

Is there a stringstream / sstream for GCC 2.95.2?

- -

Yes, it's at: - - http://gcc.gnu.org/ml/libstdc++/2000-q2/msg00700/sstream.

- -
- -

Miscellaneous

- - - -

Virtual memory exhausted error

- -

This error means your system ran out of memory; this can happen for large -files, particularly when optimizing. If you're getting this error you should -consider trying to simplify your files or reducing the optimization level.

- -

Note that using -pedantic or -Wreturn-type can cause an explosion in the -amount of memory needed for template-heavy C++ code, such as code that uses -STL. Also note that -Wall includes -Wreturn-type, so if you use -Wall you -will need to specify -Wno-return-type to turn it off.

- - -
-

Friend Templates

- -

In order to make a specialization of a template function a friend -of a (possibly template) class, you must explicitly state that the -friend function is a template, by appending angle brackets to its -name, and this template function must have been declared already. -Here's an example:

-
-template <typename T> class foo {
-  friend void bar(foo<T>);
-}
-
-

The above declaration declares a non-template function named -bar, so it must be explicitly defined for each -specialization of foo. A template definition of bar -won't do, because it is unrelated with the non-template declaration -above. So you'd have to end up writing:

-
-void bar(foo<int>) { /* ... */ }
-void bar(foo<void>) { /* ... */ }
-
-

If you meant bar to be a template function, you should -have forward-declared it as follows. Note that, since the template -function declaration refers to the template class, the template class -must be forward-declared too:

-
-template <typename T>
-class foo;
-
-template <typename T>
-void bar(foo<T>);
-
-template <typename T>
-class foo {
-  friend void bar<>(foo<T>);
-};
-
-template <typename T>
-void bar(foo<T>) { /* ... */ }
-
-

In this case, the template argument list could be left empty, -because it can be implicitly deduced from the function arguments, but -the angle brackets must be present, otherwise the declaration will be -taken as a non-template function. Furthermore, in some cases, you may -have to explicitly specify the template arguments, to remove -ambiguity.

- -

An error in the last public comment draft of the ANSI/ISO C++ -Standard and the fact that previous releases of GCC would accept such -friend declarations as template declarations has led people to believe -that the forward declaration was not necessary, but, according to the -final version of the Standard, it is.

- - -
-

dynamic_cast, throw, typeid don't work with shared libraries

- -

The new C++ ABI in the GCC 3.0 series uses address comparisons, -rather than string compares, to determine type equality. This leads -to better performance. Like other objects that have to be present in the -final executable, these std::typeinfo_t objects have what -is called vague linkage because they are not tightly bound to any one -particular translation unit (object file). The compiler has to emit -them in any translation unit that requires their presence, and then -rely on the linking and loading process to make sure that only one of -them is active in the final executable. With static linking all of -these symbols are resolved at link time, but with dynamic linking, -further resolution occurs at load time. You have to ensure that -objects within a shared library are resolved against objects in the -executable and other shared libraries.

- -
    -
  • For a program which is linked against a shared library, no additional -precautions need taking.
  • - -
  • You cannot create a shared library with the "-Bsymbolic" -option, as that prevents the resolution described above.
  • - -
  • If you use dlopen to explicitly load code from a shared -library, you must do several things. First, export global symbols from -the executable by linking it with the "-E" flag (you will -have to specify this as "-Wl,-E" if you are invoking -the linker in the usual manner from the compiler driver, g++). -You must also make the external symbols in the loaded library -available for subsequent libraries by providing the RTLD_GLOBAL -flag to dlopen. The symbol resolution can be immediate or -lazy.
  • - -
- -

Template instantiations are another, user visible, case of objects -with vague linkage, which needs similar resolution. If you do not take -the above precautions, you may discover that a template instantiation -with the same argument list, but instantiated in multiple translation -units, has several addresses, depending in which translation unit the -address is taken. (This is not an exhaustive list of the kind -of objects which have vague linkage and are expected to be resolved -during linking & loading.)

- -

If you are worried about different objects with the same name -colliding during the linking or loading process, then you should use -namespaces to disambiguate them. Giving distinct objects with global -linkage the same name is a violation of the One Definition Rule (ODR) -[basic.def.odr].

- -

For more details about the way that GCC implements these and other -C++ features, please read the ABI specification. -Note the std::typeinfo_t objects which must be -resolved all begin with "_ZTS". Refer to ld's -documentation for a description of the "-E" & -"-Bsymbolic" flags.

- -
-

Why do I need autoconf, bison, xgettext, automake, etc?

- -

If you're using diffs up dated from one snapshot to the next, or -if you're using the CVS repository, you may need several additional programs -to build GCC.

- -

These include, but are not necessarily limited to autoconf, automake, -bison, and xgettext.

- -

This is necessary because neither diff nor cvs keep timestamps -correct. This causes problems for generated files as "make" may think -those generated files are out of date and try to regenerate them.

- -

An easy way to work around this problem is to use the gcc_update - script in the contrib subdirectory of GCC, which handles this -transparently without requiring installation of any additional tools. -(Note: Up to and including GCC 2.95 this script was called egcs_update -.)

- - -

When building from diffs or CVS or if you modified some sources, -you may also need to obtain development versions of some GNU tools, as -the production versions do not necessarily handle all features needed -to rebuild GCC.

- -

In general, the current versions of these tools from ftp://ftp.gnu.org/gnu/ will work. -At present, Autoconf 2.50 is not supported, and you will need to use -Autoconf 2.13; work is in progress to fix this problem. Also look at - -ftp://gcc.gnu.org/pub/gcc/infrastructure/ for any special versions -of packages.

- - -
-

Why can't I build a shared library?

- -

When building a shared library you may get an error message from the -linker like `assert pure-text failed:' or `DP relative code in file'.

- -

This kind of error occurs when you've failed to provide proper flags -to gcc when linking the shared library.

- -

You can get this error even if all the .o files for the shared library were -compiled with the proper PIC option. When building a shared library, gcc will -compile additional code to be included in the library. That additional code -must also be compiled with the proper PIC option.

- -

Adding the proper PIC option (-fpic or -fPIC) to the link -line which creates the shared library will fix this problem on targets that -support PIC in this manner. For example:

-
-	gcc -c -fPIC myfile.c
-	gcc -shared -o libmyfile.so -fPIC myfile.o
-
- - -
-

How to work around too long C++ symbol names -(-fsquangle)

- -

This question does not apply to GCC 3.0 or later versions, which -have a new C++ ABI with much shorter mangled names.

- -

If the standard assembler of your platform can't cope with the -large symbol names that the default g++ name mangling mechanism -produces, your best bet is to use GNU as, from the GNU binutils -package.

- -

Unfortunately, GNU as does not support all platforms supported by -GCC, so you may have to use an experimental work-around: the --fsquangle option, that enables compression of symbol names.

- -

Note that this option is still under development, and subject to -change. Since it modifies the name mangling mechanism, you'll need to -build libstdc++ and any other C++ libraries with this option enabled. -Furthermore, if this option changes its behavior in the future, you'll -have to rebuild them all again. :-(

- -

This option can be enabled by default by initializing -`flag_do_squangling' with `1' in `gcc/cp/decl2.c' (it is not -initialized by default), then rebuilding GCC and any C++ libraries.

- - -
-

When building C++, the linker says my constructors, destructors or virtual tables are undefined, but I defined them

- -

The ISO C++ Standard specifies that all virtual methods of a class -that are not pure-virtual must be defined, but does not require any -diagnostic for violations of this rule [class.virtual]/8. Based on -this assumption, GCC will only emit the implicitly defined -constructors, the assignment operator, the destructor and the virtual -table of a class in the translation unit that defines its first such -non-inline method.

- -

Therefore, if you fail to define this particular method, the linker -may complain about the lack of definitions for apparently unrelated -symbols. Unfortunately, in order to improve this error message, it -might be necessary to change the linker, and this can't always be -done.

- -

The solution is to ensure that all virtual methods that are not -pure are defined. Note that a destructor must be defined even if it -is declared pure-virtual [class.dtor]/7.

- - -
-

Will GCC someday include an incremental linker?

- -

Incremental linking is part of the linker, not the compiler. As -such, GCC doesn't have anything to do with incremental linking. -Depending on what platform you use, it may be possible to tell GCC to -use the platform's native linker (e.g., Solaris' ild(1)).

- - - - diff --git a/contrib/gcc/gnats.html b/contrib/gcc/gnats.html deleted file mode 100644 index 2a42024..0000000 --- a/contrib/gcc/gnats.html +++ /dev/null @@ -1,170 +0,0 @@ - - - -Submitting Bug Reports using GNATS - - -

Submitting Bug Reports using GNATS

- - -

gnatsweb and gccbug

- -

GNATS, the GNU bug tracking system, is used to track GCC bug reports. -Before submitting a bug report, please read the general instructions.

- -

The preferred way to submit a bug report is by means of the -gnatsweb -interface. Make sure you include an e-mail address, so we can inform -you when the status of your report changes.

- -

Another way is to use the gccbug program that is -automatically installed with current versions of GCC, which submits the bug -report by e-mail.

- -

Both techniques use the same GNATS bug database.

- -

Filling out a report

- -

The bug report form provides a number of fields; you'll need to -fill-out most of those (as indicated below) to provide a complete -report. The fields have the following purpose:

- -
-
Originator
-
Your name.
- -
Organization
-
Your organization. You can leave this field blank.
- -
Confidential
-
This field is unused and set to 'no'. All bug reports, including -sample code, are publicly accessible.
- -
Synopsis
-
A one-line description of the problem; something like "GCC 2.95 -does not foo", "objc crashes when doing bar".
- -
Severity
-
Can be one of -
-
critical
-
GCC is completely not operational; no work-around known.
-
serious
-
GCC is not working properly; a work-around is possible.
-
non-critical
-
Report indicates minor problem.
-
-
- -
Priority
-
Can be one of -
-
high
-
A solution is necessary as soon as possible. This is reserved to - GCC maintainers.
-
medium
-
The problem should be solved in the next release.
-
low
-
The problem should be solved in a future release.
-
-
- -
Category
-
This indicates the GCC subproject which is affected by the problem. - Currently, it can be one of -
-
ada
-
A problem with the Ada compiler, libraries or tools.
-
bootstrap
-
GCC fails to bootstrap. This should be filed only if a - bootstrap failure prevails for an extended period of time (at least - one week) on any platform (and possibly not-so-common conditions like - a read-only srcdir), or non-mainstream platforms.
-
c++
-
A problem with the C++ compiler.
-
c
-
A problem with the C compiler.
-
debug
-
A problem with generating debugging information.
-
fortran
-
A problem with the Fortran compiler.
-
java
-
A problem with the Java compiler.
-
libf2c
-
A problem in the Fortran runtime library.
-
libgcj
-
A problem in the Java runtime library.
-
libobjc
-
A problem in the Objective C runtime library.
-
libstdc++
-
A problem in the Standard C++ runtime library.
-
middle-end
-
A problem in the internal compiler passes.
-
objc
-
A problem with the Objective C compiler.
-
optimization
-
A problem only occurring under optimization.
-
preprocessor
-
A problem with the C preprocessor.
-
target
-
The problem depends on the specific target architecture.
-
web
-
There is an error or omission on the Web pages.
-
other
-
The problem is in none of these categories.
-
-
- -
Class
-
A classification of the problem; one of -
-
doc-bug
-
The documentation is incorrect.
-
accepts-illegal
-
GCC fails to reject erroneous code.
-
rejects-legal
-
GCC gives an error message for correct code.
-
wrong-code
-
The machine code generated by GCC is incorrect.
-
ice-on-legal-code
-
GCC gives an Internal Compiler Error (ICE) for correct code.
-
ice-on-illegal-code
-
GCC gives an ICE instead of reporting an error.
-
pessimizes-code
-
GCC misses an important optimization opportunity.
-
sw-bug
-
Software bug of some other class than above.
-
change-request
-
A feature in GCC is missing.
-
support
-
I need help with GCC.
-
-
- -
Release
-
GCC version, as obtained from 'gcc -v' (one line).
- -
Environment
-
Information about your operating system version, hardware architecture, - and environment settings that affect GCC.
- -
Description
-
Precise description of the problem. You should put the error messages - printed by GCC here; source code should go into the next section.
- -
How-To-Repeat
- -
Please put the complete source code to reproduce the problem here. - The gccbug script currently does not support file - attachments. Instead, if you have multiple files, include them - uuencoded (compressing them before if they are large). If you use - gnatsweb, you can use the file attachments button instead.
- -
Fix
-
How to correct or work around the problem, if known (multiple lines).
- -
- - - diff --git a/contrib/gcc/include/COPYING b/contrib/gcc/include/COPYING deleted file mode 100644 index d60c31a..0000000 --- a/contrib/gcc/include/COPYING +++ /dev/null @@ -1,340 +0,0 @@ - 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. - - - Copyright (C) - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - - -Also add information on how to contact you by electronic and paper mail. - -If the program is interactive, make it output a short notice like this -when it starts in an interactive mode: - - Gnomovision version 69, Copyright (C) year name of author - Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. - This is free software, and you are welcome to redistribute it - under certain conditions; type `show c' for details. - -The hypothetical commands `show w' and `show c' should show the appropriate -parts of the General Public License. Of course, the commands you use may -be called something other than `show w' and `show c'; they could even be -mouse-clicks or menu items--whatever suits your program. - -You should also get your employer (if you work as a programmer) or your -school, if any, to sign a "copyright disclaimer" for the program, if -necessary. Here is a sample; alter the names: - - Yoyodyne, Inc., hereby disclaims all copyright interest in the program - `Gnomovision' (which makes passes at compilers) written by James Hacker. - - , 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. diff --git a/contrib/gcc/include/ChangeLog b/contrib/gcc/include/ChangeLog deleted file mode 100644 index 03e12be..0000000 --- a/contrib/gcc/include/ChangeLog +++ /dev/null @@ -1,1960 +0,0 @@ -2002-11-19 Release Manager - - * GCC 3.2.1 Released. - -2002-11-19 Release Manager - - * GCC 3.2.1 Released. - -2002-11-18 Release Manager - - * GCC 3.2.1 Released. - -2002-11-03 Roger Sayle - DJ Delorie - - * getopt.h: Avoid prototyping getopt with no arguments in C++. - -2002-08-14 Release Manager - - * GCC 3.2 Released. - -2002-07-25 Release Manager - - * GCC 3.1.1 Released. - -2002-05-14 Release Manager - - * GCC 3.1 Released. - -2002-05-14 Release Manager - - * GCC 3.1 Released. - -2002-04-16 David S. Miller - - * xregex2.h (__restrict_arr): Define to __restrict on GCC - 3.1 and later. Do not redefine. - -2002-04-01 Phil Edwards - - * dyn-string.h: Also allow IN_GLIBCPP_V3 to redefine names. - -2002-02-22 Jim Blandy - - Allow the user to specify functions for allocating memory for - splay tree roots and nodes. - * splay-tree.h (splay_tree_allocate_fn, splay_tree_deallocate_fn): - New types. - (splay_tree): New fields: `allocate', `deallocate', and - `allocate_data'. - (splay_tree_new_with_allocator): New function declaration. - -2002-02-05 Jason Merrill - - * demangle.h (cplus_demangle_v3): Add "options" parm. - (cplus_demangle_v3_type): Remove prototype. - (DMGL_VERBOSE): New macro. - (DMGL_TYPES): New macro. - -2002-02-02 H.J. Lu (hjl@gnu.org) - - * demangle.h (cplus_demangle_v3_type): New prototype. - -2002-01-28 Kaveh R. Ghazi - - * libiberty.h (C_alloca): Add ATTRIBUTE_MALLOC. - -2001-12-06 Richard Henderson - - * demangle.h (no_demangling): New. - (NO_DEMANGLING_STYLE_STRING): New. - -2001-10-24 Neil Booth - - * safe-ctype.h (_sch_isbasic, IS_ISOBASIC): New. - -2001-10-22 Kaveh R. Ghazi - - * libiberty.h (hex_init): Revert delete. - - * libiberty.h (_hex_value): Const-ify. - (hex_init): Delete. - -2001-10-07 Kaveh R. Ghazi - - * demangle.h (demangler_engine): Const-ify. - * libiberty.h (buildargv): Likewise. - -2001-09-24 Kaveh R. Ghazi - - * libiberty.h (reconcat): New function. - -2001-09-18 Kaveh R. Ghazi - - * libiberty.h (concat, concat_length, concat_copy, concat_copy2, - ACONCAT): Improve comments. - -2001-09-18 Alan Modra - - * objalloc.h (OBJALLOC_ALIGN): Define using offsetof. - -2001-09-17 Kaveh R. Ghazi - - * libiberty.h (concat_length, concat_copy, concat_copy2, - libiberty_concat_ptr, ACONCAT): New. - - * libiberty.h (ASTRDUP): New macro. - libiberty_optr, libiberty_nptr, libiberty_len): Declare. - -2001-08-29 Kaveh R. Ghazi - - * ansidecl.h: Update comments reflecting previous change. - -2001-08-27 Kaveh R. Ghazi - - * ansidecl.h (VA_OPEN, VA_CLOSE): Allow multiple uses. - -2001-08-23 Lars Brinkhoff - - * dyn-string.h, fibheap.h, partition.h, sort.h, splay-tree.h: - replace "GNU CC" with "GCC". - -2001-08-21 Richard Henderson - - * fibheap.h: Tidy formatting. - (fibnode_t): Limit degree to 31 bits to avoid warning. - -2001-08-20 Andrew Cagney - - * floatformat.h (floatformat_arm_ext): Document as deprecated. - (floatformat_arm_ext_big, floatformat_arm_ext_littlebyte_bigword) - (floatformat_ia64_spill_little, floatformat_ia64_quad_little) - (floatformat_ia64_spill_big, floatformat_ia64_quad_big) - (floatformat_m88110_harris_ext): Declare. - -2001-08-20 Daniel Berlin - - * fibheap.h: New file. Fibonacci heap. - -2001-08-18 Zack Weinberg - - * ansidecl.h: Reorganize for readability, remove documentation - of obsolete macros, document PARAMS and VPARAMS. Add new - macros VA_OPEN, VA_CLOSE, and VA_FIXEDARG for nicer variadic - function implementation. - -2001-08-16 Richard Henderson - - * hashtab.h (htab_hash_string): Declare. - -2001-08-10 Andrew Cagney - - * libiberty.h (lbasename): Change function declaration to return a - const char pointer. - -2001-08-02 Mark Kettenis - - * xregex.h (_REGEX_RE_COMP): Define. - (re_comp): Define to xre_comp. - (re_exec): Define to xre_exec. - -2001-07-18 Andreas Jaeger - - * xregex2.h: Place under LGPL version 2.1. - -2001-07-10 Jeff Johnston - - * xregex.h: New file to support libiberty regex. - * xregex2.h: Ditto. - -2001-05-16 Matt Kraai - - * partition.h: Fix misspelling of `implementation'. - -2001-05-10 Kaveh R. Ghazi - - * ansidecl.h (NULL_PTR): Delete. - -2001-05-07 Zack Weinberg - - * demangle.h: Use PARAMS for all prototypes. - * ternary.h: Use PARAMS for all prototypes. Use PTR, not void *. - Make arguments constant where possible. - -2001-05-07 Mark Mitchell - - * splay-tree.h (splay_tree_max): New function. - (splay_tree_min): Likewise. - -2001-04-15 Daniel Berlin - - * ternary.h: New file - Ternary search tree header. - -2001-04-03 Zack Weinberg - - * ansidecl.h: All logic from gcc/gansidecl.h moved here. - -2001-03-31 Kaveh R. Ghazi - - * libiberty.h (alloca): Handle setting C_ALLOCA. - -2001-03-20 Jim Blandy - - * demangle.h (enum gnu_v3_constructor_kinds, - is_gnu_v3_mangled_ctor, enum gnu_v3_destructor_kinds, - is_gnu_v3_mangled_dtor): New declarations. - -2001-03-14 Nick Clifton - - * ansidecl.h: Fix copyright dates. - * demangle.h: Fix copyright dates. - * floatformat.h: Fix copyright dates. - * fnmatch.h: Fix copyright dates. - * getopt.h: Fix copyright dates. - * libiberty.h: Add FSF copyright notice. - * md5.h: Fix copyright dates. - * obstack.h: Fix copyright dates. - * splay-tree.h: Fix copyright dates. - -2001-03-10 Neil Booth - John David Anglin - - * libiberty.h: Add lbasename. - -2001-03-06 Zack Weinberg - - * libiberty.h: Prototype C_alloca; define alloca to either - __builtin_alloca or C_alloca as appropriate. - -2001-03-01 John David Anglin - - * safe-ctype.h (_sch_test): Cast enum bit to unsigned short int for pcc - compatibility. - -2000-12-18 Joseph S. Myers - - * COPYING: Update to current - ftp://ftp.gnu.org/pub/gnu/Licenses/COPYING-2.0 (fixes references - to 19yy as example year in copyright notice). - -2000-12-16 Herman A.J. ten Brugge - - * safe-ctype.h: Make code work on all targets and not just on - targets where a char is 8 bits. - -2000-12-07 Zack Weinberg - - * safe-ctype.h: New file. - -2000-12-06 Rodney Brown - - * getopt.h obstack.h: Standarize copyright statement. - -2000-12-04 Richard Henderson - - * demangle.h: Change "new_abi" to "v3" everywhere. - -2000-11-22 Zack Weinberg - - * libiberty.h: Move #includes to top. Prototype xmalloc_failed. - -2000-11-15 Kenneth Block - - * demangle.h: Add gnat and java demangle styles. - -2000-11-04 Hans-Peter Nilsson - - * hashtab.h (struct htab): Add member return_allocation_failure. - (htab_try_create): New prototype. Mention which functions may - return NULL when this is used. - -2000-11-03 Hans-Peter Nilsson - - * hashtab.h: Change void * to PTR where necessary. - -2000-09-10 Mark Mitchell - - * splay-tree.h (splay_tree_predecessor): Declare. - -2000-09-05 John David Anglin - - * md5.h (md5_uint32): Choose via INT_MAX instead of UINT_MAX. - -2000-09-04 Alex Samuel - - * dyn-string.h: Adjust formatting. - (dyn_string_insert_char): New macro. New declaration. - -2000-08-28 Jason Merrill - - * md5.h: New file. - -2000-08-24 Greg McGary - - * libiberty.h (ARRAY_SIZE): New macro. - -2000-06-21 Alex Samuel - - * dyn-string.h (dyn_string_init, dyn_string_new, - dyn_string_delete, dyn_string_release, dyn_string_resize, - dyn_string_clear, dyn_string_copy, dyn_string_copy_cstr, - dyn_string_prepend, dyn_string_prepend_cstr, dyn_string_insert, - dyn_string_insert_cstr, dyn_string_append, dyn_string_append_cstr, - dyn_string_append_char, dyn_string_substring_dyn_string_eq): - Define as same name with __cxa_ prepended, if IN_LIBGCC2. - (dyn_string_init, dyn_string_copy, dyn_string_copy_cstr, - dyn_string_prepend, dyn_string_prepend_cstr, dyn_string_insert, - dyn_string_insert_cstr, dyn_string_append, dyn_string_append_cstr, - dyn_string_append_char, dyn_string_substring): Change return type - to int. - -2000-06-07 Kaveh R. Ghazi - - * demangle.h (demangling_styles): Remove trailing comma in enum. - - * dyn-string.h (dyn_string_append_char): Change parameter from - char to int. - -2000-06-04 Alex Samuel - - * dyn-string.h: Move here from gcc/dyn-string.h. Add new functions. - - * demangle.h (DMGL_GNU_NEW_ABI): New macro. - (DMGL_STYLE_MASK): Or in DMGL_GNU_NEW_ABI. - (current_demangling_style): Add gnu_new_abi_demangling. - (GNU_NEW_ABI_DEMANGLING_STYLE_STRING): New macro. - (GNU_NEW_ABI_DEMANGLING): Likewise. - (cplus_demangle_new_abi): New declaration. - -Tue May 30 16:53:34 2000 Andrew Cagney - - * floatformat.h (struct floatformat): Add field name. - -2000-05-23 Kaveh R. Ghazi - - * getopt.h (getopt): Also check HAVE_DECL_* when prototyping. - - * libiberty.h (basename): Likewise. - -2000-05-06 Zack Weinberg - - * ansidecl.h: #define __extension__ to nothing if - GCC_VERSION < 2008. - -2000-05-04 Kaveh R. Ghazi - - * demangle.h (demangler_engine): Constify. - -Thu May 4 17:15:26 2000 Philippe De Muyter - - * sort.h (sys/types.h): File included unconditionnaly. - (stddef.h): File include only #ifdef __STDC__. - -2000-05-03 Zack Weinberg - - * symcat.h: Remove #endif label. - -2000-04-28 Kenneth Block - Jason Merrill - - * demangle.h (libiberty_demanglers): new table for different styles. - (cplus_demangle_set_style): New function for setting style. - (cplus_demangle_name_to_style): New function to translate name. - -2000-04-24 Mark Mitchell - - * hashtab.h (hash_pointer): Declare. - (eq_pointer): Likewise. - -2000-04-23 Mark Mitchell - - * sort.h: New file. - -Tue Apr 18 16:22:30 2000 Richard Kenner - - * hashtab.h (enum insert_option): New type. - (htab_find_slot, htab_find_slot_with_hash): Use it. - -2000-04-17 Kaveh R. Ghazi - - * symcat.h: Honor autoconf macro HAVE_STRINGIZE. Add - comments/caveats with regard to traditional C behavior. - -2000-04-05 Richard Henderson - - * splay-tree.h (splay_tree_remove): Declare. - -2000-03-30 Mark Mitchell - - * hashtab.h (hashval_t): New type. - (htab_find_with_hash): Use it as an argument. - (htab_find_slot_with_hash): Likewise. - -2000-03-14 Bernd Schmidt - - * hashtab.h (htab_trav): Modify type so that first arg is of type - void **. - (htab_find_with_hash, htab_find_slot_with_hash): Declare new - functions. - -2000-03-09 Alex Samuel - - * partition.h: New file. - -2000-03-09 Zack Weinberg - - * hashtab.h (struct htab): Add del_f. - (htab_del): New type. - (htab_create): Add fourth argument. - -2000-03-08 Zack Weinberg - - * hashtab.h (hash_table_t): Rename to htab_t. - (struct hash_table): Rename to struct htab. Shorten element - names. Reorder elements by size. - (htab_hash, htab_eq, htab_trav): New typedefs for the callback - function pointers. - (hash_table_entry_t): Discard; just use void * for element - type. - -Sat Jan 1 19:06:52 2000 Hans-Peter Nilsson - - * symcat.h (STRINGX) [!__STDC__ || ALMOST_STDC]: Change "?" to "s" - to stringify argument s. - -1999-12-05 Mark Mitchell - - * splay-tree.h (struct splay_tree_node): Rename to ... - (struct splay_tree_node_s): ... this. - (struct splay_tree): Rename to ... - (struct splay_tree_s): ... this. - -1999-11-30 Kaveh R. Ghazi - - * ansidecl.h (ATTRIBUTE_MALLOC): New macro. - - * libiberty.h (buildargv, dupargv, concat, choose_temp_base, - make_temp_file, xmalloc, xcalloc, xstrdup, xmemdup): Add - ATTRIBUTE_MALLOC. - (xatexit): Remove __GNUC__ check, add ATTRIBUTE_NORETURN. - -1999-11-28 Kaveh R. Ghazi - - * libiberty.h: Include stdarg.h when ANSI_PROTOTYPES is defined. - (asprintf, vasprintf): Provide declarations. - -Wed Nov 10 12:43:21 1999 Philippe De Muyter - Kaveh R. Ghazi - - * ansidecl.h: Define and test `GCC_VERSION', not `HAVE_GCC_VERSION'. - -1999-10-23 08:51 -0700 Zack Weinberg - - * hashtab.h: Give hash_table_t a struct tag. Add prototypes - for clear_hash_table_slot and traverse_hash_table. Correct - prototype of all_hash_table_collisions. - -Fri Oct 15 01:47:51 1999 Vladimir Makarov - - * hashtab.h: New file. - -1999-10-10 Kaveh R. Ghazi - - * ansidecl.h (HAVE_GCC_VERSION): New macro. Use it instead of - explicitly testing __GNUC__ and __GNUC_MINOR__. - - (ATTRIBUTE_PRINTF): Use `__format__', not `format'. - -1999-09-25 Kaveh R. Ghazi - - * libiberty.h (make_temp_file): Add a prototype. - -Tue Sep 14 00:35:02 1999 Marc Espie - - * libiberty.h (basename): OpenBSD has a correct prototype. - (xrealloc): Remove outdated comment. - -1999-09-07 Jeff Garzik - - * libiberty.h (xmemdup): Add prototype for new function. - -1999-09-01 Kaveh R. Ghazi - - * obstack.h (obstack_grow, obstack_grow0): Move (char*) casts - in calls to `_obstack_memcpy' from here ... - - (_obstack_memcpy): ... to here, except in the __STDC__ case which - doesn't need it. - -1999-08-30 Kaveh R. Ghazi - - * libiberty.h (getpwd): Prototype. - -1999-08-01 Mark Mitchell - - * splay-tree.h (splay_tree_insert): Return the new node. - -1999-07-11 Ian Lance Taylor - - * ansidecl.h: Copy attribute support macros from egcs. - -1999-04-02 Mark Mitchell - - * splay-tree.h (splay_tree_compare_pointers): Declare. - -1999-03-30 Mark Mitchell - - * splay-tree.h (splay_tree_compare_ints): Declare. - -Wed Mar 24 12:46:29 1999 Andrew Cagney - - * libiberty.h (basename): Cygwin{,32} should have the prototype. - -Mon Dec 14 09:53:31 1998 Kaveh R. Ghazi - - * demangle.h: Don't check IN_GCC anymore. - * splay-tree.h: Likewise. - -Tue Dec 8 00:30:31 1998 Elena Zannoni - - * demangle.h: (DMGL_EDG): new macro for Kuck and Associates - (DMGL_STYLE_MASK): modify to include Kuck and Assoc style - (demangling_styles): add new edg_demangling style - (EDG_DEMANGLING_STYLE_STRING): new macro - (EDG_DEMANGLING): new macro - (DMGL_HP): new macro, for HP/aCC compiler. - (DMGL_STYLE_MASK): modify to include new HP's style. - (demangling_styles): add new hp_demangling value. - (HP_DEMANGLING_STYLE_STRING): new macro. - (ARM_DEMANGLING): coerce to int. - (HP_DEMANGLING): new macro. - -Fri Nov 20 13:14:00 1998 Andrew Cagney - - * libiberty.h (basename): Add prototype for FreeBSD. - -Fri Nov 13 19:19:11 1998 Kaveh R. Ghazi - - * libiberty.h: Prototype xcalloc. - -Sun Nov 8 17:42:25 1998 Kaveh R. Ghazi - - * ansidecl.h: Wrap problematic macros with !IN_GCC. - - * demangle.h: Never define PARAMS(). - * splay-tree.h: Likewise. - -Sat Nov 7 16:04:03 1998 Kaveh R. Ghazi - - * demangle.h: Don't include gansidecl.h. - * splay-tree.h: Likewise. - -Thu Oct 22 19:58:00 1998 Kaveh R. Ghazi - - * splay-tree.h: Wrap function pointer parameter declarations in - PARAMS() macro. - -1998-10-21 Mark Mitchell - - * splay-tree.h: New file. - -Fri Oct 9 00:02:03 1998 Jeffrey A Law (law@cygnus.com) - - * Merge devo and egcs include directories. - -Sat Sep 5 12:16:33 1998 Jeffrey A Law (law@cygnus.com) - - * getopt.h, obstack.h: Updated from gcc. - -1998-08-03 Jason Molenda (jsm@bugshack.cygnus.com) - - * libiberty.h (xexit): Change decl to use modern GCC attribute - to indicate exit does not return. - -Mon Jun 1 13:48:32 1998 Jason Molenda (crash@bugshack.cygnus.com) - - * obstack.h: Update to latest FSF version. - -Tue Feb 24 13:05:02 1998 Doug Evans - - * dis-asm.h (disassemble_info): Member `symbol' renamed to `symbols' - and made an "asymbol **". New member num_symbols. - (INIT_DISASSEMBLE_INFO_NO_ARCH): Update. - -Tue Feb 17 12:32:18 1998 Andrew Cagney - - * remote-sim.h (sim_fetch_register, sim_store_register): Add - register length parameter. Functions return actual length of - register. - -Thu Feb 12 16:29:01 1998 Ian Lance Taylor - - * getopt.h: Update to latest FSF version. - -Wed Feb 11 16:56:06 1998 Doug Evans - - * symcat.h: New file. - -Mon Feb 2 17:13:31 1998 Steve Haworth - - * dis-asm.h (print_insn_tic30): Declare. - -Thu Jan 22 16:23:59 1998 Fred Fish - - * dis-asm.h: Add flag INSN_HAS_RELOC to tell disassembly - function there is a reloc on this line. - -Mon Dec 8 11:22:23 1997 Nick Clifton - - * dis-asm.h: Remove prototype of disasm_symaddr() as this function - no longer exists. - -Tue Dec 2 10:20:53 1997 Nick Clifton - - * dis-asm.h (disasm_symaddr): New prototype. - -Mon Dec 1 20:24:18 1997 J"orn Rennecke - - * coff/sh.h (R_SH_SWITCH8): New. - -Mon Dec 1 11:29:35 1997 Doug Evans - - * callback.h (CB_SYSCALL): Comment out arg names in prototypes. - -Wed Nov 26 16:47:58 1997 Michael Meissner - - * callback.h (CB_SYSCALL): Consistantly use names for prototype - arguments. - -Wed Nov 26 11:39:30 1997 Doug Evans - - * callback.h (CB_SYSCALL): Change byte count arguments to - {read,write}_mem to `int'. New member `magic'. - (CB_SYSCALL_MAGIC,CB_SYSCALL_INIT): New macros. - -Tue Nov 25 01:35:52 1997 Doug Evans - - * callback.h (struct stat): Move forward decl up. - (host_callback): Pass stat struct pointer to stat,fstat. - (CB_SYS_nnn): Reorganize. - (CB_SYSCALL): New members p1,p2. - (cb_host_to_target_stat): Delete fourth arg. - -Sat Nov 22 23:34:15 1997 Andrew Cagney - - * remote-sim.h (sim_stop_reason): Clarify sim_signalled SIGRC - argument. - -Mon Nov 17 14:00:51 1997 Doug Evans - - * callback.h (CB_TARGET_DEFS_MAP): Renamed from target_defs_map. - (host_callback): Add stat, fstat, syscall_map, errno_map, open_map, - signal_map, stat_map. - (errn_map,open_map): Renamed to cb_init_foo_map. - (cb_host_to_target_errno,cb_target_to_host_open): Renamed from - host_to_target_errno,target_to_host_open. - (cb_read_target_syscall_maps): Add prototype. - (cb_target_to_host_syscall): Likewise. - (cb_host_to_target_stat): Likewise. - (cb_syscall): Likewise. - (CB_SYS_{exit,open,close,read,write,lseek,unlink,getpid,kill,fstat, - argvlen,argv,chdir,stat,chmod,utime,time}): Define. - (CB_SYSCALL): New type. - (CB_RC): New enum. - -Fri Nov 7 10:34:09 1997 Rob Savoye - - * libiberty.h: Add extern "C" { so it can be used with C++ - programs. - * remote-sim.h: Add extern "C" { so it can be used with C++ - programs. - -Tue Oct 14 16:07:51 1997 Nick Clifton - - * dis-asm.h (struct disassemble_info): New field - 'symbol_at_address_func'. - (INIT_DISASSEMBLE_INFO_NO_ARCH): Initialise new field with - generic_symbol_at_address. - -Mon Oct 13 10:17:15 1997 Andrew Cagney - - * remote-sim.h: Clarify sim_read, sim_write MEM argument. - -Wed Sep 24 18:03:10 1997 Stu Grossman - - * remote-sim.h (SIM_RC): Add a bunch of new return codes for - breakpoint stuff. - * Add functions to tell the simulator to set/clear/enable/disable - intrinsic breakpoints. - -Thu Aug 28 19:41:42 1997 Andrew Cagney - - * libiberty.h (dupargv): Add prototype. - -Tue Aug 26 12:25:49 1997 Andrew Cagney - - * remote-sim.h (sim_create_inferior): Add ABFD arg. Document. - -Mon Aug 25 10:50:51 1997 Andrew Cagney - - * remote-sim.h (sim_open): Add ABFD arg. Document. - -Fri Aug 8 16:43:56 1997 Doug Evans - - * dis-asm.h (arc_get_disassembler): Declare. - -Wed Jul 30 11:39:50 1997 Per Bothner - - * demangle.h (DMGL_JAVA): New option to request Java demangling. - -Tue Jul 22 17:59:54 1997 Ian Lance Taylor - - * libiberty.h (PEXECUTE_*): Define. - (pexecute, pwait): Declare. - -Fri Jun 6 13:02:33 1997 Andrew Cagney - - * remote-sim.h (sim_kill): Mark as depreciated. - -Fri May 23 13:43:41 1997 Fred Fish - - * bfdlink.h (struct bfd_link_info): Add task_link member. - -Thu May 22 11:32:49 1997 Andrew Cagney - - * remote-sim.h: Review documentation. Clarify restrictions on - when functions can be called. - -Wed May 21 16:47:53 1997 Andrew Cagney - - * remote-sim.h (sim_set_profile_size): Add prototype, document as - depreciated. - -Tue May 20 09:32:22 1997 Andrew Cagney - - * remote-sim.h (sim_open): Add callback struct. - (sim_set_callbacks): Drop SIM_DESC argument. Document. - (sim_size): Remove recently added SIM_DESC argument. Document. - -Mon May 19 19:14:44 1997 Andrew Cagney - - * remote-sim.h: Pass SD into sim_size. - -Thu May 15 01:24:16 1997 Mark Alexander - - * obstack.h (obstack_specify_allocation_with_arg, obstack_chunkfun, - obstack_freefun): Eliminate compile warnings in gdb. - -Tue May 13 10:21:14 1997 Nick Clifton - - * coff/arm.h (constants): Added new flag bits F_APCS_26 and - F_APCS_SET for the f_flags field of the filehdr structure. Added new - flags: F_APCS26, F_ARM_2, F_ARM_3, F_ARM_7, F_ARM_7T to store - information in the flags field of the internal_f structure used by BFD - routines. - -Tue Apr 22 10:24:34 1997 Fred Fish - - * floatformat.h (floatformat_byteorders): Add comments for previous - formats and add floatformat_littlebyte_bigword, primarily for ARM. - Add declaration for floatformat_ieee_double_littlebyte_bigword. - -Fri Apr 18 13:04:49 1997 Andrew Cagney - - * remote-sim.h (sim_stop): New interface - asynchronous - notification of a request to stop / suspend the running - simulation. - - * remote-sim.h (enum sim_stop): Add sim_running and sim_polling as - states for use internal to simulators. - - * callback.h (struct host_callback_strut): Put a magic number at - the end of the struct to allow basic checking. - (struct host_callback_struct ): Add poll_quit - so - that the console etc can be polled at regular intervals. - -Thu Apr 17 02:17:12 1997 Doug Evans - - * remote-sim.h (struct _bfd): Declare. - (sim_load): Return SIM_RC. New arg `abfd'. - (sim_create_inferior): Return SIM_RC. Delete arg `start_address'. - -Wed Apr 2 17:09:12 1997 Andrew Cagney - - * remote-sim.h (sim_trace, sim_size): Make these global. They - will go away shortly. - -Wed Apr 2 15:23:49 1997 Doug Evans - - * remote-sim.h (SIM_OPEN_KIND, SIM_RC): New enums. - (sim_open): New argument `kind'. - -Wed Apr 2 14:45:51 1997 Ian Lance Taylor - - * COPYING: Update FSF address. - -Fri Mar 28 15:29:54 1997 Mike Meissner - - * callback.h (top level): Include stdarg.h or varargs.h if - va_start is not defined. - (host_callback_struct): Make {,e}vprintf_filtered take a va_list - instead of void *, since va_list might be an array or structure - type. - -Fri Mar 28 15:44:41 1997 H.J. Lu - - * libiberty.h (basename): Add prototype for glibc and linux. - -Mon Mar 17 19:22:12 1997 Ian Lance Taylor - - * objalloc.h: New file. - -Mon Mar 17 14:57:55 1997 Andrew Cagney - - * remote-sim.h: New file, copied in from gdb/remote-sim.h. One - day this will be placed in a directory of its own. - -Sat Mar 15 19:00:14 1997 Ian Lance Taylor - - * obstack.h: Update to current FSF version. - -Thu Mar 6 15:46:59 1997 Andrew Cagney - - * callback.h (struct host_callback_struct): Add callbacks - - flush_stdout, write_stderr, flush_stderr, vprintf_filtered, - evprintf_filtered. Delete redundant callbacks - printf_filtered. - -Thu Feb 27 23:18:27 1997 Ian Lance Taylor - - * bfdlink.h (struct bfd_link_info): Remove lprefix and lprefix_len - fields. - -Tue Feb 25 00:10:49 1997 Ian Lance Taylor - - * dis-asm.h (INIT_DISASSEMBLE_INFO_NO_ARCH): Initialize - bytes_per_chunk and display_endian. - -Mon Feb 24 17:47:02 1997 Ian Lance Taylor - - From Eric Youngdale : - * bfdlink.h (struct bfd_elf_version_expr): Define. - (struct bfd_elf_version_deps): Define. - (struct bfd_elf_version_tree): Define. - -Thu Feb 6 14:20:01 1997 Martin M. Hunt - - * dis-asm.h: (disassemble_info): Add new fields - bytes_per_chunk and display_endian to control the - display of raw instructions. - -Sun Dec 8 17:11:12 1996 Doug Evans - - * callback.h (host_callback): New member `error'. - -Wed Nov 20 00:40:23 1996 Doug Evans - - * callback.h: New file, moved here from gdb. - -Mon Nov 18 16:34:00 1996 Dawn Perchik - - * libiberty.h: Checkin again; last checkin failed due to sticky tag. - -Wed Nov 13 08:22:00 1996 Dawn Perchik - - * libiberty.h: Revert last commit due to conflicts with hpux - system headers. - -Tue Nov 12 16:31:00 1996 Dawn Perchik - - * libiberty.h: Move prototypes from argv.c here. - -Thu Oct 31 14:56:18 1996 Doug Evans - - * ansidecl.h (VPARAMS,VA_START): Define. - -Fri Oct 25 12:08:04 1996 Ian Lance Taylor - - * dis-asm.h (disassemble_info): Add bytes_per_line field. - (INIT_DISASSEMBLE_INFO_NO_ARCH): Initialize bytes_per_line field. - -Thu Oct 24 17:10:01 1996 Ian Lance Taylor - - * dis-asm.h (disassemble_info): Add symbol field. - (INIT_DISASSEMBLE_INFO_NO_ARCH): Initialize symbol field. - -Thu Oct 17 11:17:40 1996 Doug Evans - - * dis-asm.h (print_insn_m32r): Declare. - -Mon Oct 14 23:56:52 1996 Ian Lance Taylor - - * libiberty.h: Declare parameter types for xmalloc and xrealloc. - -Thu Oct 3 13:45:27 1996 Ian Lance Taylor - - * fnmatch.h: New file. - -Thu Oct 3 10:33:14 1996 Jeffrey A Law (law@cygnus.com) - - * dis-asm.h (print_insn_mn10x00): Delete declaration. - (print_insn_mn10200, print_insn_mn10300): Declare. - -Wed Oct 2 21:24:43 1996 Jeffrey A Law (law@cygnus.com) - - * dis-asm.h (print_insn_mn10x00): Declare. - -Mon Sep 30 13:56:11 1996 Fred Fish - - * libiberty.h: Remove #ifndef PRIVATE_XMALLOC. - -Sat Aug 31 13:27:06 1996 Jeffrey A Law (law@cygnus.com) - - * dis-asm.h (print_insn_v850): Declare. - -Tue Aug 13 16:10:30 1996 Stu Grossman (grossman@critters.cygnus.com) - - * obstack.h: Change bcopy to memcpy. Works better on Posix - systems, which generally lack bcopy. - -Mon Aug 12 17:03:18 1996 Stu Grossman (grossman@critters.cygnus.com) - - * ansidecl.h: Change WIN32 to _WIN32. - -Fri Jul 26 13:58:18 1996 Ian Lance Taylor - - * dis-asm.h: Add flavour field. - (print_insn_alpha): Declare. - (print_insn_alpha_osf, print_insn_alpha_vms): Don't declare. - (INIT_DISASSEMBLE_INFO): Initialize flavour field. - -Tue Jul 23 17:37:58 1996 Fred Fish - - * libiberty.h (PRIVATE_XMALLOC): Enclose xmalloc/xrealloc - definitions inside #ifndef so that programs that want to - can define PRIVATE_XMALLOC and then define xmalloc and - xrealloc anyway they want. - (basename): Document in source that we can't declare the - parameter type because it is declared inconsistently across - different systems. - -Mon Jul 22 13:16:13 1996 Richard Henderson - - * dis-asm.h (print_insn_alpha): Don't declare. - (print_insn_alpha_osf, print_insn_alpha_vms): Declare. - -Wed Jul 17 14:45:12 1996 Martin M. Hunt - - * dis-asm.h: (print_insn_d10v): Declare. - -Mon Jul 15 16:55:38 1996 Stu Grossman (grossman@critters.cygnus.com) - - * dis-asm.h: Get rid of decls for print_insn_i8086, - print_insn_sparc64 and print_insn_sparclite. - * (INIT_DISASSEMBLE_INFO): Split into two pieces. One, - INIT_DISASSEMBLE_INFO_NO_ARCH inits everything except for endian, - mach, and arch. - -Fri Jul 12 10:19:27 1996 Stu Grossman (grossman@critters.cygnus.com) - - * dis-asm.h (print_insn_i8086): Declare. - -Wed Jul 3 16:02:39 1996 Stu Grossman (grossman@critters.cygnus.com) - - * dis-asm.h (print_insn_sparclite): Declare. - -Tue Jun 18 16:02:46 1996 Jeffrey A. Law - - * dis-asm.h (print_insn_h8300s): Declare. - -Tue Jun 18 15:11:33 1996 Klaus Kaempf - - * fopen-vms.h: New file. - -Tue Jun 4 18:58:16 1996 Ian Lance Taylor - - * bfdlink.h (struct bfd_link_info): Add notice_all field. - -Fri Apr 26 10:33:12 1996 Doug Evans - - * demangle.h (#ifdef IN_GCC): #include "gansidecl.h". - (PROTO,PTR,const): Delete. - -Mon Apr 22 17:27:42 1996 Ian Lance Taylor - - * bfdlink.h (struct bfd_link_info): Add traditional_format field. - -Mon Apr 15 15:16:56 1996 Doug Evans - - * libiberty.h (choose_temp_base): Add prototype. - -Tue Mar 12 17:29:46 1996 Ian Lance Taylor - - * bfdlink.h (bfd_wrapped_link_hash_lookup): Declare. - (struct bfd_link_info): Add wrap_hash field. - -Wed Feb 14 16:49:17 1996 Martin Anantharaman - - * ieee.h (ieee_record_enum_type): Define - ieee_external_reference_info_enum. - -Fri Feb 2 17:09:25 1996 Doug Evans - - * dis-asm.h (DISASM_RAW_INSN): Delete. - -Tue Jan 23 09:21:47 1996 Doug Evans - - * dis-asm.h (INIT_DISASSEMBLE_INFO): Set endian to BFD_ENDIAN_UNKNOWN. - New argument FPRINTF_FUNC. - -Mon Jan 22 16:37:59 1996 Doug Evans - - * dis-asm.h (disassemble_info): New members arch, mach, endian. - (INIT_DISASSEMBLE_INFO): Initialize them. - (DISASM_RAW_INSN{,FLAG}): Define. - -Thu Jan 18 11:32:38 1996 Ian Lance Taylor - - * demangle.h (cplus_demangle_opname): Change opname parameter to - const char *. - (cplus_mangle_opname): Change return type and opname parameter to - const char *. - -Fri Jan 5 00:01:22 1996 Ian Lance Taylor - - * ieee.h (enum ieee_record): Add ieee_asn_record_enum, - ieee_at_record_enum, ieee_ty_record_enum, ieee_atn_record_enum, - ieee_bb_record_enum, and ieee_be_record_enum. - -Wed Jan 3 13:12:09 1996 Fred Fish - - * obstack.h: Update copyright to 1996. - (_obstack_memory_used): Declare. - (obstack_memory_used): Define macro. - -Thu Dec 28 11:42:12 1995 Ian Lance Taylor - - * libiberty.h (xstrdup): Declare. - -Thu Dec 21 14:47:17 1995 Michael Meissner - - * wait.h: Protect all macros with #ifndef. - -Tue Oct 24 21:45:40 1995 Ian Lance Taylor - - * bfdlink.h (struct bfd_link_info): Add static_link field. - -Tue Sep 12 16:28:04 1995 Ian Lance Taylor - - * bfdlink.h (struct bfd_link_callbacks): Add symbol parameter to - warning callback. - -Fri Sep 1 13:11:51 1995 Ian Lance Taylor - - * bfdlink.h (struct bfd_link_callbacks): Change warning callback - to take BFD, section, and address arguments. - -Thu Aug 31 16:45:12 1995 steve chamberlain - - * bfdlink.h (struct bfd_link_info): Remove PE stuff. - -Tue Aug 22 03:18:23 1995 Ken Raeburn - - * libiberty.h: Declare xstrerror. From Pat Rankin. - -Mon Aug 21 18:11:36 1995 steve chamberlain - - * bfdlink.h (struct bfd_link_info): Remove PE stuff. - -Wed Aug 2 08:14:12 1995 Doug Evans - - * dis-asm.h (print_insn_sparc64): Declare. - -Mon Jul 10 13:26:49 1995 Eric Youngdale - - * bfdlink.h (struct bfd_link_info): Add new field symbolic. - -Sun Jul 2 17:48:40 1995 Ian Lance Taylor - - * bfdlink.h (struct bfd_link_info): Change type of base_file to - PTR. - -Thu Jun 29 00:02:45 1995 Steve Chamberlain - - * bfdlink.h (struct bfd_link_info): Added base_file member. - -Tue Jun 20 16:40:04 1995 Steve Chamberlain - - * ansidecl.h: win32s is ANSI enough. - -Thu May 18 04:25:50 1995 Ken Raeburn - - Wed May 10 14:28:16 1995 Richard Earnshaw (rearnsha@armltd.co.uk) - - * dis-asm.h (print_insn_arm): Delete declaration. - (print_insn_{little,big}_arm): New declarations. - - * floatformat.h (floatformat_arm_ext): Declare. - -Sat May 13 10:14:08 1995 Steve Chamberlain - - * coff/pe.h: New file. - * bfdlink.h (subsytem, stack_heap_parameters): New. - * coff/i386.h (NT_SECTION_ALIGNMENT, NT_FILE_ALIGNMENT, - NT_DEF_RESERVE, NT_DEF_COMMIT): New. - * coff/internal.h (internal_filehdr): New fields for PE. - (IMAGE_DATA_DIRECTORY): New. - (internal_aouthdr): New fields for PE. - -Thu May 4 14:36:42 1995 Jason Merrill - - * demangle.h: Don't include ansidecl.h if IN_GCC. - -Tue Feb 21 00:37:28 1995 Jeff Law (law@snake.cs.utah.edu) - - * hp-symtab.h: Don't use bitfield enumerations, the HP C compiler - does not handle them correctly. - -Thu Feb 9 14:20:27 1995 Ian Lance Taylor - - * libiberty.h (basename): Don't declare parameter type; some - systems have this in their header files. - -Wed Feb 8 17:35:38 1995 Ian Lance Taylor - - * bfdlink.h (struct bfd_link_hash_entry): Change format of common - symbol information, to remove restrictions on maximum size and - alignment power, by using a pointer to a structure instead. - -Mon Feb 6 14:55:32 1995 Ian Lance Taylor - - * bfdlink.h (enum bfd_link_hash_type): Rename bfd_link_hash_weak - to bfd_link_hash_undefweak. Add bfd_link_hash_defweak. - -Mon Jan 16 21:00:23 1995 Stan Shebs - - * dis-asm.h (GDB_INIT_DISASSEMBLE_INFO, etc): Remove all - GDB-specific definitions. - -Sun Jan 15 18:39:35 1995 Steve Chamberlain - - * dis-asm.h (print_insn_w65): Declare. - -Thu Jan 12 17:51:17 1995 Ken Raeburn - - * libiberty.h (hex_p): Fix sense of test. - -Wed Jan 11 22:36:40 1995 Ken Raeburn - - * libiberty.h (_hex_array_size, _hex_bad, _hex_value, hex_init, - hex_p, hex_value): New macros and declarations, for hex.c. - -Fri Jan 6 17:44:14 1995 Ian Lance Taylor - - * dis-asm.h: Make idempotent. - -Wed Dec 14 13:08:43 1994 Stan Shebs - - * progress.h: New file, empty definitions for progress macros. - -Fri Nov 25 00:14:05 1994 Jeff Law (law@snake.cs.utah.edu) - - * hp-symtab.h: New file describing the debug symbols emitted - by the HP C compilers. - -Fri Nov 11 15:48:37 1994 Ian Lance Taylor - - * bfdlink.h (struct bfd_link_hash_entry): Change u.c.size from 24 - to 26 bits, and change u.c.alignment_power from 8 to 6 bits. 6 - bit in the alignment power is enough for a 64 bit address space. - -Mon Oct 31 13:02:51 1994 Stan Shebs (shebs@andros.cygnus.com) - - * demangle.h (cplus_mangle_opname): Declare. - -Tue Oct 25 11:38:02 1994 Ian Lance Taylor - - * bfdlink.h (struct bfd_link_callbacks): Fix comments for - multiple_common field. - -Sun Sep 04 17:58:10 1994 Richard Earnshaw (rwe@pegasus.esprit.ec.org) - - * aout/aout64.h: Only define QMAGIC if it isn't already defined. - - * dis-asm.h: Add support for the ARM. - -Wed Aug 10 12:51:41 1994 Doug Evans (dje@canuck.cygnus.com) - - * libiberty.h (strsignal): Document its existence even if we - can't declare it. - -Tue Aug 2 14:40:03 1994 Jim Kingdon (kingdon@lioth.cygnus.com) - - * os9k.h: Remove u_int16, u_int32, and owner_id typedefs and - expand their uses. Those names conflict with Mach headers. - -Fri Jul 22 14:17:12 1994 Ian Lance Taylor (ian@sanguine.cygnus.com) - - * bfdlink.h (struct bfd_link_hash_entry): Change u.c.size into a - bitfield. Add field u.c.alignment_power. - -Sun Jul 10 00:26:39 1994 Ian Dall (dall@hfrd.dsto.gov.au) - - * dis-asm.h: Add print_insn_ns32k declaration. - -Mon Jun 20 17:13:29 1994 Ian Lance Taylor (ian@sanguine.cygnus.com) - - * bfdlink.h (bfd_link_hash_table): Make creator a const pointer. - -Sat Jun 18 16:09:32 1994 Stan Shebs (shebs@andros.cygnus.com) - - * demangle.h (cplus_demangle_opname): Declare. - -Thu Jun 16 15:19:03 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) - - * bfdlink.h (struct bfd_link_info): Add new field shared. - -Mon Jun 6 14:39:44 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) - - * bfdlink.h (struct bfd_link_hash_entry): Remove written field: - not needed for all backends. - -Thu Apr 28 19:06:50 1994 Ken Raeburn (raeburn@cujo.cygnus.com) - - * dis-asm.h (disassembler): Declare. - -Fri Apr 1 00:38:17 1994 Jim Wilson (wilson@mole.gnu.ai.mit.edu) - - * obstack.h: Delete use of IN_GCC to control whether - stddef.h or gstddef.h is included. - -Tue Mar 22 13:06:02 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) - - * bfdlink.h (enum bfd_link_order_type): Add bfd_data_link_order. - (struct bfd_link_order): Add data field to union. - -Mon Mar 21 18:45:26 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) - - * bfdlink.h (struct bfd_link_callbacks): Change bitsize argument - to add_to_set to reloc. Remove bitsize argument from constructor. - Comment that reloc_overflow, reloc_dangerous and unattached_reloc - must handle NULL pointers for reloc location. - (enum bfd_link_order_type): Add bfd_section_reloc_link_order and - bfd_symbol_reloc_link_order. - (struct bfd_link_order): Add reloc field to union. - (struct bfd_link_order_reloc): Define. - -Mon Mar 14 12:27:50 1994 Ian Lance Taylor (ian@cygnus.com) - - * ieee-float.h: Removed; no longer used. - -Tue Mar 1 18:10:49 1994 Kung Hsu (kung@mexican.cygnus.com) - - * os9k.h: os9000 target specific header file, the header of the - object file is used now. - -Sun Feb 27 21:52:26 1994 Jim Kingdon (kingdon@deneb.cygnus.com) - - * floatformat.h: New file, intended to replace ieee-float.h. - -Sun Feb 20 17:15:42 1994 Ian Lance Taylor (ian@lisa.cygnus.com) - - * ansidecl.h (ANSI_PROTOTYPES): Define if using ANSI prototypes. - -Wed Feb 16 01:07:12 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) - - * libiberty.h: Don't declare strsignal, to avoid conflicts with - Solaris system header files. - -Sat Feb 12 22:11:32 1994 Jeffrey A. Law (law@snake.cs.utah.edu) - - * libiberty.h (xexit): Use __volatile__ to avoid losing if - compiling with gcc -traditional. - -Thu Feb 10 14:05:41 1994 Ian Lance Taylor (ian@cygnus.com) - - * libiberty.h: New file. Declares functions provided by - libiberty. - -Tue Feb 8 05:19:52 1994 David J. Mackenzie (djm@thepub.cygnus.com) - - Handle obstack_chunk_alloc returning NULL. This allows - obstacks to be used by libraries, without forcing them - to call exit or longjmp. - * obstack.h (struct obstack): Add alloc_failed flag. - _obstack_begin, _obstack_begin_1): Declare to return int, not void. - (obstack_finish): If alloc_failed, return NULL. - (obstack_base, obstack_next_free, objstack_object_size): - If alloc_failed, return 0. - (obstack_grow, obstack_grow0, obstack_1grow, obstack_ptr_grow, - obstack_int_grow, obstack_blank): If alloc_failed, do nothing that - could corrupt the obstack. - -Mon Jan 24 15:06:05 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) - - * bfdlink.h (struct bfd_link_callbacks): Add name, reloc_name and - addend argments to reloc_overflow callback. - -Fri Jan 21 19:13:12 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) - - * dis-asm.h (print_insn_big_powerpc, print_insn_little_powerpc, - print_insn_rs6000): Declare. - -Thu Jan 6 14:15:55 1994 Ian Lance Taylor (ian@tweedledumb.cygnus.com) - - * bfdlink.h (struct bfd_link_callbacks): Add bitsize argument to - add_to_set field. Add new callback named constructor. - -Thu Dec 30 10:44:06 1993 Ian Lance Taylor (ian@rtl.cygnus.com) - - * bfdlink.h: New file for new BFD linker backend routines. - -Mon Nov 29 10:43:57 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com) - - * dis-asm.h (enum dis_insn_tyupe): Remove non-ANSI trailing comma. - -Sat Oct 2 20:42:26 1993 Jim Kingdon (kingdon@lioth.cygnus.com) - - * dis-asm.h: Move comment to right place. - -Mon Aug 9 19:03:35 1993 David J. Mackenzie (djm@thepub.cygnus.com) - - * obstack.h (obstack_chunkfun, obstack_freefun): Add defns from - previous version. Are these Cygnus local changes? - -Fri Aug 6 17:05:47 1993 David J. Mackenzie (djm@thepub.cygnus.com) - - * getopt.h, obstack.h: Update to latest FSF version. - -Mon Aug 2 16:37:14 1993 Stu Grossman (grossman at cygnus.com) - - * coff/i386.h: Add Lynx magic number. - -Mon Aug 2 14:45:29 1993 John Gilmore (gnu@cygnus.com) - - * dis-asm.h: Move enum outside of struct defn to avoid warnings. - -Mon Aug 2 08:49:30 1993 Stu Grossman (grossman at cygnus.com) - - * wait.h (WEXITSTATUS, WSTOPSIG): Mask down to 8 bits. This is - for systems that store stuff into the high 16 bits of a wait - status. - -Fri Jul 30 18:38:02 1993 John Gilmore (gnu@cygnus.com) - - * dis-asm.h: Add new fields insn_info_valid, branch_delay_insns, - data_size, insn_type, target, target2. These are used to return - information from the instruction decoders back to the calling - program. Add comments, make more readable. - -Mon Jul 19 22:14:14 1993 Fred Fish (fnf@deneb.cygnus.com) - - * nlm: New directory containing NLM/NetWare includes. - -Thu Jul 15 12:10:04 1993 Ken Raeburn (raeburn@cambridge.cygnus.com) - - * dis-asm.h (struct disassemble_info): New field application_data. - -Thu Jul 15 12:41:15 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com) - - * dis-asm.h: Added declaration of print_insn_m88k. - -Thu Jul 8 09:05:26 1993 Doug Evans (dje@canuck.cygnus.com) - - * opcode/h8300.h: Lots of little fixes for the h8/300h. - -Fri Jul 2 10:31:59 1993 Ian Lance Taylor (ian@cygnus.com) - - * ansidecl.h: Use ANSI macros if __mips and _SYSTYPE_SVR4 are - defined, since RISC/OS cc handles ANSI declarations in SVR4 mode - but does not define __STDC__. - -Sun Jun 20 18:27:52 1993 Ken Raeburn (raeburn@poseidon.cygnus.com) - - * dis-asm.h: Don't need to include ansidecl.h any more. - -Fri Jun 18 03:22:10 1993 John Gilmore (gnu@cygnus.com) - - * oasys.h: Eliminate "int8_type", "int16_type", "int32_type", and - their variants. These changes are coordinated with corresponding - changes in ../bfd/oasys.c. - -Wed Jun 16 10:43:08 1993 Fred Fish (fnf@cygnus.com) - - * bfd.h: Note that it has been removed. - -Tue Jun 8 12:16:03 1993 Steve Chamberlain (sac@phydeaux.cygnus.com) - - Support for H8/300-H - * dis-asm.h (print_insn_h8300, print_insn_h8300h): Declare it. - * coff/h8300.h: New magic number. - * coff/internal.h: New relocations. - * opcode/h8300.h: Lots of new opcodes. - -Tue Jun 1 07:35:03 1993 Ken Raeburn (raeburn@kr-pc.cygnus.com) - - * ansidecl.h (const): Don't define it if it's already defined. - -Thu May 27 18:19:51 1993 Ken Raeburn (raeburn@cambridge.cygnus.com) - - * dis-asm.h (print_insn_hppa): Declare it. - - * bfd.h: Moved to bfd directory. Small stub here includes it - without requiring "-I../bfd". - -Thu Apr 29 12:06:13 1993 Ken Raeburn (raeburn@deneb.cygnus.com) - - * bfd.h: Updated with BSF_FUNCTION. - -Mon Apr 26 18:15:50 1993 Steve Chamberlain (sac@thepub.cygnus.com) - - * bfd.h, dis-asm.h: Updated with Hitachi SH. - -Fri Apr 23 18:41:38 1993 Steve Chamberlain (sac@thepub.cygnus.com) - - * bfd.h: Updated with alpha changes. - * dis-asm.h: Added alpha. - -Fri Apr 16 17:35:30 1993 Jim Kingdon (kingdon@cygnus.com) - - * bfd.h: Update for signed bfd_*get_*. - -Thu Apr 15 09:24:21 1993 Jim Kingdon (kingdon@cygnus.com) - - * bfd.h: Updated for file_truncated error. - -Thu Apr 8 10:53:47 1993 Ian Lance Taylor (ian@cygnus.com) - - * ansidecl.h: If no ANSI, define const to be empty. - -Thu Apr 1 09:00:10 1993 Jim Kingdon (kingdon@cygnus.com) - - * dis-asm.h: Declare a29k and i960 print_insn_*. - - * dis-asm.h: Add print_address_func and related stuff. - - * dis-asm.h (dis_asm_read_memory): Fix prototype. - -Wed Mar 31 17:40:16 1993 Jim Kingdon (kingdon@lioth.cygnus.com) - - * dis-asm.h: Add print_insn_sparc. - -Wed Mar 31 17:51:42 1993 Ian Lance Taylor (ian@cygnus.com) - - * bfd.h: Updated for BFD_RELOC_MIPS_GPREL and bfd_[gs]et_gp_size - prototypes. - -Wed Mar 31 16:35:12 1993 Stu Grossman (grossman@cygnus.com) - - * dis-asm.h: (disassemble_info): Fix typo in prototype of - dis_asm_memory_error(). - -Tue Mar 30 19:09:23 1993 Jim Kingdon (kingdon@lioth.cygnus.com) - - * dis-asm.h (disassembler_info): Add read_memory_func, - memory_error_func, buffer, and length. - ({GDB_,}INIT_DISASSEMBLE_INFO): Set them. - print_insn_*: Remove second argument. - -Tue Mar 30 14:48:55 1993 Steve Chamberlain (sac@thepub.cygnus.com) - - * bfd.h: Update for lma field of section. - -Tue Mar 30 12:22:55 1993 Jim Kingdon (kingdon@cygnus.com) - - * ansidecl.h: Use ANSI versions on AIX regardless of __STDC__. - -Fri Mar 19 14:49:49 1993 Steve Chamberlain (sac@thepub.cygnus.com) - - * dis-asm.h: Add h8500. - -Thu Mar 18 13:49:09 1993 Per Bothner (bothner@rtl.cygnus.com) - - * ieee-float.h: Moved from ../gdb. - * dis-asm.h: New file. Interface to dis-assembler. - -Thu Mar 11 10:52:57 1993 Fred Fish (fnf@cygnus.com) - - * demangle.h (DMGL_NO_OPTS): Add define (set to 0) to use - in place of bare 0, for readability reasons. - -Tue Mar 2 17:50:11 1993 Fred Fish (fnf@cygnus.com) - - * demangle.h: Replace all references to cfront with ARM. - -Tue Feb 23 12:21:14 1993 Ian Lance Taylor (ian@cygnus.com) - - * bfd.h: Update for new elements in JUMP_TABLE. - -Tue Feb 16 00:51:30 1993 John Gilmore (gnu@cygnus.com) - - * bfd.h: Update for BFD_VERSION 2.1. - -Tue Jan 26 11:49:20 1993 Ian Lance Taylor (ian@cygnus.com) - - * bfd.h: Update for SEC_IS_COMMON flag. - -Tue Jan 19 12:25:12 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com) - - * bfd.h: Update for bfd_asymbol_value bug fix. - -Fri Jan 8 16:37:18 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com) - - * bfd.h: Update to include ECOFF tdata and target_flavour. - -Sun Dec 27 17:52:30 1992 Fred Fish (fnf@cygnus.com) - - * bfd.h: Add declaration for bfd_get_size(). - -Tue Dec 22 22:42:46 1992 Fred Fish (fnf@cygnus.com) - - * demangle.h: Protect file from multiple inclusions with - #if !defined(DEMANGLE_H)...#define DEMANGLE_H...#endif. - -Mon Dec 21 21:25:50 1992 Stu Grossman (grossman at cygnus.com) - - * bfd.h: Update to get hppa_core_struct from bfd.c. - -Thu Dec 17 00:42:35 1992 John Gilmore (gnu@cygnus.com) - - * bfd.h: Update to get tekhex tdata name change from bfd. - -Mon Nov 9 23:55:42 1992 John Gilmore (gnu@cygnus.com) - - * ansidecl.h: Update comments to discourage use of EXFUN. - -Thu Nov 5 16:35:44 1992 Ian Lance Taylor (ian@cygnus.com) - - * bfd.h: Update to bring in SEC_SHARED_LIBRARY. - -Thu Nov 5 03:21:32 1992 John Gilmore (gnu@cygnus.com) - - * bfd.h: Update to match EXFUN, bfd_seclet_struct, and SDEF - cleanups in bfd. - -Wed Nov 4 07:28:05 1992 Ken Raeburn (raeburn@cygnus.com) - - * bout.h (N_CALLNAME, N_BALNAME): Define as char-type values, so - widening works consistently. - -Fri Oct 16 03:17:08 1992 John Gilmore (gnu@cygnus.com) - - * getopt.h: Update to Revised Standard FSF Version. - -Thu Oct 15 21:43:22 1992 K. Richard Pixley (rich@sendai.cygnus.com) - - * getopt.h (struct option): use the provided enum for has_arg. - - * demangle.h (AUTO_DEMANGLING, GNU_DEMANGLING, - LUCID_DEMANGLING): ultrix compilers require enums to be - enums and ints to be ints and casts where they meet. cast some - enums into ints. - -Thu Oct 15 04:35:51 1992 John Gilmore (gnu@cygnus.com) - - * bfd.h: Update after comment changes. - -Thu Oct 8 09:03:02 1992 Steve Chamberlain (sac@thepub.cygnus.com) - - * bfd.h (bfd_get_symbol_leading_char): new macro for getting in xvec - -Thu Sep 3 09:10:50 1992 Stu Grossman (grossman at cygnus.com) - - * bfd.h (struct reloc_howto_struct): size needs to be signed if - it's going to hold negative values. - -Sun Aug 30 17:50:27 1992 Per Bothner (bothner@rtl.cygnus.com) - - * demangle.h: New file, moved from ../gdb. Made independent - of gdb. Allow demangling style option to be passed as a - parameter to cplus_demangle(), but using the - current_demangling_style global as the default. - -Sat Aug 29 10:07:55 1992 Fred Fish (fnf@cygnus.com) - - * obstack.h: Merge comment change from current FSF version. - -Thu Aug 27 12:59:29 1992 Brendan Kehoe (brendan@cygnus.com) - - * bfd.h: add we32k - -Tue Aug 25 15:07:47 1992 Steve Chamberlain (sac@thepub.cygnus.com) - - * bfd.h: new after Z8000 stuff - -Mon Aug 17 09:01:23 1992 Ken Raeburn (raeburn@cygnus.com) - - * bfd.h: Regenerated after page/segment size changes. - -Sat Aug 1 13:46:31 1992 Fred Fish (fnf@cygnus.com) - - * obstack.h: Merge changes from current FSF version. - -Mon Jul 20 21:06:23 1992 Fred Fish (fnf@cygnus.com) - - * obstack.h (area_id, flags): Remove, replace with extra_arg, - use_extra_arg, and maybe_empty_object. - * obstack.h (OBSTACK_MAYBE_EMPTY_OBJECT, OBSTACK_MMALLOC_LIKE): - Remove, replaced by maybe_empty_object and use_extra_arg bitfields. - * obstack.h (obstack_full_begin, _obstack_begin): Remove area_id - and flags arguments. - * obstack.h (obstack_alloc_arg): New macro to set extra_arg. - -Thu Jul 16 08:12:44 1992 Steve Chamberlain (sac@thepub.cygnus.com) - - * bfd.h: new after adding BFD_IS_RELAXABLE - -Sat Jul 4 03:22:23 1992 John Gilmore (gnu at cygnus.com) - - * bfd.h: Regen after adding BSF_FILE. - -Mon Jun 29 14:18:36 1992 Fred Fish (fnf at sunfish) - - * obstack.h: Convert bcopy() use to memcpy(), which is more - portable, more standard, and can take advantage of gcc's builtin - functions for increased performance. - -Thu Jun 25 04:46:08 1992 John Gilmore (gnu at cygnus.com) - - * ansidecl.h (PARAMS): Incorporate this macro from gdb's defs.h. - It's a cleaner way to forward-declare function prototypes. - -Fri Jun 19 15:46:32 1992 Stu Grossman (grossman at cygnus.com) - - * bfd.h: HPPA merge. - -Tue Jun 16 21:30:56 1992 K. Richard Pixley (rich@cygnus.com) - - * getopt.h: gratuitous white space changes merged from other prep - releases. - -Thu Jun 11 01:10:55 1992 John Gilmore (gnu at cygnus.com) - - * bfd.h: Regen'd from bfd.c after removing elf_core_tdata_struct. - -Mon May 18 17:29:03 1992 K. Richard Pixley (rich@cygnus.com) - - * getopt.h: merged changes from make-3.62.11. - - * getopt.h: merged changes from grep-1.6 (alpha). - -Fri May 8 14:53:32 1992 K. Richard Pixley (rich@cygnus.com) - - * getopt.h: merged changes from bison-1.18. - -Sat Mar 14 17:25:20 1992 Fred Fish (fnf@cygnus.com) - - * obstack.h: Add "area_id" and "flags" members to obstack - structure. Add obstack_chunkfun() and obstack_freefun() to - set functions explicitly. Convert maybe_empty_object to - a bit in "flags". - -Thu Feb 27 22:01:02 1992 Per Bothner (bothner@cygnus.com) - - * wait.h (WIFSTOPPED): Add IBM rs6000-specific version. - -Fri Feb 21 20:49:20 1992 John Gilmore (gnu at cygnus.com) - - * obstack.h: Add obstack_full_begin. - * bfd.h, obstack.h: Protolint. - -Thu Jan 30 01:18:42 1992 John Gilmore (gnu at cygnus.com) - - * bfd.h: Remove comma from enum declaration. - -Mon Jan 27 22:01:13 1992 Steve Chamberlain (sac at cygnus.com) - - * bfd.h : new target entr, bfd_relax_section - -Wed Dec 18 17:19:44 1991 Stu Grossman (grossman at cygnus.com) - - * bfd.h, ieee.h, opcode/m68k.h, opcode/sparc.h: ANSIfy enums. - -Thu Dec 12 20:59:56 1991 John Gilmore (gnu at cygnus.com) - - * fopen-same.h, fopen-bin.h: New files for configuring - whether fopen distinguishes binary files or not. For use - by host-dependent config files. - -Sat Nov 30 20:46:43 1991 Steve Chamberlain (sac at rtl.cygnus.com) - - * bfd.h: change the documentation format. - - * created coff, elf and opcode and aout directories. Moved: - - aout64.h ==> aout/aout64.h - ar.h ==> aout/ar.h - a.out.encap.h ==> aout/encap.h - a.out.host.h ==> aout/host.h - a.out.hp.h ==> aout/hp.h - a.out.sun4.h ==> aout/sun4.h - ranlib.h ==> aout/ranlib.h - reloc.h ==> aout/reloc.h - stab.def ==> aout/stab.def - stab.gnu.h ==> aout/stab_gnu.h - - coff-a29k.h ==> coff/a29k.h - coff-h8300.h ==> coff/h8300.h - coff-i386.h ==> coff/i386.h - coff-i960.h ==> coff/i960.h - internalcoff.h ==> coff/internal.h - coff-m68k.h ==> coff/m68k.h - coff-m88k.h ==> coff/m88k.h - coff-mips.h ==> coff/mips.h - coff-rs6000.h ==> coff/rs6000.h - - elf-common.h ==> elf/common.h - dwarf.h ==> elf/dwarf.h - elf-external.h ==> elf/external.h - elf-internal.h ==> elf/internal.h - - a29k-opcode.h ==> opcode/a29k.h - arm-opcode.h ==> opcode/arm.h - h8300-opcode.h ==> opcode/h8300.h - i386-opcode.h ==> opcode/i386.h - i860-opcode.h ==> opcode/i860.h - i960-opcode.h ==> opcode/i960.h - m68k-opcode.h ==> opcode/m68k.h - m88k-opcode.h ==> opcode/m88k.h - mips-opcode.h ==> opcode/mips.h - np1-opcode.h ==> opcode/np1.h - ns32k-opcode.h ==> opcode/ns32k.h - pn-opcode.h ==> opcode/pn.h - pyr-opcode.h ==> opcode/pyr.h - sparc-opcode.h ==> opcode/sparc.h - tahoe-opcode.h ==> opcode/tahoe.h - vax-opcode.h ==> opcode/vax.h - - - -Wed Nov 27 10:38:31 1991 Steve Chamberlain (sac at rtl.cygnus.com) - - * internalcoff.h: (internal_scnhdr) took out #def dependency, now - s_nreloc and s_nlnno are always long. (internal_reloc): allways - has an offset field now. - -Fri Nov 22 08:12:58 1991 John Gilmore (gnu at cygnus.com) - - * coff-rs6000.h: Lint; use unsigned chars for external fields. - * internalcoff.h: Lint; cast storage classes to signed char. - -Thu Nov 21 21:01:05 1991 Per Bothner (bothner at cygnus.com) - - * stab.def: Remove the GNU extended type codes (e.g. N_SETT). - * aout64.h: The heuristic for distinguishing between - sunos-style and bsd-style ZMAGIC files (wrt. where the - text segment starts) is moved into (the default definition of) - the macro N_HEADER_IN_TEXT. This definition is only used - if no other definition is used - e.g. bfd/newsos3.c defines - N_HEADER_IN_TEXT(x) to be always 0 (as before). - -Thu Nov 21 11:53:03 1991 John Gilmore (gnu at cygnus.com) - - * aout64.h (N_TXTADDR, N_TXTOFF, N_TXTSIZE): New definitions - that should handle all uses. LOGICAL_ versions deleted. - Eliminate N_HEADER_IN_TEXT, using a_entry to determine which - kind of zmagic a.out file we are looking at. - * coff-rs6000.h: Typo. - -Tue Nov 19 18:43:37 1991 Per Bothner (bothner at cygnus.com) - - (Note: This is a revised entry, as was aout64.h.) - * aout64.h: Some cleanups of N_TXTADDR and N_TXTOFF: - Will now work for both old- and new-style ZMAGIC files, - depending on N_HEADER_IN_TEXT macro. - Add LOGICAL_TXTADDR, LOICAL_TXTOFF and LOGICAL_TXTSIZE - that don't count the exec header as part - of the text segment, to be consistent with bfd. - * a.out.sun4.h: Simplified/fixed for previous change. - -Mon Nov 18 00:02:06 1991 Fred Fish (fnf at cygnus.com) - - * dwarf.h: Update to DWARF draft 5 version from gcc2. - -Thu Nov 14 19:44:59 1991 Per Bothner (bothner at cygnus.com) - - * stab.def: Added defs for extended GNU symbol types, - such as N_SETT. These are normally ifdef'd out (because - of conflicts with a.out.gnu.h), but are used by bfb_stab_name(). - -Thu Nov 14 19:17:03 1991 Fred Fish (fnf at cygnus.com) - - * elf-common.h: Add defines to support ELF symbol table code. - -Mon Nov 11 19:01:06 1991 Fred Fish (fnf at cygnus.com) - - * elf-internal.h, elf-external.h, elf-common.h: Add support for - note sections, which are used in ELF core files to hold copies - of various /proc structures. - -Thu Nov 7 08:58:26 1991 Steve Chamberlain (sac at cygnus.com) - - * internalcoff.h: took out the M88 dependency in the lineno - struct. - * coff-m88k.h: defines GET_LINENO_LNNO and PUT_LINENO_LNNO to use - 32bit linno entries. - * a29k-opcode.h: fixed encoding of mtacc - -Sun Nov 3 11:54:22 1991 Per Bothner (bothner at cygnus.com) - - * bfd.h: Updated from ../bfd/bfd-in.h (q.v). - -Fri Nov 1 11:13:53 1991 John Gilmore (gnu at cygnus.com) - - * internalcoff.h: Add x_csect defines. - -Fri Oct 25 03:18:20 1991 John Gilmore (gnu at cygnus.com) - - * Rename COFF-related files in `coff-ARCH.h' form. - coff-a29k.h, coff-i386.h, coff-i960.h, coff-m68k.h, coff-m88k.h, - coff-mips.h, coff-rs6000.h to be exact. - -Thu Oct 24 22:11:11 1991 John Gilmore (gnu at cygnus.com) - - RS/6000 support, by Metin G. Ozisik, Mimi Phûông-Thåo Võ, and - John Gilmore. - - * a.out.gnu.h: Update slightly. - * bfd.h: Add new error code, fix doc, add bfd_arch_rs6000. - * internalcoff.h: Add more F_ codes for filehdr. Add - rs/6000-dependent fields to aouthdr. Add storage classes - to syments. Add 6000-specific auxent. Add r_size in reloc. - * rs6000coff.c: New file. - -Thu Oct 24 04:13:20 1991 Fred Fish (fnf at cygnus.com) - - * dwarf.h: New file for dwarf support. Copied from gcc2 - distribution. - -Wed Oct 16 13:31:45 1991 John Gilmore (gnu at cygnus.com) - - * aout64.h: Remove PAGE_SIZE defines; they are target-dependent. - Add N_FN_SEQ for N_FN symbol type used on Sequent machines. - * stab.def: Include N_FN_SEQ in table. - * bout.h: External formats of structures use unsigned chars. - -Fri Oct 11 12:40:43 1991 Steve Chamberlain (steve at cygnus.com) - - * bfd.h:upgrade from bfd.c - * internalcoff.h: add n_name, n_zeroes and n_offset macros - * amdcoff.h: Define OMAGIC and AOUTHDRSZ. - -Fri Oct 11 10:58:06 1991 Per Bothner (bothner at cygnus.com) - - * a.out.host.h: Change SEGMENT_SIZE to 0x1000 for Sony. - * bfd.h (align_power): Add (actually move) comment. - -Tue Oct 8 15:29:32 1991 Per Bothner (bothner at cygnus.com) - - * sys/h-rtbsd.h: Define MISSING_VFPRINT (for binutils/bucomm.c). - -Sun Oct 6 19:24:39 1991 John Gilmore (gnu at cygnus.com) - - * aout64.h: Move struct internal_exec to ../bfd/libaout.h so - it can be shared by all `a.out-family' code. Rename - EXTERNAL_LIST_SIZE to EXTERNAL_NLIST_SIZE. Use basic types - for nlist members, and make strx integral rather than pointer. - More commentary on n_type values. - * bout.h: Provide a struct external_exec rather than an - internal_exec. - * m68kcoff.h: Remove `tagentries' which snuck in from the i960 - COFF port. - -Fri Oct 4 01:25:59 1991 John Gilmore (gnu at cygnus.com) - - * h8300-opcode.h: Remove `_enum' from the typedef for an enum. - * bfd.h: Update to match bfd changes. - - * sys/h-i386mach.h, sysdep.h: Add 386 Mach host support. - -Tue Oct 1 04:58:42 1991 John Gilmore (gnu at cygnus.com) - - * bfd.h, elf-common.h, elf-external.h, elf-internal.h: - Add preliminary ELF support, sufficient for GDB, from Fred Fish. - * sysdep.h, sys/h-amix.h: Support Amiga SVR4. - - * sys/h-vaxult.h: Make it work. (David Taylor ) - * a.out.vax.h: Remove unused and confusing file. - -Mon Sep 30 12:52:35 1991 Per Bothner (bothner at cygnus.com) - - * sysdep.h: Define NEWSOS3_SYS, and use it. - -Fri Sep 20 13:38:21 1991 John Gilmore (gnu at cygnus.com) - - * a.out.gnu.h (N_FN): Its value *really is* 0x1F. - Fix it, and add comments warning about or-ing N_EXT with it - and/or N_WARNING. - * aout64.h (N_FN): Fix value, add comments about N_EXT. - * stab.def (table at end): Update to show all the type - values <0x20, including low order bits. Move N_FN to - its rightful place. - -Tue Sep 17 17:41:37 1991 Stu Grossman (grossman at cygnus.com) - - * sys/h-irix3.h: sgi/irix support. - -Tue Sep 17 07:52:59 1991 John Gilmore (gnu at cygint.cygnus.com) - - * stab.def (N_DEFD): Add GNU Modula-2 debug stab, from Andrew - Beers. - -Thu Sep 12 14:12:59 1991 John Gilmore (gnu at cygint.cygnus.com) - - * internalcoff.h (SYMNMLEN, FILNMLEN, DIMNUM): Define these - for internalcoff, separately from the various external coff's. - * amdcoff.h, bcs88kcoff.h, i386coff.h, intel-coff.h, m68kcoff.h, - m88k-bcs.h: Prefix SYMNMLEN, FILNMLEN, and DIMNUM with E_'s for - the external struct definitions. - * ecoff.h: Remove these #define's, kludge no longer needed. - - * sys/h-ultra3.h: Add new Ultracomputer host. - * sysdep.h: Add ULTRA3_SYM1_SYS and use it. - -Tue Sep 10 10:11:46 1991 John Gilmore (gnu at cygint.cygnus.com) - - * i386coff.h (LINESZ): Always 6, not based on sizeof(). - (Fix from Peter Schauer .) - -Wed Sep 4 08:58:37 1991 John Gilmore (gnu at cygint.cygnus.com) - - * a.out.gnu.h, aout64.h: Add N_WARNING. Change N_FN to 0x0E, - to match SunOS and BSD. Add N_COMM as 0x12 for SunOS shared lib - support. - * stab.def: Add N_COMM to table, fix overlap comment. - -Tue Sep 3 06:29:20 1991 John Gilmore (gnu at cygint.cygnus.com) - - Merge with latest FSF versions of these files. - - * stab.gnu.h: Add LAST_UNUSED_STAB_CODE. - * stab.def: Update to GPL2. Move N_WARNING out, since not a - debug symbol. Change comments, and reorder table to numeric - order. Update final table comment. - (N_DSLINE, N_BSLINE): Renumber from 0x66 and 0x68, to 0x46 and 0x48. - - * obstack.h: GPL2. Merge. - -Fri Aug 23 01:54:23 1991 John Gilmore (gnu at cygint.cygnus.com) - - * a.out.gnu.h, a.out.sun4.h: Make SEGMENT_SIZE able to depend - on the particular a.out being examined. - * a.out.sun4.h: Define segment sizes for Sun-3's and Sun-4's. - * FIXME: a.out.gnu.h is almost obsolete. - * FIXME: a.out.sun4.h should be renamed a.out.sun.h now. - -Wed Aug 21 20:32:13 1991 John Gilmore (gnu at cygint.cygnus.com) - - * Start a ChangeLog for the includes directory. - - * a.out.gnu.h (N_FN): Fix value -- was 15, should be 0x1E. - * stab.def: Update allocation table in comments at end, - to reflect reality as I know it. - - -Local Variables: -mode: change-log -left-margin: 8 -fill-column: 74 -version-control: never -End: diff --git a/contrib/gcc/include/ansidecl.h b/contrib/gcc/include/ansidecl.h deleted file mode 100644 index 9a7c577..0000000 --- a/contrib/gcc/include/ansidecl.h +++ /dev/null @@ -1,295 +0,0 @@ -/* ANSI and traditional C compatability macros - Copyright 1991, 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001 - 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 - ----- ---- - ---------- ----------- - ---------- - ANSI_PROTOTYPES 1 not defined - PTR `void *' `char *' - PTRCONST `void *const' `char *' - LONG_DOUBLE `long double' `double' - const not defined `' - volatile not defined `' - signed not defined `' - VA_START(ap, var) va_start(ap, var) va_start(ap) - - Note that it is safe to write "void foo();" indicating a function - with no return value, in all K+R compilers we have been able to test. - - For declaring functions with prototypes, we also provide these: - - PARAMS ((prototype)) - -- for functions which take a fixed number of arguments. Use this - when declaring the function. When defining the function, write a - K+R style argument list. For example: - - char *strcpy PARAMS ((char *dest, char *source)); - ... - char * - strcpy (dest, source) - char *dest; - char *source; - { ... } - - - VPARAMS ((prototype, ...)) - -- for functions which take a variable number of arguments. Use - PARAMS to declare the function, VPARAMS to define it. For example: - - int printf PARAMS ((const char *format, ...)); - ... - int - printf VPARAMS ((const char *format, ...)) - { - ... - } - - For writing functions which take variable numbers of arguments, we - also provide the VA_OPEN, VA_CLOSE, and VA_FIXEDARG macros. These - hide the differences between K+R and C89 more - thoroughly than the simple VA_START() macro mentioned above. - - VA_OPEN and VA_CLOSE are used *instead of* va_start and va_end. - Immediately after VA_OPEN, put a sequence of VA_FIXEDARG calls - corresponding to the list of fixed arguments. Then use va_arg - normally to get the variable arguments, or pass your va_list object - around. You do not declare the va_list yourself; VA_OPEN does it - for you. - - Here is a complete example: - - int - printf VPARAMS ((const char *format, ...)) - { - int result; - - VA_OPEN (ap, format); - VA_FIXEDARG (ap, const char *, format); - - result = vfprintf (stdout, format, ap); - VA_CLOSE (ap); - - return result; - } - - - You can declare variables either before or after the VA_OPEN, - VA_FIXEDARG sequence. Also, VA_OPEN and VA_CLOSE are the beginning - and end of a block. They must appear at the same nesting level, - and any variables declared after VA_OPEN go out of scope at - VA_CLOSE. Unfortunately, with a K+R compiler, that includes the - argument list. You can have multiple instances of VA_OPEN/VA_CLOSE - pairs in a single function in case you need to traverse the - argument list more than once. - - For ease of writing code which uses GCC extensions but needs to be - portable to other compilers, we provide the GCC_VERSION macro that - simplifies testing __GNUC__ and __GNUC_MINOR__ together, and various - wrappers around __attribute__. Also, __extension__ will be #defined - to nothing if it doesn't work. See below. - - This header also defines a lot of obsolete macros: - CONST, VOLATILE, SIGNED, PROTO, EXFUN, DEFUN, DEFUN_VOID, - AND, DOTS, NOARGS. Don't use them. */ - -#ifndef _ANSIDECL_H -#define _ANSIDECL_H 1 - -/* Every source file includes this file, - so they will all get the switch for lint. */ -/* LINTLIBRARY */ - -/* Using MACRO(x,y) in cpp #if conditionals does not work with some - older preprocessors. Thus we can't define something like this: - -#define HAVE_GCC_VERSION(MAJOR, MINOR) \ - (__GNUC__ > (MAJOR) || (__GNUC__ == (MAJOR) && __GNUC_MINOR__ >= (MINOR))) - -and then test "#if HAVE_GCC_VERSION(2,7)". - -So instead we use the macro below and test it against specific values. */ - -/* This macro simplifies testing whether we are using gcc, and if it - is of a particular minimum version. (Both major & minor numbers are - significant.) This macro will evaluate to 0 if we are not using - gcc at all. */ -#ifndef GCC_VERSION -#define GCC_VERSION (__GNUC__ * 1000 + __GNUC_MINOR__) -#endif /* GCC_VERSION */ - -#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 ANSI_PROTOTYPES 1 -#define PTR void * -#define PTRCONST void *const -#define LONG_DOUBLE long double - -#define PARAMS(ARGS) ARGS -#define VPARAMS(ARGS) ARGS -#define VA_START(VA_LIST, VAR) va_start(VA_LIST, VAR) - -/* variadic function helper macros */ -/* "struct Qdmy" swallows the semicolon after VA_OPEN/VA_FIXEDARG's - use without inhibiting further decls and without declaring an - actual variable. */ -#define VA_OPEN(AP, VAR) { va_list AP; va_start(AP, VAR); { struct Qdmy -#define VA_CLOSE(AP) } va_end(AP); } -#define VA_FIXEDARG(AP, T, N) struct Qdmy - -#undef const -#undef volatile -#undef signed - -/* inline requires special treatment; it's in C99, and GCC >=2.7 supports - it too, but it's not in C89. */ -#undef inline -#if __STDC_VERSION__ > 199901L -/* it's a keyword */ -#else -# if GCC_VERSION >= 2007 -# define inline __inline__ /* __inline__ prevents -pedantic warnings */ -# else -# define inline /* nothing */ -# endif -#endif - -/* These are obsolete. Do not use. */ -#ifndef IN_GCC -#define CONST const -#define VOLATILE volatile -#define SIGNED signed - -#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) -#define AND , -#define DOTS , ... -#define NOARGS void -#endif /* ! IN_GCC */ - -#else /* Not ANSI C. */ - -#undef ANSI_PROTOTYPES -#define PTR char * -#define PTRCONST PTR -#define LONG_DOUBLE double - -#define PARAMS(args) () -#define VPARAMS(args) (va_alist) va_dcl -#define VA_START(va_list, var) va_start(va_list) - -#define VA_OPEN(AP, VAR) { va_list AP; va_start(AP); { struct Qdmy -#define VA_CLOSE(AP) } va_end(AP); } -#define VA_FIXEDARG(AP, TYPE, NAME) TYPE NAME = va_arg(AP, TYPE) - -/* some systems define these in header files for non-ansi mode */ -#undef const -#undef volatile -#undef signed -#undef inline -#define const -#define volatile -#define signed -#define inline - -#ifndef IN_GCC -#define CONST -#define VOLATILE -#define SIGNED - -#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() -#define AND ; -#define DOTS -#define NOARGS -#endif /* ! IN_GCC */ - -#endif /* ANSI C. */ - -/* Define macros for some gcc attributes. This permits us to use the - macros freely, and know that they will come into play for the - version of gcc in which they are supported. */ - -#if (GCC_VERSION < 2007) -# define __attribute__(x) -#endif - -/* Attribute __malloc__ on functions was valid as of gcc 2.96. */ -#ifndef ATTRIBUTE_MALLOC -# if (GCC_VERSION >= 2096) -# define ATTRIBUTE_MALLOC __attribute__ ((__malloc__)) -# else -# define ATTRIBUTE_MALLOC -# endif /* GNUC >= 2.96 */ -#endif /* ATTRIBUTE_MALLOC */ - -/* Attributes on labels were valid as of gcc 2.93. */ -#ifndef ATTRIBUTE_UNUSED_LABEL -# if (GCC_VERSION >= 2093) -# define ATTRIBUTE_UNUSED_LABEL ATTRIBUTE_UNUSED -# else -# define ATTRIBUTE_UNUSED_LABEL -# endif /* GNUC >= 2.93 */ -#endif /* ATTRIBUTE_UNUSED_LABEL */ - -#ifndef ATTRIBUTE_UNUSED -#define ATTRIBUTE_UNUSED __attribute__ ((__unused__)) -#endif /* ATTRIBUTE_UNUSED */ - -#ifndef ATTRIBUTE_NORETURN -#define ATTRIBUTE_NORETURN __attribute__ ((__noreturn__)) -#endif /* ATTRIBUTE_NORETURN */ - -#ifndef ATTRIBUTE_PRINTF -#define ATTRIBUTE_PRINTF(m, n) __attribute__ ((__format__ (__printf__, m, n))) -#define ATTRIBUTE_PRINTF_1 ATTRIBUTE_PRINTF(1, 2) -#define ATTRIBUTE_PRINTF_2 ATTRIBUTE_PRINTF(2, 3) -#define ATTRIBUTE_PRINTF_3 ATTRIBUTE_PRINTF(3, 4) -#define ATTRIBUTE_PRINTF_4 ATTRIBUTE_PRINTF(4, 5) -#define ATTRIBUTE_PRINTF_5 ATTRIBUTE_PRINTF(5, 6) -#endif /* ATTRIBUTE_PRINTF */ - -/* We use __extension__ in some places to suppress -pedantic warnings - about GCC extensions. This feature didn't work properly before - gcc 2.8. */ -#if GCC_VERSION < 2008 -#define __extension__ -#endif - -/* Bootstrap support: Adjust certain macros defined by Autoconf, - which are only valid for the stage1 compiler. If we detect - a modern version of GCC, we are probably in stage2 or beyond, - so unconditionally reset the values. Note that const, inline, - etc. have been dealt with above. */ -#if (GCC_VERSION >= 2007) -# ifndef HAVE_LONG_DOUBLE -# define HAVE_LONG_DOUBLE 1 -# endif -#endif /* GCC >= 2.7 */ - -#endif /* ansidecl.h */ diff --git a/contrib/gcc/include/demangle.h b/contrib/gcc/include/demangle.h deleted file mode 100644 index ad0569a..0000000 --- a/contrib/gcc/include/demangle.h +++ /dev/null @@ -1,163 +0,0 @@ -/* Defs for interface to demanglers. - Copyright 1992, 1993, 1994, 1995, 1996, 1997, 1998, 2000, 2001 - Free Software Foundation, Inc. - - 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, 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. */ - - -#if !defined (DEMANGLE_H) -#define DEMANGLE_H - -#include - -/* Options passed to cplus_demangle (in 2nd parameter). */ - -#define DMGL_NO_OPTS 0 /* For readability... */ -#define DMGL_PARAMS (1 << 0) /* Include function args */ -#define DMGL_ANSI (1 << 1) /* Include const, volatile, etc */ -#define DMGL_JAVA (1 << 2) /* Demangle as Java rather than C++. */ -#define DMGL_VERBOSE (1 << 3) /* Include implementation details. */ -#define DMGL_TYPES (1 << 4) /* Also try to demangle type encodings. */ - -#define DMGL_AUTO (1 << 8) -#define DMGL_GNU (1 << 9) -#define DMGL_LUCID (1 << 10) -#define DMGL_ARM (1 << 11) -#define DMGL_HP (1 << 12) /* For the HP aCC compiler; - same as ARM except for - template arguments, etc. */ -#define DMGL_EDG (1 << 13) -#define DMGL_GNU_V3 (1 << 14) -#define DMGL_GNAT (1 << 15) - -/* If none of these are set, use 'current_demangling_style' as the default. */ -#define DMGL_STYLE_MASK (DMGL_AUTO|DMGL_GNU|DMGL_LUCID|DMGL_ARM|DMGL_HP|DMGL_EDG|DMGL_GNU_V3|DMGL_JAVA|DMGL_GNAT) - -/* Enumeration of possible demangling styles. - - Lucid and ARM styles are still kept logically distinct, even though - they now both behave identically. The resulting style is actual the - union of both. I.E. either style recognizes both "__pt__" and "__rf__" - for operator "->", even though the first is lucid style and the second - is ARM style. (FIXME?) */ - -extern enum demangling_styles -{ - no_demangling = -1, - unknown_demangling = 0, - auto_demangling = DMGL_AUTO, - gnu_demangling = DMGL_GNU, - lucid_demangling = DMGL_LUCID, - arm_demangling = DMGL_ARM, - hp_demangling = DMGL_HP, - edg_demangling = DMGL_EDG, - gnu_v3_demangling = DMGL_GNU_V3, - java_demangling = DMGL_JAVA, - gnat_demangling = DMGL_GNAT -} current_demangling_style; - -/* Define string names for the various demangling styles. */ - -#define NO_DEMANGLING_STYLE_STRING "none" -#define AUTO_DEMANGLING_STYLE_STRING "auto" -#define GNU_DEMANGLING_STYLE_STRING "gnu" -#define LUCID_DEMANGLING_STYLE_STRING "lucid" -#define ARM_DEMANGLING_STYLE_STRING "arm" -#define HP_DEMANGLING_STYLE_STRING "hp" -#define EDG_DEMANGLING_STYLE_STRING "edg" -#define GNU_V3_DEMANGLING_STYLE_STRING "gnu-v3" -#define JAVA_DEMANGLING_STYLE_STRING "java" -#define GNAT_DEMANGLING_STYLE_STRING "gnat" - -/* Some macros to test what demangling style is active. */ - -#define CURRENT_DEMANGLING_STYLE current_demangling_style -#define AUTO_DEMANGLING (((int) CURRENT_DEMANGLING_STYLE) & DMGL_AUTO) -#define GNU_DEMANGLING (((int) CURRENT_DEMANGLING_STYLE) & DMGL_GNU) -#define LUCID_DEMANGLING (((int) CURRENT_DEMANGLING_STYLE) & DMGL_LUCID) -#define ARM_DEMANGLING (((int) CURRENT_DEMANGLING_STYLE) & DMGL_ARM) -#define HP_DEMANGLING (((int) CURRENT_DEMANGLING_STYLE) & DMGL_HP) -#define EDG_DEMANGLING (((int) CURRENT_DEMANGLING_STYLE) & DMGL_EDG) -#define GNU_V3_DEMANGLING (((int) CURRENT_DEMANGLING_STYLE) & DMGL_GNU_V3) -#define JAVA_DEMANGLING (((int) CURRENT_DEMANGLING_STYLE) & DMGL_JAVA) -#define GNAT_DEMANGLING (((int) CURRENT_DEMANGLING_STYLE) & DMGL_GNAT) - -/* Provide information about the available demangle styles. This code is - pulled from gdb into libiberty because it is useful to binutils also. */ - -extern const struct demangler_engine -{ - const char *const demangling_style_name; - const enum demangling_styles demangling_style; - const char *const demangling_style_doc; -} libiberty_demanglers[]; - -extern char * -cplus_demangle PARAMS ((const char *mangled, int options)); - -extern int -cplus_demangle_opname PARAMS ((const char *opname, char *result, int options)); - -extern const char * -cplus_mangle_opname PARAMS ((const char *opname, int options)); - -/* Note: This sets global state. FIXME if you care about multi-threading. */ - -extern void -set_cplus_marker_for_demangling PARAMS ((int ch)); - -extern enum demangling_styles -cplus_demangle_set_style PARAMS ((enum demangling_styles style)); - -extern enum demangling_styles -cplus_demangle_name_to_style PARAMS ((const char *name)); - -/* V3 ABI demangling entry points, defined in cp-demangle.c. */ -extern char* -cplus_demangle_v3 PARAMS ((const char* mangled, int options)); - -extern char* -java_demangle_v3 PARAMS ((const char* mangled)); - - -enum gnu_v3_ctor_kinds { - gnu_v3_complete_object_ctor = 1, - gnu_v3_base_object_ctor, - gnu_v3_complete_object_allocating_ctor -}; - -/* Return non-zero iff NAME is the mangled form of a constructor name - in the G++ V3 ABI demangling style. Specifically, return an `enum - gnu_v3_ctor_kinds' value indicating what kind of constructor - it is. */ -extern enum gnu_v3_ctor_kinds - is_gnu_v3_mangled_ctor PARAMS ((const char *name)); - - -enum gnu_v3_dtor_kinds { - gnu_v3_deleting_dtor = 1, - gnu_v3_complete_object_dtor, - gnu_v3_base_object_dtor -}; - -/* Return non-zero iff NAME is the mangled form of a destructor name - in the G++ V3 ABI demangling style. Specifically, return an `enum - gnu_v3_dtor_kinds' value, indicating what kind of destructor - it is. */ -extern enum gnu_v3_dtor_kinds - is_gnu_v3_mangled_dtor PARAMS ((const char *name)); - -#endif /* DEMANGLE_H */ diff --git a/contrib/gcc/include/dyn-string.h b/contrib/gcc/include/dyn-string.h deleted file mode 100644 index 2a771c7..0000000 --- a/contrib/gcc/include/dyn-string.h +++ /dev/null @@ -1,92 +0,0 @@ -/* An abstract string datatype. - Copyright (C) 1998, 1999, 2000, 2002 Free Software Foundation, Inc. - Contributed by Mark Mitchell (mark@markmitchell.com). - -This file is part of GCC. - -GCC 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. - -GCC 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 GCC; see the file COPYING. If not, write to -the Free Software Foundation, 59 Temple Place - Suite 330, -Boston, MA 02111-1307, USA. */ - - -typedef struct dyn_string -{ - int allocated; /* The amount of space allocated for the string. */ - int length; /* The actual length of the string. */ - char *s; /* The string itself, NUL-terminated. */ -}* dyn_string_t; - -/* The length STR, in bytes, not including the terminating NUL. */ -#define dyn_string_length(STR) \ - ((STR)->length) - -/* The NTBS in which the contents of STR are stored. */ -#define dyn_string_buf(STR) \ - ((STR)->s) - -/* Compare DS1 to DS2 with strcmp. */ -#define dyn_string_compare(DS1, DS2) \ - (strcmp ((DS1)->s, (DS2)->s)) - - -/* dyn_string functions are used in the demangling implementation - included in the G++ runtime library. To prevent collisions with - names in user programs, the functions that are used in the - demangler are given implementation-reserved names. */ - -#if defined(IN_LIBGCC2) || defined(IN_GLIBCPP_V3) - -#define dyn_string_init __cxa_dyn_string_init -#define dyn_string_new __cxa_dyn_string_new -#define dyn_string_delete __cxa_dyn_string_delete -#define dyn_string_release __cxa_dyn_string_release -#define dyn_string_resize __cxa_dyn_string_resize -#define dyn_string_clear __cxa_dyn_string_clear -#define dyn_string_copy __cxa_dyn_string_copy -#define dyn_string_copy_cstr __cxa_dyn_string_copy_cstr -#define dyn_string_prepend __cxa_dyn_string_prepend -#define dyn_string_prepend_cstr __cxa_dyn_string_prepend_cstr -#define dyn_string_insert __cxa_dyn_string_insert -#define dyn_string_insert_cstr __cxa_dyn_string_insert_cstr -#define dyn_string_insert_char __cxa_dyn_string_insert_char -#define dyn_string_append __cxa_dyn_string_append -#define dyn_string_append_cstr __cxa_dyn_string_append_cstr -#define dyn_string_append_char __cxa_dyn_string_append_char -#define dyn_string_substring __cxa_dyn_string_substring -#define dyn_string_eq __cxa_dyn_string_eq - -#endif /* IN_LIBGCC2 || IN_GLIBCPP_V3 */ - - -extern int dyn_string_init PARAMS ((struct dyn_string *, int)); -extern dyn_string_t dyn_string_new PARAMS ((int)); -extern void dyn_string_delete PARAMS ((dyn_string_t)); -extern char *dyn_string_release PARAMS ((dyn_string_t)); -extern dyn_string_t dyn_string_resize PARAMS ((dyn_string_t, int)); -extern void dyn_string_clear PARAMS ((dyn_string_t)); -extern int dyn_string_copy PARAMS ((dyn_string_t, dyn_string_t)); -extern int dyn_string_copy_cstr PARAMS ((dyn_string_t, const char *)); -extern int dyn_string_prepend PARAMS ((dyn_string_t, dyn_string_t)); -extern int dyn_string_prepend_cstr PARAMS ((dyn_string_t, const char *)); -extern int dyn_string_insert PARAMS ((dyn_string_t, int, - dyn_string_t)); -extern int dyn_string_insert_cstr PARAMS ((dyn_string_t, int, - const char *)); -extern int dyn_string_insert_char PARAMS ((dyn_string_t, int, int)); -extern int dyn_string_append PARAMS ((dyn_string_t, dyn_string_t)); -extern int dyn_string_append_cstr PARAMS ((dyn_string_t, const char *)); -extern int dyn_string_append_char PARAMS ((dyn_string_t, int)); -extern int dyn_string_substring PARAMS ((dyn_string_t, - dyn_string_t, int, int)); -extern int dyn_string_eq PARAMS ((dyn_string_t, dyn_string_t)); diff --git a/contrib/gcc/include/fibheap.h b/contrib/gcc/include/fibheap.h deleted file mode 100644 index d109e4a..0000000 --- a/contrib/gcc/include/fibheap.h +++ /dev/null @@ -1,81 +0,0 @@ -/* A Fibonacci heap datatype. - Copyright 1998, 1999, 2000, 2001 Free Software Foundation, Inc. - Contributed by Daniel Berlin (dan@cgsoftware.com). - -This file is part of GCC. - -GCC 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. - -GCC 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 GCC; see the file COPYING. If not, write to -the Free Software Foundation, 59 Temple Place - Suite 330, -Boston, MA 02111-1307, USA. */ - -/* Fibonacci heaps are somewhat complex, but, there's an article in - DDJ that explains them pretty well: - - http://www.ddj.com/articles/1997/9701/9701o/9701o.htm?topic=algoritms - - Introduction to algorithms by Corman and Rivest also goes over them. - - The original paper that introduced them is "Fibonacci heaps and their - uses in improved network optimization algorithms" by Tarjan and - Fredman (JACM 34(3), July 1987). - - Amortized and real worst case time for operations: - - ExtractMin: O(lg n) amortized. O(n) worst case. - DecreaseKey: O(1) amortized. O(lg n) worst case. - Insert: O(2) amortized. O(1) actual. - Union: O(1) amortized. O(1) actual. */ - -#ifndef _FIBHEAP_H_ -#define _FIBHEAP_H_ - -#include - -typedef long fibheapkey_t; - -typedef struct fibheap -{ - size_t nodes; - struct fibnode *min; - struct fibnode *root; -} *fibheap_t; - -typedef struct fibnode -{ - struct fibnode *parent; - struct fibnode *child; - struct fibnode *left; - struct fibnode *right; - fibheapkey_t key; - void *data; - unsigned int degree : 31; - unsigned int mark : 1; -} *fibnode_t; - -extern fibheap_t fibheap_new PARAMS ((void)); -extern fibnode_t fibheap_insert PARAMS ((fibheap_t, fibheapkey_t, void *)); -extern int fibheap_empty PARAMS ((fibheap_t)); -extern fibheapkey_t fibheap_min_key PARAMS ((fibheap_t)); -extern fibheapkey_t fibheap_replace_key PARAMS ((fibheap_t, fibnode_t, - fibheapkey_t)); -extern void *fibheap_replace_key_data PARAMS ((fibheap_t, fibnode_t, - fibheapkey_t, void *)); -extern void *fibheap_extract_min PARAMS ((fibheap_t)); -extern void *fibheap_min PARAMS ((fibheap_t)); -extern void *fibheap_replace_data PARAMS ((fibheap_t, fibnode_t, void *)); -extern void *fibheap_delete_node PARAMS ((fibheap_t, fibnode_t)); -extern void fibheap_delete PARAMS ((fibheap_t)); -extern fibheap_t fibheap_union PARAMS ((fibheap_t, fibheap_t)); - -#endif /* _FIBHEAP_H_ */ diff --git a/contrib/gcc/include/floatformat.h b/contrib/gcc/include/floatformat.h deleted file mode 100644 index 0cd09be..0000000 --- a/contrib/gcc/include/floatformat.h +++ /dev/null @@ -1,122 +0,0 @@ -/* IEEE floating point support declarations, for GDB, the GNU Debugger. - Copyright 1991, 1994, 1995, 1997, 2000 Free Software Foundation, Inc. - -This file is part of GDB. - -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. */ - -#if !defined (FLOATFORMAT_H) -#define FLOATFORMAT_H 1 - -#include "ansidecl.h" - -/* A floatformat consists of a sign bit, an exponent and a mantissa. Once the - bytes are concatenated according to the byteorder flag, then each of those - fields is contiguous. We number the bits with 0 being the most significant - (i.e. BITS_BIG_ENDIAN type numbering), and specify which bits each field - contains with the *_start and *_len fields. */ - -/* What is the order of the bytes. */ - -enum floatformat_byteorders { - - /* Standard little endian byte order. - EX: 1.2345678e10 => 00 00 80 c5 e0 fe 06 42 */ - - floatformat_little, - - /* Standard big endian byte order. - EX: 1.2345678e10 => 42 06 fe e0 c5 80 00 00 */ - - floatformat_big, - - /* Little endian byte order but big endian word order. - EX: 1.2345678e10 => e0 fe 06 42 00 00 80 c5 */ - - floatformat_littlebyte_bigword - -}; - -enum floatformat_intbit { floatformat_intbit_yes, floatformat_intbit_no }; - -struct floatformat -{ - enum floatformat_byteorders byteorder; - unsigned int totalsize; /* Total size of number in bits */ - - /* Sign bit is always one bit long. 1 means negative, 0 means positive. */ - unsigned int sign_start; - - unsigned int exp_start; - unsigned int exp_len; - /* Amount added to "true" exponent. 0x3fff for many IEEE extendeds. */ - unsigned int exp_bias; - /* Exponent value which indicates NaN. This is the actual value stored in - the float, not adjusted by the exp_bias. This usually consists of all - one bits. */ - unsigned int exp_nan; - - unsigned int man_start; - unsigned int man_len; - - /* Is the integer bit explicit or implicit? */ - enum floatformat_intbit intbit; - - /* Internal name for debugging. */ - const char *name; -}; - -/* floatformats for IEEE single and double, big and little endian. */ - -extern const struct floatformat floatformat_ieee_single_big; -extern const struct floatformat floatformat_ieee_single_little; -extern const struct floatformat floatformat_ieee_double_big; -extern const struct floatformat floatformat_ieee_double_little; - -/* floatformat for ARM IEEE double, little endian bytes and big endian words */ - -extern const struct floatformat floatformat_ieee_double_littlebyte_bigword; - -/* floatformats for various extendeds. */ - -extern const struct floatformat floatformat_i387_ext; -extern const struct floatformat floatformat_m68881_ext; -extern const struct floatformat floatformat_i960_ext; -extern const struct floatformat floatformat_m88110_ext; -extern const struct floatformat floatformat_m88110_harris_ext; -extern const struct floatformat floatformat_arm_ext; /* deprecated. */ -extern const struct floatformat floatformat_arm_ext_big; -extern const struct floatformat floatformat_arm_ext_littlebyte_bigword; -/* IA-64 Floating Point register spilt into memory. */ -extern const struct floatformat floatformat_ia64_spill_big; -extern const struct floatformat floatformat_ia64_spill_little; -extern const struct floatformat floatformat_ia64_quad_big; -extern const struct floatformat floatformat_ia64_quad_little; - -/* Convert from FMT to a double. - FROM is the address of the extended float. - Store the double in *TO. */ - -extern void -floatformat_to_double PARAMS ((const struct floatformat *, char *, double *)); - -/* The converse: convert the double *FROM to FMT - and store where TO points. */ - -extern void -floatformat_from_double PARAMS ((const struct floatformat *, - double *, char *)); - -#endif /* defined (FLOATFORMAT_H) */ diff --git a/contrib/gcc/include/fnmatch.h b/contrib/gcc/include/fnmatch.h deleted file mode 100644 index 37d23ee..0000000 --- a/contrib/gcc/include/fnmatch.h +++ /dev/null @@ -1,70 +0,0 @@ -/* Copyright 1991, 1992, 1993, 1996 Free Software Foundation, Inc. - -NOTE: The canonical source of this file is maintained with the GNU C Library. -Bugs can be reported to bug-glibc@prep.ai.mit.edu. - -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, 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, 59 Temple Place - Suite 330, -Boston, MA 02111-1307, USA. */ - -#ifndef _FNMATCH_H - -#define _FNMATCH_H 1 - -#ifdef __cplusplus -extern "C" { -#endif - -#if defined (__cplusplus) || (defined (__STDC__) && __STDC__) -#undef __P -#define __P(args) args -#else /* Not C++ or ANSI C. */ -#undef __P -#define __P(args) () -/* We can get away without defining `const' here only because in this file - it is used only inside the prototype for `fnmatch', which is elided in - non-ANSI C where `const' is problematical. */ -#endif /* C++ or ANSI C. */ - - -/* We #undef these before defining them because some losing systems - (HP-UX A.08.07 for example) define these in . */ -#undef FNM_PATHNAME -#undef FNM_NOESCAPE -#undef FNM_PERIOD - -/* Bits set in the FLAGS argument to `fnmatch'. */ -#define FNM_PATHNAME (1 << 0) /* No wildcard can ever match `/'. */ -#define FNM_NOESCAPE (1 << 1) /* Backslashes don't quote special chars. */ -#define FNM_PERIOD (1 << 2) /* Leading `.' is matched only explicitly. */ - -#if !defined (_POSIX_C_SOURCE) || _POSIX_C_SOURCE < 2 || defined (_GNU_SOURCE) -#define FNM_FILE_NAME FNM_PATHNAME /* Preferred GNU name. */ -#define FNM_LEADING_DIR (1 << 3) /* Ignore `/...' after a match. */ -#define FNM_CASEFOLD (1 << 4) /* Compare without regard to case. */ -#endif - -/* Value returned by `fnmatch' if STRING does not match PATTERN. */ -#define FNM_NOMATCH 1 - -/* Match STRING against the filename pattern PATTERN, - returning zero if it matches, FNM_NOMATCH if not. */ -extern int fnmatch __P ((const char *__pattern, const char *__string, - int __flags)); - -#ifdef __cplusplus -} -#endif - -#endif /* fnmatch.h */ diff --git a/contrib/gcc/include/getopt.h b/contrib/gcc/include/getopt.h deleted file mode 100644 index 04346dd..0000000 --- a/contrib/gcc/include/getopt.h +++ /dev/null @@ -1,141 +0,0 @@ -/* Declarations for getopt. - Copyright 1989, 1990, 1991, 1992, 1993, 1994, 1996, 1997, 1998, 2000 - Free Software Foundation, Inc. - - NOTE: The canonical source of this file is maintained with the GNU C Library. - Bugs can be reported to bug-glibc@gnu.org. - - 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, 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. */ - -#ifndef _GETOPT_H -#define _GETOPT_H 1 - -#ifdef __cplusplus -extern "C" { -#endif - -/* For communication from `getopt' to the caller. - When `getopt' finds an option that takes an argument, - the argument value is returned here. - Also, when `ordering' is RETURN_IN_ORDER, - each non-option ARGV-element is returned here. */ - -extern char *optarg; - -/* Index in ARGV of the next element to be scanned. - This is used for communication to and from the caller - and for communication between successive calls to `getopt'. - - On entry to `getopt', zero means this is the first call; initialize. - - When `getopt' returns -1, this is the index of the first of the - non-option elements that the caller should itself scan. - - Otherwise, `optind' communicates from one call to the next - how much of ARGV has been scanned so far. */ - -extern int optind; - -/* Callers store zero here to inhibit the error message `getopt' prints - for unrecognized options. */ - -extern int opterr; - -/* Set to an option character which was unrecognized. */ - -extern int optopt; - -/* Describe the long-named options requested by the application. - The LONG_OPTIONS argument to getopt_long or getopt_long_only is a vector - of `struct option' terminated by an element containing a name which is - zero. - - The field `has_arg' is: - no_argument (or 0) if the option does not take an argument, - required_argument (or 1) if the option requires an argument, - optional_argument (or 2) if the option takes an optional argument. - - If the field `flag' is not NULL, it points to a variable that is set - to the value given in the field `val' when the option is found, but - left unchanged if the option is not found. - - To have a long-named option do something other than set an `int' to - a compiled-in constant, such as set a value from `optarg', set the - option's `flag' field to zero and its `val' field to a nonzero - value (the equivalent single-letter option character, if there is - one). For long options that have a zero `flag' field, `getopt' - returns the contents of the `val' field. */ - -struct option -{ -#if defined (__STDC__) && __STDC__ - const char *name; -#else - char *name; -#endif - /* has_arg can't be an enum because some compilers complain about - type mismatches in all the code that assumes it is an int. */ - int has_arg; - int *flag; - int val; -}; - -/* Names for the values of the `has_arg' field of `struct option'. */ - -#define no_argument 0 -#define required_argument 1 -#define optional_argument 2 - -#if defined (__STDC__) && __STDC__ -/* HAVE_DECL_* is a three-state macro: undefined, 0 or 1. If it is - undefined, we haven't run the autoconf check so provide the - declaration without arguments. If it is 0, we checked and failed - to find the declaration so provide a fully prototyped one. If it - is 1, we found it so don't provide any declaration at all. */ -#if defined (__GNU_LIBRARY__) || (defined (HAVE_DECL_GETOPT) && !HAVE_DECL_GETOPT) -/* Many other libraries have conflicting prototypes for getopt, with - differences in the consts, in stdlib.h. To avoid compilation - errors, only prototype getopt for the GNU C library. */ -extern int getopt (int argc, char *const *argv, const char *shortopts); -#else /* not __GNU_LIBRARY__ */ -# if !defined (HAVE_DECL_GETOPT) && !defined (__cplusplus) -extern int getopt (); -# endif -#endif /* __GNU_LIBRARY__ */ -extern int getopt_long (int argc, char *const *argv, const char *shortopts, - const struct option *longopts, int *longind); -extern int getopt_long_only (int argc, char *const *argv, - const char *shortopts, - const struct option *longopts, int *longind); - -/* Internal only. Users should not call this directly. */ -extern int _getopt_internal (int argc, char *const *argv, - const char *shortopts, - const struct option *longopts, int *longind, - int long_only); -#else /* not __STDC__ */ -extern int getopt (); -extern int getopt_long (); -extern int getopt_long_only (); - -extern int _getopt_internal (); -#endif /* __STDC__ */ - -#ifdef __cplusplus -} -#endif - -#endif /* getopt.h */ diff --git a/contrib/gcc/include/hashtab.h b/contrib/gcc/include/hashtab.h deleted file mode 100644 index 8871710..0000000 --- a/contrib/gcc/include/hashtab.h +++ /dev/null @@ -1,155 +0,0 @@ -/* An expandable hash tables datatype. - Copyright (C) 1999, 2000 Free Software Foundation, Inc. - Contributed by Vladimir Makarov (vmakarov@cygnus.com). - -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. */ - -/* This package implements basic hash table functionality. It is possible - to search for an entry, create an entry and destroy an entry. - - Elements in the table are generic pointers. - - The size of the table is not fixed; if the occupancy of the table - grows too high the hash table will be expanded. - - The abstract data implementation is based on generalized Algorithm D - from Knuth's book "The art of computer programming". Hash table is - expanded by creation of new hash table and transferring elements from - the old table to the new table. */ - -#ifndef __HASHTAB_H__ -#define __HASHTAB_H__ - -#ifdef __cplusplus -extern "C" { -#endif /* __cplusplus */ - -#include - -/* The type for a hash code. */ -typedef unsigned int hashval_t; - -/* Callback function pointer types. */ - -/* Calculate hash of a table entry. */ -typedef hashval_t (*htab_hash) PARAMS ((const void *)); - -/* Compare a table entry with a possible entry. The entry already in - the table always comes first, so the second element can be of a - different type (but in this case htab_find and htab_find_slot - cannot be used; instead the variants that accept a hash value - must be used). */ -typedef int (*htab_eq) PARAMS ((const void *, const void *)); - -/* Cleanup function called whenever a live element is removed from - the hash table. */ -typedef void (*htab_del) PARAMS ((void *)); - -/* Function called by htab_traverse for each live element. The first - arg is the slot of the element (which can be passed to htab_clear_slot - if desired), the second arg is the auxiliary pointer handed to - htab_traverse. Return 1 to continue scan, 0 to stop. */ -typedef int (*htab_trav) PARAMS ((void **, void *)); - -/* Hash tables are of the following type. The structure - (implementation) of this type is not needed for using the hash - tables. All work with hash table should be executed only through - functions mentioned below. */ - -struct htab -{ - /* Pointer to hash function. */ - htab_hash hash_f; - - /* Pointer to comparison function. */ - htab_eq eq_f; - - /* Pointer to cleanup function. */ - htab_del del_f; - - /* Table itself. */ - PTR *entries; - - /* Current size (in entries) of the hash table */ - size_t size; - - /* Current number of elements including also deleted elements */ - size_t n_elements; - - /* Current number of deleted elements in the table */ - size_t n_deleted; - - /* The following member is used for debugging. Its value is number - of all calls of `htab_find_slot' for the hash table. */ - unsigned int searches; - - /* The following member is used for debugging. Its value is number - of collisions fixed for time of work with the hash table. */ - unsigned int collisions; - - /* This is non-zero if we are allowed to return NULL for function calls - that allocate memory. */ - int return_allocation_failure; -}; - -typedef struct htab *htab_t; - -/* An enum saying whether we insert into the hash table or not. */ -enum insert_option {NO_INSERT, INSERT}; - -/* The prototypes of the package functions. */ - -extern htab_t htab_create PARAMS ((size_t, htab_hash, - htab_eq, htab_del)); - -/* This function is like htab_create, but may return NULL if memory - allocation fails, and also signals that htab_find_slot_with_hash and - htab_find_slot are allowed to return NULL when inserting. */ -extern htab_t htab_try_create PARAMS ((size_t, htab_hash, - htab_eq, htab_del)); -extern void htab_delete PARAMS ((htab_t)); -extern void htab_empty PARAMS ((htab_t)); - -extern PTR htab_find PARAMS ((htab_t, const void *)); -extern PTR *htab_find_slot PARAMS ((htab_t, const void *, - enum insert_option)); -extern PTR htab_find_with_hash PARAMS ((htab_t, const void *, - hashval_t)); -extern PTR *htab_find_slot_with_hash PARAMS ((htab_t, const void *, - hashval_t, - enum insert_option)); -extern void htab_clear_slot PARAMS ((htab_t, void **)); -extern void htab_remove_elt PARAMS ((htab_t, void *)); - -extern void htab_traverse PARAMS ((htab_t, htab_trav, void *)); - -extern size_t htab_size PARAMS ((htab_t)); -extern size_t htab_elements PARAMS ((htab_t)); -extern double htab_collisions PARAMS ((htab_t)); - -/* A hash function for pointers. */ -extern htab_hash htab_hash_pointer; - -/* An equality function for pointers. */ -extern htab_eq htab_eq_pointer; - -/* A hash function for null-terminated strings. */ -extern hashval_t htab_hash_string PARAMS ((const PTR)); - -#ifdef __cplusplus -} -#endif /* __cplusplus */ - -#endif /* __HASHTAB_H */ diff --git a/contrib/gcc/include/libiberty.h b/contrib/gcc/include/libiberty.h deleted file mode 100644 index 3e0ca09..0000000 --- a/contrib/gcc/include/libiberty.h +++ /dev/null @@ -1,317 +0,0 @@ -/* Function declarations for libiberty. - - Copyright 2001, 2002 Free Software Foundation, Inc. - - Note - certain prototypes declared in this header file are for - functions whoes implementation copyright does not belong to the - FSF. Those prototypes are present in this file for reference - purposes only and their presence in this file should not construed - as an indication of ownership by the FSF of the implementation of - those functions in any way or form whatsoever. - - 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, 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. - - Written by Cygnus Support, 1994. - - The libiberty library provides a number of functions which are - missing on some operating systems. We do not declare those here, - to avoid conflicts with the system header files on operating - systems that do support those functions. In this file we only - declare those functions which are specific to libiberty. */ - -#ifndef LIBIBERTY_H -#define LIBIBERTY_H - -#ifdef __cplusplus -extern "C" { -#endif - -#include "ansidecl.h" - -#ifdef ANSI_PROTOTYPES -/* Get a definition for size_t. */ -#include -/* Get a definition for va_list. */ -#include -#endif - -/* Build an argument vector from a string. Allocates memory using - malloc. Use freeargv to free the vector. */ - -extern char **buildargv PARAMS ((const char *)) ATTRIBUTE_MALLOC; - -/* Free a vector returned by buildargv. */ - -extern void freeargv PARAMS ((char **)); - -/* Duplicate an argument vector. Allocates memory using malloc. Use - freeargv to free the vector. */ - -extern char **dupargv PARAMS ((char **)) ATTRIBUTE_MALLOC; - - -/* Return the last component of a path name. Note that we can't use a - prototype here because the parameter is declared inconsistently - across different systems, sometimes as "char *" and sometimes as - "const char *" */ - -/* HAVE_DECL_* is a three-state macro: undefined, 0 or 1. If it is - undefined, we haven't run the autoconf check so provide the - declaration without arguments. If it is 0, we checked and failed - to find the declaration so provide a fully prototyped one. If it - is 1, we found it so don't provide any declaration at all. */ -#if defined (__GNU_LIBRARY__ ) || defined (__linux__) || defined (__FreeBSD__) || defined (__OpenBSD__) || defined (__CYGWIN__) || defined (__CYGWIN32__) || (defined (HAVE_DECL_BASENAME) && !HAVE_DECL_BASENAME) -extern char *basename PARAMS ((const char *)); -#else -# if !defined (HAVE_DECL_BASENAME) -extern char *basename (); -# endif -#endif - -/* A well-defined basename () that is always compiled in. */ - -extern const char *lbasename PARAMS ((const char *)); - -/* Concatenate an arbitrary number of strings. You must pass NULL as - the last argument of this function, to terminate the list of - strings. Allocates memory using xmalloc. */ - -extern char *concat PARAMS ((const char *, ...)) ATTRIBUTE_MALLOC; - -/* Concatenate an arbitrary number of strings. You must pass NULL as - the last argument of this function, to terminate the list of - strings. Allocates memory using xmalloc. The first argument is - not one of the strings to be concatenated, but if not NULL is a - pointer to be freed after the new string is created, similar to the - way xrealloc works. */ - -extern char *reconcat PARAMS ((char *, const char *, ...)) ATTRIBUTE_MALLOC; - -/* Determine the length of concatenating an arbitrary number of - strings. You must pass NULL as the last argument of this function, - to terminate the list of strings. */ - -extern unsigned long concat_length PARAMS ((const char *, ...)); - -/* Concatenate an arbitrary number of strings into a SUPPLIED area of - memory. You must pass NULL as the last argument of this function, - to terminate the list of strings. The supplied memory is assumed - to be large enough. */ - -extern char *concat_copy PARAMS ((char *, const char *, ...)); - -/* Concatenate an arbitrary number of strings into a GLOBAL area of - memory. You must pass NULL as the last argument of this function, - to terminate the list of strings. The supplied memory is assumed - to be large enough. */ - -extern char *concat_copy2 PARAMS ((const char *, ...)); - -/* This is the global area used by concat_copy2. */ - -extern char *libiberty_concat_ptr; - -/* Concatenate an arbitrary number of strings. You must pass NULL as - the last argument of this function, to terminate the list of - strings. Allocates memory using alloca. The arguments are - evaluated twice! */ -#define ACONCAT(ACONCAT_PARAMS) \ - (libiberty_concat_ptr = alloca (concat_length ACONCAT_PARAMS + 1), \ - concat_copy2 ACONCAT_PARAMS) - -/* Check whether two file descriptors refer to the same file. */ - -extern int fdmatch PARAMS ((int fd1, int fd2)); - -/* Get the working directory. The result is cached, so don't call - chdir() between calls to getpwd(). */ - -extern char * getpwd PARAMS ((void)); - -/* Get the amount of time the process has run, in microseconds. */ - -extern long get_run_time PARAMS ((void)); - -/* Choose a temporary directory to use for scratch files. */ - -extern char *choose_temp_base PARAMS ((void)) ATTRIBUTE_MALLOC; - -/* Return a temporary file name or NULL if unable to create one. */ - -extern char *make_temp_file PARAMS ((const char *)) ATTRIBUTE_MALLOC; - -/* Allocate memory filled with spaces. Allocates using malloc. */ - -extern const char *spaces PARAMS ((int count)); - -/* Return the maximum error number for which strerror will return a - string. */ - -extern int errno_max PARAMS ((void)); - -/* Return the name of an errno value (e.g., strerrno (EINVAL) returns - "EINVAL"). */ - -extern const char *strerrno PARAMS ((int)); - -/* Given the name of an errno value, return the value. */ - -extern int strtoerrno PARAMS ((const char *)); - -/* ANSI's strerror(), but more robust. */ - -extern char *xstrerror PARAMS ((int)); - -/* Return the maximum signal number for which strsignal will return a - string. */ - -extern int signo_max PARAMS ((void)); - -/* Return a signal message string for a signal number - (e.g., strsignal (SIGHUP) returns something like "Hangup"). */ -/* This is commented out as it can conflict with one in system headers. - We still document its existence though. */ - -/*extern const char *strsignal PARAMS ((int));*/ - -/* Return the name of a signal number (e.g., strsigno (SIGHUP) returns - "SIGHUP"). */ - -extern const char *strsigno PARAMS ((int)); - -/* Given the name of a signal, return its number. */ - -extern int strtosigno PARAMS ((const char *)); - -/* Register a function to be run by xexit. Returns 0 on success. */ - -extern int xatexit PARAMS ((void (*fn) (void))); - -/* Exit, calling all the functions registered with xatexit. */ - -extern void xexit PARAMS ((int status)) ATTRIBUTE_NORETURN; - -/* Set the program name used by xmalloc. */ - -extern void xmalloc_set_program_name PARAMS ((const char *)); - -/* Report an allocation failure. */ -extern void xmalloc_failed PARAMS ((size_t)) ATTRIBUTE_NORETURN; - -/* Allocate memory without fail. If malloc fails, this will print a - message to stderr (using the name set by xmalloc_set_program_name, - if any) and then call xexit. */ - -extern PTR xmalloc PARAMS ((size_t)) ATTRIBUTE_MALLOC; - -/* Reallocate memory without fail. This works like xmalloc. Note, - realloc type functions are not suitable for attribute malloc since - they may return the same address across multiple calls. */ - -extern PTR xrealloc PARAMS ((PTR, size_t)); - -/* Allocate memory without fail and set it to zero. This works like - xmalloc. */ - -extern PTR xcalloc PARAMS ((size_t, size_t)) ATTRIBUTE_MALLOC; - -/* Copy a string into a memory buffer without fail. */ - -extern char *xstrdup PARAMS ((const char *)) ATTRIBUTE_MALLOC; - -/* Copy an existing memory buffer to a new memory buffer without fail. */ - -extern PTR xmemdup PARAMS ((const PTR, size_t, size_t)) ATTRIBUTE_MALLOC; - -/* hex character manipulation routines */ - -#define _hex_array_size 256 -#define _hex_bad 99 -extern const char _hex_value[_hex_array_size]; -extern void hex_init PARAMS ((void)); -#define hex_p(c) (hex_value (c) != _hex_bad) -/* If you change this, note well: Some code relies on side effects in - the argument being performed exactly once. */ -#define hex_value(c) (_hex_value[(unsigned char) (c)]) - -/* Definitions used by the pexecute routine. */ - -#define PEXECUTE_FIRST 1 -#define PEXECUTE_LAST 2 -#define PEXECUTE_ONE (PEXECUTE_FIRST + PEXECUTE_LAST) -#define PEXECUTE_SEARCH 4 -#define PEXECUTE_VERBOSE 8 - -/* Execute a program. */ - -extern int pexecute PARAMS ((const char *, char * const *, const char *, - const char *, char **, char **, int)); - -/* Wait for pexecute to finish. */ - -extern int pwait PARAMS ((int, int *, int)); - -/* Like sprintf but provides a pointer to malloc'd storage, which must - be freed by the caller. */ - -extern int asprintf PARAMS ((char **, const char *, ...)) ATTRIBUTE_PRINTF_2; - -/* Like vsprintf but provides a pointer to malloc'd storage, which - must be freed by the caller. */ - -extern int vasprintf PARAMS ((char **, const char *, va_list)) - ATTRIBUTE_PRINTF(2,0); - -#define ARRAY_SIZE(a) (sizeof (a) / sizeof ((a)[0])) - -/* Drastically simplified alloca configurator. If we're using GCC, - we use __builtin_alloca; otherwise we use the C alloca. The C - alloca is always available. You can override GCC by defining - USE_C_ALLOCA yourself. The canonical autoconf macro C_ALLOCA is - also set/unset as it is often used to indicate whether code needs - to call alloca(0). */ -extern PTR C_alloca PARAMS ((size_t)) ATTRIBUTE_MALLOC; -#undef alloca -#if GCC_VERSION >= 2000 && !defined USE_C_ALLOCA -# define alloca(x) __builtin_alloca(x) -# undef C_ALLOCA -# define ASTRDUP(X) \ - (__extension__ ({ const char *const libiberty_optr = (X); \ - const unsigned long libiberty_len = strlen (libiberty_optr) + 1; \ - char *const libiberty_nptr = alloca (libiberty_len); \ - (char *) memcpy (libiberty_nptr, libiberty_optr, libiberty_len); })) -#else -# define alloca(x) C_alloca(x) -# undef USE_C_ALLOCA -# define USE_C_ALLOCA 1 -# undef C_ALLOCA -# define C_ALLOCA 1 -extern const char *libiberty_optr; -extern char *libiberty_nptr; -extern unsigned long libiberty_len; -# define ASTRDUP(X) \ - (libiberty_optr = (X), \ - libiberty_len = strlen (libiberty_optr) + 1, \ - libiberty_nptr = alloca (libiberty_len), \ - (char *) memcpy (libiberty_nptr, libiberty_optr, libiberty_len)) -#endif - -#ifdef __cplusplus -} -#endif - - -#endif /* ! defined (LIBIBERTY_H) */ diff --git a/contrib/gcc/include/md5.h b/contrib/gcc/include/md5.h deleted file mode 100644 index ad51f19..0000000 --- a/contrib/gcc/include/md5.h +++ /dev/null @@ -1,142 +0,0 @@ -/* md5.h - Declaration of functions and data types used for MD5 sum - computing library functions. - Copyright 1995, 1996, 2000 Free Software Foundation, Inc. - NOTE: The canonical source of this file is maintained with the GNU C - Library. Bugs can be reported to bug-glibc@prep.ai.mit.edu. - - 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, 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. */ - -#ifndef _MD5_H -#define _MD5_H 1 - -#include - -#if defined HAVE_LIMITS_H || _LIBC -# include -#endif - -/* The following contortions are an attempt to use the C preprocessor - to determine an unsigned integral type that is 32 bits wide. An - alternative approach is to use autoconf's AC_CHECK_SIZEOF macro, but - doing that would require that the configure script compile and *run* - the resulting executable. Locally running cross-compiled executables - is usually not possible. */ - -#ifdef _LIBC -# include -typedef u_int32_t md5_uint32; -#else -# define INT_MAX_32_BITS 2147483647 - -/* If UINT_MAX isn't defined, assume it's a 32-bit type. - This should be valid for all systems GNU cares about because - that doesn't include 16-bit systems, and only modern systems - (that certainly have ) have 64+-bit integral types. */ - -# ifndef INT_MAX -# define INT_MAX INT_MAX_32_BITS -# endif - -# if INT_MAX == INT_MAX_32_BITS - typedef unsigned int md5_uint32; -# else -# if SHRT_MAX == INT_MAX_32_BITS - typedef unsigned short md5_uint32; -# else -# if LONG_MAX == INT_MAX_32_BITS - typedef unsigned long md5_uint32; -# else - /* The following line is intended to evoke an error. - Using #error is not portable enough. */ - "Cannot determine unsigned 32-bit data type." -# endif -# endif -# endif -#endif - -#undef __P -#if defined (__STDC__) && __STDC__ -#define __P(x) x -#else -#define __P(x) () -#endif - -/* Structure to save state of computation between the single steps. */ -struct md5_ctx -{ - md5_uint32 A; - md5_uint32 B; - md5_uint32 C; - md5_uint32 D; - - md5_uint32 total[2]; - md5_uint32 buflen; - char buffer[128]; -}; - -/* - * The following three functions are build up the low level used in - * the functions `md5_stream' and `md5_buffer'. - */ - -/* Initialize structure containing state of computation. - (RFC 1321, 3.3: Step 3) */ -extern void md5_init_ctx __P ((struct md5_ctx *ctx)); - -/* Starting with the result of former calls of this function (or the - initialization function update the context for the next LEN bytes - starting at BUFFER. - It is necessary that LEN is a multiple of 64!!! */ -extern void md5_process_block __P ((const void *buffer, size_t len, - struct md5_ctx *ctx)); - -/* Starting with the result of former calls of this function (or the - initialization function update the context for the next LEN bytes - starting at BUFFER. - It is NOT required that LEN is a multiple of 64. */ -extern void md5_process_bytes __P ((const void *buffer, size_t len, - struct md5_ctx *ctx)); - -/* Process the remaining bytes in the buffer and put result from CTX - in first 16 bytes following RESBUF. The result is always in little - endian byte order, so that a byte-wise output yields to the wanted - ASCII representation of the message digest. - - IMPORTANT: On some systems it is required that RESBUF is correctly - aligned for a 32 bits value. */ -extern void *md5_finish_ctx __P ((struct md5_ctx *ctx, void *resbuf)); - - -/* Put result from CTX in first 16 bytes following RESBUF. The result is - always in little endian byte order, so that a byte-wise output yields - to the wanted ASCII representation of the message digest. - - IMPORTANT: On some systems it is required that RESBUF is correctly - aligned for a 32 bits value. */ -extern void *md5_read_ctx __P ((const struct md5_ctx *ctx, void *resbuf)); - - -/* Compute MD5 message digest for bytes read from STREAM. The - resulting message digest number will be written into the 16 bytes - beginning at RESBLOCK. */ -extern int md5_stream __P ((FILE *stream, void *resblock)); - -/* Compute MD5 message digest for LEN bytes beginning at BUFFER. The - result is always in little endian byte order, so that a byte-wise - output yields to the wanted ASCII representation of the message - digest. */ -extern void *md5_buffer __P ((const char *buffer, size_t len, void *resblock)); - -#endif diff --git a/contrib/gcc/include/objalloc.h b/contrib/gcc/include/objalloc.h deleted file mode 100644 index c710647..0000000 --- a/contrib/gcc/include/objalloc.h +++ /dev/null @@ -1,115 +0,0 @@ -/* objalloc.h -- routines to allocate memory for objects - Copyright 1997, 2001 Free Software Foundation, Inc. - Written by Ian Lance Taylor, Cygnus Solutions. - -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, 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, 59 Temple Place - Suite 330, -Boston, MA 02111-1307, USA. */ - -#ifndef OBJALLOC_H -#define OBJALLOC_H - -#include "ansidecl.h" - -/* These routines allocate space for an object. The assumption is - that the object will want to allocate space as it goes along, but - will never want to free any particular block. There is a function - to free a block, which also frees all more recently allocated - blocks. There is also a function to free all the allocated space. - - This is essentially a specialization of obstacks. The main - difference is that a block may not be allocated a bit at a time. - Another difference is that these routines are always built on top - of malloc, and always pass an malloc failure back to the caller, - unlike more recent versions of obstacks. */ - -/* This is what an objalloc structure looks like. Callers should not - refer to these fields, nor should they allocate these structure - themselves. Instead, they should only create them via - objalloc_init, and only access them via the functions and macros - listed below. The structure is only defined here so that we can - access it via macros. */ - -struct objalloc -{ - char *current_ptr; - unsigned int current_space; - PTR chunks; -}; - -/* Work out the required alignment. */ - -struct objalloc_align { char x; double d; }; - -#if defined (__STDC__) && __STDC__ -#ifndef offsetof -#include -#endif -#endif -#ifndef offsetof -#define offsetof(TYPE, MEMBER) ((unsigned long) &((TYPE *)0)->MEMBER) -#endif -#define OBJALLOC_ALIGN offsetof (struct objalloc_align, d) - -/* Create an objalloc structure. Returns NULL if malloc fails. */ - -extern struct objalloc *objalloc_create PARAMS ((void)); - -/* Allocate space from an objalloc structure. Returns NULL if malloc - fails. */ - -extern PTR _objalloc_alloc PARAMS ((struct objalloc *, unsigned long)); - -/* The macro version of objalloc_alloc. We only define this if using - gcc, because otherwise we would have to evaluate the arguments - multiple times, or use a temporary field as obstack.h does. */ - -#if defined (__GNUC__) && defined (__STDC__) && __STDC__ - -/* NextStep 2.0 cc is really gcc 1.93 but it defines __GNUC__ = 2 and - does not implement __extension__. But that compiler doesn't define - __GNUC_MINOR__. */ -#if __GNUC__ < 2 || (__NeXT__ && !__GNUC_MINOR__) -#define __extension__ -#endif - -#define objalloc_alloc(o, l) \ - __extension__ \ - ({ struct objalloc *__o = (o); \ - unsigned long __len = (l); \ - if (__len == 0) \ - __len = 1; \ - __len = (__len + OBJALLOC_ALIGN - 1) &~ (OBJALLOC_ALIGN - 1); \ - (__len <= __o->current_space \ - ? (__o->current_ptr += __len, \ - __o->current_space -= __len, \ - (PTR) (__o->current_ptr - __len)) \ - : _objalloc_alloc (__o, __len)); }) - -#else /* ! __GNUC__ */ - -#define objalloc_alloc(o, l) _objalloc_alloc ((o), (l)) - -#endif /* ! __GNUC__ */ - -/* Free an entire objalloc structure. */ - -extern void objalloc_free PARAMS ((struct objalloc *)); - -/* Free a block allocated by objalloc_alloc. This also frees all more - recently allocated blocks. */ - -extern void objalloc_free_block PARAMS ((struct objalloc *, PTR)); - -#endif /* OBJALLOC_H */ diff --git a/contrib/gcc/include/obstack.h b/contrib/gcc/include/obstack.h deleted file mode 100644 index d86d9f2..0000000 --- a/contrib/gcc/include/obstack.h +++ /dev/null @@ -1,599 +0,0 @@ -/* obstack.h - object stack macros - Copyright 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1996, 1997, 1998, - 1999, 2000 - Free Software Foundation, Inc. - - - NOTE: The canonical source of this file is maintained with the GNU C Library. - Bugs can be reported to bug-glibc@gnu.org. - - 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, 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. */ - -/* Summary: - -All the apparent functions defined here are macros. The idea -is that you would use these pre-tested macros to solve a -very specific set of problems, and they would run fast. -Caution: no side-effects in arguments please!! They may be -evaluated MANY times!! - -These macros operate a stack of objects. Each object starts life -small, and may grow to maturity. (Consider building a word syllable -by syllable.) An object can move while it is growing. Once it has -been "finished" it never changes address again. So the "top of the -stack" is typically an immature growing object, while the rest of the -stack is of mature, fixed size and fixed address objects. - -These routines grab large chunks of memory, using a function you -supply, called `obstack_chunk_alloc'. On occasion, they free chunks, -by calling `obstack_chunk_free'. You must define them and declare -them before using any obstack macros. - -Each independent stack is represented by a `struct obstack'. -Each of the obstack macros expects a pointer to such a structure -as the first argument. - -One motivation for this package is the problem of growing char strings -in symbol tables. Unless you are "fascist pig with a read-only mind" ---Gosper's immortal quote from HAKMEM item 154, out of context--you -would not like to put any arbitrary upper limit on the length of your -symbols. - -In practice this often means you will build many short symbols and a -few long symbols. At the time you are reading a symbol you don't know -how long it is. One traditional method is to read a symbol into a -buffer, realloc()ating the buffer every time you try to read a symbol -that is longer than the buffer. This is beaut, but you still will -want to copy the symbol from the buffer to a more permanent -symbol-table entry say about half the time. - -With obstacks, you can work differently. Use one obstack for all symbol -names. As you read a symbol, grow the name in the obstack gradually. -When the name is complete, finalize it. Then, if the symbol exists already, -free the newly read name. - -The way we do this is to take a large chunk, allocating memory from -low addresses. When you want to build a symbol in the chunk you just -add chars above the current "high water mark" in the chunk. When you -have finished adding chars, because you got to the end of the symbol, -you know how long the chars are, and you can create a new object. -Mostly the chars will not burst over the highest address of the chunk, -because you would typically expect a chunk to be (say) 100 times as -long as an average object. - -In case that isn't clear, when we have enough chars to make up -the object, THEY ARE ALREADY CONTIGUOUS IN THE CHUNK (guaranteed) -so we just point to it where it lies. No moving of chars is -needed and this is the second win: potentially long strings need -never be explicitly shuffled. Once an object is formed, it does not -change its address during its lifetime. - -When the chars burst over a chunk boundary, we allocate a larger -chunk, and then copy the partly formed object from the end of the old -chunk to the beginning of the new larger chunk. We then carry on -accreting characters to the end of the object as we normally would. - -A special macro is provided to add a single char at a time to a -growing object. This allows the use of register variables, which -break the ordinary 'growth' macro. - -Summary: - We allocate large chunks. - We carve out one object at a time from the current chunk. - Once carved, an object never moves. - We are free to append data of any size to the currently - growing object. - Exactly one object is growing in an obstack at any one time. - You can run one obstack per control block. - You may have as many control blocks as you dare. - Because of the way we do it, you can `unwind' an obstack - back to a previous state. (You may remove objects much - as you would with a stack.) -*/ - - -/* Don't do the contents of this file more than once. */ - -#ifndef _OBSTACK_H -#define _OBSTACK_H 1 - -#ifdef __cplusplus -extern "C" { -#endif - -/* We use subtraction of (char *) 0 instead of casting to int - because on word-addressable machines a simple cast to int - may ignore the byte-within-word field of the pointer. */ - -#ifndef __PTR_TO_INT -# define __PTR_TO_INT(P) ((P) - (char *) 0) -#endif - -#ifndef __INT_TO_PTR -# define __INT_TO_PTR(P) ((P) + (char *) 0) -#endif - -/* We need the type of the resulting object. If __PTRDIFF_TYPE__ is - defined, as with GNU C, use that; that way we don't pollute the - namespace with 's symbols. Otherwise, if is - available, include it and use ptrdiff_t. In traditional C, long is - the best that we can do. */ - -#ifdef __PTRDIFF_TYPE__ -# define PTR_INT_TYPE __PTRDIFF_TYPE__ -#else -# ifdef HAVE_STDDEF_H -# include -# define PTR_INT_TYPE ptrdiff_t -# else -# define PTR_INT_TYPE long -# endif -#endif - -#if defined _LIBC || defined HAVE_STRING_H -# include -# if defined __STDC__ && __STDC__ -# define _obstack_memcpy(To, From, N) memcpy ((To), (From), (N)) -# else -# define _obstack_memcpy(To, From, N) memcpy ((To), (char *)(From), (N)) -# endif -#else -# ifdef memcpy -# define _obstack_memcpy(To, From, N) memcpy ((To), (char *)(From), (N)) -# else -# define _obstack_memcpy(To, From, N) bcopy ((char *)(From), (To), (N)) -# endif -#endif - -struct _obstack_chunk /* Lives at front of each chunk. */ -{ - char *limit; /* 1 past end of this chunk */ - struct _obstack_chunk *prev; /* address of prior chunk or NULL */ - char contents[4]; /* objects begin here */ -}; - -struct obstack /* control current object in current chunk */ -{ - long chunk_size; /* preferred size to allocate chunks in */ - struct _obstack_chunk *chunk; /* address of current struct obstack_chunk */ - char *object_base; /* address of object we are building */ - char *next_free; /* where to add next char to current object */ - char *chunk_limit; /* address of char after current chunk */ - PTR_INT_TYPE temp; /* Temporary for some macros. */ - int alignment_mask; /* Mask of alignment for each object. */ -#if defined __STDC__ && __STDC__ - /* These prototypes vary based on `use_extra_arg', and we use - casts to the prototypeless function type in all assignments, - but having prototypes here quiets -Wstrict-prototypes. */ - struct _obstack_chunk *(*chunkfun) (void *, long); - void (*freefun) (void *, struct _obstack_chunk *); - void *extra_arg; /* first arg for chunk alloc/dealloc funcs */ -#else - struct _obstack_chunk *(*chunkfun) (); /* User's fcn to allocate a chunk. */ - void (*freefun) (); /* User's function to free a chunk. */ - char *extra_arg; /* first arg for chunk alloc/dealloc funcs */ -#endif - unsigned use_extra_arg:1; /* chunk alloc/dealloc funcs take extra arg */ - unsigned maybe_empty_object:1;/* There is a possibility that the current - chunk contains a zero-length object. This - prevents freeing the chunk if we allocate - a bigger chunk to replace it. */ - unsigned alloc_failed:1; /* No longer used, as we now call the failed - handler on error, but retained for binary - compatibility. */ -}; - -/* Declare the external functions we use; they are in obstack.c. */ - -#if defined __STDC__ && __STDC__ -extern void _obstack_newchunk (struct obstack *, int); -extern void _obstack_free (struct obstack *, void *); -extern int _obstack_begin (struct obstack *, int, int, - void *(*) (long), void (*) (void *)); -extern int _obstack_begin_1 (struct obstack *, int, int, - void *(*) (void *, long), - void (*) (void *, void *), void *); -extern int _obstack_memory_used (struct obstack *); -#else -extern void _obstack_newchunk (); -extern void _obstack_free (); -extern int _obstack_begin (); -extern int _obstack_begin_1 (); -extern int _obstack_memory_used (); -#endif - -#if defined __STDC__ && __STDC__ - -/* Do the function-declarations after the structs - but before defining the macros. */ - -void obstack_init (struct obstack *obstack); - -void * obstack_alloc (struct obstack *obstack, int size); - -void * obstack_copy (struct obstack *obstack, void *address, int size); -void * obstack_copy0 (struct obstack *obstack, void *address, int size); - -void obstack_free (struct obstack *obstack, void *block); - -void obstack_blank (struct obstack *obstack, int size); - -void obstack_grow (struct obstack *obstack, void *data, int size); -void obstack_grow0 (struct obstack *obstack, void *data, int size); - -void obstack_1grow (struct obstack *obstack, int data_char); -void obstack_ptr_grow (struct obstack *obstack, void *data); -void obstack_int_grow (struct obstack *obstack, int data); - -void * obstack_finish (struct obstack *obstack); - -int obstack_object_size (struct obstack *obstack); - -int obstack_room (struct obstack *obstack); -void obstack_make_room (struct obstack *obstack, int size); -void obstack_1grow_fast (struct obstack *obstack, int data_char); -void obstack_ptr_grow_fast (struct obstack *obstack, void *data); -void obstack_int_grow_fast (struct obstack *obstack, int data); -void obstack_blank_fast (struct obstack *obstack, int size); - -void * obstack_base (struct obstack *obstack); -void * obstack_next_free (struct obstack *obstack); -int obstack_alignment_mask (struct obstack *obstack); -int obstack_chunk_size (struct obstack *obstack); -int obstack_memory_used (struct obstack *obstack); - -#endif /* __STDC__ */ - -/* Non-ANSI C cannot really support alternative functions for these macros, - so we do not declare them. */ - -/* Error handler called when `obstack_chunk_alloc' failed to allocate - more memory. This can be set to a user defined function. The - default action is to print a message and abort. */ -#if defined __STDC__ && __STDC__ -extern void (*obstack_alloc_failed_handler) (void); -#else -extern void (*obstack_alloc_failed_handler) (); -#endif - -/* Exit value used when `print_and_abort' is used. */ -extern int obstack_exit_failure; - -/* Pointer to beginning of object being allocated or to be allocated next. - Note that this might not be the final address of the object - because a new chunk might be needed to hold the final size. */ - -#define obstack_base(h) ((h)->object_base) - -/* Size for allocating ordinary chunks. */ - -#define obstack_chunk_size(h) ((h)->chunk_size) - -/* Pointer to next byte not yet allocated in current chunk. */ - -#define obstack_next_free(h) ((h)->next_free) - -/* Mask specifying low bits that should be clear in address of an object. */ - -#define obstack_alignment_mask(h) ((h)->alignment_mask) - -/* To prevent prototype warnings provide complete argument list in - standard C version. */ -#if defined __STDC__ && __STDC__ - -# define obstack_init(h) \ - _obstack_begin ((h), 0, 0, \ - (void *(*) (long)) obstack_chunk_alloc, (void (*) (void *)) obstack_chunk_free) - -# define obstack_begin(h, size) \ - _obstack_begin ((h), (size), 0, \ - (void *(*) (long)) obstack_chunk_alloc, (void (*) (void *)) obstack_chunk_free) - -# define obstack_specify_allocation(h, size, alignment, chunkfun, freefun) \ - _obstack_begin ((h), (size), (alignment), \ - (void *(*) (long)) (chunkfun), (void (*) (void *)) (freefun)) - -# define obstack_specify_allocation_with_arg(h, size, alignment, chunkfun, freefun, arg) \ - _obstack_begin_1 ((h), (size), (alignment), \ - (void *(*) (void *, long)) (chunkfun), \ - (void (*) (void *, void *)) (freefun), (arg)) - -# define obstack_chunkfun(h, newchunkfun) \ - ((h) -> chunkfun = (struct _obstack_chunk *(*)(void *, long)) (newchunkfun)) - -# define obstack_freefun(h, newfreefun) \ - ((h) -> freefun = (void (*)(void *, struct _obstack_chunk *)) (newfreefun)) - -#else - -# define obstack_init(h) \ - _obstack_begin ((h), 0, 0, \ - (void *(*) ()) obstack_chunk_alloc, (void (*) ()) obstack_chunk_free) - -# define obstack_begin(h, size) \ - _obstack_begin ((h), (size), 0, \ - (void *(*) ()) obstack_chunk_alloc, (void (*) ()) obstack_chunk_free) - -# define obstack_specify_allocation(h, size, alignment, chunkfun, freefun) \ - _obstack_begin ((h), (size), (alignment), \ - (void *(*) ()) (chunkfun), (void (*) ()) (freefun)) - -# define obstack_specify_allocation_with_arg(h, size, alignment, chunkfun, freefun, arg) \ - _obstack_begin_1 ((h), (size), (alignment), \ - (void *(*) ()) (chunkfun), (void (*) ()) (freefun), (arg)) - -# define obstack_chunkfun(h, newchunkfun) \ - ((h) -> chunkfun = (struct _obstack_chunk *(*)()) (newchunkfun)) - -# define obstack_freefun(h, newfreefun) \ - ((h) -> freefun = (void (*)()) (newfreefun)) - -#endif - -#define obstack_1grow_fast(h,achar) (*((h)->next_free)++ = achar) - -#define obstack_blank_fast(h,n) ((h)->next_free += (n)) - -#define obstack_memory_used(h) _obstack_memory_used (h) - -#if defined __GNUC__ && defined __STDC__ && __STDC__ -/* NextStep 2.0 cc is really gcc 1.93 but it defines __GNUC__ = 2 and - does not implement __extension__. But that compiler doesn't define - __GNUC_MINOR__. */ -# if __GNUC__ < 2 || (__NeXT__ && !__GNUC_MINOR__) -# define __extension__ -# endif - -/* For GNU C, if not -traditional, - we can define these macros to compute all args only once - without using a global variable. - Also, we can avoid using the `temp' slot, to make faster code. */ - -# define obstack_object_size(OBSTACK) \ - __extension__ \ - ({ struct obstack *__o = (OBSTACK); \ - (unsigned) (__o->next_free - __o->object_base); }) - -# define obstack_room(OBSTACK) \ - __extension__ \ - ({ struct obstack *__o = (OBSTACK); \ - (unsigned) (__o->chunk_limit - __o->next_free); }) - -# define obstack_make_room(OBSTACK,length) \ -__extension__ \ -({ struct obstack *__o = (OBSTACK); \ - int __len = (length); \ - if (__o->chunk_limit - __o->next_free < __len) \ - _obstack_newchunk (__o, __len); \ - (void) 0; }) - -# define obstack_empty_p(OBSTACK) \ - __extension__ \ - ({ struct obstack *__o = (OBSTACK); \ - (__o->chunk->prev == 0 && __o->next_free - __o->chunk->contents == 0); }) - -# define obstack_grow(OBSTACK,where,length) \ -__extension__ \ -({ struct obstack *__o = (OBSTACK); \ - int __len = (length); \ - if (__o->next_free + __len > __o->chunk_limit) \ - _obstack_newchunk (__o, __len); \ - _obstack_memcpy (__o->next_free, (where), __len); \ - __o->next_free += __len; \ - (void) 0; }) - -# define obstack_grow0(OBSTACK,where,length) \ -__extension__ \ -({ struct obstack *__o = (OBSTACK); \ - int __len = (length); \ - if (__o->next_free + __len + 1 > __o->chunk_limit) \ - _obstack_newchunk (__o, __len + 1); \ - _obstack_memcpy (__o->next_free, (where), __len); \ - __o->next_free += __len; \ - *(__o->next_free)++ = 0; \ - (void) 0; }) - -# define obstack_1grow(OBSTACK,datum) \ -__extension__ \ -({ struct obstack *__o = (OBSTACK); \ - if (__o->next_free + 1 > __o->chunk_limit) \ - _obstack_newchunk (__o, 1); \ - *(__o->next_free)++ = (datum); \ - (void) 0; }) - -/* These assume that the obstack alignment is good enough for pointers or ints, - and that the data added so far to the current object - shares that much alignment. */ - -# define obstack_ptr_grow(OBSTACK,datum) \ -__extension__ \ -({ struct obstack *__o = (OBSTACK); \ - if (__o->next_free + sizeof (void *) > __o->chunk_limit) \ - _obstack_newchunk (__o, sizeof (void *)); \ - *((void **)__o->next_free)++ = ((void *)datum); \ - (void) 0; }) - -# define obstack_int_grow(OBSTACK,datum) \ -__extension__ \ -({ struct obstack *__o = (OBSTACK); \ - if (__o->next_free + sizeof (int) > __o->chunk_limit) \ - _obstack_newchunk (__o, sizeof (int)); \ - *((int *)__o->next_free)++ = ((int)datum); \ - (void) 0; }) - -# define obstack_ptr_grow_fast(h,aptr) (*((void **) (h)->next_free)++ = (void *)aptr) -# define obstack_int_grow_fast(h,aint) (*((int *) (h)->next_free)++ = (int) aint) - -# define obstack_blank(OBSTACK,length) \ -__extension__ \ -({ struct obstack *__o = (OBSTACK); \ - int __len = (length); \ - if (__o->chunk_limit - __o->next_free < __len) \ - _obstack_newchunk (__o, __len); \ - __o->next_free += __len; \ - (void) 0; }) - -# define obstack_alloc(OBSTACK,length) \ -__extension__ \ -({ struct obstack *__h = (OBSTACK); \ - obstack_blank (__h, (length)); \ - obstack_finish (__h); }) - -# define obstack_copy(OBSTACK,where,length) \ -__extension__ \ -({ struct obstack *__h = (OBSTACK); \ - obstack_grow (__h, (where), (length)); \ - obstack_finish (__h); }) - -# define obstack_copy0(OBSTACK,where,length) \ -__extension__ \ -({ struct obstack *__h = (OBSTACK); \ - obstack_grow0 (__h, (where), (length)); \ - obstack_finish (__h); }) - -/* The local variable is named __o1 to avoid a name conflict - when obstack_blank is called. */ -# define obstack_finish(OBSTACK) \ -__extension__ \ -({ struct obstack *__o1 = (OBSTACK); \ - void *value; \ - value = (void *) __o1->object_base; \ - if (__o1->next_free == value) \ - __o1->maybe_empty_object = 1; \ - __o1->next_free \ - = __INT_TO_PTR ((__PTR_TO_INT (__o1->next_free)+__o1->alignment_mask)\ - & ~ (__o1->alignment_mask)); \ - if (__o1->next_free - (char *)__o1->chunk \ - > __o1->chunk_limit - (char *)__o1->chunk) \ - __o1->next_free = __o1->chunk_limit; \ - __o1->object_base = __o1->next_free; \ - value; }) - -# define obstack_free(OBSTACK, OBJ) \ -__extension__ \ -({ struct obstack *__o = (OBSTACK); \ - void *__obj = (OBJ); \ - if (__obj > (void *)__o->chunk && __obj < (void *)__o->chunk_limit) \ - __o->next_free = __o->object_base = __obj; \ - else (obstack_free) (__o, __obj); }) - -#else /* not __GNUC__ or not __STDC__ */ - -# define obstack_object_size(h) \ - (unsigned) ((h)->next_free - (h)->object_base) - -# define obstack_room(h) \ - (unsigned) ((h)->chunk_limit - (h)->next_free) - -# define obstack_empty_p(h) \ - ((h)->chunk->prev == 0 && (h)->next_free - (h)->chunk->contents == 0) - -/* Note that the call to _obstack_newchunk is enclosed in (..., 0) - so that we can avoid having void expressions - in the arms of the conditional expression. - Casting the third operand to void was tried before, - but some compilers won't accept it. */ - -# define obstack_make_room(h,length) \ -( (h)->temp = (length), \ - (((h)->next_free + (h)->temp > (h)->chunk_limit) \ - ? (_obstack_newchunk ((h), (h)->temp), 0) : 0)) - -# define obstack_grow(h,where,length) \ -( (h)->temp = (length), \ - (((h)->next_free + (h)->temp > (h)->chunk_limit) \ - ? (_obstack_newchunk ((h), (h)->temp), 0) : 0), \ - _obstack_memcpy ((h)->next_free, (where), (h)->temp), \ - (h)->next_free += (h)->temp) - -# define obstack_grow0(h,where,length) \ -( (h)->temp = (length), \ - (((h)->next_free + (h)->temp + 1 > (h)->chunk_limit) \ - ? (_obstack_newchunk ((h), (h)->temp + 1), 0) : 0), \ - _obstack_memcpy ((h)->next_free, (where), (h)->temp), \ - (h)->next_free += (h)->temp, \ - *((h)->next_free)++ = 0) - -# define obstack_1grow(h,datum) \ -( (((h)->next_free + 1 > (h)->chunk_limit) \ - ? (_obstack_newchunk ((h), 1), 0) : 0), \ - (*((h)->next_free)++ = (datum))) - -# define obstack_ptr_grow(h,datum) \ -( (((h)->next_free + sizeof (char *) > (h)->chunk_limit) \ - ? (_obstack_newchunk ((h), sizeof (char *)), 0) : 0), \ - (*((char **) (((h)->next_free+=sizeof(char *))-sizeof(char *))) = ((char *) datum))) - -# define obstack_int_grow(h,datum) \ -( (((h)->next_free + sizeof (int) > (h)->chunk_limit) \ - ? (_obstack_newchunk ((h), sizeof (int)), 0) : 0), \ - (*((int *) (((h)->next_free+=sizeof(int))-sizeof(int))) = ((int) datum))) - -# define obstack_ptr_grow_fast(h,aptr) (*((char **) (h)->next_free)++ = (char *) aptr) -# define obstack_int_grow_fast(h,aint) (*((int *) (h)->next_free)++ = (int) aint) - -# define obstack_blank(h,length) \ -( (h)->temp = (length), \ - (((h)->chunk_limit - (h)->next_free < (h)->temp) \ - ? (_obstack_newchunk ((h), (h)->temp), 0) : 0), \ - ((h)->next_free += (h)->temp)) - -# define obstack_alloc(h,length) \ - (obstack_blank ((h), (length)), obstack_finish ((h))) - -# define obstack_copy(h,where,length) \ - (obstack_grow ((h), (where), (length)), obstack_finish ((h))) - -# define obstack_copy0(h,where,length) \ - (obstack_grow0 ((h), (where), (length)), obstack_finish ((h))) - -# define obstack_finish(h) \ -( ((h)->next_free == (h)->object_base \ - ? (((h)->maybe_empty_object = 1), 0) \ - : 0), \ - (h)->temp = __PTR_TO_INT ((h)->object_base), \ - (h)->next_free \ - = __INT_TO_PTR ((__PTR_TO_INT ((h)->next_free)+(h)->alignment_mask) \ - & ~ ((h)->alignment_mask)), \ - (((h)->next_free - (char *) (h)->chunk \ - > (h)->chunk_limit - (char *) (h)->chunk) \ - ? ((h)->next_free = (h)->chunk_limit) : 0), \ - (h)->object_base = (h)->next_free, \ - __INT_TO_PTR ((h)->temp)) - -# if defined __STDC__ && __STDC__ -# define obstack_free(h,obj) \ -( (h)->temp = (char *) (obj) - (char *) (h)->chunk, \ - (((h)->temp > 0 && (h)->temp < (h)->chunk_limit - (char *) (h)->chunk)\ - ? (int) ((h)->next_free = (h)->object_base \ - = (h)->temp + (char *) (h)->chunk) \ - : (((obstack_free) ((h), (h)->temp + (char *) (h)->chunk), 0), 0))) -# else -# define obstack_free(h,obj) \ -( (h)->temp = (char *) (obj) - (char *) (h)->chunk, \ - (((h)->temp > 0 && (h)->temp < (h)->chunk_limit - (char *) (h)->chunk)\ - ? (int) ((h)->next_free = (h)->object_base \ - = (h)->temp + (char *) (h)->chunk) \ - : (_obstack_free ((h), (h)->temp + (char *) (h)->chunk), 0))) -# endif - -#endif /* not __GNUC__ or not __STDC__ */ - -#ifdef __cplusplus -} /* C++ */ -#endif - -#endif /* obstack.h */ diff --git a/contrib/gcc/include/partition.h b/contrib/gcc/include/partition.h deleted file mode 100644 index 851422a..0000000 --- a/contrib/gcc/include/partition.h +++ /dev/null @@ -1,81 +0,0 @@ -/* List implementation of a partition of consecutive integers. - Copyright (C) 2000, 2001 Free Software Foundation, Inc. - Contributed by CodeSourcery, LLC. - - This file is part of GCC. - - GCC 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. - - GCC 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 GCC; see the file COPYING. If not, write to - the Free Software Foundation, 59 Temple Place - Suite 330, - Boston, MA 02111-1307, USA. */ - -/* This package implements a partition of consecutive integers. The - elements are partitioned into classes. Each class is represented - by one of its elements, the canonical element, which is chosen - arbitrarily from elements in the class. The principal operations - on a partition are FIND, which takes an element, determines its - class, and returns the canonical element for that class, and UNION, - which unites the two classes that contain two given elements into a - single class. - - The list implementation used here provides constant-time finds. By - storing the size of each class with the class's canonical element, - it is able to perform unions over all the classes in the partition - in O (N log N) time. */ - -#ifndef _PARTITION_H -#define _PARTITION_H - -#ifdef __cplusplus -extern "C" { -#endif /* __cplusplus */ - -#include -#include - -struct partition_elem -{ - /* The canonical element that represents the class containing this - element. */ - int class_element; - /* The next element in this class. Elements in each class form a - circular list. */ - struct partition_elem* next; - /* The number of elements in this class. Valid only if this is the - canonical element for its class. */ - unsigned class_count; -}; - -typedef struct partition_def -{ - /* The number of elements in this partition. */ - int num_elements; - /* The elements in the partition. */ - struct partition_elem elements[1]; -} *partition; - -extern partition partition_new PARAMS((int)); -extern void partition_delete PARAMS((partition)); -extern int partition_union PARAMS((partition, - int, - int)); -extern void partition_print PARAMS((partition, - FILE*)); - -/* Returns the canonical element corresponding to the class containing - ELEMENT__ in PARTITION__. */ - -#define partition_find(partition__, element__) \ - ((partition__)->elements[(element__)].class_element) - -#endif /* _PARTITION_H */ diff --git a/contrib/gcc/include/safe-ctype.h b/contrib/gcc/include/safe-ctype.h deleted file mode 100644 index b2ad849..0000000 --- a/contrib/gcc/include/safe-ctype.h +++ /dev/null @@ -1,103 +0,0 @@ -/* replacement macros. - - Copyright (C) 2000, 2001 Free Software Foundation, Inc. - Contributed by Zack Weinberg . - -This file is part of the libiberty library. -Libiberty 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. - -Libiberty 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 libiberty; see the file COPYING.LIB. If -not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, -Boston, MA 02111-1307, USA. */ - -/* This is a compatible replacement of the standard C library's - with the following properties: - - - Implements all isxxx() macros required by C99. - - Also implements some character classes useful when - parsing C-like languages. - - Does not change behavior depending on the current locale. - - Behaves properly for all values in the range of a signed or - unsigned char. - - To avoid conflicts, this header defines the isxxx functions in upper - case, e.g. ISALPHA not isalpha. */ - -#ifndef SAFE_CTYPE_H -#define SAFE_CTYPE_H - -#ifdef isalpha - #error "safe-ctype.h and ctype.h may not be used simultaneously" -#else - -/* Categories. */ - -enum { - /* In C99 */ - _sch_isblank = 0x0001, /* space \t */ - _sch_iscntrl = 0x0002, /* nonprinting characters */ - _sch_isdigit = 0x0004, /* 0-9 */ - _sch_islower = 0x0008, /* a-z */ - _sch_isprint = 0x0010, /* any printing character including ' ' */ - _sch_ispunct = 0x0020, /* all punctuation */ - _sch_isspace = 0x0040, /* space \t \n \r \f \v */ - _sch_isupper = 0x0080, /* A-Z */ - _sch_isxdigit = 0x0100, /* 0-9A-Fa-f */ - - /* Extra categories useful to cpplib. */ - _sch_isidst = 0x0200, /* A-Za-z_ */ - _sch_isvsp = 0x0400, /* \n \r */ - _sch_isnvsp = 0x0800, /* space \t \f \v \0 */ - - /* Combinations of the above. */ - _sch_isalpha = _sch_isupper|_sch_islower, /* A-Za-z */ - _sch_isalnum = _sch_isalpha|_sch_isdigit, /* A-Za-z0-9 */ - _sch_isidnum = _sch_isidst|_sch_isdigit, /* A-Za-z0-9_ */ - _sch_isgraph = _sch_isalnum|_sch_ispunct, /* isprint and not space */ - _sch_iscppsp = _sch_isvsp|_sch_isnvsp, /* isspace + \0 */ - _sch_isbasic = _sch_isprint|_sch_iscppsp /* basic charset of ISO C - (plus ` and @) */ -}; - -/* Character classification. */ -extern const unsigned short _sch_istable[256]; - -#define _sch_test(c, bit) (_sch_istable[(c) & 0xff] & (unsigned short)(bit)) - -#define ISALPHA(c) _sch_test(c, _sch_isalpha) -#define ISALNUM(c) _sch_test(c, _sch_isalnum) -#define ISBLANK(c) _sch_test(c, _sch_isblank) -#define ISCNTRL(c) _sch_test(c, _sch_iscntrl) -#define ISDIGIT(c) _sch_test(c, _sch_isdigit) -#define ISGRAPH(c) _sch_test(c, _sch_isgraph) -#define ISLOWER(c) _sch_test(c, _sch_islower) -#define ISPRINT(c) _sch_test(c, _sch_isprint) -#define ISPUNCT(c) _sch_test(c, _sch_ispunct) -#define ISSPACE(c) _sch_test(c, _sch_isspace) -#define ISUPPER(c) _sch_test(c, _sch_isupper) -#define ISXDIGIT(c) _sch_test(c, _sch_isxdigit) - -#define ISIDNUM(c) _sch_test(c, _sch_isidnum) -#define ISIDST(c) _sch_test(c, _sch_isidst) -#define IS_ISOBASIC(c) _sch_test(c, _sch_isbasic) -#define IS_VSPACE(c) _sch_test(c, _sch_isvsp) -#define IS_NVSPACE(c) _sch_test(c, _sch_isnvsp) -#define IS_SPACE_OR_NUL(c) _sch_test(c, _sch_iscppsp) - -/* Character transformation. */ -extern const unsigned char _sch_toupper[256]; -extern const unsigned char _sch_tolower[256]; -#define TOUPPER(c) _sch_toupper[(c) & 0xff] -#define TOLOWER(c) _sch_tolower[(c) & 0xff] - -#endif /* no ctype.h */ -#endif /* SAFE_CTYPE_H */ diff --git a/contrib/gcc/include/sort.h b/contrib/gcc/include/sort.h deleted file mode 100644 index b974059..0000000 --- a/contrib/gcc/include/sort.h +++ /dev/null @@ -1,48 +0,0 @@ -/* Sorting algorithms. - Copyright (C) 2000 Free Software Foundation, Inc. - Contributed by Mark Mitchell . - -This file is part of GCC. - -GCC 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. - -GCC 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 GCC; see the file COPYING. If not, write to -the Free Software Foundation, 59 Temple Place - Suite 330, -Boston, MA 02111-1307, USA. */ - -#ifndef SORT_H -#define SORT_H - -#include /* For size_t */ -#ifdef __STDC__ -#include -#endif /* __STDC__ */ - -#ifdef __cplusplus -extern "C" { -#endif /* __cplusplus */ - -#include - -/* Sort an array of pointers. */ - -extern void sort_pointers PARAMS ((size_t, void **, void **)); - -#ifdef __cplusplus -} -#endif /* __cplusplus */ - -#endif /* SORT_H */ - - - - diff --git a/contrib/gcc/include/splay-tree.h b/contrib/gcc/include/splay-tree.h deleted file mode 100644 index 4b7a7bf..0000000 --- a/contrib/gcc/include/splay-tree.h +++ /dev/null @@ -1,154 +0,0 @@ -/* A splay-tree datatype. - Copyright 1998, 1999, 2000 Free Software Foundation, Inc. - Contributed by Mark Mitchell (mark@markmitchell.com). - -This file is part of GCC. - -GCC 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. - -GCC 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 GCC; see the file COPYING. If not, write to -the Free Software Foundation, 59 Temple Place - Suite 330, -Boston, MA 02111-1307, USA. */ - -/* For an easily readable description of splay-trees, see: - - Lewis, Harry R. and Denenberg, Larry. Data Structures and Their - Algorithms. Harper-Collins, Inc. 1991. - - The major feature of splay trees is that all basic tree operations - are amortized O(log n) time for a tree with n nodes. */ - -#ifndef _SPLAY_TREE_H -#define _SPLAY_TREE_H - -#ifdef __cplusplus -extern "C" { -#endif /* __cplusplus */ - -#include - -/* Use typedefs for the key and data types to facilitate changing - these types, if necessary. These types should be sufficiently wide - that any pointer or scalar can be cast to these types, and then - cast back, without loss of precision. */ -typedef unsigned long int splay_tree_key; -typedef unsigned long int splay_tree_value; - -/* Forward declaration for a node in the tree. */ -typedef struct splay_tree_node_s *splay_tree_node; - -/* The type of a function which compares two splay-tree keys. The - function should return values as for qsort. */ -typedef int (*splay_tree_compare_fn) PARAMS((splay_tree_key, splay_tree_key)); - -/* The type of a function used to deallocate any resources associated - with the key. */ -typedef void (*splay_tree_delete_key_fn) PARAMS((splay_tree_key)); - -/* The type of a function used to deallocate any resources associated - with the value. */ -typedef void (*splay_tree_delete_value_fn) PARAMS((splay_tree_value)); - -/* The type of a function used to iterate over the tree. */ -typedef int (*splay_tree_foreach_fn) PARAMS((splay_tree_node, void*)); - -/* The type of a function used to allocate memory for tree root and - node structures. The first argument is the number of bytes needed; - the second is a data pointer the splay tree functions pass through - to the allocator. This function must never return zero. */ -typedef void *(*splay_tree_allocate_fn) PARAMS((int, void *)); - -/* The type of a function used to free memory allocated using the - corresponding splay_tree_allocate_fn. The first argument is the - memory to be freed; the latter is a data pointer the splay tree - functions pass through to the freer. */ -typedef void (*splay_tree_deallocate_fn) PARAMS((void *, void *)); - -/* The nodes in the splay tree. */ -struct splay_tree_node_s -{ - /* The key. */ - splay_tree_key key; - - /* The value. */ - splay_tree_value value; - - /* The left and right children, respectively. */ - splay_tree_node left; - splay_tree_node right; -}; - -/* The splay tree itself. */ -typedef struct splay_tree_s -{ - /* The root of the tree. */ - splay_tree_node root; - - /* The comparision function. */ - splay_tree_compare_fn comp; - - /* The deallocate-key function. NULL if no cleanup is necessary. */ - splay_tree_delete_key_fn delete_key; - - /* The deallocate-value function. NULL if no cleanup is necessary. */ - splay_tree_delete_value_fn delete_value; - - /* Allocate/free functions, and a data pointer to pass to them. */ - splay_tree_allocate_fn allocate; - splay_tree_deallocate_fn deallocate; - void *allocate_data; - -} *splay_tree; - -extern splay_tree splay_tree_new PARAMS((splay_tree_compare_fn, - splay_tree_delete_key_fn, - splay_tree_delete_value_fn)); -extern splay_tree splay_tree_new_with_allocator - PARAMS((splay_tree_compare_fn, - splay_tree_delete_key_fn, - splay_tree_delete_value_fn, - splay_tree_allocate_fn, - splay_tree_deallocate_fn, - void *)); -extern void splay_tree_delete PARAMS((splay_tree)); -extern splay_tree_node splay_tree_insert - PARAMS((splay_tree, - splay_tree_key, - splay_tree_value)); -extern void splay_tree_remove PARAMS((splay_tree, - splay_tree_key)); -extern splay_tree_node splay_tree_lookup - PARAMS((splay_tree, - splay_tree_key)); -extern splay_tree_node splay_tree_predecessor - PARAMS((splay_tree, - splay_tree_key)); -extern splay_tree_node splay_tree_successor - PARAMS((splay_tree, - splay_tree_key)); -extern splay_tree_node splay_tree_max - PARAMS((splay_tree)); -extern splay_tree_node splay_tree_min - PARAMS((splay_tree)); -extern int splay_tree_foreach PARAMS((splay_tree, - splay_tree_foreach_fn, - void*)); -extern int splay_tree_compare_ints PARAMS((splay_tree_key, - splay_tree_key)); -extern int splay_tree_compare_pointers PARAMS((splay_tree_key, - splay_tree_key)); - -#ifdef __cplusplus -} -#endif /* __cplusplus */ - -#endif /* _SPLAY_TREE_H */ diff --git a/contrib/gcc/include/symcat.h b/contrib/gcc/include/symcat.h deleted file mode 100644 index 61ce1e9..0000000 --- a/contrib/gcc/include/symcat.h +++ /dev/null @@ -1,49 +0,0 @@ -/* Symbol concatenation utilities. - - Copyright (C) 1998, 2000 Free Software Foundation, Inc. - - 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. */ - -#ifndef SYM_CAT_H -#define SYM_CAT_H - -#if defined (__STDC__) || defined (ALMOST_STDC) || defined (HAVE_STRINGIZE) -#define CONCAT2(a,b) a##b -#define CONCAT3(a,b,c) a##b##c -#define CONCAT4(a,b,c,d) a##b##c##d -#define STRINGX(s) #s -#else -/* Note one should never pass extra whitespace to the CONCATn macros, - e.g. CONCAT2(foo, bar) because traditonal C will keep the space between - the two labels instead of concatenating them. Instead, make sure to - write CONCAT2(foo,bar). */ -#define CONCAT2(a,b) a/**/b -#define CONCAT3(a,b,c) a/**/b/**/c -#define CONCAT4(a,b,c,d) a/**/b/**/c/**/d -#define STRINGX(s) "s" -#endif - -#define XCONCAT2(a,b) CONCAT2(a,b) -#define XCONCAT3(a,b,c) CONCAT3(a,b,c) -#define XCONCAT4(a,b,c,d) CONCAT4(a,b,c,d) - -/* Note the layer of indirection here is typically used to allow - stringification of the expansion of macros. I.e. "#define foo - bar", "XSTRING(foo)", to yield "bar". Be aware that this only - works for __STDC__, not for traditional C which will still resolve - to "foo". */ -#define XSTRING(s) STRINGX(s) - -#endif /* SYM_CAT_H */ diff --git a/contrib/gcc/include/ternary.h b/contrib/gcc/include/ternary.h deleted file mode 100644 index 40d442e..0000000 --- a/contrib/gcc/include/ternary.h +++ /dev/null @@ -1,51 +0,0 @@ -/* ternary.h - Ternary Search Trees - Copyright 2001 Free Software Foundation, Inc. - - Contributed by Daniel Berlin (dan@cgsoftware.com) - - - 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, 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. */ -#ifndef TERNARY_H_ -#define TERNARY_H_ -/* Ternary search trees */ - -typedef struct ternary_node_def *ternary_tree; - -typedef struct ternary_node_def -{ - char splitchar; - ternary_tree lokid; - ternary_tree eqkid; - ternary_tree hikid; -} -ternary_node; - -/* Insert string S into tree P, associating it with DATA. - Return the data in the tree associated with the string if it's - already there, and replace is 0. - Otherwise, replaces if it it exists, inserts if it doesn't, and - returns the data you passed in. */ -PTR ternary_insert PARAMS ((ternary_tree *p, const char *s, - PTR data, int replace)); - -/* Delete the ternary search tree rooted at P. - Does NOT delete the data you associated with the strings. */ -void ternary_cleanup PARAMS ((ternary_tree p)); - -/* Search the ternary tree for string S, returning the data associated - with it if found. */ -PTR ternary_search PARAMS ((const ternary_node *p, const char *s)); -#endif diff --git a/contrib/gcc/include/xregex.h b/contrib/gcc/include/xregex.h deleted file mode 100644 index 645195b..0000000 --- a/contrib/gcc/include/xregex.h +++ /dev/null @@ -1,28 +0,0 @@ -/* This file redefines all regex external names before including - a renamed copy of glibc's regex.h. */ - -#ifndef _XREGEX_H -#define _XREGEX_H 1 - -# define regfree xregfree -# define regexec xregexec -# define regcomp xregcomp -# define regerror xregerror -# define re_set_registers xre_set_registers -# define re_match_2 xre_match_2 -# define re_match xre_match -# define re_search xre_search -# define re_compile_pattern xre_compile_pattern -# define re_set_syntax xre_set_syntax -# define re_search_2 xre_search_2 -# define re_compile_fastmap xre_compile_fastmap -# define re_syntax_options xre_syntax_options -# define re_max_failures xre_max_failures - -# define _REGEX_RE_COMP -# define re_comp xre_comp -# define re_exec xre_exec - -#include "xregex2.h" - -#endif /* xregex.h */ diff --git a/contrib/gcc/include/xregex2.h b/contrib/gcc/include/xregex2.h deleted file mode 100644 index 2991daf..0000000 --- a/contrib/gcc/include/xregex2.h +++ /dev/null @@ -1,571 +0,0 @@ -/* Definitions for data structures and routines for the regular - expression library, version 0.12. - Copyright (C) 1985,1989-1993,1995-1998, 2000 Free Software Foundation, Inc. - This file is part of the GNU C Library. Its master source is NOT part of - the C library, however. The master source lives in /gd/gnu/lib. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C 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 - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, write to the Free - Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA - 02111-1307 USA. */ - -#ifndef _REGEX_H -#define _REGEX_H 1 - -/* Allow the use in C++ code. */ -#ifdef __cplusplus -extern "C" { -#endif - -/* POSIX says that must be included (by the caller) before - . */ - -#if !defined _POSIX_C_SOURCE && !defined _POSIX_SOURCE && defined VMS -/* VMS doesn't have `size_t' in , even though POSIX says it - should be there. */ -# include -#endif - -/* The following two types have to be signed and unsigned integer type - wide enough to hold a value of a pointer. For most ANSI compilers - ptrdiff_t and size_t should be likely OK. Still size of these two - types is 2 for Microsoft C. Ugh... */ -typedef long int s_reg_t; -typedef unsigned long int active_reg_t; - -/* The following bits are used to determine the regexp syntax we - recognize. The set/not-set meanings are chosen so that Emacs syntax - remains the value 0. The bits are given in alphabetical order, and - the definitions shifted by one from the previous bit; thus, when we - add or remove a bit, only one other definition need change. */ -typedef unsigned long int reg_syntax_t; - -/* If this bit is not set, then \ inside a bracket expression is literal. - If set, then such a \ quotes the following character. */ -#define RE_BACKSLASH_ESCAPE_IN_LISTS ((unsigned long int) 1) - -/* If this bit is not set, then + and ? are operators, and \+ and \? are - literals. - If set, then \+ and \? are operators and + and ? are literals. */ -#define RE_BK_PLUS_QM (RE_BACKSLASH_ESCAPE_IN_LISTS << 1) - -/* If this bit is set, then character classes are supported. They are: - [:alpha:], [:upper:], [:lower:], [:digit:], [:alnum:], [:xdigit:], - [:space:], [:print:], [:punct:], [:graph:], and [:cntrl:]. - If not set, then character classes are not supported. */ -#define RE_CHAR_CLASSES (RE_BK_PLUS_QM << 1) - -/* If this bit is set, then ^ and $ are always anchors (outside bracket - expressions, of course). - If this bit is not set, then it depends: - ^ is an anchor if it is at the beginning of a regular - expression or after an open-group or an alternation operator; - $ is an anchor if it is at the end of a regular expression, or - before a close-group or an alternation operator. - - This bit could be (re)combined with RE_CONTEXT_INDEP_OPS, because - POSIX draft 11.2 says that * etc. in leading positions is undefined. - We already implemented a previous draft which made those constructs - invalid, though, so we haven't changed the code back. */ -#define RE_CONTEXT_INDEP_ANCHORS (RE_CHAR_CLASSES << 1) - -/* If this bit is set, then special characters are always special - regardless of where they are in the pattern. - If this bit is not set, then special characters are special only in - some contexts; otherwise they are ordinary. Specifically, - * + ? and intervals are only special when not after the beginning, - open-group, or alternation operator. */ -#define RE_CONTEXT_INDEP_OPS (RE_CONTEXT_INDEP_ANCHORS << 1) - -/* If this bit is set, then *, +, ?, and { cannot be first in an re or - immediately after an alternation or begin-group operator. */ -#define RE_CONTEXT_INVALID_OPS (RE_CONTEXT_INDEP_OPS << 1) - -/* If this bit is set, then . matches newline. - If not set, then it doesn't. */ -#define RE_DOT_NEWLINE (RE_CONTEXT_INVALID_OPS << 1) - -/* If this bit is set, then . doesn't match NUL. - If not set, then it does. */ -#define RE_DOT_NOT_NULL (RE_DOT_NEWLINE << 1) - -/* If this bit is set, nonmatching lists [^...] do not match newline. - If not set, they do. */ -#define RE_HAT_LISTS_NOT_NEWLINE (RE_DOT_NOT_NULL << 1) - -/* If this bit is set, either \{...\} or {...} defines an - interval, depending on RE_NO_BK_BRACES. - If not set, \{, \}, {, and } are literals. */ -#define RE_INTERVALS (RE_HAT_LISTS_NOT_NEWLINE << 1) - -/* If this bit is set, +, ? and | aren't recognized as operators. - If not set, they are. */ -#define RE_LIMITED_OPS (RE_INTERVALS << 1) - -/* If this bit is set, newline is an alternation operator. - If not set, newline is literal. */ -#define RE_NEWLINE_ALT (RE_LIMITED_OPS << 1) - -/* If this bit is set, then `{...}' defines an interval, and \{ and \} - are literals. - If not set, then `\{...\}' defines an interval. */ -#define RE_NO_BK_BRACES (RE_NEWLINE_ALT << 1) - -/* If this bit is set, (...) defines a group, and \( and \) are literals. - If not set, \(...\) defines a group, and ( and ) are literals. */ -#define RE_NO_BK_PARENS (RE_NO_BK_BRACES << 1) - -/* If this bit is set, then \ matches . - If not set, then \ is a back-reference. */ -#define RE_NO_BK_REFS (RE_NO_BK_PARENS << 1) - -/* If this bit is set, then | is an alternation operator, and \| is literal. - If not set, then \| is an alternation operator, and | is literal. */ -#define RE_NO_BK_VBAR (RE_NO_BK_REFS << 1) - -/* If this bit is set, then an ending range point collating higher - than the starting range point, as in [z-a], is invalid. - If not set, then when ending range point collates higher than the - starting range point, the range is ignored. */ -#define RE_NO_EMPTY_RANGES (RE_NO_BK_VBAR << 1) - -/* If this bit is set, then an unmatched ) is ordinary. - If not set, then an unmatched ) is invalid. */ -#define RE_UNMATCHED_RIGHT_PAREN_ORD (RE_NO_EMPTY_RANGES << 1) - -/* If this bit is set, succeed as soon as we match the whole pattern, - without further backtracking. */ -#define RE_NO_POSIX_BACKTRACKING (RE_UNMATCHED_RIGHT_PAREN_ORD << 1) - -/* If this bit is set, do not process the GNU regex operators. - If not set, then the GNU regex operators are recognized. */ -#define RE_NO_GNU_OPS (RE_NO_POSIX_BACKTRACKING << 1) - -/* If this bit is set, turn on internal regex debugging. - If not set, and debugging was on, turn it off. - This only works if regex.c is compiled -DDEBUG. - We define this bit always, so that all that's needed to turn on - debugging is to recompile regex.c; the calling code can always have - this bit set, and it won't affect anything in the normal case. */ -#define RE_DEBUG (RE_NO_GNU_OPS << 1) - -/* If this bit is set, a syntactically invalid interval is treated as - a string of ordinary characters. For example, the ERE 'a{1' is - treated as 'a\{1'. */ -#define RE_INVALID_INTERVAL_ORD (RE_DEBUG << 1) - -/* This global variable defines the particular regexp syntax to use (for - some interfaces). When a regexp is compiled, the syntax used is - stored in the pattern buffer, so changing this does not affect - already-compiled regexps. */ -extern reg_syntax_t re_syntax_options; - -/* Define combinations of the above bits for the standard possibilities. - (The [[[ comments delimit what gets put into the Texinfo file, so - don't delete them!) */ -/* [[[begin syntaxes]]] */ -#define RE_SYNTAX_EMACS 0 - -#define RE_SYNTAX_AWK \ - (RE_BACKSLASH_ESCAPE_IN_LISTS | RE_DOT_NOT_NULL \ - | RE_NO_BK_PARENS | RE_NO_BK_REFS \ - | RE_NO_BK_VBAR | RE_NO_EMPTY_RANGES \ - | RE_DOT_NEWLINE | RE_CONTEXT_INDEP_ANCHORS \ - | RE_UNMATCHED_RIGHT_PAREN_ORD | RE_NO_GNU_OPS) - -#define RE_SYNTAX_GNU_AWK \ - ((RE_SYNTAX_POSIX_EXTENDED | RE_BACKSLASH_ESCAPE_IN_LISTS | RE_DEBUG) \ - & ~(RE_DOT_NOT_NULL | RE_INTERVALS | RE_CONTEXT_INDEP_OPS)) - -#define RE_SYNTAX_POSIX_AWK \ - (RE_SYNTAX_POSIX_EXTENDED | RE_BACKSLASH_ESCAPE_IN_LISTS \ - | RE_INTERVALS | RE_NO_GNU_OPS) - -#define RE_SYNTAX_GREP \ - (RE_BK_PLUS_QM | RE_CHAR_CLASSES \ - | RE_HAT_LISTS_NOT_NEWLINE | RE_INTERVALS \ - | RE_NEWLINE_ALT) - -#define RE_SYNTAX_EGREP \ - (RE_CHAR_CLASSES | RE_CONTEXT_INDEP_ANCHORS \ - | RE_CONTEXT_INDEP_OPS | RE_HAT_LISTS_NOT_NEWLINE \ - | RE_NEWLINE_ALT | RE_NO_BK_PARENS \ - | RE_NO_BK_VBAR) - -#define RE_SYNTAX_POSIX_EGREP \ - (RE_SYNTAX_EGREP | RE_INTERVALS | RE_NO_BK_BRACES \ - | RE_INVALID_INTERVAL_ORD) - -/* P1003.2/D11.2, section 4.20.7.1, lines 5078ff. */ -#define RE_SYNTAX_ED RE_SYNTAX_POSIX_BASIC - -#define RE_SYNTAX_SED RE_SYNTAX_POSIX_BASIC - -/* Syntax bits common to both basic and extended POSIX regex syntax. */ -#define _RE_SYNTAX_POSIX_COMMON \ - (RE_CHAR_CLASSES | RE_DOT_NEWLINE | RE_DOT_NOT_NULL \ - | RE_INTERVALS | RE_NO_EMPTY_RANGES) - -#define RE_SYNTAX_POSIX_BASIC \ - (_RE_SYNTAX_POSIX_COMMON | RE_BK_PLUS_QM) - -/* Differs from ..._POSIX_BASIC only in that RE_BK_PLUS_QM becomes - RE_LIMITED_OPS, i.e., \? \+ \| are not recognized. Actually, this - isn't minimal, since other operators, such as \`, aren't disabled. */ -#define RE_SYNTAX_POSIX_MINIMAL_BASIC \ - (_RE_SYNTAX_POSIX_COMMON | RE_LIMITED_OPS) - -#define RE_SYNTAX_POSIX_EXTENDED \ - (_RE_SYNTAX_POSIX_COMMON | RE_CONTEXT_INDEP_ANCHORS \ - | RE_CONTEXT_INDEP_OPS | RE_NO_BK_BRACES \ - | RE_NO_BK_PARENS | RE_NO_BK_VBAR \ - | RE_CONTEXT_INVALID_OPS | RE_UNMATCHED_RIGHT_PAREN_ORD) - -/* Differs from ..._POSIX_EXTENDED in that RE_CONTEXT_INDEP_OPS is - removed and RE_NO_BK_REFS is added. */ -#define RE_SYNTAX_POSIX_MINIMAL_EXTENDED \ - (_RE_SYNTAX_POSIX_COMMON | RE_CONTEXT_INDEP_ANCHORS \ - | RE_CONTEXT_INVALID_OPS | RE_NO_BK_BRACES \ - | RE_NO_BK_PARENS | RE_NO_BK_REFS \ - | RE_NO_BK_VBAR | RE_UNMATCHED_RIGHT_PAREN_ORD) -/* [[[end syntaxes]]] */ - -/* Maximum number of duplicates an interval can allow. Some systems - (erroneously) define this in other header files, but we want our - value, so remove any previous define. */ -#ifdef RE_DUP_MAX -# undef RE_DUP_MAX -#endif -/* If sizeof(int) == 2, then ((1 << 15) - 1) overflows. */ -#define RE_DUP_MAX (0x7fff) - - -/* POSIX `cflags' bits (i.e., information for `regcomp'). */ - -/* If this bit is set, then use extended regular expression syntax. - If not set, then use basic regular expression syntax. */ -#define REG_EXTENDED 1 - -/* If this bit is set, then ignore case when matching. - If not set, then case is significant. */ -#define REG_ICASE (REG_EXTENDED << 1) - -/* If this bit is set, then anchors do not match at newline - characters in the string. - If not set, then anchors do match at newlines. */ -#define REG_NEWLINE (REG_ICASE << 1) - -/* If this bit is set, then report only success or fail in regexec. - If not set, then returns differ between not matching and errors. */ -#define REG_NOSUB (REG_NEWLINE << 1) - - -/* POSIX `eflags' bits (i.e., information for regexec). */ - -/* If this bit is set, then the beginning-of-line operator doesn't match - the beginning of the string (presumably because it's not the - beginning of a line). - If not set, then the beginning-of-line operator does match the - beginning of the string. */ -#define REG_NOTBOL 1 - -/* Like REG_NOTBOL, except for the end-of-line. */ -#define REG_NOTEOL (1 << 1) - - -/* If any error codes are removed, changed, or added, update the - `re_error_msg' table in regex.c. */ -typedef enum -{ -#ifdef _XOPEN_SOURCE - REG_ENOSYS = -1, /* This will never happen for this implementation. */ -#endif - - REG_NOERROR = 0, /* Success. */ - REG_NOMATCH, /* Didn't find a match (for regexec). */ - - /* POSIX regcomp return error codes. (In the order listed in the - standard.) */ - REG_BADPAT, /* Invalid pattern. */ - REG_ECOLLATE, /* Not implemented. */ - REG_ECTYPE, /* Invalid character class name. */ - REG_EESCAPE, /* Trailing backslash. */ - REG_ESUBREG, /* Invalid back reference. */ - REG_EBRACK, /* Unmatched left bracket. */ - REG_EPAREN, /* Parenthesis imbalance. */ - REG_EBRACE, /* Unmatched \{. */ - REG_BADBR, /* Invalid contents of \{\}. */ - REG_ERANGE, /* Invalid range end. */ - REG_ESPACE, /* Ran out of memory. */ - REG_BADRPT, /* No preceding re for repetition op. */ - - /* Error codes we've added. */ - REG_EEND, /* Premature end. */ - REG_ESIZE, /* Compiled pattern bigger than 2^16 bytes. */ - REG_ERPAREN /* Unmatched ) or \); not returned from regcomp. */ -} reg_errcode_t; - -/* This data structure represents a compiled pattern. Before calling - the pattern compiler, the fields `buffer', `allocated', `fastmap', - `translate', and `no_sub' can be set. After the pattern has been - compiled, the `re_nsub' field is available. All other fields are - private to the regex routines. */ - -#ifndef RE_TRANSLATE_TYPE -# define RE_TRANSLATE_TYPE char * -#endif - -struct re_pattern_buffer -{ -/* [[[begin pattern_buffer]]] */ - /* Space that holds the compiled pattern. It is declared as - `unsigned char *' because its elements are - sometimes used as array indexes. */ - unsigned char *buffer; - - /* Number of bytes to which `buffer' points. */ - unsigned long int allocated; - - /* Number of bytes actually used in `buffer'. */ - unsigned long int used; - - /* Syntax setting with which the pattern was compiled. */ - reg_syntax_t syntax; - - /* Pointer to a fastmap, if any, otherwise zero. re_search uses - the fastmap, if there is one, to skip over impossible - starting points for matches. */ - char *fastmap; - - /* Either a translate table to apply to all characters before - comparing them, or zero for no translation. The translation - is applied to a pattern when it is compiled and to a string - when it is matched. */ - RE_TRANSLATE_TYPE translate; - - /* Number of subexpressions found by the compiler. */ - size_t re_nsub; - - /* Zero if this pattern cannot match the empty string, one else. - Well, in truth it's used only in `re_search_2', to see - whether or not we should use the fastmap, so we don't set - this absolutely perfectly; see `re_compile_fastmap' (the - `duplicate' case). */ - unsigned can_be_null : 1; - - /* If REGS_UNALLOCATED, allocate space in the `regs' structure - for `max (RE_NREGS, re_nsub + 1)' groups. - If REGS_REALLOCATE, reallocate space if necessary. - If REGS_FIXED, use what's there. */ -#define REGS_UNALLOCATED 0 -#define REGS_REALLOCATE 1 -#define REGS_FIXED 2 - unsigned regs_allocated : 2; - - /* Set to zero when `regex_compile' compiles a pattern; set to one - by `re_compile_fastmap' if it updates the fastmap. */ - unsigned fastmap_accurate : 1; - - /* If set, `re_match_2' does not return information about - subexpressions. */ - unsigned no_sub : 1; - - /* If set, a beginning-of-line anchor doesn't match at the - beginning of the string. */ - unsigned not_bol : 1; - - /* Similarly for an end-of-line anchor. */ - unsigned not_eol : 1; - - /* If true, an anchor at a newline matches. */ - unsigned newline_anchor : 1; - -/* [[[end pattern_buffer]]] */ -}; - -typedef struct re_pattern_buffer regex_t; - -/* Type for byte offsets within the string. POSIX mandates this. */ -typedef int regoff_t; - - -/* This is the structure we store register match data in. See - regex.texinfo for a full description of what registers match. */ -struct re_registers -{ - unsigned num_regs; - regoff_t *start; - regoff_t *end; -}; - - -/* If `regs_allocated' is REGS_UNALLOCATED in the pattern buffer, - `re_match_2' returns information about at least this many registers - the first time a `regs' structure is passed. */ -#ifndef RE_NREGS -# define RE_NREGS 30 -#endif - - -/* POSIX specification for registers. Aside from the different names than - `re_registers', POSIX uses an array of structures, instead of a - structure of arrays. */ -typedef struct -{ - regoff_t rm_so; /* Byte offset from string's start to substring's start. */ - regoff_t rm_eo; /* Byte offset from string's start to substring's end. */ -} regmatch_t; - -/* Declarations for routines. */ - -/* To avoid duplicating every routine declaration -- once with a - prototype (if we are ANSI), and once without (if we aren't) -- we - use the following macro to declare argument types. This - unfortunately clutters up the declarations a bit, but I think it's - worth it. */ - -#if __STDC__ - -# define _RE_ARGS(args) args - -#else /* not __STDC__ */ - -# define _RE_ARGS(args) () - -#endif /* not __STDC__ */ - -/* Sets the current default syntax to SYNTAX, and return the old syntax. - You can also simply assign to the `re_syntax_options' variable. */ -extern reg_syntax_t re_set_syntax _RE_ARGS ((reg_syntax_t syntax)); - -/* Compile the regular expression PATTERN, with length LENGTH - and syntax given by the global `re_syntax_options', into the buffer - BUFFER. Return NULL if successful, and an error string if not. */ -extern const char *re_compile_pattern - _RE_ARGS ((const char *pattern, size_t length, - struct re_pattern_buffer *buffer)); - - -/* Compile a fastmap for the compiled pattern in BUFFER; used to - accelerate searches. Return 0 if successful and -2 if was an - internal error. */ -extern int re_compile_fastmap _RE_ARGS ((struct re_pattern_buffer *buffer)); - - -/* Search in the string STRING (with length LENGTH) for the pattern - compiled into BUFFER. Start searching at position START, for RANGE - characters. Return the starting position of the match, -1 for no - match, or -2 for an internal error. Also return register - information in REGS (if REGS and BUFFER->no_sub are nonzero). */ -extern int re_search - _RE_ARGS ((struct re_pattern_buffer *buffer, const char *string, - int length, int start, int range, struct re_registers *regs)); - - -/* Like `re_search', but search in the concatenation of STRING1 and - STRING2. Also, stop searching at index START + STOP. */ -extern int re_search_2 - _RE_ARGS ((struct re_pattern_buffer *buffer, const char *string1, - int length1, const char *string2, int length2, - int start, int range, struct re_registers *regs, int stop)); - - -/* Like `re_search', but return how many characters in STRING the regexp - in BUFFER matched, starting at position START. */ -extern int re_match - _RE_ARGS ((struct re_pattern_buffer *buffer, const char *string, - int length, int start, struct re_registers *regs)); - - -/* Relates to `re_match' as `re_search_2' relates to `re_search'. */ -extern int re_match_2 - _RE_ARGS ((struct re_pattern_buffer *buffer, const char *string1, - int length1, const char *string2, int length2, - int start, struct re_registers *regs, int stop)); - - -/* Set REGS to hold NUM_REGS registers, storing them in STARTS and - ENDS. Subsequent matches using BUFFER and REGS will use this memory - for recording register information. STARTS and ENDS must be - allocated with malloc, and must each be at least `NUM_REGS * sizeof - (regoff_t)' bytes long. - - If NUM_REGS == 0, then subsequent matches should allocate their own - register data. - - Unless this function is called, the first search or match using - PATTERN_BUFFER will allocate its own register data, without - freeing the old data. */ -extern void re_set_registers - _RE_ARGS ((struct re_pattern_buffer *buffer, struct re_registers *regs, - unsigned num_regs, regoff_t *starts, regoff_t *ends)); - -#if defined _REGEX_RE_COMP || defined _LIBC -# ifndef _CRAY -/* 4.2 bsd compatibility. */ -extern char *re_comp _RE_ARGS ((const char *)); -extern int re_exec _RE_ARGS ((const char *)); -# endif -#endif - -/* GCC 2.95 and later have "__restrict"; C99 compilers have - "restrict", and "configure" may have defined "restrict". */ -#ifndef __restrict -# if ! (2 < __GNUC__ || (2 == __GNUC__ && 95 <= __GNUC_MINOR__)) -# if defined restrict || 199901L <= __STDC_VERSION__ -# define __restrict restrict -# else -# define __restrict -# endif -# endif -#endif - -/* GCC 3.1 and later support declaring arrays as non-overlapping - using the syntax array_name[restrict] */ -#ifndef __restrict_arr -# if ! (3 < __GNUC__ || (3 == __GNUC__ && 1 <= __GNUC_MINOR__)) || defined (__GNUG__) -# define __restrict_arr -# else -# define __restrict_arr __restrict -# endif -#endif - -/* POSIX compatibility. */ -extern int regcomp _RE_ARGS ((regex_t *__restrict __preg, - const char *__restrict __pattern, - int __cflags)); - -extern int regexec _RE_ARGS ((const regex_t *__restrict __preg, - const char *__restrict __string, size_t __nmatch, - regmatch_t __pmatch[__restrict_arr], - int __eflags)); - -extern size_t regerror _RE_ARGS ((int __errcode, const regex_t *__preg, - char *__errbuf, size_t __errbuf_size)); - -extern void regfree _RE_ARGS ((regex_t *__preg)); - - -#ifdef __cplusplus -} -#endif /* C++ */ - -#endif /* regex.h */ - -/* -Local variables: -make-backup-files: t -version-control: t -trim-versions-without-asking: nil -End: -*/ diff --git a/contrib/gcc/install-sh b/contrib/gcc/install-sh deleted file mode 100755 index 59bcde4..0000000 --- a/contrib/gcc/install-sh +++ /dev/null @@ -1,251 +0,0 @@ -#!/bin/sh -# -# install - install a program, script, or datafile -# This comes from X11R5 (mit/util/scripts/install.sh). -# -# Copyright 1991 by the Massachusetts Institute of Technology -# -# Permission to use, copy, modify, distribute, and sell this software and its -# documentation for any purpose is hereby granted without fee, provided that -# the above copyright notice appear in all copies and that both that -# copyright notice and this permission notice appear in supporting -# documentation, and that the name of M.I.T. not be used in advertising or -# publicity pertaining to distribution of the software without specific, -# written prior permission. M.I.T. makes no representations about the -# suitability of this software for any purpose. It is provided "as is" -# without express or implied warranty. -# -# Calling this script install-sh is preferred over install.sh, to prevent -# `make' implicit rules from creating a file called install from it -# when there is no Makefile. -# -# This script is compatible with the BSD install script, but was written -# from scratch. It can only install one file at a time, a restriction -# shared with many OS's install programs. - - -# set DOITPROG to echo to test this script - -# Don't use :- since 4.3BSD and earlier shells don't like it. -doit="${DOITPROG-}" - - -# put in absolute paths if you don't have them in your path; or use env. vars. - -mvprog="${MVPROG-mv}" -cpprog="${CPPROG-cp}" -chmodprog="${CHMODPROG-chmod}" -chownprog="${CHOWNPROG-chown}" -chgrpprog="${CHGRPPROG-chgrp}" -stripprog="${STRIPPROG-strip}" -rmprog="${RMPROG-rm}" -mkdirprog="${MKDIRPROG-mkdir}" - -transformbasename="" -transform_arg="" -instcmd="$mvprog" -chmodcmd="$chmodprog 0755" -chowncmd="" -chgrpcmd="" -stripcmd="" -rmcmd="$rmprog -f" -mvcmd="$mvprog" -src="" -dst="" -dir_arg="" - -while [ x"$1" != x ]; do - case $1 in - -c) instcmd="$cpprog" - shift - continue;; - - -d) dir_arg=true - shift - continue;; - - -m) chmodcmd="$chmodprog $2" - shift - shift - continue;; - - -o) chowncmd="$chownprog $2" - shift - shift - continue;; - - -g) chgrpcmd="$chgrpprog $2" - shift - shift - continue;; - - -s) stripcmd="$stripprog" - shift - continue;; - - -t=*) transformarg=`echo $1 | sed 's/-t=//'` - shift - continue;; - - -b=*) transformbasename=`echo $1 | sed 's/-b=//'` - shift - continue;; - - *) if [ x"$src" = x ] - then - src=$1 - else - # this colon is to work around a 386BSD /bin/sh bug - : - dst=$1 - fi - shift - continue;; - esac -done - -if [ x"$src" = x ] -then - echo "install: no input file specified" - exit 1 -else - true -fi - -if [ x"$dir_arg" != x ]; then - dst=$src - src="" - - if [ -d $dst ]; then - instcmd=: - chmodcmd="" - else - instcmd=mkdir - fi -else - -# Waiting for this to be detected by the "$instcmd $src $dsttmp" command -# might cause directories to be created, which would be especially bad -# if $src (and thus $dsttmp) contains '*'. - - if [ -f $src -o -d $src ] - then - true - else - echo "install: $src does not exist" - exit 1 - fi - - if [ x"$dst" = x ] - then - echo "install: no destination specified" - exit 1 - else - true - fi - -# If destination is a directory, append the input filename; if your system -# does not like double slashes in filenames, you may need to add some logic - - if [ -d $dst ] - then - dst="$dst"/`basename $src` - else - true - fi -fi - -## this sed command emulates the dirname command -dstdir=`echo $dst | sed -e 's,[^/]*$,,;s,/$,,;s,^$,.,'` - -# Make sure that the destination directory exists. -# this part is taken from Noah Friedman's mkinstalldirs script - -# Skip lots of stat calls in the usual case. -if [ ! -d "$dstdir" ]; then -defaultIFS=' -' -IFS="${IFS-${defaultIFS}}" - -oIFS="${IFS}" -# Some sh's can't handle IFS=/ for some reason. -IFS='%' -set - `echo ${dstdir} | sed -e 's@/@%@g' -e 's@^%@/@'` -IFS="${oIFS}" - -pathcomp='' - -while [ $# -ne 0 ] ; do - pathcomp="${pathcomp}${1}" - shift - - if [ ! -d "${pathcomp}" ] ; - then - $mkdirprog "${pathcomp}" - else - true - fi - - pathcomp="${pathcomp}/" -done -fi - -if [ x"$dir_arg" != x ] -then - $doit $instcmd $dst && - - if [ x"$chowncmd" != x ]; then $doit $chowncmd $dst; else true ; fi && - if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd $dst; else true ; fi && - if [ x"$stripcmd" != x ]; then $doit $stripcmd $dst; else true ; fi && - if [ x"$chmodcmd" != x ]; then $doit $chmodcmd $dst; else true ; fi -else - -# If we're going to rename the final executable, determine the name now. - - if [ x"$transformarg" = x ] - then - dstfile=`basename $dst` - else - dstfile=`basename $dst $transformbasename | - sed $transformarg`$transformbasename - fi - -# don't allow the sed command to completely eliminate the filename - - if [ x"$dstfile" = x ] - then - dstfile=`basename $dst` - else - true - fi - -# Make a temp file name in the proper directory. - - dsttmp=$dstdir/_inst.$$_ - -# Move or copy the file name to the temp name - - $doit $instcmd $src $dsttmp && - - trap "rm -f ${dsttmp}" 0 && - -# and set any options; do chmod last to preserve setuid bits - -# If any of these fail, we abort the whole thing. If we want to -# ignore errors from any of these, just make sure not to ignore -# errors from the above "$doit $instcmd $src $dsttmp" command. - - if [ x"$chowncmd" != x ]; then $doit $chowncmd $dsttmp; else true;fi && - if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd $dsttmp; else true;fi && - if [ x"$stripcmd" != x ]; then $doit $stripcmd $dsttmp; else true;fi && - if [ x"$chmodcmd" != x ]; then $doit $chmodcmd $dsttmp; else true;fi && - -# Now rename the file to the real destination. - - $doit $rmcmd -f $dstdir/$dstfile && - $doit $mvcmd $dsttmp $dstdir/$dstfile - -fi && - - -exit 0 diff --git a/contrib/gcc/libtool.m4 b/contrib/gcc/libtool.m4 deleted file mode 100644 index aa7e62a..0000000 --- a/contrib/gcc/libtool.m4 +++ /dev/null @@ -1,854 +0,0 @@ -## libtool.m4 - Configure libtool for the host system. -*-Shell-script-*- -## Copyright 1996, 1997, 1998, 1999, 2000, 2001 -## Free Software Foundation, Inc. -## Originally by Gordon Matzigkeit , 1996 -## -## 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. -## -## As a special exception to the GNU General Public License, if you -## distribute this file as part of a program that contains a -## configuration script generated by Autoconf, you may include it under -## the same distribution terms that you use for the rest of that program. - -# serial 46 AC_PROG_LIBTOOL -AC_DEFUN([AC_PROG_LIBTOOL], -[AC_REQUIRE([_AC_PROG_LIBTOOL])dnl -dnl If AC_PROG_CXX has already been expanded, run AC_LIBTOOL_CXX -dnl immediately, otherwise, hook it in at the end of AC_PROG_CXX. - AC_PROVIDE_IFELSE([AC_PROG_CXX], - [AC_LIBTOOL_CXX], - [define([AC_PROG_CXX], defn([AC_PROG_CXX])[AC_LIBTOOL_CXX -])]) - -dnl Quote A][M_PROG_GCJ so that aclocal doesn't bring it in needlessly. -dnl If either AC_PROG_GCJ or A][M_PROG_GCJ have already been expanded, run -dnl AC_LIBTOOL_GCJ immediately, otherwise, hook it in at the end of both. - AC_PROVIDE_IFELSE([AC_PROG_GCJ], - [AC_LIBTOOL_GCJ], - [AC_PROVIDE_IFELSE([A][M_PROG_GCJ], - [AC_LIBTOOL_GCJ], - [AC_PROVIDE_IFELSE([LT_AC_PROG_GCJ], - [AC_LIBTOOL_GCJ], - [ifdef([AC_PROG_GCJ], - [define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[AC_LIBTOOL_GCJ -])]) - ifdef([A][M_PROG_GCJ], - [define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[AC_LIBTOOL_GCJ -])]) - ifdef([LT_AC_PROG_GCJ], - [define([LT_AC_PROG_GCJ], defn([LT_AC_PROG_GCJ])[AC_LIBTOOL_GCJ -])])])])])]) - -AC_DEFUN([_AC_PROG_LIBTOOL], -[AC_REQUIRE([AC_LIBTOOL_SETUP])dnl -AC_BEFORE([$0],[AC_LIBTOOL_CXX])dnl -AC_BEFORE([$0],[AC_LIBTOOL_GCJ])dnl - -# Save cache, so that ltconfig can load it -AC_CACHE_SAVE - -# Actually configure libtool. ac_aux_dir is where install-sh is found. -AR="$AR" LTCC="$CC" CC="$CC" CFLAGS="$CFLAGS" CPPFLAGS="$CPPFLAGS" \ -MAGIC_CMD="$MAGIC_CMD" LD="$LD" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \ -LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" STRIP="$STRIP" \ -AS="$AS" DLLTOOL="$DLLTOOL" OBJDUMP="$OBJDUMP" \ -objext="$OBJEXT" exeext="$EXEEXT" reload_flag="$reload_flag" \ -deplibs_check_method="$deplibs_check_method" file_magic_cmd="$file_magic_cmd" \ -${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig --no-reexec \ -$libtool_flags --no-verify --build="$build" $ac_aux_dir/ltmain.sh $host \ -|| AC_MSG_ERROR([libtool configure failed]) - -# Reload cache, that may have been modified by ltconfig -AC_CACHE_LOAD - -# This can be used to rebuild libtool when needed -LIBTOOL_DEPS="$ac_aux_dir/ltconfig $ac_aux_dir/ltmain.sh $ac_aux_dir/ltcf-c.sh" - -# Always use our own libtool. -LIBTOOL='$(SHELL) $(top_builddir)/libtool' -AC_SUBST(LIBTOOL)dnl - -# Redirect the config.log output again, so that the ltconfig log is not -# clobbered by the next message. -exec 5>>./config.log -]) - -AC_DEFUN([AC_LIBTOOL_SETUP], -[AC_PREREQ(2.13)dnl -AC_REQUIRE([AC_ENABLE_SHARED])dnl -AC_REQUIRE([AC_ENABLE_STATIC])dnl -AC_REQUIRE([AC_ENABLE_FAST_INSTALL])dnl -AC_REQUIRE([AC_CANONICAL_HOST])dnl -AC_REQUIRE([AC_CANONICAL_BUILD])dnl -AC_REQUIRE([AC_PROG_CC])dnl -AC_REQUIRE([AC_PROG_LD])dnl -AC_REQUIRE([AC_PROG_LD_RELOAD_FLAG])dnl -AC_REQUIRE([AC_PROG_NM])dnl -AC_REQUIRE([AC_PROG_LN_S])dnl -AC_REQUIRE([AC_DEPLIBS_CHECK_METHOD])dnl -# Autoconf 2.13's AC_OBJEXT and AC_EXEEXT macros only works for C compilers! -AC_REQUIRE([AC_OBJEXT])dnl -AC_REQUIRE([AC_EXEEXT])dnl -dnl - -# Only perform the check for file, if the check method requires it -case $deplibs_check_method in -file_magic*) - if test "$file_magic_cmd" = '$MAGIC_CMD'; then - AC_PATH_MAGIC - fi - ;; -esac - -AC_CHECK_TOOL(RANLIB, ranlib, :) -AC_CHECK_TOOL(STRIP, strip, :) - -# Check for any special flags to pass to ltconfig. -libtool_flags="--cache-file=$cache_file" -test "$enable_shared" = no && libtool_flags="$libtool_flags --disable-shared" -test "$enable_static" = no && libtool_flags="$libtool_flags --disable-static" -test "$enable_fast_install" = no && libtool_flags="$libtool_flags --disable-fast-install" -test "$GCC" = yes && libtool_flags="$libtool_flags --with-gcc" -test "$lt_cv_prog_gnu_ld" = yes && libtool_flags="$libtool_flags --with-gnu-ld" -ifdef([AC_PROVIDE_AC_LIBTOOL_DLOPEN], -[libtool_flags="$libtool_flags --enable-dlopen"]) -ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL], -[libtool_flags="$libtool_flags --enable-win32-dll"]) -AC_ARG_ENABLE(libtool-lock, - [ --disable-libtool-lock avoid locking (might break parallel builds)]) -test "x$enable_libtool_lock" = xno && libtool_flags="$libtool_flags --disable-lock" -test x"$silent" = xyes && libtool_flags="$libtool_flags --silent" - -AC_ARG_WITH(pic, - [ --with-pic try to use only PIC/non-PIC objects [default=use both]], - pic_mode="$withval", pic_mode=default) -test x"$pic_mode" = xyes && libtool_flags="$libtool_flags --prefer-pic" -test x"$pic_mode" = xno && libtool_flags="$libtool_flags --prefer-non-pic" - -# Some flags need to be propagated to the compiler or linker for good -# libtool support. -case $host in -*-*-irix6*) - # Find out which ABI we are using. - echo '[#]line __oline__ "configure"' > conftest.$ac_ext - if AC_TRY_EVAL(ac_compile); then - case `/usr/bin/file conftest.$ac_objext` in - *32-bit*) - LD="${LD-ld} -32" - ;; - *N32*) - LD="${LD-ld} -n32" - ;; - *64-bit*) - LD="${LD-ld} -64" - ;; - esac - fi - rm -rf conftest* - ;; - -*-*-sco3.2v5*) - # On SCO OpenServer 5, we need -belf to get full-featured binaries. - SAVE_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS -belf" - AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf, - [AC_LANG_SAVE - AC_LANG_C - AC_TRY_LINK([],[],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no]) - AC_LANG_RESTORE]) - if test x"$lt_cv_cc_needs_belf" != x"yes"; then - # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf - CFLAGS="$SAVE_CFLAGS" - fi - ;; - -ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL], -[*-*-cygwin* | *-*-mingw* | *-*-pw32*) - AC_CHECK_TOOL(DLLTOOL, dlltool, false) - AC_CHECK_TOOL(AS, as, false) - AC_CHECK_TOOL(OBJDUMP, objdump, false) - - # recent cygwin and mingw systems supply a stub DllMain which the user - # can override, but on older systems we have to supply one - AC_CACHE_CHECK([if libtool should supply DllMain function], lt_cv_need_dllmain, - [AC_TRY_LINK([], - [extern int __attribute__((__stdcall__)) DllMain(void*, int, void*); - DllMain (0, 0, 0);], - [lt_cv_need_dllmain=no],[lt_cv_need_dllmain=yes])]) - - case $host/$CC in - *-*-cygwin*/gcc*-mno-cygwin*|*-*-mingw*) - # old mingw systems require "-dll" to link a DLL, while more recent ones - # require "-mdll" - SAVE_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS -mdll" - AC_CACHE_CHECK([how to link DLLs], lt_cv_cc_dll_switch, - [AC_TRY_LINK([], [], [lt_cv_cc_dll_switch=-mdll],[lt_cv_cc_dll_switch=-dll])]) - CFLAGS="$SAVE_CFLAGS" ;; - *-*-cygwin* | *-*-pw32*) - # cygwin systems need to pass --dll to the linker, and not link - # crt.o which will require a WinMain@16 definition. - lt_cv_cc_dll_switch="-Wl,--dll -nostartfiles" ;; - esac - ;; - ]) -esac -]) - -# AC_LIBTOOL_DLOPEN - enable checks for dlopen support -AC_DEFUN([AC_LIBTOOL_DLOPEN], [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])]) - -# AC_LIBTOOL_WIN32_DLL - declare package support for building win32 dll's -AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [AC_BEFORE([$0], [AC_LIBTOOL_SETUP])]) - -# AC_ENABLE_SHARED - implement the --enable-shared flag -# Usage: AC_ENABLE_SHARED[(DEFAULT)] -# Where DEFAULT is either `yes' or `no'. If omitted, it defaults to -# `yes'. -AC_DEFUN([AC_ENABLE_SHARED], -[define([AC_ENABLE_SHARED_DEFAULT], ifelse($1, no, no, yes))dnl -AC_ARG_ENABLE(shared, -changequote(<<, >>)dnl -<< --enable-shared[=PKGS] build shared libraries [default=>>AC_ENABLE_SHARED_DEFAULT], -changequote([, ])dnl -[p=${PACKAGE-default} -case $enableval in -yes) enable_shared=yes ;; -no) enable_shared=no ;; -*) - enable_shared=no - # Look at the argument we got. We use all the common list separators. - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:," - for pkg in $enableval; do - if test "X$pkg" = "X$p"; then - enable_shared=yes - fi - done - IFS="$ac_save_ifs" - ;; -esac], -enable_shared=AC_ENABLE_SHARED_DEFAULT)dnl -]) - -# AC_DISABLE_SHARED - set the default shared flag to --disable-shared -AC_DEFUN([AC_DISABLE_SHARED], [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl -AC_ENABLE_SHARED(no)]) - -# AC_ENABLE_STATIC - implement the --enable-static flag -# Usage: AC_ENABLE_STATIC[(DEFAULT)] -# Where DEFAULT is either `yes' or `no'. If omitted, it defaults to -# `yes'. -AC_DEFUN([AC_ENABLE_STATIC], -[define([AC_ENABLE_STATIC_DEFAULT], ifelse($1, no, no, yes))dnl -AC_ARG_ENABLE(static, -changequote(<<, >>)dnl -<< --enable-static[=PKGS] build static libraries [default=>>AC_ENABLE_STATIC_DEFAULT], -changequote([, ])dnl -[p=${PACKAGE-default} -case $enableval in -yes) enable_static=yes ;; -no) enable_static=no ;; -*) - enable_static=no - # Look at the argument we got. We use all the common list separators. - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:," - for pkg in $enableval; do - if test "X$pkg" = "X$p"; then - enable_static=yes - fi - done - IFS="$ac_save_ifs" - ;; -esac], -enable_static=AC_ENABLE_STATIC_DEFAULT)dnl -]) - -# AC_DISABLE_STATIC - set the default static flag to --disable-static -AC_DEFUN([AC_DISABLE_STATIC], -[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl -AC_ENABLE_STATIC(no)]) - - -# AC_ENABLE_FAST_INSTALL - implement the --enable-fast-install flag -# Usage: AC_ENABLE_FAST_INSTALL[(DEFAULT)] -# Where DEFAULT is either `yes' or `no'. If omitted, it defaults to -# `yes'. -AC_DEFUN([AC_ENABLE_FAST_INSTALL], -[define([AC_ENABLE_FAST_INSTALL_DEFAULT], ifelse($1, no, no, yes))dnl -AC_ARG_ENABLE(fast-install, -changequote(<<, >>)dnl -<< --enable-fast-install[=PKGS] optimize for fast installation [default=>>AC_ENABLE_FAST_INSTALL_DEFAULT], -changequote([, ])dnl -[p=${PACKAGE-default} -case $enableval in -yes) enable_fast_install=yes ;; -no) enable_fast_install=no ;; -*) - enable_fast_install=no - # Look at the argument we got. We use all the common list separators. - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:," - for pkg in $enableval; do - if test "X$pkg" = "X$p"; then - enable_fast_install=yes - fi - done - IFS="$ac_save_ifs" - ;; -esac], -enable_fast_install=AC_ENABLE_FAST_INSTALL_DEFAULT)dnl -]) - -# AC_DISABLE_FAST_INSTALL - set the default to --disable-fast-install -AC_DEFUN([AC_DISABLE_FAST_INSTALL], -[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl -AC_ENABLE_FAST_INSTALL(no)]) - -# AC_LIBTOOL_PICMODE - implement the --with-pic flag -# Usage: AC_LIBTOOL_PICMODE[(MODE)] -# Where MODE is either `yes' or `no'. If omitted, it defaults to -# `both'. -AC_DEFUN([AC_LIBTOOL_PICMODE], -[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl -pic_mode=ifelse($#,1,$1,default)]) - - -# AC_PATH_TOOL_PREFIX - find a file program which can recognise shared library -AC_DEFUN([AC_PATH_TOOL_PREFIX], -[AC_MSG_CHECKING([for $1]) -AC_CACHE_VAL(lt_cv_path_MAGIC_CMD, -[case $MAGIC_CMD in - /*) - lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path. - ;; - ?:/*) - lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a dos path. - ;; - *) - ac_save_MAGIC_CMD="$MAGIC_CMD" - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" -dnl $ac_dummy forces splitting on constant user-supplied paths. -dnl POSIX.2 word splitting is done only on the output of word expansions, -dnl not every word. This closes a longstanding sh security hole. - ac_dummy="ifelse([$2], , $PATH, [$2])" - for ac_dir in $ac_dummy; do - test -z "$ac_dir" && ac_dir=. - if test -f $ac_dir/$1; then - lt_cv_path_MAGIC_CMD="$ac_dir/$1" - if test -n "$file_magic_test_file"; then - case $deplibs_check_method in - "file_magic "*) - file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`" - MAGIC_CMD="$lt_cv_path_MAGIC_CMD" - if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | - egrep "$file_magic_regex" > /dev/null; then - : - else - cat <&2 - -*** Warning: the command libtool uses to detect shared libraries, -*** $file_magic_cmd, produces output that libtool cannot recognize. -*** The result is that libtool may fail to recognize shared libraries -*** as such. This will affect the creation of libtool libraries that -*** depend on shared libraries, but programs linked with such libtool -*** libraries will work regardless of this problem. Nevertheless, you -*** may want to report the problem to your system manager and/or to -*** bug-libtool@gnu.org - -EOF - fi ;; - esac - fi - break - fi - done - IFS="$ac_save_ifs" - MAGIC_CMD="$ac_save_MAGIC_CMD" - ;; -esac]) -MAGIC_CMD="$lt_cv_path_MAGIC_CMD" -if test -n "$MAGIC_CMD"; then - AC_MSG_RESULT($MAGIC_CMD) -else - AC_MSG_RESULT(no) -fi -]) - - -# AC_PATH_MAGIC - find a file program which can recognise a shared library -AC_DEFUN([AC_PATH_MAGIC], -[AC_REQUIRE([AC_CHECK_TOOL_PREFIX])dnl -AC_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin:$PATH) -if test -z "$lt_cv_path_MAGIC_CMD"; then - if test -n "$ac_tool_prefix"; then - AC_PATH_TOOL_PREFIX(file, /usr/bin:$PATH) - else - MAGIC_CMD=: - fi -fi -]) - - -# AC_PROG_LD - find the path to the GNU or non-GNU linker -AC_DEFUN([AC_PROG_LD], -[AC_ARG_WITH(gnu-ld, -[ --with-gnu-ld assume the C compiler uses GNU ld [default=no]], -test "$withval" = no || with_gnu_ld=yes, with_gnu_ld=no) -AC_REQUIRE([AC_PROG_CC])dnl -AC_REQUIRE([AC_CANONICAL_HOST])dnl -AC_REQUIRE([AC_CANONICAL_BUILD])dnl -ac_prog=ld -if test "$GCC" = yes; then - # Check if gcc -print-prog-name=ld gives a path. - AC_MSG_CHECKING([for ld used by GCC]) - case $host in - *-*-mingw*) - # gcc leaves a trailing carriage return which upsets mingw - ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; - *) - ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; - esac - case $ac_prog in - # Accept absolute paths. - [[\\/]* | [A-Za-z]:[\\/]*)] - re_direlt=['/[^/][^/]*/\.\./'] - # Canonicalize the path of ld - ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'` - while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do - ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"` - done - test -z "$LD" && LD="$ac_prog" - ;; - "") - # If it fails, then pretend we aren't using GCC. - ac_prog=ld - ;; - *) - # If it is relative, then search for the first ld in PATH. - with_gnu_ld=unknown - ;; - esac -elif test "$with_gnu_ld" = yes; then - AC_MSG_CHECKING([for GNU ld]) -else - AC_MSG_CHECKING([for non-GNU ld]) -fi -AC_CACHE_VAL(lt_cv_path_LD, -[if test -z "$LD"; then - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}" - for ac_dir in $PATH; do - test -z "$ac_dir" && ac_dir=. - if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then - lt_cv_path_LD="$ac_dir/$ac_prog" - # Check to see if the program is GNU ld. I'd rather use --version, - # but apparently some GNU ld's only accept -v. - # Break only if it was the GNU/non-GNU ld that we prefer. - if "$lt_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then - test "$with_gnu_ld" != no && break - else - test "$with_gnu_ld" != yes && break - fi - fi - done - IFS="$ac_save_ifs" -else - lt_cv_path_LD="$LD" # Let the user override the test with a path. -fi]) -LD="$lt_cv_path_LD" -if test -n "$LD"; then - AC_MSG_RESULT($LD) -else - AC_MSG_RESULT(no) -fi -test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH]) -AC_PROG_LD_GNU -]) - -AC_DEFUN([AC_PROG_LD_GNU], -[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld, -[# I'd rather use --version here, but apparently some GNU ld's only accept -v. -if $LD -v 2>&1 &5; then - lt_cv_prog_gnu_ld=yes -else - lt_cv_prog_gnu_ld=no -fi]) -with_gnu_ld=$lt_cv_prog_gnu_ld -]) - -# AC_PROG_LD_RELOAD_FLAG - find reload flag for linker -# -- PORTME Some linkers may need a different reload flag. -AC_DEFUN([AC_PROG_LD_RELOAD_FLAG], -[AC_CACHE_CHECK([for $LD option to reload object files], lt_cv_ld_reload_flag, -[lt_cv_ld_reload_flag='-r']) -reload_flag=$lt_cv_ld_reload_flag -test -n "$reload_flag" && reload_flag=" $reload_flag" -]) - -# AC_DEPLIBS_CHECK_METHOD - how to check for library dependencies -# -- PORTME fill in with the dynamic library characteristics -AC_DEFUN([AC_DEPLIBS_CHECK_METHOD], -[AC_CACHE_CHECK([how to recognise dependant libraries], -lt_cv_deplibs_check_method, -[lt_cv_file_magic_cmd='$MAGIC_CMD' -lt_cv_file_magic_test_file= -lt_cv_deplibs_check_method='unknown' -# Need to set the preceding variable on all platforms that support -# interlibrary dependencies. -# 'none' -- dependencies not supported. -# `unknown' -- same as none, but documents that we really don't know. -# 'pass_all' -- all dependencies passed with no checks. -# 'test_compile' -- check by making test program. -# 'file_magic [regex]' -- check by looking for files in library path -# which responds to the $file_magic_cmd with a given egrep regex. -# If you have `file' or equivalent on your system and you're not sure -# whether `pass_all' will *always* work, you probably want this one. - -case $host_os in -aix*) - lt_cv_deplibs_check_method=pass_all - ;; - -beos*) - lt_cv_deplibs_check_method=pass_all - ;; - -bsdi4*) - lt_cv_deplibs_check_method=['file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib)'] - lt_cv_file_magic_cmd='/usr/bin/file -L' - lt_cv_file_magic_test_file=/shlib/libc.so - ;; - -cygwin* | mingw* |pw32*) - lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?' - lt_cv_file_magic_cmd='$OBJDUMP -f' - ;; - -darwin* | rhapsody*) - lt_cv_deplibs_check_method='file_magic Mach-O dynamically linked shared library' - lt_cv_file_magic_cmd='/usr/bin/file -L' - case "$host_os" in - rhapsody* | darwin1.[012]) - lt_cv_file_magic_test_file='/System/Library/Frameworks/System.framework/System' - ;; - *) # Darwin 1.3 on - lt_cv_file_magic_test_file='/usr/lib/libSystem.dylib' - ;; - esac - ;; - -freebsd* ) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - case $host_cpu in - i*86 ) - # Not sure whether the presence of OpenBSD here was a mistake. - # Let's accept both of them until this is cleared up. - lt_cv_deplibs_check_method=['file_magic (FreeBSD|OpenBSD)/i[3-9]86 (compact )?demand paged shared library'] - lt_cv_file_magic_cmd=/usr/bin/file - lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` - ;; - esac - else - lt_cv_deplibs_check_method=pass_all - fi - ;; - -gnu*) - lt_cv_deplibs_check_method=pass_all - ;; - -hpux10.20*|hpux11*) - lt_cv_deplibs_check_method=['file_magic (s[0-9][0-9][0-9]|PA-RISC[0-9].[0-9]) shared library'] - lt_cv_file_magic_cmd=/usr/bin/file - lt_cv_file_magic_test_file=/usr/lib/libc.sl - ;; - -irix5* | irix6*) - case $host_os in - irix5*) - # this will be overridden with pass_all, but let us keep it just in case - lt_cv_deplibs_check_method="file_magic ELF 32-bit MSB dynamic lib MIPS - version 1" - ;; - *) - case $LD in - *-32|*"-32 ") libmagic=32-bit;; - *-n32|*"-n32 ") libmagic=N32;; - *-64|*"-64 ") libmagic=64-bit;; - *) libmagic=never-match;; - esac - # this will be overridden with pass_all, but let us keep it just in case - lt_cv_deplibs_check_method=["file_magic ELF ${libmagic} MSB mips-[1234] dynamic lib MIPS - version 1"] - ;; - esac - lt_cv_file_magic_test_file=`echo /lib${libsuff}/libc.so*` - lt_cv_deplibs_check_method=pass_all - ;; - -# This must be Linux ELF. -linux-gnu*) - case $host_cpu in - alpha* | hppa* | i*86 | powerpc* | sparc* | ia64* ) - lt_cv_deplibs_check_method=pass_all ;; - *) - # glibc up to 2.1.1 does not perform some relocations on ARM - lt_cv_deplibs_check_method=['file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )'] ;; - esac - lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` - ;; - -netbsd*) - if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then - [lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'] - else - [lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so$'] - fi - ;; - -newsos6) - [lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (executable|dynamic lib)'] - lt_cv_file_magic_cmd=/usr/bin/file - lt_cv_file_magic_test_file=/usr/lib/libnls.so - ;; - -osf3* | osf4* | osf5*) - # this will be overridden with pass_all, but let us keep it just in case - lt_cv_deplibs_check_method='file_magic COFF format alpha shared library' - lt_cv_file_magic_test_file=/shlib/libc.so - lt_cv_deplibs_check_method=pass_all - ;; - -sco3.2v5*) - lt_cv_deplibs_check_method=pass_all - ;; - -solaris*) - lt_cv_deplibs_check_method=pass_all - lt_cv_file_magic_test_file=/lib/libc.so - ;; - -[sysv5uw[78]* | sysv4*uw2*)] - lt_cv_deplibs_check_method=pass_all - ;; - -sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) - case $host_vendor in - ncr) - lt_cv_deplibs_check_method=pass_all - ;; - motorola) - lt_cv_deplibs_check_method=['file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib) M[0-9][0-9]* Version [0-9]'] - lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*` - ;; - esac - ;; -esac -]) -file_magic_cmd=$lt_cv_file_magic_cmd -deplibs_check_method=$lt_cv_deplibs_check_method -]) - - -# AC_PROG_NM - find the path to a BSD-compatible name lister -AC_DEFUN([AC_PROG_NM], -[AC_MSG_CHECKING([for BSD-compatible nm]) -AC_CACHE_VAL(lt_cv_path_NM, -[if test -n "$NM"; then - # Let the user override the test. - lt_cv_path_NM="$NM" -else - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}" - for ac_dir in $PATH /usr/ccs/bin /usr/ucb /bin; do - test -z "$ac_dir" && ac_dir=. - tmp_nm=$ac_dir/${ac_tool_prefix}nm - if test -f $tmp_nm || test -f $tmp_nm$ac_exeext ; then - # Check to see if the nm accepts a BSD-compat flag. - # Adding the `sed 1q' prevents false positives on HP-UX, which says: - # nm: unknown option "B" ignored - # Tru64's nm complains that /dev/null is an invalid object file - if ($tmp_nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep '(/dev/null|Invalid file or object type)' >/dev/null; then - lt_cv_path_NM="$tmp_nm -B" - break - elif ($tmp_nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then - lt_cv_path_NM="$tmp_nm -p" - break - else - lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but - continue # so that we can try to find one that supports BSD flags - fi - fi - done - IFS="$ac_save_ifs" - test -z "$lt_cv_path_NM" && lt_cv_path_NM=nm -fi]) -NM="$lt_cv_path_NM" -AC_MSG_RESULT([$NM]) -]) - -# AC_CHECK_LIBM - check for math library -AC_DEFUN([AC_CHECK_LIBM], -[AC_REQUIRE([AC_CANONICAL_HOST])dnl -LIBM= -case $host in -*-*-beos* | *-*-cygwin* | *-*-pw32*) - # These system don't have libm - ;; -*-ncr-sysv4.3*) - AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw") - AC_CHECK_LIB(m, main, LIBM="$LIBM -lm") - ;; -*) - AC_CHECK_LIB(m, main, LIBM="-lm") - ;; -esac -]) - -# AC_LIBLTDL_CONVENIENCE[(dir)] - sets LIBLTDL to the link flags for -# the libltdl convenience library and INCLTDL to the include flags for -# the libltdl header and adds --enable-ltdl-convenience to the -# configure arguments. Note that LIBLTDL and INCLTDL are not -# AC_SUBSTed, nor is AC_CONFIG_SUBDIRS called. If DIR is not -# provided, it is assumed to be `libltdl'. LIBLTDL will be prefixed -# with '${top_builddir}/' and INCLTDL will be prefixed with -# '${top_srcdir}/' (note the single quotes!). If your package is not -# flat and you're not using automake, define top_builddir and -# top_srcdir appropriately in the Makefiles. -AC_DEFUN([AC_LIBLTDL_CONVENIENCE], -[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl - case $enable_ltdl_convenience in - no) AC_MSG_ERROR([this package needs a convenience libltdl]) ;; - "") enable_ltdl_convenience=yes - ac_configure_args="$ac_configure_args --enable-ltdl-convenience" ;; - esac - LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdlc.la - INCLTDL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl']) -]) - -# AC_LIBLTDL_INSTALLABLE[(dir)] - sets LIBLTDL to the link flags for -# the libltdl installable library and INCLTDL to the include flags for -# the libltdl header and adds --enable-ltdl-install to the configure -# arguments. Note that LIBLTDL and INCLTDL are not AC_SUBSTed, nor is -# AC_CONFIG_SUBDIRS called. If DIR is not provided and an installed -# libltdl is not found, it is assumed to be `libltdl'. LIBLTDL will -# be prefixed with '${top_builddir}/' and INCLTDL will be prefixed -# with '${top_srcdir}/' (note the single quotes!). If your package is -# not flat and you're not using automake, define top_builddir and -# top_srcdir appropriately in the Makefiles. -# In the future, this macro may have to be called after AC_PROG_LIBTOOL. -AC_DEFUN([AC_LIBLTDL_INSTALLABLE], -[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl - AC_CHECK_LIB(ltdl, main, - [test x"$enable_ltdl_install" != xyes && enable_ltdl_install=no], - [if test x"$enable_ltdl_install" = xno; then - AC_MSG_WARN([libltdl not installed, but installation disabled]) - else - enable_ltdl_install=yes - fi - ]) - if test x"$enable_ltdl_install" = x"yes"; then - ac_configure_args="$ac_configure_args --enable-ltdl-install" - LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdl.la - INCLTDL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl']) - else - ac_configure_args="$ac_configure_args --enable-ltdl-install=no" - LIBLTDL="-lltdl" - INCLTDL= - fi -]) - -# If this macro is not defined by Autoconf, define it here. -ifdef([AC_PROVIDE_IFELSE], - [], - [define([AC_PROVIDE_IFELSE], - [ifdef([AC_PROVIDE_$1], - [$2], [$3])])]) - -# AC_LIBTOOL_CXX - enable support for C++ libraries -AC_DEFUN([AC_LIBTOOL_CXX], [AC_REQUIRE([_AC_LIBTOOL_CXX])]) - -AC_DEFUN([_AC_LIBTOOL_CXX], -[AC_REQUIRE([AC_PROG_CXX]) -AC_REQUIRE([AC_PROG_CXXCPP]) -LIBTOOL_DEPS=$LIBTOOL_DEPS" $ac_aux_dir/ltcf-cxx.sh" -lt_save_CC="$CC" -lt_save_CFLAGS="$CFLAGS" -dnl Make sure LTCC is set to the C compiler, i.e. set LTCC before CC -dnl is set to the C++ compiler. -AR="$AR" LTCC="$CC" CC="$CXX" CXX="$CXX" CFLAGS="$CXXFLAGS" CPPFLAGS="$CPPFLAGS" \ -MAGIC_CMD="$MAGIC_CMD" LD="$LD" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \ -LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" STRIP="$STRIP" \ -AS="$AS" DLLTOOL="$DLLTOOL" OBJDUMP="$OBJDUMP" \ -objext="$OBJEXT" exeext="$EXEEXT" reload_flag="$reload_flag" \ -deplibs_check_method="$deplibs_check_method" \ -file_magic_cmd="$file_magic_cmd" \ -${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig -o libtool $libtool_flags \ ---build="$build" --add-tag=CXX $ac_aux_dir/ltcf-cxx.sh $host \ -|| AC_MSG_ERROR([libtool tag configuration failed]) -CC="$lt_save_CC" -CFLAGS="$lt_save_CFLAGS" - -# Redirect the config.log output again, so that the ltconfig log is not -# clobbered by the next message. -exec 5>>./config.log -]) - -# AC_LIBTOOL_GCJ - enable support for GCJ libraries -AC_DEFUN([AC_LIBTOOL_GCJ],[AC_REQUIRE([_AC_LIBTOOL_GCJ])]) - -AC_DEFUN([_AC_LIBTOOL_GCJ], -[AC_REQUIRE([AC_PROG_LIBTOOL]) -AC_PROVIDE_IFELSE([AC_PROG_GCJ],[], - [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],[], - [AC_PROVIDE_IFELSE([LT_AC_PROG_GCJ],[], - [ifdef([AC_PROG_GCJ],[AC_REQUIRE([AC_PROG_GCJ])], - [ifdef([A][M_PROG_GCJ],[AC_REQUIRE([A][M_PROG_GCJ])], - [AC_REQUIRE([A][C_PROG_GCJ_OR_A][M_PROG_GCJ])])])])])]) -LIBTOOL_DEPS=$LIBTOOL_DEPS" $ac_aux_dir/ltcf-gcj.sh" -lt_save_CC="$CC" -lt_save_CFLAGS="$CFLAGS" -dnl Make sure LTCC is set to the C compiler, i.e. set LTCC before CC -dnl is set to the C++ compiler. -AR="$AR" LTCC="$CC" CC="$GCJ" CFLAGS="$GCJFLAGS" CPPFLAGS="$CPPFLAGS" \ -MAGIC_CMD="$MAGIC_CMD" LD="$LD" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \ -LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" STRIP="$STRIP" \ -AS="$AS" DLLTOOL="$DLLTOOL" OBJDUMP="$OBJDUMP" \ -objext="$OBJEXT" exeext="$EXEEXT" reload_flag="$reload_flag" \ -deplibs_check_method="$deplibs_check_method" \ -file_magic_cmd="$file_magic_cmd" \ -${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig -o libtool $libtool_flags \ ---build="$build" --add-tag=GCJ $ac_aux_dir/ltcf-gcj.sh $host \ -|| AC_MSG_ERROR([libtool tag configuration failed]) -CC="$lt_save_CC" -CFLAGS="$lt_save_CFLAGS" - -# Redirect the config.log output again, so that the ltconfig log is not -# clobbered by the next message. -exec 5>>./config.log -]) - -dnl old names -AC_DEFUN([AM_PROG_LIBTOOL], [AC_PROG_LIBTOOL]) -AC_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)]) -AC_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)]) -AC_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)]) -AC_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)]) -AC_DEFUN([AM_PROG_LD], [AC_PROG_LD]) -AC_DEFUN([AM_PROG_NM], [AC_PROG_NM]) - -dnl This is just to silence aclocal about the macro not being used -ifelse([AC_DISABLE_FAST_INSTALL])dnl - -AC_DEFUN([LT_AC_PROG_GCJ], -[AC_CHECK_TOOL(GCJ, gcj, no) - test "x${GCJFLAGS+set}" = xset || GCJFLAGS="-g -O2" - AC_SUBST(GCJFLAGS) -]) diff --git a/contrib/gcc/ltcf-c.sh b/contrib/gcc/ltcf-c.sh deleted file mode 100644 index f11a0cf..0000000 --- a/contrib/gcc/ltcf-c.sh +++ /dev/null @@ -1,815 +0,0 @@ -#### This script is meant to be sourced by ltconfig. - -# ltcf-c.sh - Create a C compiler specific configuration -# -# Copyright (C) 1996-2000, 2001 Free Software Foundation, Inc. -# Originally by Gordon Matzigkeit , 1996 -# -# This file 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. -# -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. - - -# Source file extension for C test sources. -ac_ext=c - -# Object file extension for compiled C test sources. -objext=o - -# Code to be used in simple compile tests -lt_simple_compile_test_code="int some_variable = 0;" - -# Code to be used in simple link tests -lt_simple_link_test_code='main(){return(0);}' - -## Linker Characteristics -case $host_os in -cygwin* | mingw*) - # FIXME: the MSVC++ port hasn't been tested in a loooong time - # When not using gcc, we currently assume that we are using - # Microsoft Visual C++. - if test "$with_gcc" != yes; then - with_gnu_ld=no - fi - ;; - -esac - -ld_shlibs=yes -if test "$with_gnu_ld" = yes; then - # If archive_cmds runs LD, not CC, wlarc should be empty - wlarc='${wl}' - - # See if GNU ld supports shared libraries. - case $host_os in - aix3* | aix4* | aix5*) - # On AIX/PPC, the GNU linker is very broken - if test "$host_cpu" != ia64; then - ld_shlibs=no - cat <&2 - -*** Warning: the GNU linker, at least up to release 2.9.1, is reported -*** to be unable to reliably create shared libraries on AIX. -*** Therefore, libtool is disabling shared libraries support. If you -*** really care for shared libraries, you may want to modify your PATH -*** so that a non-GNU linker is found, and then restart. - -EOF - fi - ;; - - amigaos*) - archive_cmds='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' - hardcode_libdir_flag_spec='-L$libdir' - hardcode_minus_L=yes - - # Samuel A. Falvo II reports - # that the semantics of dynamic libraries on AmigaOS, at least up - # to version 4, is to share data among multiple programs linked - # with the same dynamic library. Since this doesn't match the - # behavior of shared libraries on other platforms, we can use - # them. - ld_shlibs=no - ;; - - beos*) - if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then - allow_undefined_flag=unsupported - # Joseph Beckenbach says some releases of gcc - # support --undefined. This deserves some investigation. FIXME - archive_cmds='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - else - ld_shlibs=no - fi - ;; - - cygwin* | mingw*) - # hardcode_libdir_flag_spec is actually meaningless, as there is - # no search path for DLLs. - hardcode_libdir_flag_spec='-L$libdir' - allow_undefined_flag=unsupported - always_export_symbols=yes - - extract_expsyms_cmds='test -f $output_objdir/impgen.c || \ - sed -e "/^# \/\* impgen\.c starts here \*\//,/^# \/\* impgen.c ends here \*\// { s/^# //; p; }" -e d < $0 > $output_objdir/impgen.c~ - test -f $output_objdir/impgen.exe || (cd $output_objdir && \ - if test "x$HOST_CC" != "x" ; then $HOST_CC -o impgen impgen.c ; \ - else $CC -o impgen impgen.c ; fi)~ - $output_objdir/impgen $dir/$soroot > $output_objdir/$soname-def' - - old_archive_from_expsyms_cmds='$DLLTOOL --as=$AS --dllname $soname --def $output_objdir/$soname-def --output-lib $output_objdir/$newlib' - - # cygwin and mingw dlls have different entry points and sets of symbols - # to exclude. - # FIXME: what about values for MSVC? - dll_entry=__cygwin_dll_entry@12 - dll_exclude_symbols=DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12~ - case $host_os in - mingw*) - # mingw values - dll_entry=_DllMainCRTStartup@12 - dll_exclude_symbols=DllMain@12,DllMainCRTStartup@12,DllEntryPoint@12~ - ;; - esac - - # mingw and cygwin differ, and it's simplest to just exclude the union - # of the two symbol sets. - dll_exclude_symbols=DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12,DllMainCRTStartup@12,DllEntryPoint@12 - - # recent cygwin and mingw systems supply a stub DllMain which the user - # can override, but on older systems we have to supply one (in ltdll.c) - if test "x$lt_cv_need_dllmain" = "xyes"; then - ltdll_obj='$output_objdir/$soname-ltdll.'"$objext " - ltdll_cmds='test -f $output_objdir/$soname-ltdll.c || sed -e "/^# \/\* ltdll\.c starts here \*\//,/^# \/\* ltdll.c ends here \*\// { s/^# //; p; }" -e d < $0 > $output_objdir/$soname-ltdll.c~ - test -f $output_objdir/$soname-ltdll.$objext || (cd $output_objdir && $CC -c $soname-ltdll.c)~' - else - ltdll_obj= - ltdll_cmds= - fi - - # Extract the symbol export list from an `--export-all' def file, - # then regenerate the def file from the symbol export list, so that - # the compiled dll only exports the symbol export list. - # Be careful not to strip the DATA tag left be newer dlltools. - export_symbols_cmds="$ltdll_cmds"' - $DLLTOOL --export-all --exclude-symbols '$dll_exclude_symbols' --output-def $output_objdir/$soname-def '$ltdll_obj'$libobjs $convenience~ - sed -e "1,/EXPORTS/d" -e "s/ @ [0-9]*//" -e "s/ *;.*$//" < $output_objdir/$soname-def > $export_symbols' - - # If the export-symbols file already is a .def file (1st line - # is EXPORTS), use it as is. - # If DATA tags from a recent dlltool are present, honour them! - archive_expsym_cmds='if test "x`head -1 $export_symbols`" = xEXPORTS; then - cp $export_symbols $output_objdir/$soname-def; - else - echo EXPORTS > $output_objdir/$soname-def; - _lt_hint=1; - cat $export_symbols | while read symbol; do - set dummy \$symbol; - case \[$]# in - 2) echo " \[$]2 @ \$_lt_hint ; " >> $output_objdir/$soname-def;; - *) echo " \[$]2 @ \$_lt_hint \[$]3 ; " >> $output_objdir/$soname-def;; - esac; - _lt_hint=`expr 1 + \$_lt_hint`; - done; - fi~ - '"$ltdll_cmds"' - $CC -Wl,--base-file,$output_objdir/$soname-base '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags~ - $DLLTOOL --as=$AS --dllname $soname --exclude-symbols '$dll_exclude_symbols' --def $output_objdir/$soname-def --base-file $output_objdir/$soname-base --output-exp $output_objdir/$soname-exp~ - $CC -Wl,--base-file,$output_objdir/$soname-base $output_objdir/$soname-exp '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags~ - $DLLTOOL --as=$AS --dllname $soname --exclude-symbols '$dll_exclude_symbols' --def $output_objdir/$soname-def --base-file $output_objdir/$soname-base --output-exp $output_objdir/$soname-exp --output-lib $output_objdir/$libname.dll.a~ - $CC $output_objdir/$soname-exp '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags' - ;; - - darwin* | rhapsody*) - allow_undefined_flag='-undefined suppress' - archive_cmds='$CC `test .$module = .yes && echo -bundle || echo -dynamiclib` $allow_undefined_flag -o $lib $libobjs $deplibs $linkopts -install_name $rpath/$soname `test -n "$verstring" -a x$verstring != x0.0 && echo $verstring`' - # We need to add '_' to the symbols in $export_symbols first - #archive_expsym_cmds="$archive_cmds"' && strip -s $export_symbols' - hardcode_direct=yes - hardcode_shlibpath_var=no - whole_archive_flag_spec='-all_load $convenience' - ;; - - netbsd*) - if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then - archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib' - wlarc= - else - archive_cmds='$CC -shared -nodefaultlibs $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - archive_expsym_cmds='$CC -shared -nodefaultlibs $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' - fi - ;; - - solaris* | sysv5*) - if $LD -v 2>&1 | egrep 'BFD 2\.8' > /dev/null; then - ld_shlibs=no - cat <&2 - -*** Warning: The releases 2.8.* of the GNU linker cannot reliably -*** create shared libraries on Solaris systems. Therefore, libtool -*** is disabling shared libraries support. We urge you to upgrade GNU -*** binutils to release 2.9.1 or newer. Another option is to modify -*** your PATH or compiler configuration so that the native linker is -*** used, and then restart. - -EOF - elif $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then - archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' - else - ld_shlibs=no - fi - ;; - - sunos4*) - archive_cmds='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags' - wlarc= - hardcode_direct=yes - hardcode_shlibpath_var=no - ;; - - *) - if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then - archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' - else - ld_shlibs=no - fi - ;; - esac - - if test "$ld_shlibs" = yes; then - runpath_var=LD_RUN_PATH - hardcode_libdir_flag_spec='${wl}--rpath ${wl}$libdir' - export_dynamic_flag_spec='${wl}--export-dynamic' - case $host_os in - cygwin* | mingw*) - # dlltool doesn't understand --whole-archive et. al. - whole_archive_flag_spec= - ;; - *) - # ancient GNU ld didn't support --whole-archive et. al. - if $LD --help 2>&1 | egrep 'no-whole-archive' > /dev/null; then - whole_archive_flag_spec="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' - else - whole_archive_flag_spec= - fi - ;; - esac - fi -else - # PORTME fill in a description of your system's linker (not GNU ld) - case $host_os in - aix3*) - allow_undefined_flag=unsupported - always_export_symbols=yes - archive_expsym_cmds='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname' - # Note: this linker hardcodes the directories in LIBPATH if there - # are no directories specified by -L. - hardcode_minus_L=yes - if test "$with_gcc" = yes && test -z "$link_static_flag"; then - # Neither direct hardcoding nor static linking is supported with a - # broken collect2. - hardcode_direct=unsupported - fi - ;; - - aix4* | aix5*) - hardcode_direct=yes - hardcode_libdir_separator=':' - link_all_deplibs=yes - # When large executables or shared objects are built, AIX ld can - # have problems creating the table of contents. If linking a library - # or program results in "error TOC overflow" add -mminimal-toc to - # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not - # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. - if test "$with_gcc" = yes; then - case $host_os in aix4.[012]|aix4.[012].*) - # We only want to do this on AIX 4.2 and lower, the check - # below for broken collect2 doesn't work under 4.3+ - collect2name=`${CC} -print-prog-name=collect2` - if test -f "$collect2name" && \ - strings "$collect2name" | grep resolve_lib_name >/dev/null - then - # We have reworked collect2 - hardcode_direct=yes - else - # We have old collect2 - hardcode_direct=unsupported - # It fails to find uninstalled libraries when the uninstalled - # path is not listed in the libpath. Setting hardcode_minus_L - # to unsupported forces relinking - hardcode_minus_L=yes - hardcode_libdir_flag_spec='-L$libdir' - hardcode_libdir_separator= - fi - esac - shared_flag='-shared' - else - # not using gcc - if test "$host_cpu" = ia64; then - shared_flag='${wl}-G' - else - shared_flag='${wl}-bM:SRE' - fi - fi - - if test "$host_cpu" = ia64; then - # On IA64, the linker does run time linking by default, so we don't - # have to do anything special. - aix_use_runtimelinking=no - if test $with_gnu_ld = no; then - exp_sym_flag='-Bexport' - no_entry_flag="" - fi - else - # Test if we are trying to use run time linking, or normal AIX style linking. - # If -brtl is somewhere in LDFLAGS, we need to do run time linking. - aix_use_runtimelinking=no - for ld_flag in $LDFLAGS; do - if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl" ); then - aix_use_runtimelinking=yes - break - fi - done - exp_sym_flag='-bexport' - no_entry_flag='-bnoentry' - fi - # -bexpall does not export symbols beginning with underscore (_) - always_export_symbols=yes - if test "$aix_use_runtimelinking" = yes; then - # Warning - without using the other run time loading flags (-brtl), -berok will - # link without error, but may produce a broken library. - allow_undefined_flag=' ${wl}-berok' - hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:/usr/lib:/lib' - archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols" - else - if test "$host_cpu" = ia64; then - if test $with_gnu_ld = no; then - hardcode_libdir_flag_spec='${wl}-R $libdir:/usr/lib:/lib' - allow_undefined_flag="-z nodefs" - archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols" - fi - else - allow_undefined_flag=' ${wl}-berok' - # -bexpall does not export symbols beginning with underscore (_) - always_export_symbols=yes - # Exported symbols can be pulled into shared objects from archives - whole_archive_flag_spec=' ' - build_libtool_need_lc=yes - hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:/usr/lib:/lib' - # This is similar to how AIX traditionally builds it's shared libraries. - archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${wl}-bE:$export_symbols ${wl}-bnoentry${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname' - fi - fi - ;; - - amigaos*) - archive_cmds='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' - hardcode_libdir_flag_spec='-L$libdir' - hardcode_minus_L=yes - # see comment about different semantics on the GNU ld section - ld_shlibs=no - ;; - - cygwin* | mingw*) - # When not using gcc, we currently assume that we are using - # Microsoft Visual C++. - # hardcode_libdir_flag_spec is actually meaningless, as there is - # no search path for DLLs. - hardcode_libdir_flag_spec=' ' - allow_undefined_flag=unsupported - # Tell ltmain to make .lib files, not .a files. - libext=lib - # FIXME: Setting linknames here is a bad hack. - archive_cmds='$CC -o $lib $libobjs $compiler_flags `echo "$deplibs" | sed -e '\''s/ -lc$//'\''` -link -dll~linknames=' - # The linker will automatically build a .lib file if we build a DLL. - old_archive_from_new_cmds='true' - # FIXME: Should let the user specify the lib program. - old_archive_cmds='lib /OUT:$oldlib$oldobjs$old_deplibs' - fix_srcfile_path='`cygpath -w "$srcfile"`' - ;; - - freebsd1*) - ld_shlibs=no - ;; - - # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor - # support. Future versions do this automatically, but an explicit c++rt0.o - # does not break anything, and helps significantly (at the cost of a little - # extra space). - freebsd2.2*) - archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o' - hardcode_libdir_flag_spec='-R$libdir' - hardcode_direct=yes - hardcode_shlibpath_var=no - ;; - - # Unfortunately, older versions of FreeBSD 2 do not have this feature. - freebsd2*) - archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' - hardcode_direct=yes - hardcode_minus_L=yes - hardcode_shlibpath_var=no - ;; - - # FreeBSD 3 and greater uses gcc -shared to do shared libraries. - freebsd*) - archive_cmds='$CC -shared -o $lib $libobjs $deplibs $compiler_flags' - hardcode_libdir_flag_spec='-R$libdir' - hardcode_direct=yes - hardcode_shlibpath_var=no - ;; - - hpux9* | hpux10* | hpux11*) - if test $with_gcc = yes; then - case "$host_os" in - hpux9*) archive_cmds='$rm $output_objdir/$soname~$CC -shared -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' ;; - *) archive_cmds='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags' ;; - esac - else - case $host_os in - hpux9*) archive_cmds='$rm $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' ;; - *) archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' ;; - esac - fi - hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir' - hardcode_libdir_separator=: - hardcode_direct=yes - hardcode_minus_L=yes # Not in the search PATH, but as the default - # location of the library. - export_dynamic_flag_spec='${wl}-E' - ;; - - irix5* | irix6*) - if test "$with_gcc" = yes; then - archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib' - else - archive_cmds='$LD -shared $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib' - fi - hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' - hardcode_libdir_separator=: - link_all_deplibs=yes - ;; - - netbsd*) - if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then - archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out - else - archive_cmds='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF - fi - hardcode_libdir_flag_spec='-R$libdir' - hardcode_direct=yes - hardcode_shlibpath_var=no - ;; - - newsos6) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linkopts' - hardcode_direct=yes - hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' - hardcode_libdir_separator=: - hardcode_shlibpath_var=no - ;; - - openbsd*) - archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' - hardcode_libdir_flag_spec='-R$libdir' - hardcode_direct=yes - hardcode_shlibpath_var=no - ;; - - os2*) - hardcode_libdir_flag_spec='-L$libdir' - hardcode_minus_L=yes - allow_undefined_flag=unsupported - archive_cmds='$echo "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$echo "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~$echo DATA >> $output_objdir/$libname.def~$echo " SINGLE NONSHARED" >> $output_objdir/$libname.def~$echo EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def' - old_archive_from_new_cmds='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def' - ;; - - osf3*) - if test "$with_gcc" = yes; then - allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*' - archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib' - else - allow_undefined_flag=' -expect_unresolved \*' - archive_cmds='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib' - fi - hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' - hardcode_libdir_separator=: - ;; - - osf4* | osf5*) # as osf3* with the addition of -msym flag - if test "$with_gcc" = yes; then - allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*' - archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib' - hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' - else - allow_undefined_flag=' -expect_unresolved \*' - archive_cmds='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -msym -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib' - archive_expsym_cmds='for i in `cat $export_symbols`; do printf "-exported_symbol " >> $lib.exp; echo "\$i" >> $lib.exp; done; echo "-hidden">> $lib.exp~ - $LD -shared${allow_undefined_flag} -input $lib.exp $linker_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib~$rm $lib.exp' - - # cc supports -rpath directly - hardcode_libdir_flag_spec='-rpath $libdir' - fi - hardcode_libdir_separator=: - ;; - - sco3.2v5*) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_shlibpath_var=no - runpath_var=LD_RUN_PATH - hardcode_runpath_var=yes - ;; - - solaris*) - no_undefined_flag=' -z defs' - if test "$with_gcc" = yes; then - archive_cmds='$CC -shared ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' - archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ - $CC -shared ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags~$rm $lib.exp' - else - archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags' - archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ - $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp' - fi - hardcode_libdir_flag_spec='-R$libdir' - hardcode_shlibpath_var=no - case $host_os in - solaris2.[0-5] | solaris2.[0-5].*) ;; - *) # Supported since Solaris 2.6 (maybe 2.5.1?) - whole_archive_flag_spec='-z allextract$convenience -z defaultextract' ;; - esac - link_all_deplibs=yes - ;; - - sunos4*) - archive_cmds='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags' - hardcode_libdir_flag_spec='-L$libdir' - hardcode_direct=yes - hardcode_minus_L=yes - hardcode_shlibpath_var=no - ;; - - sysv4) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - runpath_var='LD_RUN_PATH' - hardcode_shlibpath_var=no - hardcode_direct=no #Motorola manual says yes, but my tests say they lie - ;; - - sysv4.3*) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_shlibpath_var=no - export_dynamic_flag_spec='-Bexport' - ;; - - sysv5*) - no_undefined_flag=' -z text' - # $CC -shared without GNU ld will not create a library from C++ - # object files and a static libstdc++, better avoid it by now - archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags' - archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ - $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp' - hardcode_libdir_flag_spec= - hardcode_shlibpath_var=no - runpath_var='LD_RUN_PATH' - ;; - - uts4*) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_libdir_flag_spec='-L$libdir' - hardcode_shlibpath_var=no - ;; - - dgux*) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_libdir_flag_spec='-L$libdir' - hardcode_shlibpath_var=no - ;; - - sysv4*MP*) - if test -d /usr/nec; then - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_shlibpath_var=no - runpath_var=LD_RUN_PATH - hardcode_runpath_var=yes - ld_shlibs=yes - fi - ;; - - sysv4.2uw2*) - archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags' - hardcode_direct=yes - hardcode_minus_L=no - hardcode_shlibpath_var=no - hardcode_runpath_var=yes - runpath_var=LD_RUN_PATH - ;; - - sysv5uw7* | unixware7*) - no_undefined_flag='${wl}-z ${wl}text' - if test "$GCC" = yes; then - archive_cmds='$CC -shared ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' - else - archive_cmds='$CC -G ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' - fi - runpath_var='LD_RUN_PATH' - hardcode_shlibpath_var=no - ;; - - *) - ld_shlibs=no - ;; - esac -fi - -## Compiler Characteristics: PIC flags, static flags, etc -if test "X${ac_cv_prog_cc_pic+set}" = Xset; then - : -else - ac_cv_prog_cc_pic= - ac_cv_prog_cc_shlib= - ac_cv_prog_cc_wl= - ac_cv_prog_cc_static= - ac_cv_prog_cc_no_builtin= - ac_cv_prog_cc_can_build_shared=$can_build_shared - - if test "$with_gcc" = yes; then - ac_cv_prog_cc_wl='-Wl,' - ac_cv_prog_cc_static='-static' - - case $host_os in - aix*) - # All AIX code is PIC. - if test "$host_cpu" = ia64; then - # AIX 5 now supports IA64 processor - lt_cv_prog_cc_static='-Bstatic' - else - lt_cv_prog_cc_static='-bnso -bI:/lib/syscalls.exp' - fi - ;; - amigaos*) - # FIXME: we need at least 68020 code to build shared libraries, but - # adding the `-m68020' flag to GCC prevents building anything better, - # like `-m68040'. - ac_cv_prog_cc_pic='-m68020 -resident32 -malways-restore-a4' - ;; - beos* | irix5* | irix6* | osf3* | osf4* | osf5*) - # PIC is the default for these OSes. - ;; - cygwin* | mingw* | os2*) - # This hack is so that the source file can tell whether it is being - # built for inclusion in a dll (and should export symbols for example). - ac_cv_prog_cc_pic='-DDLL_EXPORT' - ;; - darwin* | rhapsody*) - # PIC is the default on this platform - # Common symbols not allowed in MH_DYLIB files - lt_cv_prog_cc_pic='-fno-common' - ;; - *djgpp*) - # DJGPP does not support shared libraries at all - ac_cv_prog_cc_pic= - ;; - sysv4*MP*) - if test -d /usr/nec; then - ac_cv_prog_cc_pic=-Kconform_pic - fi - ;; - *) - ac_cv_prog_cc_pic='-fPIC' - ;; - esac - else - # PORTME Check for PIC flags for the system compiler. - case $host_os in - aix*) - # All AIX code is PIC. - ac_cv_prog_cc_static="$ac_cv_prog_cc_static ${ac_cv_prog_cc_wl}-lC" - ;; - - hpux9* | hpux10* | hpux11*) - # Is there a better ac_cv_prog_cc_static that works with the bundled CC? - ac_cv_prog_cc_wl='-Wl,' - ac_cv_prog_cc_static="${ac_cv_prog_cc_wl}-a ${ac_cv_prog_cc_wl}archive" - ac_cv_prog_cc_pic='+Z' - ;; - - irix5* | irix6*) - ac_cv_prog_cc_wl='-Wl,' - ac_cv_prog_cc_static='-non_shared' - # PIC (with -KPIC) is the default. - ;; - - cygwin* | mingw* | os2*) - # This hack is so that the source file can tell whether it is being - # built for inclusion in a dll (and should export symbols for example). - ac_cv_prog_cc_pic='-DDLL_EXPORT' - ;; - - newsos6) - ac_cv_prog_cc_pic='-KPIC' - ac_cv_prog_cc_static='-Bstatic' - ;; - - osf3* | osf4* | osf5*) - # All OSF/1 code is PIC. - ac_cv_prog_cc_wl='-Wl,' - ac_cv_prog_cc_static='-non_shared' - ;; - - sco3.2v5*) - ac_cv_prog_cc_pic='-Kpic' - ac_cv_prog_cc_static='-dn' - ac_cv_prog_cc_shlib='-belf' - ;; - - solaris*) - ac_cv_prog_cc_pic='-KPIC' - ac_cv_prog_cc_static='-Bstatic' - ac_cv_prog_cc_wl='-Wl,' - ;; - - sunos4*) - ac_cv_prog_cc_pic='-PIC' - ac_cv_prog_cc_static='-Bstatic' - ac_cv_prog_cc_wl='-Qoption ld ' - ;; - - sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) - ac_cv_prog_cc_pic='-KPIC' - ac_cv_prog_cc_static='-Bstatic' - ac_cv_prog_cc_wl='-Wl,' - ;; - - uts4*) - ac_cv_prog_cc_pic='-pic' - ac_cv_prog_cc_static='-Bstatic' - ;; - - sysv4*MP*) - if test -d /usr/nec ;then - ac_cv_prog_cc_pic='-Kconform_pic' - ac_cv_prog_cc_static='-Bstatic' - fi - ;; - - *) - ac_cv_prog_cc_can_build_shared=no - ;; - esac - fi - case "$host_os" in - # Platforms which do not suport PIC and -DPIC is meaningless - # on them: - *djgpp*) - ac_cv_prog_cc_pic= - ;; - *) - ac_cv_prog_cc_pic="$ac_cv_prog_cc_pic -DPIC" - ;; - esac -fi - -need_lc=yes -if test "$enable_shared" = yes && test "$with_gcc" = yes; then - case $archive_cmds in - *'~'*) - # FIXME: we may have to deal with multi-command sequences. - ;; - '$CC '*) - # Test whether the compiler implicitly links with -lc since on some - # systems, -lgcc has to come before -lc. If gcc already passes -lc - # to ld, don't add -lc before -lgcc. - echo $ac_n "checking whether -lc should be explicitly linked in... $ac_c" 1>&6 - if eval "test \"`echo '$''{'ac_cv_archive_cmds_needs_lc'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 - need_lc=$ac_cv_archive_cmds_needs_lc - else - $rm conftest* - echo "static int dummy;" > conftest.$ac_ext - if { (eval echo ltcf-c.sh:need_lc: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>conftest.err; }; then - # Append any warnings to the config.log. - cat conftest.err 1>&5 - soname=conftest - lib=conftest - libobjs=conftest.$objext - deplibs= - wl=$ac_cv_prog_cc_wl - compiler_flags=-v - linker_flags=-v - verstring= - output_objdir=. - libname=conftest - save_allow_undefined_flag=$allow_undefined_flag - allow_undefined_flag= - if { (eval echo ltcf-c.sh:need_lc: \"$archive_cmds\") 1>&5; (eval $archive_cmds) 2>&1 | grep " -lc " 1>&5 ; }; then - need_lc=no - fi - allow_undefined_flag=$save_allow_undefined_flag - else - cat conftest.err 1>&5 - fi - fi - $rm conftest* - echo "$ac_t$need_lc" 1>&6 - ;; - esac -fi -ac_cv_archive_cmds_needs_lc=$need_lc diff --git a/contrib/gcc/ltcf-cxx.sh b/contrib/gcc/ltcf-cxx.sh deleted file mode 100644 index 22875d0..0000000 --- a/contrib/gcc/ltcf-cxx.sh +++ /dev/null @@ -1,1005 +0,0 @@ -#### This script is meant to be sourced by ltconfig. - -# ltcf-cxx.sh - Create a C++ compiler specific configuration -# -# Copyright (C) 1996-1999, 2000, 2001 Free Software Foundation, Inc. -# Originally by Gordon Matzigkeit , 1996 -# -# Original C++ support by:Gary V. Vaughan -# Alexandre Oliva -# Ossama Othman -# Thomas Thanner -# -# This file 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. -# -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. - - -# Source file extension for C++ test sources. -ac_ext=cc - -# Object file extension for compiled C++ test sources. -objext=o - -# Code to be used in simple compile tests -lt_simple_compile_test_code="int some_variable = 0;" - -# Code to be used in simple link tests -lt_simple_link_test_code='int main(int, char *[]) { return (0); }' - -# C++ compiler -CXX=${CXX-c++} - -# ltmain only uses $CC for tagged configurations so make sure $CC is set. -CC=${CC-"$CXX"} -CFLAGS=${CFLAGS-"$CXXFLAGS"} - -# Allow CC to be a program name with arguments. -set dummy $CC -compiler=$2 -cc_basename=`$echo X"$compiler" | $Xsed -e 's%^.*/%%'` - -# Check if we are using GNU gcc (taken/adapted from configure script) -# We need to check here since "--with-gcc" is set at configure time, -# not ltconfig time! -cat > conftest.$ac_ext <&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then - with_gcc=yes - - # Set up default GNU C++ configuration - - # Check if GNU C++ uses GNU ld as the underlying linker, since the - # archiving commands below assume that GNU ld is being used. - if eval "`$CC -print-prog-name=ld` --version 2>&1" | \ - egrep 'GNU ld' > /dev/null; then - with_gnu_ld=yes - - archive_cmds='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib' - archive_expsym_cmds='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' - - hardcode_libdir_flag_spec='${wl}--rpath ${wl}$libdir' - export_dynamic_flag_spec='${wl}--export-dynamic' - - # If archive_cmds runs LD, not CC, wlarc should be empty - # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to - # investigate it a little bit more. (MM) - wlarc='${wl}' - - # ancient GNU ld didn't support --whole-archive et. al. - if eval "`$CC -print-prog-name=ld` --help 2>&1" | \ - egrep 'no-whole-archive' > /dev/null; then - whole_archive_flag_spec="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' - else - whole_archive_flag_spec= - fi - else - with_gnu_ld=no - wlarc= - - # A generic and very simple default shared library creation - # command for GNU C++ for the case where it uses the native - # linker, instead of GNU ld. If possible, this setting should - # overridden to take advantage of the native linker features on - # the platform it is being used on. - archive_cmds='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib' - fi - - # Commands to make compiler produce verbose output that lists - # what "hidden" libraries, object files and flags are used when - # linking a shared library. - output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | egrep "\-L"' - -else - with_gcc=no - with_gnu_ld=no - wlarc= -fi - -# PORTME: fill in a description of your system's C++ link characteristics -case $host_os in - aix3*) - # FIXME: insert proper C++ library support - ld_shlibs=no - ;; - aix4* | aix5*) - archive_cmds='' - hardcode_direct=yes - hardcode_libdir_separator=':' - link_all_deplibs=yes - # When large executables or shared objects are built, AIX ld can - # have problems creating the table of contents. If linking a library - # or program results in "error TOC overflow" add -mminimal-toc to - # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not - # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. - if test "$with_gcc" = yes; then - case $host_os in aix4.[012]|aix4.[012].*) - # We only want to do this on AIX 4.2 and lower, the check - # below for broken collect2 doesn't work under 4.3+ - collect2name=`${CC} -print-prog-name=collect2` - if test -f "$collect2name" && \ - strings "$collect2name" | grep resolve_lib_name >/dev/null - then - # We have reworked collect2 - hardcode_direct=yes - else - # We have old collect2 - hardcode_direct=unsupported - # It fails to find uninstalled libraries when the uninstalled - # path is not listed in the libpath. Setting hardcode_minus_L - # to unsupported forces relinking - hardcode_minus_L=yes - hardcode_libdir_flag_spec='-L$libdir' - hardcode_libdir_separator= - fi - esac - shared_flag='-shared' - else - # not using gcc - if test "$host_cpu" = ia64; then - shared_flag='${wl}-G' - else - shared_flag='${wl}-bM:SRE' - fi - fi - - if test "$host_cpu" = ia64; then - # On IA64, the linker does run time linking by default, so we don't - # have to do anything special. - aix_use_runtimelinking=no - if test $with_gnu_ld = no; then - exp_sym_flag='-Bexport' - no_entry_flag="" - fi - else - # Test if we are trying to use run time linking, or normal AIX style linking. - # If -brtl is somewhere in LDFLAGS, we need to do run time linking. - aix_use_runtimelinking=no - for ld_flag in $LDFLAGS; do - if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl" ); then - aix_use_runtimelinking=yes - break - fi - done - exp_sym_flag='-bexport' - no_entry_flag='-bnoentry' - fi - # It seems that -bexpall does not export symbols beginning with - # underscore (_), so it is better to generate a list of symbols to export. - always_export_symbols=yes - if test "$aix_use_runtimelinking" = yes; then - hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:/usr/lib:/lib' - allow_undefined_flag=' -Wl,-G' - archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}-brtl \${wl}$exp_sym_flag:\$export_symbols" - else - if test "$host_cpu" = ia64; then - if test $with_gnu_ld = no; then - hardcode_libdir_flag_spec='${wl}-R $libdir:/usr/lib:/lib' - allow_undefined_flag="-z nodefs" - archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols" - fi - else - hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:/usr/lib:/lib' - # Warning - without using the other run time loading flags, -berok will - # link without error, but may produce a broken library. - no_undefined_flag=' ${wl}-bnoerok' - allow_undefined_flag=' ${wl}-berok' - # -bexpall does not export symbols beginning with underscore (_) - always_export_symbols=yes - # Exported symbols can be pulled into shared objects from archives - whole_archive_flag_spec=' ' - build_libtool_need_lc=yes - # This is similar to how AIX traditionally builds it's shared libraries. - archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${wl}-bE:$export_symbols ${wl}-bnoentry${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname' - fi - fi - ;; - chorus*) - case $cc_basename in - *) - # FIXME: insert proper C++ library support - ld_shlibs=no - ;; - esac - ;; - dgux*) - case $cc_basename in - ec++) - # FIXME: insert proper C++ library support - ld_shlibs=no - ;; - ghcx) - # Green Hills C++ Compiler - # FIXME: insert proper C++ library support - ld_shlibs=no - ;; - *) - # FIXME: insert proper C++ library support - ld_shlibs=no - ;; - esac - ;; - freebsd[12]*) - # C++ shared libraries reported to be fairly broken before switch to ELF - ld_shlibs=no - ;; - freebsd*) - # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF - # conventions - ld_shlibs=yes - ;; - gnu*) - ;; - hpux*) - if test $with_gnu_ld = no; then - hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir' - hardcode_libdir_separator=: - export_dynamic_flag_spec='${wl}-E' - fi - hardcode_direct=yes - hardcode_minus_L=yes # Not in the search PATH, but as the default - # location of the library. - - case $cc_basename in - CC) - # FIXME: insert proper C++ library support - ld_shlibs=no - ;; - aCC) - case $host_os in - hpux9*) archive_cmds='$rm $output_objdir/$soname~$CC -b ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' ;; - *) archive_cmds='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' ;; - esac - # Commands to make compiler produce verbose output that lists - # what "hidden" libraries, object files and flags are used when - # linking a shared library. - # - # There doesn't appear to be a way to prevent this compiler from - # explicitly linking system object files so we need to strip them - # from the output so that they don't get included in the library - # dependencies. - output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | egrep "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' - ;; - *) - if test $with_gcc = yes; then - if test $with_gnu_ld = no; then - case "$host_os" in - hpux9*) archive_cmds='$rm $output_objdir/$soname~$CC -shared -nostdlib -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' ;; - *) archive_cmds='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' ;; - esac - fi - else - # FIXME: insert proper C++ library support - ld_shlibs=no - fi - ;; - esac - ;; - irix5* | irix6*) - case $cc_basename in - CC) - # SGI C++ - archive_cmds='$CC -shared -all -multigot $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib' - - # Archives containing C++ object files must be created using - # "CC -ar", where "CC" is the IRIX C++ compiler. This is - # necessary to make sure instantiated templates are included - # in the archive. - old_archive_cmds='$CC -ar -WR,-u -o $oldlib $oldobjs' - ;; - *) - if test "$with_gcc" = yes; then - if test "$with_gnu_ld" = no; then - archive_cmds='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib' - else - archive_cmds='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -o $lib' - fi - fi - hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' - hardcode_libdir_separator=: - link_all_deplibs=yes - ;; - esac - ;; - linux*) - case $cc_basename in - KCC) - # Kuck and Associates, Inc. (KAI) C++ Compiler - - # KCC will only create a shared library if the output file - # ends with ".so" (or ".sl" for HP-UX), so rename the library - # to its proper name (with version) after linking. - archive_cmds='templib=`echo $lib | sed -e "s/\.so\..*/\.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib' - archive_expsym_cmds='templib=`echo $lib | sed -e "s/\.so\..*/\.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib ${wl}-retain-symbols-file,$export_symbols; mv \$templib $lib' - - # Commands to make compiler produce verbose output that lists - # what "hidden" libraries, object files and flags are used when - # linking a shared library. - # - # There doesn't appear to be a way to prevent this compiler from - # explicitly linking system object files so we need to strip them - # from the output so that they don't get included in the library - # dependencies. - output_verbose_link_cmd='templist=`$CC $CFLAGS -v conftest.$objext -o libconftest.so 2>&1 | egrep "ld"`; rm -f libconftest.so; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' - - hardcode_libdir_flag_spec='${wl}--rpath,$libdir' - export_dynamic_flag_spec='${wl}--export-dynamic' - - # Archives containing C++ object files must be created using - # "CC -Bstatic", where "CC" is the KAI C++ compiler. - old_archive_cmds='$CC -Bstatic -o $oldlib $oldobjs' - ;; - cxx) - # Compaq C++ - archive_cmds='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib' - archive_expsym_cmds='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib ${wl}-retain-symbols-file $wl$export_symbols' - - runpath_var=LD_RUN_PATH - hardcode_libdir_flag_spec='-rpath $libdir' - hardcode_libdir_separator=: - - # Commands to make compiler produce verbose output that lists - # what "hidden" libraries, object files and flags are used when - # linking a shared library. - # - # There doesn't appear to be a way to prevent this compiler from - # explicitly linking system object files so we need to strip them - # from the output so that they don't get included in the library - # dependencies. - output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "ld"`; templist=`echo $templist | sed "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' - ;; - esac - ;; - lynxos*) - # FIXME: insert proper C++ library support - ld_shlibs=no - ;; - m88k*) - # FIXME: insert proper C++ library support - ld_shlibs=no - ;; - mvs*) - case $cc_basename in - cxx) - # FIXME: insert proper C++ library support - ld_shlibs=no - ;; - *) - # FIXME: insert proper C++ library support - ld_shlibs=no - ;; - esac - ;; - netbsd*) - # NetBSD uses g++ - do we need to do anything? - ;; - osf3*) - case $cc_basename in - KCC) - # Kuck and Associates, Inc. (KAI) C++ Compiler - - # KCC will only create a shared library if the output file - # ends with ".so" (or ".sl" for HP-UX), so rename the library - # to its proper name (with version) after linking. - archive_cmds='templib=`echo $lib | sed -e "s/\.so\..*/\.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib' - - hardcode_libdir_flag_spec='${wl}-rpath,$libdir' - hardcode_libdir_separator=: - - # Archives containing C++ object files must be created using - # "CC -Bstatic", where "CC" is the KAI C++ compiler. - old_archive_cmds='$CC -Bstatic -o $oldlib $oldobjs' - - ;; - RCC) - # Rational C++ 2.4.1 - # FIXME: insert proper C++ library support - ld_shlibs=no - ;; - cxx) - allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*' - archive_cmds='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $soname `test -n "$verstring" && echo ${wl}-set_version $verstring` -update_registry ${objdir}/so_locations -o $lib' - - hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' - hardcode_libdir_separator=: - - # Commands to make compiler produce verbose output that lists - # what "hidden" libraries, object files and flags are used when - # linking a shared library. - # - # There doesn't appear to be a way to prevent this compiler from - # explicitly linking system object files so we need to strip them - # from the output so that they don't get included in the library - # dependencies. - output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "ld" | grep -v "ld:"`; templist=`echo $templist | sed "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' - ;; - *) - if test "$with_gcc" = yes && test "$with_gnu_ld" = no; then - allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*' - archive_cmds='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib' - - hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' - hardcode_libdir_separator=: - - # Commands to make compiler produce verbose output that lists - # what "hidden" libraries, object files and flags are used when - # linking a shared library. - output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | egrep "\-L"' - else - # FIXME: insert proper C++ library support - ld_shlibs=no - fi - ;; - esac - ;; - osf4* | osf5*) - case $cc_basename in - KCC) - # Kuck and Associates, Inc. (KAI) C++ Compiler - - # KCC will only create a shared library if the output file - # ends with ".so" (or ".sl" for HP-UX), so rename the library - # to its proper name (with version) after linking. - archive_cmds='templib=`echo $lib | sed -e "s/\.so\..*/\.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib' - - hardcode_libdir_flag_spec='${wl}-rpath,$libdir' - hardcode_libdir_separator=: - - # Archives containing C++ object files must be created using - # the KAI C++ compiler. - old_archive_cmds='$CC -o $oldlib $oldobjs' - ;; - RCC) - # Rational C++ 2.4.1 - # FIXME: insert proper C++ library support - ld_shlibs=no - ;; - cxx) - allow_undefined_flag=' -expect_unresolved \*' - archive_cmds='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib' - archive_expsym_cmds='for i in `cat $export_symbols`; do printf "-exported_symbol " >> $lib.exp; echo "\$i" >> $lib.exp; done~ - echo "-hidden">> $lib.exp~ - $CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname -Wl,-input -Wl,$lib.exp `test -n "$verstring" && echo -set_version $verstring` -update_registry $objdir/so_locations -o $lib~ - $rm $lib.exp' - - hardcode_libdir_flag_spec='-rpath $libdir' - hardcode_libdir_separator=: - - # Commands to make compiler produce verbose output that lists - # what "hidden" libraries, object files and flags are used when - # linking a shared library. - # - # There doesn't appear to be a way to prevent this compiler from - # explicitly linking system object files so we need to strip them - # from the output so that they don't get included in the library - # dependencies. - output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "ld" | grep -v "ld:"`; templist=`echo $templist | sed "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' - ;; - *) - if test "$with_gcc" = yes && test "$with_gnu_ld" = no; then - allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*' - archive_cmds='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib' - - hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' - hardcode_libdir_separator=: - - # Commands to make compiler produce verbose output that lists - # what "hidden" libraries, object files and flags are used when - # linking a shared library. - output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | egrep "\-L"' - else - # FIXME: insert proper C++ library support - ld_shlibs=no - fi - ;; - esac - ;; - psos*) - # FIXME: insert proper C++ library support - ld_shlibs=no - ;; - sco*) - case $cc_basename in - CC) - # FIXME: insert proper C++ library support - ld_shlibs=no - ;; - *) - # FIXME: insert proper C++ library support - ld_shlibs=no - ;; - esac - ;; - sunos4*) - case $cc_basename in - CC) - # Sun C++ 4.x - # FIXME: insert proper C++ library support - ld_shlibs=no - ;; - lcc) - # Lucid - # FIXME: insert proper C++ library support - ld_shlibs=no - ;; - *) - # FIXME: insert proper C++ library support - ld_shlibs=no - ;; - esac - ;; - solaris*) - case $cc_basename in - CC) - # Sun C++ 4.2, 5.x and Centerline C++ - no_undefined_flag=' -zdefs' - archive_cmds='$CC -G${allow_undefined_flag} -nolib -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' - archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ - $CC -G${allow_undefined_flag} -nolib ${wl}-M ${wl}$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$rm $lib.exp' - - hardcode_libdir_flag_spec='-R$libdir' - hardcode_shlibpath_var=no - case $host_os in - solaris2.[0-5] | solaris2.[0-5].*) ;; - *) - # The C++ compiler is used as linker so we must use $wl - # flag to pass the commands to the underlying system - # linker. - # Supported since Solaris 2.6 (maybe 2.5.1?) - whole_archive_flag_spec='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract' - ;; - esac - link_all_deplibs=yes - - # Commands to make compiler produce verbose output that lists - # what "hidden" libraries, object files and flags are used when - # linking a shared library. - # - # There doesn't appear to be a way to prevent this compiler from - # explicitly linking system object files so we need to strip them - # from the output so that they don't get included in the library - # dependencies. - output_verbose_link_cmd='templist=`$CC -G $CFLAGS -v conftest.$objext 2>&1 | egrep "\-R|\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' - - # Archives containing C++ object files must be created using - # "CC -xar", where "CC" is the Sun C++ compiler. This is - # necessary to make sure instantiated templates are included - # in the archive. - old_archive_cmds='$CC -xar -o $oldlib $oldobjs' - ;; - gcx) - # Green Hills C++ Compiler - archive_cmds='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib' - - # The C++ compiler must be used to create the archive. - old_archive_cmds='$CC $LDFLAGS -archive -o $oldlib $oldobjs' - ;; - *) - # GNU C++ compiler with Solaris linker - if test "$with_gcc" = yes && test "$with_gnu_ld" = no; then - no_undefined_flag=' ${wl}-z ${wl}defs' - if $CC --version | egrep -v '^2\.7' > /dev/null; then - archive_cmds='$CC -shared -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $linker_flags ${wl}-h $wl$soname -o $lib' - archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ - $CC -shared -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags~$rm $lib.exp' - - # Commands to make compiler produce verbose output that lists - # what "hidden" libraries, object files and flags are used when - # linking a shared library. - output_verbose_link_cmd="$CC -shared $CFLAGS -v conftest.$objext 2>&1 | egrep \"\-L\"" - else - # g++ 2.7 appears to require `-G' NOT `-shared' on this - # platform. - archive_cmds='$CC -G -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $linker_flags ${wl}-h $wl$soname -o $lib' - archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ - $CC -G -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags~$rm $lib.exp' - - # Commands to make compiler produce verbose output that lists - # what "hidden" libraries, object files and flags are used when - # linking a shared library. - output_verbose_link_cmd="$CC -G $CFLAGS -v conftest.$objext 2>&1 | egrep \"\-L\"" - fi - - hardcode_libdir_flag_spec='${wl}-R $wl$libdir' - fi - ;; - esac - ;; - tandem*) - case $cc_basename in - NCC) - # NonStop-UX NCC 3.20 - # FIXME: insert proper C++ library support - ld_shlibs=no - ;; - *) - # FIXME: insert proper C++ library support - ld_shlibs=no - ;; - esac - ;; - unixware*) - # FIXME: insert proper C++ library support - ld_shlibs=no - ;; - vxworks*) - # FIXME: insert proper C++ library support - ld_shlibs=no - ;; - *) - # FIXME: insert proper C++ library support - ld_shlibs=no - ;; -esac - - -## Compiler Characteristics: PIC flags, static flags, etc - -# We don't use cached values here since only the C compiler -# characteristics should be cached. -ac_cv_prog_cc_pic= -ac_cv_prog_cc_shlib= -ac_cv_prog_cc_wl= -ac_cv_prog_cc_static= -ac_cv_prog_cc_no_builtin= -ac_cv_prog_cc_can_build_shared=$can_build_shared - -ac_cv_prog_cc_pic_works= -ac_cv_prog_cc_static_works= - -if test "$with_gcc" = yes; then - ac_cv_prog_cc_wl='-Wl,' - ac_cv_prog_cc_static='-static' - - case $host_os in - aix*) - # All AIX code is PIC. - if test "$host_cpu" = ia64; then - # AIX 5 now supports IA64 processor - lt_cv_prog_cc_static='-Bstatic' - else - lt_cv_prog_cc_static='-bnso -bI:/lib/syscalls.exp' - fi - ;; - amigaos*) - # FIXME: we need at least 68020 code to build shared libraries, but - # adding the `-m68020' flag to GCC prevents building anything better, - # like `-m68040'. - ac_cv_prog_cc_pic='-m68020 -resident32 -malways-restore-a4' - ;; - beos* | irix5* | irix6* | osf3* | osf4* | osf5*) - # PIC is the default for these OSes. - ;; - cygwin* | mingw* | os2*) - # This hack is so that the source file can tell whether it is being - # built for inclusion in a dll (and should export symbols for example). - ac_cv_prog_cc_pic='-DDLL_EXPORT' - ;; - darwin* | rhapsody*) - # PIC is the default on this platform - # Common symbols not allowed in MH_DYLIB files - lt_cv_prog_cc_pic='-fno-common' - ;; - *djgpp*) - # DJGPP does not support shared libraries at all - ac_cv_prog_cc_pic= - ;; - sysv4*MP*) - if test -d /usr/nec; then - ac_cv_prog_cc_pic=-Kconform_pic - fi - ;; - *) - ac_cv_prog_cc_pic='-fPIC' - ;; - esac -else - case $host_os in - aix4* | aix5*) - # All AIX code is PIC. - if test "$host_cpu" = ia64; then - # AIX 5 now supports IA64 processor - lt_cv_prog_cc_static='-Bstatic' - else - lt_cv_prog_cc_static='-bnso -bI:/lib/syscalls.exp' - fi - ;; - chorus*) - case $cc_basename in - cxch68) - # Green Hills C++ Compiler - # ac_cv_prog_cc_static="--no_auto_instantiation -u __main -u __premain -u _abort -r $COOL_DIR/lib/libOrb.a $MVME_DIR/lib/CC/libC.a $MVME_DIR/lib/classix/libcx.s.a" - ;; - esac - ;; - dgux*) - case $cc_basename in - ec++) - ac_cv_prog_cc_pic='-KPIC' - ;; - ghcx) - # Green Hills C++ Compiler - ac_cv_prog_cc_pic='-pic' - ;; - *) - ;; - esac - ;; - freebsd*) - # FreeBSD uses GNU C++ - ;; - gnu*) - ;; - hpux9* | hpux10* | hpux11*) - case $cc_basename in - CC) - ac_cv_prog_cc_wl='-Wl,' - ac_cv_prog_cc_static="${ac_cv_prog_cc_wl}-a ${ac_cv_prog_cc_wl}archive" - ac_cv_prog_cc_pic='+Z' - ;; - aCC) - ac_cv_prog_cc_wl='-Wl,' - ac_cv_prog_cc_static="${ac_cv_prog_cc_wl}-a ${ac_cv_prog_cc_wl}archive" - ac_cv_prog_cc_pic='+Z' - ;; - *) - ;; - esac - ;; - irix5* | irix6*) - case $cc_basename in - CC) - ac_cv_prog_cc_wl='-Wl,' - ac_cv_prog_cc_static='-non_shared' - ac_cv_prog_cc_pic='-KPIC' - ;; - *) - ;; - esac - ;; - linux*) - case $cc_basename in - KCC) - # KAI C++ Compiler - ac_cv_prog_cc_wl='--backend -Wl,' - ac_cv_prog_cc_pic='-fPIC' - ;; - cxx) - # Compaq C++ - # Make sure the PIC flag is empty. It appears that all Alpha - # Linux and Compaq Tru64 Unix objects are PIC. - ac_cv_prog_cc_pic= - ac_cv_prog_cc_static='-non_shared' - ;; - *) - ;; - esac - ;; - lynxos*) - ;; - m88k*) - ;; - mvs*) - case $cc_basename in - cxx) - ac_cv_prog_cc_pic='-W c,exportall' - ;; - *) - ;; - esac - ;; - netbsd*) - ;; - osf3* | osf4* | osf5*) - case $cc_basename in - KCC) - ac_cv_prog_cc_wl='--backend -Wl,' - ;; - RCC) - # Rational C++ 2.4.1 - ac_cv_prog_cc_pic='-pic' - ;; - cxx) - # Digital/Compaq C++ - ac_cv_prog_cc_wl='-Wl,' - # Make sure the PIC flag is empty. It appears that all Alpha - # Linux and Compaq Tru64 Unix objects are PIC. - ac_cv_prog_cc_pic= - ac_cv_prog_cc_static='-non_shared' - ;; - *) - ;; - esac - ;; - psos*) - ;; - sco*) - case $cc_basename in - CC) - ac_cv_prog_cc_pic='-fPIC' - ;; - *) - ;; - esac - ;; - solaris*) - case $cc_basename in - CC) - # Sun C++ 4.2, 5.x and Centerline C++ - ac_cv_prog_cc_pic='-KPIC' - ac_cv_prog_cc_static='-Bstatic' - ac_cv_prog_cc_wl='-Qoption ld ' - ;; - gcx) - # Green Hills C++ Compiler - ac_cv_prog_cc_pic='-PIC' - ;; - *) - ;; - esac - ;; - sunos4*) - case $cc_basename in - CC) - # Sun C++ 4.x - ac_cv_prog_cc_pic='-pic' - ac_cv_prog_cc_static='-Bstatic' - ;; - lcc) - # Lucid - ac_cv_prog_cc_pic='-pic' - ;; - *) - ;; - esac - ;; - tandem*) - case $cc_basename in - NCC) - # NonStop-UX NCC 3.20 - ac_cv_prog_cc_pic='-KPIC' - ;; - *) - ;; - esac - ;; - unixware*) - ;; - vxworks*) - ;; - *) - ac_cv_prog_cc_can_build_shared=no - ;; - esac -fi - -case "$host_os" in - # Platforms which do not suport PIC and -DPIC is meaningless - # on them: - *djgpp*) - ac_cv_prog_cc_pic= - ;; - *) - ac_cv_prog_cc_pic="$ac_cv_prog_cc_pic -DPIC" - ;; -esac - - -# Figure out "hidden" C++ library dependencies from verbose -# compiler output whening linking a shared library. -cat > conftest.$ac_ext <&5; then - # Parse the compiler output and extract the necessary - # objects, libraries and library flags. - - # Sentinel used to keep track of whether or not we are before - # the conftest object file. - pre_test_object_deps_done=no - - for p in `eval $output_verbose_link_cmd`; do - - case $p in - - -L* | -R* | -l*) - # Some compilers place space between "-{L,R}" and the path. - # Remove the space. - if test $p = "-L" \ - || test $p = "-R"; then - prev=$p - continue - else - prev= - fi - - if test "$pre_test_object_deps_done" = no; then - case $p in - -L* | -R*) - # Internal compiler library paths should come after those - # provided the user. The postdeps already come after the - # user supplied libs so there is no need to process them. - if test -z "$compiler_lib_search_path"; then - compiler_lib_search_path="${prev}${p}" - else - compiler_lib_search_path="${compiler_lib_search_path} ${prev}${p}" - fi - ;; - # The "-l" case would never come before the object being - # linked, so don't bother handling this case. - esac - else - if test -z "$postdeps"; then - postdeps="${prev}${p}" - else - postdeps="${postdeps} ${prev}${p}" - fi - fi - ;; - - *.$objext) - # This assumes that the test object file only shows up - # once in the compiler output. - if test "$p" = "conftest.$objext"; then - pre_test_object_deps_done=yes - continue - fi - - if test "$pre_test_object_deps_done" = no; then - if test -z "$predep_objects"; then - predep_objects="$p" - else - predep_objects="$predep_objects $p" - fi - else - if test -z "$postdep_objects"; then - postdep_objects="$p" - else - postdep_objects="$postdep_objects $p" - fi - fi - ;; - - *) ;; # Ignore the rest. - - esac - done - - # Clean up. - rm -f a.out -else - echo "ltcf-cxx.sh: error: problem compiling test program" -fi - -$rm -f confest.$objext - -case " $postdeps " in -*" -lc "*) need_lc=no ;; -*) need_lc=yes ;; -esac diff --git a/contrib/gcc/ltcf-gcj.sh b/contrib/gcc/ltcf-gcj.sh deleted file mode 100644 index 7be8712..0000000 --- a/contrib/gcc/ltcf-gcj.sh +++ /dev/null @@ -1,651 +0,0 @@ -#### This script is meant to be sourced by ltconfig. - -# ltcf-gcj.sh - Create a GCJ compiler specific configuration -# -# Copyright (C) 1996-1999, 2000, 2001 Free Software Foundation, Inc. -# Originally by Gordon Matzigkeit , 1996 -# -# Original GCJ support by: -# Alexandre Oliva -# -# This file 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. -# -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. - - -# Source file extension for Java test sources. -ac_ext=java - -# Object file extension for compiled Java test sources. -objext=o - -# Code to be used in simple compile tests -lt_simple_compile_test_code="class foo {}" - -# Code to be used in simple link tests -lt_simple_link_test_code='public class conftest { public static void main(String[] argv) {}; }' - -## Linker Characteristics -case $host_os in -cygwin* | mingw*) - # FIXME: the MSVC++ port hasn't been tested in a loooong time - # When not using gcc, we currently assume that we are using - # Microsoft Visual C++. - if test "$with_gcc" != yes; then - with_gnu_ld=no - fi - ;; - -esac - -ld_shlibs=yes -if test "$with_gnu_ld" = yes; then - # If archive_cmds runs LD, not CC, wlarc should be empty - wlarc='${wl}' - - # See if GNU ld supports shared libraries. - case $host_os in - aix3* | aix4* | aix5*) - # On AIX/PPC, the GNU linker is very broken - if test "$host_cpu" != ia64; then - ld_shlibs=no - cat <&2 - -*** Warning: the GNU linker, at least up to release 2.9.1, is reported -*** to be unable to reliably create shared libraries on AIX. -*** Therefore, libtool is disabling shared libraries support. If you -*** really care for shared libraries, you may want to modify your PATH -*** so that a non-GNU linker is found, and then restart. - -EOF - fi - ;; - - amigaos*) - archive_cmds='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' - hardcode_libdir_flag_spec='-L$libdir' - hardcode_minus_L=yes - - # Samuel A. Falvo II reports - # that the semantics of dynamic libraries on AmigaOS, at least up - # to version 4, is to share data among multiple programs linked - # with the same dynamic library. Since this doesn't match the - # behavior of shared libraries on other platforms, we can use - # them. - ld_shlibs=no - ;; - - beos*) - if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then - allow_undefined_flag=unsupported - # Joseph Beckenbach says some releases of gcc - # support --undefined. This deserves some investigation. FIXME - archive_cmds='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - else - ld_shlibs=no - fi - ;; - - cygwin* | mingw*) - # hardcode_libdir_flag_spec is actually meaningless, as there is - # no search path for DLLs. - hardcode_libdir_flag_spec='-L$libdir' - allow_undefined_flag=unsupported - always_export_symbols=yes - - extract_expsyms_cmds='test -f $output_objdir/impgen.c || \ - sed -e "/^# \/\* impgen\.c starts here \*\//,/^# \/\* impgen.c ends here \*\// { s/^# //; p; }" -e d < $0 > $output_objdir/impgen.c~ - test -f $output_objdir/impgen.exe || (cd $output_objdir && \ - if test "x$HOST_CC" != "x" ; then $HOST_CC -o impgen impgen.c ; \ - else $CC -o impgen impgen.c ; fi)~ - $output_objdir/impgen $dir/$soroot > $output_objdir/$soname-def' - - old_archive_from_expsyms_cmds='$DLLTOOL --as=$AS --dllname $soname --def $output_objdir/$soname-def --output-lib $output_objdir/$newlib' - - # cygwin and mingw dlls have different entry points and sets of symbols - # to exclude. - # FIXME: what about values for MSVC? - dll_entry=__cygwin_dll_entry@12 - dll_exclude_symbols=DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12~ - case $host_os in - mingw*) - # mingw values - dll_entry=_DllMainCRTStartup@12 - dll_exclude_symbols=DllMain@12,DllMainCRTStartup@12,DllEntryPoint@12~ - ;; - esac - - # mingw and cygwin differ, and it's simplest to just exclude the union - # of the two symbol sets. - dll_exclude_symbols=DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12,DllMainCRTStartup@12,DllEntryPoint@12 - - # recent cygwin and mingw systems supply a stub DllMain which the user - # can override, but on older systems we have to supply one (in ltdll.c) - if test "x$lt_cv_need_dllmain" = "xyes"; then - ltdll_obj='$output_objdir/$soname-ltdll.'"$objext " - ltdll_cmds='test -f $output_objdir/$soname-ltdll.c || sed -e "/^# \/\* ltdll\.c starts here \*\//,/^# \/\* ltdll.c ends here \*\// { s/^# //; p; }" -e d < $0 > $output_objdir/$soname-ltdll.c~ - test -f $output_objdir/$soname-ltdll.$objext || (cd $output_objdir && $CC -c $soname-ltdll.c)~' - else - ltdll_obj= - ltdll_cmds= - fi - - # Extract the symbol export list from an `--export-all' def file, - # then regenerate the def file from the symbol export list, so that - # the compiled dll only exports the symbol export list. - # Be careful not to strip the DATA tag left be newer dlltools. - export_symbols_cmds="$ltdll_cmds"' - $DLLTOOL --export-all --exclude-symbols '$dll_exclude_symbols' --output-def $output_objdir/$soname-def '$ltdll_obj'$libobjs $convenience~ - sed -e "1,/EXPORTS/d" -e "s/ @ [0-9]*//" -e "s/ *;.*$//" < $output_objdir/$soname-def > $export_symbols' - - # If the export-symbols file already is a .def file (1st line - # is EXPORTS), use it as is. - # If DATA tags from a recent dlltool are present, honour them! - archive_expsym_cmds='if test "x`head -1 $export_symbols`" = xEXPORTS; then - cp $export_symbols $output_objdir/$soname-def; - else - echo EXPORTS > $output_objdir/$soname-def; - _lt_hint=1; - cat $export_symbols | while read symbol; do - set dummy \$symbol; - case \[$]# in - 2) echo " \[$]2 @ \$_lt_hint ; " >> $output_objdir/$soname-def;; - *) echo " \[$]2 @ \$_lt_hint \[$]3 ; " >> $output_objdir/$soname-def;; - esac; - _lt_hint=`expr 1 + \$_lt_hint`; - done; - fi~ - '"$ltdll_cmds"' - $CC -Wl,--base-file,$output_objdir/$soname-base '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags~ - $DLLTOOL --as=$AS --dllname $soname --exclude-symbols '$dll_exclude_symbols' --def $output_objdir/$soname-def --base-file $output_objdir/$soname-base --output-exp $output_objdir/$soname-exp~ - $CC -Wl,--base-file,$output_objdir/$soname-base $output_objdir/$soname-exp '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags~ - $DLLTOOL --as=$AS --dllname $soname --exclude-symbols '$dll_exclude_symbols' --def $output_objdir/$soname-def --base-file $output_objdir/$soname-base --output-exp $output_objdir/$soname-exp --output-lib $output_objdir/$libname.dll.a~ - $CC $output_objdir/$soname-exp '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags' - ;; - - netbsd*) - if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then - archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib' - wlarc= - else - archive_cmds='$CC -shared -nodefaultlibs $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - archive_expsym_cmds='$CC -shared -nodefaultlibs $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' - fi - ;; - - solaris* | sysv5*) - if $LD -v 2>&1 | egrep 'BFD 2\.8' > /dev/null; then - ld_shlibs=no - cat <&2 - -*** Warning: The releases 2.8.* of the GNU linker cannot reliably -*** create shared libraries on Solaris systems. Therefore, libtool -*** is disabling shared libraries support. We urge you to upgrade GNU -*** binutils to release 2.9.1 or newer. Another option is to modify -*** your PATH or compiler configuration so that the native linker is -*** used, and then restart. - -EOF - elif $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then - archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' - else - ld_shlibs=no - fi - ;; - - sunos4*) - archive_cmds='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags' - wlarc= - hardcode_direct=yes - hardcode_shlibpath_var=no - ;; - - *) - if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then - archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' - else - ld_shlibs=no - fi - ;; - esac - - if test "$ld_shlibs" = yes; then - runpath_var=LD_RUN_PATH - hardcode_libdir_flag_spec='${wl}--rpath ${wl}$libdir' - export_dynamic_flag_spec='${wl}--export-dynamic' - case $host_os in - cygwin* | mingw*) - # dlltool doesn't understand --whole-archive et. al. - whole_archive_flag_spec= - ;; - *) - # ancient GNU ld didn't support --whole-archive et. al. - if $LD --help 2>&1 | egrep 'no-whole-archive' > /dev/null; then - whole_archive_flag_spec="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' - else - whole_archive_flag_spec= - fi - ;; - esac - fi -else - # PORTME fill in a description of your system's linker (not GNU ld) - case $host_os in - aix3*) - allow_undefined_flag=unsupported - always_export_symbols=yes - archive_expsym_cmds='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname' - # Note: this linker hardcodes the directories in LIBPATH if there - # are no directories specified by -L. - hardcode_minus_L=yes - if test "$with_gcc" = yes && test -z "$link_static_flag"; then - # Neither direct hardcoding nor static linking is supported with a - # broken collect2. - hardcode_direct=unsupported - fi - ;; - - aix4* | aix5*) - hardcode_direct=yes - hardcode_libdir_separator=':' - link_all_deplibs=yes - # When large executables or shared objects are built, AIX ld can - # have problems creating the table of contents. If linking a library - # or program results in "error TOC overflow" add -mminimal-toc to - # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not - # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. - if test "$with_gcc" = yes; then - case $host_os in aix4.[012]|aix4.[012].*) - # We only want to do this on AIX 4.2 and lower, the check - # below for broken collect2 doesn't work under 4.3+ - collect2name=`${CC} -print-prog-name=collect2` - if test -f "$collect2name" && \ - strings "$collect2name" | grep resolve_lib_name >/dev/null - then - # We have reworked collect2 - hardcode_direct=yes - else - # We have old collect2 - hardcode_direct=unsupported - # It fails to find uninstalled libraries when the uninstalled - # path is not listed in the libpath. Setting hardcode_minus_L - # to unsupported forces relinking - hardcode_minus_L=yes - hardcode_libdir_flag_spec='-L$libdir' - hardcode_libdir_separator= - fi - esac - shared_flag='-shared' - else - # not using gcc - if test "$host_cpu" = ia64; then - shared_flag='${wl}-G' - else - shared_flag='${wl}-bM:SRE' - fi - fi - - if test "$host_cpu" = ia64; then - # On IA64, the linker does run time linking by default, so we don't - # have to do anything special. - aix_use_runtimelinking=no - if test $with_gnu_ld = no; then - exp_sym_flag='-Bexport' - no_entry_flag="" - fi - else - # Test if we are trying to use run time linking, or normal AIX style linking. - # If -brtl is somewhere in LDFLAGS, we need to do run time linking. - aix_use_runtimelinking=no - for ld_flag in $LDFLAGS; do - if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl" ); then - aix_use_runtimelinking=yes - break - fi - done - exp_sym_flag='-bexport' - no_entry_flag='-bnoentry' - fi - # -bexpall does not export symbols beginning with underscore (_) - always_export_symbols=yes - if test "$aix_use_runtimelinking" = yes; then - # Warning - without using the other run time loading flags (-brtl), -berok will - # link without error, but may produce a broken library. - allow_undefined_flag=' ${wl}-berok' - hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:/usr/lib:/lib' - archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols" - else - if test "$host_cpu" = ia64; then - if test $with_gnu_ld = no; then - hardcode_libdir_flag_spec='${wl}-R $libdir:/usr/lib:/lib' - allow_undefined_flag="-z nodefs" - archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols" - fi - else - allow_undefined_flag=' ${wl}-berok' - # -bexpall does not export symbols beginning with underscore (_) - always_export_symbols=yes - # Exported symbols can be pulled into shared objects from archives - whole_archive_flag_spec=' ' - build_libtool_need_lc=yes - hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:/usr/lib:/lib' - # This is similar to how AIX traditionally builds it's shared libraries. - archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${wl}-bE:$export_symbols ${wl}-bnoentry${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname' - fi - fi - ;; - - amigaos*) - archive_cmds='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' - hardcode_libdir_flag_spec='-L$libdir' - hardcode_minus_L=yes - # see comment about different semantics on the GNU ld section - ld_shlibs=no - ;; - - cygwin* | mingw*) - # When not using gcc, we currently assume that we are using - # Microsoft Visual C++. - # hardcode_libdir_flag_spec is actually meaningless, as there is - # no search path for DLLs. - hardcode_libdir_flag_spec=' ' - allow_undefined_flag=unsupported - # Tell ltmain to make .lib files, not .a files. - libext=lib - # FIXME: Setting linknames here is a bad hack. - archive_cmds='$CC -o $lib $libobjs $compiler_flags `echo "$deplibs" | sed -e '\''s/ -lc$//'\''` -link -dll~linknames=' - # The linker will automatically build a .lib file if we build a DLL. - old_archive_from_new_cmds='true' - # FIXME: Should let the user specify the lib program. - old_archive_cmds='lib /OUT:$oldlib$oldobjs$old_deplibs' - fix_srcfile_path='`cygpath -w "$srcfile"`' - ;; - - freebsd1*) - ld_shlibs=no - ;; - - # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor - # support. Future versions do this automatically, but an explicit c++rt0.o - # does not break anything, and helps significantly (at the cost of a little - # extra space). - freebsd2.2*) - archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o' - hardcode_libdir_flag_spec='-R$libdir' - hardcode_direct=yes - hardcode_shlibpath_var=no - ;; - - # Unfortunately, older versions of FreeBSD 2 do not have this feature. - freebsd2*) - archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' - hardcode_direct=yes - hardcode_minus_L=yes - hardcode_shlibpath_var=no - ;; - - # FreeBSD 3 and greater uses gcc -shared to do shared libraries. - freebsd*) - archive_cmds='$CC -shared -o $lib $libobjs $deplibs $compiler_flags' - hardcode_libdir_flag_spec='-R$libdir' - hardcode_direct=yes - hardcode_shlibpath_var=no - ;; - - hpux9* | hpux10* | hpux11*) - case $host_os in - hpux9*) archive_cmds='$rm $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' ;; - *) archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' ;; - esac - hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir' - hardcode_libdir_separator=: - hardcode_direct=yes - hardcode_minus_L=yes # Not in the search PATH, but as the default - # location of the library. - export_dynamic_flag_spec='${wl}-E' - ;; - - irix5* | irix6*) - if test "$with_gcc" = yes; then - archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib' - else - archive_cmds='$LD -shared $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib' - fi - hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' - hardcode_libdir_separator=: - link_all_deplibs=yes - ;; - - netbsd*) - if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then - archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out - else - archive_cmds='$LD -shared -nodefaultlibs -o $lib $libobjs $deplibs $linker_flags' # ELF - fi - hardcode_libdir_flag_spec='${wl}-R$libdir' - hardcode_direct=yes - hardcode_shlibpath_var=no - ;; - - openbsd*) - archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' - hardcode_libdir_flag_spec='-R$libdir' - hardcode_direct=yes - hardcode_shlibpath_var=no - ;; - - os2*) - hardcode_libdir_flag_spec='-L$libdir' - hardcode_minus_L=yes - allow_undefined_flag=unsupported - archive_cmds='$echo "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$echo "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~$echo DATA >> $output_objdir/$libname.def~$echo " SINGLE NONSHARED" >> $output_objdir/$libname.def~$echo EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def' - old_archive_from_new_cmds='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def' - ;; - - osf3*) - if test "$with_gcc" = yes; then - allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*' - archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib' - else - allow_undefined_flag=' -expect_unresolved \*' - archive_cmds='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib' - fi - hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' - hardcode_libdir_separator=: - ;; - - osf4* | osf5*) # as osf3* with the addition of -msym flag - if test "$with_gcc" = yes; then - allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*' - archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib' - else - allow_undefined_flag=' -expect_unresolved \*' - archive_cmds='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -msym -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib' - fi - hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' - hardcode_libdir_separator=: - ;; - - sco3.2v5*) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_shlibpath_var=no - runpath_var=LD_RUN_PATH - hardcode_runpath_var=yes - ;; - - solaris*) - no_undefined_flag=' ${wl}-z ${wl}defs' - archive_cmds='$CC -shared -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $linker_flags ${wl}-h $wl$soname -o $lib' - archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ - $CC -shared -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags~$rm $lib.exp' - - # Commands to make compiler produce verbose output that lists - # what "hidden" libraries, object files and flags are used when - # linking a shared library. - output_verbose_link_cmds="$CC -shared $CFLAGS -v conftest.$objext 2>&1 | egrep \"\-L\"" - - hardcode_libdir_flag_spec='${wl}-R $wl$libdir' - hardcode_shlibpath_var=no - case $host_os in - solaris2.[0-5] | solaris2.[0-5].*) ;; - *) # Supported since Solaris 2.6 (maybe 2.5.1?) - whole_archive_flag_spec='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract' ;; - esac - link_all_deplibs=yes - ;; - - sunos4*) - archive_cmds='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags' - hardcode_libdir_flag_spec='-L$libdir' - hardcode_direct=yes - hardcode_minus_L=yes - hardcode_shlibpath_var=no - ;; - - sysv4) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - runpath_var='LD_RUN_PATH' - hardcode_shlibpath_var=no - hardcode_direct=no #Motorola manual says yes, but my tests say they lie - ;; - - sysv4.3*) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_shlibpath_var=no - export_dynamic_flag_spec='-Bexport' - ;; - - sysv5*) - no_undefined_flag=' -z text' - # $CC -shared without GNU ld will not create a library from C++ - # object files and a static libstdc++, better avoid it by now - archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags' - archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ - $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp' - hardcode_libdir_flag_spec= - hardcode_shlibpath_var=no - runpath_var='LD_RUN_PATH' - ;; - - uts4*) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_libdir_flag_spec='-L$libdir' - hardcode_shlibpath_var=no - ;; - - dgux*) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_libdir_flag_spec='-L$libdir' - hardcode_shlibpath_var=no - ;; - - sysv4*MP*) - if test -d /usr/nec; then - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' - hardcode_shlibpath_var=no - runpath_var=LD_RUN_PATH - hardcode_runpath_var=yes - ld_shlibs=yes - fi - ;; - - sysv4.2uw2*) - archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags' - hardcode_direct=yes - hardcode_minus_L=no - hardcode_shlibpath_var=no - hardcode_runpath_var=yes - runpath_var=LD_RUN_PATH - ;; - - sysv5uw7* | unixware7*) - no_undefined_flag='${wl}-z ${wl}text' - if test "$GCC" = yes; then - archive_cmds='$CC -shared ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' - else - archive_cmds='$CC -G ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' - fi - runpath_var='LD_RUN_PATH' - hardcode_shlibpath_var=no - ;; - - *) - ld_shlibs=no - ;; - esac -fi - -## Compiler Characteristics: PIC flags, static flags, etc - -# We don't use cached values here since only the C compiler -# characteristics should be cached. - ac_cv_prog_cc_pic= - ac_cv_prog_cc_shlib= - ac_cv_prog_cc_wl= - ac_cv_prog_cc_static= - ac_cv_prog_cc_no_builtin= - ac_cv_prog_cc_can_build_shared=$can_build_shared - - ac_cv_prog_cc_wl='-Wl,' - ac_cv_prog_cc_static='-static' - - case $host_os in - beos* | irix5* | irix6* | osf3* | osf4* | osf5*) - # PIC is the default for these OSes. - ;; - aix*) - # Below there is a dirty hack to force normal static linking with -ldl - # The problem is because libdl dynamically linked with both libc and - # libC (AIX C++ library), which obviously doesn't included in libraries - # list by gcc. This cause undefined symbols with -static flags. - # This hack allows C programs to be linked with "-static -ldl", but - # we not sure about C++ programs. - ac_cv_prog_cc_static="$ac_cv_prog_cc_static ${ac_cv_prog_cc_wl}-lC" - ;; - *djgpp*) - # DJGPP does not suppot shared libraries at all - ac_cv_prog_cc_pic= - ;; - cygwin* | mingw* | os2*) - # This hack is so that the source file can tell whether it is being - # built for inclusion in a dll (and should export symbols for example). - ac_cv_prog_cc_pic='-DDLL_EXPORT' - ;; - amigaos*) - # FIXME: we need at least 68020 code to build shared libraries, but - # adding the `-m68020' flag to GCC prevents building anything better, - # like `-m68040'. - ac_cv_prog_cc_pic='-m68020 -resident32 -malways-restore-a4' - ;; - sysv4*MP*) - if test -d /usr/nec; then - ac_cv_prog_cc_pic=-Kconform_pic - fi - ;; - *) - ac_cv_prog_cc_pic='-fPIC' - ;; - esac - -# GCJ did not exist at the time GCC didn't implicitly link libc in. -need_lc=no - -# All existing releases of GCJ support `-c -o'. -lt_cv_compiler_c_o=yes diff --git a/contrib/gcc/ltconfig b/contrib/gcc/ltconfig deleted file mode 100755 index 746e15b..0000000 --- a/contrib/gcc/ltconfig +++ /dev/null @@ -1,2795 +0,0 @@ -#! /bin/sh - -# ltconfig - Create a system-specific libtool. -# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001 -# Free Software Foundation, Inc. -# Originally by Gordon Matzigkeit , 1996 -# -# This file 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. -# -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. - -# A lot of this script is taken from autoconf-2.10. - -# Check that we are running under the correct shell. -SHELL=${CONFIG_SHELL-/bin/sh} -echo=echo -if test "X$1" = X--no-reexec; then - # Discard the --no-reexec flag, and continue. - shift -elif test "X$1" = X--fallback-echo; then - # Avoid inline document here, it may be left over - : -elif test "X`($echo '\t') 2>/dev/null`" = 'X\t'; then - # Yippee, $echo works! - : -else - # Restart under the correct shell. - exec "$SHELL" "$0" --no-reexec ${1+"$@"} -fi - -if test "X$1" = X--fallback-echo; then - # used as fallback echo - shift - cat </dev/null`} - case X$UNAME in - *-DOS) PATH_SEPARATOR=';' ;; - *) PATH_SEPARATOR=':' ;; - esac -fi - -# The HP-UX ksh and POSIX shell print the target directory to stdout -# if CDPATH is set. -if test "X${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi - -if test "X${echo_test_string+set}" != Xset; then - # find a string as large as possible, as long as the shell can cope with it - for cmd in 'sed 50q "$0"' 'sed 20q "$0"' 'sed 10q "$0"' 'sed 2q "$0"' 'echo test'; do - # expected sizes: less than 2Kb, 1Kb, 512 bytes, 16 bytes, ... - if (echo_test_string="`eval $cmd`") 2>/dev/null && - echo_test_string="`eval $cmd`" && - (test "X$echo_test_string" = "X$echo_test_string") 2>/dev/null; then - break - fi - done -fi - -if test "X`($echo '\t') 2>/dev/null`" = 'X\t' && - echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - : -else - # The Solaris, AIX, and Digital Unix default echo programs unquote - # backslashes. This makes it impossible to quote backslashes using - # echo "$something" | sed 's/\\/\\\\/g' - # - # So, first we look for a working echo in the user's PATH. - - IFS="${IFS= }"; save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR}" - for dir in $PATH /usr/ucb; do - if (test -f $dir/echo || test -f $dir/echo$ac_exeext) && - test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' && - echo_testing_string=`($dir/echo "$echo_test_string") 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - echo="$dir/echo" - break - fi - done - IFS="$save_ifs" - - if test "X$echo" = Xecho; then - # We didn't find a better echo, so look for alternatives. - if test "X`(print -r '\t') 2>/dev/null`" = 'X\t' && - echo_testing_string=`(print -r "$echo_test_string") 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - # This shell has a builtin print -r that does the trick. - echo='print -r' - elif (test -f /bin/ksh || test -f /bin/ksh$ac_exeext) && - test "X$CONFIG_SHELL" != X/bin/ksh; then - # If we have ksh, try running ltconfig again with it. - ORIGINAL_CONFIG_SHELL="${CONFIG_SHELL-/bin/sh}" - export ORIGINAL_CONFIG_SHELL - CONFIG_SHELL=/bin/ksh - export CONFIG_SHELL - exec "$CONFIG_SHELL" "$0" --no-reexec ${1+"$@"} - else - # Try using printf. - echo='printf %s\n' - if test "X`($echo '\t') 2>/dev/null`" = 'X\t' && - echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - # Cool, printf works - : - elif echo_testing_string=`("$ORIGINAL_CONFIG_SHELL" "$0" --fallback-echo '\t') 2>/dev/null` && - test "X$echo_testing_string" = 'X\t' && - echo_testing_string=`("$ORIGINAL_CONFIG_SHELL" "$0" --fallback-echo "$echo_test_string") 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - CONFIG_SHELL="$ORIGINAL_CONFIG_SHELL" - export CONFIG_SHELL - SHELL="$CONFIG_SHELL" - export SHELL - echo="$CONFIG_SHELL $0 --fallback-echo" - elif echo_testing_string=`("$CONFIG_SHELL" "$0" --fallback-echo '\t') 2>/dev/null` && - test "X$echo_testing_string" = 'X\t' && - echo_testing_string=`("$CONFIG_SHELL" "$0" --fallback-echo "$echo_test_string") 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - echo="$CONFIG_SHELL $0 --fallback-echo" - else - # maybe with a smaller string... - prev=: - - for cmd in 'echo test' 'sed 2q "$0"' 'sed 10q "$0"' 'sed 20q "$0"' 'sed 50q "$0"'; do - if (test "X$echo_test_string" = "X`eval $cmd`") 2>/dev/null; then - break - fi - prev="$cmd" - done - - if test "$prev" != 'sed 50q "$0"'; then - echo_test_string=`eval $prev` - - export echo_test_string - exec "${ORIGINAL_CONFIG_SHELL-${CONFIG_SHELL-/bin/sh}}" "$0" ${1+"$@"} - else - # Oops. We lost completely, so just stick with echo. - echo=echo - fi - fi - fi - fi -fi - -# Sed substitution that helps us do robust quoting. It backslashifies -# metacharacters that are still active within double-quoted strings. -Xsed='sed -e s/^X//' -sed_quote_subst='s/\([\\"\\`$\\\\]\)/\\\1/g' - -# Same as above, but do not quote variable references. -double_quote_subst='s/\([\\"\\`\\\\]\)/\\\1/g' - -# Sed substitution to delay expansion of an escaped shell variable in a -# double_quote_subst'ed string. -delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g' - -# The name of this program. -progname=`$echo "X$0" | $Xsed -e 's%^.*/%%'` - -# Constants: -PROGRAM=ltconfig -PACKAGE=libtool -VERSION=1.4a-GCC3.0 -TIMESTAMP=" (1.641.2.256 2001/05/28 20:09:07 with GCC-local changes)" -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' -rm="rm -f" - -help="Try \`$progname --help' for more information." - -# Global variables: -default_ofile=libtool -can_build_shared=yes -enable_shared=yes -# All known linkers require a `.a' archive for static linking (except M$VC, -# which needs '.lib'). -enable_static=yes -enable_fast_install=yes -enable_dlopen=unknown -enable_win32_dll=no -pic_mode=default -ltmain= -silent= -srcdir= -ac_config_guess= -ac_config_sub= -host= -build=NONE -nonopt=NONE -ofile="$default_ofile" -verify_host=yes -tagname= -with_gcc=no -with_gnu_ld=no -need_locks=yes -ac_ext=c -libext=a -cache_file= -max_cmd_len= - -## Dependencies to place before and after the object being linked: -predep_objects= -postdep_objects= -predeps= -postdeps= -compiler_lib_search_path= - -## Link characteristics: -allow_undefined_flag= -no_undefined_flag= -need_lib_prefix=unknown -need_version=unknown -# when you set need_version to no, make sure it does not cause -set_version -# flags to be left without arguments -archive_cmds= -archive_expsym_cmds= -old_archive_from_new_cmds= -old_archive_from_expsyms_cmds= -striplib= -old_striplib= -export_dynamic_flag_spec= -whole_archive_flag_spec= -thread_safe_flag_spec= -hardcode_into_libs=no -hardcode_libdir_flag_spec= -hardcode_libdir_separator= -hardcode_direct=no -hardcode_minus_L=no -hardcode_shlibpath_var=unsupported -runpath_var= -link_all_deplibs=unknown -always_export_symbols=no -export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | sed '\''s/.* //'\'' | sort | uniq > $export_symbols' -# include_expsyms should be a list of space-separated symbols to be *always* -# included in the symbol list -include_expsyms= -# exclude_expsyms can be an egrep regular expression of symbols to exclude -# it will be wrapped by ` (' and `)$', so one must not match beginning or -# end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc', -# as well as any symbol that contains `d'. -exclude_expsyms="_GLOBAL_OFFSET_TABLE_" -# Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out -# platforms (ab)use it in PIC code, but their linkers get confused if -# the symbol is explicitly referenced. Since portable code cannot -# rely on this symbol name, it's probably fine to never include it in -# preloaded symbol tables. -extract_expsyms_cmds= - -## Tools: -old_AR="$AR" -old_AR_FLAGS="$AR_FLAGS" -old_CC="$CC" -old_CFLAGS="$CFLAGS" -old_CPPFLAGS="$CPPFLAGS" -old_LDFLAGS="$LDFLAGS" -old_LIBS="$LIBS" -old_MAGIC_CMD="$MAGIC_CMD" -old_LD="$LD" -old_LN_S="$LN_S" -old_LTCC="$LTCC" -old_NM="$NM" -old_RANLIB="$RANLIB" -old_STRIP="$STRIP" -old_AS="$AS" -old_DLLTOOL="$DLLTOOL" -old_OBJDUMP="$OBJDUMP" -old_OBJEXT="$OBJEXT" -old_EXEEXT="$EXEEXT" -old_reload_flag="$reload_flag" -old_deplibs_check_method="$deplibs_check_method" -old_file_magic_cmd="$file_magic_cmd" - -# Parse the command line options. -args= -prev= -for option -do - case $option in - -*=*) optarg=`echo "$option" | sed 's/[-_a-zA-Z0-9]*=//'` ;; - *) optarg= ;; - esac - - # If the previous option needs an argument, assign it. - if test -n "$prev"; then - eval "$prev=\$option" - prev= - continue - fi - - case $option in - --help) cat <&2 - echo "$help" 1>&2 - exit 1 - ;; - - *) - if test -z "$ltmain"; then - ltmain="$option" - elif test -z "$host"; then -# This generates an unnecessary warning for sparc-sun-solaris4.1.3_U1 -# if test -n "`echo $option| sed 's/[-a-z0-9.]//g'`"; then -# echo "$progname: warning \`$option' is not a valid host type" 1>&2 -# fi - host="$option" - else - echo "$progname: too many arguments" 1>&2 - echo "$help" 1>&2 - exit 1 - fi ;; - esac -done - -if test -z "$ltmain"; then - echo "$progname: you must specify a LTMAIN file" 1>&2 - echo "$help" 1>&2 - exit 1 -fi - -if test ! -f "$ltmain"; then - echo "$progname: \`$ltmain' does not exist" 1>&2 - echo "$help" 1>&2 - exit 1 -fi - -if test -n "$tagname"; then - # Check whether tagname contains only valid characters - case `$echo "X$tagname" | $Xsed -e 's/[-_ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890,/]//g'` in - "") ;; - *) - echo "$progname: invalid tag name: $tagname" 1>&2 - exit 1 - ;; - esac - - if grep "^### BEGIN LIBTOOL TAG CONFIG: $tagname$" < "$ofile" > /dev/null; then - echo "$progname: tag name $tagname already exists" 1>&2 - exit 1 - fi - - if test ! -f "$ofile"; then - echo "$progname: warning: output file \`$ofile' does not exist" 1>&2 - fi - - if test -z "$LTCC"; then - eval "`$SHELL $ofile --config | grep '^LTCC='`" - if test -z "$LTCC"; then - echo "$progname: warning: output file \`$ofile' does not look like a libtool script" 1>&2 - else - echo "$progname: warning: using \`LTCC=$LTCC', extracted from \`$ofile'" 1>&2 - fi - fi -fi - -# Quote any args containing shell metacharacters. -ltconfig_args= -for arg -do - case $arg in - *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?]*) - ltconfig_args="$ltconfig_args '$arg'" ;; - *) ltconfig_args="$ltconfig_args $arg" ;; - esac -done - -# A relevant subset of AC_INIT. - -# 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 -# 5 compiler messages saved in config.log -# 6 checking for... messages and results -if test "$silent" = yes; then - exec 6>/dev/null -else - exec 6>&1 -fi -exec 5>>./config.log - -# NLS nuisances. -# Only set LANG and LC_ALL to C if already set. -# These must not be set unconditionally because not all systems understand -# e.g. LANG=C (notably SCO). -if test "X${LC_ALL+set}" = Xset; then LC_ALL=C; export LC_ALL; fi -if test "X${LANG+set}" = Xset; then LANG=C; export LANG; fi - -if test -n "$cache_file" && test -r "$cache_file" && test -f "$cache_file"; then - echo "loading cache $cache_file within ltconfig" - . $cache_file -fi - -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 - -if test -z "$srcdir"; then - # Assume the source directory is the same one as the path to LTMAIN. - srcdir=`$echo "X$ltmain" | $Xsed -e 's%/[^/]*$%%'` - test "$srcdir" = "$ltmain" && srcdir=. -fi - -trap "$rm conftest*; exit 1" 1 2 15 -if test "$verify_host" = yes; then - # Check for config.guess and config.sub. - ac_aux_dir= - for ac_dir in $srcdir $srcdir/.. $srcdir/../..; do - if test -f $ac_dir/config.guess; then - ac_aux_dir=$ac_dir - break - fi - done - if test -z "$ac_aux_dir"; then - echo "$progname: cannot find config.guess in $srcdir $srcdir/.. $srcdir/../.." 1>&2 - echo "$help" 1>&2 - exit 1 - fi - ac_config_guess=$ac_aux_dir/config.guess - ac_config_sub=$ac_aux_dir/config.sub - - # Make sure we can run config.sub. - if $SHELL $ac_config_sub sun4 >/dev/null 2>&1; then : - else - echo "$progname: cannot run $ac_config_sub" 1>&2 - echo "$help" 1>&2 - exit 1 - fi - - echo $ac_n "checking host system type""... $ac_c" 1>&6 - - host_alias=$host - case $host_alias in - "") - # Force config.guess to use the C compiler. - # CC_FOR_BUILD overrides the CC variable in config.guess but I had - # problems with it so do it this way for now. - CC="$LTCC" - - if host_alias=`$SHELL $ac_config_guess`; then : - else - echo "$progname: cannot guess host type; you must specify one" 1>&2 - echo "$help" 1>&2 - exit 1 - fi - - # Restore the C compiler. - CC="$old_CC" - ;; - esac - host=`$SHELL $ac_config_sub $host_alias` - echo "$ac_t$host" 1>&6 - - # Make sure the host verified. - test -z "$host" && exit 1 - - # Check for the build system type - echo $ac_n "checking build system type... $ac_c" 1>&6 - - build_alias=$build - case $build_alias in - NONE) - case $nonopt in - NONE) build_alias=$host_alias ;; - *) build_alias=$nonopt ;; - esac ;; - esac - - build=`$SHELL $ac_config_sub $build_alias` - build_cpu=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` - build_vendor=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` - build_os=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` - echo "$ac_t""$build" 1>&6 - -elif test -z "$host"; then - echo "$progname: you must specify a host type if you use \`--no-verify'" 1>&2 - echo "$help" 1>&2 - exit 1 -else - host_alias=$host - build_alias=$host_alias - build=$host -fi - -if test x"$host" != x"$build"; then - ac_tool_prefix=${host_alias}- -else - ac_tool_prefix= -fi - -host_cpu=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` -host_vendor=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` -host_os=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` - -# Transform linux* to *-*-linux-gnu*, to support old configure scripts. -case $host_os in -linux-gnu*) ;; -linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'` -esac - -case $host_os in -aix3*) - # AIX sometimes has problems with the GCC collect2 program. For some - # reason, if we set the COLLECT_NAMES environment variable, the problems - # vanish in a puff of smoke. - if test "X${COLLECT_NAMES+set}" != Xset; then - COLLECT_NAMES= - export COLLECT_NAMES - fi - ;; -esac - -# Determine commands to create old-style static archives. -old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs$old_deplibs' -old_postinstall_cmds='chmod 644 $oldlib' -old_postuninstall_cmds= - -if test -n "$RANLIB"; then - old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib" - old_postinstall_cmds="\$RANLIB \$oldlib~$old_postinstall_cmds" -fi - -# Source the script associated with the $tagname tag configuration. -if test -n "$tagname"; then - . $ltmain -else - # FIXME: We should use a variable here - # Configure for a C compiler - . $srcdir/ltcf-c.sh -fi - -# Set sane defaults for various variables -test -z "$AR" && AR=ar -test -z "$AR_FLAGS" && AR_FLAGS=cru -test -z "$AS" && AS=as -test -z "$CC" && CC=cc -test -z "$DLLTOOL" && DLLTOOL=dlltool -test -z "$MAGIC_CMD" && MAGIC_CMD=file -test -z "$LD" && LD=ld -test -z "$LN_S" && LN_S="ln -s" -test -z "$NM" && NM=nm -test -z "$OBJDUMP" && OBJDUMP=objdump -test -z "$RANLIB" && RANLIB=: -test -z "$STRIP" && STRIP=: -test -z "$objext" && objext=o - -echo $ac_n "checking for objdir... $ac_c" 1>&6 -rm -f .libs 2>/dev/null -mkdir .libs 2>/dev/null -if test -d .libs; then - objdir=.libs -else - # MS-DOS does not allow filenames that begin with a dot. - objdir=_libs -fi -rmdir .libs 2>/dev/null -echo "$ac_t$objdir" 1>&6 - -# If no C compiler was specified, use CC. -LTCC=${LTCC-"$CC"} - -# Allow CC to be a program name with arguments. -set dummy $CC -compiler="$2" - -# We assume here that the value for ac_cv_prog_cc_pic will not be cached -# in isolation, and that seeing it set (from the cache) indicates that -# the associated values are set (in the cache) correctly too. -echo $ac_n "checking for $compiler option to produce PIC... $ac_c" 1>&6 -echo "$progname:678:checking for $compiler option to produce PIC" 1>&5 - -if test -z "$ac_cv_prog_cc_pic"; then - echo "$ac_t"none 1>&6 -else - echo "$ac_t""$ac_cv_prog_cc_pic" 1>&6 - - # Check to make sure the pic_flag actually works. - echo $ac_n "checking if $compiler PIC flag $ac_cv_prog_cc_pic works... $ac_c" 1>&6 - echo "$progname:687:checking that $compiler PIC flag $ac_cv_prog_cc_pic works." 1>&5 - if test "X${ac_cv_prog_cc_pic_works+set}" = Xset && \ - test "X${ac_cv_prog_cc_pic_works}" != X; then - echo $ac_n "(cached) $ac_c" 1>&6 - else - ac_cv_prog_cc_pic_works=yes - $rm conftest* - echo $lt_simple_compile_test_code > conftest.$ac_ext - save_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS $ac_cv_prog_cc_pic -DPIC" - if { (eval echo $progname:697: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>conftest.err; } && test -s conftest.$objext; then - # Append any warnings to the config.log. - cat conftest.err 1>&5 - - case $host_os in - hpux9* | hpux10* | hpux11*) - # On HP-UX, both CC and GCC only warn that PIC is supported... then - # they create non-PIC objects. So, if there were any warnings, we - # assume that PIC is not supported. - if test -s conftest.err; then - ac_cv_prog_cc_pic_works=no - ac_cv_prog_cc_can_build_shared=no - ac_cv_prog_cc_pic= - else - ac_cv_prog_cc_pic_works=yes - ac_cv_prog_cc_pic=" $ac_cv_prog_cc_pic" - fi - ;; - *) - ac_cv_prog_cc_pic_works=yes - ac_cv_prog_cc_pic=" $ac_cv_prog_cc_pic" - ;; - esac - else - # Append any errors to the config.log. - cat conftest.err 1>&5 - ac_cv_prog_cc_pic_works=no - ac_cv_prog_cc_can_build_shared=no - ac_cv_prog_cc_pic= - fi - CFLAGS="$save_CFLAGS" - $rm conftest* - fi - # Belt *and* braces to stop my trousers falling down: - if test "X$ac_cv_prog_cc_pic_works" = Xno; then - ac_cv_prog_cc_pic= - ac_cv_prog_cc_can_build_shared=no - fi - echo "$ac_t""$ac_cv_prog_cc_pic_works" 1>&6 -fi - -# Check for any special shared library compilation flags. -if test -n "$ac_cv_prog_cc_shlib"; then - echo "$progname: warning: \`$CC' requires \`$ac_cv_prog_cc_shlib' to build shared libraries" 1>&2 - if echo "$old_CC $old_CFLAGS " | egrep -e "[ ]$ac_cv_prog_cc_shlib[ ]" >/dev/null; then : - else - echo "$progname: add \`$ac_cv_prog_cc_shlib' to the CC or CFLAGS env variable and reconfigure" 1>&2 - ac_cv_prog_cc_can_build_shared=no - fi -fi - -echo $ac_n "checking if $compiler static flag $ac_cv_prog_cc_static works... $ac_c" 1>&6 -echo "$progname:749: checking if $compiler static flag $ac_cv_prog_cc_static works" >&5 -if test "X${ac_cv_prog_cc_static_works+set}" = Xset && \ - test "X${ac_cv_prog_cc_static_works}" != X; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - $rm conftest* - echo $lt_simple_link_test_code > conftest.$ac_ext - save_LDFLAGS="$LDFLAGS" - LDFLAGS="$LDFLAGS $ac_cv_prog_cc_static" - if { (eval echo $progname:758: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then - ac_cv_prog_cc_static_works=yes - else - ac_cv_prog_cc_static_works=no - ac_cv_prog_cc_static= - fi - LDFLAGS="$save_LDFLAGS" - $rm conftest* -fi -# Belt *and* braces to stop my trousers falling down: -if test "X$ac_cv_prog_cc_static_works" = Xno; then - ac_cv_prog_cc_static= -fi -echo "$ac_t""$ac_cv_prog_cc_static_works" 1>&6 -pic_flag="$ac_cv_prog_cc_pic" -special_shlib_compile_flags="$ac_cv_prog_cc_shlib" -wl="$ac_cv_prog_cc_wl" -link_static_flag="$ac_cv_prog_cc_static" -no_builtin_flag="$ac_cv_prog_cc_no_builtin" -can_build_shared="$ac_cv_prog_cc_can_build_shared" - -# find the maximum length of command line arguments -echo "$progname:780: finding the maximum length of command line arguments" 1>&5 -echo $ac_n "finding the maximum length of command line arguments... $ac_c" 1>&6 -if test "${lt_cv_sys_max_cmd_len+set}" = set; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - i=0 - testring="ABCD" - # If test is not a shell built-in, we'll probably end up computing a - # maximum length that is only half of the actual maximum length, but - # we can't tell. - while test "X"`$CONFIG_SHELL $0 --fallback-echo "X$testring" 2>/dev/null` \ - = "XX$testring" && - new_result=`expr "X$testring" : ".*" 2>&1` && - lt_cv_sys_max_cmd_len=$new_result && - test $i != 17 # 1/2 MB should be enough - do - i=`expr $i + 1` - testring=$testring$testring - done - testring= - # add a significant safety factor because C++ compilers can tack on massive amounts - # of additional arguments before passing them to the linker. 1/4 should be good. - len=`expr $lt_cv_sys_max_cmd_len \/ 4` - lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len - $len` -fi -echo "$progname:@lineno@: result: $lt_cv_sys_max_cmd_len" 1>&5 -echo "${ac_t}$lt_cv_sys_max_cmd_len" 1>&6 - -if test -n $lt_cv_sys_max_cmd_len ; then - max_cmd_len=$lt_cv_sys_max_cmd_len -else - max_cmd_len=none -fi - -# Check to see if options -o and -c are simultaneously supported by compiler -echo $ac_n "checking if $compiler supports -c -o file.$objext... $ac_c" 1>&6 -if test "${lt_cv_compiler_c_o+set}" = set; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - $rm -r conftest 2>/dev/null - mkdir conftest - cd conftest - $rm conftest* - echo $lt_simple_compile_test_code > conftest.$ac_ext - mkdir out - # According to Tom Tromey, Ian Lance Taylor reported there are C compilers - # that will create temporary files in the current directory regardless of - # the output directory. Thus, making CWD read-only will cause this test - # to fail, enabling locking or at least warning the user not to do parallel - # builds. - chmod -w . - save_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS -o out/conftest2.$objext" - echo "$progname:833: checking if $compiler supports -c -o file.$objext" >&5 - if { (eval echo $progname:834: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>out/conftest.err; } && test -s out/conftest2.$objext; then - - # The compiler can only warn and ignore the option if not recognized - # So say no if there are warnings - if test -s out/conftest.err; then - lt_cv_compiler_c_o=no - else - lt_cv_compiler_c_o=yes - fi - else - # Append any errors to the config.log. - cat out/conftest.err 1>&5 - lt_cv_compiler_c_o=no - fi - CFLAGS="$save_CFLAGS" - chmod u+w . - $rm conftest* out/* - rmdir out - cd .. - rmdir conftest - $rm -r conftest 2>/dev/null -fi -compiler_c_o=$lt_cv_compiler_c_o -echo "${ac_t}$compiler_c_o" 1>&6 - -# Check to see if we can do hard links to lock some files if needed -hard_links="nottested" -if test "$compiler_c_o" = no && test "$need_locks" != no; then - # do not overwrite the value of need_locks provided by the user - echo $ac_n "checking if we can lock with hard links... $ac_c" 1>&6 - hard_links=yes - $rm conftest* - ln conftest.a conftest.b 2>/dev/null && hard_links=no - touch conftest.a - ln conftest.a conftest.b 2>&5 || hard_links=no - ln conftest.a conftest.b 2>/dev/null && hard_links=no - echo "$ac_t$hard_links" 1>&6 - $rm conftest* - if test "$hard_links" = no; then - echo "*** WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&2 - need_locks=warn - fi -else - need_locks=no -fi - -if test "$with_gcc" = yes; then - # Check to see if options -fno-rtti -fno-exceptions are supported by compiler - echo $ac_n "checking if $compiler supports -fno-rtti -fno-exceptions ... $ac_c" 1>&6 - $rm conftest* - echo $lt_simple_compile_test_code > conftest.$ac_ext - save_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS -fno-rtti -fno-exceptions -c conftest.$ac_ext" - echo "$progname:887: checking if $compiler supports -fno-rtti -fno-exceptions" >&5 - if { (eval echo $progname:888: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>conftest.err; } && test -s conftest.$objext; then - - # The compiler can only warn and ignore the option if not recognized - # So say no if there are warnings - if test -s conftest.err; then - echo "$ac_t"no 1>&6 - compiler_rtti_exceptions=no - else - echo "$ac_t"yes 1>&6 - compiler_rtti_exceptions=yes - fi - else - # Append any errors to the config.log. - cat conftest.err 1>&5 - compiler_rtti_exceptions=no - echo "$ac_t"no 1>&6 - fi - CFLAGS="$save_CFLAGS" - $rm conftest* - - if test "$compiler_rtti_exceptions" = "yes"; then - no_builtin_flag=' -fno-builtin -fno-rtti -fno-exceptions' - else - no_builtin_flag=' -fno-builtin' - fi - -fi - -# See if the linker supports building shared libraries. -echo $ac_n "checking whether the linker ($LD) supports shared libraries... $ac_c" 1>&6 - -echo "$ac_t$ld_shlibs" 1>&6 -test "$ld_shlibs" = no && can_build_shared=no - -# Check hardcoding attributes. -echo $ac_n "checking how to hardcode library paths into programs... $ac_c" 1>&6 -hardcode_action= -if test -n "$hardcode_libdir_flag_spec" || \ - test -n "$runpath_var"; then - - # We can hardcode non-existant directories. - if test "$hardcode_direct" != no && - # If the only mechanism to avoid hardcoding is shlibpath_var, we - # have to relink, otherwise we might link with an installed library - # when we should be linking with a yet-to-be-installed one - ## test "$hardcode_shlibpath_var" != no && - test "$hardcode_minus_L" != no; then - # Linking always hardcodes the temporary library directory. - hardcode_action=relink - else - # We can link without hardcoding, and we can hardcode nonexisting dirs. - hardcode_action=immediate - fi -else - # We cannot hardcode anything, or else we can only hardcode existing - # directories. - hardcode_action=unsupported -fi -echo "$ac_t$hardcode_action" 1>&6 - -echo $ac_n "checking whether stripping libraries is possible... $ac_c" 1>&6 -if test -n "$STRIP" && $STRIP -V 2>&1 | grep "GNU strip" >/dev/null; then - test -z "$old_striplib" && old_striplib="$STRIP --strip-debug" - test -z "$striplib" && striplib="$STRIP --strip-unneeded" - echo "${ac_t}yes" 1>&6 -else - echo "${ac_t}no" 1>&6 -fi - -case $reload_flag in -"" | " "*) ;; -*) reload_flag=" $reload_flag" ;; -esac -reload_cmds='$LD$reload_flag -o $output$reload_objs' -test -z "$deplibs_check_method" && deplibs_check_method=unknown - -# PORTME Fill in your ld.so characteristics -library_names_spec= -libname_spec='lib$name' -soname_spec= -postinstall_cmds= -postuninstall_cmds= -finish_cmds= -finish_eval= -shlibpath_var= -shlibpath_overrides_runpath=unknown -version_type=none -dynamic_linker="$host_os ld.so" -sys_lib_dlsearch_path_spec="/lib /usr/lib" -sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" - -echo $ac_n "checking dynamic linker characteristics... $ac_c" 1>&6 -case $host_os in -aix3*) - version_type=linux - library_names_spec='${libname}${release}.so$versuffix $libname.a' - shlibpath_var=LIBPATH - - # AIX 3 has no versioning support, so we append a major version to the name. - soname_spec='${libname}${release}.so$major' - ;; - -aix4* | aix5*) - version_type=linux - if test "$host_cpu" = ia64; then - # AIX 5 supports IA64 - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - shlibpath_var=LD_LIBRARY_PATH - else - # AIX (on Power*) has no versioning support, so currently we can not hardcode correct - # soname into executable. Probably we can add versioning support to - # collect2, so additional links can be useful in future. - # We preserve .a as extension for shared libraries though AIX4.2 - # and later linker supports .so - if test "$aix_use_runtimelinking" = yes; then - # If using run time linking (on AIX 4.2 or later) use lib.so instead of - # lib.a to let people know that these are not typical AIX shared libraries. - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - else - # We preserve .a as extension for shared libraries though AIX4.2 - # and later when we are not doing run time linking. - library_names_spec='${libname}${release}.a $libname.a' - soname_spec='${libname}${release}.so$major' - fi - # If we're using GNU nm, then we don't want the "-C" option. - # -C means demangle to AIX nm, but means don't demangle with GNU nm - if $NM -V 2>&1 | egrep '(GNU)' > /dev/null; then - export_symbols_cmds='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$2 == "T") || (\$2 == "D") || (\$2 == "B")) && (substr(\$3,1,1) != ".")) { print \$3 } }'\'' | sort -u > $export_symbols' - else - export_symbols_cmds='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$2 == "T") || (\$2 == "D") || (\$2 == "B")) && (substr(\$3,1,1) != ".")) { print \$3 } }'\'' | sort -u > $export_symbols' - fi - shlibpath_var=LIBPATH - deplibs_check_method=pass_all - case $host_os in - aix4 | aix4.[01] | aix4.[01].*) - if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)' - echo ' yes ' - echo '#endif'; } | ${CC} -E - | grep yes > /dev/null; then - : - else - # With GCC up to 2.95.x, collect2 would create an import file - # for dependence libraries. The import file would start with - # the line `#! .'. This would cause the generated library to - # depend on `.', always an invalid library. This was fixed in - # development snapshots of GCC prior to 3.0. - can_build_shared=no - fi - ;; - esac - fi - ;; - -amigaos*) - library_names_spec='$libname.ixlibrary $libname.a' - # Create ${libname}_ixlibrary.a entries in /sys/libs. - finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$echo "X$lib" | $Xsed -e '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; test $rm /sys/libs/${libname}_ixlibrary.a; $show "(cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a)"; (cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a) || exit 1; done' - ;; - -beos*) - library_names_spec='${libname}.so' - dynamic_linker="$host_os ld.so" - shlibpath_var=LIBRARY_PATH - lt_cv_dlopen="load_add_on" - lt_cv_dlopen_libs= - lt_cv_dlopen_self=yes - ;; - -bsdi4*) - version_type=linux - need_version=no - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - soname_spec='${libname}${release}.so$major' - finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir' - shlibpath_var=LD_LIBRARY_PATH - sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib" - sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib" - export_dynamic_flag_spec=-rdynamic - # the default ld.so.conf also contains /usr/contrib/lib and - # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow - # libtool to hard-code these into programs - ;; - -cygwin* | mingw* | pw32*) - version_type=windows - need_version=no - need_lib_prefix=no - case $with_gcc,$host_os in - yes,cygwin*) - library_names_spec='$libname.dll.a' - soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | [sed -e 's/[.]/-/g']`${versuffix}.dll' - postinstall_cmds='dlpath=`bash 2>&1 -c '\''. $dir/${file}i; echo \$dlname'\''`~ - dldir=$destdir/`dirname \$dlpath`~ - test -d \$dldir || mkdir -p \$dldir~ - $install_prog .libs/$dlname \$dldir/$dlname' - postuninstall_cmds='dldll=`bash 2>&1 -c '\''. $file; echo \$dlname'\''`~ - dlpath=$dir/\$dldll; $rm \$dlpath' - ;; - yes,mingw*) - library_names_spec='${libname}`echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll' - sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | sed -e "s/^libraries://" -e "s/;/ /g"` - ;; - yes,pw32*) - library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll' -;; - *) - library_names_spec='${libname}`echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll $libname.lib' - ;; - esac - dynamic_linker='Win32 ld.exe' - # FIXME: first we should search . and the directory the executable is in - shlibpath_var=PATH - lt_cv_dlopen="LoadLibrary" - lt_cv_dlopen_libs= - ;; - -darwin* | rhapsody*) - dynamic_linker="$host_os dyld" - version_type=darwin - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}${versuffix}.`test .$module = .yes && echo so || echo dylib` ${libname}${release}${major}.$`test .$module = .yes && echo so || echo dylib` ${libname}.`test .$module = .yes && echo so || echo dylib`' - soname_spec='${libname}${release}${major}.`test .$module = .yes && echo so || echo dylib`' - shlibpath_overrides_runpath=yes - shlibpath_var=DYLD_LIBRARY_PATH - ;; - -freebsd1*) - dynamic_linker=no - ;; - -freebsd*) - objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout` - version_type=freebsd-$objformat - case $version_type in - freebsd-elf*) - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so $libname.so' - need_version=no - need_lc=no - need_lib_prefix=no - ;; - freebsd-*) - library_names_spec='${libname}${release}.so$versuffix $libname.so$versuffix' - need_version=yes - ;; - esac - shlibpath_var=LD_LIBRARY_PATH - case $host_os in - freebsd2*) - shlibpath_overrides_runpath=yes - ;; - *) - shlibpath_overrides_runpath=no - hardcode_into_libs=yes - ;; - esac - ;; - -gnu*) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so${major} ${libname}.so' - soname_spec='${libname}${release}.so$major' - shlibpath_var=LD_LIBRARY_PATH - hardcode_into_libs=yes - ;; - -hpux9* | hpux10* | hpux11*) - # Give a soname corresponding to the major version so that dld.sl refuses to - # link against other versions. - dynamic_linker="$host_os dld.sl" - version_type=sunos - need_lib_prefix=no - need_version=no - shlibpath_var=SHLIB_PATH - shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH - library_names_spec='${libname}${release}.sl$versuffix ${libname}${release}.sl$major $libname.sl' - soname_spec='${libname}${release}.sl$major' - # HP-UX runs *really* slowly unless shared libraries are mode 555. - postinstall_cmds='chmod 555 $lib' - ;; - -irix5* | irix6*) - version_type=irix - need_lib_prefix=no - need_version=no - soname_spec='${libname}${release}.so$major' - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}${release}.so $libname.so' - case $host_os in - irix5*) - libsuff= shlibsuff= - ;; - *) - case $LD in # libtool.m4 will add one of these switches to LD - *-32|*"-32 ") libsuff= shlibsuff= libmagic=32-bit;; - *-n32|*"-n32 ") libsuff=32 shlibsuff=N32 libmagic=N32;; - *-64|*"-64 ") libsuff=64 shlibsuff=64 libmagic=64-bit;; - *) libsuff= shlibsuff= libmagic=never-match;; - esac - ;; - esac - shlibpath_var=LD_LIBRARY${shlibsuff}_PATH - shlibpath_overrides_runpath=no - sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}" - sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}" - ;; - -# No shared lib support for Linux oldld, aout, or coff. -linux-gnuoldld* | linux-gnuaout* | linux-gnucoff*) - dynamic_linker=no - ;; - -# This must be Linux ELF. -linux-gnu*) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - soname_spec='${libname}${release}.so$major' - finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=no - # This implies no fast_install, which is unacceptable. - # Some rework will be needed to allow for fast_install - # before this can be enabled. - hardcode_into_libs=yes - - # We used to test for /lib/ld.so.1 and disable shared libraries on - # powerpc, because MkLinux only supported shared libraries with the - # GNU dynamic linker. Since this was broken with cross compilers, - # most powerpc-linux boxes support dynamic linking these days and - # people can always --disable-shared, the test was removed, and we - # assume the GNU/Linux dynamic linker is in use. - dynamic_linker='GNU/Linux ld.so' - ;; - -netbsd*) - need_lib_prefix=no - need_version=no - version_type=sunos - if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then - library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix' - finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' - dynamic_linker='NetBSD (a.out) ld.so' - else - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}${release}.so ${libname}.so' - soname_spec='${libname}${release}.so$major' - dynamic_linker='NetBSD ld.elf_so' - fi - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - hardcode_into_libs=yes - ;; - -newsos6) - version_type=linux - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - ;; - -openbsd*) - version_type=sunos - if test "$with_gnu_ld" = yes; then - need_lib_prefix=no - need_version=no - fi - library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix' - finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' - shlibpath_var=LD_LIBRARY_PATH - ;; - -os2*) - libname_spec='$name' - need_lib_prefix=no - library_names_spec='$libname.dll $libname.a' - dynamic_linker='OS/2 ld.exe' - shlibpath_var=LIBPATH - ;; - -osf3* | osf4* | osf5*) - version_type=osf - need_version=no - soname_spec='${libname}${release}.so' - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so $libname.so' - shlibpath_var=LD_LIBRARY_PATH - sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib" - sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec" - ;; - -sco3.2v5*) - version_type=osf - soname_spec='${libname}${release}.so$major' - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - shlibpath_var=LD_LIBRARY_PATH - ;; - -solaris*) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - soname_spec='${libname}${release}.so$major' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - hardcode_into_libs=yes - # ldd complains unless libraries are executable - postinstall_cmds='chmod +x $lib' - ;; - -sunos4*) - version_type=sunos - library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix' - finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=yes - if test "$with_gnu_ld" = yes; then - need_lib_prefix=no - fi - need_version=yes - ;; - -sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) - version_type=linux - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - soname_spec='${libname}${release}.so$major' - shlibpath_var=LD_LIBRARY_PATH - case $host_vendor in - motorola) - need_lib_prefix=no - need_version=no - shlibpath_overrides_runpath=no - sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib' - ;; - esac - ;; - -uts4*) - version_type=linux - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - soname_spec='${libname}${release}.so$major' - shlibpath_var=LD_LIBRARY_PATH - ;; - -dgux*) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' - soname_spec='${libname}${release}.so$major' - shlibpath_var=LD_LIBRARY_PATH - ;; - -sysv4*MP*) - if test -d /usr/nec ;then - version_type=linux - library_names_spec='$libname.so.$versuffix $libname.so.$major $libname.so' - soname_spec='$libname.so.$major' - shlibpath_var=LD_LIBRARY_PATH - fi - ;; - -*) - dynamic_linker=no - ;; -esac -echo "$ac_t$dynamic_linker" 1>&6 -test "$dynamic_linker" = no && can_build_shared=no - -# Check for command to grab the raw symbol name followed by C symbol from nm. -echo $ac_n "checking command to parse $NM output... $ac_c" 1>&6 - -# These are sane defaults that work on at least a few old systems. -# [They come from Ultrix. What could be older than Ultrix?!! ;)] - -# Character class describing NM global symbol codes. -symcode='[BCDEGRST]' - -# Regexp to match symbols that can be accessed directly from C. -sympat='\([_A-Za-z][_A-Za-z0-9]*\)' - -# Transform the above into a raw symbol and a C symbol. -symxfrm='\1 \2\3 \3' - -# Transform an extracted symbol line into a proper C declaration -global_symbol_to_cdecl="sed -n -e 's/^. .* \(.*\)$/extern char \1;/p'" - -# Define system-specific variables. -case $host_os in -aix*) - symcode='[BCDT]' - ;; -cygwin* | mingw* | pw32*) - symcode='[ABCDGISTW]' - ;; -hpux*) # Its linker distinguishes data from code symbols - global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern char \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'" - ;; -irix*) - symcode='[BCDEGRST]' - ;; -solaris* | sysv5*) - symcode='[BDT]' - ;; -sysv4) - symcode='[DFNSTU]' - ;; -esac - -# Handle CRLF in mingw tool chain -opt_cr= -case $host_os in -mingw*) - opt_cr=`echo 'x\{0,1\}' | tr x '\015'` # option cr in regexp - ;; -esac - -# If we're using GNU nm, then use its standard symbol codes. -if $NM -V 2>&1 | egrep '(GNU|with BFD)' > /dev/null; then - symcode='[ABCDGISTW]' -fi - -# Try without a prefix undercore, then with it. -for ac_symprfx in "" "_"; do - - # Write the raw and C identifiers. - global_symbol_pipe="sed -n -e 's/^.*[ ]\($symcode$symcode*\)[ ][ ]*\($ac_symprfx\)$sympat$opt_cr$/$symxfrm/p'" - - # Check to see that the pipe works correctly. - pipe_works=no - $rm conftest* - cat > conftest.$ac_ext <&5 - if { (eval echo $progname:1432: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; } && test -s conftest.$objext; then - # Now try to grab the symbols. - nlist=conftest.nm - if { echo "$progname:1435: eval \"$NM conftest.$objext | $global_symbol_pipe > $nlist\"" >&5; eval "$NM conftest.$objext | $global_symbol_pipe > $nlist 2>&5"; } && test -s "$nlist"; then - - # Try sorting and uniquifying the output. - if sort "$nlist" | uniq > "$nlist"T; then - mv -f "$nlist"T "$nlist" - else - rm -f "$nlist"T - fi - - # Make sure that we snagged all the symbols we need. - if egrep ' nm_test_var$' "$nlist" >/dev/null; then - if egrep ' nm_test_func$' "$nlist" >/dev/null; then - cat < conftest.$ac_ext -#ifdef __cplusplus -extern "C" { -#endif - -EOF - # Now generate the symbol file. - eval "$global_symbol_to_cdecl"' < "$nlist" >> conftest.$ac_ext' - - cat <> conftest.$ac_ext -#if defined (__STDC__) && __STDC__ -# define lt_ptr_t void * -#else -# define lt_ptr_t char * -# define const -#endif - -/* The mapping between symbol names and symbols. */ -const struct { - const char *name; - lt_ptr_t address; -} -lt_preloaded_symbols[] = -{ -EOF - sed "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (lt_ptr_t) \&\2},/" < "$nlist" >> conftest.$ac_ext - cat <<\EOF >> conftest.$ac_ext - {0, (lt_ptr_t) 0} -}; - -#ifdef __cplusplus -} -#endif -EOF - # Now try linking the two files. - mv conftest.$objext conftstm.$objext - save_LIBS="$LIBS" - save_CFLAGS="$CFLAGS" - LIBS="conftstm.$objext" - CFLAGS="$CFLAGS$no_builtin_flag" - if { (eval echo $progname:1487: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then - pipe_works=yes - else - echo "$progname: failed program was:" >&5 - cat conftest.$ac_ext >&5 - fi - LIBS="$save_LIBS" - else - echo "cannot find nm_test_func in $nlist" >&5 - fi - else - echo "cannot find nm_test_var in $nlist" >&5 - fi - else - echo "cannot run $global_symbol_pipe" >&5 - fi - else - echo "$progname: failed program was:" >&5 - cat conftest.$ac_ext >&5 - fi - $rm conftest* conftst* - - # Do not use the global_symbol_pipe unless it works. - if test "$pipe_works" = yes; then - break - else - global_symbol_pipe= - fi -done -if test "$pipe_works" = yes; then - echo "${ac_t}ok" 1>&6 -else - echo "${ac_t}failed" 1>&6 -fi - -if test -z "$global_symbol_pipe"; then - global_symbol_to_cdecl= -fi - -# Report the final consequences. -echo "checking if libtool supports shared libraries... $can_build_shared" 1>&6 - -# Only try to build win32 dlls if AC_LIBTOOL_WIN32_DLL was used in -# configure.in, otherwise build static only libraries. -case $host_os in -cygwin* | mingw* | pw32* | os2*) - if test x$can_build_shared = xyes; then - test x$enable_win32_dll = xno && can_build_shared=no - echo "checking if package supports dlls... $can_build_shared" 1>&6 - fi -;; -esac - -echo $ac_n "checking whether to build shared libraries... $ac_c" 1>&6 -test "$can_build_shared" = "no" && enable_shared=no - -# On AIX, shared libraries and static libraries use the same namespace, and -# are all built from PIC. -case $host_os in -aix3*) - test "$enable_shared" = yes && enable_static=no - if test -n "$RANLIB"; then - archive_cmds="$archive_cmds~\$RANLIB \$lib" - postinstall_cmds='$RANLIB $lib' - fi - ;; - -aix4*) - test "$enable_shared" = yes && enable_static=no - ;; -esac - -echo "$ac_t$enable_shared" 1>&6 - -# Make sure either enable_shared or enable_static is yes. -test "$enable_shared" = yes || enable_static=yes - -echo "checking whether to build static libraries... $enable_static" 1>&6 - -if test "$hardcode_action" = relink; then - # Fast installation is not supported - enable_fast_install=no -elif test "$shlibpath_overrides_runpath" = yes || - test "$enable_shared" = no; then - # Fast installation is not necessary - enable_fast_install=needless -fi - -variables_saved_for_relink="PATH $shlibpath_var $runpath_var" -if test "$with_gcc" = yes; then - variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" -fi - -# Check whether we must set pic_mode to default -test -z "$pic_flag" && pic_mode=default - -if test "x$enable_dlopen" != xyes; then - enable_dlopen=unknown - enable_dlopen_self=unknown - enable_dlopen_self_static=unknown -else -if test "X${lt_cv_dlopen+set}" != Xset; then - lt_cv_dlopen=no lt_cv_dlopen_libs= -echo $ac_n "checking for dlopen in -ldl""... $ac_c" 1>&6 -echo "$progname:1591: checking for dlopen in -ldl" >&5 -if test "X${ac_cv_lib_dl_dlopen+set}" = Xset; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - ac_save_LIBS="$LIBS" -LIBS="-ldl $LIBS" -cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then - rm -rf conftest* - ac_cv_lib_dl_dlopen=yes -else - echo "$progname: failed program was:" >&5 - cat conftest.$ac_ext >&5 - rm -rf conftest* - ac_cv_lib_dl_dlopen=no -fi -rm -f conftest* -LIBS="$ac_save_LIBS" - -fi -if test "X$ac_cv_lib_dl_dlopen" = Xyes; then - echo "$ac_t""yes" 1>&6 - lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl" -else - echo "$ac_t""no" 1>&6 -echo $ac_n "checking for dlopen""... $ac_c" 1>&6 -echo "$progname:1630: checking for dlopen" >&5 -if test "X${ac_cv_func_dlopen+set}" = Xset; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - cat > conftest.$ac_ext < -/* Override any gcc2 internal prototype to avoid an error. */ -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char dlopen(); - -int main() { - -/* The GNU C library defines this for functions which it implements - to always fail with ENOSYS. Some functions are actually named - something starting with __ and the normal name is an alias. */ -#if defined (__stub_dlopen) || defined (__stub___dlopen) -choke me -#else -dlopen(); -#endif - -; return 0; } -EOF -if { (eval echo $progname:1660: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then - rm -rf conftest* - ac_cv_func_dlopen=yes -else - echo "$progname: failed program was:" >&5 - cat conftest.$ac_ext >&5 - rm -rf conftest* - ac_cv_func_dlopen=no -fi -rm -f conftest* -fi -if test "X$ac_cv_func_dlopen" = Xyes; then - echo "$ac_t""yes" 1>&6 - lt_cv_dlopen="dlopen" -else - echo "$ac_t""no" 1>&6 -echo $ac_n "checking for dlopen in -lsvld""... $ac_c" 1>&6 -echo "$progname:1677: checking for dlopen in -lsvld" >&5 -if test "X${ac_cv_lib_svld_dlopen+set}" = Xset; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - ac_save_LIBS="$LIBS" -LIBS="-lsvld $LIBS" -cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then - rm -rf conftest* - ac_cv_lib_svld_dlopen=yes -else - echo "$progname: failed program was:" >&5 - cat conftest.$ac_ext >&5 - rm -rf conftest* - ac_cv_lib_svld_dlopen=no -fi -rm -f conftest* -LIBS="$ac_save_LIBS" - -fi -if test "X$ac_cv_lib_svld_dlopen" = Xyes; then - echo "$ac_t""yes" 1>&6 - lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld" -else - echo "$ac_t""no" 1>&6 -echo $ac_n "checking for dld_link in -ldld""... $ac_c" 1>&6 -echo "$progname:1716: checking for dld_link in -ldld" >&5 -if test "X${ac_cv_lib_dld_dld_link+set}" = Xset; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - ac_save_LIBS="$LIBS" -LIBS="-ldld $LIBS" -cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then - rm -rf conftest* - ac_cv_lib_dld_dld_link=yes -else - echo "$progname: failed program was:" >&5 - cat conftest.$ac_ext >&5 - rm -rf conftest* - ac_cv_lib_dld_dld_link=no -fi -rm -f conftest* -LIBS="$ac_save_LIBS" - -fi -if test "X$ac_cv_lib_dld_dld_link" = Xyes; then - echo "$ac_t""yes" 1>&6 - lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld" -else - echo "$ac_t""no" 1>&6 -echo $ac_n "checking for shl_load""... $ac_c" 1>&6 -echo "$progname:1755: checking for shl_load" >&5 -if test "X${ac_cv_func_shl_load+set}" = Xset; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - cat > conftest.$ac_ext < -/* Override any gcc2 internal prototype to avoid an error. */ -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char shl_load(); - -int main() { - -/* The GNU C library defines this for functions which it implements - to always fail with ENOSYS. Some functions are actually named - something starting with __ and the normal name is an alias. */ -#if defined (__stub_shl_load) || defined (__stub___shl_load) -choke me -#else -shl_load(); -#endif - -; return 0; } -EOF -if { (eval echo $progname:1785: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then - rm -rf conftest* - ac_cv_func_shl_load=yes -else - echo "$progname: failed program was:" >&5 - cat conftest.$ac_ext >&5 - rm -rf conftest* - ac_cv_func_shl_load=no -fi -rm -f conftest* -fi - -if test "X$ac_cv_func_shl_load" = Xyes; then - echo "$ac_t""yes" 1>&6 - lt_cv_dlopen="shl_load" -else - echo "$ac_t""no" 1>&6 -echo $ac_n "checking for shl_load in -ldld""... $ac_c" 1>&6 -echo "$progname:1803: checking for shl_load in -ldld" >&5 -if test "X${ac_cv_lib_dld_shl_load+set}" = Xset; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - ac_save_LIBS="$LIBS" -LIBS="-ldld $LIBS" -cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then - rm -rf conftest* - ac_cv_lib_dld_shl_load=yes -else - echo "$progname: failed program was:" >&5 - cat conftest.$ac_ext >&5 - rm -rf conftest* - ac_cv_lib_dld_shl_load=no -fi -rm -f conftest* -LIBS="$ac_save_LIBS" - -fi -if test "X$ac_cv_lib_dld_shl_load" = Xyes; then - echo "$ac_t""yes" 1>&6 - lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld" -else - echo "$ac_t""no" 1>&6 -fi - - -fi - - -fi - - -fi - - -fi - -fi - -fi - - if test "x$lt_cv_dlopen" != xno; then - enable_dlopen=yes - else - enable_dlopen=no - fi - - case $lt_cv_dlopen in - dlopen) -for ac_hdr in dlfcn.h; do -ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` -echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "$progname:1871: checking for $ac_hdr" >&5 -if eval "test \"`echo 'X$''{'ac_cv_header_$ac_safe'+set}'`\" = Xset"; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - cat > conftest.$ac_ext < -int fnord = 0; -int main () { return(0); } -EOF -ac_try="$ac_compile >/dev/null 2>conftest.out" -{ (eval echo $progname:1882: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` -if test -z "$ac_err"; then - rm -rf conftest* - eval "ac_cv_header_$ac_safe=yes" -else - echo "$ac_err" >&5 - echo "$progname: failed program was:" >&5 - cat conftest.$ac_ext >&5 - rm -rf conftest* - eval "ac_cv_header_$ac_safe=no" -fi -rm -f conftest* -fi -if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then - echo "$ac_t""yes" 1>&6 -else - echo "$ac_t""no" 1>&6 -fi -done - - if test "x$ac_cv_header_dlfcn_h" = xyes; then - CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H" - fi - eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\" - LIBS="$lt_cv_dlopen_libs $LIBS" - - echo $ac_n "checking whether a program can dlopen itself""... $ac_c" 1>&6 -echo "$progname:1910: checking whether a program can dlopen itself" >&5 -if test "X${lt_cv_dlopen_self+set}" = Xset; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - if test "$cross_compiling" = yes; then - lt_cv_dlopen_self=cross - else - cat > conftest.$ac_ext < -#endif - -#include - -#ifdef RTLD_GLOBAL -# define LTDL_GLOBAL RTLD_GLOBAL -#else -# ifdef DL_GLOBAL -# define LTDL_GLOBAL DL_GLOBAL -# else -# define LTDL_GLOBAL 0 -# endif -#endif - -/* We may have to define LTDL_LAZY_OR_NOW in the command line if we - find out it does not work in some platform. */ -#ifndef LTDL_LAZY_OR_NOW -# ifdef RTLD_LAZY -# define LTDL_LAZY_OR_NOW RTLD_LAZY -# else -# ifdef DL_LAZY -# define LTDL_LAZY_OR_NOW DL_LAZY -# else -# ifdef RTLD_NOW -# define LTDL_LAZY_OR_NOW RTLD_NOW -# else -# ifdef DL_NOW -# define LTDL_LAZY_OR_NOW DL_NOW -# else -# define LTDL_LAZY_OR_NOW 0 -# endif -# endif -# endif -# endif -#endif - -void fnord() { int i=42; } -int main() { - void *self, *ptr1, *ptr2; self=dlopen(0,LTDL_GLOBAL|LTDL_LAZY_OR_NOW); - if(self) { ptr1=dlsym(self,"fnord"); ptr2=dlsym(self,"_fnord"); - if(ptr1 || ptr2) { dlclose(self); exit(0); } } exit(1); } - -EOF -if { (eval echo $progname:1965: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null -then - lt_cv_dlopen_self=yes -else - echo "$progname: failed program was:" >&5 - cat conftest.$ac_ext >&5 - rm -fr conftest* - lt_cv_dlopen_self=no -fi -rm -fr conftest* -fi - -fi - -echo "$ac_t""$lt_cv_dlopen_self" 1>&6 - - if test "$lt_cv_dlopen_self" = yes; then - LDFLAGS="$LDFLAGS $link_static_flag" - echo $ac_n "checking whether a statically linked program can dlopen itself""... $ac_c" 1>&6 -echo "$progname:1984: checking whether a statically linked program can dlopen itself" >&5 -if test "X${lt_cv_dlopen_self_static+set}" = Xset; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - if test "$cross_compiling" = yes; then - lt_cv_dlopen_self_static=cross - else - cat > conftest.$ac_ext < -#endif - -#include - -#ifdef RTLD_GLOBAL -# define LTDL_GLOBAL RTLD_GLOBAL -#else -# ifdef DL_GLOBAL -# define LTDL_GLOBAL DL_GLOBAL -# else -# define LTDL_GLOBAL 0 -# endif -#endif - -/* We may have to define LTDL_LAZY_OR_NOW in the command line if we - find out it does not work in some platform. */ -#ifndef LTDL_LAZY_OR_NOW -# ifdef RTLD_LAZY -# define LTDL_LAZY_OR_NOW RTLD_LAZY -# else -# ifdef DL_LAZY -# define LTDL_LAZY_OR_NOW DL_LAZY -# else -# ifdef RTLD_NOW -# define LTDL_LAZY_OR_NOW RTLD_NOW -# else -# ifdef DL_NOW -# define LTDL_LAZY_OR_NOW DL_NOW -# else -# define LTDL_LAZY_OR_NOW 0 -# endif -# endif -# endif -# endif -#endif - -void fnord() { int i=42; } -int main() { - void *self, *ptr1, *ptr2; self=dlopen(0,LTDL_GLOBAL|LTDL_LAZY_OR_NOW); - if(self) { ptr1=dlsym(self,"fnord"); ptr2=dlsym(self,"_fnord"); - if(ptr1 || ptr2) { dlclose(self); exit(0); } } exit(1); } - -EOF -if { (eval echo $progname:2039: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null -then - lt_cv_dlopen_self_static=yes -else - echo "$progname: failed program was:" >&5 - cat conftest.$ac_ext >&5 - rm -fr conftest* - lt_cv_dlopen_self_static=no -fi -rm -fr conftest* -fi - -fi - -echo "$ac_t""$lt_cv_dlopen_self_static" 1>&6 -fi - ;; - esac - - case $lt_cv_dlopen_self in - yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;; - *) enable_dlopen_self=unknown ;; - esac - - case $lt_cv_dlopen_self_static in - yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;; - *) enable_dlopen_self_static=unknown ;; - esac -fi - -# Copy echo and quote the copy, instead of the original, because it is -# used later. -ltecho="$echo" -if test "X$ltecho" = "X$CONFIG_SHELL $0 --fallback-echo"; then - ltecho="$CONFIG_SHELL \$0 --fallback-echo" -fi -LTSHELL="$SHELL" - -LTCONFIG_VERSION="$VERSION" - -# Only quote variables if we're using ltmain.sh. -case $ltmain in -*.sh) - # Now quote all the things that may contain metacharacters. - for var in ltecho old_AR old_AR_FLAGS old_CC old_LTCC old_CFLAGS old_CPPFLAGS \ - old_MAGIC_CMD old_LD old_LDFLAGS old_LIBS \ - old_LN_S old_NM old_RANLIB old_STRIP \ - old_AS old_DLLTOOL old_OBJDUMP \ - old_OBJEXT old_EXEEXT old_reload_flag \ - old_deplibs_check_method old_file_magic_cmd \ - AR AR_FLAGS CC LTCC LD LN_S NM LTSHELL LTCONFIG_VERSION \ - reload_flag reload_cmds wl \ - pic_flag link_static_flag no_builtin_flag export_dynamic_flag_spec \ - thread_safe_flag_spec whole_archive_flag_spec libname_spec \ - library_names_spec soname_spec \ - RANLIB old_archive_cmds old_archive_from_new_cmds old_postinstall_cmds \ - old_postuninstall_cmds archive_cmds archive_expsym_cmds postinstall_cmds \ - postuninstall_cmds extract_expsyms_cmds old_archive_from_expsyms_cmds \ - predep_objects postdep_objects predeps postdeps compiler_lib_search_path \ - old_striplib striplib file_magic_cmd export_symbols_cmds \ - deplibs_check_method allow_undefined_flag no_undefined_flag \ - finish_cmds finish_eval global_symbol_pipe global_symbol_to_cdecl \ - hardcode_libdir_flag_spec hardcode_libdir_separator \ - sys_lib_search_path_spec sys_lib_dlsearch_path_spec \ - compiler_c_o need_locks exclude_expsyms include_expsyms; do - - case $var in - reload_cmds | old_archive_cmds | old_archive_from_new_cmds | \ - old_postinstall_cmds | old_postuninstall_cmds | \ - export_symbols_cmds | archive_cmds | archive_expsym_cmds | \ - extract_expsyms_cmds | old_archive_from_expsyms_cmds | \ - postinstall_cmds | postuninstall_cmds | \ - finish_cmds | sys_lib_search_path_spec | sys_lib_dlsearch_path_spec) - # Double-quote double-evaled strings. - eval "$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$double_quote_subst\" -e \"\$sed_quote_subst\" -e \"\$delay_variable_subst\"\`\\\"" ### testsuite: skip nested quoting test - ;; - *) - eval "$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$sed_quote_subst\"\`\\\"" ### testsuite: skip nested quoting test - ;; - esac - done - - case $ltecho in - *'\$0 --fallback-echo"') - ltecho=`$echo "X$ltecho" | $Xsed -e 's/\\\\\\\$0 --fallback-echo"$/$0 --fallback-echo"/'` - ;; - esac - - if test -z "$tagname"; then - trap "$rm \"$ofile\"; exit 1" 1 2 15 - echo "creating $ofile" - $rm "$ofile" - cat < "$ofile" -#! $SHELL - -# `$echo "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services. -# Generated automatically by $PROGRAM (GNU $PACKAGE $VERSION$TIMESTAMP) -# NOTE: Changes made to this file will be lost: look at ltconfig or ltmain.sh. -# -# Copyright (C) 1996-2000 Free Software Foundation, Inc. -# Originally by Gordon Matzigkeit , 1996 -# -# 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. -# -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. - -# Sed that helps us avoid accidentally triggering echo(1) options like -n. -Xsed="sed -e s/^X//" - -# The HP-UX ksh and POSIX shell print the target directory to stdout -# if CDPATH is set. -if test "X\${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi - -# The names of the tagged configurations supported by this script. -available_tags= - -### BEGIN LIBTOOL CONFIG -EOF - else - echo "appending configuration tag \"$tagname\" to $ofile" - echo "### BEGIN LIBTOOL TAG CONFIG: $tagname" >> "$ofile" - fi - cfgfile="$ofile" - ;; - -*) - # Double-quote the variables that need it (for aesthetics). - for var in old_AR old_AR_FLAGS old_CC old_LTCC old_CFLAGS old_CPPFLAGS \ - old_MAGIC_CMD old_LD old_LDFLAGS old_LIBS \ - old_LN_S old_NM old_RANLIB old_STRIP \ - old_AS old_DLLTOOL old_OBJDUMP \ - old_OBJEXT old_EXEEXT old_reload_flag \ - old_deplibs_check_method old_file_magic_cmd; do - eval "$var=\\\"\$var\\\"" - done - - # Just create a config file. - cfgfile="$ofile.cfg" - if test -z "$tagname"; then - trap "$rm \"$cfgfile\"; exit 1" 1 2 15 - echo "creating $cfgfile" - $rm "$cfgfile" - cat < "$cfgfile" -# `$echo "$cfgfile" | sed 's%^.*/%%'` - Libtool configuration file. -# Generated automatically by $PROGRAM (GNU $PACKAGE $VERSION$TIMESTAMP) - -### BEGIN LIBTOOL CONFIG -EOF - else - echo "appending to $cfgfile" - echo "### BEGIN LIBTOOL TAG CONFIG: $tagname" >> "$ofile" - fi - ;; -esac - -cat <> "$cfgfile" -# Libtool was configured as follows, on host `(hostname || uname -n) 2>/dev/null | sed 1q`: -# -# AR=$old_AR AR_FLAGS=$old_AR_FLAGS LTCC=$old_LTCC CC=$old_CC \\ -# CFLAGS=$old_CFLAGS CPPFLAGS=$old_CPPFLAGS \\ -# MAGIC_CMD=$old_MAGIC_CMD LD=$old_LD LDFLAGS=$old_LDFLAGS LIBS=$old_LIBS \\ -# LN_S=$old_LN_S NM=$old_NM RANLIB=$old_RANLIB STRIP=$old_STRIP \\ -# AS=$old_AS DLLTOOL=$old_DLLTOOL OBJDUMP=$old_OBJDUMP \\ -# objext=$old_OBJEXT exeext=$old_EXEEXT reload_flag=$old_reload_flag \\ -# deplibs_check_method=$old_deplibs_check_method \\ -# file_magic_cmd=$old_file_magic_cmd \\ -# $0$ltconfig_args -# -# Compiler and other test output produced by $progname, useful for -# debugging $progname, is in ./config.log if it exists. - -# The version of $progname that generated this script. -LTCONFIG_VERSION=$LTCONFIG_VERSION - -# Shell to use when invoking shell scripts. -SHELL=$LTSHELL - -# Whether or not to build shared libraries. -build_libtool_libs=$enable_shared - -# Whether or not to add -lc for building shared libraries. -build_libtool_need_lc=$need_lc - -# Whether or not to build static libraries. -build_old_libs=$enable_static - -# Whether or not to optimize for fast installation. -fast_install=$enable_fast_install - -# The host system. -host_alias=$host_alias -host=$host - -# An echo program that does not interpret backslashes. -echo=$ltecho - -# The archiver. -AR=$AR -AR_FLAGS=$AR_FLAGS - -# A C compiler. -LTCC=$LTCC - -# A language-specific compiler. -CC=$CC - -# Is the compiler the GNU C compiler? -with_gcc=$with_gcc - -# The linker used to build libraries. -LD=$LD - -# Whether we need hard or soft links. -LN_S=$LN_S - -# A BSD-compatible nm program. -NM=$NM - -# A symbol stripping program -STRIP=$STRIP - -# Used to examine libraries when file_magic_cmd begins "file" -MAGIC_CMD=$MAGIC_CMD - -# Used on cygwin: DLL creation program. -DLLTOOL="$DLLTOOL" - -# Used on cygwin: object dumper. -OBJDUMP="$OBJDUMP" - -# Used on cygwin: assembler. -AS="$AS" - -# The name of the directory that contains temporary libtool files. -objdir=$objdir - -# How to create reloadable object files. -reload_flag=$reload_flag -reload_cmds=$reload_cmds - -# How to pass a linker flag through the compiler. -wl=$wl - -# Object file suffix (normally "o"). -objext="$objext" - -# Old archive suffix (normally "a"). -libext="$libext" - -# Executable file suffix (normally ""). -exeext="$exeext" - -# Additional compiler flags for building library objects. -pic_flag=$pic_flag -pic_mode=$pic_mode - -# What is the maximum length of a command? -max_cmd_len=$max_cmd_len - -# Does compiler simultaneously support -c and -o options? -compiler_c_o=$compiler_c_o - -# Must we lock files when doing compilation ? -need_locks=$need_locks - -# Do we need the lib prefix for modules? -need_lib_prefix=$need_lib_prefix - -# Do we need a version for libraries? -need_version=$need_version - -# Whether dlopen is supported. -dlopen_support=$enable_dlopen - -# Whether dlopen of programs is supported. -dlopen_self=$enable_dlopen_self - -# Whether dlopen of statically linked programs is supported. -dlopen_self_static=$enable_dlopen_self_static - -# Compiler flag to prevent dynamic linking. -link_static_flag=$link_static_flag - -# Compiler flag to turn off builtin functions. -no_builtin_flag=$no_builtin_flag - -# Compiler flag to allow reflexive dlopens. -export_dynamic_flag_spec=$export_dynamic_flag_spec - -# Compiler flag to generate shared objects directly from archives. -whole_archive_flag_spec=$whole_archive_flag_spec - -# Compiler flag to generate thread-safe objects. -thread_safe_flag_spec=$thread_safe_flag_spec - -# Library versioning type. -version_type=$version_type - -# Format of library name prefix. -libname_spec=$libname_spec - -# List of archive names. First name is the real one, the rest are links. -# The last name is the one that the linker finds with -lNAME. -library_names_spec=$library_names_spec - -# The coded name of the library, if different from the real name. -soname_spec=$soname_spec - -# Commands used to build and install an old-style archive. -RANLIB=$RANLIB -old_archive_cmds=$old_archive_cmds -old_postinstall_cmds=$old_postinstall_cmds -old_postuninstall_cmds=$old_postuninstall_cmds - -# Create an old-style archive from a shared archive. -old_archive_from_new_cmds=$old_archive_from_new_cmds - -# Create a temporary old-style archive to link instead of a shared archive. -old_archive_from_expsyms_cmds=$old_archive_from_expsyms_cmds - -# Commands used to build and install a shared archive. -archive_cmds=$archive_cmds -archive_expsym_cmds=$archive_expsym_cmds -postinstall_cmds=$postinstall_cmds -postuninstall_cmds=$postuninstall_cmds - -# Commands to strip libraries. -old_striplib=$old_striplib -striplib=$striplib - -# Dependencies to place before the objects being linked to create a -# shared library. -predep_objects=$predep_objects - -# Dependencies to place after the objects being linked to create a -# shared library. -postdep_objects=$postdep_objects - -# Dependencies to place before the objects being linked to create a -# shared library. -predeps=$predeps - -# Dependencies to place after the objects being linked to create a -# shared library. -postdeps=$postdeps - -# The library search path used internally by the compiler when linking -# a shared library. -compiler_lib_search_path=$compiler_lib_search_path - -# Method to check whether dependent libraries are shared objects. -deplibs_check_method=$deplibs_check_method - -# Command to use when deplibs_check_method == file_magic. -file_magic_cmd=$file_magic_cmd - -# Flag that allows shared libraries with undefined symbols to be built. -allow_undefined_flag=$allow_undefined_flag - -# Flag that forces no undefined symbols. -no_undefined_flag=$no_undefined_flag - -# Commands used to finish a libtool library installation in a directory. -finish_cmds=$finish_cmds - -# Same as above, but a single script fragment to be evaled but not shown. -finish_eval=$finish_eval - -# Take the output of nm and produce a listing of raw symbols and C names. -global_symbol_pipe=$global_symbol_pipe - -# Transform the output of nm in a proper C declaration -global_symbol_to_cdecl=$global_symbol_to_cdecl - -# This is the shared library runtime path variable. -runpath_var=$runpath_var - -# This is the shared library path variable. -shlibpath_var=$shlibpath_var - -# Is shlibpath searched before the hard-coded library search path? -shlibpath_overrides_runpath=$shlibpath_overrides_runpath - -# How to hardcode a shared library path into an executable. -hardcode_action=$hardcode_action - -# Whether we should hardcode library paths into libraries. -hardcode_into_libs=$hardcode_into_libs - -# Flag to hardcode \$libdir into a binary during linking. -# This must work even if \$libdir does not exist. -hardcode_libdir_flag_spec=$hardcode_libdir_flag_spec - -# Whether we need a single -rpath flag with a separated argument. -hardcode_libdir_separator=$hardcode_libdir_separator - -# Set to yes if using DIR/libNAME.so during linking hardcodes DIR into the -# resulting binary. -hardcode_direct=$hardcode_direct - -# Set to yes if using the -LDIR flag during linking hardcodes DIR into the -# resulting binary. -hardcode_minus_L=$hardcode_minus_L - -# Set to yes if using SHLIBPATH_VAR=DIR during linking hardcodes DIR into -# the resulting binary. -hardcode_shlibpath_var=$hardcode_shlibpath_var - -# Variables whose values should be saved in libtool wrapper scripts and -# restored at relink time. -variables_saved_for_relink="$variables_saved_for_relink" - -# Whether libtool must link a program against all its dependency libraries. -link_all_deplibs=$link_all_deplibs - -# Compile-time system search path for libraries -sys_lib_search_path_spec=$sys_lib_search_path_spec - -# Run-time system search path for libraries -sys_lib_dlsearch_path_spec=$sys_lib_dlsearch_path_spec - -# Fix the shell variable \$srcfile for the compiler. -fix_srcfile_path="$fix_srcfile_path" - -# Set to yes if exported symbols are required. -always_export_symbols=$always_export_symbols - -# The commands to list exported symbols. -export_symbols_cmds=$export_symbols_cmds - -# The commands to extract the exported symbol list from a shared archive. -extract_expsyms_cmds=$extract_expsyms_cmds - -# Symbols that should not be listed in the preloaded symbols. -exclude_expsyms=$exclude_expsyms - -# Symbols that must always be exported. -include_expsyms=$include_expsyms - -EOF - -if test -z "$tagname"; then - echo '### END LIBTOOL CONFIG' >> "$ofile" -else - echo "### END LIBTOOL TAG CONFIG: $tagname" >> "$ofile" -fi - -case $ltmain in -*.sh) - echo >> "$ofile" - if test -z "$tagname"; then - case $host_os in - aix3*) - cat <<\EOF >> "$ofile" - -# AIX sometimes has problems with the GCC collect2 program. For some -# reason, if we set the COLLECT_NAMES environment variable, the problems -# vanish in a puff of smoke. -if test "X${COLLECT_NAMES+set}" != Xset; then - COLLECT_NAMES= - export COLLECT_NAMES -fi -EOF - ;; - esac - case $host in - *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*) - cat <<'EOF' >> "$ofile" - # This is a source program that is used to create dlls on Windows - # Don't remove nor modify the starting and closing comments -# /* ltdll.c starts here */ -# #define WIN32_LEAN_AND_MEAN -# #include -# #undef WIN32_LEAN_AND_MEAN -# #include -# -# #ifndef __CYGWIN__ -# # ifdef __CYGWIN32__ -# # define __CYGWIN__ __CYGWIN32__ -# # endif -# #endif -# -# #ifdef __cplusplus -# extern "C" { -# #endif -# BOOL APIENTRY DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved); -# #ifdef __cplusplus -# } -# #endif -# -# #ifdef __CYGWIN__ -# #include -# DECLARE_CYGWIN_DLL( DllMain ); -# #endif -# HINSTANCE __hDllInstance_base; -# -# BOOL APIENTRY -# DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved) -# { -# __hDllInstance_base = hInst; -# return TRUE; -# } -# /* ltdll.c ends here */ - # This is a source program that is used to create import libraries - # on Windows for dlls which lack them. Don't remove nor modify the - # starting and closing comments -# /* impgen.c starts here */ -# /* Copyright (C) 1999-2000 Free Software Foundation, Inc. -# -# This file is part of GNU libtool. -# -# 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. -# */ -# -# #include /* for printf() */ -# #include /* for open(), lseek(), read() */ -# #include /* for O_RDONLY, O_BINARY */ -# #include /* for strdup() */ -# -# /* O_BINARY isn't required (or even defined sometimes) under Unix */ -# #ifndef O_BINARY -# #define O_BINARY 0 -# #endif -# -# static unsigned int -# pe_get16 (fd, offset) -# int fd; -# int offset; -# { -# unsigned char b[2]; -# lseek (fd, offset, SEEK_SET); -# read (fd, b, 2); -# return b[0] + (b[1]<<8); -# } -# -# static unsigned int -# pe_get32 (fd, offset) -# int fd; -# int offset; -# { -# unsigned char b[4]; -# lseek (fd, offset, SEEK_SET); -# read (fd, b, 4); -# return b[0] + (b[1]<<8) + (b[2]<<16) + (b[3]<<24); -# } -# -# static unsigned int -# pe_as32 (ptr) -# void *ptr; -# { -# unsigned char *b = ptr; -# return b[0] + (b[1]<<8) + (b[2]<<16) + (b[3]<<24); -# } -# -# int -# main (argc, argv) -# int argc; -# char *argv[]; -# { -# int dll; -# unsigned long pe_header_offset, opthdr_ofs, num_entries, i; -# unsigned long export_rva, export_size, nsections, secptr, expptr; -# unsigned long name_rvas, nexp; -# unsigned char *expdata, *erva; -# char *filename, *dll_name; -# -# filename = argv[1]; -# -# dll = open(filename, O_RDONLY|O_BINARY); -# if (dll < 1) -# return 1; -# -# dll_name = filename; -# -# for (i=0; filename[i]; i++) -# if (filename[i] == '/' || filename[i] == '\\' || filename[i] == ':') -# dll_name = filename + i +1; -# -# pe_header_offset = pe_get32 (dll, 0x3c); -# opthdr_ofs = pe_header_offset + 4 + 20; -# num_entries = pe_get32 (dll, opthdr_ofs + 92); -# -# if (num_entries < 1) /* no exports */ -# return 1; -# -# export_rva = pe_get32 (dll, opthdr_ofs + 96); -# export_size = pe_get32 (dll, opthdr_ofs + 100); -# nsections = pe_get16 (dll, pe_header_offset + 4 +2); -# secptr = (pe_header_offset + 4 + 20 + -# pe_get16 (dll, pe_header_offset + 4 + 16)); -# -# expptr = 0; -# for (i = 0; i < nsections; i++) -# { -# char sname[8]; -# unsigned long secptr1 = secptr + 40 * i; -# unsigned long vaddr = pe_get32 (dll, secptr1 + 12); -# unsigned long vsize = pe_get32 (dll, secptr1 + 16); -# unsigned long fptr = pe_get32 (dll, secptr1 + 20); -# lseek(dll, secptr1, SEEK_SET); -# read(dll, sname, 8); -# if (vaddr <= export_rva && vaddr+vsize > export_rva) -# { -# expptr = fptr + (export_rva - vaddr); -# if (export_rva + export_size > vaddr + vsize) -# export_size = vsize - (export_rva - vaddr); -# break; -# } -# } -# -# expdata = (unsigned char*)malloc(export_size); -# lseek (dll, expptr, SEEK_SET); -# read (dll, expdata, export_size); -# erva = expdata - export_rva; -# -# nexp = pe_as32 (expdata+24); -# name_rvas = pe_as32 (expdata+32); -# -# printf ("EXPORTS\n"); -# for (i = 0; i> "$ofile" || (rm -f "$ofile"; exit 1) - # We use sed instead of cat because bash on DJGPP gets confused if - # if finds mixed CR/LF and LF-only lines. Since sed operates in - # text mode, it properly converts lines to CR/LF. This bash problem - # is reportedly fixed, but why not run on old versions too? - - chmod +x "$ofile" - fi - ;; - -*) - # Compile the libtool program. - echo "FIXME: would compile $ltmain" - ;; -esac - -# Update the list of available tags. -if test -n "$tagname"; then - - # Extract list of available tagged configurations in $ofile. - # Note that this assumes the entire list is on one line. - available_tags=`grep "^available_tags=" $ofile | sed -e 's/available_tags=\(.*$\)/\1/' -e 's/\"//g'` - - # Append the new tag name to the list of available tags. - available_tags="$available_tags $tagname" - - # Now substitute the updated of available tags. - if eval "sed -e 's/^available_tags=.*\$/available_tags=\"$available_tags\"/' ${ofile} > ${ofile}.new"; then - mv ${ofile}.new ${ofile} - chmod +x "$ofile" - else - rm -f ${ofile}.new - echo "$progname: unable to update list of available tagged configurations." - exit 1 - fi -fi - -# Don't cache tagged configuration! -test -n "$cache_file" && test -z "$tagname" || exit 0 - -# AC_CACHE_SAVE -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 | grep ac_space) 2>&1` 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 - -exit 0 - -# Local Variables: -# mode:shell-script -# sh-indentation:2 -# End: diff --git a/contrib/gcc/ltmain.sh b/contrib/gcc/ltmain.sh deleted file mode 100644 index 92526b6..0000000 --- a/contrib/gcc/ltmain.sh +++ /dev/null @@ -1,5483 +0,0 @@ -# ltmain.sh - Provide generalized library-building support services. -# NOTE: Changing this file will not affect anything until you rerun ltconfig. -# -# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001 -# Free Software Foundation, Inc. -# Originally by Gordon Matzigkeit , 1996 -# -# 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. -# -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. - -# Check that we have a working $echo. -if test "X$1" = X--no-reexec; then - # Discard the --no-reexec flag, and continue. - shift -elif test "X$1" = X--fallback-echo; then - # Avoid inline document here, it may be left over - : -elif test "X`($echo '\t') 2>/dev/null`" = 'X\t'; then - # Yippee, $echo works! - : -else - # Restart under the correct shell, and then maybe $echo will work. - exec $SHELL "$0" --no-reexec ${1+"$@"} -fi - -if test "X$1" = X--fallback-echo; then - # used as fallback echo - shift - cat <&2 - echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2 - exit 1 -fi - -if test "$build_libtool_libs" != yes && test "$build_old_libs" != yes; then - echo "$modename: not configured to build any kind of library" 1>&2 - echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2 - exit 1 -fi - -# Global variables. -mode=$default_mode -nonopt= -prev= -prevopt= -run= -show="$echo" -show_help= -execute_dlfiles= -lo2o="s/\\.lo\$/.${objext}/" -o2lo="s/\\.${objext}\$/.lo/" -taglist= - -# Parse our command line options once, thoroughly. -while test $# -gt 0 -do - arg="$1" - shift - - case $arg in - -*=*) optarg=`$echo "X$arg" | $Xsed -e 's/[-_a-zA-Z0-9]*=//'` ;; - *) optarg= ;; - esac - - # If the previous option needs an argument, assign it. - if test -n "$prev"; then - case $prev in - execute_dlfiles) - execute_dlfiles="$execute_dlfiles $arg" - ;; - tag) - tagname="$arg" - - # Check whether tagname contains only valid characters - case $tagname in - *[!-_A-Za-z0-9,/]*) - echo "$progname: invalid tag name: $tagname" 1>&2 - exit 1 - ;; - esac - - case $tagname in - CC) - # Don't test for the "default" C tag, as we know, it's there, but - # not specially marked. - taglist="$taglist $tagname" - ;; - *) - if grep "^### BEGIN LIBTOOL TAG CONFIG: $tagname$" < "$0" > /dev/null; then - taglist="$taglist $tagname" - # Evaluate the configuration. - eval "`sed -n -e '/^### BEGIN LIBTOOL TAG CONFIG: '$tagname'$/,/^### END LIBTOOL TAG CONFIG: '$tagname'$/p' < $0`" - else - echo "$progname: ignoring unknown tag $tagname" 1>&2 - fi - ;; - esac - ;; - *) - eval "$prev=\$arg" - ;; - esac - - prev= - prevopt= - continue - fi - - # Have we seen a non-optional argument yet? - case $arg in - --help) - show_help=yes - ;; - - --version) - echo "$PROGRAM (GNU $PACKAGE) $VERSION$TIMESTAMP" - exit 0 - ;; - - --config) - sed -n -e '/^### BEGIN LIBTOOL CONFIG/,/^### END LIBTOOL CONFIG/p' < "$0" - # Now print the configurations for the tags. - for tagname in $taglist; do - sed -n -e "/^### BEGIN LIBTOOL TAG CONFIG: $tagname$/,/^### END LIBTOOL TAG CONFIG: $tagname$/p" < "$0" - done - exit 0 - ;; - - --debug) - echo "$progname: enabling shell trace mode" - set -x - ;; - - --dry-run | -n) - run=: - ;; - - --features) - echo "host: $host" - if test "$build_libtool_libs" = yes; then - echo "enable shared libraries" - else - echo "disable shared libraries" - fi - if test "$build_old_libs" = yes; then - echo "enable static libraries" - else - echo "disable static libraries" - fi - exit 0 - ;; - - --finish) mode="finish" ;; - - --mode) prevopt="--mode" prev=mode ;; - --mode=*) mode="$optarg" ;; - - --quiet | --silent) - show=: - ;; - - --tag) prevopt="--tag" prev=tag ;; - --tag=*) - set tag "$optarg" ${1+"$@"} - shift - prev=tag - ;; - - -dlopen) - prevopt="-dlopen" - prev=execute_dlfiles - ;; - - -*) - $echo "$modename: unrecognized option \`$arg'" 1>&2 - $echo "$help" 1>&2 - exit 1 - ;; - - *) - nonopt="$arg" - break - ;; - esac -done - -if test -n "$prevopt"; then - $echo "$modename: option \`$prevopt' requires an argument" 1>&2 - $echo "$help" 1>&2 - exit 1 -fi - -# If this variable is set in any of the actions, the command in it -# will be execed at the end. This prevents here-documents from being -# left over by shells. -exec_cmd= - -if test -z "$show_help"; then - - # Infer the operation mode. - if test -z "$mode"; then - case $nonopt in - *cc | *++ | gcc* | *-gcc*) - mode=link - for arg - do - case $arg in - -c) - mode=compile - break - ;; - esac - done - ;; - *db | *dbx | *strace | *truss) - mode=execute - ;; - *install*|cp|mv) - mode=install - ;; - *rm) - mode=uninstall - ;; - *) - # If we have no mode, but dlfiles were specified, then do execute mode. - test -n "$execute_dlfiles" && mode=execute - - # Just use the default operation mode. - if test -z "$mode"; then - if test -n "$nonopt"; then - $echo "$modename: warning: cannot infer operation mode from \`$nonopt'" 1>&2 - else - $echo "$modename: warning: cannot infer operation mode without MODE-ARGS" 1>&2 - fi - fi - ;; - esac - fi - - # Only execute mode is allowed to have -dlopen flags. - if test -n "$execute_dlfiles" && test "$mode" != execute; then - $echo "$modename: unrecognized option \`-dlopen'" 1>&2 - $echo "$help" 1>&2 - exit 1 - fi - - # Change the help message to a mode-specific one. - generic_help="$help" - help="Try \`$modename --help --mode=$mode' for more information." - - # These modes are in order of execution frequency so that they run quickly. - case $mode in - # libtool compile mode - compile) - modename="$modename: compile" - # Get the compilation command and the source file. - base_compile= - prev= - lastarg= - srcfile="$nonopt" - suppress_output= - - user_target=no - for arg - do - case $prev in - "") ;; - xcompiler) - # Aesthetically quote the previous argument. - prev= - lastarg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"` - - case $arg in - # Double-quote args containing other shell metacharacters. - # Many Bourne shells cannot handle close brackets correctly - # in scan sets, so we specify it separately. - *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") - arg="\"$arg\"" - ;; - esac - - # Add the previous argument to base_compile. - if test -z "$base_compile"; then - base_compile="$lastarg" - else - base_compile="$base_compile $lastarg" - fi - continue - ;; - esac - - # Accept any command-line options. - case $arg in - -o) - if test "$user_target" != "no"; then - $echo "$modename: you cannot specify \`-o' more than once" 1>&2 - exit 1 - fi - user_target=next - ;; - - -static) - build_old_libs=yes - continue - ;; - - -prefer-pic) - pic_mode=yes - continue - ;; - - -prefer-non-pic) - pic_mode=no - continue - ;; - - -Xcompiler) - prev=xcompiler - continue - ;; - - -Wc,*) - args=`$echo "X$arg" | $Xsed -e "s/^-Wc,//"` - lastarg= - IFS="${IFS= }"; save_ifs="$IFS"; IFS=',' - for arg in $args; do - IFS="$save_ifs" - - # Double-quote args containing other shell metacharacters. - # Many Bourne shells cannot handle close brackets correctly - # in scan sets, so we specify it separately. - case $arg in - *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") - arg="\"$arg\"" - ;; - esac - lastarg="$lastarg $arg" - done - IFS="$save_ifs" - lastarg=`$echo "X$lastarg" | $Xsed -e "s/^ //"` - - # Add the arguments to base_compile. - if test -z "$base_compile"; then - base_compile="$lastarg" - else - base_compile="$base_compile $lastarg" - fi - continue - ;; - esac - - case $user_target in - next) - # The next one is the -o target name - user_target=yes - continue - ;; - yes) - # We got the output file - user_target=set - libobj="$arg" - continue - ;; - esac - - # Accept the current argument as the source file. - lastarg="$srcfile" - srcfile="$arg" - - # Aesthetically quote the previous argument. - - # Backslashify any backslashes, double quotes, and dollar signs. - # These are the only characters that are still specially - # interpreted inside of double-quoted scrings. - lastarg=`$echo "X$lastarg" | $Xsed -e "$sed_quote_subst"` - - # Double-quote args containing other shell metacharacters. - # Many Bourne shells cannot handle close brackets correctly - # in scan sets, so we specify it separately. - case $lastarg in - *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") - lastarg="\"$lastarg\"" - ;; - esac - - # Add the previous argument to base_compile. - if test -z "$base_compile"; then - base_compile="$lastarg" - else - base_compile="$base_compile $lastarg" - fi - done - - case $user_target in - set) - ;; - no) - # Get the name of the library object. - libobj=`$echo "X$srcfile" | $Xsed -e 's%^.*/%%'` - ;; - *) - $echo "$modename: you must specify a target with \`-o'" 1>&2 - exit 1 - ;; - esac - - # Recognize several different file suffixes. - # If the user specifies -o file.o, it is replaced with file.lo - xform='[cCFSfmso]' - case $libobj in - *.ada) xform=ada ;; - *.adb) xform=adb ;; - *.ads) xform=ads ;; - *.asm) xform=asm ;; - *.c++) xform=c++ ;; - *.cc) xform=cc ;; - *.class) xform=class ;; - *.cpp) xform=cpp ;; - *.cxx) xform=cxx ;; - *.f90) xform=f90 ;; - *.for) xform=for ;; - *.java) xform=java ;; - esac - - libobj=`$echo "X$libobj" | $Xsed -e "s/\.$xform$/.lo/"` - - case $libobj in - *.lo) obj=`$echo "X$libobj" | $Xsed -e "$lo2o"` ;; - *) - $echo "$modename: cannot determine name of library object from \`$libobj'" 1>&2 - exit 1 - ;; - esac - - # Infer tagged configuration to use if any are available and - # if one wasn't chosen via the "--tag" command line option. - # Only attempt this if the compiler in the base compile - # command doesn't match the default compiler. - if test -n "$available_tags" && test -z "$tagname"; then - case $base_compile in - "$CC "*) ;; - # Blanks in the command may have been stripped by the calling shell, - # but not from the CC environment variable when ltconfig was run. - "`$echo $CC` "*) ;; - *) - for z in $available_tags; do - if grep "^### BEGIN LIBTOOL TAG CONFIG: $z$" < "$0" > /dev/null; then - # Evaluate the configuration. - eval "`sed -n -e '/^### BEGIN LIBTOOL TAG CONFIG: '$z'$/,/^### END LIBTOOL TAG CONFIG: '$z'$/p' < $0`" - case $base_compile in - "$CC "*) - # The compiler in the base compile command matches - # the one in the tagged configuration. - # Assume this is the tagged configuration we want. - tagname=$z - break - ;; - "`$echo $CC` "*) - tagname=$z - break - ;; - esac - fi - done - # If $tagname still isn't set, then no tagged configuration - # was found and let the user know that the "--tag" command - # line option must be used. - if test -z "$tagname"; then - echo "$modename: unable to infer tagged configuration" - echo "$modename: specify a tag with \`--tag'" 1>&2 - exit 1 -# else -# echo "$modename: using $tagname tagged configuration" - fi - ;; - esac - fi - - objname=`$echo "X$obj" | $Xsed -e 's%^.*/%%'` - xdir=`$echo "X$obj" | $Xsed -e 's%/[^/]*$%%'` - if test "X$xdir" = "X$obj"; then - xdir= - else - xdir=$xdir/ - fi - lobj=${xdir}$objdir/$objname - - if test -z "$base_compile"; then - $echo "$modename: you must specify a compilation command" 1>&2 - $echo "$help" 1>&2 - exit 1 - fi - - # Delete any leftover library objects. - if test "$build_old_libs" = yes; then - removelist="$obj $lobj $libobj ${libobj}T" - else - removelist="$lobj $libobj ${libobj}T" - fi - - $run $rm $removelist - trap "$run $rm $removelist; exit 1" 1 2 15 - - # On Cygwin there's no "real" PIC flag so we must build both object types - case $host_os in - cygwin* | mingw* | pw32* | os2*) - pic_mode=default - ;; - esac - if test $pic_mode = no && test "$deplibs_check_method" != pass_all; then - # non-PIC code in shared libraries is not supported - pic_mode=default - fi - - # Calculate the filename of the output object if compiler does - # not support -o with -c - if test "$compiler_c_o" = no; then - output_obj=`$echo "X$srcfile" | $Xsed -e 's%^.*/%%' -e 's%\.[^.]*$%%'`.${objext} - lockfile="$output_obj.lock" - removelist="$removelist $output_obj $lockfile" - trap "$run $rm $removelist; exit 1" 1 2 15 - else - output_obj= - need_locks=no - lockfile= - fi - - # Lock this critical section if it is needed - # We use this script file to make the link, it avoids creating a new file - if test "$need_locks" = yes; then - until $run ln "$0" "$lockfile" 2>/dev/null; do - $show "Waiting for $lockfile to be removed" - sleep 2 - done - elif test "$need_locks" = warn; then - if test -f "$lockfile"; then - echo "\ -*** ERROR, $lockfile exists and contains: -`cat $lockfile 2>/dev/null` - -This indicates that another process is trying to use the same -temporary object file, and libtool could not work around it because -your compiler does not support \`-c' and \`-o' together. If you -repeat this compilation, it may succeed, by chance, but you had better -avoid parallel builds (make -j) in this platform, or get a better -compiler." - - $run $rm $removelist - exit 1 - fi - echo $srcfile > "$lockfile" - fi - - if test -n "$fix_srcfile_path"; then - eval srcfile=\"$fix_srcfile_path\" - fi - - $run $rm "$libobj" "${libobj}T" - - # Create a libtool object file (analogous to a ".la" file), - # but don't create it if we're doing a dry run. - test -z "$run" && cat > ${libobj}T </dev/null`" != x"$srcfile"; then - echo "\ -*** ERROR, $lockfile contains: -`cat $lockfile 2>/dev/null` - -but it should contain: -$srcfile - -This indicates that another process is trying to use the same -temporary object file, and libtool could not work around it because -your compiler does not support \`-c' and \`-o' together. If you -repeat this compilation, it may succeed, by chance, but you had better -avoid parallel builds (make -j) in this platform, or get a better -compiler." - - $run $rm $removelist - exit 1 - fi - - # Just move the object if needed, then go on to compile the next one - if test -n "$output_obj" && test "x$output_obj" != "x$lobj"; then - $show "$mv $output_obj $lobj" - if $run $mv $output_obj $lobj; then : - else - error=$? - $run $rm $removelist - exit $error - fi - fi - - # Append the name of the PIC object to the libtool object file. - test -z "$run" && cat >> ${libobj}T <> ${libobj}T </dev/null`" != x"$srcfile"; then - echo "\ -*** ERROR, $lockfile contains: -`cat $lockfile 2>/dev/null` - -but it should contain: -$srcfile - -This indicates that another process is trying to use the same -temporary object file, and libtool could not work around it because -your compiler does not support \`-c' and \`-o' together. If you -repeat this compilation, it may succeed, by chance, but you had better -avoid parallel builds (make -j) in this platform, or get a better -compiler." - - $run $rm $removelist - exit 1 - fi - - # Just move the object if needed - if test -n "$output_obj" && test "x$output_obj" != "x$obj"; then - $show "$mv $output_obj $obj" - if $run $mv $output_obj $obj; then : - else - error=$? - $run $rm $removelist - exit $error - fi - fi - - # Append the name of the non-PIC object the libtool object file. - # Only append if the libtool object file exists. - test -z "$run" && cat >> ${libobj}T <> ${libobj}T <&2 - fi - if test -n "$link_static_flag"; then - dlopen_self=$dlopen_self_static - fi - else - if test -z "$pic_flag" && test -n "$link_static_flag"; then - dlopen_self=$dlopen_self_static - fi - fi - build_libtool_libs=no - build_old_libs=yes - prefer_static_libs=yes - break - ;; - esac - done - - # See if our shared archives depend on static archives. - test -n "$old_archive_from_new_cmds" && build_old_libs=yes - - # Go through the arguments, transforming them on the way. - while test $# -gt 0; do - arg="$1" - base_compile="$base_compile $arg" - shift - case $arg in - *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") - qarg=\"`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`\" ### testsuite: skip nested quoting test - ;; - *) qarg=$arg ;; - esac - libtool_args="$libtool_args $qarg" - - # If the previous option needs an argument, assign it. - if test -n "$prev"; then - case $prev in - output) - compile_command="$compile_command @OUTPUT@" - finalize_command="$finalize_command @OUTPUT@" - ;; - esac - - case $prev in - dlfiles|dlprefiles) - if test "$preload" = no; then - # Add the symbol object into the linking commands. - compile_command="$compile_command @SYMFILE@" - finalize_command="$finalize_command @SYMFILE@" - preload=yes - fi - case $arg in - *.la | *.lo) ;; # We handle these cases below. - force) - if test "$dlself" = no; then - dlself=needless - export_dynamic=yes - fi - prev= - continue - ;; - self) - if test "$prev" = dlprefiles; then - dlself=yes - elif test "$prev" = dlfiles && test "$dlopen_self" != yes; then - dlself=yes - else - dlself=needless - export_dynamic=yes - fi - prev= - continue - ;; - *) - if test "$prev" = dlfiles; then - dlfiles="$dlfiles $arg" - else - dlprefiles="$dlprefiles $arg" - fi - prev= - continue - ;; - esac - ;; - expsyms) - export_symbols="$arg" - if test ! -f "$arg"; then - $echo "$modename: symbol file \`$arg' does not exist" - exit 1 - fi - prev= - continue - ;; - expsyms_regex) - export_symbols_regex="$arg" - prev= - continue - ;; - release) - release="-$arg" - prev= - continue - ;; - objectlist) - if test -f "$arg"; then - save_arg=$arg - moreargs= - for fil in `cat $save_arg` - do -# moreargs="$moreargs $fil" - arg=$fil - # A libtool-controlled object. - - # Check to see that this really is a libtool object. - if (sed -e '2q' $arg | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then - pic_object= - non_pic_object= - - # Read the .lo file - # If there is no directory component, then add one. - case $arg in - */* | *\\*) . $arg ;; - *) . ./$arg ;; - esac - - if test -z "$pic_object" || \ - test -z "$non_pic_object" || - test "$pic_object" = none && \ - test "$non_pic_object" = none; then - $echo "$modename: cannot find name of object for \`$arg'" 1>&2 - exit 1 - fi - - # Extract subdirectory from the argument. - xdir=`$echo "X$arg" | $Xsed -e 's%/[^/]*$%%'` - if test "X$xdir" = "X$arg"; then - xdir= - else - xdir="$xdir/" - fi - - if test "$pic_object" != none; then - # Prepend the subdirectory the object is found in. - pic_object="$xdir$pic_object" - - if test "$prev" = dlfiles; then - if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; then - dlfiles="$dlfiles $pic_object" - prev= - continue - else - # If libtool objects are unsupported, then we need to preload. - prev=dlprefiles - fi - fi - - # CHECK ME: I think I busted this. -Ossama - if test "$prev" = dlprefiles; then - # Preload the old-style object. - dlprefiles="$dlprefiles $pic_object" - prev= - fi - - # A PIC object. - libobjs="$libobjs $pic_object" - arg="$pic_object" - fi - - # Non-PIC object. - if test "$non_pic_object" != none; then - # Prepend the subdirectory the object is found in. - non_pic_object="$xdir$non_pic_object" - - # A standard non-PIC object - non_pic_objects="$non_pic_objects $non_pic_object" - if test -z "$pic_object" || test "$pic_object" = none ; then - arg="$non_pic_object" - fi - fi - else - # Only an error if not doing a dry-run. - if test -z "$run"; then - $echo "$modename: \`$arg' is not a valid libtool object" 1>&2 - exit 1 - else - # Dry-run case. - - # Extract subdirectory from the argument. - xdir=`$echo "X$arg" | $Xsed -e 's%/[^/]*$%%'` - if test "X$xdir" = "X$arg"; then - xdir= - else - xdir="$xdir/" - fi - - pic_object=`$echo "X${xdir}${objdir}/${arg}" | $Xsed -e "$lo2o"` - non_pic_object=`$echo "X${xdir}${arg}" | $Xsed -e "$lo2o"` - libobjs="$libobjs $pic_object" - non_pic_objects="$non_pic_objects $non_pic_object" - fi - fi - done - else - $echo "$modename: link input file \`$save_arg' does not exist" - exit 1 - fi - arg=$save_arg - prev= - continue - ;; - rpath | xrpath) - # We need an absolute path. - case $arg in - [\\/]* | [A-Za-z]:[\\/]*) ;; - *) - $echo "$modename: only absolute run-paths are allowed" 1>&2 - exit 1 - ;; - esac - if test "$prev" = rpath; then - case "$rpath " in - *" $arg "*) ;; - *) rpath="$rpath $arg" ;; - esac - else - case "$xrpath " in - *" $arg "*) ;; - *) xrpath="$xrpath $arg" ;; - esac - fi - prev= - continue - ;; - xcompiler) - compiler_flags="$compiler_flags $qarg" - prev= - compile_command="$compile_command $qarg" - finalize_command="$finalize_command $qarg" - continue - ;; - xlinker) - linker_flags="$linker_flags $qarg" - compiler_flags="$compiler_flags $wl$qarg" - prev= - compile_command="$compile_command $wl$qarg" - finalize_command="$finalize_command $wl$qarg" - continue - ;; - *) - eval "$prev=\"\$arg\"" - prev= - continue - ;; - esac - fi # test -n $prev - - prevarg="$arg" - - case $arg in - -all-static) - if test -n "$link_static_flag"; then - compile_command="$compile_command $link_static_flag" - finalize_command="$finalize_command $link_static_flag" - fi - continue - ;; - - -allow-undefined) - # FIXME: remove this flag sometime in the future. - $echo "$modename: \`-allow-undefined' is deprecated because it is the default" 1>&2 - continue - ;; - - -avoid-version) - avoid_version=yes - continue - ;; - - -dlopen) - prev=dlfiles - continue - ;; - - -dlpreopen) - prev=dlprefiles - continue - ;; - - -export-dynamic) - export_dynamic=yes - continue - ;; - - -export-symbols | -export-symbols-regex) - if test -n "$export_symbols" || test -n "$export_symbols_regex"; then - $echo "$modename: more than one -exported-symbols argument is not allowed" - exit 1 - fi - if test "X$arg" = "X-export-symbols"; then - prev=expsyms - else - prev=expsyms_regex - fi - continue - ;; - - # The native IRIX linker understands -LANG:*, -LIST:* and -LNO:* - # so, if we see these flags be careful not to treat them like -L - -L[A-Z][A-Z]*:*) - case $with_gcc/$host in - no/*-*-irix*) - compile_command="$compile_command $arg" - finalize_command="$finalize_command $arg" - ;; - esac - continue - ;; - - -L*) - dir=`$echo "X$arg" | $Xsed -e 's/^-L//'` - # We need an absolute path. - case $dir in - [\\/]* | [A-Za-z]:[\\/]*) ;; - *) - absdir=`cd "$dir" && pwd` - if test -z "$absdir"; then - $echo "$modename: cannot determine absolute directory name of \`$dir'" 1>&2 - exit 1 - fi - dir="$absdir" - ;; - esac - case "$deplibs " in - *" -L$dir "*) ;; - *) - deplibs="$deplibs -L$dir" - lib_search_path="$lib_search_path $dir" - ;; - esac - case $host in - *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*) - case :$dllsearchpath: in - *":$dir:"*) ;; - *) dllsearchpath="$dllsearchpath:$dir";; - esac - ;; - esac - continue - ;; - - -l*) - if test "X$arg" = "X-lc" || test "X$arg" = "X-lm"; then - case $host in - *-*-cygwin* | *-*-pw32* | *-*-beos*) - # These systems don't actually have a C or math library (as such) - continue - ;; - *-*-mingw* | *-*-os2*) - # These systems don't actually have a C library (as such) - test "X$arg" = "X-lc" && continue - ;; - esac - fi - deplibs="$deplibs $arg" - continue - ;; - - -module) - module=yes - continue - ;; - - -no-fast-install) - fast_install=no - continue - ;; - - -no-install) - case $host in - *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*) - # The PATH hackery in wrapper scripts is required on Windows - # in order for the loader to find any dlls it needs. - $echo "$modename: warning: \`-no-install' is ignored for $host" 1>&2 - $echo "$modename: warning: assuming \`-no-fast-install' instead" 1>&2 - fast_install=no - ;; - *) no_install=yes ;; - esac - continue - ;; - - -no-undefined) - allow_undefined=no - continue - ;; - - -objectlist) - prev=objectlist - continue - ;; - - -o) prev=output ;; - - -release) - prev=release - continue - ;; - - -rpath) - prev=rpath - continue - ;; - - -R) - prev=xrpath - continue - ;; - - -R*) - dir=`$echo "X$arg" | $Xsed -e 's/^-R//'` - # We need an absolute path. - case $dir in - [\\/]* | [A-Za-z]:[\\/]*) ;; - *) - $echo "$modename: only absolute run-paths are allowed" 1>&2 - exit 1 - ;; - esac - case "$xrpath " in - *" $dir "*) ;; - *) xrpath="$xrpath $dir" ;; - esac - continue - ;; - - -static) - # The effects of -static are defined in a previous loop. - # We used to do the same as -all-static on platforms that - # didn't have a PIC flag, but the assumption that the effects - # would be equivalent was wrong. It would break on at least - # Digital Unix and AIX. - continue - ;; - - -thread-safe) - thread_safe=yes - continue - ;; - - -version-info) - prev=vinfo - continue - ;; - - -Wc,*) - args=`$echo "X$arg" | $Xsed -e "$sed_quote_subst" -e 's/^-Wc,//'` - arg= - IFS="${IFS= }"; save_ifs="$IFS"; IFS=',' - for flag in $args; do - IFS="$save_ifs" - case $flag in - *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") - flag="\"$flag\"" - ;; - esac - arg="$arg $wl$flag" - compiler_flags="$compiler_flags $flag" - done - IFS="$save_ifs" - arg=`$echo "X$arg" | $Xsed -e "s/^ //"` - ;; - - -Wl,*) - args=`$echo "X$arg" | $Xsed -e "$sed_quote_subst" -e 's/^-Wl,//'` - arg= - IFS="${IFS= }"; save_ifs="$IFS"; IFS=',' - for flag in $args; do - IFS="$save_ifs" - case $flag in - *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") - flag="\"$flag\"" - ;; - esac - arg="$arg $wl$flag" - compiler_flags="$compiler_flags $wl$flag" - linker_flags="$linker_flags $flag" - done - IFS="$save_ifs" - arg=`$echo "X$arg" | $Xsed -e "s/^ //"` - ;; - - -Xcompiler) - prev=xcompiler - continue - ;; - - -Xlinker) - prev=xlinker - continue - ;; - - # Some other compiler flag. - -* | +*) - # Unknown arguments in both finalize_command and compile_command need - # to be aesthetically quoted because they are evaled later. - arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"` - case $arg in - *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") - arg="\"$arg\"" - ;; - esac - ;; - - *.$objext) - # A standard object. - objs="$objs $arg" - ;; - - *.lo) - # A libtool-controlled object. - - # Check to see that this really is a libtool object. - if (sed -e '2q' $arg | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then - pic_object= - non_pic_object= - - # Read the .lo file - # If there is no directory component, then add one. - case $arg in - */* | *\\*) . $arg ;; - *) . ./$arg ;; - esac - - if test -z "$pic_object" || \ - test -z "$non_pic_object" || - test "$pic_object" = none && \ - test "$non_pic_object" = none; then - $echo "$modename: cannot find name of object for \`$arg'" 1>&2 - exit 1 - fi - - # Extract subdirectory from the argument. - xdir=`$echo "X$arg" | $Xsed -e 's%/[^/]*$%%'` - if test "X$xdir" = "X$arg"; then - xdir= - else - xdir="$xdir/" - fi - - if test "$pic_object" != none; then - # Prepend the subdirectory the object is found in. - pic_object="$xdir$pic_object" - - if test "$prev" = dlfiles; then - if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; then - dlfiles="$dlfiles $pic_object" - prev= - continue - else - # If libtool objects are unsupported, then we need to preload. - prev=dlprefiles - fi - fi - - # CHECK ME: I think I busted this. -Ossama - if test "$prev" = dlprefiles; then - # Preload the old-style object. - dlprefiles="$dlprefiles $pic_object" - prev= - fi - - # A PIC object. - libobjs="$libobjs $pic_object" - arg="$pic_object" - fi - - # Non-PIC object. - if test "$non_pic_object" != none; then - # Prepend the subdirectory the object is found in. - non_pic_object="$xdir$non_pic_object" - - # A standard non-PIC object - non_pic_objects="$non_pic_objects $non_pic_object" - if test -z "$pic_object" || test "$pic_object" = none ; then - arg="$non_pic_object" - fi - fi - else - # Only an error if not doing a dry-run. - if test -z "$run"; then - $echo "$modename: \`$arg' is not a valid libtool object" 1>&2 - exit 1 - else - # Dry-run case. - - # Extract subdirectory from the argument. - xdir=`$echo "X$arg" | $Xsed -e 's%/[^/]*$%%'` - if test "X$xdir" = "X$arg"; then - xdir= - else - xdir="$xdir/" - fi - - pic_object=`$echo "X${xdir}${objdir}/${arg}" | $Xsed -e "$lo2o"` - non_pic_object=`$echo "X${xdir}${arg}" | $Xsed -e "$lo2o"` - libobjs="$libobjs $pic_object" - non_pic_objects="$non_pic_objects $non_pic_object" - fi - fi - ;; - - *.$libext) - # An archive. - deplibs="$deplibs $arg" - old_deplibs="$old_deplibs $arg" - continue - ;; - - *.la) - # A libtool-controlled library. - - if test "$prev" = dlfiles; then - # This library was specified with -dlopen. - dlfiles="$dlfiles $arg" - prev= - elif test "$prev" = dlprefiles; then - # The library was specified with -dlpreopen. - dlprefiles="$dlprefiles $arg" - prev= - else - deplibs="$deplibs $arg" - fi - continue - ;; - - # Some other compiler argument. - *) - # Unknown arguments in both finalize_command and compile_command need - # to be aesthetically quoted because they are evaled later. - arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"` - case $arg in - *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") - arg="\"$arg\"" - ;; - esac - ;; - esac # arg - - # Now actually substitute the argument into the commands. - if test -n "$arg"; then - compile_command="$compile_command $arg" - finalize_command="$finalize_command $arg" - fi - done # argument parsing loop - - if test -n "$prev"; then - $echo "$modename: the \`$prevarg' option requires an argument" 1>&2 - $echo "$help" 1>&2 - exit 1 - fi - - # Infer tagged configuration to use if any are available and - # if one wasn't chosen via the "--tag" command line option. - # Only attempt this if the compiler in the base link - # command doesn't match the default compiler. - if test -n "$available_tags" && test -z "$tagname"; then - case $base_compile in - "$CC "*) ;; - # Blanks in the command may have been stripped by the calling shell, - # but not from the CC environment variable when ltconfig was run. - "`$echo $CC` "*) ;; - *) - for z in $available_tags; do - if grep "^### BEGIN LIBTOOL TAG CONFIG: $z$" < "$0" > /dev/null; then - # Evaluate the configuration. - eval "`sed -n -e '/^### BEGIN LIBTOOL TAG CONFIG: '$z'$/,/^### END LIBTOOL TAG CONFIG: '$z'$/p' < $0`" - case $base_compile in - "$CC "*) - # The compiler in $compile_command matches - # the one in the tagged configuration. - # Assume this is the tagged configuration we want. - tagname=$z - break - ;; - "`$echo $CC` "*) - tagname=$z - break - ;; - esac - fi - done - # If $tagname still isn't set, then no tagged configuration - # was found and let the user know that the "--tag" command - # line option must be used. - if test -z "$tagname"; then - echo "$modename: unable to infer tagged configuration" - echo "$modename: specify a tag with \`--tag'" 1>&2 - exit 1 -# else -# echo "$modename: using $tagname tagged configuration" - fi - ;; - esac - fi - - if test "$export_dynamic" = yes && test -n "$export_dynamic_flag_spec"; then - eval arg=\"$export_dynamic_flag_spec\" - compile_command="$compile_command $arg" - finalize_command="$finalize_command $arg" - fi - - # calculate the name of the file, without its directory - outputname=`$echo "X$output" | $Xsed -e 's%^.*/%%'` - libobjs_save="$libobjs" - - if test -n "$shlibpath_var"; then - # get the directories listed in $shlibpath_var - eval shlib_search_path=\`\$echo \"X\${$shlibpath_var}\" \| \$Xsed -e \'s/:/ /g\'\` - else - shlib_search_path= - fi - eval sys_lib_search_path=\"$sys_lib_search_path_spec\" - eval sys_lib_dlsearch_path=\"$sys_lib_dlsearch_path_spec\" - - output_objdir=`$echo "X$output" | $Xsed -e 's%/[^/]*$%%'` - if test "X$output_objdir" = "X$output"; then - output_objdir="$objdir" - else - output_objdir="$output_objdir/$objdir" - fi - # Create the object directory. - if test ! -d $output_objdir; then - $show "$mkdir $output_objdir" - $run $mkdir $output_objdir - status=$? - if test $status -ne 0 && test ! -d $output_objdir; then - exit $status - fi - fi - - # Determine the type of output - case $output in - "") - $echo "$modename: you must specify an output file" 1>&2 - $echo "$help" 1>&2 - exit 1 - ;; - *.$libext) linkmode=oldlib ;; - *.lo | *.$objext) linkmode=obj ;; - *.la) linkmode=lib ;; - *) linkmode=prog ;; # Anything else should be a program. - esac - - specialdeplibs= - libs= - # Find all interdependent deplibs by searching for libraries - # that are linked more than once (e.g. -la -lb -la) - for deplib in $deplibs; do - case "$libs " in - *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;; - esac - libs="$libs $deplib" - done - - if test $linkmode = lib; then - libs="$predeps $libs $compiler_lib_search_path $postdeps" - - # Compute libraries that are listed more than once in $predeps - # $postdeps and mark them as special (i.e., whose duplicates are - # not to be eliminated). - pre_post_deps= - for pre_post_dep in $predeps $postdeps; do - case "$pre_post_deps " in - *" $pre_post_dep "*) specialdeplibs="$specialdeplibs $pre_post_deps" ;; - esac - pre_post_deps="$pre_post_deps $pre_post_dep" - done - pre_post_deps= - fi - - deplibs= - newdependency_libs= - newlib_search_path= - need_relink=no # whether we're linking any uninstalled libtool libraries - notinst_deplibs= # not-installed libtool libraries - notinst_path= # paths that contain not-installed libtool libraries - case $linkmode in - lib) - passes="conv link" - for file in $dlfiles $dlprefiles; do - case $file in - *.la) ;; - *) - $echo "$modename: libraries can \`-dlopen' only libtool libraries: $file" 1>&2 - exit 1 - ;; - esac - done - ;; - prog) - compile_deplibs= - finalize_deplibs= - alldeplibs=no - newdlfiles= - newdlprefiles= - passes="conv scan dlopen dlpreopen link" - ;; - *) passes="conv" - ;; - esac - for pass in $passes; do - if test $linkmode = prog; then - # Determine which files to process - case $pass in - dlopen) - libs="$dlfiles" - save_deplibs="$deplibs" # Collect dlpreopened libraries - deplibs= - ;; - dlpreopen) libs="$dlprefiles" ;; - link) libs="$deplibs %DEPLIBS% $dependency_libs" ;; - esac - fi - for deplib in $libs; do - lib= - found=no - case $deplib in - -l*) - if test $linkmode = oldlib && test $linkmode = obj; then - $echo "$modename: warning: \`-l' is ignored for archives/objects: $deplib" 1>&2 - continue - fi - if test $pass = conv; then - deplibs="$deplib $deplibs" - continue - fi - name=`$echo "X$deplib" | $Xsed -e 's/^-l//'` - for searchdir in $newlib_search_path $lib_search_path $sys_lib_search_path $shlib_search_path; do - # Search the libtool library - lib="$searchdir/lib${name}.la" - if test -f "$lib"; then - found=yes - break - fi - done - if test "$found" != yes; then - # deplib doesn't seem to be a libtool library - if test "$linkmode,$pass" = "prog,link"; then - compile_deplibs="$deplib $compile_deplibs" - finalize_deplibs="$deplib $finalize_deplibs" - else - deplibs="$deplib $deplibs" - test $linkmode = lib && newdependency_libs="$deplib $newdependency_libs" - fi - continue - fi - ;; # -l - -L*) - case $linkmode in - lib) - deplibs="$deplib $deplibs" - test $pass = conv && continue - newdependency_libs="$deplib $newdependency_libs" - newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'` - ;; - prog) - if test $pass = conv; then - deplibs="$deplib $deplibs" - continue - fi - if test $pass = scan; then - deplibs="$deplib $deplibs" - newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'` - else - compile_deplibs="$deplib $compile_deplibs" - finalize_deplibs="$deplib $finalize_deplibs" - fi - ;; - *) - $echo "$modename: warning: \`-L' is ignored for archives/objects: $deplib" 1>&2 - ;; - esac # linkmode - continue - ;; # -L - -R*) - if test $pass = link; then - dir=`$echo "X$deplib" | $Xsed -e 's/^-R//'` - # Make sure the xrpath contains only unique directories. - case "$xrpath " in - *" $dir "*) ;; - *) xrpath="$xrpath $dir" ;; - esac - fi - deplibs="$deplib $deplibs" - continue - ;; - *.la) lib="$deplib" ;; - *.$libext) - if test $pass = conv; then - deplibs="$deplib $deplibs" - continue - fi - case $linkmode in - lib) - if test "$deplibs_check_method" != pass_all; then - echo - echo "*** Warning: This library needs some functionality provided by $deplib." - echo "*** I have the capability to make that library automatically link in when" - echo "*** you link to this library. But I can only do this if you have a" - echo "*** shared version of the library, which you do not appear to have." - else - echo - echo "*** Warning: Linking the shared library $output against the" - echo "*** static library $deplib is not portable!" - deplibs="$deplib $deplibs" - fi - continue - ;; - prog) - if test $pass != link; then - deplibs="$deplib $deplibs" - else - compile_deplibs="$deplib $compile_deplibs" - finalize_deplibs="$deplib $finalize_deplibs" - fi - continue - ;; - esac # linkmode - ;; # *.$libext - *.lo | *.$objext) - if test $pass = dlpreopen || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; then - # If there is no dlopen support or we're linking statically, - # we need to preload. - newdlprefiles="$newdlprefiles $deplib" - compile_deplibs="$deplib $compile_deplibs" - finalize_deplibs="$deplib $finalize_deplibs" - else - newdlfiles="$newdlfiles $deplib" - fi - continue - ;; - %DEPLIBS%) - alldeplibs=yes - continue - ;; - esac # case $deplib - if test $found = yes || test -f "$lib"; then : - else - $echo "$modename: cannot find the library \`$lib'" 1>&2 - exit 1 - fi - - # Check to see that this really is a libtool archive. - if (sed -e '2q' $lib | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then : - else - $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2 - exit 1 - fi - - ladir=`$echo "X$lib" | $Xsed -e 's%/[^/]*$%%'` - test "X$ladir" = "X$lib" && ladir="." - - dlname= - dlopen= - dlpreopen= - libdir= - library_names= - old_library= - # If the library was installed with an old release of libtool, - # it will not redefine variable installed. - installed=yes - - # Read the .la file - case $lib in - */* | *\\*) . $lib ;; - *) . ./$lib ;; - esac - - if test "$linkmode,$pass" = "lib,link" || - test "$linkmode,$pass" = "prog,scan" || - { test $linkmode = oldlib && test $linkmode = obj; }; then - # Add dl[pre]opened files of deplib - test -n "$dlopen" && dlfiles="$dlfiles $dlopen" - test -n "$dlpreopen" && dlprefiles="$dlprefiles $dlpreopen" - fi - - if test $pass = conv; then - # Only check for convenience libraries - deplibs="$lib $deplibs" - if test -z "$libdir"; then - if test -z "$old_library"; then - $echo "$modename: cannot find name of link library for \`$lib'" 1>&2 - exit 1 - fi - # It is a libtool convenience library, so add in its objects. - convenience="$convenience $ladir/$objdir/$old_library" - old_convenience="$old_convenience $ladir/$objdir/$old_library" - tmp_libs= - for deplib in $dependency_libs; do - deplibs="$deplib $deplibs" - case "$tmp_libs " in - *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;; - esac - tmp_libs="$tmp_libs $deplib" - done - elif test $linkmode != prog && test $linkmode != lib; then - $echo "$modename: \`$lib' is not a convenience library" 1>&2 - exit 1 - fi - continue - fi # $pass = conv - - # Get the name of the library we link against. - linklib= - for l in $old_library $library_names; do - linklib="$l" - done - if test -z "$linklib"; then - $echo "$modename: cannot find name of link library for \`$lib'" 1>&2 - exit 1 - fi - - # This library was specified with -dlopen. - if test $pass = dlopen; then - if test -z "$libdir"; then - $echo "$modename: cannot -dlopen a convenience library: \`$lib'" 1>&2 - exit 1 - fi - if test -z "$dlname" || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; then - # If there is no dlname, no dlopen support or we're linking - # statically, we need to preload. - dlprefiles="$dlprefiles $lib" - else - newdlfiles="$newdlfiles $lib" - fi - continue - fi # $pass = dlopen - - # We need an absolute path. - case $ladir in - [\\/]* | [A-Za-z]:[\\/]*) abs_ladir="$ladir" ;; - *) - abs_ladir=`cd "$ladir" && pwd` - if test -z "$abs_ladir"; then - $echo "$modename: warning: cannot determine absolute directory name of \`$ladir'" 1>&2 - $echo "$modename: passing it literally to the linker, although it might fail" 1>&2 - abs_ladir="$ladir" - fi - ;; - esac - laname=`$echo "X$lib" | $Xsed -e 's%^.*/%%'` - - # Find the relevant object directory and library name. - if test "X$installed" = Xyes; then - if test ! -f "$libdir/$linklib" && test -f "$abs_ladir/$linklib"; then - $echo "$modename: warning: library \`$lib' was moved." 1>&2 - dir="$ladir" - absdir="$abs_ladir" - libdir="$abs_ladir" - else - dir="$libdir" - absdir="$libdir" - fi - else - dir="$ladir/$objdir" - absdir="$abs_ladir/$objdir" - # Remove this search path later - notinst_path="$notinst_path $abs_ladir" - fi # $installed = yes - name=`$echo "X$laname" | $Xsed -e 's/\.la$//' -e 's/^lib//'` - - # This library was specified with -dlpreopen. - if test $pass = dlpreopen; then - if test -z "$libdir"; then - $echo "$modename: cannot -dlpreopen a convenience library: \`$lib'" 1>&2 - exit 1 - fi - # Prefer using a static library (so that no silly _DYNAMIC symbols - # are required to link). - if test -n "$old_library"; then - newdlprefiles="$newdlprefiles $dir/$old_library" - # Otherwise, use the dlname, so that lt_dlopen finds it. - elif test -n "$dlname"; then - newdlprefiles="$newdlprefiles $dir/$dlname" - else - newdlprefiles="$newdlprefiles $dir/$linklib" - fi - fi # $pass = dlpreopen - - if test -z "$libdir"; then - # Link the convenience library - if test $linkmode = lib; then - deplibs="$dir/$old_library $deplibs" - elif test "$linkmode,$pass" = "prog,link"; then - compile_deplibs="$dir/$old_library $compile_deplibs" - finalize_deplibs="$dir/$old_library $finalize_deplibs" - else - deplibs="$lib $deplibs" - fi - continue - fi - - if test $linkmode = prog && test $pass != link; then - newlib_search_path="$newlib_search_path $ladir" - deplibs="$lib $deplibs" - - linkalldeplibs=no - if test "$link_all_deplibs" != no || test -z "$library_names" || - test "$build_libtool_libs" = no; then - linkalldeplibs=yes - fi - - tmp_libs= - for deplib in $dependency_libs; do - case $deplib in - -L*) newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'`;; ### testsuite: skip nested quoting test - esac - # Need to link against all dependency_libs? - if test $linkalldeplibs = yes; then - deplibs="$deplib $deplibs" - else - # Need to hardcode shared library paths - # or/and link against static libraries - newdependency_libs="$deplib $newdependency_libs" - fi - case "$tmp_libs " in - *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;; - esac - tmp_libs="$tmp_libs $deplib" - done # for deplib - continue - fi # $linkmode = prog... - - link_static=no # Whether the deplib will be linked statically - if test -n "$library_names" && - { test "$prefer_static_libs" = no || test -z "$old_library"; }; then - # Link against this shared library - - if test "$linkmode,$pass" = "prog,link" || - { test $linkmode = lib && test $hardcode_into_libs = yes; }; then - # Hardcode the library path. - # Skip directories that are in the system default run-time - # search path. - case " $sys_lib_dlsearch_path " in - *" $absdir "*) ;; - *) - case "$compile_rpath " in - *" $absdir "*) ;; - *) compile_rpath="$compile_rpath $absdir" - esac - ;; - esac - case " $sys_lib_dlsearch_path " in - *" $libdir "*) ;; - *) - case "$finalize_rpath " in - *" $libdir "*) ;; - *) finalize_rpath="$finalize_rpath $libdir" - esac - ;; - esac - if test $linkmode = prog; then - # We need to hardcode the library path - if test -n "$shlibpath_var"; then - # Make sure the rpath contains only unique directories. - case "$temp_rpath " in - *" $dir "*) ;; - *" $absdir "*) ;; - *) temp_rpath="$temp_rpath $dir" ;; - esac - fi - fi - fi # $linkmode,$pass = prog,link... - - if test "$alldeplibs" = yes && - { test "$deplibs_check_method" = pass_all || - { test "$build_libtool_libs" = yes && - test -n "$library_names"; }; }; then - # We only need to search for static libraries - continue - fi - - if test "$installed" = no; then - notinst_deplibs="$notinst_deplibs $lib" - need_relink=yes - fi - - if test -n "$old_archive_from_expsyms_cmds"; then - # figure out the soname - set dummy $library_names - realname="$2" - shift; shift - libname=`eval \\$echo \"$libname_spec\"` - # use dlname if we got it. it's perfectly good, no? - if test -n "$dlname"; then - soname="$dlname" - elif test -n "$soname_spec"; then - # bleh windows - case $host in - *cygwin*) - major=`expr $current - $age` - versuffix="-$major" - ;; - esac - eval soname=\"$soname_spec\" - else - soname="$realname" - fi - - # Make a new name for the extract_expsyms_cmds to use - soroot="$soname" - soname=`echo $soroot | sed -e 's/^.*\///'` - newlib="libimp-`echo $soname | sed 's/^lib//;s/\.dll$//'`.a" - - # If the library has no export list, then create one now - if test -f "$output_objdir/$soname-def"; then : - else - $show "extracting exported symbol list from \`$soname'" - IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' - eval cmds=\"$extract_expsyms_cmds\" - for cmd in $cmds; do - IFS="$save_ifs" - $show "$cmd" - $run eval "$cmd" || exit $? - done - IFS="$save_ifs" - fi - - # Create $newlib - if test -f "$output_objdir/$newlib"; then :; else - $show "generating import library for \`$soname'" - IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' - eval cmds=\"$old_archive_from_expsyms_cmds\" - for cmd in $cmds; do - IFS="$save_ifs" - $show "$cmd" - $run eval "$cmd" || exit $? - done - IFS="$save_ifs" - fi - # make sure the library variables are pointing to the new library - dir=$output_objdir - linklib=$newlib - fi # test -n $old_archive_from_expsyms_cmds - - if test $linkmode = prog || test "$mode" != relink; then - add_shlibpath= - add_dir= - add= - lib_linked=yes - case $hardcode_action in - immediate | unsupported) - if test "$hardcode_direct" = no; then - add="$dir/$linklib" - elif test "$hardcode_minus_L" = no; then - case $host in - *-*-sunos*) add_shlibpath="$dir" ;; - esac - add_dir="-L$dir" - add="-l$name" - elif test "$hardcode_shlibpath_var" = no; then - add_shlibpath="$dir" - add="-l$name" - else - lib_linked=no - fi - ;; - relink) - if test "$hardcode_direct" = yes; then - add="$dir/$linklib" - elif test "$hardcode_minus_L" = yes; then - add_dir="-L$dir" - add="-l$name" - elif test "$hardcode_shlibpath_var" = yes; then - add_shlibpath="$dir" - add="-l$name" - else - lib_linked=no - fi - ;; - *) lib_linked=no ;; - esac - - if test "$lib_linked" != yes; then - $echo "$modename: configuration error: unsupported hardcode properties" - exit 1 - fi - - if test -n "$add_shlibpath"; then - case :$compile_shlibpath: in - *":$add_shlibpath:"*) ;; - *) compile_shlibpath="$compile_shlibpath$add_shlibpath:" ;; - esac - fi - if test $linkmode = prog; then - test -n "$add_dir" && compile_deplibs="$add_dir $compile_deplibs" - test -n "$add" && compile_deplibs="$add $compile_deplibs" - else - test -n "$add_dir" && deplibs="$add_dir $deplibs" - test -n "$add" && deplibs="$add $deplibs" - if test "$hardcode_direct" != yes && \ - test "$hardcode_minus_L" != yes && \ - test "$hardcode_shlibpath_var" = yes; then - case :$finalize_shlibpath: in - *":$libdir:"*) ;; - *) finalize_shlibpath="$finalize_shlibpath$libdir:" ;; - esac - fi - fi - fi - - if test $linkmode = prog || test "$mode" = relink; then - add_shlibpath= - add_dir= - add= - # Finalize command for both is simple: just hardcode it. - if test "$hardcode_direct" = yes; then - add="$libdir/$linklib" - elif test "$hardcode_minus_L" = yes; then - add_dir="-L$libdir" - add="-l$name" - elif test "$hardcode_shlibpath_var" = yes; then - case :$finalize_shlibpath: in - *":$libdir:"*) ;; - *) finalize_shlibpath="$finalize_shlibpath$libdir:" ;; - esac - add="-l$name" - else - # We cannot seem to hardcode it, guess we'll fake it. - add_dir="-L$libdir" - add="-l$name" - fi - - if test $linkmode = prog; then - test -n "$add_dir" && finalize_deplibs="$add_dir $finalize_deplibs" - test -n "$add" && finalize_deplibs="$add $finalize_deplibs" - else - test -n "$add_dir" && deplibs="$add_dir $deplibs" - test -n "$add" && deplibs="$add $deplibs" - fi - fi - elif test $linkmode = prog; then - if test "$alldeplibs" = yes && - { test "$deplibs_check_method" = pass_all || - { test "$build_libtool_libs" = yes && - test -n "$library_names"; }; }; then - # We only need to search for static libraries - continue - fi - - # Try to link the static library - # Here we assume that one of hardcode_direct or hardcode_minus_L - # is not unsupported. This is valid on all known static and - # shared platforms. - if test "$hardcode_direct" != unsupported; then - test -n "$old_library" && linklib="$old_library" - compile_deplibs="$dir/$linklib $compile_deplibs" - finalize_deplibs="$dir/$linklib $finalize_deplibs" - else - compile_deplibs="-l$name -L$dir $compile_deplibs" - finalize_deplibs="-l$name -L$dir $finalize_deplibs" - fi - elif test "$build_libtool_libs" = yes; then - # Not a shared library - if test "$deplibs_check_method" != pass_all; then - # We're trying link a shared library against a static one - # but the system doesn't support it. - - # Just print a warning and add the library to dependency_libs so - # that the program can be linked against the static library. - echo - echo "*** Warning: This library needs some functionality provided by $lib." - echo "*** I have the capability to make that library automatically link in when" - echo "*** you link to this library. But I can only do this if you have a" - echo "*** shared version of the library, which you do not appear to have." - if test "$module" = yes; then - echo "*** Therefore, libtool will create a static module, that should work " - echo "*** as long as the dlopening application is linked with the -dlopen flag." - if test -z "$global_symbol_pipe"; then - echo - echo "*** However, this would only work if libtool was able to extract symbol" - echo "*** lists from a program, using \`nm' or equivalent, but libtool could" - echo "*** not find such a program. So, this module is probably useless." - echo "*** \`nm' from GNU binutils and a full rebuild may help." - fi - if test "$build_old_libs" = no; then - build_libtool_libs=module - build_old_libs=yes - else - build_libtool_libs=no - fi - fi - else - convenience="$convenience $dir/$old_library" - old_convenience="$old_convenience $dir/$old_library" - deplibs="$dir/$old_library $deplibs" - link_static=yes - fi - fi # link shared/static library? - - if test $linkmode = lib; then - if test -n "$dependency_libs" && - { test $hardcode_into_libs != yes || test $build_old_libs = yes || - test $link_static = yes; }; then - # Extract -R from dependency_libs - temp_deplibs= - for libdir in $dependency_libs; do - case $libdir in - -R*) temp_xrpath=`$echo "X$libdir" | $Xsed -e 's/^-R//'` - case " $xrpath " in - *" $temp_xrpath "*) ;; - *) xrpath="$xrpath $temp_xrpath";; - esac;; - *) temp_deplibs="$temp_deplibs $libdir";; - esac - done - dependency_libs="$temp_deplibs" - fi - - newlib_search_path="$newlib_search_path $absdir" - # Link against this library - test "$link_static" = no && newdependency_libs="$abs_ladir/$laname $newdependency_libs" - # ... and its dependency_libs - tmp_libs= - for deplib in $dependency_libs; do - newdependency_libs="$deplib $newdependency_libs" - case "$tmp_libs " in - *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;; - esac - tmp_libs="$tmp_libs $deplib" - done - - if test $link_all_deplibs != no; then - # Add the search paths of all dependency libraries - for deplib in $dependency_libs; do - case $deplib in - -L*) path="$deplib" ;; - *.la) - dir=`$echo "X$deplib" | $Xsed -e 's%/[^/]*$%%'` - test "X$dir" = "X$deplib" && dir="." - # We need an absolute path. - case $dir in - [\\/]* | [A-Za-z]:[\\/]*) absdir="$dir" ;; - *) - absdir=`cd "$dir" && pwd` - if test -z "$absdir"; then - $echo "$modename: warning: cannot determine absolute directory name of \`$dir'" 1>&2 - absdir="$dir" - fi - ;; - esac - if grep "^installed=no" $deplib > /dev/null; then - path="-L$absdir/$objdir" - else - eval libdir=`sed -n -e 's/^libdir=\(.*\)$/\1/p' $deplib` - if test -z "$libdir"; then - $echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2 - exit 1 - fi - if test "$absdir" != "$libdir"; then - $echo "$modename: warning: \`$deplib' seems to be moved" 1>&2 - fi - path="-L$absdir" - fi - ;; - *) continue ;; - esac - case " $deplibs " in - *" $path "*) ;; - *) deplibs="$path $deplibs" ;; - esac - done - fi # link_all_deplibs != no - fi # linkmode = lib - done # for deplib in $libs - if test $pass = dlpreopen; then - # Link the dlpreopened libraries before other libraries - for deplib in $save_deplibs; do - deplibs="$deplib $deplibs" - done - fi - if test $pass != dlopen; then - test $pass != scan && dependency_libs="$newdependency_libs" - if test $pass != conv; then - # Make sure lib_search_path contains only unique directories. - lib_search_path= - for dir in $newlib_search_path; do - case "$lib_search_path " in - *" $dir "*) ;; - *) lib_search_path="$lib_search_path $dir" ;; - esac - done - newlib_search_path= - fi - - if test "$linkmode,$pass" != "prog,link"; then - vars="deplibs" - else - vars="compile_deplibs finalize_deplibs" - fi - for var in $vars dependency_libs; do - # Add libraries to $var in reverse order - eval tmp_libs=\"\$$var\" - new_libs= - for deplib in $tmp_libs; do - case $deplib in - -L*) new_libs="$deplib $new_libs" ;; - *) - case " $specialdeplibs " in - *" $deplib "*) new_libs="$deplib $new_libs" ;; - *) - case " $new_libs " in - *" $deplib "*) ;; - *) new_libs="$deplib $new_libs" ;; - esac - ;; - esac - ;; - esac - done - tmp_libs= - for deplib in $new_libs; do - case $deplib in - -L*) - case " $tmp_libs " in - *" $deplib "*) ;; - *) tmp_libs="$tmp_libs $deplib" ;; - esac - ;; - *) tmp_libs="$tmp_libs $deplib" ;; - esac - done - eval $var=\"$tmp_libs\" - done # for var - fi - if test "$pass" = "conv" && - { test "$linkmode" = "lib" || test "$linkmode" = "prog"; }; then - libs="$deplibs" # reset libs - deplibs= - fi - done # for pass - if test $linkmode = prog; then - dlfiles="$newdlfiles" - dlprefiles="$newdlprefiles" - fi - - case $linkmode in - oldlib) - if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then - $echo "$modename: warning: \`-dlopen' is ignored for archives" 1>&2 - fi - - if test -n "$rpath"; then - $echo "$modename: warning: \`-rpath' is ignored for archives" 1>&2 - fi - - if test -n "$xrpath"; then - $echo "$modename: warning: \`-R' is ignored for archives" 1>&2 - fi - - if test -n "$vinfo"; then - $echo "$modename: warning: \`-version-info' is ignored for archives" 1>&2 - fi - - if test -n "$release"; then - $echo "$modename: warning: \`-release' is ignored for archives" 1>&2 - fi - - if test -n "$export_symbols" || test -n "$export_symbols_regex"; then - $echo "$modename: warning: \`-export-symbols' is ignored for archives" 1>&2 - fi - - # Now set the variables for building old libraries. - build_libtool_libs=no - oldlibs="$output" - objs="$objs$old_deplibs" - ;; - - lib) - # Make sure we only generate libraries of the form `libNAME.la'. - case $outputname in - lib*) - name=`$echo "X$outputname" | $Xsed -e 's/\.la$//' -e 's/^lib//'` - eval libname=\"$libname_spec\" - ;; - *) - if test "$module" = no; then - $echo "$modename: libtool library \`$output' must begin with \`lib'" 1>&2 - $echo "$help" 1>&2 - exit 1 - fi - if test "$need_lib_prefix" != no; then - # Add the "lib" prefix for modules if required - name=`$echo "X$outputname" | $Xsed -e 's/\.la$//'` - eval libname=\"$libname_spec\" - else - libname=`$echo "X$outputname" | $Xsed -e 's/\.la$//'` - fi - ;; - esac - - if test -n "$objs"; then - if test "$deplibs_check_method" != pass_all; then - $echo "$modename: cannot build libtool library \`$output' from non-libtool objects on this host:$objs" 2>&1 - exit 1 - else - echo - echo "*** Warning: Linking the shared library $output against the non-libtool" - echo "*** objects $objs is not portable!" - libobjs="$libobjs $objs" - fi - fi - - if test "$dlself" != no; then - $echo "$modename: warning: \`-dlopen self' is ignored for libtool libraries" 1>&2 - fi - - set dummy $rpath - if test $# -gt 2; then - $echo "$modename: warning: ignoring multiple \`-rpath's for a libtool library" 1>&2 - fi - install_libdir="$2" - - oldlibs= - if test -z "$rpath"; then - if test "$build_libtool_libs" = yes; then - # Building a libtool convenience library. - # Some compilers have problems with a `.al' extension so - # convenience libraries should have the same extension an - # archive normally would. - oldlibs="$output_objdir/$libname.$libext $oldlibs" - build_libtool_libs=convenience - build_old_libs=yes - fi - - if test -n "$vinfo"; then - $echo "$modename: warning: \`-version-info' is ignored for convenience libraries" 1>&2 - fi - - if test -n "$release"; then - $echo "$modename: warning: \`-release' is ignored for convenience libraries" 1>&2 - fi - else - - # Parse the version information argument. - IFS="${IFS= }"; save_ifs="$IFS"; IFS=':' - set dummy $vinfo 0 0 0 - IFS="$save_ifs" - - if test -n "$8"; then - $echo "$modename: too many parameters to \`-version-info'" 1>&2 - $echo "$help" 1>&2 - exit 1 - fi - - current="$2" - revision="$3" - age="$4" - - # Check that each of the things are valid numbers. - case $current in - 0 | [1-9] | [1-9][0-9] | [1-9][0-9][0-9]) ;; - *) - $echo "$modename: CURRENT \`$current' is not a nonnegative integer" 1>&2 - $echo "$modename: \`$vinfo' is not valid version information" 1>&2 - exit 1 - ;; - esac - - case $revision in - 0 | [1-9] | [1-9][0-9] | [1-9][0-9][0-9]) ;; - *) - $echo "$modename: REVISION \`$revision' is not a nonnegative integer" 1>&2 - $echo "$modename: \`$vinfo' is not valid version information" 1>&2 - exit 1 - ;; - esac - - case $age in - 0 | [1-9] | [1-9][0-9] | [1-9][0-9][0-9]) ;; - *) - $echo "$modename: AGE \`$age' is not a nonnegative integer" 1>&2 - $echo "$modename: \`$vinfo' is not valid version information" 1>&2 - exit 1 - ;; - esac - - if test $age -gt $current; then - $echo "$modename: AGE \`$age' is greater than the current interface number \`$current'" 1>&2 - $echo "$modename: \`$vinfo' is not valid version information" 1>&2 - exit 1 - fi - - # Calculate the version variables. - major= - versuffix= - verstring= - case $version_type in - none) ;; - - darwin) - # Like Linux, but with the current version available in - # verstring for coding it into the library header - major=.`expr $current - $age` - versuffix="$major.$age.$revision" - # Darwin ld doesn't like 0 for these options... - minor_current=`expr $current + 1` - verstring="-compatibility_version $minor_current -current_version $minor_current.$revision" - ;; - - freebsd-aout) - major=".$current" - versuffix=".$current.$revision"; - ;; - - freebsd-elf) - major=".$current" - versuffix=".$current"; - ;; - - irix) - major=`expr $current - $age + 1` - verstring="sgi$major.$revision" - - # Add in all the interfaces that we are compatible with. - loop=$revision - while test $loop != 0; do - iface=`expr $revision - $loop` - loop=`expr $loop - 1` - verstring="sgi$major.$iface:$verstring" - done - - # Before this point, $major must not contain `.'. - major=.$major - versuffix="$major.$revision" - ;; - - linux) - major=.`expr $current - $age` - versuffix="$major.$age.$revision" - ;; - - osf) - major=`expr $current - $age` - versuffix=".$current.$age.$revision" - verstring="$current.$age.$revision" - - # Add in all the interfaces that we are compatible with. - loop=$age - while test $loop != 0; do - iface=`expr $current - $loop` - loop=`expr $loop - 1` - verstring="$verstring:${iface}.0" - done - - # Make executables depend on our current version. - verstring="$verstring:${current}.0" - ;; - - sunos) - major=".$current" - versuffix=".$current.$revision" - ;; - - windows) - # Use '-' rather than '.', since we only want one - # extension on DOS 8.3 filesystems. - major=`expr $current - $age` - versuffix="-$major" - ;; - - *) - $echo "$modename: unknown library version type \`$version_type'" 1>&2 - echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2 - exit 1 - ;; - esac - - # Clear the version info if we defaulted, and they specified a release. - if test -z "$vinfo" && test -n "$release"; then - major= - verstring="0.0" - if test "$need_version" = no; then - versuffix= - else - versuffix=".0.0" - fi - fi - - # Remove version info from name if versioning should be avoided - if test "$avoid_version" = yes && test "$need_version" = no; then - major= - versuffix= - verstring="" - fi - - # Check to see if the archive will have undefined symbols. - if test "$allow_undefined" = yes; then - if test "$allow_undefined_flag" = unsupported; then - $echo "$modename: warning: undefined symbols not allowed in $host shared libraries" 1>&2 - build_libtool_libs=no - build_old_libs=yes - fi - else - # Don't allow undefined symbols. - allow_undefined_flag="$no_undefined_flag" - fi - fi - - if test "$mode" != relink; then - # Remove our outputs, but don't remove object files since they - # may have been created when compiling PIC objects. - removelist= - tempremovelist=`echo "$output_objdir/*"` - for p in $tempremovelist; do - case $p in - *.$objext) - ;; - $output_objdir/$outputname | $output_objdir/$libname.* | $output_objdir/${libname}${release}.*) - removelist="$removelist $p" - ;; - *) ;; - esac - done - if test -n "$removelist"; then - $show "${rm}r $removelist" - $run ${rm}r $removelist - fi - fi - - # Now set the variables for building old libraries. - if test "$build_old_libs" = yes && test "$build_libtool_libs" != convenience ; then - oldlibs="$oldlibs $output_objdir/$libname.$libext" - - # Transform .lo files to .o files. - oldobjs="$objs "`$echo "X$libobjs" | $SP2NL | $Xsed -e '/\.'${libext}'$/d' -e "$lo2o" | $NL2SP` - fi - - # Eliminate all temporary directories. - for path in $notinst_path; do - lib_search_path=`echo "$lib_search_path " | sed -e 's% $path % %g'` - deplibs=`echo "$deplibs " | sed -e 's% -L$path % %g'` - dependency_libs=`echo "$dependency_libs " | sed -e 's% -L$path % %g'` - done - - if test -n "$xrpath"; then - # If the user specified any rpath flags, then add them. - temp_xrpath= - for libdir in $xrpath; do - temp_xrpath="$temp_xrpath -R$libdir" - case "$finalize_rpath " in - *" $libdir "*) ;; - *) finalize_rpath="$finalize_rpath $libdir" ;; - esac - done - if test $hardcode_into_libs != yes || test $build_old_libs = yes; then - dependency_libs="$temp_xrpath $dependency_libs" - fi - fi - - # Make sure dlfiles contains only unique files that won't be dlpreopened - old_dlfiles="$dlfiles" - dlfiles= - for lib in $old_dlfiles; do - case " $dlprefiles $dlfiles " in - *" $lib "*) ;; - *) dlfiles="$dlfiles $lib" ;; - esac - done - - # Make sure dlprefiles contains only unique files - old_dlprefiles="$dlprefiles" - dlprefiles= - for lib in $old_dlprefiles; do - case "$dlprefiles " in - *" $lib "*) ;; - *) dlprefiles="$dlprefiles $lib" ;; - esac - done - - if test "$build_libtool_libs" = yes; then - if test -n "$rpath"; then - case $host in - *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-beos*) - # these systems don't actually have a c library (as such)! - ;; - *-*-rhapsody* | *-*-darwin1.[012]) - # Rhapsody C library is in the System framework - deplibs="$deplibs -framework System" - ;; - *-*-netbsd*) - # Don't link with libc until the a.out ld.so is fixed. - ;; - *) - # Add libc to deplibs on all other systems if necessary. - if test $build_libtool_need_lc = "yes"; then - deplibs="$deplibs -lc" - fi - ;; - esac - fi - - # Transform deplibs into only deplibs that can be linked in shared. - name_save=$name - libname_save=$libname - release_save=$release - versuffix_save=$versuffix - major_save=$major - # I'm not sure if I'm treating the release correctly. I think - # release should show up in the -l (ie -lgmp5) so we don't want to - # add it in twice. Is that correct? - release="" - versuffix="" - major="" - newdeplibs= - droppeddeps=no - case $deplibs_check_method in - pass_all) - # Don't check for shared/static. Everything works. - # This might be a little naive. We might want to check - # whether the library exists or not. But this is on - # osf3 & osf4 and I'm not really sure... Just - # implementing what was already the behaviour. - newdeplibs=$deplibs - ;; - test_compile) - # This code stresses the "libraries are programs" paradigm to its - # limits. Maybe even breaks it. We compile a program, linking it - # against the deplibs as a proxy for the library. Then we can check - # whether they linked in statically or dynamically with ldd. - $rm conftest.c - cat > conftest.c </dev/null` - for potent_lib in $potential_libs; do - # Follow soft links. - if ls -lLd "$potent_lib" 2>/dev/null \ - | grep " -> " >/dev/null; then - continue - fi - # The statement above tries to avoid entering an - # endless loop below, in case of cyclic links. - # We might still enter an endless loop, since a link - # loop can be closed while we follow links, - # but so what? - potlib="$potent_lib" - while test -h "$potlib" 2>/dev/null; do - potliblink=`ls -ld $potlib | sed 's/.* -> //'` - case $potliblink in - [\\/]* | [A-Za-z]:[\\/]*) potlib="$potliblink";; - *) potlib=`$echo "X$potlib" | $Xsed -e 's,[^/]*$,,'`"$potliblink";; - esac - done - if eval $file_magic_cmd \"\$potlib\" 2>/dev/null \ - | sed 10q \ - | egrep "$file_magic_regex" > /dev/null; then - newdeplibs="$newdeplibs $a_deplib" - a_deplib="" - break 2 - fi - done - done - if test -n "$a_deplib" ; then - droppeddeps=yes - echo - echo "*** Warning: This library needs some functionality provided by $a_deplib." - echo "*** I have the capability to make that library automatically link in when" - echo "*** you link to this library. But I can only do this if you have a" - echo "*** shared version of the library, which you do not appear to have." - fi - else - # Add a -L argument. - newdeplibs="$newdeplibs $a_deplib" - fi - done # Gone through all deplibs. - ;; - match_pattern*) - set dummy $deplibs_check_method - match_pattern_regex=`expr "$deplibs_check_method" : "$2 \(.*\)"` - for a_deplib in $deplibs; do - name="`expr $a_deplib : '-l\(.*\)'`" - # If $name is empty we are operating on a -L argument. - if test -n "$name" && test "$name" != "0"; then - libname=`eval \\$echo \"$libname_spec\"` - for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do - potential_libs=`ls $i/$libname[.-]* 2>/dev/null` - for potent_lib in $potential_libs; do - if eval echo \"$potent_lib\" 2>/dev/null \ - | sed 10q \ - | egrep "$match_pattern_regex" > /dev/null; then - newdeplibs="$newdeplibs $a_deplib" - a_deplib="" - break 2 - fi - done - done - if test -n "$a_deplib" ; then - droppeddeps=yes - echo - echo "*** Warning: This library needs some functionality provided by $a_deplib." - echo "*** I have the capability to make that library automatically link in when" - echo "*** you link to this library. But I can only do this if you have a" - echo "*** shared version of the library, which you do not appear to have." - fi - else - # Add a -L argument. - newdeplibs="$newdeplibs $a_deplib" - fi - done # Gone through all deplibs. - ;; - none | unknown | *) - newdeplibs="" - if $echo "X $deplibs" | $Xsed -e 's/ -lc$//' \ - -e 's/ -[LR][^ ]*//g' -e 's/[ ]//g' | - grep . >/dev/null; then - echo - if test "X$deplibs_check_method" = "Xnone"; then - echo "*** Warning: inter-library dependencies are not supported in this platform." - else - echo "*** Warning: inter-library dependencies are not known to be supported." - fi - echo "*** All declared inter-library dependencies are being dropped." - droppeddeps=yes - fi - ;; - esac - versuffix=$versuffix_save - major=$major_save - release=$release_save - libname=$libname_save - name=$name_save - - case $host in - *-*-rhapsody* | *-*-darwin1.[012]) - # On Rhapsody replace the C library is the System framework - newdeplibs=`$echo "X $newdeplibs" | $Xsed -e 's/ -lc / -framework System /'` - ;; - esac - - if test "$droppeddeps" = yes; then - if test "$module" = yes; then - echo - echo "*** Warning: libtool could not satisfy all declared inter-library" - echo "*** dependencies of module $libname. Therefore, libtool will create" - echo "*** a static module, that should work as long as the dlopening" - echo "*** application is linked with the -dlopen flag." - if test -z "$global_symbol_pipe"; then - echo - echo "*** However, this would only work if libtool was able to extract symbol" - echo "*** lists from a program, using \`nm' or equivalent, but libtool could" - echo "*** not find such a program. So, this module is probably useless." - echo "*** \`nm' from GNU binutils and a full rebuild may help." - fi - if test "$build_old_libs" = no; then - oldlibs="$output_objdir/$libname.$libext" - build_libtool_libs=module - build_old_libs=yes - else - build_libtool_libs=no - fi - else - echo "*** The inter-library dependencies that have been dropped here will be" - echo "*** automatically added whenever a program is linked with this library" - echo "*** or is declared to -dlopen it." - - if test $allow_undefined = no; then - echo - echo "*** Since this library must not contain undefined symbols," - echo "*** because either the platform does not support them or" - echo "*** it was explicitly requested with -no-undefined," - echo "*** libtool will only create a static version of it." - if test "$build_old_libs" = no; then - oldlibs="$output_objdir/$libname.$libext" - build_libtool_libs=module - build_old_libs=yes - else - build_libtool_libs=no - fi - fi - fi - fi - # Done checking deplibs! - deplibs=$newdeplibs - fi - - # All the library-specific variables (install_libdir is set above). - library_names= - old_library= - dlname= - - # Test again, we may have decided not to build it any more - if test "$build_libtool_libs" = yes; then - if test $hardcode_into_libs = yes; then - # Hardcode the library paths - hardcode_libdirs= - dep_rpath= - rpath="$finalize_rpath" - test "$mode" != relink && rpath="$compile_rpath$rpath" - for libdir in $rpath; do - if test -n "$hardcode_libdir_flag_spec"; then - if test -n "$hardcode_libdir_separator"; then - if test -z "$hardcode_libdirs"; then - hardcode_libdirs="$libdir" - else - # Just accumulate the unique libdirs. - case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in - *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*) - ;; - *) - hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separator$libdir" - ;; - esac - fi - else - eval flag=\"$hardcode_libdir_flag_spec\" - dep_rpath="$dep_rpath $flag" - fi - elif test -n "$runpath_var"; then - case "$perm_rpath " in - *" $libdir "*) ;; - *) perm_rpath="$perm_rpath $libdir" ;; - esac - fi - done - # Substitute the hardcoded libdirs into the rpath. - if test -n "$hardcode_libdir_separator" && - test -n "$hardcode_libdirs"; then - libdir="$hardcode_libdirs" - eval dep_rpath=\"$hardcode_libdir_flag_spec\" - fi - if test -n "$runpath_var" && test -n "$perm_rpath"; then - # We should set the runpath_var. - rpath= - for dir in $perm_rpath; do - rpath="$rpath$dir:" - done - eval "$runpath_var='$rpath\$$runpath_var'; export $runpath_var" - fi - test -n "$dep_rpath" && deplibs="$dep_rpath $deplibs" - fi - - shlibpath="$finalize_shlibpath" - test "$mode" != relink && shlibpath="$compile_shlibpath$shlibpath" - if test -n "$shlibpath"; then - eval "$shlibpath_var='$shlibpath\$$shlibpath_var'; export $shlibpath_var" - fi - - # Get the real and link names of the library. - eval library_names=\"$library_names_spec\" - set dummy $library_names - realname="$2" - shift; shift - - if test -n "$soname_spec"; then - eval soname=\"$soname_spec\" - else - soname="$realname" - fi - test -z "$dlname" && dlname=$soname - - lib="$output_objdir/$realname" - for link - do - linknames="$linknames $link" - done - -# # Ensure that we have .o objects for linkers which dislike .lo -# # (e.g. aix) in case we are running --disable-static -# for obj in $libobjs; do -# xdir=`$echo "X$obj" | $Xsed -e 's%/[^/]*$%%'` -# if test "X$xdir" = "X$obj"; then -# xdir="." -# else -# xdir="$xdir" -# fi -# baseobj=`$echo "X$obj" | $Xsed -e 's%^.*/%%'` -# oldobj=`$echo "X$baseobj" | $Xsed -e "$lo2o"` -# if test ! -f $xdir/$oldobj && test "$baseobj" != "$oldobj"; then -# $show "(cd $xdir && ${LN_S} $baseobj $oldobj)" -# $run eval '(cd $xdir && ${LN_S} $baseobj $oldobj)' || exit $? -# fi -# done - - # Use standard objects if they are pic - test -z "$pic_flag" && libobjs=`$echo "X$libobjs" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP` - - # Prepare the list of exported symbols - if test -z "$export_symbols"; then - if test "$always_export_symbols" = yes || test -n "$export_symbols_regex"; then - $show "generating symbol list for \`$libname.la'" - export_symbols="$output_objdir/$libname.exp" - $run $rm $export_symbols - eval cmds=\"$export_symbols_cmds\" - IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' - for cmd in $cmds; do - IFS="$save_ifs" - $show "$cmd" - $run eval "$cmd" || exit $? - done - IFS="$save_ifs" - if test -n "$export_symbols_regex"; then - $show "egrep -e \"$export_symbols_regex\" \"$export_symbols\" > \"${export_symbols}T\"" - $run eval 'egrep -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"' - $show "$mv \"${export_symbols}T\" \"$export_symbols\"" - $run eval '$mv "${export_symbols}T" "$export_symbols"' - fi - fi - fi - - if test -n "$export_symbols" && test -n "$include_expsyms"; then - $run eval '$echo "X$include_expsyms" | $SP2NL >> "$export_symbols"' - fi - - if test -n "$convenience"; then - if test -n "$whole_archive_flag_spec"; then - save_libobjs=$libobjs - eval libobjs=\"\$libobjs $whole_archive_flag_spec\" - else - gentop="$output_objdir/${outputname}x" - $show "${rm}r $gentop" - $run ${rm}r "$gentop" - $show "$mkdir $gentop" - $run $mkdir "$gentop" - status=$? - if test $status -ne 0 && test ! -d "$gentop"; then - exit $status - fi - generated="$generated $gentop" - - for xlib in $convenience; do - # Extract the objects. - case $xlib in - [\\/]* | [A-Za-z]:[\\/]*) xabs="$xlib" ;; - *) xabs=`pwd`"/$xlib" ;; - esac - xlib=`$echo "X$xlib" | $Xsed -e 's%^.*/%%'` - xdir="$gentop/$xlib" - - $show "${rm}r $xdir" - $run ${rm}r "$xdir" - $show "$mkdir $xdir" - $run $mkdir "$xdir" - status=$? - if test $status -ne 0 && test ! -d "$xdir"; then - exit $status - fi - $show "(cd $xdir && $AR x $xabs)" - $run eval "(cd \$xdir && $AR x \$xabs)" || exit $? - - libobjs="$libobjs "`find $xdir -name \*.$objext -print -o -name \*.lo -print | $NL2SP` - done - fi - fi - - if test "$thread_safe" = yes && test -n "$thread_safe_flag_spec"; then - eval flag=\"$thread_safe_flag_spec\" - linker_flags="$linker_flags $flag" - fi - - # Make a backup of the uninstalled library when relinking - if test "$mode" = relink; then - $run eval '(cd $output_objdir && $rm ${realname}U && $mv $realname ${realname}U)' || exit $? - fi - - # Do each of the archive commands. - if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then - eval cmds=\"$archive_expsym_cmds\" - else - eval cmds=\"$archive_cmds\" - fi - if len=`expr "X$cmds" : ".*"` && - test $len -le $max_cmd_len; then - : - else - # The command line is too long to link in one step, link piecewise. - $echo "creating reloadable object files..." - - # Save the value of $output and $libobjs because we want to - # use them later. If we have whole_archive_flag_spec, we - # want to use save_libobjs as it was before - # whole_archive_flag_spec was expanded, because we can't - # assume the linker understands whole_archive_flag_spec. - # This may have to be revisited, in case too many - # convenience libraries get linked in and end up exceeding - # the spec. - if test -z "$convenience" || test -z "$whole_archive_flag_spec"; then - save_libobjs=$libobjs - fi - save_output=$output - - # Clear the reloadable object creation command queue and - # initialize k to one. - test_cmds= - concat_cmds= - objlist= - delfiles= - last_robj= - k=1 - output=$output_objdir/$save_output-${k}.$objext - # Loop over the list of objects to be linked. - for obj in $save_libobjs - do - eval test_cmds=\"$reload_cmds $objlist $last_robj\" - if test "X$objlist" = X || - { len=`expr "X$test_cmds" : ".*"` && - test $len -le $max_cmd_len; }; then - objlist="$objlist $obj" - else - # The command $test_cmds is almost too long, add a - # command to the queue. - if test $k -eq 1 ; then - # The first file doesn't have a previous command to add. - eval concat_cmds=\"$reload_cmds $objlist $last_robj\" - else - # All subsequent reloadable object files will link in - # the last one created. - eval concat_cmds=\"\$concat_cmds~$reload_cmds $objlist $last_robj\" - fi - last_robj=$output_objdir/$save_output-${k}.$objext - k=`expr $k + 1` - output=$output_objdir/$save_output-${k}.$objext - objlist=$obj - len=1 - fi - done - # Handle the remaining objects by creating one last - # reloadable object file. All subsequent reloadable object - # files will link in the last one created. - test -z "$concat_cmds" || concat_cmds=$concat_cmds~ - eval concat_cmds=\"\${concat_cmds}$reload_cmds $objlist $last_robj\" - - # Set up a command to remove the reloadale object files - # after they are used. - i=0 - while test $i -lt $k - do - i=`expr $i + 1` - delfiles="$delfiles $output_objdir/$save_output-${i}.$objext" - done - - $echo "creating a temporary reloadable object file: $output" - - # Loop through the commands generated above and execute them. - IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' - for cmd in $concat_cmds; do - IFS="$save_ifs" - $show "$cmd" - $run eval "$cmd" || exit $? - done - IFS="$save_ifs" - - libobjs=$output - # Restore the value of output. - output=$save_output - - if test -n "$convenience" && test -n "$whole_archive_flag_spec"; then - eval libobjs=\"\$libobjs $whole_archive_flag_spec\" - fi - # Expand the library linking commands again to reset the - # value of $libobjs for piecewise linking. - - # Do each of the archive commands. - if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then - eval cmds=\"$archive_expsym_cmds\" - else - eval cmds=\"$archive_cmds\" - fi - - # Append the command to remove the reloadable object files - # to the just-reset $cmds. - eval cmds=\"\$cmds~$rm $delfiles\" - fi - IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' - for cmd in $cmds; do - IFS="$save_ifs" - $show "$cmd" - $run eval "$cmd" || exit $? - done - IFS="$save_ifs" - - # Restore the uninstalled library and exit - if test "$mode" = relink; then - $run eval '(cd $output_objdir && $rm ${realname}T && $mv $realname ${realname}T && $mv "$realname"U $realname)' || exit $? - exit 0 - fi - - # Create links to the real library. - for linkname in $linknames; do - if test "$realname" != "$linkname"; then - $show "(cd $output_objdir && $rm $linkname && $LN_S $realname $linkname)" - $run eval '(cd $output_objdir && $rm $linkname && $LN_S $realname $linkname)' || exit $? - fi - done - - # If -module or -export-dynamic was specified, set the dlname. - if test "$module" = yes || test "$export_dynamic" = yes; then - # On all known operating systems, these are identical. - dlname="$soname" - fi - fi - ;; - - obj) - if test -n "$deplibs"; then - $echo "$modename: warning: \`-l' and \`-L' are ignored for objects" 1>&2 - fi - - if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then - $echo "$modename: warning: \`-dlopen' is ignored for objects" 1>&2 - fi - - if test -n "$rpath"; then - $echo "$modename: warning: \`-rpath' is ignored for objects" 1>&2 - fi - - if test -n "$xrpath"; then - $echo "$modename: warning: \`-R' is ignored for objects" 1>&2 - fi - - if test -n "$vinfo"; then - $echo "$modename: warning: \`-version-info' is ignored for objects" 1>&2 - fi - - if test -n "$release"; then - $echo "$modename: warning: \`-release' is ignored for objects" 1>&2 - fi - - case $output in - *.lo) - if test -n "$objs$old_deplibs"; then - $echo "$modename: cannot build library object \`$output' from non-libtool objects" 1>&2 - exit 1 - fi - libobj="$output" - obj=`$echo "X$output" | $Xsed -e "$lo2o"` - ;; - *) - libobj= - obj="$output" - ;; - esac - - # Delete the old objects. - $run $rm $obj $libobj - - # Objects from convenience libraries. This assumes - # single-version convenience libraries. Whenever we create - # different ones for PIC/non-PIC, this we'll have to duplicate - # the extraction. - reload_conv_objs= - gentop= - # reload_cmds runs $LD directly, so let us get rid of - # -Wl from whole_archive_flag_spec - wl= - - if test -n "$convenience"; then - if test -n "$whole_archive_flag_spec"; then - eval reload_conv_objs=\"\$reload_objs $whole_archive_flag_spec\" - else - gentop="$output_objdir/${obj}x" - $show "${rm}r $gentop" - $run ${rm}r "$gentop" - $show "$mkdir $gentop" - $run $mkdir "$gentop" - status=$? - if test $status -ne 0 && test ! -d "$gentop"; then - exit $status - fi - generated="$generated $gentop" - - for xlib in $convenience; do - # Extract the objects. - case $xlib in - [\\/]* | [A-Za-z]:[\\/]*) xabs="$xlib" ;; - *) xabs=`pwd`"/$xlib" ;; - esac - xlib=`$echo "X$xlib" | $Xsed -e 's%^.*/%%'` - xdir="$gentop/$xlib" - - $show "${rm}r $xdir" - $run ${rm}r "$xdir" - $show "$mkdir $xdir" - $run $mkdir "$xdir" - status=$? - if test $status -ne 0 && test ! -d "$xdir"; then - exit $status - fi - $show "(cd $xdir && $AR x $xabs)" - $run eval "(cd \$xdir && $AR x \$xabs)" || exit $? - - reload_conv_objs="$reload_objs "`find $xdir -name \*.$objext -print -o -name \*.lo -print | $NL2SP` - done - fi - fi - - # Create the old-style object. - reload_objs="$objs$old_deplibs "`$echo "X$libobjs" | $SP2NL | $Xsed -e '/\.'${libext}$'/d' -e '/\.lib$/d' -e "$lo2o" | $NL2SP`" $reload_conv_objs" ### testsuite: skip nested quoting test - - output="$obj" - eval cmds=\"$reload_cmds\" - IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' - for cmd in $cmds; do - IFS="$save_ifs" - $show "$cmd" - $run eval "$cmd" || exit $? - done - IFS="$save_ifs" - - # Exit if we aren't doing a library object file. - if test -z "$libobj"; then - if test -n "$gentop"; then - $show "${rm}r $gentop" - $run ${rm}r $gentop - fi - - exit 0 - fi - - if test "$build_libtool_libs" != yes; then - if test -n "$gentop"; then - $show "${rm}r $gentop" - $run ${rm}r $gentop - fi - - # Create an invalid libtool object if no PIC, so that we don't - # accidentally link it into a program. - # $show "echo timestamp > $libobj" - # $run eval "echo timestamp > $libobj" || exit $? - exit 0 - fi - - if test -n "$pic_flag" || test "$pic_mode" != default; then - # Only do commands if we really have different PIC objects. - reload_objs="$libobjs $reload_conv_objs" - output="$libobj" - eval cmds=\"$reload_cmds\" - IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' - for cmd in $cmds; do - IFS="$save_ifs" - $show "$cmd" - $run eval "$cmd" || exit $? - done - IFS="$save_ifs" -# else -# # Just create a symlink. -# $show $rm $libobj -# $run $rm $libobj -# xdir=`$echo "X$libobj" | $Xsed -e 's%/[^/]*$%%'` -# if test "X$xdir" = "X$libobj"; then -# xdir="." -# else -# xdir="$xdir" -# fi -# baseobj=`$echo "X$libobj" | $Xsed -e 's%^.*/%%'` -# oldobj=`$echo "X$baseobj" | $Xsed -e "$lo2o"` -# $show "(cd $xdir && $LN_S $oldobj $baseobj)" -# $run eval '(cd $xdir && $LN_S $oldobj $baseobj)' || exit $? - fi - - if test -n "$gentop"; then - $show "${rm}r $gentop" - $run ${rm}r $gentop - fi - - exit 0 - ;; - - prog) - case $host in - *cygwin*) output=`echo $output | sed -e 's,.exe$,,;s,$,.exe,'` ;; - esac - if test -n "$vinfo"; then - $echo "$modename: warning: \`-version-info' is ignored for programs" 1>&2 - fi - - if test -n "$release"; then - $echo "$modename: warning: \`-release' is ignored for programs" 1>&2 - fi - - if test "$preload" = yes; then - if test "$dlopen_support" = unknown && test "$dlopen_self" = unknown && - test "$dlopen_self_static" = unknown; then - $echo "$modename: warning: \`AC_LIBTOOL_DLOPEN' not used. Assuming no dlopen support." - fi - fi - - case $host in - *-*-rhapsody* | *-*-darwin1.[012]) - # On Rhapsody replace the C library is the System framework - compile_deplibs=`$echo "X $compile_deplibs" | $Xsed -e 's/ -lc / -framework System /'` - finalize_deplibs=`$echo "X $finalize_deplibs" | $Xsed -e 's/ -lc / -framework System /'` - ;; - esac - - compile_command="$compile_command $compile_deplibs" - finalize_command="$finalize_command $finalize_deplibs" - - if test -n "$rpath$xrpath"; then - # If the user specified any rpath flags, then add them. - for libdir in $rpath $xrpath; do - # This is the magic to use -rpath. - case "$finalize_rpath " in - *" $libdir "*) ;; - *) finalize_rpath="$finalize_rpath $libdir" ;; - esac - done - fi - - # Now hardcode the library paths - rpath= - hardcode_libdirs= - for libdir in $compile_rpath $finalize_rpath; do - if test -n "$hardcode_libdir_flag_spec"; then - if test -n "$hardcode_libdir_separator"; then - if test -z "$hardcode_libdirs"; then - hardcode_libdirs="$libdir" - else - # Just accumulate the unique libdirs. - case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in - *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*) - ;; - *) - hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separator$libdir" - ;; - esac - fi - else - eval flag=\"$hardcode_libdir_flag_spec\" - rpath="$rpath $flag" - fi - elif test -n "$runpath_var"; then - case "$perm_rpath " in - *" $libdir "*) ;; - *) perm_rpath="$perm_rpath $libdir" ;; - esac - fi - case $host in - *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*) - case :$dllsearchpath: in - *":$libdir:"*) ;; - *) dllsearchpath="$dllsearchpath:$libdir";; - esac - ;; - esac - done - # Substitute the hardcoded libdirs into the rpath. - if test -n "$hardcode_libdir_separator" && - test -n "$hardcode_libdirs"; then - libdir="$hardcode_libdirs" - eval rpath=\" $hardcode_libdir_flag_spec\" - fi - compile_rpath="$rpath" - - rpath= - hardcode_libdirs= - for libdir in $finalize_rpath; do - if test -n "$hardcode_libdir_flag_spec"; then - if test -n "$hardcode_libdir_separator"; then - if test -z "$hardcode_libdirs"; then - hardcode_libdirs="$libdir" - else - # Just accumulate the unique libdirs. - case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in - *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*) - ;; - *) - hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separator$libdir" - ;; - esac - fi - else - eval flag=\"$hardcode_libdir_flag_spec\" - rpath="$rpath $flag" - fi - elif test -n "$runpath_var"; then - case "$finalize_perm_rpath " in - *" $libdir "*) ;; - *) finalize_perm_rpath="$finalize_perm_rpath $libdir" ;; - esac - fi - done - # Substitute the hardcoded libdirs into the rpath. - if test -n "$hardcode_libdir_separator" && - test -n "$hardcode_libdirs"; then - libdir="$hardcode_libdirs" - eval rpath=\" $hardcode_libdir_flag_spec\" - fi - finalize_rpath="$rpath" - - dlsyms= - if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then - if test -n "$NM" && test -n "$global_symbol_pipe"; then - dlsyms="${outputname}S.c" - else - $echo "$modename: not configured to extract global symbols from dlpreopened files" 1>&2 - fi - fi - - if test -n "$dlsyms"; then - case $dlsyms in - "") ;; - *.c) - # Discover the nlist of each of the dlfiles. - nlist="$output_objdir/${outputname}.nm" - - $show "$rm $nlist ${nlist}S ${nlist}T" - $run $rm "$nlist" "${nlist}S" "${nlist}T" - - # Parse the name list into a source file. - $show "creating $output_objdir/$dlsyms" - - test -z "$run" && $echo > "$output_objdir/$dlsyms" "\ -/* $dlsyms - symbol resolution table for \`$outputname' dlsym emulation. */ -/* Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP */ - -#ifdef __cplusplus -extern \"C\" { -#endif - -/* Prevent the only kind of declaration conflicts we can make. */ -#define lt_preloaded_symbols some_other_symbol - -/* External symbol declarations for the compiler. */\ -" - - if test "$dlself" = yes; then - $show "generating symbol list for \`$output'" - - test -z "$run" && $echo ': @PROGRAM@ ' > "$nlist" - - # Add our own program objects to the symbol list. - progfiles="$objs$old_deplibs" - for arg in $progfiles; do - $show "extracting global C symbols from \`$arg'" - $run eval "$NM $arg | $global_symbol_pipe >> '$nlist'" - done - - if test -n "$exclude_expsyms"; then - $run eval 'egrep -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T' - $run eval '$mv "$nlist"T "$nlist"' - fi - - if test -n "$export_symbols_regex"; then - $run eval 'egrep -e "$export_symbols_regex" "$nlist" > "$nlist"T' - $run eval '$mv "$nlist"T "$nlist"' - fi - - # Prepare the list of exported symbols - if test -z "$export_symbols"; then - export_symbols="$output_objdir/$output.exp" - $run $rm $export_symbols - $run eval "sed -n -e '/^: @PROGRAM@$/d' -e 's/^.* \(.*\)$/\1/p' "'< "$nlist" > "$export_symbols"' - else - $run eval "sed -e 's/\([][.*^$]\)/\\\1/g' -e 's/^/ /' -e 's/$/$/'"' < "$export_symbols" > "$output_objdir/$output.exp"' - $run eval 'grep -f "$output_objdir/$output.exp" < "$nlist" > "$nlist"T' - $run eval 'mv "$nlist"T "$nlist"' - fi - fi - - for arg in $dlprefiles; do - $show "extracting global C symbols from \`$arg'" - name=`echo "$arg" | sed -e 's%^.*/%%'` - $run eval 'echo ": $name " >> "$nlist"' - $run eval "$NM $arg | $global_symbol_pipe >> '$nlist'" - done - - if test -z "$run"; then - # Make sure we have at least an empty file. - test -f "$nlist" || : > "$nlist" - - if test -n "$exclude_expsyms"; then - egrep -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T - $mv "$nlist"T "$nlist" - fi - - # Try sorting and uniquifying the output. - if grep -v "^: " < "$nlist" | sort +2 | uniq > "$nlist"S; then - : - else - grep -v "^: " < "$nlist" > "$nlist"S - fi - - if test -f "$nlist"S; then - eval "$global_symbol_to_cdecl"' < "$nlist"S >> "$output_objdir/$dlsyms"' - else - echo '/* NONE */' >> "$output_objdir/$dlsyms" - fi - - $echo >> "$output_objdir/$dlsyms" "\ - -#undef lt_preloaded_symbols - -#if defined (__STDC__) && __STDC__ -# define lt_ptr_t void * -#else -# define lt_ptr_t char * -# define const -#endif - -/* The mapping between symbol names and symbols. */ -const struct { - const char *name; - lt_ptr_t address; -} -lt_preloaded_symbols[] = -{\ -" - - sed -n -e 's/^: \([^ ]*\) $/ {\"\1\", (lt_ptr_t) 0},/p' \ - -e 's/^. \([^ ]*\) \([^ ]*\)$/ {"\2", (lt_ptr_t) \&\2},/p' \ - < "$nlist" >> "$output_objdir/$dlsyms" - - $echo >> "$output_objdir/$dlsyms" "\ - {0, (lt_ptr_t) 0} -}; - -/* This works around a problem in FreeBSD linker */ -#ifdef FREEBSD_WORKAROUND -static const void *lt_preloaded_setup() { - return lt_preloaded_symbols; -} -#endif - -#ifdef __cplusplus -} -#endif\ -" - fi - - pic_flag_for_symtable= - case $host in - # compiling the symbol table file with pic_flag works around - # a FreeBSD bug that causes programs to crash when -lm is - # linked before any other PIC object. But we must not use - # pic_flag when linking with -static. The problem exists in - # FreeBSD 2.2.6 and is fixed in FreeBSD 3.1. - *-*-freebsd2*|*-*-freebsd3.0*|*-*-freebsdelf3.0*) - case "$compile_command " in - *" -static "*) ;; - *) pic_flag_for_symtable=" $pic_flag -DFREEBSD_WORKAROUND";; - esac;; - *-*-hpux*) - case "$compile_command " in - *" -static "*) ;; - *) pic_flag_for_symtable=" $pic_flag";; - esac - esac - - # Now compile the dynamic symbol file. - $show "(cd $output_objdir && $LTCC -c$no_builtin_flag$pic_flag_for_symtable \"$dlsyms\")" - $run eval '(cd $output_objdir && $LTCC -c$no_builtin_flag$pic_flag_for_symtable "$dlsyms")' || exit $? - - # Clean up the generated files. - $show "$rm $output_objdir/$dlsyms $nlist ${nlist}S ${nlist}T" - $run $rm "$output_objdir/$dlsyms" "$nlist" "${nlist}S" "${nlist}T" - - # Transform the symbol file into the correct name. - compile_command=`$echo "X$compile_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}S.${objext}%"` - finalize_command=`$echo "X$finalize_command" | $Xsed -e "s%@SYMFILE@%$output_objdir/${outputname}S.${objext}%"` - ;; - *) - $echo "$modename: unknown suffix for \`$dlsyms'" 1>&2 - exit 1 - ;; - esac - else - # We keep going just in case the user didn't refer to - # lt_preloaded_symbols. The linker will fail if global_symbol_pipe - # really was required. - - # Nullify the symbol file. - compile_command=`$echo "X$compile_command" | $Xsed -e "s% @SYMFILE@%%"` - finalize_command=`$echo "X$finalize_command" | $Xsed -e "s% @SYMFILE@%%"` - fi - - if test $need_relink = no || test "$build_libtool_libs" != yes; then - # Replace the output file specification. - compile_command=`$echo "X$compile_command" | $Xsed -e 's%@OUTPUT@%'"$output"'%g'` - link_command="$compile_command$compile_rpath" - - # We have no uninstalled library dependencies, so finalize right now. - $show "$link_command" - $run eval "$link_command" - status=$? - - # Delete the generated files. - if test -n "$dlsyms"; then - $show "$rm $output_objdir/${outputname}S.${objext}" - $run $rm "$output_objdir/${outputname}S.${objext}" - fi - - exit $status - fi - - if test -n "$shlibpath_var"; then - # We should set the shlibpath_var - rpath= - for dir in $temp_rpath; do - case $dir in - [\\/]* | [A-Za-z]:[\\/]*) - # Absolute path. - rpath="$rpath$dir:" - ;; - *) - # Relative path: add a thisdir entry. - rpath="$rpath\$thisdir/$dir:" - ;; - esac - done - temp_rpath="$rpath" - fi - - if test -n "$compile_shlibpath$finalize_shlibpath"; then - compile_command="$shlibpath_var=\"$compile_shlibpath$finalize_shlibpath\$$shlibpath_var\" $compile_command" - fi - if test -n "$finalize_shlibpath"; then - finalize_command="$shlibpath_var=\"$finalize_shlibpath\$$shlibpath_var\" $finalize_command" - fi - - compile_var= - finalize_var= - if test -n "$runpath_var"; then - if test -n "$perm_rpath"; then - # We should set the runpath_var. - rpath= - for dir in $perm_rpath; do - rpath="$rpath$dir:" - done - compile_var="$runpath_var=\"$rpath\$$runpath_var\" " - fi - if test -n "$finalize_perm_rpath"; then - # We should set the runpath_var. - rpath= - for dir in $finalize_perm_rpath; do - rpath="$rpath$dir:" - done - finalize_var="$runpath_var=\"$rpath\$$runpath_var\" " - fi - fi - - if test "$no_install" = yes; then - # We don't need to create a wrapper script. - link_command="$compile_var$compile_command$compile_rpath" - # Replace the output file specification. - link_command=`$echo "X$link_command" | $Xsed -e 's%@OUTPUT@%'"$output"'%g'` - # Delete the old output file. - $run $rm $output - # Link the executable and exit - $show "$link_command" - $run eval "$link_command" || exit $? - exit 0 - fi - - if test "$hardcode_action" = relink; then - # Fast installation is not supported - link_command="$compile_var$compile_command$compile_rpath" - relink_command="$finalize_var$finalize_command$finalize_rpath" - - $echo "$modename: warning: this platform does not like uninstalled shared libraries" 1>&2 - $echo "$modename: \`$output' will be relinked during installation" 1>&2 - else - if test "$fast_install" != no; then - link_command="$finalize_var$compile_command$finalize_rpath" - if test "$fast_install" = yes; then - relink_command=`$echo "X$compile_var$compile_command$compile_rpath" | $Xsed -e 's%@OUTPUT@%\$progdir/\$file%g'` - else - # fast_install is set to needless - relink_command= - fi - else - link_command="$compile_var$compile_command$compile_rpath" - relink_command="$finalize_var$finalize_command$finalize_rpath" - fi - fi - - # Replace the output file specification. - link_command=`$echo "X$link_command" | $Xsed -e 's%@OUTPUT@%'"$output_objdir/$outputname"'%g'` - - # Delete the old output files. - $run $rm $output $output_objdir/$outputname $output_objdir/lt-$outputname - - $show "$link_command" - $run eval "$link_command" || exit $? - - # Now create the wrapper script. - $show "creating $output" - - # Quote the relink command for shipping. - if test -n "$relink_command"; then - # Preserve any variables that may affect compiler behavior - for var in $variables_saved_for_relink; do - if eval test -z \"\${$var+set}\"; then - relink_command="{ test -z \"\${$var+set}\" || unset $var || { $var=; export $var; }; }; $relink_command" - elif eval var_value=\$$var; test -z "$var_value"; then - relink_command="$var=; export $var; $relink_command" - else - var_value=`$echo "X$var_value" | $Xsed -e "$sed_quote_subst"` - relink_command="$var=\"$var_value\"; export $var; $relink_command" - fi - done - relink_command="cd `pwd`; $relink_command" - relink_command=`$echo "X$relink_command" | $Xsed -e "$sed_quote_subst"` - fi - - # Quote $echo for shipping. - if test "X$echo" = "X$SHELL $0 --fallback-echo"; then - case $0 in - [\\/]* | [A-Za-z]:[\\/]*) qecho="$SHELL $0 --fallback-echo";; - *) qecho="$SHELL `pwd`/$0 --fallback-echo";; - esac - qecho=`$echo "X$qecho" | $Xsed -e "$sed_quote_subst"` - else - qecho=`$echo "X$echo" | $Xsed -e "$sed_quote_subst"` - fi - - # Only actually do things if our run command is non-null. - if test -z "$run"; then - # win32 will think the script is a binary if it has - # a .exe suffix, so we strip it off here. - case $output in - *.exe) output=`echo $output|sed 's,.exe$,,'` ;; - esac - # test for cygwin because mv fails w/o .exe extensions - case $host in - *cygwin*) exeext=.exe ;; - *) exeext= ;; - esac - $rm $output - trap "$rm $output; exit 1" 1 2 15 - - $echo > $output "\ -#! $SHELL - -# $output - temporary wrapper script for $objdir/$outputname -# Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP -# -# The $output program cannot be directly executed until all the libtool -# libraries that it depends on are installed. -# -# This wrapper script should never be moved out of the build directory. -# If it is, it will not operate correctly. - -# Sed substitution that helps us do robust quoting. It backslashifies -# metacharacters that are still active within double-quoted strings. -Xsed='sed -e 1s/^X//' -sed_quote_subst='$sed_quote_subst' - -# The HP-UX ksh and POSIX shell print the target directory to stdout -# if CDPATH is set. -if test \"\${CDPATH+set}\" = set; then CDPATH=:; export CDPATH; fi - -relink_command=\"$relink_command\" - -# This environment variable determines our operation mode. -if test \"\$libtool_install_magic\" = \"$magic\"; then - # install mode needs the following variable: - notinst_deplibs='$notinst_deplibs' -else - # When we are sourced in execute mode, \$file and \$echo are already set. - if test \"\$libtool_execute_magic\" != \"$magic\"; then - echo=\"$qecho\" - file=\"\$0\" - # Make sure echo works. - if test \"X\$1\" = X--no-reexec; then - # Discard the --no-reexec flag, and continue. - shift - elif test \"X\`(\$echo '\t') 2>/dev/null\`\" = 'X\t'; then - # Yippee, \$echo works! - : - else - # Restart under the correct shell, and then maybe \$echo will work. - exec $SHELL \"\$0\" --no-reexec \${1+\"\$@\"} - fi - fi\ -" - $echo >> $output "\ - - # Find the directory that this script lives in. - thisdir=\`\$echo \"X\$file\" | \$Xsed -e 's%/[^/]*$%%'\` - test \"x\$thisdir\" = \"x\$file\" && thisdir=. - - # Follow symbolic links until we get to the real thisdir. - file=\`ls -ld \"\$file\" | sed -n 's/.*-> //p'\` - while test -n \"\$file\"; do - destdir=\`\$echo \"X\$file\" | \$Xsed -e 's%/[^/]*\$%%'\` - - # If there was a directory component, then change thisdir. - if test \"x\$destdir\" != \"x\$file\"; then - case \"\$destdir\" in - [\\\\/]* | [A-Za-z]:[\\\\/]*) thisdir=\"\$destdir\" ;; - *) thisdir=\"\$thisdir/\$destdir\" ;; - esac - fi - - file=\`\$echo \"X\$file\" | \$Xsed -e 's%^.*/%%'\` - file=\`ls -ld \"\$thisdir/\$file\" | sed -n 's/.*-> //p'\` - done - - # Try to get the absolute directory name. - absdir=\`cd \"\$thisdir\" && pwd\` - test -n \"\$absdir\" && thisdir=\"\$absdir\" -" - - if test "$fast_install" = yes; then - echo >> $output "\ - program=lt-'$outputname'$exeext - progdir=\"\$thisdir/$objdir\" - - if test ! -f \"\$progdir/\$program\" || \\ - { file=\`ls -1dt \"\$progdir/\$program\" \"\$progdir/../\$program\" 2>/dev/null | sed 1q\`; \\ - test \"X\$file\" != \"X\$progdir/\$program\"; }; then - - file=\"\$\$-\$program\" - - if test ! -d \"\$progdir\"; then - $mkdir \"\$progdir\" - else - $rm \"\$progdir/\$file\" - fi" - - echo >> $output "\ - - # relink executable if necessary - if test -n \"\$relink_command\"; then - if relink_command_output=\`eval \$relink_command 2>&1\`; then : - else - $echo \"\$relink_command_output\" >&2 - $rm \"\$progdir/\$file\" - exit 1 - fi - fi - - $mv \"\$progdir/\$file\" \"\$progdir/\$program\" 2>/dev/null || - { $rm \"\$progdir/\$program\"; - $mv \"\$progdir/\$file\" \"\$progdir/\$program\"; } - $rm \"\$progdir/\$file\" - fi" - else - echo >> $output "\ - program='$outputname' - progdir=\"\$thisdir/$objdir\" -" - fi - - echo >> $output "\ - - if test -f \"\$progdir/\$program\"; then" - - # Export our shlibpath_var if we have one. - if test "$shlibpath_overrides_runpath" = yes && test -n "$shlibpath_var" && test -n "$temp_rpath"; then - $echo >> $output "\ - # Add our own library path to $shlibpath_var - $shlibpath_var=\"$temp_rpath\$$shlibpath_var\" - - # Some systems cannot cope with colon-terminated $shlibpath_var - # The second colon is a workaround for a bug in BeOS R4 sed - $shlibpath_var=\`\$echo \"X\$$shlibpath_var\" | \$Xsed -e 's/::*\$//'\` - - export $shlibpath_var -" - fi - - # fixup the dll searchpath if we need to. - if test -n "$dllsearchpath"; then - $echo >> $output "\ - # Add the dll search path components to the executable PATH - PATH=$dllsearchpath:\$PATH -" - fi - - $echo >> $output "\ - if test \"\$libtool_execute_magic\" != \"$magic\"; then - # Run the actual program with our arguments. -" - case $host in - # win32 systems need to use the prog path for dll - # lookup to work - *-*-cygwin* | *-*-pw32*) - $echo >> $output "\ - exec \$progdir/\$program \${1+\"\$@\"} -" - ;; - - # Backslashes separate directories on plain windows - *-*-mingw | *-*-os2*) - $echo >> $output "\ - exec \$progdir\\\\\$program \${1+\"\$@\"} -" - ;; - - *) - $echo >> $output "\ - # Export the path to the program. - PATH=\"\$progdir:\$PATH\" - export PATH - - exec \$program \${1+\"\$@\"} -" - ;; - esac - $echo >> $output "\ - \$echo \"\$0: cannot exec \$program \${1+\"\$@\"}\" - exit 1 - fi - else - # The program doesn't exist. - \$echo \"\$0: error: \$progdir/\$program does not exist\" 1>&2 - \$echo \"This script is just a wrapper for \$program.\" 1>&2 - echo \"See the $PACKAGE documentation for more information.\" 1>&2 - exit 1 - fi -fi\ -" - chmod +x $output - fi - exit 0 - ;; - esac - - # See if we need to build an old-fashioned archive. - for oldlib in $oldlibs; do - - if test "$build_libtool_libs" = convenience; then - oldobjs="$libobjs_save" - addlibs="$convenience" - build_libtool_libs=no - else - if test "$build_libtool_libs" = module; then - oldobjs="$libobjs_save" - build_libtool_libs=no - else - oldobjs="$objs$old_deplibs $non_pic_objects" - fi - addlibs="$old_convenience" - fi - - if test -n "$addlibs"; then - gentop="$output_objdir/${outputname}x" - $show "${rm}r $gentop" - $run ${rm}r "$gentop" - $show "$mkdir $gentop" - $run $mkdir "$gentop" - status=$? - if test $status -ne 0 && test ! -d "$gentop"; then - exit $status - fi - generated="$generated $gentop" - - # Add in members from convenience archives. - for xlib in $addlibs; do - # Extract the objects. - case $xlib in - [\\/]* | [A-Za-z]:[\\/]*) xabs="$xlib" ;; - *) xabs=`pwd`"/$xlib" ;; - esac - xlib=`$echo "X$xlib" | $Xsed -e 's%^.*/%%'` - xdir="$gentop/$xlib" - - $show "${rm}r $xdir" - $run ${rm}r "$xdir" - $show "$mkdir $xdir" - $run $mkdir "$xdir" - status=$? - if test $status -ne 0 && test ! -d "$xdir"; then - exit $status - fi - $show "(cd $xdir && $AR x $xabs)" - $run eval "(cd \$xdir && $AR x \$xabs)" || exit $? - - oldobjs="$oldobjs "`find $xdir -name \*.${objext} -print | $NL2SP` - done - fi - - # Do each command in the archive commands. - if test -n "$old_archive_from_new_cmds" && test "$build_libtool_libs" = yes; then - eval cmds=\"$old_archive_from_new_cmds\" - else -# # Ensure that we have .o objects in place in case we decided -# # not to build a shared library, and have fallen back to building -# # static libs even though --disable-static was passed! -# for oldobj in $oldobjs; do -# if test ! -f $oldobj; then -# xdir=`$echo "X$oldobj" | $Xsed -e 's%/[^/]*$%%'` -# if test "X$xdir" = "X$oldobj"; then -# xdir="." -# else -# xdir="$xdir" -# fi -# baseobj=`$echo "X$oldobj" | $Xsed -e 's%^.*/%%'` -# obj=`$echo "X$baseobj" | $Xsed -e "$o2lo"` -# $show "(cd $xdir && ${LN_S} $obj $baseobj)" -# $run eval '(cd $xdir && ${LN_S} $obj $baseobj)' || exit $? -# fi -# done - - eval cmds=\"$old_archive_cmds\" - - if len=`expr "X$cmds" : ".*"` && - test $len -le $max_cmd_len; then - : - else - # the command line is too long to link in one step, link in parts - $echo "using piecewise archive linking..." - save_RANLIB=$RANLIB - RANLIB=: - objlist= - concat_cmds= - save_oldobjs=$oldobjs - # GNU ar 2.10+ was changed to match POSIX; thus no paths are - # encoded into archives. This makes 'ar r' malfunction in - # this piecewise linking case whenever conflicting object - # names appear in distinct ar calls; check, warn and compensate. - if (for obj in $save_oldobjs - do - $echo "X$obj" | $Xsed -e 's%^.*/%%' - done | sort | sort -uc >/dev/null 2>&1); then - : - else - $echo "$modename: warning: object name conflicts; overriding AR_FLAGS to 'cq'" 1>&2 - $echo "$modename: warning: to ensure that POSIX-compatible ar will work" 1>&2 - AR_FLAGS=cq - fi - for obj in $save_oldobjs - do - oldobjs="$objlist $obj" - objlist="$objlist $obj" - eval test_cmds=\"$old_archive_cmds\" - if len=`expr "X$test_cmds" : ".*"` && - test $len -le $max_cmd_len; then - : - else - # the above command should be used before it gets too long - oldobjs=$objlist - test -z "$concat_cmds" || concat_cmds=$concat_cmds~ - eval concat_cmds=\"\${concat_cmds}$old_archive_cmds\" - objlist= - fi - done - RANLIB=$save_RANLIB - oldobjs=$objlist - eval cmds=\"\$concat_cmds~$old_archive_cmds\" - fi - fi - IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' - for cmd in $cmds; do - IFS="$save_ifs" - $show "$cmd" - $run eval "$cmd" || exit $? - done - IFS="$save_ifs" - done - - if test -n "$generated"; then - $show "${rm}r$generated" - $run ${rm}r$generated - fi - - # Now create the libtool archive. - case $output in - *.la) - old_library= - test "$build_old_libs" = yes && old_library="$libname.$libext" - $show "creating $output" - - # Preserve any variables that may affect compiler behavior - for var in $variables_saved_for_relink; do - if eval test -z \"\${$var+set}\"; then - relink_command="{ test -z \"\${$var+set}\" || unset $var || { $var=; export $var; }; }; $relink_command" - elif eval var_value=\$$var; test -z "$var_value"; then - relink_command="$var=; export $var; $relink_command" - else - var_value=`$echo "X$var_value" | $Xsed -e "$sed_quote_subst"` - relink_command="$var=\"$var_value\"; export $var; $relink_command" - fi - done - # Quote the link command for shipping. - tagopts= - for tag in $taglist; do - tagopts="$tagopts --tag $tag" - done - relink_command="(cd `pwd`; $SHELL $0$tagopts --mode=relink $libtool_args)" - relink_command=`$echo "X$relink_command" | $Xsed -e "$sed_quote_subst"` - - # Only create the output if not a dry run. - if test -z "$run"; then - for installed in no yes; do - if test "$installed" = yes; then - if test -z "$install_libdir"; then - break - fi - output="$output_objdir/$outputname"i - # Replace all uninstalled libtool libraries with the installed ones - newdependency_libs= - for deplib in $dependency_libs; do - case $deplib in - *.la) - name=`$echo "X$deplib" | $Xsed -e 's%^.*/%%'` - eval libdir=`sed -n -e 's/^libdir=\(.*\)$/\1/p' $deplib` - if test -z "$libdir"; then - $echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2 - exit 1 - fi - newdependency_libs="$newdependency_libs $libdir/$name" - ;; - *) newdependency_libs="$newdependency_libs $deplib" ;; - esac - done - dependency_libs="$newdependency_libs" - newdlfiles= - for lib in $dlfiles; do - name=`$echo "X$lib" | $Xsed -e 's%^.*/%%'` - eval libdir=`sed -n -e 's/^libdir=\(.*\)$/\1/p' $lib` - if test -z "$libdir"; then - $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2 - exit 1 - fi - newdlfiles="$newdlfiles $libdir/$name" - done - dlfiles="$newdlfiles" - newdlprefiles= - for lib in $dlprefiles; do - name=`$echo "X$lib" | $Xsed -e 's%^.*/%%'` - eval libdir=`sed -n -e 's/^libdir=\(.*\)$/\1/p' $lib` - if test -z "$libdir"; then - $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2 - exit 1 - fi - newdlprefiles="$newdlprefiles $libdir/$name" - done - dlprefiles="$newdlprefiles" - fi - $rm $output - # place dlname in correct position for cygwin - tdlname=$dlname - case $host,$output,$installed,$module,$dlname in - *cygwin*,*lai,yes,no,*.dll) tdlname=../bin/$dlname ;; - esac - $echo > $output "\ -# $outputname - a libtool library file -# Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP -# -# Please DO NOT delete this file! -# It is necessary for linking the library. - -# The name that we can dlopen(3). -dlname='$tdlname' - -# Names of this library. -library_names='$library_names' - -# The name of the static archive. -old_library='$old_library' - -# Libraries that this one depends upon. -dependency_libs='$dependency_libs' - -# Version information for $libname. -current=$current -age=$age -revision=$revision - -# Is this an already installed library? -installed=$installed - -# Files to dlopen/dlpreopen -dlopen='$dlfiles' -dlpreopen='$dlprefiles' - -# Directory that this library needs to be installed in: -libdir='$install_libdir'" - if test "$installed" = no && test $need_relink = yes; then - $echo >> $output "\ -relink_command=\"$relink_command\"" - fi - done - fi - - # Do a symbolic link so that the libtool archive can be found in - # LD_LIBRARY_PATH before the program is installed. - $show "(cd $output_objdir && $rm $outputname && $LN_S ../$outputname $outputname)" - $run eval '(cd $output_objdir && $rm $outputname && $LN_S ../$outputname $outputname)' || exit $? - ;; - esac - exit 0 - ;; - - # libtool install mode - install) - modename="$modename: install" - - # There may be an optional sh(1) argument at the beginning of - # install_prog (especially on Windows NT). - if test "$nonopt" = "$SHELL" || test "$nonopt" = /bin/sh || - # Allow the use of GNU shtool's install command. - $echo "X$nonopt" | $Xsed | grep shtool > /dev/null; then - # Aesthetically quote it. - arg=`$echo "X$nonopt" | $Xsed -e "$sed_quote_subst"` - case $arg in - *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*) - arg="\"$arg\"" - ;; - esac - install_prog="$arg " - arg="$1" - shift - else - install_prog= - arg="$nonopt" - fi - - # The real first argument should be the name of the installation program. - # Aesthetically quote it. - arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"` - case $arg in - *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*) - arg="\"$arg\"" - ;; - esac - install_prog="$install_prog$arg" - - # We need to accept at least all the BSD install flags. - dest= - files= - opts= - prev= - install_type= - isdir=no - stripme= - for arg - do - if test -n "$dest"; then - files="$files $dest" - dest="$arg" - continue - fi - - case $arg in - -d) isdir=yes ;; - -f) prev="-f" ;; - -g) prev="-g" ;; - -m) prev="-m" ;; - -o) prev="-o" ;; - -s) - stripme=" -s" - continue - ;; - -*) ;; - - *) - # If the previous option needed an argument, then skip it. - if test -n "$prev"; then - prev= - else - dest="$arg" - continue - fi - ;; - esac - - # Aesthetically quote the argument. - arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"` - case $arg in - *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*) - arg="\"$arg\"" - ;; - esac - install_prog="$install_prog $arg" - done - - if test -z "$install_prog"; then - $echo "$modename: you must specify an install program" 1>&2 - $echo "$help" 1>&2 - exit 1 - fi - - if test -n "$prev"; then - $echo "$modename: the \`$prev' option requires an argument" 1>&2 - $echo "$help" 1>&2 - exit 1 - fi - - if test -z "$files"; then - if test -z "$dest"; then - $echo "$modename: no file or destination specified" 1>&2 - else - $echo "$modename: you must specify a destination" 1>&2 - fi - $echo "$help" 1>&2 - exit 1 - fi - - # Strip any trailing slash from the destination. - dest=`$echo "X$dest" | $Xsed -e 's%/$%%'` - - # Check to see that the destination is a directory. - test -d "$dest" && isdir=yes - if test "$isdir" = yes; then - destdir="$dest" - destname= - else - destdir=`$echo "X$dest" | $Xsed -e 's%/[^/]*$%%'` - test "X$destdir" = "X$dest" && destdir=. - destname=`$echo "X$dest" | $Xsed -e 's%^.*/%%'` - - # Not a directory, so check to see that there is only one file specified. - set dummy $files - if test $# -gt 2; then - $echo "$modename: \`$dest' is not a directory" 1>&2 - $echo "$help" 1>&2 - exit 1 - fi - fi - case $destdir in - [\\/]* | [A-Za-z]:[\\/]*) ;; - *) - for file in $files; do - case $file in - *.lo) ;; - *) - $echo "$modename: \`$destdir' must be an absolute directory name" 1>&2 - $echo "$help" 1>&2 - exit 1 - ;; - esac - done - ;; - esac - - # This variable tells wrapper scripts just to set variables rather - # than running their programs. - libtool_install_magic="$magic" - - staticlibs= - future_libdirs= - current_libdirs= - for file in $files; do - - # Do each installation. - case $file in - *.$libext) - # Do the static libraries later. - staticlibs="$staticlibs $file" - ;; - - *.la) - # Check to see that this really is a libtool archive. - if (sed -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then : - else - $echo "$modename: \`$file' is not a valid libtool archive" 1>&2 - $echo "$help" 1>&2 - exit 1 - fi - - library_names= - old_library= - relink_command= - # If there is no directory component, then add one. - case $file in - */* | *\\*) . $file ;; - *) . ./$file ;; - esac - - # Add the libdir to current_libdirs if it is the destination. - if test "X$destdir" = "X$libdir"; then - case "$current_libdirs " in - *" $libdir "*) ;; - *) current_libdirs="$current_libdirs $libdir" ;; - esac - else - # Note the libdir as a future libdir. - case "$future_libdirs " in - *" $libdir "*) ;; - *) future_libdirs="$future_libdirs $libdir" ;; - esac - fi - - dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'`/ - test "X$dir" = "X$file/" && dir= - dir="$dir$objdir" - - if test -n "$relink_command"; then - $echo "$modename: warning: relinking \`$file'" 1>&2 - $show "$relink_command" - if $run eval "$relink_command"; then : - else - $echo "$modename: error: relink \`$file' with the above command before installing it" 1>&2 - exit 1 - fi - fi - - # See the names of the shared library. - set dummy $library_names - if test -n "$2"; then - realname="$2" - shift - shift - - srcname="$realname" - test -n "$relink_command" && srcname="$realname"T - - # Install the shared library and build the symlinks. - $show "$install_prog $dir/$srcname $destdir/$realname" - $run eval "$install_prog $dir/$srcname $destdir/$realname" || exit $? - if test -n "$stripme" && test -n "$striplib"; then - $show "$striplib $destdir/$realname" - $run eval "$striplib $destdir/$realname" || exit $? - fi - - if test $# -gt 0; then - # Delete the old symlinks, and create new ones. - for linkname - do - if test "$linkname" != "$realname"; then - $show "(cd $destdir && $rm $linkname && $LN_S $realname $linkname)" - $run eval "(cd $destdir && $rm $linkname && $LN_S $realname $linkname)" - fi - done - fi - - # Do each command in the postinstall commands. - lib="$destdir/$realname" - eval cmds=\"$postinstall_cmds\" - IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' - for cmd in $cmds; do - IFS="$save_ifs" - $show "$cmd" - $run eval "$cmd" || exit $? - done - IFS="$save_ifs" - fi - - # Install the pseudo-library for information purposes. - name=`$echo "X$file" | $Xsed -e 's%^.*/%%'` - instname="$dir/$name"i - $show "$install_prog $instname $destdir/$name" - $run eval "$install_prog $instname $destdir/$name" || exit $? - - # Maybe install the static library, too. - test -n "$old_library" && staticlibs="$staticlibs $dir/$old_library" - ;; - - *.lo) - # Install (i.e. copy) a libtool object. - - # Figure out destination file name, if it wasn't already specified. - if test -n "$destname"; then - destfile="$destdir/$destname" - else - destfile=`$echo "X$file" | $Xsed -e 's%^.*/%%'` - destfile="$destdir/$destfile" - fi - - # Deduce the name of the destination old-style object file. - case $destfile in - *.lo) - staticdest=`$echo "X$destfile" | $Xsed -e "$lo2o"` - ;; - *.$objext) - staticdest="$destfile" - destfile= - ;; - *) - $echo "$modename: cannot copy a libtool object to \`$destfile'" 1>&2 - $echo "$help" 1>&2 - exit 1 - ;; - esac - - # Install the libtool object if requested. - if test -n "$destfile"; then - $show "$install_prog $file $destfile" - $run eval "$install_prog $file $destfile" || exit $? - fi - - # Install the old object if enabled. - if test "$build_old_libs" = yes; then - # Deduce the name of the old-style object file. - staticobj=`$echo "X$file" | $Xsed -e "$lo2o"` - - $show "$install_prog $staticobj $staticdest" - $run eval "$install_prog \$staticobj \$staticdest" || exit $? - fi - exit 0 - ;; - - *) - # Figure out destination file name, if it wasn't already specified. - if test -n "$destname"; then - destfile="$destdir/$destname" - else - destfile=`$echo "X$file" | $Xsed -e 's%^.*/%%'` - destfile="$destdir/$destfile" - fi - - # Do a test to see if this is really a libtool program. - if (sed -e '4q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then - notinst_deplibs= - relink_command= - - # If there is no directory component, then add one. - case $file in - */* | *\\*) . $file ;; - *) . ./$file ;; - esac - - # Check the variables that should have been set. - if test -z "$notinst_deplibs"; then - $echo "$modename: invalid libtool wrapper script \`$file'" 1>&2 - exit 1 - fi - - finalize=yes - for lib in $notinst_deplibs; do - # Check to see that each library is installed. - libdir= - if test -f "$lib"; then - # If there is no directory component, then add one. - case $lib in - */* | *\\*) . $lib ;; - *) . ./$lib ;; - esac - fi - libfile="$libdir/"`$echo "X$lib" | $Xsed -e 's%^.*/%%g'` ### testsuite: skip nested quoting test - if test -n "$libdir" && test ! -f "$libfile"; then - $echo "$modename: warning: \`$lib' has not been installed in \`$libdir'" 1>&2 - finalize=no - fi - done - - relink_command= - # If there is no directory component, then add one. - case $file in - */* | *\\*) . $file ;; - *) . ./$file ;; - esac - - outputname= - if test "$fast_install" = no && test -n "$relink_command"; then - if test "$finalize" = yes && test -z "$run"; then - tmpdir="/tmp" - test -n "$TMPDIR" && tmpdir="$TMPDIR" - tmpdir="$tmpdir/libtool-$$" - if $mkdir -p "$tmpdir" && chmod 700 "$tmpdir"; then : - else - $echo "$modename: error: cannot create temporary directory \`$tmpdir'" 1>&2 - continue - fi - file=`$echo "X$file" | $Xsed -e 's%^.*/%%'` - outputname="$tmpdir/$file" - # Replace the output file specification. - relink_command=`$echo "X$relink_command" | $Xsed -e 's%@OUTPUT@%'"$outputname"'%g'` - - $show "$relink_command" - if $run eval "$relink_command"; then : - else - $echo "$modename: error: relink \`$file' with the above command before installing it" 1>&2 - ${rm}r "$tmpdir" - continue - fi - file="$outputname" - else - $echo "$modename: warning: cannot relink \`$file'" 1>&2 - fi - else - # Install the binary that we compiled earlier. - file=`$echo "X$file" | $Xsed -e "s%\([^/]*\)$%$objdir/\1%"` - fi - fi - - - # remove .exe since cygwin /usr/bin/install will append another - # one anyways - case $install_prog,$host in - */usr/bin/install*,*cygwin*) - case $file:$destfile in - *.exe:*.exe) - # this is ok - ;; - *.exe:*) - destfile=$destfile.exe - ;; - *:*.exe) - destfile=`echo $destfile | sed -e 's,.exe$,,'` - ;; - esac - ;; - esac - - $show "$install_prog$stripme $file $destfile" - $run eval "$install_prog\$stripme \$file \$destfile" || exit $? - test -n "$outputname" && ${rm}r "$tmpdir" - ;; - esac - done - - for file in $staticlibs; do - name=`$echo "X$file" | $Xsed -e 's%^.*/%%'` - - # Set up the ranlib parameters. - oldlib="$destdir/$name" - - $show "$install_prog $file $oldlib" - $run eval "$install_prog \$file \$oldlib" || exit $? - - if test -n "$stripme" && test -n "$striplib"; then - $show "$old_striplib $oldlib" - $run eval "$old_striplib $oldlib" || exit $? - fi - - # Do each command in the postinstall commands. - eval cmds=\"$old_postinstall_cmds\" - IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' - for cmd in $cmds; do - IFS="$save_ifs" - $show "$cmd" - $run eval "$cmd" || exit $? - done - IFS="$save_ifs" - done - - if test -n "$future_libdirs"; then - $echo "$modename: warning: remember to run \`$progname --finish$future_libdirs'" 1>&2 - fi - - if test -n "$current_libdirs"; then - # Maybe just do a dry run. - test -n "$run" && current_libdirs=" -n$current_libdirs" - exec_cmd='$SHELL $0 --finish$current_libdirs' - else - exit 0 - fi - ;; - - # libtool finish mode - finish) - modename="$modename: finish" - libdirs="$nonopt" - admincmds= - - if test -n "$finish_cmds$finish_eval" && test -n "$libdirs"; then - for dir - do - libdirs="$libdirs $dir" - done - - for libdir in $libdirs; do - if test -n "$finish_cmds"; then - # Do each command in the finish commands. - eval cmds=\"$finish_cmds\" - IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' - for cmd in $cmds; do - IFS="$save_ifs" - $show "$cmd" - $run eval "$cmd" || admincmds="$admincmds - $cmd" - done - IFS="$save_ifs" - fi - if test -n "$finish_eval"; then - # Do the single finish_eval. - eval cmds=\"$finish_eval\" - $run eval "$cmds" || admincmds="$admincmds - $cmds" - fi - done - fi - - # Exit here if they wanted silent mode. - test "$show" = ":" && exit 0 - - echo "----------------------------------------------------------------------" - echo "Libraries have been installed in:" - for libdir in $libdirs; do - echo " $libdir" - done - echo - echo "If you ever happen to want to link against installed libraries" - echo "in a given directory, LIBDIR, you must either use libtool, and" - echo "specify the full pathname of the library, or use the \`-LLIBDIR'" - echo "flag during linking and do at least one of the following:" - if test -n "$shlibpath_var"; then - echo " - add LIBDIR to the \`$shlibpath_var' environment variable" - echo " during execution" - fi - if test -n "$runpath_var"; then - echo " - add LIBDIR to the \`$runpath_var' environment variable" - echo " during linking" - fi - if test -n "$hardcode_libdir_flag_spec"; then - libdir=LIBDIR - eval flag=\"$hardcode_libdir_flag_spec\" - - echo " - use the \`$flag' linker flag" - fi - if test -n "$admincmds"; then - echo " - have your system administrator run these commands:$admincmds" - fi - if test -f /etc/ld.so.conf; then - echo " - have your system administrator add LIBDIR to \`/etc/ld.so.conf'" - fi - echo - echo "See any operating system documentation about shared libraries for" - echo "more information, such as the ld(1) and ld.so(8) manual pages." - echo "----------------------------------------------------------------------" - exit 0 - ;; - - # libtool execute mode - execute) - modename="$modename: execute" - - # The first argument is the command name. - cmd="$nonopt" - if test -z "$cmd"; then - $echo "$modename: you must specify a COMMAND" 1>&2 - $echo "$help" - exit 1 - fi - - # Handle -dlopen flags immediately. - for file in $execute_dlfiles; do - if test ! -f "$file"; then - $echo "$modename: \`$file' is not a file" 1>&2 - $echo "$help" 1>&2 - exit 1 - fi - - dir= - case $file in - *.la) - # Check to see that this really is a libtool archive. - if (sed -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then : - else - $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2 - $echo "$help" 1>&2 - exit 1 - fi - - # Read the libtool library. - dlname= - library_names= - - # If there is no directory component, then add one. - case $file in - */* | *\\*) . $file ;; - *) . ./$file ;; - esac - - # Skip this library if it cannot be dlopened. - if test -z "$dlname"; then - # Warn if it was a shared library. - test -n "$library_names" && $echo "$modename: warning: \`$file' was not linked with \`-export-dynamic'" - continue - fi - - dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'` - test "X$dir" = "X$file" && dir=. - - if test -f "$dir/$objdir/$dlname"; then - dir="$dir/$objdir" - else - $echo "$modename: cannot find \`$dlname' in \`$dir' or \`$dir/$objdir'" 1>&2 - exit 1 - fi - ;; - - *.lo) - # Just add the directory containing the .lo file. - dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'` - test "X$dir" = "X$file" && dir=. - ;; - - *) - $echo "$modename: warning \`-dlopen' is ignored for non-libtool libraries and objects" 1>&2 - continue - ;; - esac - - # Get the absolute pathname. - absdir=`cd "$dir" && pwd` - test -n "$absdir" && dir="$absdir" - - # Now add the directory to shlibpath_var. - if eval "test -z \"\$$shlibpath_var\""; then - eval "$shlibpath_var=\"\$dir\"" - else - eval "$shlibpath_var=\"\$dir:\$$shlibpath_var\"" - fi - done - - # This variable tells wrapper scripts just to set shlibpath_var - # rather than running their programs. - libtool_execute_magic="$magic" - - # Check if any of the arguments is a wrapper script. - args= - for file - do - case $file in - -*) ;; - *) - # Do a test to see if this is really a libtool program. - if (sed -e '4q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then - # If there is no directory component, then add one. - case $file in - */* | *\\*) . $file ;; - *) . ./$file ;; - esac - - # Transform arg to wrapped name. - file="$progdir/$program" - fi - ;; - esac - # Quote arguments (to preserve shell metacharacters). - file=`$echo "X$file" | $Xsed -e "$sed_quote_subst"` - args="$args \"$file\"" - done - - if test -z "$run"; then - if test -n "$shlibpath_var"; then - # Export the shlibpath_var. - eval "export $shlibpath_var" - fi - - # Restore saved enviroment variables - if test "${save_LC_ALL+set}" = set; then - LC_ALL="$save_LC_ALL"; export LC_ALL - fi - if test "${save_LANG+set}" = set; then - LANG="$save_LANG"; export LANG - fi - - # Now prepare to actually exec the command. - exec_cmd='"$cmd"$args' - else - # Display what would be done. - if test -n "$shlibpath_var"; then - eval "\$echo \"\$shlibpath_var=\$$shlibpath_var\"" - $echo "export $shlibpath_var" - fi - $echo "$cmd$args" - exit 0 - fi - ;; - - # libtool clean and uninstall mode - clean | uninstall) - modename="$modename: $mode" - rm="$nonopt" - files= - rmforce= - exit_status=0 - - # This variable tells wrapper scripts just to set variables rather - # than running their programs. - libtool_install_magic="$magic" - - for arg - do - case $arg in - -f) rm="$rm $arg"; rmforce=yes ;; - -*) rm="$rm $arg" ;; - *) files="$files $arg" ;; - esac - done - - if test -z "$rm"; then - $echo "$modename: you must specify an RM program" 1>&2 - $echo "$help" 1>&2 - exit 1 - fi - - rmdirs= - - for file in $files; do - dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'` - if test "X$dir" = "X$file"; then - dir=. - objdir="$objdir" - else - objdir="$dir/$objdir" - fi - name=`$echo "X$file" | $Xsed -e 's%^.*/%%'` - test $mode = uninstall && objdir="$dir" - - # Remember objdir for removal later, being careful to avoid duplicates - if test $mode = clean; then - case " $rmdirs " in - *" $objdir "*) ;; - *) rmdirs="$rmdirs $objdir" ;; - esac - fi - - # Don't error if the file doesn't exist and rm -f was used. - if (test -L "$file") >/dev/null 2>&1 \ - || (test -h "$file") >/dev/null 2>&1 \ - || test -f "$file"; then - : - elif test -d "$file"; then - exit_status=1 - continue - elif test "$rmforce" = yes; then - continue - fi - - rmfiles="$file" - - case $name in - *.la) - # Possibly a libtool archive, so verify it. - if (sed -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then - . $dir/$name - - # Delete the libtool libraries and symlinks. - for n in $library_names; do - rmfiles="$rmfiles $objdir/$n" - done - test -n "$old_library" && rmfiles="$rmfiles $objdir/$old_library" - test $mode = clean && rmfiles="$rmfiles $objdir/$name $objdir/${name}i" - - if test $mode = uninstall; then - if test -n "$library_names"; then - # Do each command in the postuninstall commands. - eval cmds=\"$postuninstall_cmds\" - IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' - for cmd in $cmds; do - IFS="$save_ifs" - $show "$cmd" - $run eval "$cmd" - if test $? != 0 && test "$rmforce" != yes; then - exit_status=1 - fi - done - IFS="$save_ifs" - fi - - if test -n "$old_library"; then - # Do each command in the old_postuninstall commands. - eval cmds=\"$old_postuninstall_cmds\" - IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' - for cmd in $cmds; do - IFS="$save_ifs" - $show "$cmd" - $run eval "$cmd" - if test $? != 0 && test "$rmforce" != yes; then - exit_status=1 - fi - done - IFS="$save_ifs" - fi - # FIXME: should reinstall the best remaining shared library. - fi - fi - ;; - - *.lo) - # Possibly a libtool object, so verify it. - if (sed -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then - - # Read the .lo file - . $dir/$name - - # Add PIC object to the list of files to remove. - if test -n "$pic_object" \ - && test "$pic_object" != none; then - rmfiles="$rmfiles $dir/$pic_object" - fi - - # Add non-PIC object to the list of files to remove. - if test -n "$non_pic_object" \ - && test "$non_pic_object" != none; then - rmfiles="$rmfiles $dir/$non_pic_object" - fi - fi - ;; - - *) - # Do a test to see if this is a libtool program. - if test $mode = clean && - (sed -e '4q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then - relink_command= - . $dir/$file - - rmfiles="$rmfiles $objdir/$name $objdir/${name}S.${objext}" - if test "$fast_install" = yes && test -n "$relink_command"; then - rmfiles="$rmfiles $objdir/lt-$name" - fi - fi - ;; - esac - $show "$rm $rmfiles" - $run $rm $rmfiles || exit_status=1 - done - - # Try to remove the ${objdir}s in the directories where we deleted files - for dir in $rmdirs; do - if test -d "$dir"; then - $show "rmdir $dir" - $run rmdir $dir >/dev/null 2>&1 - fi - done - - exit $exit_status - ;; - - "") - $echo "$modename: you must specify a MODE" 1>&2 - $echo "$generic_help" 1>&2 - exit 1 - ;; - esac - - if test -z "$exec_cmd"; then - $echo "$modename: invalid operation mode \`$mode'" 1>&2 - $echo "$generic_help" 1>&2 - exit 1 - fi -fi # test -z "$show_help" - -if test -n "$exec_cmd"; then - eval exec $exec_cmd - exit 1 -fi - -# We need to display help for each of the modes. -case $mode in -"") $echo \ -"Usage: $modename [OPTION]... [MODE-ARG]... - -Provide generalized library-building support services. - - --config show all configuration variables - --debug enable verbose shell tracing --n, --dry-run display commands without modifying any files - --features display basic configuration information and exit - --finish same as \`--mode=finish' - --help display this help message and exit - --mode=MODE use operation mode MODE [default=inferred from MODE-ARGS] - --quiet same as \`--silent' - --silent don't print informational messages - --tag=TAG use configuration variables from tag TAG - --version print version information - -MODE must be one of the following: - - clean remove files from the build directory - compile compile a source file into a libtool object - execute automatically set library path, then run a program - finish complete the installation of libtool libraries - install install libraries or executables - link create a library or an executable - uninstall remove libraries from an installed directory - -MODE-ARGS vary depending on the MODE. Try \`$modename --help --mode=MODE' for -a more detailed description of MODE." - exit 0 - ;; - -clean) - $echo \ -"Usage: $modename [OPTION]... --mode=clean RM [RM-OPTION]... FILE... - -Remove files from the build directory. - -RM is the name of the program to use to delete files associated with each FILE -(typically \`/bin/rm'). RM-OPTIONS are options (such as \`-f') to be passed -to RM. - -If FILE is a libtool library, object or program, all the files associated -with it are deleted. Otherwise, only FILE itself is deleted using RM." - ;; - -compile) - $echo \ -"Usage: $modename [OPTION]... --mode=compile COMPILE-COMMAND... SOURCEFILE - -Compile a source file into a libtool library object. - -This mode accepts the following additional options: - - -o OUTPUT-FILE set the output file name to OUTPUT-FILE - -prefer-pic try to building PIC objects only - -prefer-non-pic try to building non-PIC objects only - -static always build a \`.o' file suitable for static linking - -COMPILE-COMMAND is a command to be used in creating a \`standard' object file -from the given SOURCEFILE. - -The output file name is determined by removing the directory component from -SOURCEFILE, then substituting the C source code suffix \`.c' with the -library object suffix, \`.lo'." - ;; - -execute) - $echo \ -"Usage: $modename [OPTION]... --mode=execute COMMAND [ARGS]... - -Automatically set library path, then run a program. - -This mode accepts the following additional options: - - -dlopen FILE add the directory containing FILE to the library path - -This mode sets the library path environment variable according to \`-dlopen' -flags. - -If any of the ARGS are libtool executable wrappers, then they are translated -into their corresponding uninstalled binary, and any of their required library -directories are added to the library path. - -Then, COMMAND is executed, with ARGS as arguments." - ;; - -finish) - $echo \ -"Usage: $modename [OPTION]... --mode=finish [LIBDIR]... - -Complete the installation of libtool libraries. - -Each LIBDIR is a directory that contains libtool libraries. - -The commands that this mode executes may require superuser privileges. Use -the \`--dry-run' option if you just want to see what would be executed." - ;; - -install) - $echo \ -"Usage: $modename [OPTION]... --mode=install INSTALL-COMMAND... - -Install executables or libraries. - -INSTALL-COMMAND is the installation command. The first component should be -either the \`install' or \`cp' program. - -The rest of the components are interpreted as arguments to that command (only -BSD-compatible install options are recognized)." - ;; - -link) - $echo \ -"Usage: $modename [OPTION]... --mode=link LINK-COMMAND... - -Link object files or libraries together to form another library, or to -create an executable program. - -LINK-COMMAND is a command using the C compiler that you would use to create -a program from several object files. - -The following components of LINK-COMMAND are treated specially: - - -all-static do not do any dynamic linking at all - -avoid-version do not add a version suffix if possible - -dlopen FILE \`-dlpreopen' FILE if it cannot be dlopened at runtime - -dlpreopen FILE link in FILE and add its symbols to lt_preloaded_symbols - -export-dynamic allow symbols from OUTPUT-FILE to be resolved with dlsym(3) - -export-symbols SYMFILE - try to export only the symbols listed in SYMFILE - -export-symbols-regex REGEX - try to export only the symbols matching REGEX - -LLIBDIR search LIBDIR for required installed libraries - -lNAME OUTPUT-FILE requires the installed library libNAME - -module build a library that can dlopened - -no-fast-install disable the fast-install mode - -no-install link a not-installable executable - -no-undefined declare that a library does not refer to external symbols - -o OUTPUT-FILE create OUTPUT-FILE from the specified objects - -objectlist FILE Use a list of object files found in FILE to specify objects - -release RELEASE specify package release information - -rpath LIBDIR the created library will eventually be installed in LIBDIR - -R[ ]LIBDIR add LIBDIR to the runtime path of programs and libraries - -static do not do any dynamic linking of libtool libraries - -version-info CURRENT[:REVISION[:AGE]] - specify library version info [each variable defaults to 0] - -All other options (arguments beginning with \`-') are ignored. - -Every other argument is treated as a filename. Files ending in \`.la' are -treated as uninstalled libtool libraries, other files are standard or library -object files. - -If the OUTPUT-FILE ends in \`.la', then a libtool library is created, -only library objects (\`.lo' files) may be specified, and \`-rpath' is -required, except when creating a convenience library. - -If OUTPUT-FILE ends in \`.a' or \`.lib', then a standard library is created -using \`ar' and \`ranlib', or on Windows using \`lib'. - -If OUTPUT-FILE ends in \`.lo' or \`.${objext}', then a reloadable object file -is created, otherwise an executable program is created." - ;; - -uninstall) - $echo \ -"Usage: $modename [OPTION]... --mode=uninstall RM [RM-OPTION]... FILE... - -Remove libraries from an installation directory. - -RM is the name of the program to use to delete files associated with each FILE -(typically \`/bin/rm'). RM-OPTIONS are options (such as \`-f') to be passed -to RM. - -If FILE is a libtool library, all the files associated with it are deleted. -Otherwise, only FILE itself is deleted using RM." - ;; - -*) - $echo "$modename: invalid operation mode \`$mode'" 1>&2 - $echo "$help" 1>&2 - exit 1 - ;; -esac - -echo -$echo "Try \`$modename --help' for more information about other modes." - -exit 0 - -# The TAGs below are defined such that we never get into a situation -# in which we disable both kinds of libraries. Given conflicting -# choices, we go for a static library, that is the most portable, -# since we can't tell whether shared libraries were disabled because -# the user asked for that or because the platform doesn't support -# them. This is particularly important on AIX, because we don't -# support having both static and shared libraries enabled at the same -# time on that platform, so we default to a shared-only configuration. -# If a disable-shared tag is given, we'll fallback to a static-only -# configuration. But we'll never go from static-only to shared-only. - -### BEGIN LIBTOOL TAG CONFIG: disable-shared -build_libtool_libs=no -build_old_libs=yes -### END LIBTOOL TAG CONFIG: disable-shared - -### BEGIN LIBTOOL TAG CONFIG: disable-static -build_old_libs=`case $build_libtool_libs in yes) echo no;; *) echo yes;; esac` -### END LIBTOOL TAG CONFIG: disable-static - -# Local Variables: -# mode:shell-script -# sh-indentation:2 -# End: diff --git a/contrib/gcc/missing b/contrib/gcc/missing deleted file mode 100755 index 7789652..0000000 --- a/contrib/gcc/missing +++ /dev/null @@ -1,190 +0,0 @@ -#! /bin/sh -# Common stub for a few missing GNU programs while installing. -# Copyright (C) 1996, 1997 Free Software Foundation, Inc. -# Franc,ois Pinard , 1996. - -# 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, 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. - -if test $# -eq 0; then - echo 1>&2 "Try \`$0 --help' for more information" - exit 1 -fi - -case "$1" in - - -h|--h|--he|--hel|--help) - echo "\ -$0 [OPTION]... PROGRAM [ARGUMENT]... - -Handle \`PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an -error status if there is no known handling for PROGRAM. - -Options: - -h, --help display this help and exit - -v, --version output version information and exit - -Supported PROGRAM values: - aclocal touch file \`aclocal.m4' - autoconf touch file \`configure' - autoheader touch file \`config.h.in' - automake touch all \`Makefile.in' files - bison create \`y.tab.[ch]', if possible, from existing .[ch] - flex create \`lex.yy.c', if possible, from existing .c - lex create \`lex.yy.c', if possible, from existing .c - makeinfo touch the output file - yacc create \`y.tab.[ch]', if possible, from existing .[ch]" - ;; - - -v|--v|--ve|--ver|--vers|--versi|--versio|--version) - echo "missing - GNU libit 0.0" - ;; - - -*) - echo 1>&2 "$0: Unknown \`$1' option" - echo 1>&2 "Try \`$0 --help' for more information" - exit 1 - ;; - - aclocal) - echo 1>&2 "\ -WARNING: \`$1' is missing on your system. You should only need it if - you modified \`acinclude.m4' or \`configure.in'. You might want - to install the \`Automake' and \`Perl' packages. Grab them from - any GNU archive site." - touch aclocal.m4 - ;; - - autoconf) - echo 1>&2 "\ -WARNING: \`$1' is missing on your system. You should only need it if - you modified \`configure.in'. You might want to install the - \`Autoconf' and \`GNU m4' packages. Grab them from any GNU - archive site." - touch configure - ;; - - autoheader) - echo 1>&2 "\ -WARNING: \`$1' is missing on your system. You should only need it if - you modified \`acconfig.h' or \`configure.in'. You might want - to install the \`Autoconf' and \`GNU m4' packages. Grab them - from any GNU archive site." - files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^)]*\)).*/\1/p' configure.in` - test -z "$files" && files="config.h" - touch_files= - for f in $files; do - case "$f" in - *:*) touch_files="$touch_files "`echo "$f" | - sed -e 's/^[^:]*://' -e 's/:.*//'`;; - *) touch_files="$touch_files $f.in";; - esac - done - touch $touch_files - ;; - - automake) - echo 1>&2 "\ -WARNING: \`$1' is missing on your system. You should only need it if - you modified \`Makefile.am', \`acinclude.m4' or \`configure.in'. - You might want to install the \`Automake' and \`Perl' packages. - Grab them from any GNU archive site." - find . -type f -name Makefile.am -print | - sed 's/\.am$/.in/' | - while read f; do touch "$f"; done - ;; - - bison|yacc) - echo 1>&2 "\ -WARNING: \`$1' is missing on your system. You should only need it if - you modified a \`.y' file. You may need the \`Bison' package - in order for those modifications to take effect. You can get - \`Bison' from any GNU archive site." - rm -f y.tab.c y.tab.h - if [ $# -ne 1 ]; then - eval LASTARG="\${$#}" - case "$LASTARG" in - *.y) - SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'` - if [ -f "$SRCFILE" ]; then - cp "$SRCFILE" y.tab.c - fi - SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'` - if [ -f "$SRCFILE" ]; then - cp "$SRCFILE" y.tab.h - fi - ;; - esac - fi - if [ ! -f y.tab.h ]; then - echo >y.tab.h - fi - if [ ! -f y.tab.c ]; then - echo 'main() { return 0; }' >y.tab.c - fi - ;; - - lex|flex) - echo 1>&2 "\ -WARNING: \`$1' is missing on your system. You should only need it if - you modified a \`.l' file. You may need the \`Flex' package - in order for those modifications to take effect. You can get - \`Flex' from any GNU archive site." - rm -f lex.yy.c - if [ $# -ne 1 ]; then - eval LASTARG="\${$#}" - case "$LASTARG" in - *.l) - SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'` - if [ -f "$SRCFILE" ]; then - cp "$SRCFILE" lex.yy.c - fi - ;; - esac - fi - if [ ! -f lex.yy.c ]; then - echo 'main() { return 0; }' >lex.yy.c - fi - ;; - - makeinfo) - echo 1>&2 "\ -WARNING: \`$1' is missing on your system. You should only need it if - you modified a \`.texi' or \`.texinfo' file, or any other file - indirectly affecting the aspect of the manual. The spurious - call might also be the consequence of using a buggy \`make' (AIX, - DU, IRIX). You might want to install the \`Texinfo' package or - the \`GNU make' package. Grab either from any GNU archive site." - file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'` - if test -z "$file"; then - file=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'` - file=`sed -n '/^@setfilename/ { s/.* \([^ ]*\) *$/\1/; p; q; }' $file` - fi - touch $file - ;; - - *) - echo 1>&2 "\ -WARNING: \`$1' is needed, and you do not seem to have it handy on your - system. You might have modified some files without having the - proper tools for further handling them. Check the \`README' file, - it often tells you about the needed prerequirements for installing - this package. You may also peek at any GNU archive site, in case - some other package would contain this missing \`$1' program." - exit 1 - ;; -esac - -exit 0 diff --git a/contrib/gcc/mkdep b/contrib/gcc/mkdep deleted file mode 100755 index 3c5b508..0000000 --- a/contrib/gcc/mkdep +++ /dev/null @@ -1,87 +0,0 @@ -#!/bin/sh - -# -# Copyright (c) 1987 Regents of the University of California. -# All rights reserved. -# -# Redistribution and use in source and binary forms are permitted -# provided that the above copyright notice and this paragraph are -# duplicated in all such forms and that any documentation, -# advertising materials, and other materials related to such -# distribution and use acknowledge that the software was developed -# by the University of California, Berkeley. The name of the -# University may not be used to endorse or promote products derived -# from this software without specific prior written permission. -# THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR -# IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED -# WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE. -# -# @(#)mkdep.sh 5.12 (Berkeley) 6/30/88 -# - -MAKE=Makefile # default makefile name is "Makefile" - -while : - do case "$1" in - # -f allows you to select a makefile name - -f) - MAKE=$2 - shift; shift ;; - - # the -p flag produces "program: program.c" style dependencies - # so .o's don't get produced - -p) - SED='s;\.o;;' - shift ;; - *) - break ;; - esac -done - -if [ $# = 0 ] ; then - echo 'usage: mkdep [-p] [-f makefile] [flags] file ...' - exit 1 -fi - -if [ ! -w $MAKE ]; then - echo "mkdep: no writeable file \"$MAKE\"" - exit 1 -fi - -TMP=/tmp/mkdep$$ - -trap 'rm -f $TMP ; exit 1' 1 2 3 13 15 - -cp $MAKE ${MAKE}.bak - -sed -e '/DO NOT DELETE THIS LINE/,$d' < $MAKE > $TMP - -cat << _EOF_ >> $TMP -# DO NOT DELETE THIS LINE -- mkdep uses it. -# DO NOT PUT ANYTHING AFTER THIS LINE, IT WILL GO AWAY. - -_EOF_ - -# If your compiler doesn't have -M, add it. If you can't, the next two -# lines will try and replace the "cc -M". The real problem is that this -# hack can't deal with anything that requires a search path, and doesn't -# even try for anything using bracket (<>) syntax. -# -# egrep '^#include[ ]*".*"' /dev/null $* | -# sed -e 's/:[^"]*"\([^"]*\)".*/: \1/' -e 's/\.c/.o/' | - -gcc -MM $* | -sed " - s; \./; ;g - $SED" >> $TMP - -cat << _EOF_ >> $TMP - -# IF YOU PUT ANYTHING HERE IT WILL GO AWAY -_EOF_ - -# copy to preserve permissions -cp $TMP $MAKE -rm -f ${MAKE}.bak $TMP -exit 0 - - diff --git a/contrib/gcc/mkinstalldirs b/contrib/gcc/mkinstalldirs deleted file mode 100755 index cc8783e..0000000 --- a/contrib/gcc/mkinstalldirs +++ /dev/null @@ -1,36 +0,0 @@ -#! /bin/sh -# mkinstalldirs --- make directory hierarchy -# Author: Noah Friedman -# Created: 1993-05-16 -# Last modified: 1994-03-25 -# Public domain - -errstatus=0 - -for file in ${1+"$@"} ; do - set fnord `echo ":$file" | sed -ne 's/^:\//#/;s/^://;s/\// /g;s/^#/\//;p'` - shift - - pathcomp= - for d in ${1+"$@"} ; do - pathcomp="$pathcomp$d" - case "$pathcomp" in - -* ) pathcomp=./$pathcomp ;; - esac - - if test ! -d "$pathcomp"; then - echo "mkdir $pathcomp" 1>&2 - mkdir "$pathcomp" > /dev/null 2>&1 || lasterr=$? - fi - - if test ! -d "$pathcomp"; then - errstatus=$lasterr - fi - - pathcomp="$pathcomp/" - done -done - -exit $errstatus - -# mkinstalldirs ends here diff --git a/contrib/gcc/symlink-tree b/contrib/gcc/symlink-tree deleted file mode 100755 index 5b18cab..0000000 --- a/contrib/gcc/symlink-tree +++ /dev/null @@ -1,53 +0,0 @@ -#!/bin/sh -# Create a symlink tree. -# -# Syntax: symlink-tree srcdir "ignore1 ignore2 ..." -# -# where srcdir is the directory to create a symlink tree to, -# and "ignoreN" is a list of files/directories to ignore. - -prog=$0 -srcdir=$1 -ignore="$2" - -if test $# -lt 1; then - echo "symlink-tree error: Usage: symlink-tree srcdir \"ignore1 ignore2 ...\"" - exit 1 -fi - -ignore_additional=". .. CVS" - -# If we were invoked with a relative path name, adjust ${prog} to work -# in subdirs. -case ${prog} in -/* | [A-Za-z]:[\\/]*) ;; -*) prog=../${prog} ;; -esac - -# Set newsrcdir to something subdirectories can use. -case ${srcdir} in -/* | [A-Za-z]:[\\/]*) newsrcdir=${srcdir} ;; -*) newsrcdir=../${srcdir} ;; -esac - -for f in `ls -a ${srcdir}`; do - if [ -d ${srcdir}/$f ]; then - found= - for i in ${ignore} ${ignore_additional}; do - if [ "$f" = "$i" ]; then - found=yes - fi - done - if [ -z "${found}" ]; then - echo "$f ..working in" - if [ -d $f ]; then true; else mkdir $f; fi - (cd $f; ${prog} ${newsrcdir}/$f "${ignore}") - fi - else - echo "$f ..linked" - rm -f $f - ln -s ${srcdir}/$f . - fi -done - -exit 0 diff --git a/contrib/gcc/ylwrap b/contrib/gcc/ylwrap deleted file mode 100755 index 2288ccd..0000000 --- a/contrib/gcc/ylwrap +++ /dev/null @@ -1,123 +0,0 @@ -#! /bin/sh -# ylwrap - wrapper for lex/yacc invocations. -# Copyright (C) 1996, 1997 Free Software Foundation, Inc. -# Written by Tom Tromey . -# -# 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, 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. - -# Usage: -# ylwrap PROGRAM INPUT [OUTPUT DESIRED]... -- [ARGS]... -# * PROGRAM is program to run. -# * INPUT is the input file -# * OUTPUT is file PROG generates -# * DESIRED is file we actually want -# * ARGS are passed to PROG -# Any number of OUTPUT,DESIRED pairs may be used. - -# The program to run. -prog="$1" -shift -# Make any relative path in $prog absolute. -case "$prog" in - /* | [A-Za-z]:\\*) ;; - */*) prog="`pwd`/$prog" ;; -esac - -# The input. -input="$1" -shift -case "$input" in - /* | [A-Za-z]:\\*) - # Absolute path; do nothing. - ;; - *) - # Relative path. Make it absolute. Why? Because otherwise any - # debugging info in the generated file will point to the wrong - # place. This is really gross. - input="`pwd`/$input" - ;; -esac - -# We don't want to use the absolute path if the input in the current -# directory like when making a tar ball. -input_base=`echo $input | sed -e 's|.*/||'` -if test -f $input_base && cmp $input_base $input >/dev/null 2>&1; then - input=$input_base -fi - -pairlist= -while test "$#" -ne 0; do - if test "$1" = "--"; then - shift - break - fi - pairlist="$pairlist $1" - shift -done - -# FIXME: add hostname here for parallel makes that run commands on -# other machines. But that might take us over the 14-char limit. -dirname=ylwrap$$ -trap "cd `pwd`; rm -rf $dirname > /dev/null 2>&1" 1 2 3 15 -mkdir $dirname || exit 1 - -cd $dirname -case "$input" in - /* | [A-Za-z]:\\*) - # Absolute path; do nothing. - ;; - *) - # Make a symbolic link, hard link or hardcopy. - ln -s ../"$input" . > /dev/null 2>&1 || ln ../"$input" . > /dev/null 2>&1 || cp ../"$input" . - ;; -esac -$prog ${1+"$@"} "$input" -status=$? - -if test $status -eq 0; then - set X $pairlist - shift - first=yes - while test "$#" -ne 0; do - if test -f "$1"; then - # If $2 is an absolute path name, then just use that, - # otherwise prepend `../'. - case "$2" in - /* | [A-Za-z]:\\*) target="$2";; - *) target="../$2";; - esac - mv "$1" "$target" || status=$? - else - # A missing file is only an error for the first file. This - # is a blatant hack to let us support using "yacc -d". If -d - # is not specified, we don't want an error when the header - # file is "missing". - if test $first = yes; then - status=1 - fi - fi - shift - shift - first=no - done -else - status=$? -fi - -# Remove the directory. -cd .. -rm -rf $dirname - -exit $status -- cgit v1.1