| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149 |
- # Copyright (C) 1991-2026 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
- # <https://www.gnu.org/licenses/>.
- #
- # Sub-makefile for inet portion of the library.
- #
- subdir := inet
- include ../Makeconfig
- headers := \
- $(wildcard arpa/*.h protocols/*.h) \
- bits/in.h \
- bits/inet-fortified-decl.h \
- bits/inet-fortified.h \
- ifaddrs.h \
- netinet/ether.h \
- netinet/icmp6.h \
- netinet/if_ether.h \
- netinet/igmp.h \
- netinet/in.h \
- netinet/in_systm.h \
- netinet/ip.h \
- netinet/ip6.h \
- netinet/tcp.h \
- rpc/netdb.h \
- # headers
- routines := \
- bindresvport \
- deadline \
- ether_aton \
- ether_aton_r \
- ether_line \
- ether_ntoa \
- ether_ntoa_r \
- getipv4sourcefilter \
- getsourcefilter \
- herrno \
- herrno-loc \
- htonl \
- htons \
- idna \
- idna_name_classify \
- if_index \
- ifaddrs \
- in6_addr \
- inet6_opt \
- inet6_option \
- inet6_rth \
- inet6_scopeid_pton \
- inet_lnaof \
- inet_mkadr \
- inet_net \
- inet_netof \
- inet_ntoa \
- rcmd \
- rexec \
- ruserpass \
- setipv4sourcefilter \
- setsourcefilter \
- # routines
- install-others = $(inst_sysconfdir)/rpc
- aux := check_pf check_native ifreq
- tests := \
- bug-if1 \
- htontest \
- test-hnto-types \
- test-ifaddrs \
- test-inet6_opt \
- test_ifindex \
- tst-checks \
- tst-checks-posix \
- tst-ether_aton \
- tst-ether_line \
- tst-getni1 \
- tst-getni2 \
- tst-if_index-long \
- tst-if_nameindex \
- tst-inet6_rth \
- tst-network \
- tst-ntoa \
- tst-sockaddr \
- # tests
- # tst-deadline must be linked statically so that we can access
- # internal functions.
- tests-static += tst-deadline
- tests-internal += tst-deadline
- # tst-idna_name_classify must be linked statically because it tests
- # internal functionality.
- tests-static += tst-idna_name_classify
- tests-internal += tst-idna_name_classify
- # tst-inet6_scopeid_pton also needs internal functions but does not
- # need to be linked statically.
- tests-internal += tst-inet6_scopeid_pton
- include ../Rules
- LOCALES := en_US.UTF-8 en_US.ISO-8859-1
- include ../gen-locales.mk
- ifeq ($(have-thread-library),yes)
- CFLAGS-rcmd.c += -fexceptions
- CFLAGS-either_ntoh.c += -fexceptions
- CFLAGS-either_hton.c += -fexceptions
- CFLAGS-tst-checks-posix.c += -std=c99
- CFLAGS-tst-sockaddr.c += -fno-strict-aliasing
- endif
- # Install the rpc database file.
- $(inst_sysconfdir)/rpc: etc.rpc $(+force)
- $(do-install)
- ifeq ($(build-static-nss),yes)
- CFLAGS += -DSTATIC_NSS
- endif
- ifeq ($(have-test-clang),yes)
- CFLAGS-tst-deadline.c += -Wno-ignored-attributes
- endif
- # The test uses dlopen indirectly and would otherwise load system
- # objects.
- tst-idna_name_classify-ENV = \
- LD_LIBRARY_PATH=$(ld-library-path):$(common-objpfx):$(common-objpfx)elf
- $(objpfx)tst-idna_name_classify.out: $(gen-locales)
|