1 # Copyright (C) 1991-2007, 2009, 2011, 2012 Free Software Foundation, Inc.
2 # This file is part of the GNU C Library.
4 # The GNU C Library is free software; you can redistribute it and/or
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.
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 # Lesser General Public License for more details.
14 # You should have received a copy of the GNU Lesser General Public
15 # License along with the GNU C Library; if not, see
16 # <http://www.gnu.org/licenses/>.
19 # Sub-makefile for inet portion of the library.
23 headers := netinet/ether.h netinet/in.h netinet/in_systm.h \
24 netinet/if_ether.h netinet/igmp.h \
25 netinet/tcp.h netinet/ip.h $(wildcard arpa/*.h protocols/*.h) \
26 aliases.h ifaddrs.h netinet/ip6.h netinet/icmp6.h bits/in.h
28 routines := htonl htons \
29 inet_lnaof inet_mkadr \
30 inet_netof inet_ntoa inet_net herrno herrno-loc \
31 gethstbyad gethstbyad_r gethstbynm gethstbynm2 gethstbynm2_r \
32 gethstbynm_r gethstent gethstent_r \
33 getnetbyad getnetbyad_r getnetbynm getnetent getnetent_r \
35 getproto getproto_r getprtent getprtent_r getprtname getprtname_r \
36 getsrvbynm getsrvbynm_r getsrvbypt getsrvbypt_r getservent \
38 getrpcent getrpcbyname getrpcbynumber \
39 getrpcent_r getrpcbyname_r getrpcbynumber_r \
40 ether_aton ether_aton_r ether_hton ether_line \
41 ether_ntoa ether_ntoa_r ether_ntoh \
42 rcmd rexec ruserpass \
43 getnetgrent_r getnetgrent \
44 getaliasent_r getaliasent getaliasname getaliasname_r \
45 in6_addr getnameinfo if_index ifaddrs inet6_option \
46 getipv4sourcefilter setipv4sourcefilter \
47 getsourcefilter setsourcefilter inet6_opt inet6_rth
49 aux := check_pf check_native ifreq
51 tests := htontest test_ifindex tst-ntoa tst-ether_aton tst-network \
52 tst-gethnm test-ifaddrs bug-if1 test-inet6_opt tst-ether_line \
53 tst-getni1 tst-getni2 tst-inet6_rth tst-checks
57 ifeq ($(have-thread-library),yes)
59 CFLAGS-gethstbyad_r.c = -DUSE_NSCD=1 -fexceptions
60 CFLAGS-gethstbyad.c = -fexceptions
61 CFLAGS-gethstbynm_r.c = -DUSE_NSCD=1 -fexceptions
62 CFLAGS-gethstbynm.c = -fexceptions
63 CFLAGS-gethstbynm2_r.c = -DUSE_NSCD=1 -fexceptions
64 CFLAGS-gethstbynm2.c = -fexceptions
65 CFLAGS-gethstent_r.c = -fexceptions
66 CFLAGS-gethstent.c = -fexceptions
67 CFLAGS-rcmd.c = -fexceptions
68 CFLAGS-getnetbynm_r.c = -fexceptions
69 CFLAGS-getnetbynm.c = -fexceptions
70 CFLAGS-getnetbyad_r.c = -fexceptions
71 CFLAGS-getnetbyad.c = -fexceptions
72 CFLAGS-getnetent_r.c = -fexceptions
73 CFLAGS-getnetent.c = -fexceptions
74 CFLAGS-getaliasent_r.c = -fexceptions
75 CFLAGS-getaliasent.c = -fexceptions
76 CFLAGS-getrpcent_r.c = -fexceptions
77 CFLAGS-getrpcent.c = -fexceptions
78 CFLAGS-getservent_r.c = -fexceptions
79 CFLAGS-getservent.c = -fexceptions
80 CFLAGS-getsrvbynm_r.c = -DUSE_NSCD=1
81 CFLAGS-getsrvbypt_r.c = -DUSE_NSCD=1
82 CFLAGS-getprtent_r.c = -fexceptions
83 CFLAGS-getprtent.c = -fexceptions
84 CFLAGS-either_ntoh.c = -fexceptions
85 CFLAGS-either_hton.c = -fexceptions
86 CFLAGS-getnetgrent.c = -fexceptions
87 CFLAGS-getnetgrent_r.c = -fexceptions
91 ifeq ($(build-static-nss),yes)
92 CFLAGS += -DSTATIC_NSS
95 ifeq (yes,$(build-static-nss))
96 otherlibs += $(nssobjdir)/libnss_files.a $(resolvobjdir)/libnss_dns.a \
97 $(resolvobjdir)/libresolv.a