blob: f63c7e25bad22ecd420a28fc4867ac41af7fd56a [file] [log] [blame]
# Copyright (C) 1991-2018 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
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
# The GNU C Library 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
# Lesser General Public License for more details.
# You should have received a copy of the GNU Lesser General Public
# License along with the GNU C Library; if not, see
# <http://www.gnu.org/licenses/>.
#
# Sub-makefile for inet portion of the library.
#
subdir := inet
include ../Makeconfig
headers := netinet/ether.h netinet/in.h netinet/in_systm.h \
netinet/if_ether.h netinet/igmp.h \
netinet/tcp.h netinet/ip.h $(wildcard arpa/*.h protocols/*.h) \
aliases.h ifaddrs.h netinet/ip6.h netinet/icmp6.h bits/in.h
routines := htonl htons \
inet_lnaof inet_mkadr \
inet_netof inet_ntoa inet_net herrno herrno-loc \
gethstbyad gethstbyad_r gethstbynm gethstbynm2 gethstbynm2_r \
gethstbynm_r gethstent gethstent_r \
getnetbyad getnetbyad_r getnetbynm getnetent getnetent_r \
getnetbynm_r \
getproto getproto_r getprtent getprtent_r getprtname getprtname_r \
getsrvbynm getsrvbynm_r getsrvbypt getsrvbypt_r getservent \
getservent_r \
ether_aton ether_aton_r ether_hton ether_line \
ether_ntoa ether_ntoa_r ether_ntoh \
rcmd rexec ruserpass \
getnetgrent_r getnetgrent \
getaliasent_r getaliasent getaliasname getaliasname_r \
in6_addr getnameinfo if_index ifaddrs inet6_option \
getipv4sourcefilter setipv4sourcefilter \
getsourcefilter setsourcefilter inet6_opt inet6_rth \
inet6_scopeid_pton deadline
aux := check_pf check_native ifreq
tests := htontest test_ifindex tst-ntoa tst-ether_aton tst-network \
tst-gethnm test-ifaddrs bug-if1 test-inet6_opt tst-ether_line \
tst-getni1 tst-getni2 tst-inet6_rth tst-checks tst-checks-posix \
tst-sockaddr test-hnto-types
# tst-deadline must be linked statically so that we can access
# internal functions.
tests-static += tst-deadline
tests-static-internal := tst-deadline
# tst-inet6_scopeid_pton also needs internal functions but does not
# need to be linked statically.
tests-internal := tst-inet6_scopeid_pton
include ../Rules
ifeq ($(have-thread-library),yes)
CFLAGS-gethstbyad_r.c += -fexceptions
CFLAGS-gethstbyad.c += -fexceptions
CFLAGS-gethstbynm_r.c += -fexceptions
CFLAGS-gethstbynm.c += -fexceptions
CFLAGS-gethstbynm2_r.c += -fexceptions
CFLAGS-gethstbynm2.c += -fexceptions
CFLAGS-gethstent_r.c += -fexceptions
CFLAGS-gethstent.c += -fexceptions
CFLAGS-rcmd.c += -fexceptions
CFLAGS-getnetbynm_r.c += -fexceptions
CFLAGS-getnetbynm.c += -fexceptions
CFLAGS-getnetbyad_r.c += -fexceptions
CFLAGS-getnetbyad.c += -fexceptions
CFLAGS-getnetent_r.c += -fexceptions
CFLAGS-getnetent.c += -fexceptions
CFLAGS-getaliasent_r.c += -fexceptions
CFLAGS-getaliasent.c += -fexceptions
CFLAGS-getrpcent_r.c += -fexceptions
CFLAGS-getrpcent.c += -fexceptions
CFLAGS-getservent_r.c += -fexceptions
CFLAGS-getservent.c += -fexceptions
CFLAGS-getprtent_r.c += -fexceptions
CFLAGS-getprtent.c += -fexceptions
CFLAGS-either_ntoh.c += -fexceptions
CFLAGS-either_hton.c += -fexceptions
CFLAGS-getnetgrent.c += -fexceptions
CFLAGS-getnetgrent_r.c += -fexceptions
CFLAGS-tst-checks-posix.c += -std=c99
CFLAGS-tst-sockaddr.c += -fno-strict-aliasing
endif
ifeq ($(build-static-nss),yes)
CFLAGS += -DSTATIC_NSS
endif