]>
Commit | Line | Data |
---|---|---|
1b14353e | 1 | # Copyright (C) 1997,1998,2000-2004,2007,2009 Free Software Foundation, Inc. |
6973fc01 UD |
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 | |
41bdb6e2 AJ |
5 | # modify it under the terms of the GNU Lesser General Public |
6 | # License as published by the Free Software Foundation; either | |
7 | # version 2.1 of the License, or (at your option) any later version. | |
6973fc01 UD |
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 | |
41bdb6e2 | 12 | # Lesser General Public License for more details. |
6973fc01 | 13 | |
41bdb6e2 AJ |
14 | # You should have received a copy of the GNU Lesser General Public |
15 | # License along with the GNU C Library; if not, write to the Free | |
16 | # Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA | |
17 | # 02111-1307 USA. | |
6973fc01 UD |
18 | |
19 | # | |
20 | # Makefile for iconv. | |
21 | # | |
22 | subdir := iconv | |
23 | ||
8619129f UD |
24 | include ../Makeconfig |
25 | ||
6973fc01 UD |
26 | headers = iconv.h gconv.h |
27 | routines = iconv_open iconv iconv_close \ | |
28 | gconv_open gconv gconv_close gconv_db gconv_conf \ | |
6b98979f | 29 | gconv_builtin gconv_simple gconv_trans gconv_cache |
8619129f UD |
30 | ifeq ($(elf),yes) |
31 | routines += gconv_dl | |
32 | else | |
33 | CFLAGS-gconv_db.c = -DSTATIC_GCONV | |
6b98979f | 34 | CFLAGS-gconv_cache.c = -DSTATIC_GCONV |
c66dbe00 | 35 | CFLAGS-gconv_simple.c = -DSTATIC_GCONV |
8619129f UD |
36 | endif |
37 | ||
dd9423a6 | 38 | vpath %.c ../locale/programs ../intl |
93693c4d UD |
39 | |
40 | iconv_prog-modules = iconv_charmap charmap charmap-dir linereader \ | |
41 | dummy-repertoire simple-hash xstrdup xmalloc | |
dd9423a6 | 42 | iconvconfig-modules = strtab xmalloc hash-string |
7dbadfc5 | 43 | extra-objs = $(iconv_prog-modules:=.o) $(iconvconfig-modules:=.o) |
93693c4d UD |
44 | CFLAGS-iconv_prog.c = -I../locale/programs |
45 | CFLAGS-iconv_charmap.c = -I../locale/programs | |
46 | CFLAGS-dummy-repertoire.c = -I../locale/programs | |
47 | CFLAGS-charmap.c = -DCHARMAP_PATH='"$(i18ndir)/charmaps"' \ | |
194c5f8d | 48 | -DDEFAULT_CHARMAP=null_pointer -DNEED_NULL_POINTER |
47e8b443 | 49 | CFLAGS-linereader.c = -DNO_TRANSLITERATION |
d648d845 | 50 | CFLAGS-simple-hash.c = -I../locale |
93693c4d | 51 | |
1b14353e | 52 | tests = tst-iconv1 tst-iconv2 tst-iconv3 tst-iconv4 tst-iconv5 |
c63b67bd | 53 | |
47599985 | 54 | distribute = gconv_builtin.h gconv_int.h loop.c skeleton.c iconv_prog.h \ |
7748f4b5 UD |
55 | iconv_charmap.c dummy-repertoire.c gconv_charset.h strtab.c \ |
56 | iconvconfig.h | |
6973fc01 | 57 | |
6b98979f | 58 | others = iconv_prog iconvconfig |
ff40792e | 59 | install-others-programs = $(inst_bindir)/iconv |
9fcddc2b | 60 | install-sbin = iconvconfig |
fb5663ca | 61 | |
8e294940 | 62 | CFLAGS-gconv_cache.c += -DGCONV_DIR='"$(gconvdir)"' |
6973fc01 | 63 | CFLAGS-gconv_conf.c = -DGCONV_PATH='"$(gconvdir)"' |
6b98979f | 64 | CFLAGS-iconvconfig.c = -DGCONV_PATH='"$(gconvdir)"' -DGCONV_DIR='"$(gconvdir)"' |
6973fc01 | 65 | |
3ba06713 | 66 | CPPFLAGS-iconv_prog = -DNOT_IN_libc |
51d46f73 UD |
67 | CPPFLAGS-iconv_charmap = -DNOT_IN_libc |
68 | CPPFLAGS-iconvconfig = -DNOT_IN_libc | |
3ba06713 | 69 | CPPFLAGS-linereader = -DNOT_IN_libc |
51d46f73 UD |
70 | CPPFLAGS-strtab = -DNOT_IN_libc |
71 | CPPFLAGS-charmap = -DNOT_IN_libc | |
3ba06713 | 72 | CPPFLAGS-charmap-dir = -DNOT_IN_libc |
51d46f73 | 73 | |
6973fc01 | 74 | include ../Rules |
fb5663ca | 75 | |
73237de3 | 76 | $(inst_bindir)/iconv: $(objpfx)iconv_prog $(+force) |
9eb2730e | 77 | $(do-install-program) |
93693c4d UD |
78 | |
79 | $(objpfx)iconv_prog: $(iconv_prog-modules:%=$(objpfx)%.o) | |
6b98979f | 80 | $(objpfx)iconvconfig: $(iconvconfig-modules:%=$(objpfx)%.o) |
ff06ca8d RM |
81 | |
82 | ifneq ($(cross-compiling),yes) | |
83 | xtests: test-iconvconfig | |
84 | endif | |
85 | ||
86 | .PHONY: test-iconvconfig | |
87 | test-iconvconfig: /dev/null $(objpfx)iconvconfig | |
88 | tmp=$(objpfx)gconv-modules.cache.$$$$; \ | |
89 | rm -f $$tmp; \ | |
90 | $(make-test-out) --output=$$tmp --nostdlib $(inst_gconvdir) && \ | |
91 | cmp $$tmp $(inst_gconvdir)/gconv-modules.cache && \ | |
92 | rm -f $$tmp |