]>
Commit | Line | Data |
---|---|---|
2b778ceb | 1 | # Copyright (C) 1991-2021 Free Software Foundation, Inc. |
28f540f4 RM |
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. | |
28f540f4 RM |
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. |
28f540f4 | 13 | |
41bdb6e2 | 14 | # You should have received a copy of the GNU Lesser General Public |
59ba27a6 | 15 | # License along with the GNU C Library; if not, see |
5a82c748 | 16 | # <https://www.gnu.org/licenses/>. |
28f540f4 RM |
17 | |
18 | # | |
19 | # Sub-makefile for misc portion of the library. | |
20 | # | |
21 | ||
22 | subdir := misc | |
23 | ||
a5f891ac JM |
24 | include ../Makeconfig |
25 | ||
37f802f8 ZW |
26 | headers := sys/uio.h bits/uio-ext.h bits/uio_lim.h \ |
27 | sys/ioctl.h bits/ioctls.h bits/ioctl-types.h \ | |
072ebcef | 28 | sys/ptrace.h sys/file.h sys/dir.h sys/cdefs.h \ |
5107cf1d | 29 | ar.h a.out.h libgen.h stab.h bits/stab.def sgtty.h \ |
c6251f03 | 30 | ttyent.h paths.h sys/reboot.h \ |
e66a42f5 RM |
31 | sys/mman.h sys/param.h bits/param.h \ |
32 | fstab.h mntent.h search.h err.h error.h \ | |
503054c0 | 33 | sys/queue.h sysexits.h syscall.h sys/syscall.h sys/swap.h \ |
cf2478d5 | 34 | sys/select.h sys/sysinfo.h \ |
c6251f03 | 35 | regexp.h bits/select.h bits/mman.h sys/xattr.h \ |
0f289b2a | 36 | syslog.h sys/syslog.h \ |
a0f33f99 | 37 | bits/syslog.h bits/syslog-ldbl.h bits/syslog-path.h bits/error.h \ |
63eb8df8 | 38 | bits/select2.h bits/hwcap.h sys/auxv.h \ |
90188e7d | 39 | sys/sysmacros.h bits/sysmacros.h bits/types/struct_iovec.h \ |
706ad1e7 FW |
40 | bits/err-ldbl.h bits/error-ldbl.h \ |
41 | sys/single_threaded.h | |
28f540f4 RM |
42 | |
43 | routines := brk sbrk sstk ioctl \ | |
e109c612 | 44 | readv writev preadv preadv64 pwritev pwritev64 \ |
52bd9381 | 45 | preadv2 preadv64v2 pwritev2 pwritev64v2 \ |
28f540f4 RM |
46 | setreuid setregid \ |
47 | seteuid setegid \ | |
48 | getpagesize \ | |
49 | getdtsz \ | |
50 | gethostname sethostname getdomain setdomain \ | |
503054c0 | 51 | select pselect \ |
81a5726b | 52 | acct chroot fsync sync fdatasync syncfs reboot \ |
28f540f4 | 53 | gethostid sethostid \ |
069aa638 | 54 | revoke vhangup \ |
85adf316 | 55 | swapon swapoff mktemp mkstemp mkstemp64 mkdtemp \ |
3a83202d | 56 | mkostemp mkostemp64 mkstemps mkstemps64 mkostemps mkostemps64 \ |
28f540f4 RM |
57 | ualarm usleep \ |
58 | gtty stty \ | |
0d204b0a | 59 | ptrace \ |
845dcb57 | 60 | fstab mntent mntent_r \ |
26cec518 | 61 | utimes lutimes futimes futimesat \ |
9756dfe1 | 62 | truncate ftruncate truncate64 ftruncate64 \ |
28f540f4 RM |
63 | chflags fchflags \ |
64 | insremque getttyent getusershell getpass ttyslot \ | |
65 | syslog syscall daemon \ | |
3c531a87 | 66 | mmap mmap64 munmap mprotect msync madvise mincore remap_file_pages\ |
d81b986b | 67 | mlock munlock mlockall munlockall \ |
2064087b | 68 | efgcvt efgcvt_r qefgcvt qefgcvt_r \ |
9f447fb3 | 69 | hsearch hsearch_r tsearch lsearch \ |
845dcb57 | 70 | err error ustat \ |
54e9386d | 71 | getsysstats dirname regexp \ |
c0ad824e AJ |
72 | getloadavg getclktck \ |
73 | fgetxattr flistxattr fremovexattr fsetxattr getxattr \ | |
74 | listxattr lgetxattr llistxattr lremovexattr lsetxattr \ | |
5f7b841d | 75 | removexattr setxattr getauxval ifunc-impl-list makedev \ |
9fc813e1 | 76 | allocate_once fd_to_filename single_threaded unwind-link |
7cabd57c | 77 | |
5f7b841d FW |
78 | generated += tst-error1.mtrace tst-error1-mem.out \ |
79 | tst-allocate_once.mtrace tst-allocate_once-mem.out | |
10ffcd52 | 80 | |
bbed653c | 81 | aux := init-misc |
029c7b25 | 82 | install-lib := libg.a |
196980f5 | 83 | gpl2lgpl := error.c error.h |
28f540f4 | 84 | |
bd51ff5e | 85 | tests := tst-dirname tst-tsearch tst-fdset tst-mntent tst-hsearch \ |
b0e805fa | 86 | tst-error1 tst-pselect tst-insremque tst-mntent2 bug-hsearch1 \ |
4751bbe2 | 87 | tst-mntent-blank-corrupt tst-mntent-blank-passno bug18240 \ |
52bd9381 | 88 | tst-preadvwritev tst-preadvwritev64 tst-makedev tst-empty \ |
9771e6cb | 89 | tst-preadvwritev2 tst-preadvwritev64v2 tst-warn-wide \ |
9a1e7257 | 90 | tst-ldbl-warn tst-ldbl-error tst-dbl-efgcvt tst-ldbl-efgcvt \ |
82c395d9 FW |
91 | tst-mntent-autofs tst-syscalls tst-mntent-escape tst-select \ |
92 | tst-ioctl | |
7c3018f9 | 93 | |
088d3291 AZ |
94 | tests-time64 := \ |
95 | tst-select-time64 \ | |
82c395d9 FW |
96 | tst-pselect-time64 \ |
97 | tst-ioctl-time64 \ | |
98 | # tests-time64 | |
088d3291 | 99 | |
db9a8ad4 FW |
100 | # Tests which need libdl. |
101 | ifeq (yes,$(build-shared)) | |
102 | tests += tst-gethostid | |
103 | endif | |
104 | ||
5f7b841d | 105 | tests-internal := tst-atomic tst-atomic-long tst-allocate_once |
2908885c NA |
106 | tests-static := tst-empty |
107 | ||
fa185f0d FW |
108 | # Test for the internal, non-exported __fd_to_filename function. |
109 | tests-internal += tst-fd_to_filename | |
110 | tests-static += tst-fd_to_filename | |
111 | ||
03ac099f | 112 | ifeq ($(run-built-tests),yes) |
5f7b841d FW |
113 | tests-special += $(objpfx)tst-error1-mem.out \ |
114 | $(objpfx)tst-allocate_once-mem.out | |
10ffcd52 | 115 | endif |
1474b80f | 116 | |
36975e8e L |
117 | CFLAGS-select.c += -fexceptions -fasynchronous-unwind-tables |
118 | CFLAGS-tsearch.c += $(uses-callbacks) | |
119 | CFLAGS-lsearch.c += $(uses-callbacks) | |
120 | CFLAGS-pselect.c += -fexceptions | |
121 | CFLAGS-readv.c += -fexceptions -fasynchronous-unwind-tables | |
122 | CFLAGS-writev.c += -fexceptions -fasynchronous-unwind-tables | |
123 | CFLAGS-preadv.c += -fexceptions -fasynchronous-unwind-tables | |
124 | CFLAGS-preadv64.c += -fexceptions -fasynchronous-unwind-tables | |
125 | CFLAGS-pwritev.c += -fexceptions -fasynchronous-unwind-tables | |
126 | CFLAGS-pwritev64.c += -fexceptions -fasynchronous-unwind-tables | |
127 | CFLAGS-preadv2.c += -fexceptions -fasynchronous-unwind-tables | |
128 | CFLAGS-preadv64v2.c += -fexceptions -fasynchronous-unwind-tables | |
129 | CFLAGS-pwritev2.c += -fexceptions -fasynchronous-unwind-tables | |
130 | CFLAGS-pwritev64v2.c += -fexceptions -fasynchronous-unwind-tables | |
131 | CFLAGS-usleep.c += -fexceptions | |
132 | CFLAGS-syslog.c += -fexceptions | |
133 | CFLAGS-error.c += -fexceptions | |
134 | CFLAGS-getpass.c += -fexceptions | |
135 | CFLAGS-mkstemp.c += -fexceptions | |
136 | CFLAGS-mkstemp64.c += -fexceptions | |
137 | CFLAGS-getsysstats.c += -fexceptions | |
138 | CFLAGS-getusershell.c += -fexceptions | |
139 | CFLAGS-err.c += -fexceptions | |
140 | CFLAGS-tst-tsearch.c += $(stack-align-test-flags) | |
141 | CFLAGS-msync.c += -fexceptions -fasynchronous-unwind-tables | |
142 | CFLAGS-fdatasync.c += -fexceptions -fasynchronous-unwind-tables | |
143 | CFLAGS-fsync.c += -fexceptions -fasynchronous-unwind-tables | |
dff14448 | 144 | |
10c85e76 NA |
145 | # Called during static library initialization, so turn stack-protection |
146 | # off for non-shared builds. | |
147 | CFLAGS-sbrk.o = $(no-stack-protector) | |
148 | CFLAGS-sbrk.op = $(no-stack-protector) | |
149 | CFLAGS-brk.o = $(no-stack-protector) | |
150 | CFLAGS-brk.op = $(no-stack-protector) | |
151 | ||
28f540f4 RM |
152 | include ../Rules |
153 | ||
28f540f4 | 154 | $(objpfx)libg.a: $(dep-dummy-lib); $(make-dummy-lib) |
b236e99d | 155 | |
79520f4b | 156 | $(objpfx)tst-tsearch: $(libm) |
e64911d1 | 157 | |
2d2d9f2b SP |
158 | tst-error1-ENV = MALLOC_TRACE=$(objpfx)tst-error1.mtrace \ |
159 | LD_PRELOAD=$(common-objpfx)/malloc/libc_malloc_debug.so | |
10ffcd52 | 160 | tst-error1-ARGS = $(objpfx)tst-error1.out |
0b20a9e8 | 161 | $(objpfx)tst-error1-mem.out: $(objpfx)tst-error1.out |
f0881698 JM |
162 | $(common-objpfx)malloc/mtrace $(objpfx)tst-error1.mtrace > $@; \ |
163 | $(evaluate-test) | |
5f7b841d | 164 | |
2d2d9f2b SP |
165 | tst-allocate_once-ENV = MALLOC_TRACE=$(objpfx)tst-allocate_once.mtrace \ |
166 | LD_PRELOAD=$(common-objpfx)/malloc/libc_malloc_debug.so | |
5f7b841d FW |
167 | $(objpfx)tst-allocate_once-mem.out: $(objpfx)tst-allocate_once.out |
168 | $(common-objpfx)malloc/mtrace $(objpfx)tst-allocate_once.mtrace > $@; \ | |
169 | $(evaluate-test) | |
91cf411a | 170 | |
4c3df0eb AZ |
171 | $(objpfx)tst-select: $(librt) |
172 | $(objpfx)tst-select-time64: $(librt) | |
91cf411a AZ |
173 | $(objpfx)tst-pselect: $(librt) |
174 | $(objpfx)tst-pselect-time64: $(librt) |