diff options
author | YamaArashi <shadow962@live.com> | 2016-02-08 06:27:14 -0800 |
---|---|---|
committer | YamaArashi <shadow962@live.com> | 2016-02-08 06:27:14 -0800 |
commit | b5fb6c8ffb25d2057ab7316c218eb67fe538340b (patch) | |
tree | 4c631ce7b82199fe440cb41729b07e1608c5d096 /gcc | |
parent | a5c638ceaca09d018d041f15e7e2518c217250bc (diff) |
remove internationalization
Diffstat (limited to 'gcc')
35 files changed, 1 insertions, 11664 deletions
diff --git a/gcc/ABOUT-GCC-NLS b/gcc/ABOUT-GCC-NLS deleted file mode 100755 index b70a7c8..0000000 --- a/gcc/ABOUT-GCC-NLS +++ /dev/null @@ -1,542 +0,0 @@ -Notes on GCC's Native Language Support - -GCC's Native Language Support (NLS) is relatively new and -experimental, so NLS is currently disabled by default. Use -configure's --enable-nls option to enable it. Eventually, NLS will be -enabled by default, and you'll need --disable-nls to disable it. You -must enable NLS in order to make a GCC distribution. - -By and large, only diagnostic messages have been internationalized. -Some work remains in other areas; for example, GCC does not yet allow -non-ASCII letters in identifiers. - -Not all of GCC's diagnostic messages have been internationalized. -Programs like `enquire' and `genattr' are not internationalized, as -their users are GCC maintainers who typically need to be able to read -English anyway; internationalizing them would thus entail needless -work for the human translators. And no one has yet gotten around to -internationalizing the messages in the C++ compiler, or in the -specialized MIPS-specific programs mips-tdump and mips-tfile. - -The GCC library should not contain any messages that need -internationalization, because it operates below the -internationalization library. - -Currently, the only language translation supplied is en_UK (British English). - -Unlike some other GNU programs, the GCC sources contain few instances -of explicit translation calls like _("string"). Instead, the -diagnostic printing routines automatically translate their arguments. -For example, GCC source code should not contain calls like `error -(_("unterminated comment"))'; it should contain calls like `error -("unterminated comment")' instead, as it is the `error' function's -responsibility to translate the message before the user sees it. - -By convention, any function parameter in the GCC sources whose name -ends in `msgid' is expected to be a message requiring translation. -For example, the `error' function's first parameter is named `msgid'. -GCC's exgettext script uses this convention to determine which -function parameter strings need to be translated. The exgettext -script also assumes that any occurrence of `%eMSGID}' on a source -line, where MSGID does not contain `%' or `}', corresponds to a -message MSGID that requires translation; this is needed to identify -diagnostics in GCC spec strings. - -If you enable NLS and modify source files, you'll need to use a -special version of the GNU gettext package to propagate the -modifications to the translation tables. Apply the following patch -(use `patch -p0') to GNU gettext 0.10.35, which you can retrieve from: - -ftp://alpha.gnu.org/gnu/gettext-0.10.35.tar.gz - -This patch has been submitted to the GNU gettext maintainer, so -eventually we shouldn't need this special gettext version. - -This patch 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 patch 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 patch; see the file COPYING. If not, write to -the Free Software Foundation, 59 Temple Place - Suite 330, -Boston, MA 02111-1307, USA. - -1998-07-26 Paul Eggert <eggert@twinsun.com> - - * po/Makefile.in.in (maintainer-clean): Remove cat-id-tbl.c and - stamp-cat-id. - -1998-07-24 Paul Eggert <eggert@twinsun.com> - - * po/Makefile.in.in (cat-id-tbl.o): Depend on - $(top_srcdir)/intl/libgettext.h, not ../intl/libgettext.h. - -1998-07-20 Paul Eggert <eggert@twinsun.com> - - * po/Makefile.in.in (.po.pox, all-yes, $(srcdir)/cat-id-tbl.c, - $(srcdir)/stamp-cat-id, update-po): Prepend `$(srcdir)/' to - files built in the source directory; this is needed for - VPATH-based make in Solaris 2.6. - -1998-07-17 Paul Eggert <eggert@twinsun.com> - - Add support for user-specified argument numbers for keywords. - Extract all strings from a keyword arg, not just the first one. - Handle parenthesized commas inside keyword args correctly. - Warn about nested keywords. - - * doc/gettext.texi: Document --keyword=id:argnum. - - * src/xgettext.c (scan_c_file): - Warn about nested keywords, e.g. _(_("xxx")). - Warn also about not-yet-implemented but allowed nesting, e.g. - dcgettext(..._("xxx")..., "yyy"). - Get all strings in a keyword arg, not just the first one. - Handle parenthesized commas inside keyword args correctly. - - * src/xget-lex.h (enum xgettext_token_type_ty): - Replace xgettext_token_type_keyword1 and - xgettext_token_type_keyword2 with just plain - xgettext_token_type_keyword; it now has argnum value. - Add xgettext_token_type_rp. - (struct xgettext_token_ty): Add argnum member. - line_number and file_name are now also set for - xgettext_token_type_keyword. - (xgettext_lex_keyword): Arg is const char *. - - * src/xget-lex.c: Include "hash.h". - (enum token_type_ty): Add token_type_rp. - (keywords): Now a hash table. - (phase5_get): Return token_type_rp for ')'. - (xgettext_lex, xgettext_lex_keyword): Add support for keyword argnums. - (xgettext_lex): Return xgettext_token_type_rp for ')'. - Report keyword argnum, line number, and file name back to caller. - -1998-07-09 Paul Eggert <eggert@twinsun.com> - - * intl/Makefile.in (uninstall): - Do nothing unless $(PACKAGE) is gettext. - -=================================================================== -RCS file: doc/gettext.texi,v -retrieving revision 0.10.35.0 -retrieving revision 0.10.35.1 -diff -pu -r0.10.35.0 -r0.10.35.1 ---- doc/gettext.texi 1998/05/01 05:53:32 0.10.35.0 -+++ doc/gettext.texi 1998/07/18 00:25:15 0.10.35.1 -@@ -1854,13 +1854,19 @@ List of directories searched for input f - Join messages with existing file. - - @item -k @var{word} --@itemx --keyword[=@var{word}] --Additonal keyword to be looked for (without @var{word} means not to -+@itemx --keyword[=@var{keywordspec}] -+Additonal keyword to be looked for (without @var{keywordspec} means not to - use default keywords). - --The default keywords, which are always looked for if not explicitly --disabled, are @code{gettext}, @code{dgettext}, @code{dcgettext} and --@code{gettext_noop}. -+If @var{keywordspec} is a C identifer @var{id}, @code{xgettext} looks -+for strings in the first argument of each call to the function or macro -+@var{id}. If @var{keywordspec} is of the form -+@samp{@var{id}:@var{argnum}}, @code{xgettext} looks for strings in the -+@var{argnum}th argument of the call. -+ -+The default keyword specifications, which are always looked for if not -+explicitly disabled, are @code{gettext}, @code{dgettext:2}, -+@code{dcgettext:2} and @code{gettext_noop}. - - @item -m [@var{string}] - @itemx --msgstr-prefix[=@var{string}] -=================================================================== -RCS file: intl/Makefile.in,v -retrieving revision 0.10.35.0 -retrieving revision 0.10.35.1 -diff -pu -r0.10.35.0 -r0.10.35.1 ---- intl/Makefile.in 1998/04/27 21:53:18 0.10.35.0 -+++ intl/Makefile.in 1998/07/09 21:39:18 0.10.35.1 -@@ -143,10 +143,14 @@ install-data: all - installcheck: - - uninstall: -- dists="$(DISTFILES.common)"; \ -- for file in $$dists; do \ -- rm -f $(gettextsrcdir)/$$file; \ -- done -+ if test "$(PACKAGE)" = "gettext"; then \ -+ dists="$(DISTFILES.common)"; \ -+ for file in $$dists; do \ -+ rm -f $(gettextsrcdir)/$$file; \ -+ done -+ else \ -+ : ; \ -+ fi - - info dvi: - -=================================================================== -RCS file: src/xget-lex.c,v -retrieving revision 0.10.35.0 -retrieving revision 0.10.35.1 -diff -pu -r0.10.35.0 -r0.10.35.1 ---- src/xget-lex.c 1998/07/09 22:49:48 0.10.35.0 -+++ src/xget-lex.c 1998/07/18 00:25:15 0.10.35.1 -@@ -33,6 +33,7 @@ - #include "error.h" - #include "system.h" - #include "libgettext.h" -+#include "hash.h" - #include "str-list.h" - #include "xget-lex.h" - -@@ -83,6 +84,7 @@ enum token_type_ty - token_type_eoln, - token_type_hash, - token_type_lp, -+ token_type_rp, - token_type_comma, - token_type_name, - token_type_number, -@@ -109,7 +111,7 @@ static FILE *fp; - static int trigraphs; - static int cplusplus_comments; - static string_list_ty *comment; --static string_list_ty *keywords; -+static hash_table keywords; - static int default_keywords = 1; - - /* These are for tracking whether comments count as immediately before -@@ -941,6 +943,10 @@ phase5_get (tp) - tp->type = token_type_lp; - return; - -+ case ')': -+ tp->type = token_type_rp; -+ return; -+ - case ',': - tp->type = token_type_comma; - return; -@@ -1179,6 +1185,7 @@ xgettext_lex (tp) - while (1) - { - token_ty token; -+ void *keyword_value; - - phase8_get (&token); - switch (token.type) -@@ -1213,17 +1220,20 @@ xgettext_lex (tp) - if (default_keywords) - { - xgettext_lex_keyword ("gettext"); -- xgettext_lex_keyword ("dgettext"); -- xgettext_lex_keyword ("dcgettext"); -+ xgettext_lex_keyword ("dgettext:2"); -+ xgettext_lex_keyword ("dcgettext:2"); - xgettext_lex_keyword ("gettext_noop"); - default_keywords = 0; - } - -- if (string_list_member (keywords, token.string)) -- { -- tp->type = (strcmp (token.string, "dgettext") == 0 -- || strcmp (token.string, "dcgettext") == 0) -- ? xgettext_token_type_keyword2 : xgettext_token_type_keyword1; -+ if (find_entry (&keywords, token.string, strlen (token.string), -+ &keyword_value) -+ == 0) -+ { -+ tp->type = xgettext_token_type_keyword; -+ tp->argnum = (int) keyword_value; -+ tp->line_number = token.line_number; -+ tp->file_name = logical_file_name; - } - else - tp->type = xgettext_token_type_symbol; -@@ -1236,6 +1246,12 @@ xgettext_lex (tp) - tp->type = xgettext_token_type_lp; - return; - -+ case token_type_rp: -+ last_non_comment_line = newline_count; -+ -+ tp->type = xgettext_token_type_rp; -+ return; -+ - case token_type_comma: - last_non_comment_line = newline_count; - -@@ -1263,16 +1279,32 @@ xgettext_lex (tp) - - void - xgettext_lex_keyword (name) -- char *name; -+ const char *name; - { - if (name == NULL) - default_keywords = 0; - else - { -- if (keywords == NULL) -- keywords = string_list_alloc (); -+ int argnum; -+ size_t len; -+ const char *sp; -+ -+ if (keywords.table == NULL) -+ init_hash (&keywords, 100); -+ -+ sp = strchr (name, ':'); -+ if (sp) -+ { -+ len = sp - name; -+ argnum = atoi (sp + 1); -+ } -+ else -+ { -+ len = strlen (name); -+ argnum = 1; -+ } - -- string_list_append_unique (keywords, name); -+ insert_entry (&keywords, name, len, (void *) argnum); - } - } - -=================================================================== -RCS file: src/xget-lex.h,v -retrieving revision 0.10.35.0 -retrieving revision 0.10.35.1 -diff -pu -r0.10.35.0 -r0.10.35.1 ---- src/xget-lex.h 1998/07/09 22:49:48 0.10.35.0 -+++ src/xget-lex.h 1998/07/18 00:25:15 0.10.35.1 -@@ -23,9 +23,9 @@ Foundation, Inc., 59 Temple Place - Suit - enum xgettext_token_type_ty - { - xgettext_token_type_eof, -- xgettext_token_type_keyword1, -- xgettext_token_type_keyword2, -+ xgettext_token_type_keyword, - xgettext_token_type_lp, -+ xgettext_token_type_rp, - xgettext_token_type_comma, - xgettext_token_type_string_literal, - xgettext_token_type_symbol -@@ -37,8 +37,14 @@ struct xgettext_token_ty - { - xgettext_token_type_ty type; - -- /* These 3 are only set for xgettext_token_type_string_literal. */ -+ /* This 1 is set only for xgettext_token_type_keyword. */ -+ int argnum; -+ -+ /* This 1 is set only for xgettext_token_type_string_literal. */ - char *string; -+ -+ /* These 2 are set only for xgettext_token_type_keyword and -+ xgettext_token_type_string_literal. */ - int line_number; - char *file_name; - }; -@@ -50,7 +56,7 @@ void xgettext_lex PARAMS ((xgettext_toke - const char *xgettext_lex_comment PARAMS ((size_t __n)); - void xgettext_lex_comment_reset PARAMS ((void)); - /* void xgettext_lex_filepos PARAMS ((char **, int *)); FIXME needed? */ --void xgettext_lex_keyword PARAMS ((char *__name)); -+void xgettext_lex_keyword PARAMS ((const char *__name)); - void xgettext_lex_cplusplus PARAMS ((void)); - void xgettext_lex_trigraphs PARAMS ((void)); - -=================================================================== -RCS file: src/xgettext.c,v -retrieving revision 0.10.35.0 -retrieving revision 0.10.35.1 -diff -pu -r0.10.35.0 -r0.10.35.1 ---- src/xgettext.c 1998/07/09 22:49:48 0.10.35.0 -+++ src/xgettext.c 1998/07/18 00:25:15 0.10.35.1 -@@ -835,6 +835,8 @@ scan_c_file(filename, mlp, is_cpp_file) - int is_cpp_file; - { - int state; -+ int commas_to_skip; /* defined only when in states 1 and 2 */ -+ int paren_nesting; /* defined only when in state 2 */ - - /* Inform scanner whether we have C++ files or not. */ - if (is_cpp_file) -@@ -854,63 +856,79 @@ scan_c_file(filename, mlp, is_cpp_file) - { - xgettext_token_ty token; - -- /* A simple state machine is used to do the recognising: -+ /* A state machine is used to do the recognising: - State 0 = waiting for something to happen -- State 1 = seen one of our keywords with string in first parameter -- State 2 = was in state 1 and now saw a left paren -- State 3 = seen one of our keywords with string in second parameter -- State 4 = was in state 3 and now saw a left paren -- State 5 = waiting for comma after being in state 4 -- State 6 = saw comma after being in state 5 */ -+ State 1 = seen one of our keywords -+ State 2 = waiting for part of an argument */ - xgettext_lex (&token); - switch (token.type) - { -- case xgettext_token_type_keyword1: -+ case xgettext_token_type_keyword: -+ if (!extract_all && state == 2) -+ { -+ if (commas_to_skip == 0) -+ { -+ error (0, 0, -+ _("%s:%d: warning: keyword nested in keyword arg"), -+ token.file_name, token.line_number); -+ continue; -+ } -+ -+ /* Here we should nest properly, but this would require a -+ potentially unbounded stack. We haven't run across an -+ example that needs this functionality yet. For now, -+ we punt and forget the outer keyword. */ -+ error (0, 0, -+ _("%s:%d: warning: keyword between outer keyword and its arg"), -+ token.file_name, token.line_number); -+ } -+ commas_to_skip = token.argnum - 1; - state = 1; - continue; - -- case xgettext_token_type_keyword2: -- state = 3; -- continue; -- - case xgettext_token_type_lp: - switch (state) - { - case 1: -+ paren_nesting = 0; - state = 2; - break; -- case 3: -- state = 4; -+ case 2: -+ paren_nesting++; - break; -- default: -- state = 0; - } - continue; - -+ case xgettext_token_type_rp: -+ if (state == 2 && paren_nesting != 0) -+ paren_nesting--; -+ else -+ state = 0; -+ continue; -+ - case xgettext_token_type_comma: -- state = state == 5 ? 6 : 0; -+ if (state == 2 && commas_to_skip != 0) -+ commas_to_skip -= paren_nesting == 0; -+ else -+ state = 0; - continue; - - case xgettext_token_type_string_literal: -- if (extract_all || state == 2 || state == 6) -- { -- remember_a_message (mlp, &token); -- state = 0; -- } -+ if (extract_all || (state == 2 && commas_to_skip == 0)) -+ remember_a_message (mlp, &token); - else - { - free (token.string); -- state = (state == 4 || state == 5) ? 5 : 0; -+ state = state == 2 ? 2 : 0; - } - continue; - - case xgettext_token_type_symbol: -- state = (state == 4 || state == 5) ? 5 : 0; -+ state = state == 2 ? 2 : 0; - continue; - - default: -- state = 0; -- continue; -+ abort (); - - case xgettext_token_type_eof: - break; -=================================================================== -RCS file: po/Makefile.in.in,v -retrieving revision 0.10.35.0 -retrieving revision 0.10.35.5 -diff -u -r0.10.35.0 -r0.10.35.5 ---- po/Makefile.in.in 1998/07/20 20:20:38 0.10.35.0 -+++ po/Makefile.in.in 1998/07/26 09:07:52 0.10.35.5 -@@ -62,7 +62,7 @@ - $(COMPILE) $< - - .po.pox: -- $(MAKE) $(PACKAGE).pot -+ $(MAKE) $(srcdir)/$(PACKAGE).pot - $(MSGMERGE) $< $(srcdir)/$(PACKAGE).pot -o $*.pox - - .po.mo: -@@ -79,7 +79,7 @@ - - all: all-@USE_NLS@ - --all-yes: cat-id-tbl.c $(CATALOGS) -+all-yes: $(srcdir)/cat-id-tbl.c $(CATALOGS) - all-no: - - $(srcdir)/$(PACKAGE).pot: $(POTFILES) -@@ -90,8 +90,8 @@ - || ( rm -f $(srcdir)/$(PACKAGE).pot \ - && mv $(PACKAGE).po $(srcdir)/$(PACKAGE).pot ) - --$(srcdir)/cat-id-tbl.c: stamp-cat-id; @: --$(srcdir)/stamp-cat-id: $(PACKAGE).pot -+$(srcdir)/cat-id-tbl.c: $(srcdir)/stamp-cat-id; @: -+$(srcdir)/stamp-cat-id: $(srcdir)/$(PACKAGE).pot - rm -f cat-id-tbl.tmp - sed -f ../intl/po2tbl.sed $(srcdir)/$(PACKAGE).pot \ - | sed -e "s/@PACKAGE NAME@/$(PACKAGE)/" > cat-id-tbl.tmp -@@ -180,7 +180,8 @@ - - check: all - --cat-id-tbl.o: ../intl/libgettext.h -+cat-id-tbl.o: $(srcdir)/cat-id-tbl.c $(top_srcdir)/intl/libgettext.h -+ $(COMPILE) $(srcdir)/cat-id-tbl.c - - dvi info tags TAGS ID: - -@@ -196,7 +197,7 @@ - maintainer-clean: distclean - @echo "This command is intended for maintainers to use;" - @echo "it deletes files that may require special tools to rebuild." -- rm -f $(GMOFILES) -+ rm -f $(GMOFILES) cat-id-tbl.c stamp-cat-id - - distdir = ../$(PACKAGE)-$(VERSION)/$(subdir) - dist distdir: update-po $(DISTFILES) -@@ -207,7 +208,7 @@ - done - - update-po: Makefile -- $(MAKE) $(PACKAGE).pot -+ $(MAKE) $(srcdir)/$(PACKAGE).pot - PATH=`pwd`/../src:$$PATH; \ - cd $(srcdir); \ - catalogs='$(CATALOGS)'; \ diff --git a/gcc/ABOUT-NLS b/gcc/ABOUT-NLS deleted file mode 100755 index 28d38c7..0000000 --- a/gcc/ABOUT-NLS +++ /dev/null @@ -1,226 +0,0 @@ -Notes on the Free Translation Project -************************************* - - Free software is going international! The Free Translation Project -is a way to get maintainers of free software, translators, and users all -together, so that will gradually become able to speak many languages. -A few packages already provide translations for their messages. - - If you found this `ABOUT-NLS' file inside a distribution, you may -assume that the distributed package does use GNU `gettext' internally, -itself available at your nearest GNU archive site. But you do *not* -need to install GNU `gettext' prior to configuring, installing or using -this package with messages translated. - - Installers will find here some useful hints. These notes also -explain how users should proceed for getting the programs to use the -available translations. They tell how people wanting to contribute and -work at translations should contact the appropriate team. - - When reporting bugs in the `intl/' directory or bugs which may be -related to internationalization, you should tell about the version of -`gettext' which is used. The information can be found in the -`intl/VERSION' file, in internationalized packages. - -One advise in advance -===================== - - If you want to exploit the full power of internationalization, you -should configure it using - - ./configure --with-included-gettext - -to force usage of internationalizing routines provided within this -package, despite the existence of internationalizing capabilities in the -operating system where this package is being installed. So far, only -the `gettext' implementation in the GNU C library version 2 provides as -many features (such as locale alias or message inheritance) as the -implementation here. It is also not possible to offer this additional -functionality on top of a `catgets' implementation. Future versions of -GNU `gettext' will very likely convey even more functionality. So it -might be a good idea to change to GNU `gettext' as soon as possible. - - So you need not provide this option if you are using GNU libc 2 or -you have installed a recent copy of the GNU gettext package with the -included `libintl'. - -INSTALL Matters -=============== - - Some packages are "localizable" when properly installed; the -programs they contain can be made to speak your own native language. -Most such packages use GNU `gettext'. Other packages have their own -ways to internationalization, predating GNU `gettext'. - - By default, this package will be installed to allow translation of -messages. It will automatically detect whether the system provides -usable `catgets' (if using this is selected by the installer) or -`gettext' functions. If neither is available, the GNU `gettext' own -library will be used. This library is wholly contained within this -package, usually in the `intl/' subdirectory, so prior installation of -the GNU `gettext' package is *not* required. Installers may use -special options at configuration time for changing the default -behaviour. The commands: - - ./configure --with-included-gettext - ./configure --with-catgets - ./configure --disable-nls - -will respectively bypass any pre-existing `catgets' or `gettext' to use -the internationalizing routines provided within this package, enable -the use of the `catgets' functions (if found on the locale system), or -else, *totally* disable translation of messages. - - When you already have GNU `gettext' installed on your system and run -configure without an option for your new package, `configure' will -probably detect the previously built and installed `libintl.a' file and -will decide to use this. This might be not what is desirable. You -should use the more recent version of the GNU `gettext' library. I.e. -if the file `intl/VERSION' shows that the library which comes with this -package is more recent, you should use - - ./configure --with-included-gettext - -to prevent auto-detection. - - By default the configuration process will not test for the `catgets' -function and therefore they will not be used. The reasons are already -given above: the emulation on top of `catgets' cannot provide all the -extensions provided by the GNU `gettext' library. If you nevertheless -want to use the `catgets' functions use - - ./configure --with-catgets - -to enable the test for `catgets' (this causes no harm if `catgets' is -not available on your system). If you really select this option we -would like to hear about the reasons because we cannot think of any -good one ourself. - - Internationalized packages have usually many `po/LL.po' files, where -LL gives an ISO 639 two-letter code identifying the language. Unless -translations have been forbidden at `configure' time by using the -`--disable-nls' switch, all available translations are installed -together with the package. However, the environment variable `LINGUAS' -may be set, prior to configuration, to limit the installed set. -`LINGUAS' should then contain a space separated list of two-letter -codes, stating which languages are allowed. - -Using This Package -================== - - As a user, if your language has been installed for this package, you -only have to set the `LANG' environment variable to the appropriate -ISO 639 `LL' two-letter code prior to using the programs in the -package. For example, let's suppose that you speak German. At the -shell prompt, merely execute `setenv LANG de' (in `csh'), -`export LANG; LANG=de' (in `sh') or `export LANG=de' (in `bash'). This -can be done from your `.login' or `.profile' file, once and for all. - - An operating system might already offer message localization for -many of its programs, while other programs have been installed locally -with the full capabilities of GNU `gettext'. Just using `gettext' -extended syntax for `LANG' would break proper localization of already -available operating system programs. In this case, users should set -both `LANGUAGE' and `LANG' variables in their environment, as programs -using GNU `gettext' give preference to `LANGUAGE'. For example, some -Swedish users would rather read translations in German than English for -when Swedish is not available. This is easily accomplished by setting -`LANGUAGE' to `sv:de' while leaving `LANG' to `sv'. - -Translating Teams -================= - - For the Free Translation Project to be a success, we need interested -people who like their own language and write it well, and who are also -able to synergize with other translators speaking the same language. -Each translation team has its own mailing list, courtesy of Linux -International. You may reach your translation team at the address -`LL@li.org', replacing LL by the two-letter ISO 639 code for your -language. Language codes are *not* the same as the country codes given -in ISO 3166. The following translation teams exist, as of December -1997: - - Chinese `zh', Czech `cs', Danish `da', Dutch `nl', English `en', - Esperanto `eo', Finnish `fi', French `fr', German `de', Hungarian - `hu', Irish `ga', Italian `it', Indonesian `id', Japanese `ja', - Korean `ko', Latin `la', Norwegian `no', Persian `fa', Polish - `pl', Portuguese `pt', Russian `ru', Slovenian `sl', Spanish `es', - Swedish `sv', and Turkish `tr'. - -For example, you may reach the Chinese translation team by writing to -`zh@li.org'. - - If you'd like to volunteer to *work* at translating messages, you -should become a member of the translating team for your own language. -The subscribing address is *not* the same as the list itself, it has -`-request' appended. For example, speakers of Swedish can send a -message to `sv-request@li.org', having this message body: - - subscribe - - Keep in mind that team members are expected to participate -*actively* in translations, or at solving translational difficulties, -rather than merely lurking around. If your team does not exist yet and -you want to start one, or if you are unsure about what to do or how to -get started, please write to `translation@iro.umontreal.ca' to reach the -coordinator for all translator teams. - - The English team is special. It works at improving and uniformizing -the terminology in use. Proven linguistic skill are praised more than -programming skill, here. - -Available Packages -================== - - Languages are not equally supported in all packages. The following -matrix shows the current state of internationalization, as of December -1997. The matrix shows, in regard of each package, for which languages -PO files have been submitted to translation coordination. - - Ready PO files cs da de en es fi fr it ja ko nl no pl pt ru sl sv - .----------------------------------------------------. - bash | [] [] [] | 3 - bison | [] [] [] | 3 - clisp | [] [] [] [] | 4 - cpio | [] [] [] [] [] [] | 6 - diffutils | [] [] [] [] [] | 5 - enscript | [] [] [] [] [] [] | 6 - fileutils | [] [] [] [] [] [] [] [] [] [] | 10 - findutils | [] [] [] [] [] [] [] [] [] | 9 - flex | [] [] [] [] | 4 - gcal | [] [] [] [] [] | 5 - gettext | [] [] [] [] [] [] [] [] [] [] [] | 12 - grep | [] [] [] [] [] [] [] [] [] [] | 10 - hello | [] [] [] [] [] [] [] [] [] [] [] | 11 - id-utils | [] [] [] | 3 - indent | [] [] [] [] [] | 5 - libc | [] [] [] [] [] [] [] | 7 - m4 | [] [] [] [] [] [] | 6 - make | [] [] [] [] [] [] | 6 - music | [] [] | 2 - ptx | [] [] [] [] [] [] [] [] | 8 - recode | [] [] [] [] [] [] [] [] [] | 9 - sh-utils | [] [] [] [] [] [] [] [] | 8 - sharutils | [] [] [] [] [] [] | 6 - tar | [] [] [] [] [] [] [] [] [] [] [] | 11 - texinfo | [] [] [] | 3 - textutils | [] [] [] [] [] [] [] [] [] | 9 - wdiff | [] [] [] [] [] [] [] [] | 8 - `----------------------------------------------------' - 17 languages cs da de en es fi fr it ja ko nl no pl pt ru sl sv - 27 packages 6 4 25 1 18 1 26 2 1 12 20 9 19 7 4 7 17 179 - - Some counters in the preceding matrix are higher than the number of -visible blocks let us expect. This is because a few extra PO files are -used for implementing regional variants of languages, or language -dialects. - - For a PO file in the matrix above to be effective, the package to -which it applies should also have been internationalized and -distributed as such by its maintainer. There might be an observable -lag between the mere existence a PO file and its wide availability in a -distribution. - - If December 1997 seems to be old, you may fetch a more recent copy -of this `ABOUT-NLS' file on most GNU archive sites. - diff --git a/gcc/ORDERS b/gcc/ORDERS deleted file mode 100755 index 7b5fdee..0000000 --- a/gcc/ORDERS +++ /dev/null @@ -1,4157 +0,0 @@ -The actual order form follows the descriptions of media contents. - -Most of this file is excerpted from the July 1997 GNU's Bulletin. - -Please send suggestions for improvements to gnu@prep.ai.mit.edu or the postal -address at the end of the order form. Thank You. - ------------------------------------------------------------------------------ - - -FSF Order Form with Descriptions July, 1997 - - - -Free Software Foundation, Inc. Telephone: +1-617-542-5942 -59 Temple Place - Suite 330 Fax: (including Japan) +1-617-542-2652 -Boston, MA 02111-1307 Electronic Mail: `gnu@prep.ai.mit.edu' -USA World Wide Web: http://www.gnu.ai.mit.edu - ------------------------------------------------------------------------------ - - - -There are some sections (e.g. ``Forthcoming GNUs'' and ``How to Get GNU -Software'') which are not in this Order Form file. If you wish to see them, -ask gnu@prep.ai.mit.edu for the complete July, 1997 GNU's Bulletin. - - - -Table of Contents ------------------ - - New European Distributor - Donations Translate Into Free Software - Cygnus Matches Donations! - Free Software Redistributors Donate - Help from Free Software Companies - Major Changes in GNU Software and Documentation - The Deluxe Distribution - GNU Documentation - GNU Software - - Program/Package Cross Reference - CD-ROMs - Pricing of the GNU CD-ROMs - What Do the Different Prices Mean? - Why Is There an Individual Price? - Is There a Maximum Price? - January 1997 Compiler Tools Binaries CD-ROM - Source Code CD-ROMs - July 1997 Source Code CD-ROMs - January 1997 Source Code CD-ROMs - CD-ROM Subscription Service - FSF T-shirt - Free Software Foundation Order Form - - ------------------------------------------------------------------------------ - - - -New European Distributor -************************ - -The Free Software Foundation now has a European distribution agent: GNU -Distribution Europe, Belgium. - -Users in European Community countries can order GNU manuals, CD-ROMs and -T-shirts through this distribution agent, and get a lower overall price (due -to reduced shipping costs) and quicker delivery. - -Write to GNU Distribution Europe--Belgium, Sportstaat 28, 9000 Gent, Belgium; -Fax: +32-9-2224976; Phone: +32-9-2227542; Email: -`europe-order@gnu.ai.mit.edu'. - - -Donations Translate Into Free Software -************************************** - -If you appreciate Emacs, GNU CC, Ghostscript, and other free software, you -may wish to help us make sure there is more in the future--remember, -*donations translate into more free software!* - -Your donation to us is tax-deductible in the United States. We gladly accept -*any* currency, although the U.S. dollar is the most convenient. - -If your employer has a matching gifts program for charitable donations, -please arrange to: add the FSF to the list of organizations for your -employer's matching gifts program; and have your donation matched (note *Note -Cygnus Matches Donations!::). If you do not know, please ask your personnel -department. - -Circle amount you are donating, cut out this form, and send it with your -donation to: - - Free Software Foundation, Inc. - 59 Temple Place - Suite 330 - Boston, MA 02111-1307 - USA - - $500 $250 $100 $50 Other $_____ Other currency:_____ - -You can charge a donation to any of Carte Blanche, Diner's Club, JCB, -MasterCard, Visa, or American Express. Charges may also be faxed to -+1-617-542-2652. - - Card type: __________________ Expiration Date: _____________ - - Account Number: _____________________________________________ - - Cardholder's Signature: _____________________________________ - - Name: _______________________________________________________ - - Street Address: _____________________________________________ - - City/State/Province: ________________________________________ - - Zip Code/Postal Code/Country: _______________________________ - - Telephone Number: ___________________________________________ - - Email Address: ______________________________________________ - - - -Cygnus Matches Donations! -************************* - -To encourage cash donations to the Free Software Foundation, Cygnus Solutions -will continue to contribute corporate funds to the FSF to accompany gifts by -its employees, and by its customers and their employees. - -Donations payable to the Free Software Foundation should be sent by eligible -persons to Cygnus Solutions, which will add its gifts and forward the total -to the FSF each quarter. The FSF will provide the contributor with a receipt -to recognize the contribution (which is tax-deductible on U.S. tax returns). -To see if your employer is a Cygnus customer, or for more information, -please contact Cygnus: - - Cygnus Solutions - 1325 Chesapeake Terrace - Sunnyvale, CA 94089 - USA - - Telephone: +1 408 542 9600 - +1 800 Cygnus1 (-294-6871) - Fax: +1 408 542 9700 - Electronic-Mail: `info@cygnus.com' - FTP: `ftp.cygnus.com' - - - -Free Software Redistributors Donate -*********************************** - -The French redistributor PACT has agreed to donate $1.00 for each GNU/Linux -CD that they sell. - -Red Hat Software has agreed to donate $1.00 to the FSF for every copy of Red -Hat Archives sold. They have also added a GNU logo to the back of that CD -with the words "Supports the Free Software Foundation". - -The SNOW 2.1 CD producers added the words "Includes $5 donation to the FSF" -to the front of their CD. Potential buyers will know just how much of the -price is for the FSF & how much is for the redistributor. - -The Sun Users Group Deutschland has made it even clearer: their CD says, -"Price 90 DM, + 12 DM donation to the FSF." We thank them for their -contribution to our efforts. - -Kyoto Micro Computer of Japan regularly gives us 10% of their GNU-related -sales. - -Mr. Hiroshi, Mr. Kojima, and the other authors of the `Linux Primer' in Japan -have donated money from the sales of their book. - -Infomagic has continued to make sizable donations to the FSF. - -At the request of author Arnold Robbins, Specialized Systems Consultants, Inc. -continues to donate 3% of their profits from selling `Effective AWK -Programming'. We would also like to acknowledge the many SSC authors who -have donated their royalties and fees to the FSF. - -In the long run, the success of free software depends on how much new free -software people develop. Free software distribution offers an opportunity to -raise funds for such development in an ethical way. These redistributors -have made use of the opportunity. Many others let it go to waste. - -You can help promote free software development by convincing for-a-fee -redistributors to contribute--either by doing development themselves or by -donating to development organizations (the FSF and others). - -The way to convince distributors to contribute is to demand and expect this -of them. This means choosing among distributors partly by how much they give -to free software development. Then you can show distributors they must -compete to be the one who gives the most. - -To make this work, you must insist on numbers that you can compare, such as, -"We will give ten dollars to the Foobar project for each disk sold." A vague -commitment, such as "A portion of the profits is donated," doesn't give you a -basis for comparison. Even a precise fraction "of the profits from this -disk" is not very meaningful, since creative accounting and unrelated -business decisions can greatly alter what fraction of the sales price counts -as profit. - -Also, press developers for firm information about what kind of development -they do or support. Some kinds make much more long-term difference than -others. For example, maintaining a separate version of a GNU program -contributes very little; maintaining a program on behalf of the GNU Project -contributes much. Easy new ports contribute little, since someone else would -surely do them; difficult ports such as adding a new CPU to the GNU compiler -or Mach contribute more; major new features & programs contribute the most. - -By establishing the idea that supporting further development is "the proper -thing to do" when distributing free software for a fee, we can assure a -steady flow of resources for making more free software. - - - -Help from Free Software Companies -********************************* - -When choosing a free software business, ask those you are considering how -much they do to assist free software development, e.g., by contributing money -to free software development or by writing free software improvements -themselves for general use. By basing your decision partially on this -factor, you can help encourage those who profit from free software to -contribute to its growth. - -Wingnut (SRA's special GNU support group) supports the FSF by purchasing -Deluxe Distribution packages on a regular basis. In this way they transfer -10% of their income to the FSF. Listing them here is our way of thanking -them. - - Wingnut Project - Software Research Associates, Inc. - 1-1-1 Hirakawa-cho, Chiyoda-ku - Tokyo 102, Japan - - Phone: (+81-3)3234-2611 - Fax: (+81-3)3942-5174 - E-mail: `info-wingnut@sra.co.jp' - WWW: `http://www.sra.co.jp/public/sra/product/wingnut/' - - - -Major Changes in GNU Software and Documentation -*********************************************** - - * Hurd Progress (Also *note What Is the Hurd::.) - - We have made three test releases of the Hurd, the most recent being 0.2. - The Hurd is currently much more reliable than previously, and various - utilities and file system translators, such as an FTP file system, have - been written that take advantage of the Hurd's unique design. - - One way for people to help out is to compile and run as much third-party - free software as they can; in this way we can find bugs and deficiencies - with some rapidity. Volunteers with a PC are therefore eagerly sought to - get the 0.2 release and compile their favorite Unix programs and games. - - Daily snapshots of the Hurd sources are now available for those that - want to see the latest (non-stable) version; see the Hurd page on the - FSF Web site, `http://www.gnu.ai.mit.edu', for more information. - - * New Source Code CD! (*note July 1997 Source Code CD-ROMs::.) - - We are releasing the July 1997 (Edition 10) Source Code CD-ROM this - month. Once again, it is a two disk set. It includes several new - packages: `aegis', `cook', `guavac', `lesstif', `prcs', `rsync', `swarm', - & `vera'. On the CD-ROMs are full distributions of X11R6.3,, - Emacs, GCC, and current versions of all other GNU Software. *Note GNU - Software::, for more about these packages. - - * New/Updated Manuals since Last Bulletin (*note Documentation::.) - - Since the last bulletin, we have published several updated editions of - our manuals (note the price changes): `GNU Emacs Manual', revised for - GNU Emacs version 20, now $30; & `Texinfo Manual', for version 3.11 of - Texinfo, now $25. We hope to have the following available very soon: - `GNU Tar manual', first time in print, freshly reorganized and - rewritten, $20; `GNU Software for MS-Windows and MS-DOS', a book and - CD-ROM set with a variety of GNU software compiled for MS-DOS and - Windows 3.1/95/97/NT, $35 ($140 for corporate orders). Watch our Web - site, `http://www.gnu.ai.mit.edu', for announcements of these - publications. - - * Fonts freed - - A free commercial-quality set of the basic 35 Postscript Type 1 fonts is - now finally available. The copyright holder of these fonts, URW++ - Design and Development Incorporated, has decided to release them under - the GPL. Each font includes `.pfb' (outlines), `.afm' (metrics), and - `.pfm' (Windows printer metrics) files. The fonts are compatible with - Adobe Type Manager and with general Type 1 manipulation tools, as well - as with Ghostscript and other Postscript language interpreters. - - The fonts are available in `ghostscript-fonts-4.0.tar.gz' on the usual - FTP sites. - - * DDD now works with LessTif (Also *note GNU Software::.) Release 2.1.1 - of DDD, the Data Display Debugger, now works with LessTif, a free Motif - clone. - - * Give to GNU the United Way! - - As a 501(c)3 tax-exempt organization, the FSF is eligible to receive - United Way funds. When donating to United Way, one can specify that all - or part of the donation be directed to the FSF. On the donor form, - check the "Specific Requests" box and include the sentence, "Send my - gift to the Free Software Foundation, 59 Temple Place, Suite 330, - Boston, MA 02111." We especially appreciate the donations from Microsoft - matching the United Way donations of their employees. Also see *Note - Donations Translate Into Free Software::, and *Note Cygnus Matches - Donations!::. - - * Tapes and MS-DOS Diskettes No Longer Available from the FSF - - We no longer offer tapes or MS-DOS diskettes due to very low demand. - - * GNU Software Works on MS-DOS (Also *note GNU Software::.) - - GNU Emacs 19 and many other GNU programs have been ported to MS-DOS for - i386/i486/Pentium machines. We ship binaries & sources on the *Note - Compiler Tools Binaries CD-ROM::. - - * The FSF Takes Discover - - The Free Software Foundation now accepts the Discover card for orders or - donations. We also accept the following: Carte Blanche, Diner's Club, - JCB, MasterCard, Visa, and American Express. Note that we are charged - about 5% of an order's total amount in credit card processing fees; - please consider paying by check instead or adding on a 5% donation to - make up the difference. We do *not* recommend that you send credit card - numbers to us via email, since we have no way of insuring that the - information will remain confidential. - - * MULE Merge Complete - - MULE is the Multi-Lingual Emacs developed by Ken'ichi Handa at the - Electrotechnical Lab in Tsukuba, Japan. This code has been merged into - Emacs and is included in Emacs 20. - - * GPC, the GNU Pascal Compiler - - The GNU Pascal Compiler (GPC) is part of the GNU compiler family, GNU CC - or GCC. It combines a Pascal front end with the proven GNU compiler - backend for code generation and optimization. Unlike utilities such as - p2c, this is a true compiler, not just a converter. - - Version 2.0 of GPC corresponds to GCC version 2.7.2.1. - - The purpose of the GNU Pascal project is to produce a compiler which: - * combines the clarity of Pascal with powerful tools suitable for - real-life programming, - - * supports both the Pascal standard and the Extended Pascal standard - as defined by ISO, ANSI and IEEE. (ISO 7185:1990, ISO/IEC - 10206:1991, ANSI/IEEE 770X3.160-1989) - - * supports other Pascal standards (UCSD Pascal, Borland Pascal, - Pascal-SC) in so far as this serves the goal of clarity and - usability, - - * can generate code for and run on any computer for which the GNU C - Compiler can generate code and run on. - - The current release (2.0) implements Standard Pascal (ISO 7185, level 0) - and a large subset of Extended Pascal (ISO 10206) and Borland Pascal. - - The upcoming release 2.1 features better conformance to the various - Pascal standards, and of course bug fixes. - - A growing group of GPC enthusiasts contributes to the project with code, - bug reports or fixes. - - `http://agnes.dida.physik.uni-essen.de/~gnu-pascal/', also known as - `http://home.pages.de/~gnu-pascal/', is the GNU Pascal home page; - sources may be downloaded from `ftp://kampi.hut.fi/jtv/gnu-pascal/' - (official) or `ftp://agnes.dida.physik.uni-essen.de/pub/gnu-pascal/' - (development versions). - - * GUILE - - GUILE 1.2 is released. GNU's Ubiquitous Intelligent Language for - Extension is an SCM-based library that can make any ordinary C program - extensible. (For SCM info, see "JACAL" in *Note GNU Software::.) - Nightly snapshots of the development sources are also available, in - `ftp://ftp.red-bean.com/pub/guile/guile-core-snap.tar.gz'. - - Also being developed are SCSH-compatible system call & Tk interfaces, a - module system, dynamic linking support, & a byte-code interpreter. - Support for Emacs Lisp & a more C-like language is coming. - - * A New FSF T-shirt! - - We have a new T-shirt design. *Note FSF T-shirt::, for the description. - - * New free game - - In August 1995, the action game Abuse by Jonathan Clark was released for - the first time. It wasn't free software then--but now, less than two - years later, the company Crack dot Com has rereleased it as free - software. Abuse was initially developed on Linux-based GNU systems, and - we've included it on our our source CD set. - - Beyond providing the free software community with a game that many - people enjoy, and code that could be useful for developing other free - games, this demonstrates an important fact about the economic - circumstances of computer game development: most non-free games bring - their profit in a very short period of time. Therefore, a game company - can turn a game into free software fairly soon, with little hardship. - - Let's hope that other game developers follow this example. - - - -The Deluxe Distribution -*********************** - -The Free Software Foundation has been asked repeatedly to create a package -that provides executables for all of our software. Normally we offer only -sources. The Deluxe Distribution provides binaries with the source code and -includes six T-shirts, all our CD-ROMs, printed manuals, & reference cards. - -The FSF Deluxe Distribution contains the binaries and sources to hundreds of -different programs including Emacs, the GNU C/C++ Compiler, the GNU Debugger, -the complete X Window System, and all the GNU utilities. - -We will make a Deluxe Distribution for most machines/operating systems. We -may be able to send someone to your office to do the compilation, if we can't -find a suitable machine here. However, we can only compile the programs that -already support your chosen machine/system - porting is a separate matter. -(To commission a port, see the GNU Service Directory; details in *Note Free -Software Support::.) Compiling all these programs takes time; a Deluxe -Distribution for an unusual machine will take longer to produce than one for -a common machine. Please contact the FSF Office with any questions. - -We supply the software on a write-once CD-ROM (in ISO 9660 format with "Rock -Ridge" extensions), or on one of these tapes in Unix `tar' format: 1600 or -6250bpi 1/2in reel, Sun DC300XLP 1/4in cartridge - QIC24, IBM RS/6000 1/4in -c.t. - QIC 150, Exabyte 8mm c.t., or DAT 4mm c.t. If your computer cannot -read any of these, please contact us to see if we can handle your format. - -The manuals included are one each of `Bison', `Calc', `GAWK', `GCC', `GNU C -Library', `GDB', `Flex', `GNU Emacs Lisp Reference', `Programming in Emacs -Lisp: An Introduction', `Make', `Texinfo', & `Termcap' manuals; six copies of -the `GNU Emacs' manual; and ten reference cards each for Emacs, Bison, Calc, -Flex, & GDB. - -Every Deluxe Distribution also has a copy of the latest editions of our -CD-ROMs that have sources of our software & compiler tool binaries for some -systems. The CDs are in ISO 9660 format with Rock Ridge extensions. - -The price of the Deluxe Distribution is $5000 (shipping included). These -sales provide enormous financial assistance to help the FSF develop more free -software. To order, please fill out the "Deluxe Distribution" section on the -*note Free Software Foundation Order Form::. and send it to: - - Free Software Foundation, Inc. - 59 Temple Place - Suite 330 - Boston, MA 02111-1307 - USA - - Telephone: +1-617-542-5942 - Fax (including Japan): +1-617-542-2652 - Electronic Mail: gnu@prep.ai.mit.edu - World Wide Web: http://www.gnu.ai.mit.edu - - - -GNU Documentation -***************** - -GNU is dedicated to having quality, easy-to-use online & printed -documentation. GNU manuals are intended to explain underlying concepts, -describe how to use all the features of each program, & give examples of -command use. GNU manuals are distributed as Texinfo source files, which -yield both typeset hardcopy via the TeX document formatting system and online -hypertext display via the menu-driven Info system. Source for these manuals -comes with our software; here are the manuals that we publish as printed -books. *Note Free Software Foundation Order Form::, to order them. - -Most GNU manuals are bound as soft cover books with "lay-flat" bindings. -This allows you to open them so they lie flat on a table without creasing the -binding. They have an inner cloth spine and an outer cardboard cover that -will not break or crease as an ordinary paperback will. Currently, the -`Using and Porting GNU CC', `GDB', `Emacs', `Emacs Lisp Reference', -`Programming in Emacs Lisp: An Introduction', `GNU Awk User's Guide', `Make', -& `Bison' manuals have this binding. Our other manuals also lie flat when -opened, using a GBC binding. Our manuals are 7in by 9.25in except the 8.5in -by 11in `Calc' manual. - -The edition number of the manual and version number of the program listed -after each manual's name were current at the time this Bulletin was published. - -`Debugging with GDB' (for Version 4.16) tells how to run your program under -GNU Debugger control, examine and alter data, modify a program's flow of -control, and use GDB through GNU Emacs. - -The `GNU Emacs Manual' (13th Edition for Version 20) describes editing with -GNU Emacs. It explains advanced features, including international character -sets; outline mode and regular expression search; how to use special -programming modes to write languages like C++ and TeX; how to use the `tags' -utility; how to compile and correct code; how to make your own keybindings; -and other elementary customizations. - -`Programming in Emacs Lisp: An Introduction' (October 1995 Edition 1.04) is -for people who are not necessarily interested in programming, but who do want -to customize or extend their computing environment. If you read it in Emacs -under Info mode, you can run the sample programs directly. - -`The GNU Emacs Lisp Reference Manual' (Edition 2.4 for Version 19.29) and -`The GNU Emacs Lisp Reference, Japanese Edition' (Japanese Draft Revision -1.0, from English Edition 2.4 for Version 19.29) cover this programming -language in depth, including data types, control structures, functions, -macros, syntax tables, searching/matching, modes, windows, keymaps, byte -compilation, and the operating system interface. - -`The GNU Awk User's Guide' (Edition 1.0 for Version 3.0) tells how to use -`gawk'. It is written for those who have never used `awk' and describes -features of this powerful string and record manipulation language. It -clearly delineates those features which are part of POSIX `awk' from `gawk' -extensions, providing a comprehensive guide to `awk' program portability. - -`GNU Make' (Edition 0.51 for Version 3.76 Beta) describes GNU `make', a -program used to rebuild parts of other programs. The manual tells how to -write "makefiles", which specify how a program is to be compiled and how its -files depend on each other. Included are an introductory chapter for novice -users and a section about automatically generated dependencies. - -The `Flex' manual (Edition 1.03 for Version 2.3.7) teaches you to write a -lexical scanner definition for the `flex' program to create a C++ or C-coded -scanner that recognizes the patterns defined. You need no prior knowledge of -scanners. - -`The Bison Manual' (November 1995 Edition for Version 1.25) teaches you how -to write context-free grammars for the Bison program that convert into -C-coded parsers. You need no prior knowledge of parser generators. - -`Using and Porting GNU CC' (November 1995 Edition for Version 2.7.2) tells -how to run, install, and port the GNU C Compiler to new systems. It lists -new features and incompatibilities of GCC, but people not familiar with C -will still need a good reference on the C programming language. It also -covers G++. - -The `Texinfo' manual (Edition 2.24 for Version 3) explains the markup -language that produces our online Info documentation & typeset hardcopies. -It tells you how to make tables, lists, chapters, nodes, accented & special -characters, indexes, cross references, & how to catch mistakes. - -`The Termcap Manual' (3rd Edition for Version 1.3), often described as "twice -as much as you ever wanted to know about termcap," details the format of the -termcap database, the definitions of terminal capabilities, and the process -of interrogating a terminal description. This manual is primarily for -programmers. - -The `C Library Reference Manual' (Edition 0.08 for Version 2.0) describes the -library's facilities, including both what Unix calls "library functions" & -"system calls." We are doing small copier runs of this manual until it -becomes more stable. Please send fixes to `bug-glibc-manual@prep.ai.mit.edu'. - -The `Emacs Calc Manual' (for Version 2.02) is both a tutorial and a reference -manual. It tells how to do ordinary arithmetic, how to use Calc for algebra, -calculus, and other forms of mathematics, and how to extend Calc. - - - -GNU Software -************ - -All our software is available via FTP; see *Note How to Get GNU Software::. -We also offer *Note CD-ROMs::, and printed *Note Documentation::, which -includes manuals and reference cards. In the articles describing the -contents of each medium, the version number listed after each program name -was current when we published this Bulletin. When you order a newer CD-ROM, -some of the programs may be newer and therefore the version number higher. -*Note Free Software Foundation Order Form::, for ordering information. - -Some of the contents of our FTP distributions are compressed. We have -software on our FTP sites to uncompress these files. Due to patent troubles -with `compress', we use another compression program, `gzip'. - -You may need to build GNU `make' before you build our other software. Some -vendors supply no `make' utility at all and some native `make' programs lack -the `VPATH' feature essential for using the GNU configure system to its full -extent. The GNU `make' sources have a shell script to build `make' itself on -such systems. - -We welcome all bug reports and enhancements sent to the appropriate -electronic mailing list (*note Free Software Support::.). - - - -Configuring GNU Software ------------------------- - -We are using Autoconf, a uniform scheme for configuring GNU software packages -in order to compile them (see "Autoconf" and "Automake" below, in this -article). The goal is to have all GNU software support the same alternatives -for naming machine and system types. - -Ultimately, it will be possible to configure and build the entire system all -at once, eliminating the need to configure each individual package separately. - -You can also specify both the host and target system to build -cross-compilation tools. Most GNU programs now use Autoconf-generated -configure scripts. - - - -GNU Software Now Available --------------------------- - -For future programs and features, see *Note Forthcoming GNUs::. - -Key to cross reference: - - BinCD January 1997 Binaries CD-ROM - SrcCD July 1997 Source CD-ROMs - -[FSFman] shows that we sell a manual for that package. [FSFrc] shows we sell -a reference card for that package. To order them, *Note Free Software -Foundation Order Form::. *Note Documentation::, for more information on the -manuals. Source code for each manual or reference card is included with each -package. - - * `abuse' *Also *note GNUs Flashes::.* (SrcCD) - - The recently-freed program `abuse' is a dark, side-scrolling game with - Robotron-esque controls: you control your movement with the keyboard and - fire & aim with the mouse. You can get more info at - `http://crack.com/games/abuse'. - - * acct (SrcCD) - - acct is a system accounting package. It includes the programs `ac' - (summariize login accounting), `accton' (turn accounting on or off), - `last' (show who has logged in recently), `lastcomm' (show which - commands have been used), `sa' (summarize process accounting), - `dump-utmp' (print a `utmp' file in human-readable format), & - `dump-acct' (print an `acct' or `pacct' file in human-readable format). - - * `acm' (SrcCD) - - `acm' is a LAN-oriented, multiplayer, aerial combat simulation that runs - under the X Window System. Players engage in air to air combat against - one another using heat seeking missiles and cannons. We are working on - a more accurate simulation of real airplane flight characteristics. - - * aegis (SrcCD) - - Aegis is a transaction-based software configuration management system. - It provides a framework within which a team of developers may work on - many changes to a program concurrently, and Aegis coordinates - integrating these changes back into the master source of the program, - with as little disruption as possible. - - * Apache *Also see* `http://www.apache.org/' (SrcCD) - - Apache is an HTTP server designed as a successor to the NCSA family of - Web servers. It adds a significant amount of new functionality, has an - extensive API for modular enhancements, is extremely flexible without - compromising speed, and has an active development group and user - community. - - * Autoconf (SrcCD) - - Autoconf produces shell scripts which automatically configure source code - packages. These scripts adapt the packages to many kinds of Unix-like - systems without manual user intervention. Autoconf creates a script for - a package from a template file which lists the operating system features - which the package can use, in the form of `m4' macro calls. Autoconf - requires GNU `m4' to operate, but the resulting configure scripts it - generates do not. - - * Automake (SrcCD) - - Automake is a tool for generating `Makefile.in' files for use with - Autoconf. The generated makefiles are compliant with GNU Makefile - standards. - - * BASH (SrcCD) - - GNU's shell, BASH (Bourne Again SHell), is compatible with the Unix `sh' - and offers many extensions found in `csh' and `ksh'. BASH has job - control, `csh'-style command history, command-line editing (with Emacs - and `vi' modes built-in), and the ability to rebind keys via the - `readline' library. BASH conforms to the POSIX 1003.2-1992 standard. - - * bc (SrcCD) - - `bc' is an interactive algebraic language with arbitrary precision - numbers. GNU `bc' follows the POSIX 1003.2-1992 standard with several - extensions, including multi-character variable names, an `else' - statement, and full Boolean expressions. The RPN calculator `dc' is now - distributed as part of the same package, but GNU `bc' is not implemented - as a `dc' preprocessor. - - * BFD (BinCD, SrcCD) - - The Binary File Descriptor library allows a program which operates on - object files (e.g., `ld' or GDB) to support many different formats in a - clean way. BFD provides a portable interface, so that only BFD needs to - know the details of a particular format. One result is that all - programs using BFD will support formats such as a.out, COFF, and ELF. - BFD comes with Texinfo source for a manual (not yet published on paper). - - At present, BFD is not distributed separately; it is included with - packages that use it. - - * Binutils (BinCD, SrcCD) - - Binutils includes these programs: `addr2line', `ar', `c++filt', `gas', - `gprof', `ld', `nm', `objcopy', `objdump', `ranlib', `size', `strings', & - `strip'. - - Binutils version 2 uses the BFD library. The GNU assembler, `gas', - supports the a29k, Alpha, ARM, D10V, H8/300, H8/500, HP-PA, i386, i960, - M32R, m68k, m88k, MIPS, Matsushita 10200 and 10300, NS32K, PowerPC, - RS/6000, SH, SPARC, Tahoe, Vax, and Z8000 CPUs, and attempts to be - compatible with many other assemblers for Unix and embedded systems. It - can produce mixed C and assembly listings, and includes a macro facility - similar to that in some other assemblers. GNU's linker, `ld', supports - shared libraries on many systems, emits source-line numbered error - messages for multiply-defined symbols and undefined references, and - interprets a superset of AT&T's Linker Command Language, which gives - control over where segments are placed in memory. `objdump' can - disassemble code for most of the CPUs listed above, and can display - other data (e.g., symbols and relocations) from any file format read by - BFD. - - * Bison (BinCD, SrcCD) [FSFman, FSFrc] - - Bison is an upwardly compatible replacement for the parser generator - `yacc'. Texinfo source for the `Bison Manual' and reference card are - included. - - * C Library (`glibc') (BinCD, SrcCD) [FSFman] - - The GNU C library supports ISO C-1989, ISO C/amendment 1-1995, POSIX - 1003.1-1990, POSIX 1003.1b-1993, POSIX 1003.1c-1995 (when the underlying - system permits), & most of the functions in POSIX 1003.2-1992. It is - nearly compliant with the extended XPG4.2 specification which guarantees - upward compatibility with 4.4BSD & many System V functions. - - When used with the GNU Hurd, the C Library performs many functions of the - Unix system calls directly. Mike Haertel has written a fast `malloc' - which wastes less memory than the old GNU version. - - GNU `stdio' lets you define new kinds of streams, just by writing a few - C functions. Two methods for handling translated messages help writing - internationalized programs & the user can adopt the environment the - program runs in to conform with local conventions. Extended `getopt' - functions are already used to parse options, including long options, in - many GNU utilities. The name lookup functions now are modularized which - makes it easier to select the service which is needed for the specific - database & the document interface makes it easy to add new services. - Texinfo source for the `GNU C Library Reference Manual' is included - (*note Documentation::.). - - Previous versions of the GNU C library ran on a large number of systems. - The architecture-dependent parts of the C library have not been updated - since development on version 2.0 started, so today it runs out of the - box only on GNU/Hurd (all platforms GNU/Hurd also runs on) & GNU/Linux - (ix86, Alpha, m68k, MIPS, Sparc, PowerPC; work is in progress for ARM). - Other architectures will become available again as soon as somebody does - the port. - - * C++ Library (`libg++') (BinCD, SrcCD) - - The GNU C++ library (traditionally called `libg++') includes libstdc++, - which implements the library facilities defined by the forthcoming ISO - C++ standard. This includes strings, iostream, and various container - classes. All of this is templatized. - - The package also contains the older libg++ library for backward - compatibility, but new programs should avoid using it. - - * Calc (SrcCD) [FSFman, FSFrc] - - Calc (written by Dave Gillespie in Emacs Lisp) is an extensible, advanced - desk calculator & mathematical tool that runs as part of GNU Emacs. You - can use Calc as a simple four-function calculator, but it has many more - features including: choice of algebraic or RPN (stack-based) entry; - logarithmic, trigonometric, & financial functions; arbitrary precision; - complex numbers; vectors; matrices; dates; times; infinities; sets; - algebraic simplification; & differentiation & integration. It outputs - to `gnuplot', & comes with source for a manual & reference card (*note - Documentation::.). - - * `cfengine' (SrcCD) - - `cfengine' is used to maintain site-wide configuration of a - heterogeneous Unix network using a simple high level language. Its - appearance is similar to `rdist', but allows many more operations to be - performed automatically. See Mark Burgess, "A Site Configuration - Engine", `Computing Systems', Vol. 8, No. 3 (ask `office@usenix.org' how - to get a copy). - - * Chess (SrcCD) - - GNU Chess enables you to play a game of chess with a computer instead of - a person. It is useful to practice with when there are significant - spare cpu cycles and a real person is unavailable. - - The program offers a plain terminal interface, one using curses, and a - reasonable X Windows interface `xboard'. Best results are obtained by - compiling with GNU C. - - Improvements this past year are in the Windows-compatible version, - mostly bugfixes. - - Stuart Cracraft started the GNU mascot back in the mid-1980's. John - Stanback (and innumerable contributors) are responsible for GNU's brain - development and its fair play. Acknowledgements for the past year's - work are due Conor McCarthy. - - Send bugs to `bug-gnu-chess@prep.ai.mit.edu' & general comments to - `info-gnu-chess@prep.ai.mit.edu'. Visit the author's Web site at - `http://www.earthlink.net/~cracraft/index.html'. Play GNU Chess on the - Web at `http://www.delorie.com/game-room/chess'. - - * CLISP (SrcCD) - - CLISP is a Common Lisp implementation by Bruno Haible & Michael Stoll. - It mostly supports the Lisp described by `Common LISP: The Language (2nd - edition)' & the ANSI Common Lisp standard. CLISP includes an - interpreter, a byte-compiler, a large subset of CLOS & a foreign language - interface. The user interface language (English, German, French) can be - chosen at run time. An X11 API is available through CLX & Garnet. - CLISP needs only 2 MB of memory & runs on all kinds of Unix systems & on - many microcomputers (including MS-DOS systems, OS/2, Windows NT, Windows - 95, Amiga 500-4000, & Acorn RISC PC). See also item "Common Lisp", - which describes GCL, a complete Common Lisp implementation with compiler. - - * CLX (SrcCD) - - CLX is an X Window interface library for GCL. This is separate from the - built-in TK interface. - - * Common Lisp (`gcl') (SrcCD) - - GNU Common Lisp (GCL, formerly known as Kyoto Common Lisp) is a compiler - & interpreter for Common Lisp. GCL is very portable & extremely - efficient on a wide class of applications, & compares favorably in - performance with commercial Lisps on several large theorem-prover & - symbolic algebra systems. GCL supports the CLtL1 specification but is - moving towards the proposed ANSI standard. - - GCL compiles to C & then uses the native optimizing C compiler (e.g., - GCC). A function with a fixed number of args & one value turns into a C - function of the same number of args, returning one value--so GCL is - maximally efficient on such calls. Its conservative garbage collector - gives great freedom to the C compiler to put Lisp values in registers. - It has a source level Lisp debugger for interpreted code & displays - source code in an Emacs window. Its profiler (based on the C profiling - tools) counts function calls & the time spent in each function. - - There is now a built-in interface to the Tk widget system. It runs in a - separate process, so users may monitor progress on Lisp computations or - interact with running computations via a windowing interface. - - There is also an Xlib interface via C (xgcl-2). CLX runs with GCL, as - does PCL (see "PCL" later in this article). - - GCL version 2.2.2 is released under the GNU Library General Public - License. - - * cook (SrcCD) - - Cook is a tool for constructing files, and maintaining referential - integrity between files. It is given a set of files to create, and - recipes of how to create and maintain them. In any non-trivial program - there will be prerequisites to performing the actions necessary to - creating any file, such as include files. The `cook' program provides a - mechanism to define these. - - Some features which distinguish Cook include a strong procedural - description language, and fingerprints to supplement file modification - time stamps. There is also a `make2cook' utility included to ease - transition. - - * `cpio' (SrcCD) - - `cpio' is an archive program with all the features of SVR4 `cpio', - including support for the final POSIX 1003.1 `ustar' standard. `mt', a - program to position magnetic tapes, is included with `cpio'. - - * CVS (SrcCD) - - CVS is a version control system (like RCS or SCCS) which allows you to - keep old versions of files (usually source code), keep a log of who, - when, and why changes occurred, etc. It handles multiple developers, - multiple directories, triggers to enable/log/control various operations, - and can work over a wide area network. It does not handle build - management or bug-tracking; these are handled by `make' and GNATS, - respectively. - - * `cxref' (SrcCD) - - `cxref' is a program that will produce documentation (in LaTeX or HTML) - including cross-references from C program source code. It has been - designed to work with ANSI C, incorporating K&R, and most popular GNU - extensions. The documentation for the subject program is produced from - comments in the code that are appropriately formatted. The cross - referencing comes from the code itself and requires no extra work. - - * DDD (SrcCD) - - The Data Display Debugger (DDD) is a common graphical user interface to - GDB, DBX, and XDB, the popular Unix debuggers. DDD provides a graphical - data display where complex data structures can be explored incrementally - and interactively. DDD has been designed to compete with well-known - commercial debuggers; as of release 2.1.1, DDD also compiles and runs - with LessTif, a free Motif clone, without loss of functionality. For - more details, see the DDD WWW page at - `http://www.cs.tu-bs.de/softech/ddd/'. - - * DejaGnu (SrcCD) - - DejaGnu is a framework to test programs with a single front end for all - tests. DejaGnu's flexibility & consistency makes it easy to write tests. - DejaGnu will also work with remote hosts and embedded systems. - - DejaGnu comes with `expect', which runs scripts to conduct dialogs with - programs. - - * Diffutils (SrcCD) - - GNU `diff' compares files showing line-by-line changes in several - flexible formats. It is much faster than traditional Unix versions. The - Diffutils package has `diff', `diff3', `sdiff', & `cmp'. Future plans - include support for internationalization (e.g., error messages in - Chinese) & some non-Unix PC environments, & a library interface that can - be used by other free software. - - * DJGPP *Also see "GCC" below* (BinCD) - - DJ Delorie has ported GCC/G++ to i386s running DOS. DJGPP has a 32-bit - i386 DOS extender with a symbolic debugger, development libraries, & - ports of Bison, `flex', & Binutils. Full source code is provided. It - needs at least 5MB of hard disk space to install & 512K of RAM to use. - It supports SVGA (up to 1024x768), XMS & VDISK memory allocation, - `himem.sys', VCPI (e.g., QEMM, DESQview, & 386MAX), & DPMI (e.g., - Windows 3.x, OS/2, QEMM, & QDPMI). Version 2 was released in Feb. 1996, - & needs a DPMI environment; a free DPMI server is included. - - WWW at `http://www.delorie.com/djgpp/' or FTP from `ftp.simtel.net' in - `/pub/simtelnet/gnu/djgpp/' (or a SimTel mirror site). - - Ask `listserv@delorie.com', to join a DJGPP users mailing list. - - * `dld' (SrcCD) - - `dld' is a dynamic linker written by W. Wilson Ho. Linking your program - with the `dld' library allows you to dynamically load object files into - the running binary. `dld' supports a.out object types on the following - platforms: Convex C-Series (BSD), i386/i486/Pentium (GNU/Linux), Sequent - Symmetry i386 (Dynix 3), Sun-3 (SunOS 3 & 4), Sun-4 (SunOS 4), & VAX - (Ultrix). - - * `doschk' (SrcCD) - - This program is a utility to help software developers ensure that their - source file names are distinguishable on System V platforms with - 14-character filenames and on MS-DOS systems with 8+3 character - filenames. - - * `ed' (SrcCD) - - `ed' is the standard text editor. It is line-oriented and can be used - interactively or in scripts. - - * Elib (SrcCD) - - Elib is a small library of Emacs Lisp functions, including routines for - using AVL trees and doubly-linked lists. - - * Elisp archive (SrcCD) - - This is a snapshot of Ohio State's GNU Emacs Lisp FTP Archive. FTP it - from `archive.cis.ohio-state.edu' in `/pub/gnu/emacs/elisp-archive'. - - * Emacs *Also *note GNUs Flashes::.* [FSFman(s), FSFrc] - - In 1975, Richard Stallman developed the first Emacs, an extensible, - customizable real-time display editor & computing environment. GNU Emacs - is his second implementation. It offers true Lisp--smoothly integrated - into the editor--for writing extensions & provides an interface to the X - Window System. It runs on Unix, MS-DOS, & Windows NT or 95. In - addition to its powerful native command set, Emacs can emulate the - editors vi & EDT (DEC's VMS editor). Emacs has many other features which - make it a full computing support environment. Source for the `GNU Emacs - Manual' & a reference card comes with the software. Sources for the - `GNU Emacs Lisp Reference Manual', & `Programming in Emacs Lisp: An - Introduction' are distributed in separate packages. *Note - Documentation::. - - * Emacs 20 (SrcCD) [FSFman(s), FSFrc] - - Emacs 20.1 was just released recently. Its main new features include - support for many languages and many character codes (the MULE facility) - and a new convenient customization feature. The text-filling commands - handle indented and bulleted paragraphs conveniently; there are new help - facilities for looking up documentation about functions and symbols in - various languages. A new method of file-locking works even when using - NFS. Some dired commands have been made more systematic. - - We believe Emacs 20 operates on the same systems as Emacs 19, but we do - not have confirmation for all of them. - - * Emacs 19 (SrcCD) [FSFman(s), FSFrc] - - Emacs 19 works with character-only terminals & with the X Window System - (with or without an X toolkit). It also runs on MS-DOS, MS Windows, and - with multiple-window support on MS Windows 95/NT. - - Emacs 19 works on: Acorn RISC (RISCiX); Alliant FX/2800 (BSD); Alpha - (OSF/1 or GNU/Linux); Apollo (DomainOS); Bull DPX/2 2nn & 3nn (SysV.3) & - sps7 (SysV.2); Clipper; Convex (BSD); Cubix QBx (SysV); Data General - Aviion (DGUX); DEC MIPS (Ultrix 4.2, OSF/1, not VMS); Elxsi 6400 (SysV); - Gould Power Node & NP1 (4.2 & 4.3BSD); Harris Night Hawk 1200, 3000, - 4000 & 5000 (cxux); Harris Night Hawk Power PC (powerunix); Honeywell - XPS100 (SysV); HP 9000 series 200, 300, 700, 800 (but not 500) (4.3BSD; - HP-UX 7, 8, 9; NextStep); Intel i386/i486/Pentium (GNU/Hurd, GNU/Linux, - 386BSD, AIX, BSDI/386, FreeBSD, Esix, ISC, MS-DOS, NetBSD, SCO3.2v4, - Solaris, SysV, Xenix, WindowsNT, Windows95); IBM RS/6000 (AIX 3.2) & - RT/PC (AIX, BSD); Motorola Delta 147 & 187 (SysV.3, SysV.4, m88kbcs); - National Semiconductor 32K (Genix); NeXT (BSD, Mach 2 w/ NeXTStep 3.0); - Paragon (OSF/1); Prime EXL (SysV); Pyramid (BSD); Sequent Symmetry (BSD, - ptx); Siemens RM400 & RM600 (SysV); SGI Iris 4D (Irix 4.x & 5.x); Sony - News/RISC (NewsOS); Stardent i860 (SysV); Sun 3 & 4, SPARC 1, 1+, 2, 10, - Classic (SunOS 4.0, 4.1, Solaris 2.0-2.3); Tadpole 68k (SysV); Tektronix - XD88 (SysV.3) & 4300 (BSD); & Titan P2 & P3 (SysV). - - * Emacs 18 (SrcCD) [FSFrc] - - Emacs 18 is several years old. We no longer maintain it, but still - distribute it for those using platforms which Emacs 19 does not support. - - * `enscript' (SrcCD) - - `enscript' is an upwardly-compatible replacement for the Adobe - `enscript' program. It formats ASCII files (outputting in Postscript) - and stores generated output to a file or sends it directly to the - printer. - - * `es' (SrcCD) - - `es' is an extensible shell (based on `rc') with first-class functions, - lexical scope, exceptions, and rich return values (i.e., functions can - return values other than just numbers). `es''s extensibility comes from - the ability to modify and extend the shell's built-in services, such as - path searching and redirection. Like `rc', it is great for both - interactive use and scripting, particularly since its quoting rules are - much less baroque than the C and Bourne shells. - - * Exim (SrcCD) - - Exim is a new Internet mail transfer agent, similar in style to Smail 3. - It can handle relatively high volume mail systems, header rewriting, - control over which hosts/nets may use it as a relay, blocking of - unwanted mail from specified hosts/nets/senders, and multiple local - domains on one mail host ("virtual domains") with several options for - the way these are handled. - - * `f2c' *Also see "Fortran" below & in *Note Forthcoming GNUs::.* - (SrcCD) - - `f2c' converts Fortran-77 source into C or C++, which can be compiled - with GCC or G++. Get bug fixes by FTP from site `netlib.bell-labs.com' - or by email from `netlib@netlib.bell-labs.com'. For a summary, see the - file `/netlib/f2c/readme.gz'. - - * `ffcall' (SrcCD) - - `ffcall' is a C library for implementing foreign function calls in - embedded interpreters by Bill Triggs and Bruno Haible. It allows C - functions with arbitrary argument lists and return types to be called or - emulated (callbacks). - - * Fileutils (SrcCD) - - The Fileutils are: `chgrp', `chmod', `chown', `cp', `dd', `df', `dir', - `dircolors', `du', `install', `ln', `ls', `mkdir', `mkfifo', `mknod', - `mv', `rm', `rmdir', `sync', `touch', & `vdir'. - - * Findutils (SrcCD) - - `find' is frequently used both interactively and in shell scripts to - find files which match certain criteria and perform arbitrary operations - on them. Also included are `locate', which scans a database for file - names that match a pattern, and `xargs', which applies a command to a - list of files. - - * Finger (SrcCD) - - GNU Finger has more features than other finger programs. For sites with - many hosts, a single host may be designated as the finger "server" host - and other hosts at that site configured as finger "clients". The server - host collects information about who is logged in on the clients. To - finger a user at a GNU Finger site, a query to any of its client hosts - gets useful information. GNU Finger supports many customization - features, including user output filters and site-programmable output for - special target names. - - * `flex' (BinCD, SrcCD) [FSFman, FSFrc] - - `flex' is a replacement for the `lex' scanner generator. `flex' was - written by Vern Paxson of the Lawrence Berkeley Laboratory and generates - far more efficient scanners than `lex' does. Sources for the `Flex - Manual' and reference card are included (*note Documentation::.). - - * Fontutils (SrcCD) - - The Fontutils convert between font formats, create fonts for use with - Ghostscript or TeX (starting with a scanned type image & converting the - bitmaps to outlines), etc. It includes: `bpltobzr', `bzrto', - `charspace', `fontconvert', `gsrenderfont', `imageto', `imgrotate', - `limn', & `xbfe'. - - * Fortran (`g77') *Also *note Forthcoming GNUs::.* (BinCD, SrcCD) - - GNU Fortran (`g77'), developed by Craig Burley, is available for public - beta testing on the Internet. For now, `g77' produces code that is - mostly object-compatible with `f2c' & uses the same run-time library - (`libf2c'). - - * `gawk' (SrcCD) [FSFman] - - `gawk' is upwardly compatible with the latest POSIX specification of - `awk'. It also provides several useful extensions not found in other - `awk' implementations. Texinfo source for the `The GNU Awk User's - Guide' comes with the software (*note Documentation::.). - - * `gcal' (SrcCD) - - `gcal' is a program for printing calendars. It displays different - styled calendar sheets, eternal holiday lists, and fixed date warning - lists. - - * GCC (BinCD, SrcCD) [FSFman] - - Version 2 of the GNU C Compiler supports the languages C, C++, and - Objective-C; the source file name suffix or a compiler option selects - the language. (Also see "GNAT" later in this article for Ada language - supports.) Objective-C support was donated by NeXT. The runtime support - needed to run Objective-C programs is now distributed with GCC. (This - does not include any Objective-C classes aside from `object', but see - "GNUstep" in *Note Forthcoming GNUs::.) G++ seeks to be compliant with - the ANSI C++ language standard. See - `http://www.cygnus.com/misc/wp/index.html' for the latest draft. - - GCC is a fairly portable optimizing compiler which performs many - optimizations. They include: automatic register allocation, common - sub-expression elimination (CSE) (including a certain amount of CSE - between basic blocks - though not all the supported machine descriptions - provide for scheduling or delay slots), invariant code motion from - loops, induction variable optimizations, constant propagation, copy - propagation, delayed popping of function call arguments, tail recursion - elimination, integration of inline functions & frame pointer elimination, - instruction scheduling, loop unrolling, filling of delay slots, leaf - function optimization, optimized multiplication by constants, the - ability to assign attributes to instructions, & many local optimizations - automatically deduced from the machine description. - - GCC can open-code most arithmetic on 64-bit values (type `long long - int'). It supports extended floating point (type `long double') on the - 68k; other machines will follow. GCC supports full ANSI C, traditional - C, & GNU C extensions (including: nested functions support, nonlocal - gotos, & taking the address of a label). - - GCC can generate a.out, COFF, ELF, & OSF-Rose files when used with a - suitable assembler. It can produce debugging information in these - formats: BSD stabs, COFF, ECOFF, ECOFF with stabs, & DWARF. - - GCC generates code for many CPUs, including the a29k, Alpha, ARM, AT&T, - DSP1610, Clipper, Convex cN, Elxsi, Fujitsu Gmicro, i370, i860, i960, - MIL-STD-1750a, MIPS, ns32k, PDP-11, Pyramid, ROMP, RS/6000, SH, SPUR, - Tahoe, VAX, & we32k. - - Position-independent code is generated for the Clipper, Hitachi H8/300, - HP-PA (1.0 & 1.1), i386/i486/Pentium, m68k, m88k, SPARC, & SPARClite. - - Operating systems supported include: GNU/Hurd, GNU/Linux, ACIS, AIX, AOS, - BSD, Clix, Concentrix, Ctix, DG/UX, Dynix, FreeBSD, Genix, HP-UX, Irix, - ISC, Luna, LynxOS, Minix, NetBSD, NewsOS, NeXTStep, OS/2, OSF, OSF-Rose, - RISCOS, SCO, Solaris 2, SunOS 4, System/370, SysV, Ultrix, Unos, VMS, & - Windows/NT. - - Using the configuration scheme for GCC, building a cross-compiler is as - easy as building a native compiler. - - Texinfo source for the `Using and Porting GNU CC' manual is included - with GCC (*note Documentation::.). - - * GDB (BinCD, SrcCD) [FSFman, FSFrc] - - GDB, the GNU DeBugger, is a source-level debugger for C, C++, & Fortran. - It provides partial support for Modula-2 & Chill. - - GDB can debug both C & C++, & will work with executables made by many - different compilers; but, C++ debugging will have some limitations if - you do not use GCC. - - GDB has a command line user interface, and Emacs has GDB mode as an - interface. Two X interfaces (not distributed or maintained by the FSF) - are: `gdbtk' (FTP it from `ftp.cygnus.com' in directory `/pub/gdb'); and - `xxgdb' (FTP it from `ftp.x.org' in directory `/contrib/utilities'). - - Executable files and symbol tables are read via the BFD library, which - allows a single copy of GDB to debug programs with multiple object file - formats (e.g., a.out, COFF, ELF). Other features include a rich command - language, remote debugging over serial lines or TCP/IP, and watchpoints - (breakpoints triggered when the value of an expression changes). - - GDB uses a standard remote interface to a simulator library which - includes simulators for the ARM, Hitachi H8/300, Hitachi SH, & PowerPC. - - GDB can perform cross-debugging. To say that GDB "targets" a platform - means it can perform native or cross-debugging for it. To say that GDB - can "host" a given platform means that it can be built on it, but cannot - necessarily debug native programs. - - GDB can: - - * "target" & "host": Amiga 3000 (AmigaOS, Amix, NetBSD), DEC Alpha - (OSF/1), DECstation 3100 & 5000 (Ultrix), HP 9000/300 (BSD, HP-UX), - HP 9000/700 (HP-UX 9, 10), i386/i486/Pentium (GNU/Hurd, GNU/Linux, - BSD, FreeBSD, LynxOS, NetBSD, SCO, Windows NT), IBM RS/6000 (AIX - 3.x, AIX 4.x, LynxOS), Motorola Delta m88k (System V, CX/UX), - Motorola m68k MVME-167 (LynxOS), NCR 3000 (SVR4), PC532 (NetBSD), - PowerPC (AIX 4.x, MacOS, Windows NT), SGI (Irix V3, V4, V5), SONY - News (NewsOS 3.x), SPARC (LynxOS, NetBSD, Solaris 2.x, & SunOS 4.1), - & Sun-3 (SunOS 4.1). - - * "target", but not "host": AMD 29000, ARM (RDP), Fujitsu SPARClite, - Hitachi H8/300, Hitachi SH (CMON, SH3, E7000), HP PA Pro (Winbond, - Oki), i960 (MON960, Nindy, VxWorks), m68k/m68332 (CPU32BUG, EST, - ROM68K, VxWorks), Matra Sparclet, MIPS (IDT, PMON, VxWorks), - PowerPC (PPCBug), & Z8000. - - * "host", but not "target": HP/Apollo 68k (BSD), IBM RT/PC (AIX), & - m68k Apple Macintosh (MacOS). Sources for the manual, - `Debugging with GDB', and a reference card are included (*note - Documentation::.). - - * `gdbm' (SrcCD) - - `gdbm' is the GNU replacement for the traditional `dbm' and `ndbm' - libraries. It implements a database using quick lookup by hashing. - `gdbm' does not ordinarily make sparse files (unlike its Unix and BSD - counterparts). - - * Generic NQS (SrcCD) - - Generic NQS is a network queuing system for spreading batch jobs across a - network of machines. It is designed to be simple to install on a - heterogeneous network of machines, and has optimizations for running on - the high end, symmetric multiprocessing servers that are currently on the - market. It is available for many more Unix variants than any other - comparable product, and inter-operates with other NQS systems, including - Cray's NQE. - - * `geomview' *See* `http://www.geom.umn.edu/software/geomview' (SrcCD) - - `geomview' is an interactive geometry viewing program, for Unix systems - with Motif, using X, GL, or OpenGL graphics. It allows multiple - independently controllable objects and cameras. External programs may - drive desired aspects of the viewer, e.g. loading changing geometry or - controlling motion, while allowing interactive mouse-and-GUI control of - everything else. Controllable features include motion, appearance - (wireframe, shading, lighting and material properties), mouse-based - selection, snapshoting (PPM or SGI image, Postscript, and RenderMan - formats), display in hyperbolic and spherical spaces, and projection - from higher dimensions. Includes converters to display Mathematica and - Maple 3-D graphics, and limited conversion to/from VRML. - - * `gettext' *Also *note Help the Translation Project::.* (SrcCD) - - The GNU `gettext' tool set has everything maintainers need to - internationalize a package's user messages. Once a package has been - internationalized, `gettext''s many tools help translators localize - messages to their native language and automate handling the translation - files. - - * `gforth' (SrcCD) - - `gforth' is a fast, portable implementation of the ANS Forth language. - - * Ghostscript (SrcCD) - - Ghostscript is an interpreter for the Postscript and PDF graphics - languages. - - The current version of GNU Ghostscript, 3.53, includes a Postscript - Level 2 interpreter and a PDF 1.1 interpreter (except for encryption). - Significant new features include the ability to convert PDF to - Postscript. - - Ghostscript executes commands in the Postscript and PDF languages by - writing directly to a printer, drawing on an X window, or writing to - files for printing later or manipulating with other graphics programs. - - Ghostscript includes a C-callable graphics library (for client programs - that do not want to deal with the Postscript language). It also runs on - MS-DOS, MS Windows, OS/2, OpenVMS, and Mac OS (native on both 68K and - PowerPC) (but please do *not* ask the FSF staff any questions about this; - we do not use these operating systems). - - * Ghostview (SrcCD) - - Tim Theisen, `ghostview@cs.wisc.edu', created Ghostview, a previewer for - multi-page files with an X Window interface. Ghostview & Ghostscript - work together; Ghostview creates a viewing window & Ghostscript draws in - it. - - * GIT (SrcCD) - - The GNU Interactive Tools package includes: an extensible file system - browser, an ASCII/hex file viewer, a process viewer/killer, & other - related utilities & shell scripts. It can be used to increase the speed - & efficiency of many daily tasks, such as copying & moving files & - directories, invoking editors, compressing/uncompressing files, creating - & expanding archives, compiling programs, sending mail, etc. It looks - nice, has colors (if the standard ANSI color sequences are supported), & - is user-friendly. - - * `gmp' (SrcCD) - - GNU `mp' is a library for arithmetic on arbitrary precision integers, - rational numbers, and floating-point numbers. It has a rich set of - functions with a regular interface. - - A major new release, version 2, came out in Spring '96. Compared to - previous versions, it is much faster, contains lots of new functions, & - has support for arbitrary precision floating-point numbers. - - * GN (SrcCD) - - GN is a gopher/HTTP server. - - * Gnans (SrcCD) - - Gnans is a program (and language) for the numerical study of - deterministic and stochastic dynamical systems. The dynamical systems - may evolve in continuous or discrete time. Gnans has graphical & - command line interfaces. - - * GNAT: The GNU Ada Translator (SrcCD) - - GNAT, a front end for the entire Ada 95 language, including all special - needs annexes, is available via anonymous FTP from `cs.nyu.edu' and - various mirror sites in `/pub/gnat'. SGI, DEC, and Siemens Nixdorf have - chosen GNU Ada 95 as the Ada compiler for some of their systems. GNAT - is maintained by Ada Core Technologies. For more information, see - `http://www.gnat.com'. - - * GNATS (SrcCD) - - GNATS, GNats: A Tracking System, is a bug-tracking system. It is based - upon the paradigm of a central site or organization which receives - problem reports and negotiates their resolution by electronic mail. - Although it has been used primarily as a software bug-tracking system so - far, it is sufficiently generalized that it could be used for handling - system administration issues, project management, or any number of other - applications. - - * GnuGo (SrcCD) - - GnuGo plays the game of Go. It is not yet very sophisticated. - - * GNUMATH (`gnussl') (SrcCD) - - GNUMATH is a library (`gnussl') that simplifies scientific programming - in C & C++. Its focus is on problems that can be solved by a - straight-forward application of numerical linear algebra. It also - handles plotting. It is in beta release; it is expected to grow more - versatile & offer a wider scope in time. - - * `gnuplot' (SrcCD) - - `gnuplot' is an interactive program for plotting mathematical - expressions and data. It plots both curves (2 dimensions) & surfaces (3 - dimensions). It was neither written nor named for the GNU Project; the - name is a coincidence. Various GNU programs use `gnuplot'. - - * `gnuserv' (SrcCD) - - `gnuserv' is an enhanced version of Emacs' `emacsclient' program. It - lets the user direct a running Emacs to edit files or evaluate arbitrary - Emacs Lisp constructs from another process. - - * `gpc' *Also *note GNUs Flashes::.* (SrcCD) - - `gpc' is the GNU Pascal Compiler. - - * grep (SrcCD) - - This package has GNU `grep', `egrep', and `fgrep', which find lines that - match entered patterns. They are much faster than the traditional Unix - versions. - - * Groff (SrcCD) - - Groff is a document formatting system based on a device-independent - version of `troff', & includes: `eqn', `nroff', `pic', `refer', `tbl', - `troff'; the `man', `ms', & `mm' macros; & drivers for Postscript, TeX - `dvi' format, the LaserJet 4 series of printers, and typewriter-like - devices. Groff's `mm' macro package is almost compatible with the DWB - `mm' macros with several extensions. Also included is a modified - version of the Berkeley `me' macros and an enhanced version of the X11 - `xditview' previewer. Written in C++, these programs can be compiled - with GNU C++ Version 2.7.2 or later. - - Groff users are encouraged to contribute enhancements. Most needed are - complete Texinfo documentation, a `grap' emulation (a `pic' preprocessor - for typesetting graphs), a page-makeup postprocessor similar to `pm' - (see `Computing Systems', Vol. 2, No. 2; ask `office@usenix.org' how to - get a copy), and an ASCII output class for `pic' to integrate `pic' with - Texinfo. Questions and bug reports from users who have read the - documentation provided with Groff can be sent to - `bug-groff@prep.ai.mit.edu'. - - * `guavac' (SrcCD) - - `guavac' is a new free compiler for the Java language. - - * GUILE *Also *note GNUs Flashes::.* (SrcCD) - - GUILE is GNU's Ubiquitous Intelligent Language for Extension, an - interpreter for the Scheme programming language, packaged as a library - that you can link into your programs to make them extensible. - - * `gzip' (BinCD, SrcCD) - - `gzip' can expand LZW-compressed files but uses another, unpatented - algorithm for compression which generally produces better results. It - also expands files compressed with System V's `pack' program. - - * `hello' (SrcCD) - - The GNU `hello' program produces a familiar, friendly greeting. It - allows non-programmers to use a classic computer science tool which would - otherwise be unavailable to them. Because it is protected by the GNU - General Public License, users are free to share and change it. `hello' - is also a good example of a program that meets the GNU coding standards. - Like any truly useful program, `hello' contains a built-in mail reader. - - * `hp2xx' (SrcCD) - - GNU `hp2xx' reads HP-GL files, decomposes all drawing commands into - elementary vectors, and converts them into a variety of vector and raster - output formats. It is also an HP-GL previewer. Currently supported - vector formats include encapsulated Postscript, Uniplex RGIP, Metafont, - various special TeX-related formats, and simplified HP-GL (line drawing - only) for imports. Raster formats supported include IMG, PBM, PCX, & - HP-PCL (including Deskjet & DJ5xxC support). Previewers work under X11 - (Unix), OS/2 (PM & full screen), & MS-DOS (SVGA, VGA, & HGC). - - * HylaFAX *Also see* `http://www.vix.com/hylafax/' (SrcCD) - - HylaFAX (once named FlexFAX) is a facsimile system for Unix systems. It - supports sending, receiving, & polled retrieval of facsimile, as well as - transparent shared data use of the modem. - - * Hyperbole (SrcCD) - - Hyperbole, written by Bob Weiner in Emacs Lisp, is an open, efficient, - programmable information management, autonumbered outliner, & hypertext - system, intended for everyday work on any platform Emacs runs on. - - * ID Utils (SrcCD) - - ID Utils is a package of simple, fast, high-capacity, - language-independent tools that index program identifiers, literal - numbers, or words of human-readable text. Queries can be issued from - the command-line, or from within Emacs, serving as an augmented tags - facility. - - * `indent' (SrcCD) - - GNU `indent' formats C source code into the GNU, BSD, K&R, or your own - special indentation style. GNU `indent' is more robust & provides more - functionality than other such programs, including handling C++ comments. - It runs on Unix, Windows, VMS, ATARI and other systems. - - The next version which formats C++ source code will soon be released. - - * Inetutils (SrcCD) - - Inetutils has common networking utilities & servers. - - Version 1.3a is more portable than previous releases: Inetutils now - works on GNU/Linux and SunOS/Solaris systems, although it still requires - a system with some degree of BSD compatibility. This release also has - many security holes plugged. - - * Ispell (SrcCD) - - Ispell is an interactive spell checker that suggests "near misses" to - replace unrecognized words. System & user-maintained dictionaries for - multiple languages can be used. Standalone & Emacs interfaces are - available. - - * JACAL *Not available from the FSF except by FTP* - - JACAL is a symbolic mathematics system for the manipulation & - simplification of algebraic expressions & equations. - - The FSF is not distributing JACAL on any physical media. You can FTP it, - or visit the Web site `http://www-swiss.ai.mit.edu/~jaffer/JACAL.html'. - - * jargon (SrcCD) - - The jargon file is the online version of `The New Hacker's Dictionary'. - - * Karma (SrcCD) - - Karma is a signal and image processing library and visualization toolkit - that provides interprocess communications, authentication, graphics - display, and user interface to and manipulation of the Karma network - data structure. Several foreign data formats are also supported. Karma - comes packaged with a number of generic visualization tools and some - astronomy-specific tools. - - * `less' (SrcCD) - - `less' is a display paginator similar to `more' and `pg', but with - various features (such as the ability to scroll backwards) that most - pagers lack. - - * LessTif (SrcCD) - - LessTif is a free clone of Motif. - - * Libtool (SrcCD) - - GNU libtool is a generic library support script which manages the - complexity of building and linking against shared libraries. Libtool - allows source code package maintainers to easily add shared library - support without breaking static-only platform compatibility. - - Libtool supports building static libraries on all known platforms. - Shared library support has been implemented for several platforms. - - * Lynx *Also see* `http://lynx.browser.org' (SrcCD) - - Lynx is a text-only World Wide Web browser for those running - character-only ("cursor-addressable") terminals or terminal emulators. - - * `m4' (SrcCD) - - GNU `m4' is an implementation of the traditional Unix macro processor. - It is mostly SVR4 compatible, although it has some extensions (e.g., - handling more than 9 positional parameters to macros). `m4' also has - built-in functions for including files, running shell commands, doing - arithmetic, etc. - - * `make' (BinCD, SrcCD) [FSFman] - - GNU `make' supports POSIX 1003.2 and has all but a few obscure features - of the BSD and System V versions of `make', and runs on MS-DOS, - AmigaDOS, VMS, & Windows NT or 95, as well as all Unix-compatible - systems. GNU extensions include long options, parallel compilation, - flexible implicit pattern rules, conditional execution, & powerful text - manipulation functions. Source for the `Make Manual' comes with the - program (*note Documentation::.). - - * MandelSpawn (SrcCD) - - A parallel Mandelbrot generation program for the X Window System. - - * Maxima (SrcCD) - - Maxima is a Common Lisp implementation of MIT's Macsyma system for - computer based algebra. - - * MCSim (SrcCD) - - MCSim is a general purpose modeling and simulation program which also - performs standard or Markov chain Monte Carlo simulations. It allows - you to specify a set of linear or nonlinear equations (eventually - differential), and solve them using parameter values you choose or - parameter values sampled from specified statistical distributions. - Simulation outputs can be compared to experimental data for parameter - estimation. - - * Meta-HTML (SrcCD) - - <Meta-HTML> is a programming language specifically designed for working - within the World Wide Web environment. Although it is a genuine - programming language, suitable for large-scale symbolic manipulation, it - provides the most commonly wanted Web functionality as built-in - primitives, so you don't have to write them. - - * Midnight Commander (`mc') (SrcCD) - - The Midnight Commander is a user friendly & colorful Unix file manager & - shell, useful to novice & guru alike. It has a built-in virtual file - system that manipulates files inside tar files or files on remote - machines using the FTP protocol. This mechanism is extendable with - external Unix programs. - - * Miscellaneous Files Distribution (SrcCD) - - The GNU Miscellaneous Files are non-crucial files that are common on - various systems, including word lists, airport codes, ZIP codes etc. - - * `mkisofs' (SrcCD) - - `mkisofs' is a pre-mastering program to generate an ISO 9660 file system. - It takes a snapshot of a directory tree, and makes a binary image which - corresponds to an ISO 9660 file system when written to a block device. - - It can also generate the System Use Sharing Protocol records of the Rock - Ridge Interchange Protocol (used to further describe the files in an ISO - 9660 file system to a Unix host; it provides information such as longer - filenames, uid/gid, permissions, and device nodes). - - The `mkisofs' program is often used with `cdwrite'. The `cdwrite' - program works by taking the image that `mkisofs' generates and driving a - cdwriter drive to actually burn the disk. `cdwrite' works under - GNU/Linux, and supports popular cdwriter drives. Older versions of - `cdwrite' were included with older versions of `mkisofs'; - `sunsite.unc.edu' has the latest version: - `/pub/Linux/utils/disk-management/cdwrite-2.0.tar.gz'. - - * `mtools' (SrcCD) - - `mtools' is a collection of utilities to access MS-DOS disks from Unix - without mounting them. It supports Windows 95 style long file names, - OS/2 Xdf disks, ZIP/JAZ disks and 2m disks (store up to 1992k on a high - density 3 1/2 disk). - - * MULE *Also *note GNUs Flashes::.* (SrcCD) - - MULE is a MULtilingual Enhancement to GNU Emacs. MULE text buffers can - contain a mix of characters from many languages including: Japanese, - Chinese, Korean, Vietnamese, Thai, modern European languages (including - Greek & Russian), Arabic, & Hebrew. MULE also provides input methods - for all of them. *Note GNU & Other Free Software in Japan::, for more - information about MULE. - - The version 20 release of Emacs includes the MULE features, making MULE - itself obsolete. - - * `mutt' *Also see* `http://www.cs.hmc.edu/~me/mutt' (SrcCD) - - Mutt is a small but very powerful mail client: a hybrid, or "mutt," - consisting of features from various other curses-based e-mail clients. - - * NetHack (SrcCD) - - NetHack is a display-oriented adventure game similar to Rogue. ASCII, - X11, and various PC based GUI displays are supported. - - NetHack runs on GNU/Linux, Amiga, Atari, BeBox, Mac, MS Windows, MS-DOS, - OS/2, Unix, VMS, and Windows NT. - - The current release of NetHack is 3.2.2. Bug reports concerning NetHack - should be sent to `nethack-bugs@linc.cis.upenn.edu'. - - * NIH Class Library (SrcCD) - - The NIH Class Library is a set of C++ classes (similar to - Smalltalk-80's) written in C++ by Keith Gorlen of the National Institutes - of Health (NIH). - - * `nvi' (SrcCD) - - `nvi' is an implementation of the `ex'/`vi' Unix editor. It has all the - functionality of the original `ex'/`vi', except `open' mode & the `lisp' - edit option. Enhancements include multiple buffers, command-line - editing & path completion, integrated Perl5 & Tcl scripting languages, - Cscope support & tag stacks, 8-bit data support, infinite file/line - lengths, infinite undo, language catalogs, incremental search, extended - regular expressions, and security fixes. It uses Autoconf for - configuration and runs on any Unix-like system. - - * Oaklisp (SrcCD) - - Oaklisp is a fast, portable, object-oriented Scheme with first class - types. - - * Objective-C Library (SrcCD) - - Our Objective-C Class Library (`gstep-base.tar.gz', `libgnustep-base') - has general-purpose, non-graphical Objective-C objects written by Andrew - McCallum & others. It includes collection classes for maintaining - groups of objects, I/O streams, coders for formatting objects & C types - to streams, ports for network packet transmission, distributed objects - (remote object messaging), string classes, invocations, notifications, - event loops, timers, exceptions, pseudo-random number generators, & - more. It has the base classes for the GNUstep project; all but a few of - them have already been written. Send queries & bugs to - `mccallum@gnu.ai.mit.edu'. See "GNUstep" in *Note Forthcoming GNUs::. - - * OBST (SrcCD) - - OBST is a persistent object management system with bindings to C++. - OBST supports incremental loading of methods. Its graphical tools - require the X Window System. It features a hands-on tutorial including - sample programs. It compiles with G++, and should install easily on - most Unix platforms. - - * Octave *Also see* `http://www.che.wisc.edu/octave' (SrcCD) - - Octave does arithmetic for real and complex scalars and matrices, solves - sets of nonlinear algebraic equations, integrates systems of ordinary - differential & differential-algebraic equations, and integrates - functions over finite & infinite intervals. Two- & three-dimensional - plotting is available using `gnuplot'. - - Version 2.0.9 of Octave was released in July. It includes support for - dynamically linked functions, user-defined data types, many new - functions, & a completely revised manual. Octave works on most Unix - systems, OS/2, and Windows NT/95. - - * Oleo (SrcCD) - - Oleo is a spreadsheet program (better for you than the more expensive - spreadsheets). It supports the X Window System and character-based - terminals, and can output Embedded Postscript renditions of spreadsheets. - Keybindings should be familiar to Emacs users and are configurable. - Oleo supports multiple variable-width fonts when used under the X Window - System or outputting to Postscript devices. - - * `p2c' (SrcCD) - - `p2c' is Dave Gillespie's Pascal-to-C translator. It inputs many - dialects (HP, ISO, Turbo, VAX, etc.) & generates readable, - maintainable, portable C. - - * `patch' (SrcCD) - - `patch' applies `diff''s output to a set of original files to generate - the modified versions. Recent versions of GNU `patch' can update binary - files, and can remove files and directories when they become obsolete. - - * PCL (SrcCD) - - PCL is a free implementation of a large subset of CLOS, the Common Lisp - Object System. It runs under both GCL and CLISP, mentioned above. - - * `perl' (SrcCD) - - Larry Wall's `perl' combines the features & capabilities of C, `sed', - `awk', & `sh', and provides interfaces to the Unix system calls & many C - library routines. - - * `phttpd' (SrcCD) - - `phttpd' is a high speed World Wide Web server using multithreading, - memory mapping, and dynamic linking to achieve its goals of high speed, - scalability, and light weight. It is currently supported only on - Solaris (SunOS5). - - * plotutils (SrcCD) - - The GNU plotutils (plotting utilities) package includes `libplot', a - subroutine library for producing 2-D device-independent vector graphics, - and `graph', a sample application for plotting 2-D scientific data that - is built on top of `libplot'. Supported devices include X Window System - displays, Postscript devices, and Tektronix emulators. `xfig' output - format, which can be edited with the free graphics editor `xfig', is - also supported. The Postscript output format includes directives which - allow it to be edited with the `idraw' graphics editor. Included with - `graph' are `spline', a program that uses splines in tension to - interpolate data, and `ode', an application that will numerically - integrate a system of ordinary differential equations. - - * PRCS (SrcCD) - - PRCS, the Project Revision Control System, is a version control program - with purpose similar to that of CVS. It was designed with simplicity in - mind. Like CVS, PRCS uses RCS to accomplish this task, but this is - inconsequential to the user, as RCS is completely hidden beneath a layer - of abstraction. - - * `ptx' (SrcCD) - - GNU `ptx' is our version of the traditional permuted index generator. - It handles multiple input files at once, has TeX compatible output, & - outputs readable "KWIC" (KeyWords In Context) indexes without using - `nroff'. Plans are to merge this package into `textutils'. - - It does not yet handle input files that do not fit in memory all at once. - - * `rc' (SrcCD) - - `rc' is a shell that features a C-like syntax (much more so than `csh') - and far cleaner quoting rules than the C or Bourne shells. It's - intended to be used interactively, but is also great for writing - scripts. It inspired the shell `es'. - - * RCS (SrcCD) - - RCS, the Revision Control System, is used for version control & - management of software projects. Used with GNU `diff', RCS can handle - binary files (8-bit data, executables, object files, etc). RCS now - conforms to GNU configuration standards & to POSIX 1003.1b-1993. Also - see the CVS item above. - - * `readline' (BinCD, SrcCD) - - Brian Fox wrote the `readline' library one weekend in 1987, so that the - FSF would have a clean Emacs-like line editing facility that could be - used across multiple programs. After installing it in Bash, he went on - to test the reusability of the code by adding it to GDB, and then later, - to the GNU FTP client. The library supplies many entry points--the - simplest interface gives any program the ability to store a history of - input lines, and gives the end user a complete Emacs-like (or vi-like) - editing capability over the input, simply by replacing calls to `gets' - with calls to `readline'. - - * `recode' *Also *note Forthcoming GNUs::.* (SrcCD) - - GNU `recode' converts files between character sets and usages. When - exact transliterations are not possible, it may delete the offending - characters or fall back on approximations. This program recognizes or - outputs nearly 150 different character sets and is able to transliterate - files between almost any pair. Most RFC 1345 character sets are - supported. - - * `regex' (SrcCD) - - The GNU regular expression library supports POSIX.2, except for - internationalization features. It is included in many GNU programs which - do regular expression matching & is available separately. An alternate - regular expression package, `rx', is faster than `regex' in many cases; - we were planning to replace `regex' with `rx', but it is not certain - this will happen. - - * Roxen (SrcCD) - - Roxen is a modularized, object-oriented, non-forking World Wide Web - server with high performance and throughput, and capabilities for on the - fly image generation (`http://www.roxen.com'). It was formerly named - Spinner, but was renamed for trademark reasons. - - * `rsync' (SrcCD) - - `rsync' is a replacement for `rcp' that has many more features. `rsync' - uses the "rsync algorithm", which provides a very fast method for - synchronizing large remote files, sending only the differences across - the link. It does not require both versions of a file to be local in - order to compute the differences. A technical report describing the - rsync algorithm is included with the package. - - * `rx' (SrcCD) - - Tom Lord has written `rx', a new regular expression library which is - generally faster and more correct than the older GNU `regex' library. - - * SAOimage (SrcCD) - - SAOimage is an X-based astronomical image viewer. It reads array data - images, which may be in specific formats, and displays them with a - pseudocolor colormap. There is full interactive control of the - colormap, panning and zooming, graphical annotation, and cursor tracking - in pixel and sky coordinates, among other features. - - * `screen' (SrcCD) - - `screen' is a terminal multiplexer that runs several separate "screens" - (ttys) on a single character-based terminal. Each virtual terminal - emulates a DEC VT100 plus several ISO 2022 and ISO 6429 (ECMA 48, ANSI - X3.64) functions, including color. Arbitrary keyboard input translation - is also supported. `screen' sessions can be detached and resumed later - on a different terminal type. Output in detached sessions is saved for - later viewing. - - * `sed' (SrcCD) - - `sed' is a stream-oriented version of `ed'. It comes with the `rx' - library. - - * Sharutils (SrcCD) - - `shar' makes so-called shell archives out of many files, preparing them - for transmission by electronic mail services; `unshar' helps unpack - these shell archives after reception. `uuencode' and `uudecode' are - POSIX compliant implementations of a pair of programs which transform - files into a format that can be safely transmitted across a 7-bit ASCII - link. - - * Shellutils (SrcCD) - - The Shellutils are: `basename', `chroot', `date', `dirname', `echo', - `env', `expr', `factor', `false', `groups', `hostname', `id', `logname', - `nice', `nohup', `pathchk', `printenv', `printf', `pwd', `seq', `sleep', - `stty', `su', `tee', `test', `true', `tty', `uname', `uptime', `users', - `who', `whoami', & `yes'. - - * Shogi (SrcCD) - - Shogi is a Japanese game similar to Chess; a major difference is that - captured pieces can be returned into play. - - GNU Shogi is a variant of GNU Chess; it implements the same features & - similar heuristics. As a new feature, sequences of partial board - patterns can be introduced to help the program play toward specific - opening patterns. It has both character and X display interfaces. - - It is primarily supported by Matthias Mutz on behalf of the FSF. - - * SIPP (SrcCD) - - SIPP is a library for photorealistically rendering 3D scenes. Scenes can - be illuminated by an arbitrary number of light sources; they are built up - of object hierarchies, with arbitrarily many subobjects and subsurfaces. - Surfaces can be rendered with either Phong, Gouraud, or flat shading. - The library supports programmable shaders and texture mapping. - - * Smail (SrcCD) - - Smail is a mail transport system, designed as a compatible drop-in - replacement for `sendmail'. It uses a much simpler configuration format - than `sendmail' and is designed to be setup with minimal effort. - - * Smalltalk (SrcCD) - - GNU Smalltalk is an interpreted object-oriented programming language - system written in highly portable C. It has been ported to MS-DOS, many - Unixes, & other OSes. Features include a binary image save capability, - the ability to call user-written C code with parameters, an Emacs - editing mode, a version of the X protocol invocable from Smalltalk, - optional byte-code compilation and/or execution tracing, & automatically - loaded per-user initialization files. It implements all of the classes - & protocol in the book "Smalltalk-80: The Language", except for the - graphic user interface (GUI) related classes. - - * SNePS (SrcCD) - - SNePS is the Semantic Network Processing System. It is an - implementation of a fully intensional theory of propositional knowledge - representation and reasoning. SNePS runs under CLISP or GCL. - - * `spell' (SrcCD) - - GNU `spell' is a clone of standard Unix `spell', implemented as a - wrapper to `ispell'. - - * `stow' (SrcCD) - - `stow' manages the installation of multiple software packages, keeping - them separate while making them appear (via symbolic links) to be - installed in the same place. For example, Emacs can be installed in - `/usr/local/stow/emacs' and Perl in `/usr/local/stow/perl', permitting - each to be administered separately, while with `stow' they will both - appear to be installed in `/usr/local'. - - * Superopt (SrcCD) - - Superopt is a function sequence generator that uses an exhaustive - generate-and-test approach to find the shortest instruction sequence for - a given function. You provide a function as input, a CPU to generate - code for, and how many instructions you want. Its use in GCC is - described in the `ACM SIGPLAN PLDI'92 Proceedings'. It supports: SPARC, - m68k, m68020, m88k, IBM POWER and PowerPC, AMD 29k, Intel x86 & 960, - Pyramid, DEC Alpha, Hitachi SH, & HP-PA. - - * Swarm (SrcCD) - - Swarm is a software package for multi-agent simulation of complex systems - being developed at The Santa Fe Institute. Swarm is intended to be a - useful tool for researchers in a variety of disciplines, especially - artificial life. The basic architecture of Swarm is the simulation of - collections of concurrently interacting agents: with this architecture, - a large variety of agent based models can be implemented. - - * `tar' (BinCD, SrcCD) - - GNU `tar' includes multi-volume support, the ability to archive sparse - files, compression/decompression, remote archives, and special features - that allow `tar' to be used for incremental and full backups. GNU `tar' - uses an early draft of the POSIX 1003.1 `ustar' format which is - different from the final version. This will be corrected in the future. - - * Termcap Library (SrcCD) [FSFman] - - The GNU Termcap library is a drop-in replacement for `libtermcap.a' on - any system. It does not place an arbitrary limit on the size of Termcap - entries, unlike most other Termcap libraries. Included is source for the - `Termcap Manual' in Texinfo format (*note Documentation::.). - - * Termutils (SrcCD) - - The Termutils package contains programs for controlling terminals. - `tput' is a portable way for shell scripts to use special terminal - capabilities. `tabs' is a program to set hardware terminal tab settings. - - * TeX (SrcCD) - - TeX is a document formatter that is used, among other things, by the FSF - for all its printed documentation. You will need it if you want to make - printed manuals. See `http://www.tug.org/web2c/'. - - The Source Code CD-ROM contains a minimal TeX collection, sufficient to - process Texinfo files. For a complete TeX distribution, including both - sources and precompiled binaries for many platforms, consider teTeX. - This is available on CD-ROM (see `http://www.tug.org/texlive.html'), or - by FTP. The FTP instructions change too frequently to include them here; - see `ftp://ftp.tug.org/tex/unixtex.ftp'. - - * Texinfo (SrcCD) [FSFman] - - Texinfo is a set of utilities (`makeinfo', `info', `install-info', - `texi2dvi', `texindex', & `texinfmt.el') which generate printed manuals, - plain ASCII text, & online hypertext documentation (called "Info"), & - can read online Info documents; Info files can also be read in Emacs. - Version 3 has both Emacs Lisp & standalone programs written in C or as - shell scripts. Texinfo mode for Emacs enables easy editing & updating - of Texinfo files. Source for the `Texinfo Manual' is included (*note - Documentation::.). - - * Textutils (SrcCD) - - The Textutils programs manipulate textual data. They include: `cat', - `cksum', `comm', `csplit', `cut', `expand', `fmt', `fold', `head', - `join', `md5sum', `nl', `od', `paste', `pr', `sort', `split', `sum', - `tac', `tail', `tr', `unexpand', `uniq', and `wc'. - - * TIFF library (SrcCD) - - The TIFF library, `libtiff', is a library for manipulating Tagged Image - File Format files, a commonly used bitmap graphics format. - - * Tile Forth (SrcCD) - - Tile Forth is a 32-bit implementation of the Forth-83 standard written - in C, allowing it to be easily ported to new systems & extended with any - C-function (graphics, windowing, etc). - - Many documented Forth libraries are available, e.g. top-down parsing, - multi-threads, & object-oriented programming. - - * `time' (SrcCD) - - `time' reports (usually from a shell) the user, system, & real time used - by a process. On some systems it also reports memory usage, page - faults, etc. - - * `ucblogo' (SrcCD) - - `ucblogo' implements the classic teaching language, Logo. - - * `units' - - GNU `units' converts between different units of measurement, such as - miles/gallon to km/liter. (It can only handle multiplicative scale - changes, so it cannot convert Celsius to Fahrenheit though it could - convert temperature differences between those temperatures scales.) - - * UUCP (SrcCD) - - GNU's UUCP system (written by Ian Lance Taylor) supports the `f', `g' - (all window & packet sizes), `v', `G', `t', `e', Zmodem, & two new - bidirectional (`i' & `j') protocols. With a BSD sockets library, it can - make TCP connections. With TLI libraries, it can make TLI connections. - Source is included for a manual (not yet published by the FSF). - - * vera (SrcCD) - - VERA (Virtual Entity of Relevant Acronyms) is a document listing - thousands of acronyms of the computer field. - - * viewfax (SrcCD) - - Viewfax is a tool for displaying fax files on an X display. It can - display raw, digifax or tiff/f files, such as those received by HylaFAX. - - * W3 (SrcCD) - - W3 (written by William Perry in Emacs Lisp) is an extensible, advanced - World Wide Web browser that runs as part of Emacs. It supports all the - bells and whistles you find on the Web today, including frames, tables, - stylesheets, and much more. See - `http://www.cs.indiana.edu/elisp/w3/docs.html'. - - * `wdiff' (SrcCD) - - `wdiff' is a front-end to GNU `diff'. It compares two files, finding - the words deleted or added to the first to make the second. It has many - output formats and works well with terminals and pagers. `wdiff' is - very useful when two texts differ only by a few words and paragraphs - have been refilled. Plans are to merge this package into `diffutils'. - - * `Wget' (SrcCD) - - `Wget' non-interactively retrieves files from the WWW using HTTP & FTP. - It is suitable for use in shell scripts. - - * `windows32api' (SrcCD) - - `windows32' is a set of header files & import libraries that can be used - by GNU tools for compiling & linking programs to be run on Windows NT/95. - - * WN (SrcCD) - - WN is a World Wide Web server designed to be secure and flexible. It - offers many different capabilities in pre-parsing files before passing - them to the client, and has a very different design from Apache and the - NCSA server. - - * X11 (SrcCD) - - We distribute Version 11, Release 6.3 of the X Window System with the - latest patches & bug fixes. X11 includes all of the core software, - documentation, contributed clients, libraries, & toolkits, games, etc. - - While supplies last, we will distribute X11R5 on the November 1993 - Source Code CD-ROM. - - * `xboard' (SrcCD) - - `xboard' is a graphical chessboard for X Windows. It can serve as a - user interface to the Crafty or GNU chess programs, the Internet Chess - Servers, e-mail correspondence chess, or games saved in Portable Game - Notation. - - * `xgrabsc' (SrcCD) - - `xgrabsc' is a screen capture program similar to `xwd' but with a - graphical user interface, more ways of selecting the part of the screen - to capture, & different types of output: Postscript, color Postscript, - xwd, bitmap, pixmap, & puzzle. - - * `xinfo' (SrcCD) - - `xinfo' is an X-windows program for reading Info files. It uses a - special widget, which is available for use in other programs. - - * xmcd *Also see* `http://sunsite.unc.edu/~cddb/xmcd/' (SrcCD) - - `xmcd' is an X11-based CD player utility and `cda' is a command-line - driven, non-graphical CD audio player. `xmcd' is developed to use the - OSF/Motif API (version 1.1 and later) and can also be used with LessTif, - the free Motif clone. - - In its evolution over the past few years, `xmcd' has established itself - as the premier CD player application for the X window system with an - attractive, easy-to-use user interface. It is feature-rich and runs on - virtually all of the popular Unix and OpenVMS platforms. It also - supports the widest array of CD-ROM and CD-R devices, including some - older SCSI-1 drives that do not work with other CD player applications. - The remote CD database query feature fully utilizes the Internet and - taps on a vast repository of CD artists/titles, track titles and other - information. Multi-disc changers are also supported. - - Like many other CD player applications, `xmcd' supports a CD database of - disc and track titles and other information. A distinguishing feature - of `xmcd' is the ability to connect to a remote CD database server to - query this information. Many public Internet CD database servers have - been established around the world for this purpose, and `xmcd' also - allows the user to submit new CD entries to the master database. - - * `xshogi' (SrcCD) - - `xshogi' is a graphical Shogi (Japanese Chess) board for the X Window - System. It can serve as a user interface to GNU Shogi, as a referee for - games between two humans, or as a client for the Internet Shogi Server. - - * `Ygl' (SrcCD) - - `Ygl' emulates a subset of SGI's GL (Graphics Language) library under - X11 on most platforms with an ANSI C compiler (including GCC). It has - most two-dimensional graphics routines, the queue device & query - routines, double buffering, RGB mode with dithering, Fortran bindings, - etc. - - * zlibc (SrcCD) - - Zlibc is an uncompressing C library for GNU/Linux and SunOS systems. It - is a preloadable shared object that allows executables to uncompress the - datafiles that they need on the fly. No kernel patch, no recompilation - of these executables and no recompilation of the libraries is needed; - the package overrides the `open' function (and other system call - functions) in the shared library. - - - -Program/Package Cross Reference -******************************* - -Here is a list of the package each GNU program or library is in. You can FTP -the current list in the file `/pub/gnu/ProgramIndex' from a GNU FTP host -(*note How to Get GNU Software::.). - - * 4dview geomview - - * a2p perl - * a2x xopt - * ac bsd44 - * accton bsd44 - * ackpfd phttpd - * acl bsd44 - * acm acm - * acms acm - * addbbox geomview - * addftinfo Groff - * adventure bsd44 - * afm2tfm TeX - * aid ID Utils - * amd bsd44 - * ansitape bsd44 - * AnswerGarden xopt - * apply bsd44 - * appres xreq - * apropos bsd44 - * ar Binutils - * arithmetic bsd44 - * arp bsd44 - * atc bsd44 - * authwn WN - * autoconf Autoconf - * autoheader Autoconf - * automake Automake - * autoreconf Autoconf - * autoscan Autoconf - * autoupdate Autoconf - * auto_box xopt - * auto_box xreq - - * b2m Emacs - * backgammon bsd44 - * bad144 bsd44 - * badsect bsd44 - * banner bsd44 - * basename Shellutils - * bash BASH - * battlestar bsd44 - * bc bc - * bcd bsd44 - * bdes bsd44 - * bdftops Ghostscript - * beach_ball xopt - * beach_ball xreq - * beach_ball2 xopt - * bibtex TeX - * biff bsd44 - * bison Bison - * bitmap xreq - * boggle bsd44 - * bpltobzr Fontutils - * bugfiler bsd44 - * buildhash Ispell - * bzrto Fontutils - - * c++ GCC - * c++filt Binutils - * c2ph perl - * ca100 xopt - * caesar bsd44 - * cal bsd44 - * calendar bsd44 - * canfield bsd44 - * cat Textutils - * cbars wdiff - * cc GCC - * cc1 GCC - * cc1obj GCC - * cc1plus GCC - * cccp GCC - * cdwrite mkisofs - * cfengine cfengine - * cgi Spinner - * charspace Fontutils - * checknr bsd44 - * chess bsd44 - * chflags bsd44 - * chgrp Fileutils - * ching bsd44 - * chmod Fileutils - * chown Fileutils - * chpass bsd44 - * chroot bsd44 - * ci RCS - * cksum Textutils - * cktyps g77 - * clisp CLISP - * clri bsd44 - * cmail xboard - * cmmf TeX - * cmodext xopt - * cmp Diffutils - * co RCS - * col bsd44 - * colcrt bsd44 - * colrm bsd44 - * column bsd44 - * comm Textutils - * compress bsd44 - * comsat bsd44 - * connectd bsd44 - * cp Fileutils - * cpicker xopt - * cpio cpio - * cpp GCC - * cppstdin perl - * cribbage bsd44 - * crock xopt - * csh bsd44 - * csplit Textutils - * ctags Emacs - * ctwm xopt - * cu UUCP - * cut Textutils - * cvs CVS - * cvscheck CVS - * cvtmail Emacs - * cxterm xopt - - * d Fileutils - * date Shellutils - * dc bc - * dd Fileutils - * ddd DDD - * defid ID Utils - * delatex TeX - * demangle Binutils - * descend CVS - * detex TeX - * df Fileutils - * dhtppd phttpd - * diff Diffutils - * diff3 Diffutils - * diffpp enscript - * digest-doc Emacs - * dipress bsd44 - * dir Fileutils - * dircolors Fileutils - * dirname Shellutils - * dish xopt - * disklabel bsd44 - * diskpart bsd44 - * dld dld - * dm bsd44 - * dmesg bsd44 - * doschk doschk - * dox xopt - * du Fileutils - * dump bsd44 - * dump mkisofs - * dumpfs bsd44 - * dvi2tty TeX - * dvicopy TeX - * dvips TeX - * dvitype TeX - - * ecc ecc - * echo Shellutils - * ed ed - * edit-pr GNATS - * editres xreq - * edquota bsd44 - * eeprom bsd44 - * egrep grep - * eid ID Utils - * emacs Emacs - * emacsclient Emacs - * emacsserver Emacs - * emacstool Emacs - * emu xopt - * enscript enscript - * env Shellutils - * eqn Groff - * error bsd44 - * es es - * esdebug es - * etags Emacs - * ex nvi - * example geomview - * exicyclog Exim - * exigrep Exim - * exim Exim - * eximon Exim - * eximon Exim - * eximstats Exim - * exinext Exim - * exiwhat Exim - * expand Textutils - * expect DejaGnu - * expr Shellutils - * exterm xopt - - * f2c f2c - * factor bsd44 - * fakemail Emacs - * false Shellutils - * fastboot bsd44 - * fax2ps HylaFAX - * faxalter HylaFAX - * faxanswer HylaFAX - * faxcover HylaFAX - * faxd HylaFAX - * faxd.recv HylaFAX - * faxmail HylaFAX - * faxquit HylaFAX - * faxrcvd HylaFAX - * faxrm HylaFAX - * faxstat HylaFAX - * fc f2c - * fdraw xopt - * ffe g77 - * fgrep grep - * fid ID Utils - * file bsd44 - * find Findutils - * find2perl perl - * finger Finger - * fingerd Finger - * fish bsd44 - * fixfonts Texinfo - * fixinc.svr4 GCC - * fixincludes GCC - * flex flex - * flex++ flex - * flythrough geomview - * fmt bsd44 - * fnid ID Utils - * fold Textutils - * font2c Ghostscript - * fontconvert Fontutils - * forth Tile Forth - * forthicon Tile Forth - * forthtool Tile Forth - * fortune bsd44 - * fpr bsd44 - * freq Ispell - * freqtbl Ispell - * from bsd44 - * fsck bsd44 - * fsplit bsd44 - * fstat bsd44 - * ftp bsd44 - * ftp Inetutils - * ftpd bsd44 - * ftpd Inetutils - - * g++ GCC - * gas Binutils - * gawk GAWK - * gcal gcal - * gcc GCC - * gcore bsd44 - * gdb GDB - * genclass libg++ - * geomstuff geomview - * gettext gettext - * getty bsd44 - * gftodvi TeX - * gftopk TeX - * gftype TeX - * ghostview Ghostview - * gid ID Utils - * ginsu geomview - * git GIT - * gitaction GIT - * gitcmp GIT - * gitkeys GIT - * gitmatch GIT - * gitmount GIT - * gitps GIT - * gitredir GIT - * gitrgrep GIT - * gitview GIT - * gitwipe GIT - * gn GN - * gnans Gnans - * gnanslator Gnans - * gnats GNATS - * gnuchess Chess - * gnuchessc Chess - * gnuchessn Chess - * gnuchessr Chess - * gnuchessx Chess - * gnuclient gnuserv - * gnudoit gnuserv - * gnupdisp Shogi - * gnuplot gnuplot - * gnuplot_x11 gnuplot - * gnuserv gnuserv - * gnushogi Shogi - * gnushogir Shogi - * gnushogix Shogi - * go GnuGo - * gpc xopt - * gpc xreq - * gperf cperf - * gperf libg++ - * gprof Binutils - * graffiti geomview - * graph Graphics - * grep grep - * grodvi Groff - * groff Groff - * grops Groff - * grotty Groff - * groups Shellutils - * gs Ghostscript - * gsbj Ghostscript - * gsdj Ghostscript - * gslj Ghostscript - * gslp Ghostscript - * gsnd Ghostscript - * gsrenderfont Fontutils - * gunzip gzip - * gvclock geomview - * gwm xopt - * gzexe gzip - * gzip gzip - - * h2ph perl - * h2pl perl - * hack bsd44 - * hangman bsd44 - * head Textutils - * hello hello - * hexdump bsd44 - * hexl Emacs - * hinge geomview - * hostname Shellutils - * hp2xx hp2xx - * hterm xopt - * htmlencode phttpd - * httpd apache - * httpdecode phttpd - - * i18nOlwmV2 xopt - * i2mif xopt - * ico xopt - * ico xreq - * id Shellutils - * ident RCS - * ifconfig bsd44 - * ifnames Autoconf - * ImageMagick xopt - * imageto Fontutils - * iman xopt - * imgrotate Fontutils - * indent indent - * indxbib Groff - * inetd bsd44 - * inetd Inetutils - * info Texinfo - * inimf TeX - * init bsd44 - * initex TeX - * inn bsd44 - * install Fileutils - * iostat bsd44 - * isodiag mkisofs - * isodump mkisofs - * ispell Ispell - * ixterm xopt - * ixx xopt - - * join Textutils - * jot bsd44 - * jove bsd44 - - * kdestroy bsd44 - * kdump bsd44 - * kermit bsd44 - * kgames xopt - * kgmon bsd44 - * kill bsd44 - * kinit bsd44 - * kinput2 xopt - * klist bsd44 - * kpasswdd bsd44 - * ksrvtgt bsd44 - * kterm xopt - * ktrace bsd44 - - * lam bsd44 - * larn bsd44 - * lasergnu gnuplot - * last bsd44 - * lastcomm bsd44 - * latex TeX - * lclock xopt - * ld Binutils - * leave bsd44 - * less less - * lesskey less - * libavcall.a ffcall - * libbfd.a Binutils - * libbfd.a GDB - * libbzr.a Fontutils - * libc.a C Library - * libcompat.a bsd44 - * libcurses.a bsd44 - * libcurses.a ncurses - * libdcurses.a ncurses - * libedit.a bsd44 - * libF77.a f2c - * libF77.a g77 - * libg++.a libg++ - * libgdbm.a gdbm - * libgf.a Fontutils - * libgmp.a gmp - * libgnanslib.a Gnans - * libgnussl.a gnussl - * libI77.a f2c - * libI77.a g77 - * libkvm.a bsd44 - * libm.a bsd44 - * libncurses.a ncurses - * libnihcl.a NIHCL - * libnihclmi.a NIHCL - * libnihclvec.a NIHCL - * libnls.a xreq - * libobjects.a libobjects - * liboctave.a Octave - * liboldX.a xreq - * libpbm.a Fontutils - * libPEXt.a xopt - * libpk.a Fontutils - * libresolv.a bsd44 - * librpc.a bsd44 - * libsipp.a SIPP - * libtcl.a DejaGnu - * libtelnet.a bsd44 - * libterm.a bsd44 - * libtermcap.a Termcap - * libtfm.a Fontutils - * libtiff.a tiff - * libutil.a bsd44 - * libvacall.a ffcall - * libWc.a xopt - * libwidgets.a Fontutils - * libX.a xreq - * libXau.a xreq - * libXaw.a xreq - * libXcp.a xopt - * libXcu.a xopt - * libXdmcp.a xreq - * libXmp.a xopt - * libXmu.a xreq - * libXO.a xopt - * libXop.a xopt - * libXp.a xopt - * libXpex.a xopt - * libXt.a xopt - * libXt.a xreq - * libXwchar.a xopt - * liby.a bsd44 - * libYgl.a Ygl - * lid ID Utils - * limn Fontutils - * listres xopt - * listres xreq - * lkbib Groff - * ln Fileutils - * locate Findutils - * lock bsd44 - * logcvt-ip2n phttpd - * logger bsd44 - * login bsd44 - * logname Shellutils - * logo ucblogo - * lookbib Groff - * lorder bsd44 - * lpr bsd44 - * ls Fileutils - * lynx lynx - - * m4 m4 - * mail bsd44 - * mail-files Sharutils - * mailq smail - * mailshar Sharutils - * make make - * make-docfile Emacs - * make-path Emacs - * makeindex TeX - * makeinfo Texinfo - * MakeTeXPK TeX - * man bsd44 - * man-macros Groff - * maniview geomview - * mattrib mtools - * maze xopt - * maze xreq - * mazewar xopt - * mc mc - * mcd mtools - * mcopy mtools - * mcserv mc - * md5sum Textutils - * mdel mtools - * mdir mtools - * me-macros Groff - * medit2gv geomview - * merge RCS - * mesg bsd44 - * mf TeX - * mformat mtools - * mft TeX - * mgdiff xopt - * mh bsd44 - * mille bsd44 - * mkafmmap enscript - * mkcache GN - * mkdep bsd44 - * mkdir Fileutils - * mkfifo Fileutils - * mkid ID Utils - * mkisofs mkisofs - * mklocale bsd44 - * mkmanifest mtools - * mkmf bsd44 - * mkmodules CVS - * mknod Fileutils - * mkstr bsd44 - * mlabel mtools - * mm-macros Groff - * mmd mtools - * monop bsd44 - * more bsd44 - * morse bsd44 - * mount bsd44 - * mountd bsd44 - * movemail Emacs - * mprof bsd44 - * mrd mtools - * mread mtools - * mren mtools - * ms-macros Groff - * msgcmp gettext - * msgfmt gettext - * msgmerge gettext - * msgs bsd44 - * msgunfmt gettext - * mst Smalltalk - * mt cpio - * mterm xopt - * mtree bsd44 - * mtype mtools - * mule MULE - * muncher xopt - * mv Fileutils - * mvdir Fileutils - * mwrite mtools - - * NDview geomview - * nethack NetHack - * netstat bsd44 - * newfs bsd44 - * nfsd bsd44 - * nfsiod bsd44 - * nfsstat bsd44 - * nice Shellutils - * nl Textutils - * nlmconv Binutils - * nm Binutils - * nohup Shellutils - * nose geomview - * notify HylaFAX - * nroff Groff - * number bsd44 - - * objc GCC - * objcopy Binutils - * objdump Binutils - * objective-c GCC - * obst-boot OBST - * obst-CC OBST - * obst-cct OBST - * obst-cgc OBST - * obst-cmp OBST - * obst-cnt OBST - * obst-cpcnt OBST - * obst-csz OBST - * obst-dir OBST - * obst-dmp OBST - * obst-gen OBST - * obst-gsh OBST - * obst-init OBST - * obst-scp OBST - * obst-sil OBST - * obst-stf OBST - * oclock xreq - * octave Octave - * od Textutils - * oleo Oleo - * ora-examples xopt - - * p2c p2c - * pagesize bsd44 - * palette xopt - * pascal bsd44 - * passwd bsd44 - * paste Textutils - * patch patch - * patgen TeX - * pathalias bsd44 - * pathchk Shellutils - * pathto smail - * pax bsd44 - * pbmplus xopt - * perl perl - * pfbtops Groff - * phantasia bsd44 - * phttpd phttpd - * pic Groff - * pico pine - * pig bsd44 - * pine pine - * ping bsd44 - * pixedit xopt - * pixmap xopt - * pktogf TeX - * pktype TeX - * plaid xopt - * plot2fig Graphics - * plot2plot Graphics - * plot2ps Graphics - * plot2tek Graphics - * pltotf TeX - * pollrcvd HylaFAX - * pom bsd44 - * pooltype TeX - * portmap bsd44 - * ppt bsd44 - * pr Textutils - * pr-addr GNATS - * pr-edit GNATS - * primes bsd44 - * printenv Shellutils - * printf Shellutils - * protoize GCC - * proxygarb Spinner - * ps bsd44 - * ps2ascii Ghostscript - * ps2epsi Ghostscript - * ps2fax HylaFAX - * psbb Groff - * pstat bsd44 - * psycho xopt - * ptester phttpd - * ptx ptx - * pubdic+ xopt - * puzzle xopt - * puzzle xreq - * pwd Shellutils - * pyramid xopt - - * query-pr GNATS - * quiz bsd44 - * quot bsd44 - * quota bsd44 - * quotacheck bsd44 - * quotaon bsd44 - - * rain bsd44 - * random bsd44 - * ranlib Binutils - * rbootd bsd44 - * rc rc - * rcp bsd44 - * rcp Inetutils - * rcs RCS - * rcs-to-cvs CVS - * rcs2log Emacs - * rcsdiff RCS - * rcsfreeze RCS - * rcsmerge RCS - * rdist bsd44 - * reboot bsd44 - * recode recode - * recvstats HylaFAX - * red ed - * refer Groff - * remsync Sharutils - * renice bsd44 - * repquota bsd44 - * restore bsd44 - * rev bsd44 - * rexecd bsd44 - * rexecd Inetutils - * rlog RCS - * rlogin bsd44 - * rlogin Inetutils - * rlogind bsd44 - * rlogind Inetutils - * rm Fileutils - * rmail bsd44 - * rmdir Fileutils - * rmt cpio - * rmt tar - * robots bsd44 - * rogue bsd44 - * route bsd44 - * routed bsd44 - * rr xopt - * rs bsd44 - * rsh bsd44 - * rsh Inetutils - * rshd bsd44 - * rshd Inetutils - * rsmtp smail - * runq smail - * runtest DejaGnu - * runtest.exp DejaGnu - * ruptime bsd44 - * rwho bsd44 - * rwhod bsd44 - - * s2p perl - * sail bsd44 - * saoimage SAOimage - * savecore bsd44 - * sc bsd44 - * sccs bsd44 - * sccs2rcs CVS - * scdisp xopt - * screen screen - * script bsd44 - * scsiformat bsd44 - * sctext xopt - * sdiff Diffutils - * sed sed - * send-pr GNATS - * sendfax HylaFAX - * sendmail bsd44 - * sgi2fax HylaFAX - * sgn GN - * sh bsd44 - * shar Sharutils - * shinbun xopt - * shogi Shogi - * showfont xopt - * showmount bsd44 - * shutdown bsd44 - * size Binutils - * sj3 xopt - * sjxa xopt - * slattach bsd44 - * sleep Shellutils - * sliplogin bsd44 - * smail smail - * smtpd smail - * snake bsd44 - * snftobdf xopt - * soelim Groff - * sort Textutils - * sos2obst OBST - * spider xopt - * split Textutils - * startslip bsd44 - * stereo geomview - * stf OBST - * strings Binutils - * strip Binutils - * stty Shellutils - * su Shellutils - * sum Textutils - * superopt Superopt - * swapon bsd44 - * sweep geomview - * sync bsd44 - * sysctl bsd44 - * syslog Inetutils - * syslogd bsd44 - * syslogd Inetutils - * systat bsd44 - - * tabs Termutils - * tac Textutils - * tackdown geomview - * tail Textutils - * taintperl perl - * talk bsd44 - * talk Inetutils - * talkd bsd44 - * talkd Inetutils - * tangle TeX - * tar tar - * tbl Groff - * tcal gcal - * tcl DejaGnu - * tclsh DejaGnu - * tcopy bsd44 - * tcp Emacs - * tee Shellutils - * tek2plot Graphics - * telnet bsd44 - * telnet Inetutils - * telnetd bsd44 - * telnetd Inetutils - * test Shellutils - * test-g++ DejaGnu - * test-tool DejaGnu - * tetris bsd44 - * tex TeX - * tex3patch Texinfo - * texi2dvi Texinfo - * texindex Texinfo - * texspell TeX - * textfmt HylaFAX - * tfmtodit Groff - * tftopl TeX - * tftp bsd44 - * tftp Inetutils - * tftpd bsd44 - * tftpd Inetutils - * tgrind TeX - * time time - * timed bsd44 - * timer Emacs - * timex xopt - * tip bsd44 - * tkpostage xopt - * tn3270 bsd44 - * togeomview geomview - * touch Fileutils - * tput Termutils - * tr Textutils - * traceroute bsd44 - * transcript HylaFAX - * transfig xopt - * transformer geomview - * trek bsd44 - * trigrp geomview - * trn3 bsd44 - * troff Groff - * trpt bsd44 - * trsp bsd44 - * true Shellutils - * tset bsd44 - * tsort bsd44 - * tty Shellutils - * ttygnans Gnans - * tunefs bsd44 - * tupdate gettext - * tvtwm xopt - * twm xreq - - * ul bsd44 - * ulpc Spinner - * umount bsd44 - * uname Shellutils - * uncompress gzip - * unexpand Textutils - * unifdef bsd44 - * unify wdiff - * uniq Textutils - * unprotoize GCC - * unshar Sharutils - * unvis bsd44 - * update bsd44 - * updatedb Findutils - * users Shellutils - * uuchk UUCP - * uucico UUCP - * uuconv UUCP - * uucp UUCP - * uucpd bsd44 - * uucpd Inetutils - * uudecode Sharutils - * uudir UUCP - * uuencode Sharutils - * uulog UUCP - * uuname UUCP - * uupath smail - * uupick UUCP - * uurate UUCP - * uusched UUCP - * uustat UUCP - * uuto UUCP - * uux UUCP - * uuxqt UUCP - - * v Fileutils - * vacation bsd44 - * vandal xopt - * vcdiff Emacs - * vdir Fileutils - * vftovp TeX - * vgrind bsd44 - * vi nvi - * viewres xopt - * viewres xreq - * vine xopt - * vipw bsd44 - * virmf TeX - * virtex TeX - * vis bsd44 - * vmstat bsd44 - * vptovf TeX - - * w bsd44 - * waisgn GN - * wakeup Emacs - * wall bsd44 - * wargames bsd44 - * wc Textutils - * wdiff wdiff - * weave TeX - * what bsd44 - * whatis bsd44 - * whereis bsd44 - * who Shellutils - * whoami Shellutils - * whois bsd44 - * window bsd44 - * winterp xopt - * wish DejaGnu - * wn WN - * wndex WN - * worm bsd44 - * worms bsd44 - * write bsd44 - * wump bsd44 - - * x11perf xreq - * x2p perl - * xalarm xopt - * xancur xopt - * xargs Findutils - * xauth xreq - * xbfe Fontutils - * xbiff xopt - * xbiff xreq - * xboard xboard - * xboing xopt - * xbuffy3 xopt - * xcalc xopt - * xcalc xreq - * xcalendar xopt - * xcdplayer xopt - * xcell xopt - * xclipboard xreq - * xclock xreq - * xcmdmenu xopt - * xcms xopt - * xcmsdb xreq - * xcmstest xreq - * xco xopt - * xcolorize xopt - * xcolors xopt - * xconsole xreq - * xcrtca xopt - * xdaliclock xopt - * xdiary xopt - * xditview Groff - * xditview xopt - * xditview xreq - * xdm xreq - * xdpyinfo xreq - * xdu xopt - * xdvi TeX - * xdvi xopt - * xdvorak xopt - * xearth xopt - * xed xopt - * xedit xopt - * xedit xreq - * xev xopt - * xev xreq - * xexit xopt - * xeyes xopt - * xeyes xreq - * xfd xreq - * xfed xopt - * xfedor xopt - * xfeoak xopt - * xferstats HylaFAX - * xfig xopt - * xfontsel xopt - * xfontsel xreq - * xforecast xopt - * xgas xopt - * xgas xreq - * xgc xopt - * xgc xreq - * xgettext gettext - * xhearts xopt - * xhelp xopt - * xhost xreq - * xinit xreq - * xkeycaps xopt - * xkill xreq - * xlax xopt - * xlayout xopt - * xlbiff xopt - * xless xopt - * xload xopt - * xload xreq - * xlogin xopt - * xlogo xreq - * xlsatoms xreq - * xlsclients xreq - * xlsfonts xreq - * xmag xreq - * xmail xopt - * xmailbox xopt - * xmailwatcher xopt - * xman xopt - * xman xreq - * xmandel xopt - * xmessage xopt - * xmeter xopt - * xmh xreq - * xmh-icons xopt - * xmh.editor xopt - * xmodmap xreq - * xmon xopt - * xmove xopt - * xmphone xopt - * xpd xopt - * xphoon xopt - * xpipeman xopt - * xplot Graphics - * xpostit xopt - * xpr xopt - * xpr xreq - * xprompt xopt - * xproof xopt - * xprop xreq - * xpserv xopt - * xrdb xreq - * xrefresh xreq - * xrsh xopt - * xrubik xopt - * xrunclient xopt - * xscope xopt - * xscreensaver xopt - * xsession xopt - * xset xreq - * xsetroot xreq - * xshogi xshogi - * xstdcmap xreq - * xstr bsd44 - * xtalk xopt - * xterm xreq - * xterm_color xopt - * xtetris xopt - * xTeXcad.13 xopt - * xtiff xopt - * xtokid ID Utils - * xtree xopt - * xtv xopt - * xwd xreq - * xwininfo xreq - * xwud xreq - - * yacc bsd44 - * yes Shellutils - * youbin xopt - * yow Emacs - - * zcat gzip - * zcmp gzip - * zdiff gzip - * zforce gzip - * zgrep gzip - * zmore gzip - * znew gzip - - * [ Shellutils - - - - - - -CD-ROMs -******* - -We have two series of CD-ROMs: the Source Code CD-ROM, and the Compiler -Tools Binaries CD-ROM. - -Our CDs are in ISO 9660 format & can be mounted as a read-only file system on -most computers. If your driver supports it, you can mount each CD with "Rock -Ridge" extensions & it will look like a regular Unix file system, rather than -one full of truncated & otherwise mangled names that fit vanilla ISO 9660. - -You can build most of the software without copying the sources off the CD. -You only need enough disk space for object files and intermediate build -targets. - - - -Pricing of the GNU CD-ROMs --------------------------- - -If a business or organization is ultimately paying, the current GNU Source -CD set costs $240. The set costs $60 if you, an individual, are paying out -of your own pocket. The current Compiler Tools Binaries CD-ROM costs $220 -for a business or organization, and $55 for an individual. - - - -What Do the Different Prices Mean? -.................................. - -The software on our disks is free; anyone can copy it and anyone can run it. -What we charge for is the physical disk and the service of distribution. - -We charge two different prices depending on who is buying. When a company -or other organization buys the Source CD-ROMs, we charge $240. When an -individual buys the same CD-ROMs, we charge just $60. This distinction is -not a matter of who is allowed to use the software. In either case, once -you have a copy, you can distribute as many copies as you wish and there's -no restriction on who can have or run them. The price distinction is -entirely a matter of what kind of entity pays for the CDs. - -You, the reader, are certainly an individual, not a company. If you are -buying a disk "in person", then you are probably doing so as an individual. -But if you expect to be reimbursed by your employer, then the disk is really -for the company; so please pay the company price and get reimbursed for it. -We won't try to check up on you--we use the honor system--so please cooperate. - -Buying CDs at the company price is very helpful for GNU; just -150 Source CDs at that price support an FSF programmer or tech writer for a -year. - - - -Why Is There an Individual Price? -................................. - -In the past, our distribution tapes were ordered mainly by companies. The CD -at the price of $240 provides them with all of our software for a much lower -price than they would previously have paid for six different tapes. To lower -the price more would cut into the FSF's funds very badly and decrease the -software development we can do. - -However, for individuals, $240 is too high a price; hardly anyone could -afford that. So we decided to make CDs available to individuals at the lower -price of $60. - - - -Is There a Maximum Price? -......................... - -Our stated prices are minimum prices. Feel free to pay a higher price if you -wish to support GNU development more. The sky's the limit; we will accept as -high a price as you can offer. Or simply give a donation (tax-deductible in -the U.S.) to the Free Software Foundation, a tax-exempt public charity. - - - -January 1997 Compiler Tools Binaries CD-ROM -------------------------------------------- - -In January 1997 we released the fourth edition of our CD-ROM that has -binaries and complete sources for GNU compiler tools for some systems which -lack a compiler. This enables the people who use these systems to compile -GNU and other free software without having to buy a proprietary compiler. -You can also use these GNU tools to compile your own C/C++/Objective-C -programs. Older editions of this CD are available while supplies last at a -reduced price; *Note Free Software Foundation Order Form::. - -We hope to have more systems on each update of this CD. If you can help -build binaries for new systems (especially those that don't come with a C -compiler), or have one to suggest, please contact us at the addresses on page -1. - -These packages: - - * DJGPP - * GCC/G++/Objective-C - * GNU C Library - * GDB - * Binutils - * Bison - * Emacs (MS-DOS only) - * Flex - * Make - * libg++ - -On these platforms: - - * `i386-msdos' - * `hppa1.1-hp-hpux9' - * `hppa1.1-hp-hpux10' - * `powerpc-ibm-aix4.2' - * `sparc-sun-solaris2.4' - * `sparc-sun-solaris2.5' - * `sparc-sun-sunos4.1' - - - -Source Code CD-ROMs -------------------- - -We have several versions of our Source Code CD-ROMs available, including: - - * July 1997 Source Code CD-ROMs, the newest release, has programs, - bug fixes, & improvements. See below. - - * January 1997 Source Code CD-ROMs. - - * July 1996 Source Code CD-ROMss. - - * December 1995 Source Code CD-ROMs. - - * June 1995 Source Code CD-ROM. - - * May 1994 Source Code CD-ROM. - - * November 1993 Source Code CD-ROM. - - * May 1993 Source Code CD-ROM. - - * October 1992 Source Code CD-ROM. - -The older Source CDs are available while supplies last at a reduced price -(please note that the December 1994 Source CD is permanently out of stock). -All the Source CDs have Texinfo source for the GNU manuals listed in *Note -Documentation::. - -Much of X11 is *not* on the older Source CDs which are just one CD -instead of two. - -There are no precompiled programs on these Source CDs. You will need a C -compiler (programs which need some other interpreter or compiler normally -provide the C source for a bootstrapping program). We ship C compiler -binaries for some systems on the *Note Compiler Tools Binaries CD-ROM::. - - - -July 1997 Source Code CD-ROMs -............................. - -The 10th edition of our Source Code CD is available now with two CD-ROM disks. -It has programs, bug fixes, & improvements not on the older Source CDs. It -has these packages, & some manuals that are not part of packages. The -version number of each package listed might be higher on the 10th edition CD -due to new releases being made since this list was generated. - - - * abuse 2.0 - * acct 6.3 - * acm 4.8 - * aegis 2.3 - * apache 1.2.4 - * Autoconf 2.12 - * Automake 1.2 - * BASH 2.01 - * bc 1.04 - * Binutils 2.8.1 - * Bison 1.25 - * C Library 2.0.5 - * Calc 2.02f - * cfengine 1.4.1 - * Chess 4.0.pl77 - * CLISP 1997.08.07 - * Common Lisp 2.2.2 - * cook 1.10 - * cperf 2.1a - * cpio 2.4.2 - * CVS 1.9 - * cxref 1.4 - * ddd 2.1.1 - * DejaGnu 1.3 - * Diffutils 2.7 - * dld 3.3 - * doschk 1.1 - * ed 0.2 - * Elib 1.0 - * elisp archive 1997.08.19 - * Emacs 18.59 - * Emacs 19.34 - * Emacs 20.1 - * enscript 1.5.0 - * es 0.84 - * Exim 1.70 - * f2c 1997.07.13 - * ffcall 1.1 - * Fileutils 3.16 - * Findutils 4.1 - * Finger 1.37 - * flex 2.5.4 - * Fontutils 0.6 - * g77 0.5.19.1 - * gawk 3.0.3 - * gcal 2.10 - * GCC/G++/Objective-C 2.7.2.3 - * GDB 4.16 - * gdbm 1.7.3 - * Generic NQS 3.50.2 - * geomview 1.6.1 - * gettext 0.10 - * gforth 0.3.0 - * Ghostscript 3.33 - * Ghostview 1.5 - * Ghostview for Windows 2.1 - * GIT 4.3.16 - * gmp 2.0.2 - * GN 2.24 - * Gnans 1.5.1 - * gnat 3.09 - * GNATS 3.2 - * GNU Emacs Lisp Reference Manual 1.03 - * GNU Emacs Lisp Reference Manual 2.4.2 - * GNU Emacs Lisp Reference Manual 2.4.jp2.0 - * GnuGo 1.2 - * gnuplot 3.5 - * gnuserv 2.1alpha - * gnussl 0.2.1 - * gpc 2.0 - * grep 2.0 - * Groff 1.11 - * guavac 0.3.1 - * guile 1.2 - * gzip 1.2.4 - * hello 1.3 - * hp2xx 3.1.4 - * HylaFAX 4.0pl1 - * Hyperbole 4.01 - * ID Utils 3.2 - * ilisp 5.8.a04 - * indent 1.9.1 - * Inetutils 1.3a - * Ispell 3.1.20 - * jargon 4.0.0 - * karma 1.6 - * less 332 - * LessTif 0.80 - * libg++ 2.7.2 - * libobjects 0.1.19 - * libtool 1.0 - * lynx 2.7.1 - * m4 1.4 - * make 3.75 - * MandelSpawn 0.07 - * maxima 5.2 - * mc 4.0 - * MCSim 4.1 - * mesa 2.1 - * <Meta-HTML> 5.04 - * miscfiles 1.1 - * mkisofs 1.11 - * mm 1.07 - * mtools 3.8 - * MULE 2.3 - * mutt 0.81 - * NetHack 3.2.2 - * NIHCL 3.1.4 - * nvi 1.79 - * Oaklisp 930720 - * OBST 3.4.3 - * Octave 2.0.9 - * Oleo 1.6 - * p2c 1.20 - * patch 2.5 - * pcl-gcl 2.2 - * perl 4.036 - * perl 5.003 - * phttpd 0.99.76 - * pips 1.01 - * plotutils 1.1 - * prcs 1.2 - * Programming in Emacs Lisp an Introduction 1.04 - * ptx 0.4 - * rc 1.4 - * RCS 5.7 - * readline 2.1 - * recode 3.4 - * regex 0.12 - * Roxen 1.1 - * rsync 1.6.3 - * rx 1.5 - * SAOimage 1.20 - * screen 3.7.4 - * sed 2.05 - * Sharutils 4.2 - * Shellutils 1.16 - * Shogi 1.2p03 - * SIPP 3.1 - * smail 3.2 - * Smalltalk 1.1.5 - * sneps 2.3.1 - * spell 1.0 - * stow 1.3.2 - * Superopt 2.5 - * swarm 1.0.2 - * tar 1.12 - * Termcap 1.3 - * Termutils 2.0 - * TeX 3.1415 - * Texinfo 3.11 - * Textutils 1.22 - * tiff 3.4 - * Tile Forth 2.1 - * time 1.7 - * ucblogo 4.1 - * units 1.53 - * UUCP 1.06.1 - * vera 1.0 - * vrweb 1.5 - * W3 2.2.26 - * wdiff 0.5 - * wget 1.4.5 - * windows32api 0.1.2 - * WN 1.18.1 - * X11R6.3 - * xboard 3.6.2 - * xgrabsc 2.41 - * xinfo 1.01.01 - * xmcd 2.2 - * xshogi 1.2p03 - * Ygl 3.1 - * zlibc 0.9e - - - -January 1997 Source Code CD-ROMs -................................ - -We still have copies of the 9th edition of our Source CD with two CD-ROM -disks. It has these packages, & some manuals that are not part of packages: - - - * acm 4.7 - * apache 1.1.1 - * Autoconf 2.12 - * Automake 1.0 - * BASH 2.0 - * bc 1.03 - * Binutils 2.7 - * Bison 1.25 - * C Library 2.0 - * Calc 2.02f - * cfengine 1.3.16 - * Chess 4.0.pl77 - * CLISP 1996.05.30 - * Common Lisp 2.2.1 - * cperf 2.1a - * cpio 2.4.2 - * CVS 1.9 - * ddd 2.0 - * DejaGnu 1.3 - * Diffutils 2.7 - * dld 3.3 - * doschk 1.1 - * ed 0.2 - * Elib 1.0 - * elisp archive - * Emacs 18.59 - * Emacs 19.34 - * enscript 1.4.0 - * es 0.84 - * Exim 1.59 - * f2c 1996.12.09 - * ffcall 1.1 - * Fileutils 3.16 - * Findutils 4.1 - * Finger 1.37 - * flex 2.5.4 - * Fontutils 0.6 - * g77 0.5.19 - * gawk 3.0.1 - * gcal 2.10 - * GCC/G++/Objective-C 2.7.2.2 - * GDB 4.16 - * gdbm 1.7.3 - * Generic NQS 3.50.2 - * geomview 1.6.1 - * gettext 0.10 - * gforth 0.2.1 - * Ghostscript 3.33 - * Ghostview 1.5 - * Ghostview for Windows 2.1 - * GIT 4.3.16 - * gmp 2.0.2 - * GN 2.24 - * Gnans 1.5.1 - * gnat 3.07 - * GNATS 3.2 - * GNU Emacs Lisp Reference Manual 1.03 - * GNU Emacs Lisp Reference Manual 2.4.2 - * GNU Emacs Lisp Reference Manual 2.4.jp2.0 - * GnuGo 1.2 - * gnuplot 3.5 - * gnuserv 2.1alpha - * gnussl 0.2.1 - * gpc 2.0 - * Graphics 0.17 - * grep 2.0 - * Groff 1.10 - * guile 1.0 - * gzip 1.2.4 - * hello 1.3 - * hp2xx 3.1.4 - * HylaFAX 4.0pl1 - * Hyperbole 4.01 - * ID Utils 3.2 - * ilisp 5.8.a04 - * indent 1.9.1 - * Inetutils 1.2j - * Ispell 3.1.20 - * jargon 4.0.0 - * karma 1.6 - * less 321 - * libg++ 2.7.2 - * libobjects 0.1.19 - * lynx 2.6 - * m4 1.4 - * make 3.75 - * MandelSpawn 0.07 - * maxima 5.2 - * mc 3.2.1 - * mesa 2.1 - * <Meta-HTML> 5.01 - * miscfiles 1.0 - * mkisofs 1.05GNU - * mm 1.07 - * mtools 3.1 - * MULE 2.3 - * mutt 0.57 - * ncurses 1.9.9e - * NetHack 3.2.2 - * NIHCL 3.1.4 - * nvi 1.79 - * Oaklisp 930720 - * OBST 3.4.3 - * Octave 2.0.2 - * Oleo 1.6 - * p2c 1.20 - * patch 2.1 - * pcl-gcl 2.1 - * perl 4.036 - * perl 5.003 - * phttpd 0.99.72.1 - * pine 3.91 - * pips 1.01 - * Programming in Emacs Lisp an Introduction 1.04 - * ptx 0.4 - * rc 1.4 - * RCS 5.7 - * readline 2.0 - * recode 3.4 - * regex 0.12 - * Roxen 1.1 - * rx 1.5 - * SAOimage 1.19 -s * scheme 7.4 - * screen 3.7.2 - * sed 2.05 - * Sharutils 4.2 - * Shellutils 1.16 - * Shogi 1.2p03 - * SIPP 3.1 - * smail 3.2 - * Smalltalk 1.1.5 - * sneps 2.3.1 - * stow 1.3.2 - * Superopt 2.5 - * tar 1.11.8 - * Termcap 1.3 - * Termutils 2.0 - * TeX 3.1415 - * Texinfo 3.9 - * Textutils 1.22 - * tiff 3.4 - * Tile Forth 2.1 - * time 1.7 - * ucblogo 3.6 - * units 1.53 - * UUCP 1.06.1 - * vrweb 1.3 - * W3 2.2.26 - * wdiff 0.5 - * wget 1.4.2b - * windows32api 0.1.2 - * WN 1.17.1 - * X11R6.3 - * xboard 3.5.0 - * xgrabsc 2.41 - * xinfo 1.01.01 - * xshogi 1.2p03 - * Ygl 3.1 - - - -CD-ROM Subscription Service -*************************** - -Our subscription service enables you to stay current with the latest GNU -developments. For a one-time cost equivalent to three Source CD-ROMs (plus -shipping in some cases), we will ship you four new versions of the *Note -Source Code CD-ROMs::. The CD-ROMs are sent as they are issued (currently -twice a year, but we hope to make it more frequent). We do not yet know if -we will be offering subscriptions to the Compiler Tools Binaries CD. - -A subscription is an easy way to keep up with the regular bug fixes to the X -Window System. Each edition of the *Note Source Code CD-ROMs::, has updated -sources for the X Window System. - -Please note: In two cases, you must pay 4 times the normal shipping required -for a single order when you pay for each subscription. If you're in Alaska, -Hawaii, or Puerto Rico you must add $20.00 for shipping for each -subscription. If you're outside of the U.S., Canada, and Puerto Rico, you -must add $80.00 for each subscription. See "CD-ROMs" and "Tax and Shipping -Costs" on the *note Free Software Foundation Order Form::. - - - -FSF T-shirt -*********** - -The front of our T-shirt has the GNU Emacs Lisp code `(USE 'GNU)' with "`()'" -being the dancing parentheses from the cover of our `GNU Emacs Lisp Reference -Manual' (drawn by Berkeley, CA artist Etienne Suvasa). The shirt's back has -the Preamble to the GNU General Public License. - -These shirts come in black, natural (off-white), burgundy, and blue-green. -When you order, please give 3 choices. Black is printed in white and the -other colors are printed in black. All shirts are thick 100% cotton; black -and burgundy come in sizes M, L, XL, and XXL and the others in sizes L and XL -(they run small so you may want a larger size than usual). - -GNU T-shirts often create spontaneous friendships at conferences & on -university campuses. They also make great gifts for friends & family, -including children! - - - -Free Software Foundation Order Form -*********************************** - -All items are distributed with permission to copy and to redistribute. -Texinfo source for each manual and source for each reference card is on the -appropriate CD-ROM; the prices for these media do not include printed -documentation. -All items are provided ``as is'', with no warranty of any kind. -Please allow three weeks for delivery -(though it won't usually take that long). - - - PRICE AND CONTENTS MAY CHANGE WITHOUT NOTICE AFTER January 31, 1998. - - -A possibly more current version of this order form can be found on the -World Wide Web at `http://www.gnu.ai.mit.edu/order/order.html' or -can be found in file `/pub/gnu/GNUinfo/ORDERS' on a GNU FTP host -(*note How to Get GNU Software::.). - - - -FSF Deluxe Distribution ------------------------ -(Please contact us with any questions. *Note Deluxe Distribution::, -for machine, operating system, and media types.) - - -____ @ $5000 = $ ______ The Deluxe Distribution, with manuals, etc. - -Machine: _____________________________________________________________________ - -Operating system: ____________________________________________________________ - -Media type: __________________________________________________________________ - -(Optional) Version of X Window System to link with: __________________________ - - - -CD-ROMs, in ISO 9660 format (*note CD-ROMs::.): ----------------------------------------------- - - -GNU Source Code CD-ROMs, Version 10 with X11R6.3 (*note July 1997 Source Code CD-ROMs::.): - -____ @ $240 = $ ______ for corporations and other organizations. - -____ @ $ 60 = $ ______ for individuals. - - -Subscriptions, next 4 updates of the Source Code CD-ROM, in ISO 9660 format -(*note CD-ROM Subscription Service::.): - -____ @ $720 = $ ______ for corporations and other organizations. - -____ @ $180 = $ ______ for individuals. - - -GNU Compiler Tools Binaries CD-ROM, Version 4, January 1997 Edition -(*note Compiler Tools Binaries CD-ROM::.): - -____ @ $220 = $ ______ for corporations and other organizations. - -____ @ $55 = $ ______ for individuals. - - - -Manuals -------- - -These manuals (*note Documentation::.). The latest version of each manual -will be shipped. Please contact us if you want a specific version. - -____ @ $ 30 = $ ______ GNU Emacs manual, with a reference card. - -____ @ $ 50 = $ ______ GNU Emacs Lisp Reference manual, in two volumes. - -____ @ $ 60 = $ ______ GNU Emacs Lisp Reference, Japanese Edition. - -____ @ $ 50 = $ ______ Using and Porting GNU CC. - -____ @ $ 50 = $ ______ GNU C Library Reference Manual. - -____ @ $ 50 = $ ______ GNU Emacs Calc manual, with a reference card. - -____ @ $ 20 = $ ______ Programming in Emacs Lisp: An Introduction. - -____ @ $ 20 = $ ______ Debugging with GDB, with a reference card. - -____ @ $ 25 = $ ______ GNU Awk User's Guide. - -____ @ $ 20 = $ ______ Make manual. - -____ @ $ 20 = $ ______ Bison manual, with a reference card. - -____ @ $ 20 = $ ______ Flex manual, with a reference card. - -____ @ $ 25 = $ ______ Texinfo manual. - -____ @ $ 15 = $ ______ Termcap manual, 3rd Edition Revised. - - - -Reference Cards ---------------- - -The following reference cards, in packets of ten. For single copies please -contact us. - -____ @ $ 10 = $ ______ GNU Emacs version 20 reference cards. - -____ @ $ 10 = $ ______ GNU Emacs Calc reference cards. - -____ @ $ 10 = $ ______ GDB reference cards. - -____ @ $ 10 = $ ______ Bison reference cards. - -____ @ $ 10 = $ ______ Flex reference cards. - - - -T-shirts --------- - -GNU/FSF T-shirts (*note FSF T-shirt::.), thick 100% cotton, available in -black or natural (off-white) in sizes M, L, XL, and XXL, -and in burgundy or blue-green in sizes L and XL. -Please list 1st, 2nd, and 3rd choice of color. - -____ @ $ 15 = $ ______ Size _____ - - Color choice: 1st _______ 2nd _______ 3rd _______ - -____ @ $ 15 = $ ______ Size _____ - - Color choice: 1st _______ 2nd _______ 3rd _______ - -____ @ $ 15 = $ ______ Size _____ - - Color choice: 1st _______ 2nd _______ 3rd _______ - -____ @ $ 15 = $ ______ Size _____ - - Color choice: 1st _______ 2nd _______ 3rd _______ - - -Older Items ------------ - -Older items are only available while supplies last. - -____ @ $ 40 = $ ______ Using and Porting GCC, 8.5 x 11 inches, with - plastic binding (same text as current edition) - -Please fill in the number of each older CD-ROM you order: - - GNU Compiler Tools Binaries CD-ROMs: - -Version 1 (December '93) ______ Version 2 (December '94) ______ - -Version 3 (December '95) ______ - - GNU Source Code CD-ROMs: (Version 5 (Dec. '94) is not available.) - -Version 1 (October '92) ______ Version 2 (May '93) ______ - -Version 3 (November '93 - last edition with X11R5) ______ - -Version 4 (May '94 - first edition with X11R6) ______ - -Version 6 (June '95) ______ Version 7 (Dec. '95) ______ - -Version 8 (July '96) ______ Version 9 (Jan. '97) ______ - -Please put the total count and cost of the above older CD-ROMs here: - -____ @ $ 80 = $ ______ for corporations and other organizations. - -____ @ $ 20 = $ ______ for individuals. - - ====== - - Subtotal $ ______ - - - -Tax and Shipping Costs ----------------------- - - + $ ______ For addresses in Massachusetts: add 5% sales tax - or give tax exempt number. There is no sales tax - on T-shirts. - + $ ______ Shipping fee for addresses in Alaska, Hawaii, or - Puerto Rico: - $ 5.00 base charge; - + $ 5.00 for *each* Emacs Calc or Emacs Lisp - Reference manual ($ 5.00 * #ofMans); - + $ 20.00 for *each* CD-ROM subscription - ($20.00 * #ofSubs); - + $ 1.00 for *each* item other than the above - (shipping for all other items = - $ 1.00 * #ofOtherItems). - + $ ______ Shipping fee for most Foreign Destinations: (Please - do *not* use this formula for addresses in China, - Guam, Indonesia, Israel, Malaysia, New Zealand, - Philippines, and Thailand. Please contact us for - an exact shipping quote.) - $ 20.00 base charge for orders to other - addresses outside of U.S., Canada, & Puerto Rico: - + $ 10.00 for each item ordered, ($ 10.00 * #ofItems) - + $ 80.00 for each CD-ROM subscription - ($ 80.00 * #ofSubs) (don't count as an item). - In Europe, ordering via GNU Distribution Europe-- - Belgium may reduce these costs - (*note New European Distributor::.). - + $ ______ Optional (tax-deductible in the U.S.) donation. - We suggest 5% if paying by credit card. - - TOTAL $ ______ We pay for shipping via UPS ground transportation in - the contiguous 48 states and Canada. For very - large orders, ask about actual shipping costs for - that order. - -Note: The shipping fee for foreign destinations covers express courier - shipping. If you would like shipping via air mail, please contact - our distribution office for a quote on your order. - -Shipping Information --------------------- - -Name: ________________________________________________________________________ - -Mail Stop/Dept. Name: ________________________________________________________ - -Organization: ________________________________________________________________ - -Street Address: ______________________________________________________________ - -City, State/Province: ________________________________________________________ - -Zip Code/Postal Code, Country: _______________________________________________ - -Telephone number in case of a problem with your order. -For international orders, please include a fax number. _______________________ - -E-mail Address: ______________________________________________________________ - - ------------------------------------------------------------------------------- -| | -| Orders filled only upon receipt of check, money order, or credit card | -| order in U.S. dollars. Unpaid orders will be returned to the sender. | -| We do not have the staff to handle the billing of unpaid orders. Please | -| help keep our lives simple by including your payment with your order. | -| | ------------------------------------------------------------------------------- - - - -For orders from outside the U.S.: ---------------------------------- - -You are responsible for paying all duties, tariffs, and taxes. If you -refuse to pay the charges, the shipper will return or abandon the order. - -In Europe, you may find it cheaper and more convenient to use our European -Distributor. *Note New European Distributor::. - - - --------------------------------------------------------------------------- - | | - | Please make checks payable to the ``Free Software Foundation''. | - | | - | Checks must be in U.S. dollars, drawn on a U.S. bank. | - | | - --------------------------------------------------------------------------- - - - -For Credit Card Orders: ------------------------ - -The Free Software Foundation takes these credit cards: Carte Blanche, -Diner's Club, Discover, JCB, MasterCard, Visa, or American Express. -Please note that we are charged about 5% of an order's total amount in -credit card processing fees. Please consider paying by check instead, -or adding on a 5% donation to make up the difference. To place a credit -card order, please give us this information: - - -Card type: ___________________________________________________________________ - -Account Number: ______________________________________________________________ - -Expiration Date: _____________________________________________________________ - -Cardholder's Name: ___________________________________________________________ - -Cardholder's Signature: ______________________________________________________ - - - ------------------------------------------------------------------------------- -| | -| If you wish to pay by wire transfer or you are a reseller, please | -| contact us or write us for details. | -| | ------------------------------------------------------------------------------- - - - -A possibly more current version of this order form can be found on the -World Wide Web at `http://www.gnu.ai.mit.edu/order/order.html' or -can be found in file `/pub/gnu/GNUinfo/ORDERS' on a GNU FTP host -(*note How to Get GNU Software::.). - - - - Please mail orders to: Free Software Foundation - 59 Temple Place - Suite 330 - Boston, MA 02111 -PRICES AND CONTENTS MAY CHANGE +1-617-542-5942 -WITHOUT NOTICE AFTER January 31, 1998 Fax (including Japan): +1-617-542-2652 - -Version: July 1997 ASCII etc/ORDERS - ------------------------------------------------------------------------------ diff --git a/gcc/c-common.c b/gcc/c-common.c index 0ee7629..936b609 100755 --- a/gcc/c-common.c +++ b/gcc/c-common.c @@ -1239,10 +1239,6 @@ init_function_format_info () printf_format_type, 2, 0); record_function_format (get_identifier ("strftime"), NULL_TREE, strftime_format_type, 3, 0); - - record_international_format (get_identifier ("gettext"), NULL_TREE, 1); - record_international_format (get_identifier ("dgettext"), NULL_TREE, 2); - record_international_format (get_identifier ("dcgettext"), NULL_TREE, 2); } /* Record information for argument format checking. FUNCTION_IDENT is diff --git a/gcc/c-parse.c b/gcc/c-parse.c index 5a0c169..c670e59 100644 --- a/gcc/c-parse.c +++ b/gcc/c-parse.c @@ -336,15 +336,7 @@ typedef short int yytype_int16; #define YYSIZE_MAXIMUM ((YYSIZE_T) -1) #ifndef YY_ -# if YYENABLE_NLS -# if ENABLE_NLS -# include <libintl.h> /* INFRINGES ON USER NAME SPACE */ -# define YY_(msgid) dgettext ("bison-runtime", msgid) -# endif -# endif -# ifndef YY_ -# define YY_(msgid) msgid -# endif +#define YY_(msgid) msgid #endif /* Suppress unused-variable warnings by "using" E. */ @@ -2111,15 +2103,6 @@ yysyntax_error (char *yyresult, int yystate, int yychar) char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM]; int yyx; -# if 0 - /* This is so xgettext sees the translatable formats that are - constructed on the fly. */ - YY_("syntax error, unexpected %s"); - YY_("syntax error, unexpected %s, expecting %s"); - YY_("syntax error, unexpected %s, expecting %s or %s"); - YY_("syntax error, unexpected %s, expecting %s or %s or %s"); - YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s"); -# endif char *yyfmt; char const *yyf; static char const yyunexpected[] = "syntax error, unexpected %s"; diff --git a/gcc/exgettext b/gcc/exgettext deleted file mode 100755 index 93d553c..0000000 --- a/gcc/exgettext +++ /dev/null @@ -1,118 +0,0 @@ -#! /bin/sh -# Wrapper around gettext for GCC sources. -# Copyright 1998 Free Software Foundation, Inc. - -# Written by Paul Eggert <eggert@twinsun.com>. - -# 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. - -# Set environment to default value, if not already set. -: ${AWK=awk} - -# The argument to this wrapper is the xgettext command to be executed. -# Extract the xgettext program name from the rest of the command. -xgettext=${1?} -shift - -# Save work if we're just wrapping a no-op. -case $xgettext in -:) exit;; -esac - -# Find the files to be scanned, and the directory to scan them from. -directory=. -files= -for i -do - case $i in - --directory=*) - directory=`expr " $i" : ' --directory=\(.*\)'`;; - --files-from=*) - files_from=`expr " $i" : ' --files-from=\(.*\)'` - files=`$AWK '/^[^#]/ { print }' $files_from`;; - esac -done - -# Generate keyword options for xgettext, -# by scanning for declarations of functions -# whose parameter names end in "msgid". -generate_keyword_options=' - /^[A-Z_a-z].*\(.*msgid[,)]/ { - - paren_index = index($0, "(") - - name = substr($0, 1, paren_index - 1) - sub(/[^0-9A-Z_a-z]*$/, "", name) - sub(/[ ]+PARAMS/, "", name) - sub(/[ ]+VPROTO/, "", name) - sub(/.*[^0-9A-Z_a-z]/, "", name) - - args = substr($0, paren_index) - sub(/msgid[,)].*/, "", args) - for (n = 1; sub(/^[^,]*,/, "", args); n++) { - continue; - } - - if (n == 1) { - keyword = name - } else { - keyword = name ":" n - } - - if (! keyword_seen[keyword]++) { - print "--keyword=" keyword - } - } -' -keyword_options=`( - cd $directory && - $AWK "$generate_keyword_options" $files < /dev/null -)` || exit - -# Generate temporary file reflecting the %e strings in the scanned files. -tmp=tmp-emsgids.c - -generate_emsgids=' - /%e.*}/ { - line = $0 - while ((percent_index = index(line, "%e")) != 0) { - line = substr(line, percent_index + 2) - bracket_index = index(line, "}") - if (bracket_index == 0) { - continue - } - msgid = substr(line, 1, bracket_index - 1) - if (index(msgid, "%") != 0) { - continue - } - printf "#line %d \"%s\"\n", FNR, FILENAME - printf "_(\"%s\")\n", msgid - line = substr(line, bracket_index + 1) - } - } -' -(cd $directory && - $AWK "$generate_emsgids" $files < /dev/null -) > $directory/$tmp || exit - -# Run the xgettext command, with temporary added as a file to scan. -"$xgettext" $keyword_options ${1+"$@"} $tmp || exit - -# Clean up. -# If we don't get here, `make clean' will remove this file later. -rm -f $directory/$tmp diff --git a/gcc/intl.c b/gcc/intl.c deleted file mode 100755 index e039909..0000000 --- a/gcc/intl.c +++ /dev/null @@ -1,6 +0,0 @@ -/* intl.c - internationalization */ - -#include "gansidecl.h" -#include "intl.h" - -const char localedir[] = LOCALEDIR; diff --git a/gcc/intl.h b/gcc/intl.h deleted file mode 100755 index 56c075e..0000000 --- a/gcc/intl.h +++ /dev/null @@ -1,52 +0,0 @@ -/* intl.h - internationalization - Copyright 1998 Free Software Foundation, Inc. - - 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. */ - -#ifdef HAVE_LOCALE_H -# include <locale.h> -#endif - -#ifndef HAVE_SETLOCALE -# define setlocale(category, locale) (locale) -#endif - -#ifdef ENABLE_NLS -# include <libintl.h> - extern const char localedir[]; -#else -/* Stubs that do something close enough. */ -# ifdef textdomain -# undef textdomain -# endif -# define textdomain(domain) (domain) -# ifdef bindtextdomain -# undef bindtextdomain -# endif -# define bindtextdomain(domain, directory) (domain) -# ifdef gettext -# undef gettext -# endif -# define gettext(msgid) (msgid) -#endif - -#ifndef _ -# define _(msgid) gettext (msgid) -#endif - -#ifndef N_ -# define N_(msgid) (msgid) -#endif diff --git a/gcc/intl/ChangeLog b/gcc/intl/ChangeLog deleted file mode 100755 index 1989501..0000000 --- a/gcc/intl/ChangeLog +++ /dev/null @@ -1,1086 +0,0 @@ -1998-04-29 Ulrich Drepper <drepper@cygnus.com> - - * intl/localealias.c (read_alias_file): Use unsigned char for - local variables. Remove unused variable tp. - * intl/l10nflist.c (_nl_normalize_codeset): Use unsigned char * - for type of codeset. For loosing Solaris systems. - * intl/loadinfo.h: Adapt prototype of _nl_normalize_codeset. - * intl/bindtextdom.c (BINDTEXTDOMAIN): Don't define local variable - len if not needed. - Patches by Jim Meyering. - -1998-04-28 Ulrich Drepper <drepper@cygnus.com> - - * loadmsgcat.c (_nl_load_domain): Don't assign the element use_mmap if - mmap is not supported. - - * hash-string.h: Don't include <values.h>. - -1998-04-27 Ulrich Drepper <drepper@cygnus.com> - - * textdomain.c: Use strdup is available. - - * localealias.c: Define HAVE_MEMPCPY so that we can use this - function. Define and use semapahores to protect modfication of - global objects when compiling for glibc. Add code to allow - freeing alias table. - - * l10nflist.c: Don't assume stpcpy not being a macro. - - * gettextP.h: Define internal_function macri if not already done. - Use glibc byte-swap macros instead of defining SWAP when compiled - for glibc. - (struct loaded_domain): Add elements to allow unloading. - - * Makefile.in (distclean): Don't remove libintl.h here. - - * bindtextdomain.c: Carry over changes from glibc. Use strdup if - available. - - * dcgettext.c: Don't assume stpcpy not being a macro. Mark internal - functions. Add memory freeing code for glibc. - - * dgettext.c: Update copyright. - - * explodename.c: Include stdlib.h and string.h only if they exist. - Use strings.h eventually. - - * finddomain.c: Mark internal functions. Use strdup if available. - Add memory freeing code for glibc. - -1997-10-10 20:00 Ulrich Drepper <drepper@cygnus.com> - - * libgettext.h: Fix dummy textdomain and bindtextdomain macros. - They should return reasonable values. - Reported by Tom Tromey <tromey@cygnus.com>. - -1997-09-16 03:33 Ulrich Drepper <drepper@cygnus.com> - - * libgettext.h: Define PARAMS also to `args' if __cplusplus is defined. - * intlh.inst.in: Likewise. - Reported by Jean-Marc Lasgouttes <Jean-Marc.Lasgouttes@inria.fr>. - - * libintl.glibc: Update from current glibc version. - -1997-09-06 02:10 Ulrich Drepper <drepper@cygnus.com> - - * intlh.inst.in: Reformat copyright. - -1997-08-19 15:22 Ulrich Drepper <drepper@cygnus.com> - - * dcgettext.c (DCGETTEXT): Remove wrong comment. - -1997-08-16 00:13 Ulrich Drepper <drepper@cygnus.com> - - * Makefile.in (install-data): Don't change directory to install. - -1997-08-01 14:30 Ulrich Drepper <drepper@cygnus.com> - - * cat-compat.c: Fix copyright. - - * localealias.c: Don't define strchr unless !HAVE_STRCHR. - - * loadmsgcat.c: Update copyright. Fix typos. - - * l10nflist.c: Don't define strchr unless !HAVE_STRCHR. - (_nl_make_l10nflist): Handle sponsor and revision correctly. - - * gettext.c: Update copyright. - * gettext.h: Likewise. - * hash-string.h: Likewise. - - * finddomain.c: Remoave dead code. Define strchr only if - !HAVE_STRCHR. - - * explodename.c: Include <sys/types.h>. - - * explodename.c: Reformat copyright text. - (_nl_explode_name): Fix typo. - - * dcgettext.c: Define and use __set_errno. - (guess_category_value): Don't use setlocale if HAVE_LC_MESSAGES is - not defined. - - * bindtextdom.c: Pretty printing. - -1997-05-01 02:25 Ulrich Drepper <drepper@cygnus.com> - - * dcgettext.c (guess_category_value): Don't depend on - HAVE_LC_MESSAGES. We don't need the macro here. - Patch by Bruno Haible <haible@ilog.fr>. - - * cat-compat.c (textdomain): DoN't refer to HAVE_SETLOCALE_NULL - macro. Instead use HAVE_LOCALE_NULL and define it when using - glibc, as in dcgettext.c. - Patch by Bruno Haible <haible@ilog.fr>. - - * Makefile.in (CPPFLAGS): New variable. Reported by Franc,ois - Pinard. - -Mon Mar 10 06:51:17 1997 Ulrich Drepper <drepper@cygnus.com> - - * Makefile.in: Implement handling of libtool. - - * gettextP.h: Change data structures for use of generic lowlevel - i18n file handling. - -Wed Dec 4 20:21:18 1996 Ulrich Drepper <drepper@cygnus.com> - - * textdomain.c: Put parentheses around arguments of memcpy macro - definition. - * localealias.c: Likewise. - * l10nflist.c: Likewise. - * finddomain.c: Likewise. - * bindtextdom.c: Likewise. - Reported by Thomas Esken. - -Mon Nov 25 22:57:51 1996 Ulrich Drepper <drepper@cygnus.com> - - * textdomain.c: Move definition of `memcpy` macro to right - position. - -Fri Nov 22 04:01:58 1996 Ulrich Drepper <drepper@cygnus.com> - - * finddomain.c [!HAVE_STRING_H && !_LIBC]: Define memcpy using - bcopy if not already defined. Reported by Thomas Esken. - * bindtextdom.c: Likewise. - * l10nflist.c: Likewise. - * localealias.c: Likewise. - * textdomain.c: Likewise. - -Tue Oct 29 11:10:27 1996 Ulrich Drepper <drepper@cygnus.com> - - * Makefile.in (libdir): Change to use exec_prefix instead of - prefix. Reported by Knut-HåvardAksnes <etokna@eto.ericsson.se>. - -Sat Aug 31 03:07:09 1996 Ulrich Drepper <drepper@cygnus.com> - - * l10nflist.c (_nl_normalize_codeset): We convert to lower case, - so don't prepend uppercase `ISO' for only numeric arg. - -Fri Jul 19 00:15:46 1996 Ulrich Drepper <drepper@cygnus.com> - - * l10nflist.c: Move inclusion of argz.h, ctype.h, stdlib.h after - definition of _GNU_SOURCE. Patch by Roland McGrath. - - * Makefile.in (uninstall): Fix another bug with `for' loop and - empty arguments. Patch by Jim Meyering. Correct name os - uninstalled files: no intl- prefix anymore. - - * Makefile.in (install-data): Again work around shells which - cannot handle mpty for list. Reported by Jim Meyering. - -Sat Jul 13 18:11:35 1996 Ulrich Drepper <drepper@cygnus.com> - - * Makefile.in (install): Split goal. Now depend on install-exec - and install-data. - (install-exec, install-data): New goals. Created from former - install goal. - Reported by Karl Berry. - -Sat Jun 22 04:58:14 1996 Ulrich Drepper <drepper@cygnus.com> - - * Makefile.in (MKINSTALLDIRS): New variable. Path to - mkinstalldirs script. - (install): use MKINSTALLDIRS variable or if the script is not present - try to find it in the $top_scrdir). - -Wed Jun 19 02:56:56 1996 Ulrich Drepper <drepper@cygnus.com> - - * l10nflist.c: Linux libc *partly* includes the argz_* functions. - Grr. Work around by renaming the static version and use macros - for renaming. - -Tue Jun 18 20:11:17 1996 Ulrich Drepper <drepper@cygnus.com> - - * l10nflist.c: Correct presence test macros of __argz_* functions. - - * l10nflist.c: Include <argz.h> based on test of it instead when - __argz_* functions are available. - Reported by Andreas Schwab. - -Thu Jun 13 15:17:44 1996 Ulrich Drepper <drepper@cygnus.com> - - * explodename.c, l10nflist.c: Define NULL for dumb systems. - -Tue Jun 11 17:05:13 1996 Ulrich Drepper <drepper@cygnus.com> - - * intlh.inst.in, libgettext.h (dcgettext): Rename local variable - result to __result to prevent name clash. - - * l10nflist.c, localealias.c, dcgettext.c: Define _GNU_SOURCE to - get prototype for stpcpy and strcasecmp. - - * intlh.inst.in, libgettext.h: Move declaration of - `_nl_msg_cat_cntr' outside __extension__ block to prevent warning - from gcc's -Wnested-extern option. - -Fri Jun 7 01:58:00 1996 Ulrich Drepper <drepper@cygnus.com> - - * Makefile.in (install): Remove comment. - -Thu Jun 6 17:28:17 1996 Ulrich Drepper <drepper@cygnus.com> - - * Makefile.in (install): Work around for another Buglix stupidity. - Always use an `else' close for `if's. Reported by Nelson Beebe. - - * Makefile.in (intlh.inst): Correct typo in phony rule. - Reported by Nelson Beebe. - -Thu Jun 6 01:49:52 1996 Ulrich Drepper <drepper@cygnus.com> - - * dcgettext.c (read_alias_file): Rename variable alloca_list to - block_list as the macro calls assume. - Patch by Eric Backus. - - * localealias.c [!HAVE_ALLOCA]: Define alloca as macro using - malloc. - (read_alias_file): Rename varriabe alloca_list to block_list as the - macro calls assume. - Patch by Eric Backus. - - * l10nflist.c: Correct conditional for <argz.h> inclusion. - Reported by Roland McGrath. - - * Makefile.in (all): Depend on all-@USE_INCLUDED_LIBINTL@, not - all-@USE_NLS@. - - * Makefile.in (install): intlh.inst comes from local dir, not - $(srcdir). - - * Makefile.in (intlh.inst): Special handling of this goal. If - used in gettext, this is really a rul to construct this file. If - used in any other package it is defined as a .PHONY rule with - empty body. - - * finddomain.c: Extract locale file information handling into - l10nfile.c. Rename local stpcpy__ function to stpcpy. - - * dcgettext.c (stpcpy): Add local definition. - - * l10nflist.c: Solve some portability problems. Patches partly by - Thomas Esken. Add local definition of stpcpy. - -Tue Jun 4 02:47:49 1996 Ulrich Drepper <drepper@cygnus.com> - - * intlh.inst.in: Don't depend including <locale.h> on - HAVE_LOCALE_H. Instead configure must rewrite this fiile - depending on the result of the configure run. - - * Makefile.in (install): libintl.inst is now called intlh.inst. - Add rules for updating intlh.inst from intlh.inst.in. - - * libintl.inst: Renamed to intlh.inst.in. - - * localealias.c, dcgettext.c [__GNUC__]: Define HAVE_ALLOCA to 1 - because gcc has __buitlin_alloca. - Reported by Roland McGrath. - -Mon Jun 3 00:32:16 1996 Ulrich Drepper <drepper@cygnus.com> - - * Makefile.in (installcheck): New goal to fulfill needs of - automake's distcheck. - - * Makefile.in (install): Reorder commands so that VERSION is - found. - - * Makefile.in (gettextsrcdir): Now use subdirectory intl/ in - @datadir@/gettext. - (COMSRCS): Add l10nfile.c. - (OBJECTS): Add l10nfile.o. - (DISTFILES): Rename to DISTFILE.normal. Remove $(DISTFILES.common). - (DISTFILE.gettext): Remove $(DISTFILES.common). - (all-gettext): Remove goal. - (install): If $(PACKAGE) = gettext install, otherwose do nothing. No - package but gettext itself should install libintl.h + headers. - (dist): Extend goal to work for gettext, too. - (dist-gettext): Remove goal. - - * dcgettext.c [!HAVE_ALLOCA]: Define macro alloca by using malloc. - -Sun Jun 2 17:33:06 1996 Ulrich Drepper <drepper@cygnus.com> - - * loadmsgcat.c (_nl_load_domain): Parameter is now comes from - find_l10nfile. - -Sat Jun 1 02:23:03 1996 Ulrich Drepper <drepper@cygnus.com> - - * l10nflist.c (__argz_next): Add definition. - - * dcgettext.c [!HAVE_ALLOCA]: Add code for handling missing alloca - code. Use new l10nfile handling. - - * localealias.c [!HAVE_ALLOCA]: Add code for handling missing - alloca code. - - * l10nflist.c: Initial revision. - -Tue Apr 2 18:51:18 1996 Ulrich Drepper <drepper@myware> - - * Makefile.in (all-gettext): New goal. Same as all-yes. - -Thu Mar 28 23:01:22 1996 Karl Eichwalder <ke@ke.central.de> - - * Makefile.in (gettextsrcdir): Define using @datadir@. - -Tue Mar 26 12:39:14 1996 Ulrich Drepper <drepper@myware> - - * finddomain.c: Include <ctype.h>. Reported by Roland McGrath. - -Sat Mar 23 02:00:35 1996 Ulrich Drepper <drepper@myware> - - * finddomain.c (stpcpy): Rename to stpcpy__ to prevent clashing - with external declaration. - -Sat Mar 2 00:47:09 1996 Ulrich Drepper <drepper@myware> - - * Makefile.in (all-no): Rename from all_no. - -Sat Feb 17 00:25:59 1996 Ulrich Drepper <drepper@myware> - - * gettextP.h [loaded_domain]: Array `successor' must now contain up - to 63 elements (because of codeset name normalization). - - * finddomain.c: Implement codeset name normalization. - -Thu Feb 15 04:39:09 1996 Ulrich Drepper <drepper@myware> - - * Makefile.in (all): Define to `all-@USE_NLS@'. - (all-yes, all_no): New goals. `all-no' is noop, `all-yes' - is former all. - -Mon Jan 15 21:46:01 1996 Howard Gayle <howard@hal.com> - - * localealias.c (alias_compare): Increment string pointers in loop - of strcasecmp replacement. - -Fri Dec 29 21:16:34 1995 Ulrich Drepper <drepper@myware> - - * Makefile.in (install-src): Who commented this goal out ? :-) - -Fri Dec 29 15:08:16 1995 Ulrich Drepper <drepper@myware> - - * dcgettext.c (DCGETTEXT): Save `errno'. Failing system calls - should not effect it because a missing catalog is no error. - Reported by Harald K<o:>nig <koenig@tat.physik.uni-tuebingen.de>. - -Tue Dec 19 22:09:13 1995 Ulrich Drepper <drepper@myware> - - * Makefile.in (Makefile): Explicitly use $(SHELL) for running - shell scripts. - -Fri Dec 15 17:34:59 1995 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> - - * Makefile.in (install-src): Only install library and header when - we use the own implementation. Don't do it when using the - system's gettext or catgets functions. - - * dcgettext.c (find_msg): Must not swap domain->hash_size here. - -Sat Dec 9 16:24:37 1995 Ulrich Drepper <drepper@myware> - - * localealias.c, libintl.inst, libgettext.h, hash-string.h, - gettextP.h, finddomain.c, dcgettext.c, cat-compat.c: - Use PARAMS instead of __P. Suggested by Roland McGrath. - -Tue Dec 5 11:39:14 1995 Larry Schwimmer <rosebud@cyclone.stanford.edu> - - * libgettext.h: Use `#if !defined (_LIBINTL_H)' instead of `#if - !_LIBINTL_H' because Solaris defines _LIBINTL_H as empty. - -Mon Dec 4 15:42:07 1995 Ulrich Drepper <drepper@myware> - - * Makefile.in (install-src): - Install libintl.inst instead of libintl.h.install. - -Sat Dec 2 22:51:38 1995 Marcus Daniels <marcus@sysc.pdx.edu> - - * cat-compat.c (textdomain): - Reverse order in which files are tried you load. First - try local file, when this failed absolute path. - -Wed Nov 29 02:03:53 1995 Nelson H. F. Beebe <beebe@math.utah.edu> - - * cat-compat.c (bindtextdomain): Add missing { }. - -Sun Nov 26 18:21:41 1995 Ulrich Drepper <drepper@myware> - - * libintl.inst: Add missing __P definition. Reported by Nelson Beebe. - - * Makefile.in: - Add dummy `all' and `dvi' goals. Reported by Tom Tromey. - -Sat Nov 25 16:12:01 1995 Franc,ois Pinard <pinard@iro.umontreal.ca> - - * hash-string.h: Capitalize arguments of macros. - -Sat Nov 25 12:01:36 1995 Ulrich Drepper <drepper@myware> - - * Makefile.in (DISTFILES): Prevent files names longer than 13 - characters. libintl.h.glibc->libintl.glibc, - libintl.h.install->libintl.inst. Reported by Joshua R. Poulson. - -Sat Nov 25 11:31:12 1995 Eric Backus <ericb@lsid.hp.com> - - * dcgettext.c: Fix bug in preprocessor conditionals. - -Sat Nov 25 02:35:27 1995 Nelson H. F. Beebe <beebe@math.utah.edu> - - * libgettext.h: Solaris cc does not understand - #if !SYMBOL1 && !SYMBOL2. Sad but true. - -Thu Nov 23 16:22:14 1995 Ulrich Drepper <drepper@myware> - - * hash-string.h (hash_string): - Fix for machine with >32 bit `unsigned long's. - - * dcgettext.c (DCGETTEXT): - Fix horrible bug in loop for alternative translation. - -Thu Nov 23 01:45:29 1995 Ulrich Drepper <drepper@myware> - - * po2tbl.sed.in, linux-msg.sed, xopen-msg.sed: - Some further simplifications in message number generation. - -Mon Nov 20 21:08:43 1995 Ulrich Drepper <drepper@myware> - - * libintl.h.glibc: Use __const instead of const in prototypes. - - * Makefile.in (install-src): - Install libintl.h.install instead of libintl.h. This - is a stripped-down version. Suggested by Peter Miller. - - * libintl.h.install, libintl.h.glibc: Initial revision. - - * localealias.c (_nl_expand_alias, read_alias_file): - Protect prototypes in type casts by __P. - -Tue Nov 14 16:43:58 1995 Ulrich Drepper <drepper@myware> - - * hash-string.h: Correct prototype for hash_string. - -Sun Nov 12 12:42:30 1995 Ulrich Drepper <drepper@myware> - - * hash-string.h (hash_string): Add prototype. - - * gettextP.h: Fix copyright. - (SWAP): Add prototype. - -Wed Nov 8 22:56:33 1995 Ulrich Drepper <drepper@myware> - - * localealias.c (read_alias_file): Forgot sizeof. - Avoid calling *printf function. This introduces a big overhead. - Patch by Roland McGrath. - -Tue Nov 7 14:21:08 1995 Ulrich Drepper <drepper@myware> - - * finddomain.c, cat-compat.c: Wrong indentation in #if for stpcpy. - - * finddomain.c (stpcpy): - Define substitution function local. The macro was to flaky. - - * cat-compat.c: Fix typo. - - * xopen-msg.sed, linux-msg.sed: - While bringing message number to right place only accept digits. - - * linux-msg.sed, xopen-msg.sed: Now that the counter does not have - leading 0s we don't need to remove them. Reported by Marcus - Daniels. - - * Makefile.in (../po/cat-id-tbl.o): Use $(top_srdir) in - dependency. Reported by Marcus Daniels. - - * cat-compat.c: (stpcpy) [!_LIBC && !HAVE_STPCPY]: Define replacement. - Generally cleanup using #if instead of #ifndef. - - * Makefile.in: Correct typos in comment. By Franc,ois Pinard. - -Mon Nov 6 00:27:02 1995 Ulrich Drepper <drepper@myware> - - * Makefile.in (install-src): Don't install libintl.h and libintl.a - if we use an available gettext implementation. - -Sun Nov 5 22:02:08 1995 Ulrich Drepper <drepper@myware> - - * libgettext.h: Fix typo: HAVE_CATGETTS -> HAVE_CATGETS. Reported - by Franc,ois Pinard. - - * libgettext.h: Use #if instead of #ifdef/#ifndef. - - * finddomain.c: - Comments describing what has to be done should start with FIXME. - -Sun Nov 5 19:38:01 1995 Ulrich Drepper <drepper@myware> - - * Makefile.in (DISTFILES): Split. Use DISTFILES with normal meaning. - DISTFILES.common names the files common to both dist goals. - DISTFILES.gettext are the files only distributed in GNU gettext. - -Sun Nov 5 17:32:54 1995 Ulrich Drepper <drepper@myware> - - * dcgettext.c (DCGETTEXT): Correct searching in derived locales. - This was necessary since a change in _nl_find_msg several weeks - ago. I really don't know this is still not fixed. - -Sun Nov 5 12:43:12 1995 Ulrich Drepper <drepper@myware> - - * loadmsgcat.c (_nl_load_domain): Test for FILENAME == NULL. This - might mark a special condition. - - * finddomain.c (make_entry_rec): Don't make illegal entry as decided. - - * Makefile.in (dist): Suppress error message when ln failed. - Get files from $(srcdir) explicitly. - - * libgettext.h (gettext_const): Rename to gettext_noop. - -Fri Nov 3 07:36:50 1995 Ulrich Drepper <drepper@myware> - - * finddomain.c (make_entry_rec): - Protect against wrong locale names by testing mask. - - * libgettext.h (gettext_const): Add macro definition. - Capitalize macro arguments. - -Thu Nov 2 23:15:51 1995 Ulrich Drepper <drepper@myware> - - * finddomain.c (_nl_find_domain): - Test for pointer != NULL before accessing value. - Reported by Tom Tromey. - - * gettext.c (NULL): - Define as (void*)0 instad of 0. Reported by Franc,ois Pinard. - -Mon Oct 30 21:28:52 1995 Ulrich Drepper <drepper@myware> - - * po2tbl.sed.in: Serious typo bug fixed by Jim Meyering. - -Sat Oct 28 23:20:47 1995 Ulrich Drepper <drepper@myware> - - * libgettext.h: Disable dcgettext optimization for Solaris 2.3. - - * localealias.c (alias_compare): - Peter Miller reported that tolower in some systems is - even dumber than I thought. Protect call by `isupper'. - -Fri Oct 27 22:22:51 1995 Ulrich Drepper <drepper@myware> - - * Makefile.in (libdir, includedir): New variables. - (install-src): Install libintl.a and libintl.h in correct dirs. - -Fri Oct 27 22:07:29 1995 Ulrich Drepper <drepper@myware> - - * Makefile.in (SOURCES): Fix typo: intrl.compat.c -> intl-compat.c. - - * po2tbl.sed.in: Patch for buggy SEDs by Christian von Roques. - - * localealias.c: - Fix typo and superflous test. Reported by Christian von Roques. - -Fri Oct 6 11:52:05 1995 Ulrich Drepper <drepper@myware> - - * finddomain.c (_nl_find_domain): - Correct some remainder from the pre-CEN syntax. Now - we don't have a constant number of successors anymore. - -Wed Sep 27 21:41:13 1995 Ulrich Drepper <drepper@myware> - - * Makefile.in (DISTFILES): Add libintl.h.glibc. - - * Makefile.in (dist-libc): Add goal for packing sources for glibc. - (COMSRCS, COMHDRS): Splitted to separate sources shared with glibc. - - * loadmsgcat.c: Forget to continue #if line. - - * localealias.c: - [_LIBC]: Rename strcasecmp to __strcasecmp to keep ANSI C name - space clean. - - * dcgettext.c, finddomain.c: Better comment to last change. - - * loadmsgcat.c: - [_LIBC]: Rename fstat, open, close, read, mmap, and munmap to - __fstat, __open, __close, __read, __mmap, and __munmap resp - to keep ANSI C name space clean. - - * finddomain.c: - [_LIBC]: Rename stpcpy to __stpcpy to keep ANSI C name space clean. - - * dcgettext.c: - [_LIBC]: Rename getced and stpcpy to __getcwd and __stpcpy resp to - keep ANSI C name space clean. - - * libgettext.h: - Include sys/types.h for those old SysV systems out there. - Reported by Francesco Potorti`. - - * loadmsgcat.c (use_mmap): Define if compiled for glibc. - - * bindtextdom.c: Include all those standard headers - unconditionally if _LIBC is defined. - - * finddomain.c: Fix 2 times defiend -> defined. - - * textdomain.c: Include libintl.h instead of libgettext.h when - compiling for glibc. Include all those standard headers - unconditionally if _LIBC is defined. - - * localealias.c, loadmsgcat.c: Prepare to be compiled in glibc. - - * gettext.c: - Include libintl.h instead of libgettext.h when compiling for glibc. - Get NULL from stddef.h if we compile for glibc. - - * finddomain.c: Include libintl.h instead of libgettext.h when - compiling for glibc. Include all those standard headers - unconditionally if _LIBC is defined. - - * dcgettext.c: Include all those standard headers unconditionally - if _LIBC is defined. - - * dgettext.c: If compiled in glibc include libintl.h instead of - libgettext.h. - (locale.h): Don't rely on HAVE_LOCALE_H when compiling for glibc. - - * dcgettext.c: If compiled in glibc include libintl.h instead of - libgettext.h. - (getcwd): Don't rely on HAVE_GETCWD when compiling for glibc. - - * bindtextdom.c: - If compiled in glibc include libintl.h instead of libgettext.h. - -Mon Sep 25 22:23:06 1995 Ulrich Drepper <drepper@myware> - - * localealias.c (_nl_expand_alias): Don't call bsearch if NMAP <= 0. - Reported by Marcus Daniels. - - * cat-compat.c (bindtextdomain): - String used in putenv must not be recycled. - Reported by Marcus Daniels. - - * libgettext.h (__USE_GNU_GETTEXT): - Additional symbol to signal that we use GNU gettext - library. - - * cat-compat.c (bindtextdomain): - Fix bug with the strange stpcpy replacement. - Reported by Nelson Beebe. - -Sat Sep 23 08:23:51 1995 Ulrich Drepper <drepper@myware> - - * cat-compat.c: Include <string.h> for stpcpy prototype. - - * localealias.c (read_alias_file): - While expand strdup code temporary variable `cp' hided - higher level variable with same name. Rename to `tp'. - - * textdomain.c (textdomain): - Avoid warning by using temporary variable in strdup code. - - * finddomain.c (_nl_find_domain): Remove unused variable `application'. - -Thu Sep 21 15:51:44 1995 Ulrich Drepper <drepper@myware> - - * localealias.c (alias_compare): - Use strcasecmp() only if available. Else use - implementation in place. - - * intl-compat.c: - Wrapper functions now call *__ functions instead of __*. - - * libgettext.h: Declare prototypes for *__ functions instead for __*. - - * cat-compat.c, loadmsgcat.c: - Don't use xmalloc, xstrdup, and stpcpy. These functions are not part - of the standard libc and so prevent libintl.a from being used - standalone. - - * bindtextdom.c: - Don't use xmalloc, xstrdup, and stpcpy. These functions are not part - of the standard libc and so prevent libintl.a from being used - standalone. - Rename to bindtextdomain__ if not used in GNU C Library. - - * dgettext.c: - Rename function to dgettext__ if not used in GNU C Library. - - * gettext.c: - Don't use xmalloc, xstrdup, and stpcpy. These functions are not part - of the standard libc and so prevent libintl.a from being used - standalone. - Functions now called gettext__ if not used in GNU C Library. - - * dcgettext.c, localealias.c, textdomain.c, finddomain.c: - Don't use xmalloc, xstrdup, and stpcpy. These functions are not part - of the standard libc and so prevent libintl.a from being used - standalone. - -Sun Sep 17 23:14:49 1995 Ulrich Drepper <drepper@myware> - - * finddomain.c: Correct some bugs in handling of CEN standard - locale definitions. - -Thu Sep 7 01:49:28 1995 Ulrich Drepper <drepper@myware> - - * finddomain.c: Implement CEN syntax. - - * gettextP.h (loaded_domain): Extend number of successors to 31. - -Sat Aug 19 19:25:29 1995 Ulrich Drepper <drepper@myware> - - * Makefile.in (aliaspath): Remove path to X11 locale dir. - - * Makefile.in: Make install-src depend on install. This helps - gettext to install the sources and other packages can use the - install goal. - -Sat Aug 19 15:19:33 1995 Ulrich Drepper <drepper@myware> - - * Makefile.in (uninstall): Remove stuff installed by install-src. - -Tue Aug 15 13:13:53 1995 Ulrich Drepper <drepper@myware> - - * VERSION.in: Initial revision. - - * Makefile.in (DISTFILES): - Add VERSION file. This is not necessary for gettext, but - for other packages using this library. - -Tue Aug 15 06:16:44 1995 Ulrich Drepper <drepper@myware> - - * gettextP.h (_nl_find_domain): - New prototype after changing search strategy. - - * finddomain.c (_nl_find_domain): - We now try only to find a specified catalog. Fall back to other - catalogs listed in the locale list is now done in __dcgettext. - - * dcgettext.c (__dcgettext): - Now we provide message fall back even to different languages. - I.e. if a message is not available in one language all the other - in the locale list a tried. Formerly fall back was only possible - within one language. Implemented by moving one loop from - _nl_find_domain to here. - -Mon Aug 14 23:45:50 1995 Ulrich Drepper <drepper@myware> - - * Makefile.in (gettextsrcdir): - Directory where source of GNU gettext library are made - available. - (INSTALL, INSTALL_DATA): Programs used for installing sources. - (gettext-src): New. Rule to install GNU gettext sources for use in - gettextize shell script. - -Sun Aug 13 14:40:48 1995 Ulrich Drepper <drepper@myware> - - * loadmsgcat.c (_nl_load_domain): - Use mmap for loading only when munmap function is - also available. - - * Makefile.in (install): Depend on `all' goal. - -Wed Aug 9 11:04:33 1995 Ulrich Drepper <drepper@myware> - - * localealias.c (read_alias_file): - Do not overwrite '\n' when terminating alias value string. - - * localealias.c (read_alias_file): - Handle long lines. Ignore the rest not fitting in - the buffer after the initial `fgets' call. - -Wed Aug 9 00:54:29 1995 Ulrich Drepper <drepper@myware> - - * gettextP.h (_nl_load_domain): - Add prototype, replacing prototype for _nl_load_msg_cat. - - * finddomain.c (_nl_find_domain): - Remove unneeded variable filename and filename_len. - (expand_alias): Remove prototype because functions does not - exist anymore. - - * localealias.c (read_alias_file): - Change type of fname_len parameter to int. - (xmalloc): Add prototype. - - * loadmsgcat.c: Better prototypes for xmalloc. - -Tue Aug 8 22:30:39 1995 Ulrich Drepper <drepper@myware> - - * finddomain.c (_nl_find_domain): - Allow alias name to be constructed from the four components. - - * Makefile.in (aliaspath): New variable. Set to preliminary value. - (SOURCES): Add localealias.c. - (OBJECTS): Add localealias.o. - - * gettextP.h: Add prototype for _nl_expand_alias. - - * finddomain.c: Aliasing handled in intl/localealias.c. - - * localealias.c: Aliasing for locale names. - - * bindtextdom.c: Better prototypes for xmalloc and xstrdup. - -Mon Aug 7 23:47:42 1995 Ulrich Drepper <drepper@myware> - - * Makefile.in (DISTFILES): gettext.perl is now found in misc/. - - * cat-compat.c (bindtextdomain): - Correct implementation. dirname parameter was not used. - Reported by Marcus Daniels. - - * gettextP.h (loaded_domain): - New fields `successor' and `decided' for oo, lazy - message handling implementation. - - * dcgettext.c: - Adopt for oo, lazy message handliing. - Now we can inherit translations from less specific locales. - (find_msg): New function. - - * loadmsgcat.c, finddomain.c: - Complete rewrite. Implement oo, lazy message handling :-). - We now have an additional environment variable `LANGUAGE' with - a higher priority than LC_ALL for the LC_MESSAGE locale. - Here we can set a colon separated list of specifications each - of the form `language[_territory[.codeset]][@modifier]'. - -Sat Aug 5 09:55:42 1995 Ulrich Drepper <drepper@myware> - - * finddomain.c (unistd.h): - Include to get _PC_PATH_MAX defined on system having it. - -Fri Aug 4 22:42:00 1995 Ulrich Drepper <drepper@myware> - - * finddomain.c (stpcpy): Include prototype. - - * Makefile.in (dist): Remove `copying instead' message. - -Wed Aug 2 18:52:03 1995 Ulrich Drepper <drepper@myware> - - * Makefile.in (ID, TAGS): Do not use $^. - -Tue Aug 1 20:07:11 1995 Ulrich Drepper <drepper@myware> - - * Makefile.in (TAGS, ID): Use $^ as command argument. - (TAGS): Give etags -o option t write to current directory, - not $(srcdir). - (ID): Use $(srcdir) instead os $(top_srcdir)/src. - (distclean): Remove ID. - -Sun Jul 30 11:51:46 1995 Ulrich Drepper <drepper@myware> - - * Makefile.in (gnulocaledir): - New variable, always using share/ for data directory. - (DEFS): Add GNULOCALEDIR, used in finddomain.c. - - * finddomain.c (_nl_default_dirname): - Set to GNULOCALEDIR, because it always has to point - to the directory where GNU gettext Library writes it to. - - * intl-compat.c (textdomain, bindtextdomain): - Undefine macros before function definition. - -Sat Jul 22 01:10:02 1995 Ulrich Drepper <drepper@myware> - - * libgettext.h (_LIBINTL_H): - Protect definition in case where this file is included as - libgettext.h on Solaris machines. Add comment about this. - -Wed Jul 19 02:36:42 1995 Ulrich Drepper <drepper@myware> - - * intl-compat.c (textdomain): Correct typo. - -Wed Jul 19 01:51:35 1995 Ulrich Drepper <drepper@myware> - - * dcgettext.c (dcgettext): Function now called __dcgettext. - - * dgettext.c (dgettext): Now called __dgettext and calls - __dcgettext. - - * gettext.c (gettext): - Function now called __gettext and calls __dgettext. - - * textdomain.c (textdomain): Function now called __textdomain. - - * bindtextdom.c (bindtextdomain): Function now called - __bindtextdomain. - - * intl-compat.c: Initial revision. - - * Makefile.in (SOURCES): Add intl-compat.c. - (OBJECTS): We always compile the GNU gettext library functions. - OBJECTS contains all objects but cat-compat.o, ../po/cat-if-tbl.o, - and intl-compat.o. - (GETTOBJS): Contains now only intl-compat.o. - - * libgettext.h: - Re-include protection matches dualistic character of libgettext.h. - For all functions in GNU gettext library define __ counter part. - - * finddomain.c (strchr): Define as index if not found in C library. - (_nl_find_domain): For relative paths paste / in between. - -Tue Jul 18 16:37:45 1995 Ulrich Drepper <drepper@myware> - - * loadmsgcat.c, finddomain.c: Add inclusion of sys/types.h. - - * xopen-msg.sed: Fix bug with `msgstr ""' lines. - A little bit better comments. - -Tue Jul 18 01:18:27 1995 Ulrich Drepper <drepper@myware> - - * Makefile.in: - po-mode.el, makelinks, combine-sh are now found in ../misc. - - * po-mode.el, makelinks, combine-sh, elisp-comp: - Moved to ../misc/. - - * libgettext.h, gettextP.h, gettext.h: Uniform test for __STDC__. - -Sun Jul 16 22:33:02 1995 Ulrich Drepper <drepper@myware> - - * Makefile.in (INSTALL, INSTALL_DATA): New variables. - (install-data, uninstall): Install/uninstall .elc file. - - * po-mode.el (Installation comment): - Add .pox as possible extension of .po files. - -Sun Jul 16 13:23:27 1995 Ulrich Drepper <drepper@myware> - - * elisp-comp: Complete new version by Franc,ois: This does not - fail when not compiling in the source directory. - -Sun Jul 16 00:12:17 1995 Ulrich Drepper <drepper@myware> - - * Makefile.in (../po/cat-id-tbl.o): - Use $(MAKE) instead of make for recursive make. - - * Makefile.in (.el.elc): Use $(SHELL) instead of /bin/sh. - (install-exec): Add missing dummy goal. - (install-data, uninstall): @ in multi-line shell command at - beginning, not in front of echo. Reported by Eric Backus. - -Sat Jul 15 00:21:28 1995 Ulrich Drepper <drepper@myware> - - * Makefile.in (DISTFILES): - Rename libgettext.perl to gettext.perl to fit in 14 chars - file systems. - - * gettext.perl: - Rename to gettext.perl to fit in 14 chars file systems. - -Thu Jul 13 23:17:20 1995 Ulrich Drepper <drepper@myware> - - * cat-compat.c: If !STDC_HEADERS try to include malloc.h. - -Thu Jul 13 20:55:02 1995 Ulrich Drepper <drepper@myware> - - * po2tbl.sed.in: Pretty printing. - - * linux-msg.sed, xopen-msg.sed: - Correct bugs with handling substitute flags in branches. - - * hash-string.h (hash_string): - Old K&R compilers don't under stand `unsigned char'. - - * gettext.h (nls_uint32): - Some old K&R compilers (eg HP) don't understand `unsigned int'. - - * cat-compat.c (msg_to_cat_id): De-ANSI-fy prototypes. - -Thu Jul 13 01:34:33 1995 Ulrich Drepper <drepper@myware> - - * Makefile.in (ELCFILES): New variable. - (DISTFILES): Add elisp-comp. - Add implicit rule for .el -> .elc compilation. - (install-data): install $ELCFILES - (clean): renamed po-to-tbl and po-to-msg to po2tbl and po2msg resp. - - * elisp-comp: Initial revision - -Wed Jul 12 16:14:52 1995 Ulrich Drepper <drepper@myware> - - * Makefile.in: - cat-id-tbl.c is now found in po/. This enables us to use an identical - intl/ directory in all packages. - - * dcgettext.c (dcgettext): hashing does not work for table size <= 2. - - * textdomain.c: fix typo (#if def -> #if defined) - -Tue Jul 11 18:44:43 1995 Ulrich Drepper <drepper@myware> - - * Makefile.in (stamp-cat-id): use top_srcdir to address source files - (DISTFILES,distclean): move tupdate.perl to src/ - - * po-to-tbl.sed.in: - add additional jump to clear change flag to recognize multiline strings - -Tue Jul 11 01:32:50 1995 Ulrich Drepper <drepper@myware> - - * textdomain.c: Protect inclusion of stdlib.h and string.h. - - * loadmsgcat.c: Protect inclusion of stdlib.h. - - * libgettext.h: Protect inclusion of locale.h. - Allow use in C++ programs. - Define NULL is not happened already. - - * Makefile.in (DISTFILES): ship po-to-tbl.sed.in instead of - po-to-tbl.sed. - (distclean): remove po-to-tbl.sed and tupdate.perl. - - * tupdate.perl.in: Substitute Perl path even in exec line. - Don't include entries without translation from old .po file. - -Tue Jul 4 00:41:51 1995 Ulrich Drepper <drepper@myware> - - * tupdate.perl.in: use "Updated: " in msgid "". - - * cat-compat.c: Fix typo (LOCALDIR -> LOCALEDIR). - Define getenv if !__STDC__. - - * bindtextdom.c: Protect stdlib.h and string.h inclusion. - Define free if !__STDC__. - - * finddomain.c: Change DEF_MSG_DOM_DIR to LOCALEDIR. - Define free if !__STDC__. - - * cat-compat.c: Change DEF_MSG_DOM_DIR to LOCALEDIR. - -Mon Jul 3 23:56:30 1995 Ulrich Drepper <drepper@myware> - - * Makefile.in: Use LOCALEDIR instead of DEF_MSG_DOM_DIR. - Remove unneeded $(srcdir) from Makefile.in dependency. - - * makelinks: Add copyright and short description. - - * po-mode.el: Last version for 0.7. - - * tupdate.perl.in: Fix die message. - - * dcgettext.c: Protect include of string.h. - - * gettext.c: Protect include of stdlib.h and further tries to get NULL. - - * finddomain.c: Some corrections in includes. - - * Makefile.in (INCLUDES): Prune list correct path to Makefile.in. - - * po-to-tbl.sed: Adopt for new .po file format. - - * linux-msg.sed, xopen-msg.sed: Adopt for new .po file format. - -Sun Jul 2 23:55:03 1995 Ulrich Drepper <drepper@myware> - - * tupdate.perl.in: Complete rewrite for new .po file format. - -Sun Jul 2 02:06:50 1995 Ulrich Drepper <drepper@myware> - - * First official release. This directory contains all the code - needed to internationalize own packages. It provides functions - which allow to use the X/Open catgets function with an interface - like the Uniforum gettext function. For system which does not - have neither of those a complete implementation is provided. diff --git a/gcc/intl/Makefile.in b/gcc/intl/Makefile.in deleted file mode 100755 index cc1d6ce..0000000 --- a/gcc/intl/Makefile.in +++ /dev/null @@ -1,218 +0,0 @@ -# Makefile for directory with message catalog handling in GNU NLS Utilities. -# Copyright (C) 1995, 1996, 1997 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. - -PACKAGE = @PACKAGE@ -VERSION = @VERSION@ - -SHELL = /bin/sh - -srcdir = @srcdir@ -top_srcdir = @top_srcdir@ -top_builddir = .. -VPATH = @srcdir@ - -prefix = @prefix@ -exec_prefix = @exec_prefix@ -transform = @program_transform_name@ -libdir = $(exec_prefix)/lib -includedir = $(prefix)/include -datadir = $(prefix)/@DATADIRNAME@ -localedir = $(datadir)/locale -gnulocaledir = $(prefix)/share/locale -gettextsrcdir = @datadir@/gettext/intl -aliaspath = $(localedir):. -subdir = intl - -INSTALL = @INSTALL@ -INSTALL_DATA = @INSTALL_DATA@ -MKINSTALLDIRS = @MKINSTALLDIRS@ - -l = @l@ - -AR = ar -CC = @CC@ -LIBTOOL = @LIBTOOL@ -RANLIB = @RANLIB@ - -DEFS = -DLOCALEDIR=\"$(localedir)\" -DGNULOCALEDIR=\"$(gnulocaledir)\" \ --DLOCALE_ALIAS_PATH=\"$(aliaspath)\" @DEFS@ -CPPFLAGS = @CPPFLAGS@ -CFLAGS = @CFLAGS@ -LDFLAGS = @LDFLAGS@ - -COMPILE = $(CC) -c $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CFLAGS) $(XCFLAGS) - -HEADERS = $(COMHDRS) libgettext.h loadinfo.h -COMHDRS = gettext.h gettextP.h hash-string.h -SOURCES = $(COMSRCS) intl-compat.c cat-compat.c -COMSRCS = bindtextdom.c dcgettext.c dgettext.c gettext.c \ -finddomain.c loadmsgcat.c localealias.c textdomain.c l10nflist.c \ -explodename.c -OBJECTS = @INTLOBJS@ bindtextdom.$lo dcgettext.$lo dgettext.$lo gettext.$lo \ -finddomain.$lo loadmsgcat.$lo localealias.$lo textdomain.$lo l10nflist.$lo \ -explodename.$lo -CATOBJS = cat-compat.$lo ../po/cat-id-tbl.$lo -GETTOBJS = intl-compat.$lo -DISTFILES.common = ChangeLog Makefile.in linux-msg.sed po2tbl.sed.in \ -xopen-msg.sed $(HEADERS) $(SOURCES) -DISTFILES.normal = VERSION -DISTFILES.gettext = libintl.glibc intlh.inst.in - -.SUFFIXES: -.SUFFIXES: .c .o .lo -.c.o: - $(COMPILE) $< -.c.lo: - $(LIBTOOL) --mode=compile $(COMPILE) $< - -INCLUDES = -I.. -I. -I$(top_srcdir)/intl -I$(top_srcdir)/lib - -all: all-@USE_INCLUDED_LIBINTL@ - -all-yes: libintl.$la intlh.inst -all-no: - -libintl.a: $(OBJECTS) - rm -f $@ - $(AR) cru $@ $(OBJECTS) - $(RANLIB) $@ - -libintl.la: $(OBJECTS) - $(LIBTOOL) --mode=link $(CC) $(LDFLAGS) -o $@ $(OBJECTS) \ - -version-info 1:0 -rpath $(libdir) - -../po/cat-id-tbl.$lo: ../po/cat-id-tbl.c $(top_srcdir)/po/$(PACKAGE).pot - cd ../po && $(MAKE) cat-id-tbl.$lo - -check: all - -# This installation goal is only used in GNU gettext. Packages which -# only use the library should use install instead. - -# We must not install the libintl.h/libintl.a files if we are on a -# system which has the gettext() function in its C library or in a -# separate library or use the catgets interface. A special case is -# where configure found a previously installed GNU gettext library. -# If you want to use the one which comes with this version of the -# package, you have to use `configure --with-included-gettext'. -install: install-exec install-data -install-exec: all - if test "$(PACKAGE)" = "gettext" \ - && test '@INTLOBJS@' = '$(GETTOBJS)'; then \ - if test -r $(MKINSTALLDIRS); then \ - $(MKINSTALLDIRS) $(libdir) $(includedir); \ - else \ - $(top_srcdir)/mkinstalldirs $(libdir) $(includedir); \ - fi; \ - $(INSTALL_DATA) intlh.inst $(includedir)/libintl.h; \ - $(INSTALL_DATA) libintl.a $(libdir)/libintl.a; \ - else \ - : ; \ - fi -install-data: all - if test "$(PACKAGE)" = "gettext"; then \ - if test -r $(MKINSTALLDIRS); then \ - $(MKINSTALLDIRS) $(gettextsrcdir); \ - else \ - $(top_srcdir)/mkinstalldirs $(gettextsrcdir); \ - fi; \ - $(INSTALL_DATA) VERSION $(gettextsrcdir)/VERSION; \ - dists="$(DISTFILES.common)"; \ - for file in $$dists; do \ - $(INSTALL_DATA) $(srcdir)/$$file $(gettextsrcdir)/$$file; \ - done; \ - else \ - : ; \ - fi - -# Define this as empty until I found a useful application. -installcheck: - -uninstall: - if test "$(PACKAGE)" = "gettext"; then \ - dists="$(DISTFILES.common)"; \ - for file in $$dists; do \ - rm -f $(gettextsrcdir)/$$file; \ - done - else \ - : ; \ - fi - -info dvi: - -$(OBJECTS): ../config.h libgettext.h -bindtextdom.$lo finddomain.$lo loadmsgcat.$lo: gettextP.h gettext.h loadinfo.h -dcgettext.$lo: gettextP.h gettext.h hash-string.h loadinfo.h - -tags: TAGS - -TAGS: $(HEADERS) $(SOURCES) - here=`pwd`; cd $(srcdir) && etags -o $$here/TAGS $(HEADERS) $(SOURCES) - -id: ID - -ID: $(HEADERS) $(SOURCES) - here=`pwd`; cd $(srcdir) && mkid -f$$here/ID $(HEADERS) $(SOURCES) - - -mostlyclean: - rm -f *.a *.o *.lo core core.* - -clean: mostlyclean - -distclean: clean - rm -f Makefile ID TAGS po2msg.sed po2tbl.sed - -maintainer-clean: distclean - @echo "This command is intended for maintainers to use;" - @echo "it deletes files that may require special tools to rebuild." - - -# GNU gettext needs not contain the file `VERSION' but contains some -# other files which should not be distributed in other packages. -distdir = ../$(PACKAGE)-$(VERSION)/$(subdir) -dist distdir: Makefile $(DISTFILES) - if test "$(PACKAGE)" = gettext; then \ - additional="$(DISTFILES.gettext)"; \ - else \ - additional="$(DISTFILES.normal)"; \ - fi; \ - for file in $(DISTFILES.common) $$additional; do \ - ln $(srcdir)/$$file $(distdir) 2> /dev/null \ - || cp -p $(srcdir)/$$file $(distdir); \ - done - -dist-libc: - tar zcvf intl-glibc.tar.gz $(COMSRCS) $(COMHDRS) libintl.h.glibc - -Makefile: Makefile.in ../config.status - cd .. \ - && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status - -# The dependency for intlh.inst is different in gettext and all other -# packages. Because we cannot you GNU make features we have to solve -# the problem while rewriting Makefile.in. -@GT_YES@intlh.inst: intlh.inst.in ../config.status -@GT_YES@ cd .. \ -@GT_YES@ && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= \ -@GT_YES@ $(SHELL) ./config.status -@GT_NO@.PHONY: intlh.inst -@GT_NO@intlh.inst: - -# Tell versions [3.59,3.63) of GNU make not to export all variables. -# Otherwise a system limit (for SysV at least) may be exceeded. -.NOEXPORT: diff --git a/gcc/intl/VERSION b/gcc/intl/VERSION deleted file mode 100755 index ee66b06..0000000 --- a/gcc/intl/VERSION +++ /dev/null @@ -1 +0,0 @@ -GNU gettext library from gettext-0.10.35 diff --git a/gcc/intl/bindtextdom.c b/gcc/intl/bindtextdom.c deleted file mode 100755 index d9c3f34..0000000 --- a/gcc/intl/bindtextdom.c +++ /dev/null @@ -1,203 +0,0 @@ -/* Implementation of the bindtextdomain(3) function - Copyright (C) 1995, 1996, 1997, 1998 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. */ - -#ifdef HAVE_CONFIG_H -# include <config.h> -#endif - -#if defined STDC_HEADERS || defined _LIBC -# include <stdlib.h> -#else -# ifdef HAVE_MALLOC_H -# include <malloc.h> -# else -void free (); -# endif -#endif - -#if defined HAVE_STRING_H || defined _LIBC -# include <string.h> -#else -# include <strings.h> -# ifndef memcpy -# define memcpy(Dst, Src, Num) bcopy (Src, Dst, Num) -# endif -#endif - -#ifdef _LIBC -# include <libintl.h> -#else -# include "libgettext.h" -#endif -#include "gettext.h" -#include "gettextP.h" - -/* @@ end of prolog @@ */ - -/* Contains the default location of the message catalogs. */ -extern const char _nl_default_dirname[]; - -/* List with bindings of specific domains. */ -extern struct binding *_nl_domain_bindings; - - -/* Names for the libintl functions are a problem. They must not clash - with existing names and they should follow ANSI C. But this source - code is also used in GNU C Library where the names have a __ - prefix. So we have to make a difference here. */ -#ifdef _LIBC -# define BINDTEXTDOMAIN __bindtextdomain -# ifndef strdup -# define strdup(str) __strdup (str) -# endif -#else -# define BINDTEXTDOMAIN bindtextdomain__ -#endif - -/* Specify that the DOMAINNAME message catalog will be found - in DIRNAME rather than in the system locale data base. */ -char * -BINDTEXTDOMAIN (domainname, dirname) - const char *domainname; - const char *dirname; -{ - struct binding *binding; - - /* Some sanity checks. */ - if (domainname == NULL || domainname[0] == '\0') - return NULL; - - for (binding = _nl_domain_bindings; binding != NULL; binding = binding->next) - { - int compare = strcmp (domainname, binding->domainname); - if (compare == 0) - /* We found it! */ - break; - if (compare < 0) - { - /* It is not in the list. */ - binding = NULL; - break; - } - } - - if (dirname == NULL) - /* The current binding has be to returned. */ - return binding == NULL ? (char *) _nl_default_dirname : binding->dirname; - - if (binding != NULL) - { - /* The domain is already bound. If the new value and the old - one are equal we simply do nothing. Otherwise replace the - old binding. */ - if (strcmp (dirname, binding->dirname) != 0) - { - char *new_dirname; - - if (strcmp (dirname, _nl_default_dirname) == 0) - new_dirname = (char *) _nl_default_dirname; - else - { -#if defined _LIBC || defined HAVE_STRDUP - new_dirname = strdup (dirname); - if (new_dirname == NULL) - return NULL; -#else - size_t len = strlen (dirname) + 1; - new_dirname = (char *) malloc (len); - if (new_dirname == NULL) - return NULL; - - memcpy (new_dirname, dirname, len); -#endif - } - - if (binding->dirname != _nl_default_dirname) - free (binding->dirname); - - binding->dirname = new_dirname; - } - } - else - { - /* We have to create a new binding. */ -#if !defined _LIBC && !defined HAVE_STRDUP - size_t len; -#endif - struct binding *new_binding = - (struct binding *) malloc (sizeof (*new_binding)); - - if (new_binding == NULL) - return NULL; - -#if defined _LIBC || defined HAVE_STRDUP - new_binding->domainname = strdup (domainname); - if (new_binding->domainname == NULL) - return NULL; -#else - len = strlen (domainname) + 1; - new_binding->domainname = (char *) malloc (len); - if (new_binding->domainname == NULL) - return NULL; - memcpy (new_binding->domainname, domainname, len); -#endif - - if (strcmp (dirname, _nl_default_dirname) == 0) - new_binding->dirname = (char *) _nl_default_dirname; - else - { -#if defined _LIBC || defined HAVE_STRDUP - new_binding->dirname = strdup (dirname); - if (new_binding->dirname == NULL) - return NULL; -#else - len = strlen (dirname) + 1; - new_binding->dirname = (char *) malloc (len); - if (new_binding->dirname == NULL) - return NULL; - memcpy (new_binding->dirname, dirname, len); -#endif - } - - /* Now enqueue it. */ - if (_nl_domain_bindings == NULL - || strcmp (domainname, _nl_domain_bindings->domainname) < 0) - { - new_binding->next = _nl_domain_bindings; - _nl_domain_bindings = new_binding; - } - else - { - binding = _nl_domain_bindings; - while (binding->next != NULL - && strcmp (domainname, binding->next->domainname) > 0) - binding = binding->next; - - new_binding->next = binding->next; - binding->next = new_binding; - } - - binding = new_binding; - } - - return binding->dirname; -} - -#ifdef _LIBC -/* Alias for function name in GNU C Library. */ -weak_alias (__bindtextdomain, bindtextdomain); -#endif diff --git a/gcc/intl/cat-compat.c b/gcc/intl/cat-compat.c deleted file mode 100755 index 867d901..0000000 --- a/gcc/intl/cat-compat.c +++ /dev/null @@ -1,262 +0,0 @@ -/* Compatibility code for gettext-using-catgets interface. - Copyright (C) 1995, 1997 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. */ - -#ifdef HAVE_CONFIG_H -# include <config.h> -#endif - -#include <stdio.h> - -#ifdef STDC_HEADERS -# include <stdlib.h> -# include <string.h> -#else -char *getenv (); -# ifdef HAVE_MALLOC_H -# include <malloc.h> -# endif -#endif - -#ifdef HAVE_NL_TYPES_H -# include <nl_types.h> -#endif - -#include "libgettext.h" - -/* @@ end of prolog @@ */ - -/* XPG3 defines the result of `setlocale (category, NULL)' as: - ``Directs `setlocale()' to query `category' and return the current - setting of `local'.'' - However it does not specify the exact format. And even worse: POSIX - defines this not at all. So we can use this feature only on selected - system (e.g. those using GNU C Library). */ -#ifdef _LIBC -# define HAVE_LOCALE_NULL -#endif - -/* The catalog descriptor. */ -static nl_catd catalog = (nl_catd) -1; - -/* Name of the default catalog. */ -static const char default_catalog_name[] = "messages"; - -/* Name of currently used catalog. */ -static const char *catalog_name = default_catalog_name; - -/* Get ID for given string. If not found return -1. */ -static int msg_to_cat_id PARAMS ((const char *msg)); - -/* Substitution for systems lacking this function in their C library. */ -#if !_LIBC && !HAVE_STPCPY -static char *stpcpy PARAMS ((char *dest, const char *src)); -#endif - - -/* Set currently used domain/catalog. */ -char * -textdomain (domainname) - const char *domainname; -{ - nl_catd new_catalog; - char *new_name; - size_t new_name_len; - char *lang; - -#if defined HAVE_SETLOCALE && defined HAVE_LC_MESSAGES \ - && defined HAVE_LOCALE_NULL - lang = setlocale (LC_MESSAGES, NULL); -#else - lang = getenv ("LC_ALL"); - if (lang == NULL || lang[0] == '\0') - { - lang = getenv ("LC_MESSAGES"); - if (lang == NULL || lang[0] == '\0') - lang = getenv ("LANG"); - } -#endif - if (lang == NULL || lang[0] == '\0') - lang = "C"; - - /* See whether name of currently used domain is asked. */ - if (domainname == NULL) - return (char *) catalog_name; - - if (domainname[0] == '\0') - domainname = default_catalog_name; - - /* Compute length of added path element. */ - new_name_len = sizeof (LOCALEDIR) - 1 + 1 + strlen (lang) - + sizeof ("/LC_MESSAGES/") - 1 + sizeof (PACKAGE) - 1 - + sizeof (".cat"); - - new_name = (char *) malloc (new_name_len); - if (new_name == NULL) - return NULL; - - strcpy (new_name, PACKAGE); - new_catalog = catopen (new_name, 0); - - if (new_catalog == (nl_catd) -1) - { - /* NLSPATH search didn't work, try absolute path */ - sprintf (new_name, "%s/%s/LC_MESSAGES/%s.cat", LOCALEDIR, lang, - PACKAGE); - new_catalog = catopen (new_name, 0); - - if (new_catalog == (nl_catd) -1) - { - free (new_name); - return (char *) catalog_name; - } - } - - /* Close old catalog. */ - if (catalog != (nl_catd) -1) - catclose (catalog); - if (catalog_name != default_catalog_name) - free ((char *) catalog_name); - - catalog = new_catalog; - catalog_name = new_name; - - return (char *) catalog_name; -} - -char * -bindtextdomain (domainname, dirname) - const char *domainname; - const char *dirname; -{ -#if HAVE_SETENV || HAVE_PUTENV - char *old_val, *new_val, *cp; - size_t new_val_len; - - /* This does not make much sense here but to be compatible do it. */ - if (domainname == NULL) - return NULL; - - /* Compute length of added path element. If we use setenv we don't need - the first byts for NLSPATH=, but why complicate the code for this - peanuts. */ - new_val_len = sizeof ("NLSPATH=") - 1 + strlen (dirname) - + sizeof ("/%L/LC_MESSAGES/%N.cat"); - - old_val = getenv ("NLSPATH"); - if (old_val == NULL || old_val[0] == '\0') - { - old_val = NULL; - new_val_len += 1 + sizeof (LOCALEDIR) - 1 - + sizeof ("/%L/LC_MESSAGES/%N.cat"); - } - else - new_val_len += strlen (old_val); - - new_val = (char *) malloc (new_val_len); - if (new_val == NULL) - return NULL; - -# if HAVE_SETENV - cp = new_val; -# else - cp = stpcpy (new_val, "NLSPATH="); -# endif - - cp = stpcpy (cp, dirname); - cp = stpcpy (cp, "/%L/LC_MESSAGES/%N.cat:"); - - if (old_val == NULL) - { -# if __STDC__ - stpcpy (cp, LOCALEDIR "/%L/LC_MESSAGES/%N.cat"); -# else - - cp = stpcpy (cp, LOCALEDIR); - stpcpy (cp, "/%L/LC_MESSAGES/%N.cat"); -# endif - } - else - stpcpy (cp, old_val); - -# if HAVE_SETENV - setenv ("NLSPATH", new_val, 1); - free (new_val); -# else - putenv (new_val); - /* Do *not* free the environment entry we just entered. It is used - from now on. */ -# endif - -#endif - - return (char *) domainname; -} - -#undef gettext -char * -gettext (msg) - const char *msg; -{ - int msgid; - - if (msg == NULL || catalog == (nl_catd) -1) - return (char *) msg; - - /* Get the message from the catalog. We always use set number 1. - The message ID is computed by the function `msg_to_cat_id' - which works on the table generated by `po-to-tbl'. */ - msgid = msg_to_cat_id (msg); - if (msgid == -1) - return (char *) msg; - - return catgets (catalog, 1, msgid, (char *) msg); -} - -/* Look through the table `_msg_tbl' which has `_msg_tbl_length' entries - for the one equal to msg. If it is found return the ID. In case when - the string is not found return -1. */ -static int -msg_to_cat_id (msg) - const char *msg; -{ - int cnt; - - for (cnt = 0; cnt < _msg_tbl_length; ++cnt) - if (strcmp (msg, _msg_tbl[cnt]._msg) == 0) - return _msg_tbl[cnt]._msg_number; - - return -1; -} - - -/* @@ begin of epilog @@ */ - -/* We don't want libintl.a to depend on any other library. So we - avoid the non-standard function stpcpy. In GNU C Library this - function is available, though. Also allow the symbol HAVE_STPCPY - to be defined. */ -#if !_LIBC && !HAVE_STPCPY -static char * -stpcpy (dest, src) - char *dest; - const char *src; -{ - while ((*dest++ = *src++) != '\0') - /* Do nothing. */ ; - return dest - 1; -} -#endif diff --git a/gcc/intl/dcgettext.c b/gcc/intl/dcgettext.c deleted file mode 100755 index c4c7a2c..0000000 --- a/gcc/intl/dcgettext.c +++ /dev/null @@ -1,624 +0,0 @@ -/* Implementation of the dcgettext(3) function. - Copyright (C) 1995, 1996, 1997, 1998 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. */ - -#ifdef HAVE_CONFIG_H -# include <config.h> -#endif - -#include <sys/types.h> - -#ifdef __GNUC__ -# define alloca __builtin_alloca -# define HAVE_ALLOCA 1 -#else -# if defined HAVE_ALLOCA_H || defined _LIBC -# include <alloca.h> -# else -# ifdef _AIX - #pragma alloca -# else -# ifndef alloca -char *alloca (); -# endif -# endif -# endif -#endif - -#include <errno.h> -#ifndef errno -extern int errno; -#endif -#ifndef __set_errno -# define __set_errno(val) errno = (val) -#endif - -#if defined STDC_HEADERS || defined _LIBC -# include <stdlib.h> -#else -char *getenv (); -# ifdef HAVE_MALLOC_H -# include <malloc.h> -# else -void free (); -# endif -#endif - -#if defined HAVE_STRING_H || defined _LIBC -# ifndef _GNU_SOURCE -# define _GNU_SOURCE 1 -# endif -# include <string.h> -#else -# include <strings.h> -#endif -#if !HAVE_STRCHR && !defined _LIBC -# ifndef strchr -# define strchr index -# endif -#endif - -#if defined HAVE_UNISTD_H || defined _LIBC -# include <unistd.h> -#endif - -#include "gettext.h" -#include "gettextP.h" -#ifdef _LIBC -# include <libintl.h> -#else -# include "libgettext.h" -#endif -#include "hash-string.h" - -/* @@ end of prolog @@ */ - -#ifdef _LIBC -/* Rename the non ANSI C functions. This is required by the standard - because some ANSI C functions will require linking with this object - file and the name space must not be polluted. */ -# define getcwd __getcwd -# ifndef stpcpy -# define stpcpy __stpcpy -# endif -#else -# if !defined HAVE_GETCWD -char *getwd (); -# define getcwd(buf, max) getwd (buf) -# else -char *getcwd (); -# endif -# ifndef HAVE_STPCPY -static char *stpcpy PARAMS ((char *dest, const char *src)); -# endif -#endif - -/* Amount to increase buffer size by in each try. */ -#define PATH_INCR 32 - -/* The following is from pathmax.h. */ -/* Non-POSIX BSD systems might have gcc's limits.h, which doesn't define - PATH_MAX but might cause redefinition warnings when sys/param.h is - later included (as on MORE/BSD 4.3). */ -#if defined(_POSIX_VERSION) || (defined(HAVE_LIMITS_H) && !defined(__GNUC__)) -# include <limits.h> -#endif - -#ifndef _POSIX_PATH_MAX -# define _POSIX_PATH_MAX 255 -#endif - -#if !defined(PATH_MAX) && defined(_PC_PATH_MAX) -# define PATH_MAX (pathconf ("/", _PC_PATH_MAX) < 1 ? 1024 : pathconf ("/", _PC_PATH_MAX)) -#endif - -/* Don't include sys/param.h if it already has been. */ -#if defined(HAVE_SYS_PARAM_H) && !defined(PATH_MAX) && !defined(MAXPATHLEN) -# include <sys/param.h> -#endif - -#if !defined(PATH_MAX) && defined(MAXPATHLEN) -# define PATH_MAX MAXPATHLEN -#endif - -#ifndef PATH_MAX -# define PATH_MAX _POSIX_PATH_MAX -#endif - -/* XPG3 defines the result of `setlocale (category, NULL)' as: - ``Directs `setlocale()' to query `category' and return the current - setting of `local'.'' - However it does not specify the exact format. And even worse: POSIX - defines this not at all. So we can use this feature only on selected - system (e.g. those using GNU C Library). */ -#ifdef _LIBC -# define HAVE_LOCALE_NULL -#endif - -/* Name of the default domain used for gettext(3) prior any call to - textdomain(3). The default value for this is "messages". */ -const char _nl_default_default_domain[] = "messages"; - -/* Value used as the default domain for gettext(3). */ -const char *_nl_current_default_domain = _nl_default_default_domain; - -/* Contains the default location of the message catalogs. */ -const char _nl_default_dirname[] = GNULOCALEDIR; - -/* List with bindings of specific domains created by bindtextdomain() - calls. */ -struct binding *_nl_domain_bindings; - -/* Prototypes for local functions. */ -static char *find_msg PARAMS ((struct loaded_l10nfile *domain_file, - const char *msgid)) internal_function; -static const char *category_to_name PARAMS ((int category)) internal_function; -static const char *guess_category_value PARAMS ((int category, - const char *categoryname)) - internal_function; - - -/* For those loosing systems which don't have `alloca' we have to add - some additional code emulating it. */ -#ifdef HAVE_ALLOCA -/* Nothing has to be done. */ -# define ADD_BLOCK(list, address) /* nothing */ -# define FREE_BLOCKS(list) /* nothing */ -#else -struct block_list -{ - void *address; - struct block_list *next; -}; -# define ADD_BLOCK(list, addr) \ - do { \ - struct block_list *newp = (struct block_list *) malloc (sizeof (*newp)); \ - /* If we cannot get a free block we cannot add the new element to \ - the list. */ \ - if (newp != NULL) { \ - newp->address = (addr); \ - newp->next = (list); \ - (list) = newp; \ - } \ - } while (0) -# define FREE_BLOCKS(list) \ - do { \ - while (list != NULL) { \ - struct block_list *old = list; \ - list = list->next; \ - free (old); \ - } \ - } while (0) -# undef alloca -# define alloca(size) (malloc (size)) -#endif /* have alloca */ - - -/* Names for the libintl functions are a problem. They must not clash - with existing names and they should follow ANSI C. But this source - code is also used in GNU C Library where the names have a __ - prefix. So we have to make a difference here. */ -#ifdef _LIBC -# define DCGETTEXT __dcgettext -#else -# define DCGETTEXT dcgettext__ -#endif - -/* Look up MSGID in the DOMAINNAME message catalog for the current CATEGORY - locale. */ -char * -DCGETTEXT (domainname, msgid, category) - const char *domainname; - const char *msgid; - int category; -{ -#ifndef HAVE_ALLOCA - struct block_list *block_list = NULL; -#endif - struct loaded_l10nfile *domain; - struct binding *binding; - const char *categoryname; - const char *categoryvalue; - char *dirname, *xdomainname; - char *single_locale; - char *retval; - int saved_errno = errno; - - /* If no real MSGID is given return NULL. */ - if (msgid == NULL) - return NULL; - - /* If DOMAINNAME is NULL, we are interested in the default domain. If - CATEGORY is not LC_MESSAGES this might not make much sense but the - defintion left this undefined. */ - if (domainname == NULL) - domainname = _nl_current_default_domain; - - /* First find matching binding. */ - for (binding = _nl_domain_bindings; binding != NULL; binding = binding->next) - { - int compare = strcmp (domainname, binding->domainname); - if (compare == 0) - /* We found it! */ - break; - if (compare < 0) - { - /* It is not in the list. */ - binding = NULL; - break; - } - } - - if (binding == NULL) - dirname = (char *) _nl_default_dirname; - else if (binding->dirname[0] == '/') - dirname = binding->dirname; - else - { - /* We have a relative path. Make it absolute now. */ - size_t dirname_len = strlen (binding->dirname) + 1; - size_t path_max; - char *ret; - - path_max = (unsigned) PATH_MAX; - path_max += 2; /* The getcwd docs say to do this. */ - - dirname = (char *) alloca (path_max + dirname_len); - ADD_BLOCK (block_list, dirname); - - __set_errno (0); - while ((ret = getcwd (dirname, path_max)) == NULL && errno == ERANGE) - { - path_max += PATH_INCR; - dirname = (char *) alloca (path_max + dirname_len); - ADD_BLOCK (block_list, dirname); - __set_errno (0); - } - - if (ret == NULL) - { - /* We cannot get the current working directory. Don't signal an - error but simply return the default string. */ - FREE_BLOCKS (block_list); - __set_errno (saved_errno); - return (char *) msgid; - } - - stpcpy (stpcpy (strchr (dirname, '\0'), "/"), binding->dirname); - } - - /* Now determine the symbolic name of CATEGORY and its value. */ - categoryname = category_to_name (category); - categoryvalue = guess_category_value (category, categoryname); - - xdomainname = (char *) alloca (strlen (categoryname) - + strlen (domainname) + 5); - ADD_BLOCK (block_list, xdomainname); - - stpcpy (stpcpy (stpcpy (stpcpy (xdomainname, categoryname), "/"), - domainname), - ".mo"); - - /* Creating working area. */ - single_locale = (char *) alloca (strlen (categoryvalue) + 1); - ADD_BLOCK (block_list, single_locale); - - - /* Search for the given string. This is a loop because we perhaps - got an ordered list of languages to consider for th translation. */ - while (1) - { - /* Make CATEGORYVALUE point to the next element of the list. */ - while (categoryvalue[0] != '\0' && categoryvalue[0] == ':') - ++categoryvalue; - if (categoryvalue[0] == '\0') - { - /* The whole contents of CATEGORYVALUE has been searched but - no valid entry has been found. We solve this situation - by implicitly appending a "C" entry, i.e. no translation - will take place. */ - single_locale[0] = 'C'; - single_locale[1] = '\0'; - } - else - { - char *cp = single_locale; - while (categoryvalue[0] != '\0' && categoryvalue[0] != ':') - *cp++ = *categoryvalue++; - *cp = '\0'; - } - - /* If the current locale value is C (or POSIX) we don't load a - domain. Return the MSGID. */ - if (strcmp (single_locale, "C") == 0 - || strcmp (single_locale, "POSIX") == 0) - { - FREE_BLOCKS (block_list); - __set_errno (saved_errno); - return (char *) msgid; - } - - - /* Find structure describing the message catalog matching the - DOMAINNAME and CATEGORY. */ - domain = _nl_find_domain (dirname, single_locale, xdomainname); - - if (domain != NULL) - { - retval = find_msg (domain, msgid); - - if (retval == NULL) - { - int cnt; - - for (cnt = 0; domain->successor[cnt] != NULL; ++cnt) - { - retval = find_msg (domain->successor[cnt], msgid); - - if (retval != NULL) - break; - } - } - - if (retval != NULL) - { - FREE_BLOCKS (block_list); - __set_errno (saved_errno); - return retval; - } - } - } - /* NOTREACHED */ -} - -#ifdef _LIBC -/* Alias for function name in GNU C Library. */ -weak_alias (__dcgettext, dcgettext); -#endif - - -static char * -internal_function -find_msg (domain_file, msgid) - struct loaded_l10nfile *domain_file; - const char *msgid; -{ - size_t top, act, bottom; - struct loaded_domain *domain; - - if (domain_file->decided == 0) - _nl_load_domain (domain_file); - - if (domain_file->data == NULL) - return NULL; - - domain = (struct loaded_domain *) domain_file->data; - - /* Locate the MSGID and its translation. */ - if (domain->hash_size > 2 && domain->hash_tab != NULL) - { - /* Use the hashing table. */ - nls_uint32 len = strlen (msgid); - nls_uint32 hash_val = hash_string (msgid); - nls_uint32 idx = hash_val % domain->hash_size; - nls_uint32 incr = 1 + (hash_val % (domain->hash_size - 2)); - nls_uint32 nstr = W (domain->must_swap, domain->hash_tab[idx]); - - if (nstr == 0) - /* Hash table entry is empty. */ - return NULL; - - if (W (domain->must_swap, domain->orig_tab[nstr - 1].length) == len - && strcmp (msgid, - domain->data + W (domain->must_swap, - domain->orig_tab[nstr - 1].offset)) == 0) - return (char *) domain->data + W (domain->must_swap, - domain->trans_tab[nstr - 1].offset); - - while (1) - { - if (idx >= domain->hash_size - incr) - idx -= domain->hash_size - incr; - else - idx += incr; - - nstr = W (domain->must_swap, domain->hash_tab[idx]); - if (nstr == 0) - /* Hash table entry is empty. */ - return NULL; - - if (W (domain->must_swap, domain->orig_tab[nstr - 1].length) == len - && strcmp (msgid, - domain->data + W (domain->must_swap, - domain->orig_tab[nstr - 1].offset)) - == 0) - return (char *) domain->data - + W (domain->must_swap, domain->trans_tab[nstr - 1].offset); - } - /* NOTREACHED */ - } - - /* Now we try the default method: binary search in the sorted - array of messages. */ - bottom = 0; - top = domain->nstrings; - while (bottom < top) - { - int cmp_val; - - act = (bottom + top) / 2; - cmp_val = strcmp (msgid, domain->data - + W (domain->must_swap, - domain->orig_tab[act].offset)); - if (cmp_val < 0) - top = act; - else if (cmp_val > 0) - bottom = act + 1; - else - break; - } - - /* If an translation is found return this. */ - return bottom >= top ? NULL : (char *) domain->data - + W (domain->must_swap, - domain->trans_tab[act].offset); -} - - -/* Return string representation of locale CATEGORY. */ -static const char * -internal_function -category_to_name (category) - int category; -{ - const char *retval; - - switch (category) - { -#ifdef LC_COLLATE - case LC_COLLATE: - retval = "LC_COLLATE"; - break; -#endif -#ifdef LC_CTYPE - case LC_CTYPE: - retval = "LC_CTYPE"; - break; -#endif -#ifdef LC_MONETARY - case LC_MONETARY: - retval = "LC_MONETARY"; - break; -#endif -#ifdef LC_NUMERIC - case LC_NUMERIC: - retval = "LC_NUMERIC"; - break; -#endif -#ifdef LC_TIME - case LC_TIME: - retval = "LC_TIME"; - break; -#endif -#ifdef LC_MESSAGES - case LC_MESSAGES: - retval = "LC_MESSAGES"; - break; -#endif -#ifdef LC_RESPONSE - case LC_RESPONSE: - retval = "LC_RESPONSE"; - break; -#endif -#ifdef LC_ALL - case LC_ALL: - /* This might not make sense but is perhaps better than any other - value. */ - retval = "LC_ALL"; - break; -#endif - default: - /* If you have a better idea for a default value let me know. */ - retval = "LC_XXX"; - } - - return retval; -} - -/* Guess value of current locale from value of the environment variables. */ -static const char * -internal_function -guess_category_value (category, categoryname) - int category; - const char *categoryname; -{ - const char *retval; - - /* The highest priority value is the `LANGUAGE' environment - variable. This is a GNU extension. */ - retval = getenv ("LANGUAGE"); - if (retval != NULL && retval[0] != '\0') - return retval; - - /* `LANGUAGE' is not set. So we have to proceed with the POSIX - methods of looking to `LC_ALL', `LC_xxx', and `LANG'. On some - systems this can be done by the `setlocale' function itself. */ -#if defined HAVE_SETLOCALE && defined HAVE_LC_MESSAGES && defined HAVE_LOCALE_NULL - return setlocale (category, NULL); -#else - /* Setting of LC_ALL overwrites all other. */ - retval = getenv ("LC_ALL"); - if (retval != NULL && retval[0] != '\0') - return retval; - - /* Next comes the name of the desired category. */ - retval = getenv (categoryname); - if (retval != NULL && retval[0] != '\0') - return retval; - - /* Last possibility is the LANG environment variable. */ - retval = getenv ("LANG"); - if (retval != NULL && retval[0] != '\0') - return retval; - - /* We use C as the default domain. POSIX says this is implementation - defined. */ - return "C"; -#endif -} - -/* @@ begin of epilog @@ */ - -/* We don't want libintl.a to depend on any other library. So we - avoid the non-standard function stpcpy. In GNU C Library this - function is available, though. Also allow the symbol HAVE_STPCPY - to be defined. */ -#if !_LIBC && !HAVE_STPCPY -static char * -stpcpy (dest, src) - char *dest; - const char *src; -{ - while ((*dest++ = *src++) != '\0') - /* Do nothing. */ ; - return dest - 1; -} -#endif - - -#ifdef _LIBC -/* If we want to free all resources we have to do some work at - program's end. */ -static void __attribute__ ((unused)) -free_mem (void) -{ - struct binding *runp; - - for (runp = _nl_domain_bindings; runp != NULL; runp = runp->next) - { - free (runp->domainname); - if (runp->dirname != _nl_default_dirname) - /* Yes, this is a pointer comparison. */ - free (runp->dirname); - } - - if (_nl_current_default_domain != _nl_default_default_domain) - /* Yes, again a pointer comparison. */ - free ((char *) _nl_current_default_domain); -} - -text_set_element (__libc_subfreeres, free_mem); -#endif diff --git a/gcc/intl/dgettext.c b/gcc/intl/dgettext.c deleted file mode 100755 index 0510c2b..0000000 --- a/gcc/intl/dgettext.c +++ /dev/null @@ -1,59 +0,0 @@ -/* Implementation of the dgettext(3) function - Copyright (C) 1995, 1996, 1997 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. */ - -#ifdef HAVE_CONFIG_H -# include <config.h> -#endif - -#if defined HAVE_LOCALE_H || defined _LIBC -# include <locale.h> -#endif - -#ifdef _LIBC -# include <libintl.h> -#else -# include "libgettext.h" -#endif - -/* @@ end of prolog @@ */ - -/* Names for the libintl functions are a problem. They must not clash - with existing names and they should follow ANSI C. But this source - code is also used in GNU C Library where the names have a __ - prefix. So we have to make a difference here. */ -#ifdef _LIBC -# define DGETTEXT __dgettext -# define DCGETTEXT __dcgettext -#else -# define DGETTEXT dgettext__ -# define DCGETTEXT dcgettext__ -#endif - -/* Look up MSGID in the DOMAINNAME message catalog of the current - LC_MESSAGES locale. */ -char * -DGETTEXT (domainname, msgid) - const char *domainname; - const char *msgid; -{ - return DCGETTEXT (domainname, msgid, LC_MESSAGES); -} - -#ifdef _LIBC -/* Alias for function name in GNU C Library. */ -weak_alias (__dgettext, dgettext); -#endif diff --git a/gcc/intl/explodename.c b/gcc/intl/explodename.c deleted file mode 100755 index 8066dc2..0000000 --- a/gcc/intl/explodename.c +++ /dev/null @@ -1,188 +0,0 @@ -/* Copyright (C) 1995, 1996, 1997, 1998 Free Software Foundation, Inc. - Contributed by Ulrich Drepper <drepper@gnu.ai.mit.edu>, 1995. - - 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. */ - -#ifdef HAVE_CONFIG_H -# include <config.h> -#endif - -#if defined STDC_HEADERS || defined _LIBC -# include <stdlib.h> -#endif - -#if defined HAVE_STRING_H || defined _LIBC -# include <string.h> -#else -# include <strings.h> -#endif -#include <sys/types.h> - -#include "loadinfo.h" - -/* On some strange systems still no definition of NULL is found. Sigh! */ -#ifndef NULL -# if defined __STDC__ && __STDC__ -# define NULL ((void *) 0) -# else -# define NULL 0 -# endif -#endif - -/* @@ end of prolog @@ */ - -int -_nl_explode_name (name, language, modifier, territory, codeset, - normalized_codeset, special, sponsor, revision) - char *name; - const char **language; - const char **modifier; - const char **territory; - const char **codeset; - const char **normalized_codeset; - const char **special; - const char **sponsor; - const char **revision; -{ - enum { undecided, xpg, cen } syntax; - char *cp; - int mask; - - *modifier = NULL; - *territory = NULL; - *codeset = NULL; - *normalized_codeset = NULL; - *special = NULL; - *sponsor = NULL; - *revision = NULL; - - /* Now we determine the single parts of the locale name. First - look for the language. Termination symbols are `_' and `@' if - we use XPG4 style, and `_', `+', and `,' if we use CEN syntax. */ - mask = 0; - syntax = undecided; - *language = cp = name; - while (cp[0] != '\0' && cp[0] != '_' && cp[0] != '@' - && cp[0] != '+' && cp[0] != ',') - ++cp; - - if (*language == cp) - /* This does not make sense: language has to be specified. Use - this entry as it is without exploding. Perhaps it is an alias. */ - cp = strchr (*language, '\0'); - else if (cp[0] == '_') - { - /* Next is the territory. */ - cp[0] = '\0'; - *territory = ++cp; - - while (cp[0] != '\0' && cp[0] != '.' && cp[0] != '@' - && cp[0] != '+' && cp[0] != ',' && cp[0] != '_') - ++cp; - - mask |= TERRITORY; - - if (cp[0] == '.') - { - /* Next is the codeset. */ - syntax = xpg; - cp[0] = '\0'; - *codeset = ++cp; - - while (cp[0] != '\0' && cp[0] != '@') - ++cp; - - mask |= XPG_CODESET; - - if (*codeset != cp && (*codeset)[0] != '\0') - { - *normalized_codeset = _nl_normalize_codeset (*codeset, - cp - *codeset); - if (strcmp (*codeset, *normalized_codeset) == 0) - free ((char *) *normalized_codeset); - else - mask |= XPG_NORM_CODESET; - } - } - } - - if (cp[0] == '@' || (syntax != xpg && cp[0] == '+')) - { - /* Next is the modifier. */ - syntax = cp[0] == '@' ? xpg : cen; - cp[0] = '\0'; - *modifier = ++cp; - - while (syntax == cen && cp[0] != '\0' && cp[0] != '+' - && cp[0] != ',' && cp[0] != '_') - ++cp; - - mask |= XPG_MODIFIER | CEN_AUDIENCE; - } - - if (syntax != xpg && (cp[0] == '+' || cp[0] == ',' || cp[0] == '_')) - { - syntax = cen; - - if (cp[0] == '+') - { - /* Next is special application (CEN syntax). */ - cp[0] = '\0'; - *special = ++cp; - - while (cp[0] != '\0' && cp[0] != ',' && cp[0] != '_') - ++cp; - - mask |= CEN_SPECIAL; - } - - if (cp[0] == ',') - { - /* Next is sponsor (CEN syntax). */ - cp[0] = '\0'; - *sponsor = ++cp; - - while (cp[0] != '\0' && cp[0] != '_') - ++cp; - - mask |= CEN_SPONSOR; - } - - if (cp[0] == '_') - { - /* Next is revision (CEN syntax). */ - cp[0] = '\0'; - *revision = ++cp; - - mask |= CEN_REVISION; - } - } - - /* For CEN syntax values it might be important to have the - separator character in the file name, not for XPG syntax. */ - if (syntax == xpg) - { - if (*territory != NULL && (*territory)[0] == '\0') - mask &= ~TERRITORY; - - if (*codeset != NULL && (*codeset)[0] == '\0') - mask &= ~XPG_CODESET; - - if (*modifier != NULL && (*modifier)[0] == '\0') - mask &= ~XPG_MODIFIER; - } - - return mask; -} diff --git a/gcc/intl/finddomain.c b/gcc/intl/finddomain.c deleted file mode 100755 index 81ea29b..0000000 --- a/gcc/intl/finddomain.c +++ /dev/null @@ -1,216 +0,0 @@ -/* Handle list of needed message catalogs - Copyright (C) 1995, 1996, 1997, 1998 Free Software Foundation, Inc. - Written by Ulrich Drepper <drepper@gnu.ai.mit.edu>, 1995. - - 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. */ - -#ifdef HAVE_CONFIG_H -# include <config.h> -#endif - -#include <ctype.h> -#include <errno.h> -#include <stdio.h> -#include <sys/types.h> - -#if defined STDC_HEADERS || defined _LIBC -# include <stdlib.h> -#else -# ifdef HAVE_MALLOC_H -# include <malloc.h> -# else -void free (); -# endif -#endif - -#if defined HAVE_STRING_H || defined _LIBC -# include <string.h> -#else -# include <strings.h> -# ifndef memcpy -# define memcpy(Dst, Src, Num) bcopy (Src, Dst, Num) -# endif -#endif -#if !HAVE_STRCHR && !defined _LIBC -# ifndef strchr -# define strchr index -# endif -#endif - -#if defined HAVE_UNISTD_H || defined _LIBC -# include <unistd.h> -#endif - -#include "gettext.h" -#include "gettextP.h" -#ifdef _LIBC -# include <libintl.h> -#else -# include "libgettext.h" -#endif - -/* @@ end of prolog @@ */ -/* List of already loaded domains. */ -static struct loaded_l10nfile *_nl_loaded_domains; - - -/* Return a data structure describing the message catalog described by - the DOMAINNAME and CATEGORY parameters with respect to the currently - established bindings. */ -struct loaded_l10nfile * -internal_function -_nl_find_domain (dirname, locale, domainname) - const char *dirname; - char *locale; - const char *domainname; -{ - struct loaded_l10nfile *retval; - const char *language; - const char *modifier; - const char *territory; - const char *codeset; - const char *normalized_codeset; - const char *special; - const char *sponsor; - const char *revision; - const char *alias_value; - int mask; - - /* LOCALE can consist of up to four recognized parts for the XPG syntax: - - language[_territory[.codeset]][@modifier] - - and six parts for the CEN syntax: - - language[_territory][+audience][+special][,[sponsor][_revision]] - - Beside the first part all of them are allowed to be missing. If - the full specified locale is not found, the less specific one are - looked for. The various parts will be stripped off according to - the following order: - (1) revision - (2) sponsor - (3) special - (4) codeset - (5) normalized codeset - (6) territory - (7) audience/modifier - */ - - /* If we have already tested for this locale entry there has to - be one data set in the list of loaded domains. */ - retval = _nl_make_l10nflist (&_nl_loaded_domains, dirname, - strlen (dirname) + 1, 0, locale, NULL, NULL, - NULL, NULL, NULL, NULL, NULL, domainname, 0); - if (retval != NULL) - { - /* We know something about this locale. */ - int cnt; - - if (retval->decided == 0) - _nl_load_domain (retval); - - if (retval->data != NULL) - return retval; - - for (cnt = 0; retval->successor[cnt] != NULL; ++cnt) - { - if (retval->successor[cnt]->decided == 0) - _nl_load_domain (retval->successor[cnt]); - - if (retval->successor[cnt]->data != NULL) - break; - } - return cnt >= 0 ? retval : NULL; - /* NOTREACHED */ - } - - /* See whether the locale value is an alias. If yes its value - *overwrites* the alias name. No test for the original value is - done. */ - alias_value = _nl_expand_alias (locale); - if (alias_value != NULL) - { -#if defined _LIBC || defined HAVE_STRDUP - locale = strdup (alias_value); - if (locale == NULL) - return NULL; -#else - size_t len = strlen (alias_value) + 1; - locale = (char *) malloc (len); - if (locale == NULL) - return NULL; - - memcpy (locale, alias_value, len); -#endif - } - - /* Now we determine the single parts of the locale name. First - look for the language. Termination symbols are `_' and `@' if - we use XPG4 style, and `_', `+', and `,' if we use CEN syntax. */ - mask = _nl_explode_name (locale, &language, &modifier, &territory, - &codeset, &normalized_codeset, &special, - &sponsor, &revision); - - /* Create all possible locale entries which might be interested in - generalization. */ - retval = _nl_make_l10nflist (&_nl_loaded_domains, dirname, - strlen (dirname) + 1, mask, language, territory, - codeset, normalized_codeset, modifier, special, - sponsor, revision, domainname, 1); - if (retval == NULL) - /* This means we are out of core. */ - return NULL; - - if (retval->decided == 0) - _nl_load_domain (retval); - if (retval->data == NULL) - { - int cnt; - for (cnt = 0; retval->successor[cnt] != NULL; ++cnt) - { - if (retval->successor[cnt]->decided == 0) - _nl_load_domain (retval->successor[cnt]); - if (retval->successor[cnt]->data != NULL) - break; - } - } - - /* The room for an alias was dynamically allocated. Free it now. */ - if (alias_value != NULL) - free (locale); - - return retval; -} - - -#ifdef _LIBC -static void __attribute__ ((unused)) -free_mem (void) -{ - struct loaded_l10nfile *runp = _nl_loaded_domains; - - while (runp != NULL) - { - struct loaded_l10nfile *here = runp; - if (runp->data != NULL) - _nl_unload_domain ((struct loaded_domain *) runp->data); - runp = runp->next; - free (here); - } -} - -text_set_element (__libc_subfreeres, free_mem); -#endif diff --git a/gcc/intl/gettext.c b/gcc/intl/gettext.c deleted file mode 100755 index d929f98..0000000 --- a/gcc/intl/gettext.c +++ /dev/null @@ -1,70 +0,0 @@ -/* Implementation of gettext(3) function. - Copyright (C) 1995, 1997 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. */ - -#ifdef HAVE_CONFIG_H -# include <config.h> -#endif - -#ifdef _LIBC -# define __need_NULL -# include <stddef.h> -#else -# ifdef STDC_HEADERS -# include <stdlib.h> /* Just for NULL. */ -# else -# ifdef HAVE_STRING_H -# include <string.h> -# else -# define NULL ((void *) 0) -# endif -# endif -#endif - -#ifdef _LIBC -# include <libintl.h> -#else -# include "libgettext.h" -#endif - -/* @@ end of prolog @@ */ - -/* Names for the libintl functions are a problem. They must not clash - with existing names and they should follow ANSI C. But this source - code is also used in GNU C Library where the names have a __ - prefix. So we have to make a difference here. */ -#ifdef _LIBC -# define GETTEXT __gettext -# define DGETTEXT __dgettext -#else -# define GETTEXT gettext__ -# define DGETTEXT dgettext__ -#endif - -/* Look up MSGID in the current default message catalog for the current - LC_MESSAGES locale. If not found, returns MSGID itself (the default - text). */ -char * -GETTEXT (msgid) - const char *msgid; -{ - return DGETTEXT (NULL, msgid); -} - -#ifdef _LIBC -/* Alias for function name in GNU C Library. */ -weak_alias (__gettext, gettext); -#endif diff --git a/gcc/intl/gettext.h b/gcc/intl/gettext.h deleted file mode 100755 index 3cd23d7..0000000 --- a/gcc/intl/gettext.h +++ /dev/null @@ -1,105 +0,0 @@ -/* Internal header for GNU gettext internationalization functions. - Copyright (C) 1995, 1997 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 Library General Public - License along with the GNU C Library; see the file COPYING.LIB. If not, - write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, - Boston, MA 02111-1307, USA. */ - -#ifndef _GETTEXT_H -#define _GETTEXT_H 1 - -#include <stdio.h> - -#if HAVE_LIMITS_H || _LIBC -# include <limits.h> -#endif - -/* @@ end of prolog @@ */ - -/* The magic number of the GNU message catalog format. */ -#define _MAGIC 0x950412de -#define _MAGIC_SWAPPED 0xde120495 - -/* Revision number of the currently used .mo (binary) file format. */ -#define MO_REVISION_NUMBER 0 - -/* 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. */ - -#if __STDC__ -# define UINT_MAX_32_BITS 4294967295U -#else -# define UINT_MAX_32_BITS 0xFFFFFFFF -#endif - -/* 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 <limits.h>) have 64+-bit integral types. */ - -#ifndef UINT_MAX -# define UINT_MAX UINT_MAX_32_BITS -#endif - -#if UINT_MAX == UINT_MAX_32_BITS -typedef unsigned nls_uint32; -#else -# if USHRT_MAX == UINT_MAX_32_BITS -typedef unsigned short nls_uint32; -# else -# if ULONG_MAX == UINT_MAX_32_BITS -typedef unsigned long nls_uint32; -# else - /* The following line is intended to throw an error. Using #error is - not portable enough. */ - "Cannot determine unsigned 32-bit data type." -# endif -# endif -#endif - - -/* Header for binary .mo file format. */ -struct mo_file_header -{ - /* The magic number. */ - nls_uint32 magic; - /* The revision number of the file format. */ - nls_uint32 revision; - /* The number of strings pairs. */ - nls_uint32 nstrings; - /* Offset of table with start offsets of original strings. */ - nls_uint32 orig_tab_offset; - /* Offset of table with start offsets of translation strings. */ - nls_uint32 trans_tab_offset; - /* Size of hashing table. */ - nls_uint32 hash_tab_size; - /* Offset of first hashing entry. */ - nls_uint32 hash_tab_offset; -}; - -struct string_desc -{ - /* Length of addressed string. */ - nls_uint32 length; - /* Offset of string in file. */ - nls_uint32 offset; -}; - -/* @@ begin of epilog @@ */ - -#endif /* gettext.h */ diff --git a/gcc/intl/gettextP.h b/gcc/intl/gettextP.h deleted file mode 100755 index 00c5203..0000000 --- a/gcc/intl/gettextP.h +++ /dev/null @@ -1,89 +0,0 @@ -/* Header describing internals of gettext library - Copyright (C) 1995, 1996, 1997, 1998 Free Software Foundation, Inc. - Written by Ulrich Drepper <drepper@gnu.ai.mit.edu>, 1995. - - 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 _GETTEXTP_H -#define _GETTEXTP_H - -#include "loadinfo.h" - -/* @@ end of prolog @@ */ - -#ifndef PARAMS -# if __STDC__ -# define PARAMS(args) args -# else -# define PARAMS(args) () -# endif -#endif - -#ifndef internal_function -# define internal_function -#endif - -#ifndef W -# define W(flag, data) ((flag) ? SWAP (data) : (data)) -#endif - - -#ifdef _LIBC -# include <byteswap.h> -# define SWAP(i) bswap_32 (i) -#else -static nls_uint32 SWAP PARAMS ((nls_uint32 i)); - -static inline nls_uint32 -SWAP (i) - nls_uint32 i; -{ - return (i << 24) | ((i & 0xff00) << 8) | ((i >> 8) & 0xff00) | (i >> 24); -} -#endif - - -struct loaded_domain -{ - const char *data; - int use_mmap; - size_t mmap_size; - int must_swap; - nls_uint32 nstrings; - struct string_desc *orig_tab; - struct string_desc *trans_tab; - nls_uint32 hash_size; - nls_uint32 *hash_tab; -}; - -struct binding -{ - struct binding *next; - char *domainname; - char *dirname; -}; - -struct loaded_l10nfile *_nl_find_domain PARAMS ((const char *__dirname, - char *__locale, - const char *__domainname)) - internal_function; -void _nl_load_domain PARAMS ((struct loaded_l10nfile *__domain)) - internal_function; -void _nl_unload_domain PARAMS ((struct loaded_domain *__domain)) - internal_function; - -/* @@ begin of epilog @@ */ - -#endif /* gettextP.h */ diff --git a/gcc/intl/hash-string.h b/gcc/intl/hash-string.h deleted file mode 100755 index cacb38e..0000000 --- a/gcc/intl/hash-string.h +++ /dev/null @@ -1,59 +0,0 @@ -/* Implements a string hashing function. - Copyright (C) 1995, 1997 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 Library General Public - License along with the GNU C Library; see the file COPYING.LIB. If not, - write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, - Boston, MA 02111-1307, USA. */ - -/* @@ end of prolog @@ */ - -#ifndef PARAMS -# if __STDC__ -# define PARAMS(Args) Args -# else -# define PARAMS(Args) () -# endif -#endif - -/* We assume to have `unsigned long int' value with at least 32 bits. */ -#define HASHWORDBITS 32 - - -/* Defines the so called `hashpjw' function by P.J. Weinberger - [see Aho/Sethi/Ullman, COMPILERS: Principles, Techniques and Tools, - 1986, 1987 Bell Telephone Laboratories, Inc.] */ -static unsigned long hash_string PARAMS ((const char *__str_param)); - -static inline unsigned long -hash_string (str_param) - const char *str_param; -{ - unsigned long int hval, g; - const char *str = str_param; - - /* Compute the hash value for the given string. */ - hval = 0; - while (*str != '\0') - { - hval <<= 4; - hval += (unsigned long) *str++; - g = hval & ((unsigned long) 0xf << (HASHWORDBITS - 4)); - if (g != 0) - { - hval ^= g >> (HASHWORDBITS - 8); - hval ^= g; - } - } - return hval; -} diff --git a/gcc/intl/intl-compat.c b/gcc/intl/intl-compat.c deleted file mode 100755 index 503efa0..0000000 --- a/gcc/intl/intl-compat.c +++ /dev/null @@ -1,76 +0,0 @@ -/* intl-compat.c - Stub functions to call gettext functions from GNU gettext - Library. - Copyright (C) 1995 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. */ - -#ifdef HAVE_CONFIG_H -# include <config.h> -#endif - -#include "libgettext.h" - -/* @@ end of prolog @@ */ - - -#undef gettext -#undef dgettext -#undef dcgettext -#undef textdomain -#undef bindtextdomain - - -char * -bindtextdomain (domainname, dirname) - const char *domainname; - const char *dirname; -{ - return bindtextdomain__ (domainname, dirname); -} - - -char * -dcgettext (domainname, msgid, category) - const char *domainname; - const char *msgid; - int category; -{ - return dcgettext__ (domainname, msgid, category); -} - - -char * -dgettext (domainname, msgid) - const char *domainname; - const char *msgid; -{ - return dgettext__ (domainname, msgid); -} - - -char * -gettext (msgid) - const char *msgid; -{ - return gettext__ (msgid); -} - - -char * -textdomain (domainname) - const char *domainname; -{ - return textdomain__ (domainname); -} diff --git a/gcc/intl/l10nflist.c b/gcc/intl/l10nflist.c deleted file mode 100755 index 9c7dc18..0000000 --- a/gcc/intl/l10nflist.c +++ /dev/null @@ -1,411 +0,0 @@ -/* Handle list of needed message catalogs - Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc. - Contributed by Ulrich Drepper <drepper@gnu.ai.mit.edu>, 1995. - - 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. */ - -#ifdef HAVE_CONFIG_H -# include <config.h> -#endif - - -#if defined HAVE_STRING_H || defined _LIBC -# ifndef _GNU_SOURCE -# define _GNU_SOURCE 1 -# endif -# include <string.h> -#else -# include <strings.h> -# ifndef memcpy -# define memcpy(Dst, Src, Num) bcopy (Src, Dst, Num) -# endif -#endif -#if !HAVE_STRCHR && !defined _LIBC -# ifndef strchr -# define strchr index -# endif -#endif - -#if defined _LIBC || defined HAVE_ARGZ_H -# include <argz.h> -#endif -#include <ctype.h> -#include <sys/types.h> - -#if defined STDC_HEADERS || defined _LIBC -# include <stdlib.h> -#endif - -#include "loadinfo.h" - -/* On some strange systems still no definition of NULL is found. Sigh! */ -#ifndef NULL -# if defined __STDC__ && __STDC__ -# define NULL ((void *) 0) -# else -# define NULL 0 -# endif -#endif - -/* @@ end of prolog @@ */ - -#ifdef _LIBC -/* Rename the non ANSI C functions. This is required by the standard - because some ANSI C functions will require linking with this object - file and the name space must not be polluted. */ -# ifndef stpcpy -# define stpcpy(dest, src) __stpcpy(dest, src) -# endif -#else -# ifndef HAVE_STPCPY -static char *stpcpy PARAMS ((char *dest, const char *src)); -# endif -#endif - -/* Define function which are usually not available. */ - -#if !defined _LIBC && !defined HAVE___ARGZ_COUNT -/* Returns the number of strings in ARGZ. */ -static size_t argz_count__ PARAMS ((const char *argz, size_t len)); - -static size_t -argz_count__ (argz, len) - const char *argz; - size_t len; -{ - size_t count = 0; - while (len > 0) - { - size_t part_len = strlen (argz); - argz += part_len + 1; - len -= part_len + 1; - count++; - } - return count; -} -# undef __argz_count -# define __argz_count(argz, len) argz_count__ (argz, len) -#endif /* !_LIBC && !HAVE___ARGZ_COUNT */ - -#if !defined _LIBC && !defined HAVE___ARGZ_STRINGIFY -/* Make '\0' separated arg vector ARGZ printable by converting all the '\0's - except the last into the character SEP. */ -static void argz_stringify__ PARAMS ((char *argz, size_t len, int sep)); - -static void -argz_stringify__ (argz, len, sep) - char *argz; - size_t len; - int sep; -{ - while (len > 0) - { - size_t part_len = strlen (argz); - argz += part_len; - len -= part_len + 1; - if (len > 0) - *argz++ = sep; - } -} -# undef __argz_stringify -# define __argz_stringify(argz, len, sep) argz_stringify__ (argz, len, sep) -#endif /* !_LIBC && !HAVE___ARGZ_STRINGIFY */ - -#if !defined _LIBC && !defined HAVE___ARGZ_NEXT -static char *argz_next__ PARAMS ((char *argz, size_t argz_len, - const char *entry)); - -static char * -argz_next__ (argz, argz_len, entry) - char *argz; - size_t argz_len; - const char *entry; -{ - if (entry) - { - if (entry < argz + argz_len) - entry = strchr (entry, '\0') + 1; - - return entry >= argz + argz_len ? NULL : (char *) entry; - } - else - if (argz_len > 0) - return argz; - else - return 0; -} -# undef __argz_next -# define __argz_next(argz, len, entry) argz_next__ (argz, len, entry) -#endif /* !_LIBC && !HAVE___ARGZ_NEXT */ - - -/* Return number of bits set in X. */ -static int pop PARAMS ((int x)); - -static inline int -pop (x) - int x; -{ - /* We assume that no more than 16 bits are used. */ - x = ((x & ~0x5555) >> 1) + (x & 0x5555); - x = ((x & ~0x3333) >> 2) + (x & 0x3333); - x = ((x >> 4) + x) & 0x0f0f; - x = ((x >> 8) + x) & 0xff; - - return x; -} - - -struct loaded_l10nfile * -_nl_make_l10nflist (l10nfile_list, dirlist, dirlist_len, mask, language, - territory, codeset, normalized_codeset, modifier, special, - sponsor, revision, filename, do_allocate) - struct loaded_l10nfile **l10nfile_list; - const char *dirlist; - size_t dirlist_len; - int mask; - const char *language; - const char *territory; - const char *codeset; - const char *normalized_codeset; - const char *modifier; - const char *special; - const char *sponsor; - const char *revision; - const char *filename; - int do_allocate; -{ - char *abs_filename; - struct loaded_l10nfile *last = NULL; - struct loaded_l10nfile *retval; - char *cp; - size_t entries; - int cnt; - - /* Allocate room for the full file name. */ - abs_filename = (char *) malloc (dirlist_len - + strlen (language) - + ((mask & TERRITORY) != 0 - ? strlen (territory) + 1 : 0) - + ((mask & XPG_CODESET) != 0 - ? strlen (codeset) + 1 : 0) - + ((mask & XPG_NORM_CODESET) != 0 - ? strlen (normalized_codeset) + 1 : 0) - + (((mask & XPG_MODIFIER) != 0 - || (mask & CEN_AUDIENCE) != 0) - ? strlen (modifier) + 1 : 0) - + ((mask & CEN_SPECIAL) != 0 - ? strlen (special) + 1 : 0) - + (((mask & CEN_SPONSOR) != 0 - || (mask & CEN_REVISION) != 0) - ? (1 + ((mask & CEN_SPONSOR) != 0 - ? strlen (sponsor) + 1 : 0) - + ((mask & CEN_REVISION) != 0 - ? strlen (revision) + 1 : 0)) : 0) - + 1 + strlen (filename) + 1); - - if (abs_filename == NULL) - return NULL; - - retval = NULL; - last = NULL; - - /* Construct file name. */ - memcpy (abs_filename, dirlist, dirlist_len); - __argz_stringify (abs_filename, dirlist_len, ':'); - cp = abs_filename + (dirlist_len - 1); - *cp++ = '/'; - cp = stpcpy (cp, language); - - if ((mask & TERRITORY) != 0) - { - *cp++ = '_'; - cp = stpcpy (cp, territory); - } - if ((mask & XPG_CODESET) != 0) - { - *cp++ = '.'; - cp = stpcpy (cp, codeset); - } - if ((mask & XPG_NORM_CODESET) != 0) - { - *cp++ = '.'; - cp = stpcpy (cp, normalized_codeset); - } - if ((mask & (XPG_MODIFIER | CEN_AUDIENCE)) != 0) - { - /* This component can be part of both syntaces but has different - leading characters. For CEN we use `+', else `@'. */ - *cp++ = (mask & CEN_AUDIENCE) != 0 ? '+' : '@'; - cp = stpcpy (cp, modifier); - } - if ((mask & CEN_SPECIAL) != 0) - { - *cp++ = '+'; - cp = stpcpy (cp, special); - } - if ((mask & (CEN_SPONSOR | CEN_REVISION)) != 0) - { - *cp++ = ','; - if ((mask & CEN_SPONSOR) != 0) - cp = stpcpy (cp, sponsor); - if ((mask & CEN_REVISION) != 0) - { - *cp++ = '_'; - cp = stpcpy (cp, revision); - } - } - - *cp++ = '/'; - stpcpy (cp, filename); - - /* Look in list of already loaded domains whether it is already - available. */ - last = NULL; - for (retval = *l10nfile_list; retval != NULL; retval = retval->next) - if (retval->filename != NULL) - { - int compare = strcmp (retval->filename, abs_filename); - if (compare == 0) - /* We found it! */ - break; - if (compare < 0) - { - /* It's not in the list. */ - retval = NULL; - break; - } - - last = retval; - } - - if (retval != NULL || do_allocate == 0) - { - free (abs_filename); - return retval; - } - - retval = (struct loaded_l10nfile *) - malloc (sizeof (*retval) + (__argz_count (dirlist, dirlist_len) - * (1 << pop (mask)) - * sizeof (struct loaded_l10nfile *))); - if (retval == NULL) - return NULL; - - retval->filename = abs_filename; - retval->decided = (__argz_count (dirlist, dirlist_len) != 1 - || ((mask & XPG_CODESET) != 0 - && (mask & XPG_NORM_CODESET) != 0)); - retval->data = NULL; - - if (last == NULL) - { - retval->next = *l10nfile_list; - *l10nfile_list = retval; - } - else - { - retval->next = last->next; - last->next = retval; - } - - entries = 0; - /* If the DIRLIST is a real list the RETVAL entry corresponds not to - a real file. So we have to use the DIRLIST separation mechanism - of the inner loop. */ - cnt = __argz_count (dirlist, dirlist_len) == 1 ? mask - 1 : mask; - for (; cnt >= 0; --cnt) - if ((cnt & ~mask) == 0 - && ((cnt & CEN_SPECIFIC) == 0 || (cnt & XPG_SPECIFIC) == 0) - && ((cnt & XPG_CODESET) == 0 || (cnt & XPG_NORM_CODESET) == 0)) - { - /* Iterate over all elements of the DIRLIST. */ - char *dir = NULL; - - while ((dir = __argz_next ((char *) dirlist, dirlist_len, dir)) - != NULL) - retval->successor[entries++] - = _nl_make_l10nflist (l10nfile_list, dir, strlen (dir) + 1, cnt, - language, territory, codeset, - normalized_codeset, modifier, special, - sponsor, revision, filename, 1); - } - retval->successor[entries] = NULL; - - return retval; -} - -/* Normalize codeset name. There is no standard for the codeset - names. Normalization allows the user to use any of the common - names. */ -const char * -_nl_normalize_codeset (codeset, name_len) - const unsigned char *codeset; - size_t name_len; -{ - int len = 0; - int only_digit = 1; - char *retval; - char *wp; - size_t cnt; - - for (cnt = 0; cnt < name_len; ++cnt) - if (isalnum (codeset[cnt])) - { - ++len; - - if (isalpha (codeset[cnt])) - only_digit = 0; - } - - retval = (char *) malloc ((only_digit ? 3 : 0) + len + 1); - - if (retval != NULL) - { - if (only_digit) - wp = stpcpy (retval, "iso"); - else - wp = retval; - - for (cnt = 0; cnt < name_len; ++cnt) - if (isalpha (codeset[cnt])) - *wp++ = tolower (codeset[cnt]); - else if (isdigit (codeset[cnt])) - *wp++ = codeset[cnt]; - - *wp = '\0'; - } - - return (const char *) retval; -} - - -/* @@ begin of epilog @@ */ - -/* We don't want libintl.a to depend on any other library. So we - avoid the non-standard function stpcpy. In GNU C Library this - function is available, though. Also allow the symbol HAVE_STPCPY - to be defined. */ -#if !_LIBC && !HAVE_STPCPY -static char * -stpcpy (dest, src) - char *dest; - const char *src; -{ - while ((*dest++ = *src++) != '\0') - /* Do nothing. */ ; - return dest - 1; -} -#endif diff --git a/gcc/intl/libgettext.h b/gcc/intl/libgettext.h deleted file mode 100755 index 3a92960..0000000 --- a/gcc/intl/libgettext.h +++ /dev/null @@ -1,182 +0,0 @@ -/* Message catalogs for internationalization. - Copyright (C) 1995, 1996, 1997, 1998 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. */ - -/* Because on some systems (e.g. Solaris) we sometimes have to include - the systems libintl.h as well as this file we have more complex - include protection above. But the systems header might perhaps also - define _LIBINTL_H and therefore we have to protect the definition here. */ - -#if !defined _LIBINTL_H || !defined _LIBGETTEXT_H -#ifndef _LIBINTL_H -# define _LIBINTL_H 1 -#endif -#define _LIBGETTEXT_H 1 - -/* We define an additional symbol to signal that we use the GNU - implementation of gettext. */ -#define __USE_GNU_GETTEXT 1 - -#include <sys/types.h> - -#if HAVE_LOCALE_H -# include <locale.h> -#endif - - -#ifdef __cplusplus -extern "C" { -#endif - -/* @@ end of prolog @@ */ - -#ifndef PARAMS -# if __STDC__ || defined __cplusplus -# define PARAMS(args) args -# else -# define PARAMS(args) () -# endif -#endif - -#ifndef NULL -# if !defined __cplusplus || defined __GNUC__ -# define NULL ((void *) 0) -# else -# define NULL (0) -# endif -#endif - -#if !HAVE_LC_MESSAGES -/* This value determines the behaviour of the gettext() and dgettext() - function. But some system does not have this defined. Define it - to a default value. */ -# define LC_MESSAGES (-1) -#endif - - -/* Declarations for gettext-using-catgets interface. Derived from - Jim Meyering's libintl.h. */ -struct _msg_ent -{ - const char *_msg; - int _msg_number; -}; - - -#if HAVE_CATGETS -/* These two variables are defined in the automatically by po-to-tbl.sed - generated file `cat-id-tbl.c'. */ -extern const struct _msg_ent _msg_tbl[]; -extern int _msg_tbl_length; -#endif - - -/* For automatical extraction of messages sometimes no real - translation is needed. Instead the string itself is the result. */ -#define gettext_noop(Str) (Str) - -/* Look up MSGID in the current default message catalog for the current - LC_MESSAGES locale. If not found, returns MSGID itself (the default - text). */ -extern char *gettext PARAMS ((const char *__msgid)); -extern char *gettext__ PARAMS ((const char *__msgid)); - -/* Look up MSGID in the DOMAINNAME message catalog for the current - LC_MESSAGES locale. */ -extern char *dgettext PARAMS ((const char *__domainname, const char *__msgid)); -extern char *dgettext__ PARAMS ((const char *__domainname, - const char *__msgid)); - -/* Look up MSGID in the DOMAINNAME message catalog for the current CATEGORY - locale. */ -extern char *dcgettext PARAMS ((const char *__domainname, const char *__msgid, - int __category)); -extern char *dcgettext__ PARAMS ((const char *__domainname, - const char *__msgid, int __category)); - - -/* Set the current default message catalog to DOMAINNAME. - If DOMAINNAME is null, return the current default. - If DOMAINNAME is "", reset to the default of "messages". */ -extern char *textdomain PARAMS ((const char *__domainname)); -extern char *textdomain__ PARAMS ((const char *__domainname)); - -/* Specify that the DOMAINNAME message catalog will be found - in DIRNAME rather than in the system locale data base. */ -extern char *bindtextdomain PARAMS ((const char *__domainname, - const char *__dirname)); -extern char *bindtextdomain__ PARAMS ((const char *__domainname, - const char *__dirname)); - -#if ENABLE_NLS - -/* Solaris 2.3 has the gettext function but dcgettext is missing. - So we omit this optimization for Solaris 2.3. BTW, Solaris 2.4 - has dcgettext. */ -# if !HAVE_CATGETS && (!HAVE_GETTEXT || HAVE_DCGETTEXT) - -# define gettext(Msgid) \ - dgettext (NULL, Msgid) - -# define dgettext(Domainname, Msgid) \ - dcgettext (Domainname, Msgid, LC_MESSAGES) - -# if defined __GNUC__ && __GNUC__ == 2 && __GNUC_MINOR__ >= 7 -/* This global variable is defined in loadmsgcat.c. We need a sign, - whether a new catalog was loaded, which can be associated with all - translations. */ -extern int _nl_msg_cat_cntr; - -# define dcgettext(Domainname, Msgid, Category) \ - (__extension__ \ - ({ \ - char *__result; \ - if (__builtin_constant_p (Msgid)) \ - { \ - static char *__translation__; \ - static int __catalog_counter__; \ - if (! __translation__ || __catalog_counter__ != _nl_msg_cat_cntr) \ - { \ - __translation__ = \ - dcgettext__ (Domainname, Msgid, Category); \ - __catalog_counter__ = _nl_msg_cat_cntr; \ - } \ - __result = __translation__; \ - } \ - else \ - __result = dcgettext__ (Domainname, Msgid, Category); \ - __result; \ - })) -# endif -# endif - -#else - -# define gettext(Msgid) (Msgid) -# define dgettext(Domainname, Msgid) (Msgid) -# define dcgettext(Domainname, Msgid, Category) (Msgid) -# define textdomain(Domainname) ((char *) Domainname) -# define bindtextdomain(Domainname, Dirname) ((char *) Dirname) - -#endif - -/* @@ begin of epilog @@ */ - -#ifdef __cplusplus -} -#endif - -#endif diff --git a/gcc/intl/linux-msg.sed b/gcc/intl/linux-msg.sed deleted file mode 100755 index 5918e72..0000000 --- a/gcc/intl/linux-msg.sed +++ /dev/null @@ -1,100 +0,0 @@ -# po2msg.sed - Convert Uniforum style .po file to Linux style .msg file -# Copyright (C) 1995 Free Software Foundation, Inc. -# Ulrich Drepper <drepper@gnu.ai.mit.edu>, 1995. -# -# 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. -# -# -# The first directive in the .msg should be the definition of the -# message set number. We use always set number 1. -# -1 { - i\ -$set 1 # Automatically created by po2msg.sed - h - s/.*/0/ - x -} -# -# Mitch's old catalog format does not allow comments. -# -# We copy the original message as a comment into the .msg file. -# -/^msgid/ { - s/msgid[ ]*"// -# -# This does not work now with the new format. -# /"$/! { -# s/\\$// -# s/$/ ... (more lines following)"/ -# } - x -# The following nice solution is by -# Bruno <Haible@ma2s2.mathematik.uni-karlsruhe.de> - td -# Increment a decimal number in pattern space. -# First hide trailing `9' digits. - :d - s/9\(_*\)$/_\1/ - td -# Assure at least one digit is available. - s/^\(_*\)$/0\1/ -# Increment the last digit. - s/8\(_*\)$/9\1/ - s/7\(_*\)$/8\1/ - s/6\(_*\)$/7\1/ - s/5\(_*\)$/6\1/ - s/4\(_*\)$/5\1/ - s/3\(_*\)$/4\1/ - s/2\(_*\)$/3\1/ - s/1\(_*\)$/2\1/ - s/0\(_*\)$/1\1/ -# Convert the hidden `9' digits to `0's. - s/_/0/g - x - G - s/\(.*\)"\n\([0-9]*\)/$ #\2 Original Message:(\1)/p -} -# -# The .msg file contains, other then the .po file, only the translations -# but each given a unique ID. Starting from 1 and incrementing by 1 for -# each message we assign them to the messages. -# It is important that the .po file used to generate the cat-id-tbl.c file -# (with po-to-tbl) is the same as the one used here. (At least the order -# of declarations must not be changed.) -# -/^msgstr/ { - s/msgstr[ ]*"\(.*\)"/# \1/ -# Clear substitution flag. - tb -# Append the next line. - :b - N -# Look whether second part is continuation line. - s/\(.*\n\)"\(.*\)"/\1\2/ -# Yes, then branch. - ta - P - D -# Note that D includes a jump to the start!! -# We found a continuation line. But before printing insert '\'. - :a - s/\(.*\)\(\n.*\)/\1\\\2/ - P -# We cannot use D here. - s/.*\n\(.*\)/\1/ - tb -} -d diff --git a/gcc/intl/loadinfo.h b/gcc/intl/loadinfo.h deleted file mode 100755 index f4ebf6d..0000000 --- a/gcc/intl/loadinfo.h +++ /dev/null @@ -1,76 +0,0 @@ -/* Copyright (C) 1996, 1997 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Ulrich Drepper <drepper@cygnus.com>, 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. */ - -#ifndef PARAMS -# if __STDC__ -# define PARAMS(args) args -# else -# define PARAMS(args) () -# endif -#endif - -/* Encoding of locale name parts. */ -#define CEN_REVISION 1 -#define CEN_SPONSOR 2 -#define CEN_SPECIAL 4 -#define XPG_NORM_CODESET 8 -#define XPG_CODESET 16 -#define TERRITORY 32 -#define CEN_AUDIENCE 64 -#define XPG_MODIFIER 128 - -#define CEN_SPECIFIC (CEN_REVISION|CEN_SPONSOR|CEN_SPECIAL|CEN_AUDIENCE) -#define XPG_SPECIFIC (XPG_CODESET|XPG_NORM_CODESET|XPG_MODIFIER) - - -struct loaded_l10nfile -{ - const char *filename; - int decided; - - const void *data; - - struct loaded_l10nfile *next; - struct loaded_l10nfile *successor[1]; -}; - - -extern const char *_nl_normalize_codeset PARAMS ((const unsigned char *codeset, - size_t name_len)); - -extern struct loaded_l10nfile * -_nl_make_l10nflist PARAMS ((struct loaded_l10nfile **l10nfile_list, - const char *dirlist, size_t dirlist_len, int mask, - const char *language, const char *territory, - const char *codeset, - const char *normalized_codeset, - const char *modifier, const char *special, - const char *sponsor, const char *revision, - const char *filename, int do_allocate)); - - -extern const char *_nl_expand_alias PARAMS ((const char *name)); - -extern int _nl_explode_name PARAMS ((char *name, const char **language, - const char **modifier, - const char **territory, - const char **codeset, - const char **normalized_codeset, - const char **special, - const char **sponsor, - const char **revision)); diff --git a/gcc/intl/loadmsgcat.c b/gcc/intl/loadmsgcat.c deleted file mode 100755 index 515892d..0000000 --- a/gcc/intl/loadmsgcat.c +++ /dev/null @@ -1,222 +0,0 @@ -/* Load needed message catalogs. - Copyright (C) 1995, 1996, 1997, 1998 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. */ - -#ifdef HAVE_CONFIG_H -# include <config.h> -#endif - -#include <fcntl.h> -#include <sys/types.h> -#include <sys/stat.h> - -#if defined STDC_HEADERS || defined _LIBC -# include <stdlib.h> -#endif - -#if defined HAVE_UNISTD_H || defined _LIBC -# include <unistd.h> -#endif - -#if (defined HAVE_MMAP && defined HAVE_MUNMAP) || defined _LIBC -# include <sys/mman.h> -#endif - -#include "gettext.h" -#include "gettextP.h" - -/* @@ end of prolog @@ */ - -#ifdef _LIBC -/* Rename the non ISO C functions. This is required by the standard - because some ISO C functions will require linking with this object - file and the name space must not be polluted. */ -# define open __open -# define close __close -# define read __read -# define mmap __mmap -# define munmap __munmap -#endif - -/* We need a sign, whether a new catalog was loaded, which can be associated - with all translations. This is important if the translations are - cached by one of GCC's features. */ -int _nl_msg_cat_cntr = 0; - - -/* Load the message catalogs specified by FILENAME. If it is no valid - message catalog do nothing. */ -void -internal_function -_nl_load_domain (domain_file) - struct loaded_l10nfile *domain_file; -{ - int fd; - size_t size; - struct stat st; - struct mo_file_header *data = (struct mo_file_header *) -1; -#if (defined HAVE_MMAP && defined HAVE_MUNMAP && !defined DISALLOW_MMAP) \ - || defined _LIBC - int use_mmap = 0; -#endif - struct loaded_domain *domain; - - domain_file->decided = 1; - domain_file->data = NULL; - - /* If the record does not represent a valid locale the FILENAME - might be NULL. This can happen when according to the given - specification the locale file name is different for XPG and CEN - syntax. */ - if (domain_file->filename == NULL) - return; - - /* Try to open the addressed file. */ - fd = open (domain_file->filename, O_RDONLY); - if (fd == -1) - return; - - /* We must know about the size of the file. */ - if (fstat (fd, &st) != 0 - || (size = (size_t) st.st_size) != st.st_size - || size < sizeof (struct mo_file_header)) - { - /* Something went wrong. */ - close (fd); - return; - } - -#if (defined HAVE_MMAP && defined HAVE_MUNMAP && !defined DISALLOW_MMAP) \ - || defined _LIBC - /* Now we are ready to load the file. If mmap() is available we try - this first. If not available or it failed we try to load it. */ - data = (struct mo_file_header *) mmap (NULL, size, PROT_READ, - MAP_PRIVATE, fd, 0); - - if (data != (struct mo_file_header *) -1) - { - /* mmap() call was successful. */ - close (fd); - use_mmap = 1; - } -#endif - - /* If the data is not yet available (i.e. mmap'ed) we try to load - it manually. */ - if (data == (struct mo_file_header *) -1) - { - size_t to_read; - char *read_ptr; - - data = (struct mo_file_header *) malloc (size); - if (data == NULL) - return; - - to_read = size; - read_ptr = (char *) data; - do - { - long int nb = (long int) read (fd, read_ptr, to_read); - if (nb == -1) - { - close (fd); - return; - } - - read_ptr += nb; - to_read -= nb; - } - while (to_read > 0); - - close (fd); - } - - /* Using the magic number we can test whether it really is a message - catalog file. */ - if (data->magic != _MAGIC && data->magic != _MAGIC_SWAPPED) - { - /* The magic number is wrong: not a message catalog file. */ -#if (defined HAVE_MMAP && defined HAVE_MUNMAP && !defined DISALLOW_MMAP) \ - || defined _LIBC - if (use_mmap) - munmap ((caddr_t) data, size); - else -#endif - free (data); - return; - } - - domain_file->data - = (struct loaded_domain *) malloc (sizeof (struct loaded_domain)); - if (domain_file->data == NULL) - return; - - domain = (struct loaded_domain *) domain_file->data; - domain->data = (char *) data; -#if (defined HAVE_MMAP && defined HAVE_MUNMAP && !defined DISALLOW_MMAP) \ - || defined _LIBC - domain->use_mmap = use_mmap; -#endif - domain->mmap_size = size; - domain->must_swap = data->magic != _MAGIC; - - /* Fill in the information about the available tables. */ - switch (W (domain->must_swap, data->revision)) - { - case 0: - domain->nstrings = W (domain->must_swap, data->nstrings); - domain->orig_tab = (struct string_desc *) - ((char *) data + W (domain->must_swap, data->orig_tab_offset)); - domain->trans_tab = (struct string_desc *) - ((char *) data + W (domain->must_swap, data->trans_tab_offset)); - domain->hash_size = W (domain->must_swap, data->hash_tab_size); - domain->hash_tab = (nls_uint32 *) - ((char *) data + W (domain->must_swap, data->hash_tab_offset)); - break; - default: - /* This is an illegal revision. */ -#if (defined HAVE_MMAP && defined HAVE_MUNMAP && !defined DISALLOW_MMAP) \ - || defined _LIBC - if (use_mmap) - munmap ((caddr_t) data, size); - else -#endif - free (data); - free (domain); - domain_file->data = NULL; - return; - } - - /* Show that one domain is changed. This might make some cached - translations invalid. */ - ++_nl_msg_cat_cntr; -} - - -#ifdef _LIBC -void -internal_function -_nl_unload_domain (domain) - struct loaded_domain *domain; -{ - if (domain->use_mmap) - munmap ((caddr_t) domain->data, domain->mmap_size); - else - free ((void *) domain->data); - - free (domain); -} -#endif diff --git a/gcc/intl/localealias.c b/gcc/intl/localealias.c deleted file mode 100755 index bca555a..0000000 --- a/gcc/intl/localealias.c +++ /dev/null @@ -1,424 +0,0 @@ -/* Handle aliases for locale names. - Copyright (C) 1995, 1996, 1997, 1998 Free Software Foundation, Inc. - Written by Ulrich Drepper <drepper@gnu.ai.mit.edu>, 1995. - - 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. */ - -#ifdef HAVE_CONFIG_H -# include <config.h> -#endif - -#include <ctype.h> -#include <stdio.h> -#include <sys/types.h> - -#ifdef __GNUC__ -# define alloca __builtin_alloca -# define HAVE_ALLOCA 1 -#else -# if defined HAVE_ALLOCA_H || defined _LIBC -# include <alloca.h> -# else -# ifdef _AIX - #pragma alloca -# else -# ifndef alloca -char *alloca (); -# endif -# endif -# endif -#endif - -#if defined STDC_HEADERS || defined _LIBC -# include <stdlib.h> -#else -char *getenv (); -# ifdef HAVE_MALLOC_H -# include <malloc.h> -# else -void free (); -# endif -#endif - -#if defined HAVE_STRING_H || defined _LIBC -# ifndef _GNU_SOURCE -# define _GNU_SOURCE 1 -# endif -# include <string.h> -#else -# include <strings.h> -# ifndef memcpy -# define memcpy(Dst, Src, Num) bcopy (Src, Dst, Num) -# endif -#endif -#if !HAVE_STRCHR && !defined _LIBC -# ifndef strchr -# define strchr index -# endif -#endif - -#include "gettext.h" -#include "gettextP.h" - -/* @@ end of prolog @@ */ - -#ifdef _LIBC -/* Rename the non ANSI C functions. This is required by the standard - because some ANSI C functions will require linking with this object - file and the name space must not be polluted. */ -# define strcasecmp __strcasecmp - -# define mempcpy __mempcpy -# define HAVE_MEMPCPY 1 - -/* We need locking here since we can be called from different places. */ -# include <bits/libc-lock.h> - -__libc_lock_define_initialized (static, lock); -#endif - - -/* For those loosing systems which don't have `alloca' we have to add - some additional code emulating it. */ -#ifdef HAVE_ALLOCA -/* Nothing has to be done. */ -# define ADD_BLOCK(list, address) /* nothing */ -# define FREE_BLOCKS(list) /* nothing */ -#else -struct block_list -{ - void *address; - struct block_list *next; -}; -# define ADD_BLOCK(list, addr) \ - do { \ - struct block_list *newp = (struct block_list *) malloc (sizeof (*newp)); \ - /* If we cannot get a free block we cannot add the new element to \ - the list. */ \ - if (newp != NULL) { \ - newp->address = (addr); \ - newp->next = (list); \ - (list) = newp; \ - } \ - } while (0) -# define FREE_BLOCKS(list) \ - do { \ - while (list != NULL) { \ - struct block_list *old = list; \ - list = list->next; \ - free (old); \ - } \ - } while (0) -# undef alloca -# define alloca(size) (malloc (size)) -#endif /* have alloca */ - - -struct alias_map -{ - const char *alias; - const char *value; -}; - - -static char *string_space = NULL; -static size_t string_space_act = 0; -static size_t string_space_max = 0; -static struct alias_map *map; -static size_t nmap = 0; -static size_t maxmap = 0; - - -/* Prototypes for local functions. */ -static size_t read_alias_file PARAMS ((const char *fname, int fname_len)) - internal_function; -static void extend_alias_table PARAMS ((void)); -static int alias_compare PARAMS ((const struct alias_map *map1, - const struct alias_map *map2)); - - -const char * -_nl_expand_alias (name) - const char *name; -{ - static const char *locale_alias_path = LOCALE_ALIAS_PATH; - struct alias_map *retval; - const char *result = NULL; - size_t added; - -#ifdef _LIBC - __libc_lock_lock (lock); -#endif - - do - { - struct alias_map item; - - item.alias = name; - - if (nmap > 0) - retval = (struct alias_map *) bsearch (&item, map, nmap, - sizeof (struct alias_map), - (int (*) PARAMS ((const void *, - const void *)) - ) alias_compare); - else - retval = NULL; - - /* We really found an alias. Return the value. */ - if (retval != NULL) - { - result = retval->value; - break; - } - - /* Perhaps we can find another alias file. */ - added = 0; - while (added == 0 && locale_alias_path[0] != '\0') - { - const char *start; - - while (locale_alias_path[0] == ':') - ++locale_alias_path; - start = locale_alias_path; - - while (locale_alias_path[0] != '\0' && locale_alias_path[0] != ':') - ++locale_alias_path; - - if (start < locale_alias_path) - added = read_alias_file (start, locale_alias_path - start); - } - } - while (added != 0); - -#ifdef _LIBC - __libc_lock_unlock (lock); -#endif - - return result; -} - - -static size_t -internal_function -read_alias_file (fname, fname_len) - const char *fname; - int fname_len; -{ -#ifndef HAVE_ALLOCA - struct block_list *block_list = NULL; -#endif - FILE *fp; - char *full_fname; - size_t added; - static const char aliasfile[] = "/locale.alias"; - - full_fname = (char *) alloca (fname_len + sizeof aliasfile); - ADD_BLOCK (block_list, full_fname); -#ifdef HAVE_MEMPCPY - mempcpy (mempcpy (full_fname, fname, fname_len), - aliasfile, sizeof aliasfile); -#else - memcpy (full_fname, fname, fname_len); - memcpy (&full_fname[fname_len], aliasfile, sizeof aliasfile); -#endif - - fp = fopen (full_fname, "r"); - if (fp == NULL) - { - FREE_BLOCKS (block_list); - return 0; - } - - added = 0; - while (!feof (fp)) - { - /* It is a reasonable approach to use a fix buffer here because - a) we are only interested in the first two fields - b) these fields must be usable as file names and so must not - be that long - */ - unsigned char buf[BUFSIZ]; - unsigned char *alias; - unsigned char *value; - unsigned char *cp; - - if (fgets (buf, sizeof buf, fp) == NULL) - /* EOF reached. */ - break; - - /* Possibly not the whole line fits into the buffer. Ignore - the rest of the line. */ - if (strchr (buf, '\n') == NULL) - { - char altbuf[BUFSIZ]; - do - if (fgets (altbuf, sizeof altbuf, fp) == NULL) - /* Make sure the inner loop will be left. The outer loop - will exit at the `feof' test. */ - break; - while (strchr (altbuf, '\n') == NULL); - } - - cp = buf; - /* Ignore leading white space. */ - while (isspace (cp[0])) - ++cp; - - /* A leading '#' signals a comment line. */ - if (cp[0] != '\0' && cp[0] != '#') - { - alias = cp++; - while (cp[0] != '\0' && !isspace (cp[0])) - ++cp; - /* Terminate alias name. */ - if (cp[0] != '\0') - *cp++ = '\0'; - - /* Now look for the beginning of the value. */ - while (isspace (cp[0])) - ++cp; - - if (cp[0] != '\0') - { - size_t alias_len; - size_t value_len; - - value = cp++; - while (cp[0] != '\0' && !isspace (cp[0])) - ++cp; - /* Terminate value. */ - if (cp[0] == '\n') - { - /* This has to be done to make the following test - for the end of line possible. We are looking for - the terminating '\n' which do not overwrite here. */ - *cp++ = '\0'; - *cp = '\n'; - } - else if (cp[0] != '\0') - *cp++ = '\0'; - - if (nmap >= maxmap) - extend_alias_table (); - - alias_len = strlen (alias) + 1; - value_len = strlen (value) + 1; - - if (string_space_act + alias_len + value_len > string_space_max) - { - /* Increase size of memory pool. */ - size_t new_size = (string_space_max - + (alias_len + value_len > 1024 - ? alias_len + value_len : 1024)); - char *new_pool = (char *) realloc (string_space, new_size); - if (new_pool == NULL) - { - FREE_BLOCKS (block_list); - return added; - } - string_space = new_pool; - string_space_max = new_size; - } - - map[nmap].alias = memcpy (&string_space[string_space_act], - alias, alias_len); - string_space_act += alias_len; - - map[nmap].value = memcpy (&string_space[string_space_act], - value, value_len); - string_space_act += value_len; - - ++nmap; - ++added; - } - } - } - - /* Should we test for ferror()? I think we have to silently ignore - errors. --drepper */ - fclose (fp); - - if (added > 0) - qsort (map, nmap, sizeof (struct alias_map), - (int (*) PARAMS ((const void *, const void *))) alias_compare); - - FREE_BLOCKS (block_list); - return added; -} - - -static void -extend_alias_table () -{ - size_t new_size; - struct alias_map *new_map; - - new_size = maxmap == 0 ? 100 : 2 * maxmap; - new_map = (struct alias_map *) realloc (map, (new_size - * sizeof (struct alias_map))); - if (new_map == NULL) - /* Simply don't extend: we don't have any more core. */ - return; - - map = new_map; - maxmap = new_size; -} - - -#ifdef _LIBC -static void __attribute__ ((unused)) -free_mem (void) -{ - if (string_space != NULL) - free (string_space); - if (map != NULL) - free (map); -} -text_set_element (__libc_subfreeres, free_mem); -#endif - - -static int -alias_compare (map1, map2) - const struct alias_map *map1; - const struct alias_map *map2; -{ -#if defined _LIBC || defined HAVE_STRCASECMP - return strcasecmp (map1->alias, map2->alias); -#else - const unsigned char *p1 = (const unsigned char *) map1->alias; - const unsigned char *p2 = (const unsigned char *) map2->alias; - unsigned char c1, c2; - - if (p1 == p2) - return 0; - - do - { - /* I know this seems to be odd but the tolower() function in - some systems libc cannot handle nonalpha characters. */ - c1 = isupper (*p1) ? tolower (*p1) : *p1; - c2 = isupper (*p2) ? tolower (*p2) : *p2; - if (c1 == '\0') - break; - ++p1; - ++p2; - } - while (c1 == c2); - - return c1 - c2; -#endif -} diff --git a/gcc/intl/po2tbl.sed.in b/gcc/intl/po2tbl.sed.in deleted file mode 100755 index b3bcca4..0000000 --- a/gcc/intl/po2tbl.sed.in +++ /dev/null @@ -1,102 +0,0 @@ -# po2tbl.sed - Convert Uniforum style .po file to lookup table for catgets -# Copyright (C) 1995 Free Software Foundation, Inc. -# Ulrich Drepper <drepper@gnu.ai.mit.edu>, 1995. -# -# 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. -# -1 { - i\ -/* Automatically generated by po2tbl.sed from @PACKAGE NAME@.pot. */\ -\ -#if HAVE_CONFIG_H\ -# include <config.h>\ -#endif\ -\ -#include "libgettext.h"\ -\ -const struct _msg_ent _msg_tbl[] = { - h - s/.*/0/ - x -} -# -# Write msgid entries in C array form. -# -/^msgid/ { - s/msgid[ ]*\(".*"\)/ {\1/ - tb -# Append the next line - :b - N -# Look whether second part is continuation line. - s/\(.*\)"\(\n\)"\(.*"\)/\1\2\3/ -# Yes, then branch. - ta -# Because we assume that the input file correctly formed the line -# just read cannot be again be a msgid line. So it's safe to ignore -# it. - s/\(.*\)\n.*/\1/ - bc -# We found a continuation line. But before printing insert '\'. - :a - s/\(.*\)\(\n.*\)/\1\\\2/ - P -# We cannot use D here. - s/.*\n\(.*\)/\1/ -# Some buggy seds do not clear the `successful substitution since last ``t''' -# flag on `N', so we do a `t' here to clear it. - tb -# Not reached - :c - x -# The following nice solution is by -# Bruno <Haible@ma2s2.mathematik.uni-karlsruhe.de> - td -# Increment a decimal number in pattern space. -# First hide trailing `9' digits. - :d - s/9\(_*\)$/_\1/ - td -# Assure at least one digit is available. - s/^\(_*\)$/0\1/ -# Increment the last digit. - s/8\(_*\)$/9\1/ - s/7\(_*\)$/8\1/ - s/6\(_*\)$/7\1/ - s/5\(_*\)$/6\1/ - s/4\(_*\)$/5\1/ - s/3\(_*\)$/4\1/ - s/2\(_*\)$/3\1/ - s/1\(_*\)$/2\1/ - s/0\(_*\)$/1\1/ -# Convert the hidden `9' digits to `0's. - s/_/0/g - x - G - s/\(.*\)\n\([0-9]*\)/\1, \2},/ - s/\(.*\)"$/\1/ - p -} -# -# Last line. -# -$ { - i\ -};\ - - g - s/0*\(.*\)/int _msg_tbl_length = \1;/p -} -d diff --git a/gcc/intl/textdomain.c b/gcc/intl/textdomain.c deleted file mode 100755 index 8855746..0000000 --- a/gcc/intl/textdomain.c +++ /dev/null @@ -1,108 +0,0 @@ -/* Implementation of the textdomain(3) function. - Copyright (C) 1995, 1996, 1997, 1998 Free Software Foundation, Inc. - Written by Ulrich Drepper <drepper@gnu.ai.mit.edu>, 1995. - - 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. */ - -#ifdef HAVE_CONFIG_H -# include <config.h> -#endif - -#if defined STDC_HEADERS || defined _LIBC -# include <stdlib.h> -#endif - -#if defined STDC_HEADERS || defined HAVE_STRING_H || defined _LIBC -# include <string.h> -#else -# include <strings.h> -# ifndef memcpy -# define memcpy(Dst, Src, Num) bcopy (Src, Dst, Num) -# endif -#endif - -#ifdef _LIBC -# include <libintl.h> -#else -# include "libgettext.h" -#endif - -/* @@ end of prolog @@ */ - -/* Name of the default text domain. */ -extern const char _nl_default_default_domain[]; - -/* Default text domain in which entries for gettext(3) are to be found. */ -extern const char *_nl_current_default_domain; - - -/* Names for the libintl functions are a problem. They must not clash - with existing names and they should follow ANSI C. But this source - code is also used in GNU C Library where the names have a __ - prefix. So we have to make a difference here. */ -#ifdef _LIBC -# define TEXTDOMAIN __textdomain -# ifndef strdup -# define strdup(str) __strdup (str) -# endif -#else -# define TEXTDOMAIN textdomain__ -#endif - -/* Set the current default message catalog to DOMAINNAME. - If DOMAINNAME is null, return the current default. - If DOMAINNAME is "", reset to the default of "messages". */ -char * -TEXTDOMAIN (domainname) - const char *domainname; -{ - char *old; - - /* A NULL pointer requests the current setting. */ - if (domainname == NULL) - return (char *) _nl_current_default_domain; - - old = (char *) _nl_current_default_domain; - - /* If domain name is the null string set to default domain "messages". */ - if (domainname[0] == '\0' - || strcmp (domainname, _nl_default_default_domain) == 0) - _nl_current_default_domain = _nl_default_default_domain; - else - { - /* If the following malloc fails `_nl_current_default_domain' - will be NULL. This value will be returned and so signals we - are out of core. */ -#if defined _LIBC || defined HAVE_STRDUP - _nl_current_default_domain = strdup (domainname); -#else - size_t len = strlen (domainname) + 1; - char *cp = (char *) malloc (len); - if (cp != NULL) - memcpy (cp, domainname, len); - _nl_current_default_domain = cp; -#endif - } - - if (old != _nl_default_default_domain) - free (old); - - return (char *) _nl_current_default_domain; -} - -#ifdef _LIBC -/* Alias for function name in GNU C Library. */ -weak_alias (__textdomain, textdomain); -#endif diff --git a/gcc/intl/xopen-msg.sed b/gcc/intl/xopen-msg.sed deleted file mode 100755 index b19c0bb..0000000 --- a/gcc/intl/xopen-msg.sed +++ /dev/null @@ -1,104 +0,0 @@ -# po2msg.sed - Convert Uniforum style .po file to X/Open style .msg file -# Copyright (C) 1995 Free Software Foundation, Inc. -# Ulrich Drepper <drepper@gnu.ai.mit.edu>, 1995. -# -# 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. -# -# -# The first directive in the .msg should be the definition of the -# message set number. We use always set number 1. -# -1 { - i\ -$set 1 # Automatically created by po2msg.sed - h - s/.*/0/ - x -} -# -# We copy all comments into the .msg file. Perhaps they can help. -# -/^#/ s/^#[ ]*/$ /p -# -# We copy the original message as a comment into the .msg file. -# -/^msgid/ { -# Does not work now -# /"$/! { -# s/\\$// -# s/$/ ... (more lines following)"/ -# } - s/^msgid[ ]*"\(.*\)"$/$ Original Message: \1/ - p -} -# -# The .msg file contains, other then the .po file, only the translations -# but each given a unique ID. Starting from 1 and incrementing by 1 for -# each message we assign them to the messages. -# It is important that the .po file used to generate the cat-id-tbl.c file -# (with po-to-tbl) is the same as the one used here. (At least the order -# of declarations must not be changed.) -# -/^msgstr/ { - s/msgstr[ ]*"\(.*\)"/\1/ - x -# The following nice solution is by -# Bruno <Haible@ma2s2.mathematik.uni-karlsruhe.de> - td -# Increment a decimal number in pattern space. -# First hide trailing `9' digits. - :d - s/9\(_*\)$/_\1/ - td -# Assure at least one digit is available. - s/^\(_*\)$/0\1/ -# Increment the last digit. - s/8\(_*\)$/9\1/ - s/7\(_*\)$/8\1/ - s/6\(_*\)$/7\1/ - s/5\(_*\)$/6\1/ - s/4\(_*\)$/5\1/ - s/3\(_*\)$/4\1/ - s/2\(_*\)$/3\1/ - s/1\(_*\)$/2\1/ - s/0\(_*\)$/1\1/ -# Convert the hidden `9' digits to `0's. - s/_/0/g - x -# Bring the line in the format `<number> <message>' - G - s/^[^\n]*$/& / - s/\(.*\)\n\([0-9]*\)/\2 \1/ -# Clear flag from last substitution. - tb -# Append the next line. - :b - N -# Look whether second part is a continuation line. - s/\(.*\n\)"\(.*\)"/\1\2/ -# Yes, then branch. - ta - P - D -# Note that `D' includes a jump to the start!! -# We found a continuation line. But before printing insert '\'. - :a - s/\(.*\)\(\n.*\)/\1\\\2/ - P -# We cannot use the sed command `D' here - s/.*\n\(.*\)/\1/ - tb -} -d diff --git a/gcc/po/ChangeLog b/gcc/po/ChangeLog deleted file mode 100755 index e69de29..0000000 --- a/gcc/po/ChangeLog +++ /dev/null diff --git a/gcc/po/Makefile.in.in b/gcc/po/Makefile.in.in deleted file mode 100755 index 746d521..0000000 --- a/gcc/po/Makefile.in.in +++ /dev/null @@ -1,249 +0,0 @@ -# Makefile for program source directory in GNU NLS utilities package. -# Copyright (C) 1995, 1996, 1997 by Ulrich Drepper <drepper@gnu.ai.mit.edu> -# -# This file file be copied and used freely without restrictions. It can -# be used in projects which are not available under the GNU Public License -# but which still want to provide support for the GNU gettext functionality. -# Please note that the actual code is *not* freely available. - -PACKAGE = @PACKAGE@ -VERSION = @VERSION@ - -SHELL = /bin/sh -@SET_MAKE@ - -srcdir = @srcdir@ -top_srcdir = @top_srcdir@ -VPATH = @srcdir@ - -prefix = @prefix@ -exec_prefix = @exec_prefix@ -datadir = $(prefix)/@DATADIRNAME@ -localedir = $(datadir)/locale -gnulocaledir = $(prefix)/share/locale -gettextsrcdir = $(prefix)/share/gettext/po -subdir = po - -INSTALL = @INSTALL@ -INSTALL_DATA = @INSTALL_DATA@ -MKINSTALLDIRS = $(top_srcdir)/@MKINSTALLDIRS@ - -CC = @CC@ -GENCAT = @GENCAT@ -GMSGFMT = PATH=../src:$$PATH @GMSGFMT@ -MSGFMT = @MSGFMT@ -XGETTEXT = PATH=../src:$$PATH @XGETTEXT@ -MSGMERGE = PATH=../src:$$PATH msgmerge - -DEFS = @DEFS@ -CFLAGS = @CFLAGS@ -CPPFLAGS = @CPPFLAGS@ - -INCLUDES = -I.. -I$(top_srcdir)/intl - -COMPILE = $(CC) -c $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CFLAGS) $(XCFLAGS) - -SOURCES = cat-id-tbl.c -POFILES = @POFILES@ -GMOFILES = @GMOFILES@ -DISTFILES = ChangeLog Makefile.in.in POTFILES.in $(PACKAGE).pot \ -stamp-cat-id $(POFILES) $(GMOFILES) $(SOURCES) - -POTFILES = \ - -CATALOGS = @CATALOGS@ -CATOBJEXT = @CATOBJEXT@ -INSTOBJEXT = @INSTOBJEXT@ - -.SUFFIXES: -.SUFFIXES: .c .o .po .pox .gmo .mo .msg .cat - -.c.o: - $(COMPILE) $< - -.po.pox: - $(MAKE) $(srcdir)/$(PACKAGE).pot - $(MSGMERGE) $< $(srcdir)/$(PACKAGE).pot -o $*.pox - -.po.mo: - $(MSGFMT) -o $@ $< - -.po.gmo: - file=$(srcdir)/`echo $* | sed 's,.*/,,'`.gmo \ - && rm -f $$file && $(GMSGFMT) -o $$file $< - -.po.cat: - sed -f ../intl/po2msg.sed < $< > $*.msg \ - && rm -f $@ && $(GENCAT) $@ $*.msg - - -all: all-@USE_NLS@ - -all-yes: $(srcdir)/cat-id-tbl.c $(CATALOGS) -all-no: - -$(srcdir)/$(PACKAGE).pot: $(POTFILES) - $(XGETTEXT) --default-domain=$(PACKAGE) --directory=$(top_srcdir) \ - --add-comments --keyword=_ --keyword=N_ \ - --files-from=$(srcdir)/POTFILES.in \ - && test ! -f $(PACKAGE).po \ - || ( rm -f $(srcdir)/$(PACKAGE).pot \ - && mv $(PACKAGE).po $(srcdir)/$(PACKAGE).pot ) - -$(srcdir)/cat-id-tbl.c: $(srcdir)/stamp-cat-id; @: -$(srcdir)/stamp-cat-id: $(srcdir)/$(PACKAGE).pot - rm -f cat-id-tbl.tmp - sed -f ../intl/po2tbl.sed $(srcdir)/$(PACKAGE).pot \ - | sed -e "s/@PACKAGE NAME@/$(PACKAGE)/" > cat-id-tbl.tmp - if cmp -s cat-id-tbl.tmp $(srcdir)/cat-id-tbl.c; then \ - rm cat-id-tbl.tmp; \ - else \ - echo cat-id-tbl.c changed; \ - rm -f $(srcdir)/cat-id-tbl.c; \ - mv cat-id-tbl.tmp $(srcdir)/cat-id-tbl.c; \ - fi - cd $(srcdir) && rm -f stamp-cat-id && echo timestamp > stamp-cat-id - - -install: install-exec install-data -install-exec: -install-data: install-data-@USE_NLS@ -install-data-no: all -install-data-yes: all - if test -r "$(MKINSTALLDIRS)"; then \ - $(MKINSTALLDIRS) $(datadir); \ - else \ - $(SHELL) $(top_srcdir)/mkinstalldirs $(datadir); \ - fi - @catalogs='$(CATALOGS)'; \ - for cat in $$catalogs; do \ - cat=`basename $$cat`; \ - case "$$cat" in \ - *.gmo) destdir=$(gnulocaledir);; \ - *) destdir=$(localedir);; \ - esac; \ - lang=`echo $$cat | sed 's/\$(CATOBJEXT)$$//'`; \ - dir=$$destdir/$$lang/LC_MESSAGES; \ - if test -r "$(MKINSTALLDIRS)"; then \ - $(MKINSTALLDIRS) $$dir; \ - else \ - $(SHELL) $(top_srcdir)/mkinstalldirs $$dir; \ - fi; \ - if test -r $$cat; then \ - $(INSTALL_DATA) $$cat $$dir/$(PACKAGE)$(INSTOBJEXT); \ - echo "installing $$cat as $$dir/$(PACKAGE)$(INSTOBJEXT)"; \ - else \ - $(INSTALL_DATA) $(srcdir)/$$cat $$dir/$(PACKAGE)$(INSTOBJEXT); \ - echo "installing $(srcdir)/$$cat as" \ - "$$dir/$(PACKAGE)$(INSTOBJEXT)"; \ - fi; \ - if test -r $$cat.m; then \ - $(INSTALL_DATA) $$cat.m $$dir/$(PACKAGE)$(INSTOBJEXT).m; \ - echo "installing $$cat.m as $$dir/$(PACKAGE)$(INSTOBJEXT).m"; \ - else \ - if test -r $(srcdir)/$$cat.m ; then \ - $(INSTALL_DATA) $(srcdir)/$$cat.m \ - $$dir/$(PACKAGE)$(INSTOBJEXT).m; \ - echo "installing $(srcdir)/$$cat as" \ - "$$dir/$(PACKAGE)$(INSTOBJEXT).m"; \ - else \ - true; \ - fi; \ - fi; \ - done - if test "$(PACKAGE)" = "gettext"; then \ - if test -r "$(MKINSTALLDIRS)"; then \ - $(MKINSTALLDIRS) $(gettextsrcdir); \ - else \ - $(SHELL) $(top_srcdir)/mkinstalldirs $(gettextsrcdir); \ - fi; \ - $(INSTALL_DATA) $(srcdir)/Makefile.in.in \ - $(gettextsrcdir)/Makefile.in.in; \ - else \ - : ; \ - fi - -# Define this as empty until I found a useful application. -installcheck: - -uninstall: - catalogs='$(CATALOGS)'; \ - for cat in $$catalogs; do \ - cat=`basename $$cat`; \ - lang=`echo $$cat | sed 's/\$(CATOBJEXT)$$//'`; \ - rm -f $(localedir)/$$lang/LC_MESSAGES/$(PACKAGE)$(INSTOBJEXT); \ - rm -f $(localedir)/$$lang/LC_MESSAGES/$(PACKAGE)$(INSTOBJEXT).m; \ - rm -f $(gnulocaledir)/$$lang/LC_MESSAGES/$(PACKAGE)$(INSTOBJEXT); \ - rm -f $(gnulocaledir)/$$lang/LC_MESSAGES/$(PACKAGE)$(INSTOBJEXT).m; \ - done - rm -f $(gettextsrcdir)/po-Makefile.in.in - -check: all - -cat-id-tbl.o: $(srcdir)/cat-id-tbl.c $(top_srcdir)/intl/libgettext.h - $(COMPILE) $(srcdir)/cat-id-tbl.c - -dvi info tags TAGS ID: - -mostlyclean: - rm -f core core.* *.pox $(PACKAGE).po *.old.po cat-id-tbl.tmp - rm -fr *.o - -clean: mostlyclean - -distclean: clean - rm -f Makefile Makefile.in POTFILES *.mo *.msg *.cat *.cat.m - -maintainer-clean: distclean - @echo "This command is intended for maintainers to use;" - @echo "it deletes files that may require special tools to rebuild." - rm -f $(GMOFILES) cat-id-tbl.c stamp-cat-id - -distdir = ../$(PACKAGE)-$(VERSION)/$(subdir) -dist distdir: update-po $(DISTFILES) - dists="$(DISTFILES)"; \ - for file in $$dists; do \ - ln $(srcdir)/$$file $(distdir) 2> /dev/null \ - || cp -p $(srcdir)/$$file $(distdir); \ - done - -update-po: Makefile - $(MAKE) $(srcdir)/$(PACKAGE).pot - PATH=`pwd`/../src:$$PATH; \ - cd $(srcdir); \ - catalogs='$(CATALOGS)'; \ - for cat in $$catalogs; do \ - cat=`basename $$cat`; \ - lang=`echo $$cat | sed 's/\$(CATOBJEXT)$$//'`; \ - mv $$lang.po $$lang.old.po; \ - echo "$$lang:"; \ - if $(MSGMERGE) $$lang.old.po $(PACKAGE).pot -o $$lang.po; then \ - rm -f $$lang.old.po; \ - else \ - echo "msgmerge for $$cat failed!"; \ - rm -f $$lang.po; \ - mv $$lang.old.po $$lang.po; \ - fi; \ - done - -POTFILES: POTFILES.in - ( if test 'x$(srcdir)' != 'x.'; then \ - posrcprefix='$(top_srcdir)/'; \ - else \ - posrcprefix="../"; \ - fi; \ - rm -f $@-t $@ \ - && (sed -e '/^#/d' -e '/^[ ]*$$/d' \ - -e "s@.*@ $$posrcprefix& \\\\@" < $(srcdir)/$@.in \ - | sed -e '$$s/\\$$//') > $@-t \ - && chmod a-w $@-t \ - && mv $@-t $@ ) - -Makefile: Makefile.in.in ../config.status POTFILES - cd .. \ - && CONFIG_FILES=$(subdir)/$@.in CONFIG_HEADERS= \ - $(SHELL) ./config.status - -# Tell versions [3.59,3.63) of GNU make not to export all variables. -# Otherwise a system limit (for SysV at least) may be exceeded. -.NOEXPORT: diff --git a/gcc/po/POTFILES.in b/gcc/po/POTFILES.in deleted file mode 100755 index a072713..0000000 --- a/gcc/po/POTFILES.in +++ /dev/null @@ -1,816 +0,0 @@ -# List of files that contain translatable strings. -# Copyright 1998 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 should list all .c and .h files in this distribution. -# Files that are intentionally excluded should be commented out, not removed. -# To exclude a file, prepend a '#' to its name, and follow it by a space -# and a comment as to why it was excluded. - -# By convention, if any file included in this list defines a function -# with an argument whose name ends in `msgid', that function -# is expected to translate the argument before presenting it to the user. -# ../exgettext uses this convention to scan for strings that need translation. -# A function can have at most one msgid argument. -# Two functions with the same name in different programs -# must agree about which argument (if any) is a msgid. - -# Here are some reasons why a file might be commented-out in the list below: - -# It is part of the GCC library. - -# It is part of the translation machinery itself. - -# It is meant to be executed only by GCC maintainers or installers. -# Such files do not need to be translated, -# as these people typically need to be able to read English anyway. - -# It is not yet internationalized, because it contains many strings -# that require a lot of analysis, and the file is little-used. - - -acconfig.h -alloca.c -assert.h -basic-block.h -bc-emit.c -bc-emit.h -bc-optab.c -bc-optab.h -bc-typecd.h -bi-arity.c -bi-defs.h -bi-lexer.c -bi-opcode.c -bi-opname.c -bi-parser.c -bi-parser.h -bi-reverse.c -bi-run.h -bitmap.c -bitmap.h -bytecode.h -bytetypes.h -c-aux-info.c -c-common.c -c-convert.c -c-decl.c -c-gperf.h -c-iterate.c -c-lang.c -c-lex.c -c-lex.h -c-parse.c -c-parse.h -c-pragma.c -c-pragma.h -c-tree.h -c-typeck.c -caller-save.c -calls.c -cccp.c -cexp.c -choose-temp.c -collect2.c -combine.c -conditions.h -config/a29k/a29k.c -config/a29k/a29k.h -config/a29k/udi.h -config/a29k/unix.h -config/a29k/vx29k.h -config/a29k/xm-a29k.h -config/alpha/alpha.c -config/alpha/alpha.h -config/alpha/elf.h -config/alpha/linux.h -config/alpha/osf12.h -config/alpha/osf2or3.h -config/alpha/vms.h -config/alpha/vxworks.h -config/alpha/win-nt.h -config/alpha/xm-alpha.h -config/alpha/xm-vms.h -config/alpha/xm-winnt.h -config/aoutos.h -config/arc/arc.c -config/arc/arc.h -config/arc/initfini.c -config/arc/xm-arc.h -config/arm/aof.h -config/arm/aout.h -config/arm/arm.c -config/arm/arm.h -config/arm/coff.h -config/arm/linux-gas.h -config/arm/linux.h -config/arm/netbsd.h -config/arm/riscix.h -config/arm/riscix1-1.h -config/arm/rix-gas.h -config/arm/semi.h -config/arm/semiaof.h -config/arm/xm-arm.h -config/clipper/clipper.c -config/clipper/clipper.h -config/clipper/clix.h -config/clipper/xm-clix.h -config/convex/convex.c -config/convex/convex.h -config/convex/xm-convex.h -config/dbx.h -config/dbxcoff.h -config/dsp16xx/dsp16xx.c -config/dsp16xx/dsp16xx.h -config/dsp16xx/xm-dsp16xx.h -config/elxsi/elxsi.c -config/elxsi/elxsi.h -config/elxsi/xm-elxsi.h -config/float-i128.h -config/float-i32.h -config/float-i64.h -config/float-sh.h -config/float-vax.h -config/fp-bit.c -config/fx80/fx80.c -config/fx80/fx80.h -config/fx80/xm-fx80.h -config/gmicro/gmicro.c -config/gmicro/gmicro.h -config/gnu.h -config/gofast.h -config/h8300/h8300.c -config/h8300/h8300.h -config/h8300/xm-h8300.h -config/i370/i370.c -config/i370/i370.h -config/i370/xm-i370.h -config/i386/aix386.h -config/i386/aix386ng.h -config/i386/att.h -config/i386/bsd.h -config/i386/bsd386.h -config/i386/crtdll.h -config/i386/cygwin32.h -config/i386/dgux.c -config/i386/dgux.h -config/i386/freebsd-elf.h -config/i386/freebsd.h -config/i386/gas.h -config/i386/gmon-sol2.c -config/i386/gnu.h -config/i386/go32-rtems.h -config/i386/go32.h -config/i386/gstabs.h -config/i386/i386-aout.h -config/i386/i386-coff.h -config/i386/i386.c -config/i386/i386.h -config/i386/isc.h -config/i386/isccoff.h -config/i386/iscdbx.h -config/i386/linux-aout.h -config/i386/linux-oldld.h -config/i386/linux.h -config/i386/lynx-ng.h -config/i386/lynx.h -config/i386/mach.h -config/i386/mingw32.h -config/i386/moss.h -config/i386/netbsd.h -config/i386/next.h -config/i386/os2.h -config/i386/osf1elf.h -config/i386/osf1elfgdb.h -config/i386/osfelf.h -config/i386/osfrose.h -config/i386/perform.h -config/i386/ptx4-i.h -config/i386/rtems.h -config/i386/rtemself.h -config/i386/sco.h -config/i386/sco4.h -config/i386/sco4dbx.h -config/i386/sco5.h -config/i386/scodbx.h -config/i386/seq-gas.h -config/i386/seq-sysv3.h -config/i386/seq2-sysv3.h -config/i386/sequent.h -config/i386/sol2.h -config/i386/sol2dbg.h -config/i386/sun.h -config/i386/sun386.h -config/i386/svr3dbx.h -config/i386/svr3gas.h -config/i386/sysv3.h -config/i386/sysv4.h -config/i386/unix.h -config/i386/v3gas.h -config/i386/vsta.h -config/i386/win-nt.h -config/i386/winnt.c -config/i386/xm-aix.h -config/i386/xm-cygwin32.h -config/i386/xm-dos.h -config/i386/xm-go32.h -config/i386/xm-i386.h -config/i386/xm-isc.h -config/i386/xm-lynx.h -config/i386/xm-mingw32.h -config/i386/xm-next.h -config/i386/xm-os2.h -config/i386/xm-osf.h -config/i386/xm-osf1elf.h -config/i386/xm-sco.h -config/i386/xm-sco5.h -config/i386/xm-sysv4.h -config/i386/xm-vsta.h -config/i860/bsd-gas.h -config/i860/bsd.h -config/i860/fx2800.h -config/i860/i860.c -config/i860/i860.h -config/i860/mach.h -config/i860/paragon.h -config/i860/sysv3.h -config/i860/sysv4.h -config/i860/xm-i860.h -config/i960/i960-coff.h -config/i960/i960.c -config/i960/i960.h -config/i960/rtems.h -config/i960/vx960-coff.h -config/i960/vx960.h -config/i960/xm-i960.h -config/libgloss.h -config/linux-aout.h -config/linux.h -config/lynx-ng.h -config/lynx.h -config/m32r/initfini.c -config/m32r/m32r.c -config/m32r/m32r.h -config/m32r/xm-m32r.h -config/m68k/a-ux.h -config/m68k/altos3068.h -config/m68k/amix.h -config/m68k/apollo68.h -config/m68k/atari.h -config/m68k/aux-crt1.c -config/m68k/aux-exit.c -config/m68k/aux-mcount.c -config/m68k/auxas.h -config/m68k/auxgas.h -config/m68k/auxgld.h -config/m68k/auxld.h -config/m68k/ccur-GAS.h -config/m68k/coff.h -config/m68k/crds.h -config/m68k/ctix.h -config/m68k/dpx2.h -config/m68k/dpx2cdbx.h -config/m68k/dpx2g.h -config/m68k/fpgnulib.c -config/m68k/hp2bsd.h -config/m68k/hp310.h -config/m68k/hp310g.h -config/m68k/hp320.h -config/m68k/hp320g.h -config/m68k/hp3bsd.h -config/m68k/hp3bsd44.h -config/m68k/hpux7.h -config/m68k/isi-nfp.h -config/m68k/isi.h -config/m68k/linux-aout.h -config/m68k/linux.h -config/m68k/lynx-ng.h -config/m68k/lynx.h -config/m68k/m68k-aout.h -config/m68k/m68k-coff.h -config/m68k/m68k-none.h -config/m68k/m68k-psos.h -config/m68k/m68k.c -config/m68k/m68k.h -config/m68k/m68kemb.h -config/m68k/m68kv4.h -config/m68k/mot3300.h -config/m68k/netbsd.h -config/m68k/news.h -config/m68k/news3.h -config/m68k/news3gas.h -config/m68k/newsgas.h -config/m68k/next.h -config/m68k/next21.h -config/m68k/pbb.h -config/m68k/plexus.h -config/m68k/rtems.h -config/m68k/sgs.h -config/m68k/sun2.h -config/m68k/sun2o4.h -config/m68k/sun3.h -config/m68k/sun3mach.h -config/m68k/sun3n.h -config/m68k/sun3n3.h -config/m68k/sun3o3.h -config/m68k/tower-as.h -config/m68k/tower.h -config/m68k/vxm68k.h -config/m68k/xm-3b1.h -config/m68k/xm-atari.h -config/m68k/xm-crds.h -config/m68k/xm-lynx.h -config/m68k/xm-m68k.h -config/m68k/xm-mot3300.h -config/m68k/xm-next.h -config/m68k/xm-plexus.h -config/m88k/dgux.h -config/m88k/dguxbcs.h -config/m88k/dolph.h -config/m88k/luna.h -config/m88k/m88k-aout.h -config/m88k/m88k-coff.h -config/m88k/m88k.c -config/m88k/m88k.h -config/m88k/sysv3.h -config/m88k/sysv4.h -config/m88k/tekXD88.h -config/m88k/xm-m88k.h -config/m88k/xm-sysv3.h -config/mips/abi64.h -config/mips/bsd-4.h -config/mips/bsd-5.h -config/mips/cross64.h -config/mips/dec-bsd.h -config/mips/dec-osf1.h -config/mips/ecoff.h -config/mips/ecoffl.h -config/mips/elf.h -config/mips/elf64.h -config/mips/elfl.h -config/mips/elfl64.h -config/mips/elforion.h -config/mips/gnu.h -config/mips/iris3.h -config/mips/iris4.h -config/mips/iris4loser.h -config/mips/iris5.h -config/mips/iris5gas.h -config/mips/iris6.h -config/mips/mips-5.h -config/mips/mips.c -config/mips/mips.h -config/mips/netbsd.h -config/mips/news4.h -config/mips/news5.h -config/mips/osfrose.h -config/mips/r3900.h -config/mips/rtems64.h -config/mips/sni-gas.h -config/mips/sni-svr4.h -config/mips/svr3-4.h -config/mips/svr3-5.h -config/mips/svr4-4.h -config/mips/svr4-5.h -config/mips/svr4-t.h -config/mips/ultrix.h -config/mips/xm-iris6.h -config/mips/xm-mips.h -config/mn10200/divmod.c -config/mn10200/mn10200.c -config/mn10200/mn10200.h -config/mn10200/udivmod.c -config/mn10200/udivmodsi4.c -config/mn10200/xm-mn10200.h -config/mn10300/mn10300.c -config/mn10300/mn10300.h -config/mn10300/xm-mn10300.h -config/msdos/mklibgcc.c -config/netbsd.h -config/nextstep.c -config/nextstep.h -config/nextstep21.h -config/ns32k/encore.h -config/ns32k/genix.h -config/ns32k/merlin.h -config/ns32k/netbsd.h -config/ns32k/ns32k.c -config/ns32k/ns32k.h -config/ns32k/pc532-mach.h -config/ns32k/pc532-min.h -config/ns32k/pc532.h -config/ns32k/sequent.h -config/ns32k/tek6000.h -config/ns32k/tek6100.h -config/ns32k/tek6200.h -config/ns32k/xm-ns32k.h -config/ns32k/xm-pc532-min.h -config/pa/pa-gas.h -config/pa/pa-hiux.h -config/pa/pa-hpux.h -config/pa/pa-hpux10.h -config/pa/pa-hpux7.h -config/pa/pa-hpux9.h -config/pa/pa-oldas.h -config/pa/pa-osf.h -config/pa/pa-pro-end.h -config/pa/pa-pro.h -config/pa/pa.c -config/pa/pa.h -config/pa/pa1.h -config/pa/rtems.h -config/pa/xm-pa.h -config/pa/xm-pahpux.h -config/pa/xm-papro.h -config/pdp11/pdp11.c -config/pdp11/pdp11.h -config/pdp11/xm-pdp11.h -config/psos.h -config/ptx4.h -config/pyr/pyr.c -config/pyr/pyr.h -config/pyr/xm-pyr.h -config/romp/romp.c -config/romp/romp.h -config/romp/xm-romp.h -config/rs6000/aix31.h -config/rs6000/aix3newas.h -config/rs6000/aix41.h -config/rs6000/cygwin32.h -config/rs6000/eabi-ctors.c -config/rs6000/eabi.h -config/rs6000/eabiaix.h -config/rs6000/eabile.h -config/rs6000/eabilesim.h -config/rs6000/eabisim.h -config/rs6000/linux.h -config/rs6000/lynx.h -config/rs6000/mach.h -config/rs6000/netware.h -config/rs6000/powerpc.h -config/rs6000/rs6000.c -config/rs6000/rs6000.h -config/rs6000/rtems.h -config/rs6000/sol-c0.c -config/rs6000/sol2.h -config/rs6000/sysv4.h -config/rs6000/sysv4le.h -config/rs6000/vxppc.h -config/rs6000/win-nt.h -config/rs6000/xm-cygwin32.h -config/rs6000/xm-lynx.h -config/rs6000/xm-mach.h -config/rs6000/xm-rs6000.h -config/rs6000/xm-sysv4.h -config/sh/elf.h -config/sh/rtems.h -config/sh/sh.c -config/sh/sh.h -config/sh/xm-sh.h -config/sparc/aout.h -config/sparc/bsd.h -config/sparc/elf.h -config/sparc/gmon-sol2.c -config/sparc/hal.h -config/sparc/linux-aout.h -config/sparc/linux.h -config/sparc/linux64.h -config/sparc/lite.h -config/sparc/litecoff.h -config/sparc/lynx-ng.h -config/sparc/lynx.h -config/sparc/netbsd.h -config/sparc/pbd.h -config/sparc/rtems.h -config/sparc/sol2-sld.h -config/sparc/sol2.h -config/sparc/sp64-aout.h -config/sparc/sp64-elf.h -config/sparc/sparc.c -config/sparc/sparc.h -config/sparc/splet.h -config/sparc/sun4gas.h -config/sparc/sun4o3.h -config/sparc/sunos4.h -config/sparc/sysv4.h -config/sparc/vxsim.h -config/sparc/vxsparc.h -config/sparc/xm-linux.h -config/sparc/xm-lynx.h -config/sparc/xm-sol2.h -config/sparc/xm-sp64.h -config/sparc/xm-sparc.h -config/sparc/xm-sysv4.h -config/spur/spur.c -config/spur/spur.h -config/spur/xm-spur.h -config/svr3.h -config/svr4.h -config/tahoe/harris.h -config/tahoe/tahoe.c -config/tahoe/tahoe.h -config/tahoe/xm-tahoe.h -config/v850/v850.c -config/v850/v850.h -config/v850/xm-v850.h -config/vax/netbsd.h -config/vax/ultrix.h -config/vax/vax.c -config/vax/vax.h -config/vax/vaxv.h -config/vax/vms.h -config/vax/xm-vax.h -config/vax/xm-vms.h -config/we32k/we32k.c -config/we32k/we32k.h -config/we32k/xm-we32k.h -config/winnt/dirent.c -config/winnt/dirent.h -config/winnt/fixinc-nt.c -config/winnt/ld.c -config/winnt/mklibgcc.c -config/winnt/oldnames.c -config/winnt/spawnv.c -config/winnt/win-nt.h -config/winnt/xm-winnt.h -config/xm-alloca.h -config/xm-gnu.h -config/xm-lynx.h -config/xm-siglist.h -config/xm-std32.h -convert.c -convert.h -cp/call.c -cp/class.c -cp/class.h -cp/cp-tree.h -cp/cvt.c -cp/decl.c -cp/decl.h -cp/decl2.c -cp/errfn.c -cp/error.c -cp/except.c -cp/expr.c -cp/friend.c -cp/g++spec.c -cp/hash.h -cp/inc/new.h -cp/init.c -cp/input.c -cp/lang-options.h -cp/lang-specs.h -cp/lex.c -cp/lex.h -cp/method.c -cp/parse.c -cp/parse.h -cp/pt.c -cp/ptree.c -cp/repo.c -cp/rtti.c -cp/search.c -cp/sig.c -cp/spew.c -cp/tinfo.h -cp/tree.c -cp/typeck.c -cp/typeck2.c -cp/xref.c -cplus-dem.c -cppalloc.c -cpperror.c -cppexp.c -cpphash.c -cpphash.h -cpplib.c -cpplib.h -cppmain.c -#crtstuff.c is part of the GCC library -cse.c -dbxout.c -dbxstclass.h -defaults.h -demangle.h -doschk.c -dwarf.h -dwarf2.h -dwarf2out.c -dwarfout.c -emit-rtl.c -#enquire.c is used only by GCC maintainers and installers -except.c -except.h -explow.c -expmed.c -expr.c -expr.h -final.c -#fix-header.c is used only by GCC maintainers and installers -flags.h -floatlib.c -flow.c -fold-const.c -fp-test.c -frame.c -#frame.h is part of the GCC library -function.c -function.h -gansidecl.h -#gbl-ctors.h is part of the GCC library -gcc.c -gcov-io.h -gcov.c -#gen-protos.c is used only by GCC maintainers and installers -#genattr.c is used only by GCC maintainers and installers -#genattrtab.c is used only by GCC maintainers and installers -#gencheck.c is used only by GCC maintainers and installers -#gencodes.c is used only by GCC maintainers and installers -#genconfig.c is used only by GCC maintainers and installers -#genemit.c is used only by GCC maintainers and installers -#genextract.c is used only by GCC maintainers and installers -#genflags.c is used only by GCC maintainers and installers -#genopinit.c is used only by GCC maintainers and installers -#genoutput.c is used only by GCC maintainers and installers -#genpeep.c is used only by GCC maintainers and installers -#genrecog.c is used only by GCC maintainers and installers -getopt.c -getopt.h -getopt1.c -getpwd.c -ginclude/iso646.h -ginclude/math-3300.h -ginclude/math-68881.h -ginclude/ppc-asm.h -ginclude/proto.h -ginclude/stdarg.h -ginclude/stddef.h -ginclude/va-alpha.h -ginclude/va-arc.h -ginclude/va-clipper.h -ginclude/va-h8300.h -ginclude/va-i860.h -ginclude/va-i960.h -ginclude/va-m32r.h -ginclude/va-m88k.h -ginclude/va-mips.h -ginclude/va-mn10200.h -ginclude/va-mn10300.h -ginclude/va-pa.h -ginclude/va-ppc.h -ginclude/va-pyr.h -ginclude/va-sh.h -ginclude/va-sparc.h -ginclude/va-spur.h -ginclude/va-v850.h -ginclude/varargs.h -glimits.h -global.c -gmon.c -gstab.h -gsyms.h -gsyslimits.h -halfpic.c -halfpic.h -hard-reg-set.h -input.h -integrate.c -integrate.h -intl.c -intl.h -intl/bindtextdom.c -intl/cat-compat.c -intl/dcgettext.c -intl/dgettext.c -intl/explodename.c -intl/finddomain.c -intl/gettext.c -intl/gettext.h -intl/gettextP.h -intl/hash-string.h -intl/intl-compat.c -intl/l10nflist.c -intl/libgettext.h -intl/loadinfo.h -intl/loadmsgcat.c -intl/localealias.c -intl/textdomain.c -jump.c -#libgcc1-test.c is used only by GCC maintainers and installers -#libgcc1.c is part of the GCC library -#libgcc2.c is part of the GCC library -limitx.h -limity.h -local-alloc.c -#longlong.h is part of the GCC library -loop.c -loop.h -machmode.h -#mips-tdump.c is not yet internationalized -#mips-tfile.c is not yet internationalized -objc/NXConstStr.h -objc/Object.h -objc/Protocol.h -objc/archive.c -objc/class.c -objc/encoding.c -objc/encoding.h -objc/hash.c -objc/hash.h -objc/init.c -objc/libobjc_entry.c -objc/misc.c -objc/nil_method.c -objc/objc-act.c -objc/objc-act.h -objc/objc-api.h -objc/objc-list.h -objc/objc-parse.c -objc/objc.h -objc/objects.c -objc/runtime.h -objc/sarray.c -objc/sarray.h -objc/selector.c -objc/sendmsg.c -objc/thr-decosf1.c -objc/thr-irix.c -objc/thr-mach.c -objc/thr-os2.c -objc/thr-posix.c -objc/thr-pthreads.c -objc/thr-single.c -objc/thr-solaris.c -objc/thr-win32.c -objc/thr.c -objc/thr.h -objc/typedstream.h -obstack.c -obstack.h -optabs.c -output.h -pcp.h -pexecute.c -#po/cat-id-tbl.c contains the translation tables themselves -prefix.c -print-rtl.c -print-tree.c -profile.c -protoize.c -pself.c -pself1.c -pself2.c -pself3.c -real.c -real.h -recog.c -recog.h -reg-stack.c -regclass.c -regmove.c -regs.h -reload.c -reload.h -reload1.c -reorg.c -rtl.c -rtl.h -rtlanal.c -#scan-decls.c is used only by GCC maintainers and installers -#scan.c is used only by GCC maintainers and installers -scan.h -sched.c -sdbout.c -stack.h -stmt.c -stor-layout.c -stupid.c -sys-protos.h -sys-types.h -toplev.c -tree.c -tree.h -typeclass.h -unprotoize.c -unroll.c -varasm.c -version.c -xcoffout.c -xcoffout.h diff --git a/gcc/po/en_UK.po b/gcc/po/en_UK.po deleted file mode 100755 index 829b7b5..0000000 --- a/gcc/po/en_UK.po +++ /dev/null @@ -1,491 +0,0 @@ -# British English messages for GNU CC -# Copyright (C) 1998 Free Software Foundation, Inc. -# Paul Eggert <eggert@twinsun.com>, 1998. -# -msgid "" -msgstr "" -"Project-Id-Version: cc 2.8.1.19980813\n" -"POT-Creation-Date: 1998-07-26 00:33-0700\n" -"PO-Revision-Date: 1998-09-27 21:34-0700\n" -"Last-Translator: Paul Eggert <eggert@twinsun.com>\n" -"Language-Team: English <en@li.org>\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=us-ascii\n" -"Content-Transfer-Encoding: 7bit\n" - -#: c-common.c:643 -msgid "unrecognized format specifier" -msgstr "unrecognised format specifier" - -#: c-common.c:659 -#, c-format -msgid "`%s' is an unrecognized format function type" -msgstr "`%s' is an unrecognised format function type" - -#: c-decl.c:3673 -#, c-format -msgid "typedef `%s' is initialized" -msgstr "typedef `%s' is initialised" - -#: c-decl.c:3680 -#, c-format -msgid "function `%s' is initialized like a variable" -msgstr "function `%s' is initialised like a variable" - -#. DECL_INITIAL in a PARM_DECL is really DECL_ARG_TYPE. -#: c-decl.c:3687 -#, c-format -msgid "parameter `%s' is initialized" -msgstr "parameter `%s' is initialised" - -#: c-decl.c:3702 c-typeck.c:4924 -msgid "variable-sized object may not be initialized" -msgstr "variable-sized object may not be initialised" - -#: c-decl.c:3708 -#, c-format -msgid "variable `%s' has initializer but incomplete type" -msgstr "variable `%s' has initialiser but incomplete type" - -#: c-decl.c:3726 -#, c-format -msgid "declaration of `%s' has `extern' and is initialized" -msgstr "declaration of `%s' has `extern' and is initialised" - -#: c-decl.c:3865 -#, c-format -msgid "initializer fails to determine size of `%s'" -msgstr "initialiser fails to determine size of `%s'" - -#: c-decl.c:4626 cp/decl.c:8536 -#, c-format -msgid "`%s' initialized and declared `extern'" -msgstr "`%s' initialised and declared `extern'" - -#: c-decl.c:4628 cp/decl.c:8539 -#, c-format -msgid "`%s' has both `extern' and initializer" -msgstr "`%s' has both `extern' and initialiser" - -#: c-lex.c:406 cp/lex.c:2158 -msgid "stray '\\' in program" -msgstr "stray '\\' in programme" - -#: c-lex.c:859 -msgid "unrecognized text at end of #line" -msgstr "unrecognised text at end of #line" - -#: c-parse.y:1106 objc-parse.y:1212 -msgid "ANSI C forbids empty initializer braces" -msgstr "ANSI C forbids empty initialiser braces" - -#: c-typeck.c:4544 -msgid "initializer for static variable is not constant" -msgstr "initialiser for static variable is not constant" - -#: c-typeck.c:4550 -msgid "initializer for static variable uses complicated arithmetic" -msgstr "initialiser for static variable uses complicated arithmetic" - -#: c-typeck.c:4558 -msgid "aggregate initializer is not constant" -msgstr "aggregate initialiser is not constant" - -#: c-typeck.c:4560 -msgid "aggregate initializer uses complicated arithmetic" -msgstr "aggregate initialiser uses complicated arithmetic" - -#: c-typeck.c:4724 c-typeck.c:4740 c-typeck.c:4756 -#, c-format -msgid "(near initialization for `%s')" -msgstr "(near initialisation for `%s')" - -#: c-typeck.c:4804 cp/typeck2.c:787 -msgid "char-array initialized from wide string" -msgstr "char-array initialised from wide string" - -#: c-typeck.c:4811 cp/typeck2.c:794 -msgid "int-array initialized from non-wide string" -msgstr "int-array initialised from non-wide string" - -#: c-typeck.c:4828 cp/typeck2.c:815 -msgid "initializer-string for array of chars is too long" -msgstr "initialiser-string for array of chars is too long" - -#: c-typeck.c:4855 -msgid "array initialized from non-constant array expression" -msgstr "array initialised from non-constant array expression" - -#: c-typeck.c:4872 c-typeck.c:4874 c-typeck.c:4880 c-typeck.c:4907 -#: c-typeck.c:6107 -msgid "initializer element is not constant" -msgstr "initialiser element is not constant" - -#: c-typeck.c:4886 c-typeck.c:4913 c-typeck.c:6113 -msgid "initializer element is not computable at load time" -msgstr "initialiser element is not computable at load time" - -#: c-typeck.c:4902 -msgid "initialization" -msgstr "initialisation" - -#: c-typeck.c:4950 c-typeck.c:4966 cp/typeck2.c:893 -msgid "invalid initializer" -msgstr "invalid initialiser" - -#: c-typeck.c:5444 -msgid "extra brace group at end of initializer" -msgstr "extra brace group at end of initialiser" - -#: c-typeck.c:5456 -msgid "missing braces around initializer" -msgstr "missing braces around initialiser" - -#: c-typeck.c:5486 -msgid "braces around scalar initializer" -msgstr "braces around scalar initialiser" - -#: c-typeck.c:5560 -msgid "empty braces in initializer" -msgstr "empty braces in initialiser" - -#: c-typeck.c:5624 -msgid "empty scalar initializer" -msgstr "empty scalar initialiser" - -#: c-typeck.c:5629 -msgid "extra elements in scalar initializer" -msgstr "extra elements in scalar initialiser" - -#: c-typeck.c:5763 c-typeck.c:5765 -msgid "nonconstant array index in initializer" -msgstr "nonconstant array index in initialiser" - -#: c-typeck.c:5767 -msgid "array index in non-array initializer" -msgstr "array index in non-array initialiser" - -#: c-typeck.c:5769 -msgid "duplicate array index in initializer" -msgstr "duplicate array index in initialiser" - -#: c-typeck.c:5776 -msgid "empty index range in initializer" -msgstr "empty index range in initialiser" - -#: c-typeck.c:5780 -msgid "ANSI C forbids specifying element to initialize" -msgstr "ANSI C forbids specifying element to initialise" - -#: c-typeck.c:5810 -#, c-format -msgid "unknown field `%s' specified in initializer" -msgstr "unknown field `%s' specified in initialiser" - -#: c-typeck.c:5813 -#, c-format -msgid "field `%s' already initialized" -msgstr "field `%s' already initialised" - -#: c-typeck.c:5819 -msgid "ANSI C forbids specifying structure member to initialize" -msgstr "ANSI C forbids specifying structure member to initialise" - -#: c-typeck.c:6129 -msgid "duplicate initializer" -msgstr "duplicate initialiser" - -#: c-typeck.c:6475 c-typeck.c:6510 -msgid "excess elements in struct initializer" -msgstr "excess elements in struct initialiser" - -#: c-typeck.c:6574 -msgid "excess elements in union initializer" -msgstr "excess elements in union initialiser" - -#: c-typeck.c:6648 c-typeck.c:6659 -msgid "excess elements in array initializer" -msgstr "excess elements in array initialiser" - -#: c-typeck.c:6710 -msgid "excess elements in scalar initializer" -msgstr "excess elements in scalar initialiser" - -#: cccp.c:2708 -msgid "preprocessing directive not recognized within macro arg" -msgstr "preprocessing directive not recognised within macro arg" - -#: config/h8300/h8300.c:2948 config/h8300/h8300.c:2960 -msgid "Only initialized variables can be placed into the 8-bit area." -msgstr "Only initialised variables can be placed into the 8-bit area." - -#: config/nextstep.c:70 -msgid "optimization turned on" -msgstr "optimisation turned on" - -#: config/nextstep.c:76 -msgid "optimization turned off" -msgstr "optimisation turned off" - -#: config/nextstep.c:91 -msgid "optimization level restored" -msgstr "optimisation level restored" - -#: cp/class.c:4897 -#, c-format -msgid "language string `\"%s\"' not recognized" -msgstr "language string `\"%s\"' not recognised" - -#: cp/decl.c:6372 -msgid "assignment (not initialization) in declaration" -msgstr "assignment (not initialisation) in declaration" - -#: cp/decl.c:8913 -#, c-format -msgid "can't initialize friend function `%s'" -msgstr "can't initialise friend function `%s'" - -#: cp/decl.c:9385 -msgid "typedef declaration includes an initializer" -msgstr "typedef declaration includes an initialiser" - -#: cp/decl2.c:1609 -msgid "function declarations cannot have initializers in signature" -msgstr "function declarations cannot have initialisers in signature" - -#: cp/decl2.c:1655 -msgid "field initializer is not constant" -msgstr "field initialiser is not constant" - -#: cp/decl2.c:1697 -msgid "initializer invalid for static member with constructor" -msgstr "initialiser invalid for static member with constructor" - -#: cp/decl2.c:1699 -msgid "(you really want to initialize it separately)" -msgstr "(you really want to initialise it separately)" - -#: cp/init.c:213 -msgid "initializer list treated as compound expression" -msgstr "initialiser list treated as compound expression" - -#: cp/init.c:945 -msgid "base class initializer specified, but no base class to initialize" -msgstr "base class initialiser specified, but no base class to initialise" - -#: cp/init.c:951 -msgid "initializer for unnamed base class ambiguous" -msgstr "initialiser for unnamed base class ambiguous" - -#: cp/init.c:979 -msgid "no base class to initialize" -msgstr "no base class to initialise" - -#: cp/init.c:1010 -msgid " will be re-ordered to precede member initializations" -msgstr " will be re-ordered to precede member initialisations" - -#. Handle bad initializers like: -#. class COMPLEX { -#. public: -#. double re, im; -#. COMPLEX(double r = 0.0, double i = 0.0) {re = r; im = i;}; -#. ~COMPLEX() {}; -#. }; -#. -#. int main(int argc, char **argv) { -#. COMPLEX zees(1.0, 0.0)[10]; -#. } -#. -#: cp/init.c:1199 -msgid "bad array initializer" -msgstr "bad array initialiser" - -#: cp/init.c:1519 cp/typeck.c:6093 -msgid "return value from function receives multiple initializations" -msgstr "return value from function receives multiple initialisations" - -#: cp/init.c:1536 cp/init.c:2590 cp/typeck2.c:601 cp/typeck2.c:1445 -msgid "initializer list being treated as compound expression" -msgstr "initialiser list being treated as compound expression" - -#: cp/init.c:2593 -msgid "initializer list appears where operand should be used" -msgstr "initialiser list appears where operand should be used" - -#: cp/init.c:3069 -msgid "initialization of array from dissimilar array type" -msgstr "initialisation of array from dissimilar array type" - -#: cp/init.c:3083 -msgid "initializer ends prematurely" -msgstr "initialiser ends prematurely" - -#: cp/init.c:3116 -msgid "cannot initialize multi-dimensional array with initializer" -msgstr "cannot initialise multi-dimensional array with initialiser" - -#: parse.y:763 -msgid "no base initializers given following ':'" -msgstr "no base initialisers given following ':'" - -#: parse.y:786 -msgid "base initializers not allowed for non-member functions" -msgstr "base initialisers not allowed for non-member functions" - -#: parse.y:788 -msgid "only constructors take base initializers" -msgstr "only constructors take base initialisers" - -#: parse.y:805 parse.y:811 -msgid "anachronistic old style base class initializer" -msgstr "anachronistic old style base class initialiser" - -#: parse.y:1182 -msgid "ANSI C++ forbids initialization of new expression with `='" -msgstr "ANSI C++ forbids initialisation of new expression with `='" - -#: parse.y:4029 -msgid "ANSI C++ forbids compound statements inside for initializations" -msgstr "ANSI C++ forbids compound statements inside for initialisations" - -#: cp/pt.c:504 -msgid "Explicit specialization not preceded by `template <>'" -msgstr "Explicit specialisation not preceded by `template <>'" - -#: cp/tree.c:1609 -msgid "initializer contains unrecognized tree code" -msgstr "initialiser contains unrecognised tree code" - -#: cp/typeck.c:189 -msgid "argument list may not have an initializer list" -msgstr "argument list may not have an initialiser list" - -#: cp/typeck.c:2643 -msgid "ANSI C++ forbids calling `main' from within program" -msgstr "ANSI C++ forbids calling `main' from within programme" - -#: cp/typeck2.c:576 -msgid "comma expression used to initialize return value" -msgstr "comma expression used to initialise return value" - -#: cp/typeck2.c:592 -msgid "cannot initialize arrays using this syntax" -msgstr "cannot initialise arrays using this syntax" - -#: cp/typeck2.c:658 -msgid "ANSI C++ forbids non-constant aggregate initializer expressions" -msgstr "ANSI C++ forbids non-constant aggregate initialiser expressions" - -#: cp/typeck2.c:741 cp/typeck2.c:757 -msgid "ANSI C++ forbids initializing array from array expression" -msgstr "ANSI C++ forbids initialising array from array expression" - -#: cp/typeck2.c:759 -msgid "ANSI C++ forbids single nonscalar initializer with braces" -msgstr "ANSI C++ forbids single nonscalar initialiser with braces" - -#: cp/typeck2.c:802 -msgid "ANSI C++ forbids string initializer except for `char' elements" -msgstr "ANSI C++ forbids string initialiser except for `char' elements" - -#: cp/typeck2.c:834 -msgid "initializer for scalar variable requires one element" -msgstr "initialiser for scalar variable requires one element" - -#: cp/typeck2.c:931 -msgid "aggregate has a partly bracketed initializer" -msgstr "aggregate has a partly bracketed initialiser" - -#: cp/typeck2.c:974 -msgid "non-empty initializer for array of empty elements" -msgstr "non-empty initialiser for array of empty elements" - -#: cp/typeck2.c:1003 -msgid "initializer list for object of class with virtual baseclasses" -msgstr "initialiser list for object of class with virtual baseclasses" - -#: cp/typeck2.c:1009 -msgid "initializer list for object of class with baseclasses" -msgstr "initialiser list for object of class with baseclasses" - -#: cp/typeck2.c:1015 -msgid "initializer list for object using virtual functions" -msgstr "initialiser list for object using virtual functions" - -#: cp/typeck2.c:1076 -#, c-format -msgid "uninitialized const member `%s'" -msgstr "uninitialised const member `%s'" - -#: cp/typeck2.c:1080 -#, c-format -msgid "member `%s' with uninitialized const fields" -msgstr "member `%s' with uninitialised const fields" - -#: cp/typeck2.c:1083 -#, c-format -msgid "member `%s' is uninitialized reference" -msgstr "member `%s' is uninitialised reference" - -#: cp/typeck2.c:1108 -msgid "index value instead of field name in union initializer" -msgstr "index value instead of field name in union initialiser" - -#: cp/typeck2.c:1120 -#, c-format -msgid "no field `%s' in union being initialized" -msgstr "no field `%s' in union being initialised" - -#: cp/typeck2.c:1164 -msgid "excess elements in aggregate initializer" -msgstr "excess elements in aggregate initialiser" - -#: function.c:4809 -#, c-format -msgid "`%s' might be used uninitialized in this function" -msgstr "`%s' might be used uninitialised in this function" - -#: gcc.c:2268 -#, c-format -msgid "Internal compiler error: program %s got fatal signal %d" -msgstr "Internal compiler error: programme %s got fatal signal %d" - -#: gcc.c:4606 -#, c-format -msgid "unrecognized option `-%s'" -msgstr "unrecognised option `-%s'" - -#: gcc.c:4862 -#, c-format -msgid "language %s not recognized" -msgstr "language %s not recognised" - -#: gcov.c:449 -#, c-format -msgid "Could not open program flow graph file %s.\n" -msgstr "Could not open programme flow graph file %s.\n" - -#. --option -#: getopt.c:755 -#, c-format -msgid "%s: unrecognized option `--%s'\n" -msgstr "%s: unrecognised option `--%s'\n" - -#. +option or -option -#: getopt.c:759 -#, c-format -msgid "%s: unrecognized option `%c%s'\n" -msgstr "%s: unrecognised option `%c%s'\n" - -#: tree.c:4771 -msgid "invalid initializer for bit string" -msgstr "invalid initialiser for bit string" - -#: varasm.c:4086 -msgid "initializer for integer value is too complicated" -msgstr "initialiser for integer value is too complicated" - -#: varasm.c:4092 -msgid "initializer for floating value is not a floating constant" -msgstr "initialiser for floating value is not a floating constant" |