Sparc string routines from Jakub.
[kopensolaris-gnu/glibc.git] / localedata / Makefile
1 # Copyright (C) 1996, 1997, 1998, 1999 Free Software Foundation, Inc.
2 # This file is part of the GNU C Library.
3
4 # The GNU C Library is free software; you can redistribute it and/or
5 # modify it under the terms of the GNU Library General Public License
6 # as published by the Free Software Foundation; either version 2 of
7 # the License, or (at your option) any later version.
8
9 # The GNU C Library is distributed in the hope that it will be useful,
10 # but WITHOUT ANY WARRANTY; without even the implied warranty of
11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
12 # Library General Public License for more details.
13
14 # You should have received a copy of the GNU Library General Public
15 # License along with the GNU C Library; see the file COPYING.LIB.  If not,
16 # write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
17 # Boston, MA 02111-1307, USA.
18
19 # Makefile for installing locale data source files.
20
21 subdir := localedata
22
23 all: # Make this the default target; it will be defined in Rules.
24
25 # List with all available character set descriptions.
26 charmaps := $(filter-out $(addprefix charmaps/, CVS RCS %~), \
27                                      $(wildcard charmaps/[A-I]*) \
28                                      $(wildcard charmaps/[J-Z]*))
29
30 # List with all available character set descriptions.
31 locales := $(filter-out $(addprefix locales/, CVS RCS %~), \
32                                     $(wildcard locales/*))
33
34 # List of repertoire maps.
35 repertoiremaps := $(filter-out $(addprefix repertoiremaps/, CVS RCS %~), \
36                                            $(wildcard repertoiremaps/*))
37
38 test-srcs := collate-test xfrm-test tst-fmon tst-rpmatch
39 test-input := de_DE.ISO-8859-1 da_DK.ISO-8859-1 fr_CA,2.13.ISO-8859-1 \
40               hr_HR.ISO-8859-2 # once it is fixed: cs_CZ.ISO-8859-2
41 test-input-data = $(addsuffix .in, $(basename $(test-input)))
42 test-output := $(foreach s, .out .xout, \
43                          $(addsuffix $s, $(basename $(test-input))))
44 ld-test-names := test1 test2 test3 test4 test5
45 ld-test-srcs := $(addprefix tests/,$(addsuffix .cm,$(ld-test-names)) \
46                                    $(addsuffix .def,$(ld-test-names)))
47
48 generated := $(test-input) $(test-output)
49 generated-dirs := $(basename $(test-input)) en_US $(ld-test-names)
50
51 distribute := CHECKSUMS README SUPPORTED ChangeLog                      \
52               $(charmaps) $(locales) $(repertoiremaps)                  \
53               tst-rpmatch.sh tst-locale.sh tst-fmon.sh sort-test.sh     \
54               tst-fmon.data $(test-input-data) $(ld-test-srcs)
55
56 # Get $(inst_i18ndir) defined.
57 include ../Makeconfig
58
59 # Files to install.
60 install-others := $(addprefix $(inst_i18ndir)/, $(charmaps) $(locales) \
61                                                 $(repertoiremaps))
62
63 include ../Rules
64
65 # Install the source files in the appropriate directories.
66 $(inst_i18ndir)/charmaps/%: charmaps/% $(+force); $(do-install)
67 $(inst_i18ndir)/locales/%: locales/% $(+force); $(do-install)
68 $(inst_i18ndir)/repertoiremaps/%: repertoiremaps/% $(+force); $(do-install)
69
70
71 ifeq (no,$(cross-compiling))
72 ifeq (yes,$(build-shared))
73 .PHONY: do-collate-test do-tst-fmon do-tst-locale do-tst-rpmatch
74 tests: do-collate-test do-tst-fmon do-tst-locale do-tst-rpmatch
75 do-collate-test: sort-test.sh $(objpfx)collate-test $(objpfx)xfrm-test \
76                  $(test-input-data)
77         $(SHELL) -e $< $(common-objpfx) $(test-input)
78 do-tst-fmon: tst-fmon.sh $(objpfx)tst-fmon tst-fmon.data  do-collate-test
79         $(SHELL) -e $< $(common-objpfx) tst-fmon.data
80 do-tst-locale: tst-locale.sh $(ld-test-srcs)
81         $(SHELL) -e $< $(common-objpfx)
82 do-tst-rpmatch: tst-rpmatch.sh $(objpfx)tst-rpmatch do-tst-fmon
83         $(SHELL) -e $< $(common-objpfx)
84 endif
85 endif
86
87 # Sometimes the whole collection of locale files should be installed.
88 LOCALEDEF=$(common-objpfx)elf/ld.so --library-path $(rpath-link) $(common-objpfx)locale/localedef
89 install-locales:
90         while read locale charset; do \
91            case $$locale in \#*) continue;; esac; \
92            $(LOCALEDEF) -c -i locales/$$locale -f charmaps/$$charset \
93                         -u repertoiremaps/mnemonic.ds \
94                         $(inst_localedir)/$$locale; \
95         done < SUPPORTED