about summary refs log tree commit diff
path: root/intl/Makefile
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2000-01-22 05:50:49 +0000
committerUlrich Drepper <drepper@redhat.com>2000-01-22 05:50:49 +0000
commitabbffdf981c8bb03312024107715d58902914f11 (patch)
tree168a2fd362a2c159507b4ed0d2391b6ff3f1e575 /intl/Makefile
parent0b9fbf003af00a2a22164333bbe709aa9abbcdc9 (diff)
downloadglibc-abbffdf981c8bb03312024107715d58902914f11.tar.gz
glibc-abbffdf981c8bb03312024107715d58902914f11.tar.xz
glibc-abbffdf981c8bb03312024107715d58902914f11.zip
Update.
2000-01-21  Ulrich Drepper  <drepper@cygnus.com>

	* intl/Makefile (routines): Add dcigettext, dcngettext, dngettxt,
	ngettext, and plural.
	(distribute): Add plural.y, po2test.sed, and tst-gettext.sh.
	(test-srcs): Add tst-gettext.
	(before-compile): Add $(objpfx)msgs.h.
	Add rules for plural.c and msgs.h generation and running tst-gettext.\
	* intl/Versions [GLIBC_2.2]: Add __dcngettext, dcngettext, dngettext,
	and ngettext.
	* intl/dcgettext.c: Move most code into dcigettext.c.  Add call
	dcigettext with appropriate parameters.
	* intl/dcigettext.c: New file.
	* intl/dcngettext.c: New file.
	* intl/dngettext.c: New file.
	* intl/ngettext.c: New file.
	* intl/gettextP.h (struct expression): Define.
	(struct loaded_domain): Add plural and nplurals members.
	Add prototypes for new internal functions.
	* intl/libintl.h: Declare new functions.  Add optimizations for them.
	* intl/loadinfo.h: Add new parameter to _nl_find_msg declaration.
	* intl/loadmsgcat.c (_nl_load_domain): Search for plural information in
	header entry and parse and store the expression.
	* intl/plural.y: New file.
	* intl/po2test.sed: New file.
	* intl/tst-gettext.c: New file.
	* intl/tst-gettext.sh: New file.

	* intl/gettext.c: Call __dcgettext directly.
Diffstat (limited to 'intl/Makefile')
-rw-r--r--intl/Makefile30
1 files changed, 27 insertions, 3 deletions
diff --git a/intl/Makefile b/intl/Makefile
index 4712179290..21c73e7566 100644
--- a/intl/Makefile
+++ b/intl/Makefile
@@ -1,4 +1,4 @@
-# Copyright (C) 1995, 1996, 1997, 1998, 1999 Free Software Foundation, Inc.
+# Copyright (C) 1995-1999, 2000 Free Software Foundation, Inc.
 # This file is part of the GNU C Library.
 
 # The GNU C Library is free software; you can redistribute it and/or
@@ -21,16 +21,40 @@
 subdir = intl
 headers = libintl.h
 routines = bindtextdom dcgettext dgettext gettext	\
+	   dcigettext dcngettext dngettext ngettext \
 	   finddomain loadmsgcat localealias textdomain	\
-	   l10nflist explodename
-distribute = gettext.h gettextP.h hash-string.h loadinfo.h locale.alias
+	   l10nflist explodename plural
+distribute = gettext.h gettextP.h hash-string.h loadinfo.h locale.alias \
+	     plural.y po2test.sed tst-gettext.sh
+
+test-srcs := tst-gettext
+
+before-compile = $(objpfx)msgs.h
 
 install-others = $(inst_msgcatdir)/locale.alias
 
+plural.c: plural.y
+	$(YACC) $(YFLAGS) $@ $^
+ifeq ($(with-cvs),yes)
+	test ! -d CVS || cvs $(CVSOPTS) commit -m'$(YACC) $(YFLAGS) $@ $^' $@
+endif
+$(objpfx)plural.o: plural.c
+
 include ../Rules
 
+.PHONY: do-gettext-test
+tests: do-gettext-test
+do-gettext-test: tst-gettext.sh $(objpfx)tst-gettext
+	$(SHELL) -e $< $(common-objpfx) $(objpfx)
+
+$(objpfx)msgs.h: po2test.sed ../po/de.po
+	sed -f $^ > $@
+
+CFLAGS-tst-gettext.c = -DTESTSTRS_H=\"$(objpfx)msgs.h\"
+
 CPPFLAGS += -D'GNULOCALEDIR="$(msgcatdir)"' \
 	    -D'LOCALE_ALIAS_PATH="$(msgcatdir):$(i18ndir)"'
+YFLAGS = --name-prefix=__gettext --output
 
 $(inst_msgcatdir)/locale.alias: locale.alias $(+force)
 	$(do-install)