]>
Commit | Line | Data |
---|---|---|
04277e02 | 1 | # Copyright (C) 1991-2019 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 PE |
15 | # License along with the GNU C Library; if not, see |
16 | # <http://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 GG |
39 | sys/sysmacros.h bits/sysmacros.h bits/types/struct_iovec.h \ |
40 | bits/err-ldbl.h | |
28f540f4 RM |
41 | |
42 | routines := brk sbrk sstk ioctl \ | |
e109c612 | 43 | readv writev preadv preadv64 pwritev pwritev64 \ |
52bd9381 | 44 | preadv2 preadv64v2 pwritev2 pwritev64v2 \ |
28f540f4 RM |
45 | setreuid setregid \ |
46 | seteuid setegid \ | |
47 | getpagesize \ | |
48 | getdtsz \ | |
49 | gethostname sethostname getdomain setdomain \ | |
503054c0 | 50 | select pselect \ |
81a5726b | 51 | acct chroot fsync sync fdatasync syncfs reboot \ |
28f540f4 | 52 | gethostid sethostid \ |
069aa638 | 53 | revoke vhangup \ |
85adf316 | 54 | swapon swapoff mktemp mkstemp mkstemp64 mkdtemp \ |
3a83202d | 55 | mkostemp mkostemp64 mkstemps mkstemps64 mkostemps mkostemps64 \ |
28f540f4 RM |
56 | ualarm usleep \ |
57 | gtty stty \ | |
0d204b0a | 58 | ptrace \ |
845dcb57 | 59 | fstab mntent mntent_r \ |
26cec518 | 60 | utimes lutimes futimes futimesat \ |
9756dfe1 | 61 | truncate ftruncate truncate64 ftruncate64 \ |
28f540f4 RM |
62 | chflags fchflags \ |
63 | insremque getttyent getusershell getpass ttyslot \ | |
64 | syslog syscall daemon \ | |
3c531a87 | 65 | mmap mmap64 munmap mprotect msync madvise mincore remap_file_pages\ |
d81b986b | 66 | mlock munlock mlockall munlockall \ |
2064087b | 67 | efgcvt efgcvt_r qefgcvt qefgcvt_r \ |
9f447fb3 | 68 | hsearch hsearch_r tsearch lsearch \ |
845dcb57 | 69 | err error ustat \ |
54e9386d | 70 | getsysstats dirname regexp \ |
c0ad824e AJ |
71 | getloadavg getclktck \ |
72 | fgetxattr flistxattr fremovexattr fsetxattr getxattr \ | |
73 | listxattr lgetxattr llistxattr lremovexattr lsetxattr \ | |
5f7b841d FW |
74 | removexattr setxattr getauxval ifunc-impl-list makedev \ |
75 | allocate_once | |
7cabd57c | 76 | |
5f7b841d FW |
77 | generated += tst-error1.mtrace tst-error1-mem.out \ |
78 | tst-allocate_once.mtrace tst-allocate_once-mem.out | |
10ffcd52 | 79 | |
bbed653c | 80 | aux := init-misc |
029c7b25 | 81 | install-lib := libg.a |
196980f5 | 82 | gpl2lgpl := error.c error.h |
28f540f4 | 83 | |
bd51ff5e | 84 | tests := tst-dirname tst-tsearch tst-fdset tst-mntent tst-hsearch \ |
b0e805fa | 85 | tst-error1 tst-pselect tst-insremque tst-mntent2 bug-hsearch1 \ |
4751bbe2 | 86 | tst-mntent-blank-corrupt tst-mntent-blank-passno bug18240 \ |
52bd9381 | 87 | tst-preadvwritev tst-preadvwritev64 tst-makedev tst-empty \ |
9771e6cb | 88 | tst-preadvwritev2 tst-preadvwritev64v2 tst-warn-wide \ |
bd51ff5e | 89 | tst-ldbl-warn tst-ldbl-error tst-dbl-efgcvt tst-ldbl-efgcvt |
7c3018f9 | 90 | |
db9a8ad4 FW |
91 | # Tests which need libdl. |
92 | ifeq (yes,$(build-shared)) | |
93 | tests += tst-gethostid | |
94 | endif | |
95 | ||
5f7b841d | 96 | tests-internal := tst-atomic tst-atomic-long tst-allocate_once |
2908885c NA |
97 | tests-static := tst-empty |
98 | ||
03ac099f | 99 | ifeq ($(run-built-tests),yes) |
5f7b841d FW |
100 | tests-special += $(objpfx)tst-error1-mem.out \ |
101 | $(objpfx)tst-allocate_once-mem.out | |
10ffcd52 | 102 | endif |
1474b80f | 103 | |
36975e8e L |
104 | CFLAGS-select.c += -fexceptions -fasynchronous-unwind-tables |
105 | CFLAGS-tsearch.c += $(uses-callbacks) | |
106 | CFLAGS-lsearch.c += $(uses-callbacks) | |
107 | CFLAGS-pselect.c += -fexceptions | |
108 | CFLAGS-readv.c += -fexceptions -fasynchronous-unwind-tables | |
109 | CFLAGS-writev.c += -fexceptions -fasynchronous-unwind-tables | |
110 | CFLAGS-preadv.c += -fexceptions -fasynchronous-unwind-tables | |
111 | CFLAGS-preadv64.c += -fexceptions -fasynchronous-unwind-tables | |
112 | CFLAGS-pwritev.c += -fexceptions -fasynchronous-unwind-tables | |
113 | CFLAGS-pwritev64.c += -fexceptions -fasynchronous-unwind-tables | |
114 | CFLAGS-preadv2.c += -fexceptions -fasynchronous-unwind-tables | |
115 | CFLAGS-preadv64v2.c += -fexceptions -fasynchronous-unwind-tables | |
116 | CFLAGS-pwritev2.c += -fexceptions -fasynchronous-unwind-tables | |
117 | CFLAGS-pwritev64v2.c += -fexceptions -fasynchronous-unwind-tables | |
118 | CFLAGS-usleep.c += -fexceptions | |
119 | CFLAGS-syslog.c += -fexceptions | |
120 | CFLAGS-error.c += -fexceptions | |
121 | CFLAGS-getpass.c += -fexceptions | |
122 | CFLAGS-mkstemp.c += -fexceptions | |
123 | CFLAGS-mkstemp64.c += -fexceptions | |
124 | CFLAGS-getsysstats.c += -fexceptions | |
125 | CFLAGS-getusershell.c += -fexceptions | |
126 | CFLAGS-err.c += -fexceptions | |
127 | CFLAGS-tst-tsearch.c += $(stack-align-test-flags) | |
128 | CFLAGS-msync.c += -fexceptions -fasynchronous-unwind-tables | |
129 | CFLAGS-fdatasync.c += -fexceptions -fasynchronous-unwind-tables | |
130 | CFLAGS-fsync.c += -fexceptions -fasynchronous-unwind-tables | |
dff14448 | 131 | |
10c85e76 NA |
132 | # Called during static library initialization, so turn stack-protection |
133 | # off for non-shared builds. | |
134 | CFLAGS-sbrk.o = $(no-stack-protector) | |
135 | CFLAGS-sbrk.op = $(no-stack-protector) | |
136 | CFLAGS-brk.o = $(no-stack-protector) | |
137 | CFLAGS-brk.op = $(no-stack-protector) | |
138 | ||
28f540f4 RM |
139 | include ../Rules |
140 | ||
28f540f4 | 141 | $(objpfx)libg.a: $(dep-dummy-lib); $(make-dummy-lib) |
b236e99d | 142 | |
79520f4b | 143 | $(objpfx)tst-tsearch: $(libm) |
e64911d1 | 144 | |
10ffcd52 UD |
145 | tst-error1-ENV = MALLOC_TRACE=$(objpfx)tst-error1.mtrace |
146 | tst-error1-ARGS = $(objpfx)tst-error1.out | |
0b20a9e8 | 147 | $(objpfx)tst-error1-mem.out: $(objpfx)tst-error1.out |
f0881698 JM |
148 | $(common-objpfx)malloc/mtrace $(objpfx)tst-error1.mtrace > $@; \ |
149 | $(evaluate-test) | |
5f7b841d FW |
150 | |
151 | tst-allocate_once-ENV = MALLOC_TRACE=$(objpfx)tst-allocate_once.mtrace | |
152 | $(objpfx)tst-allocate_once-mem.out: $(objpfx)tst-allocate_once.out | |
153 | $(common-objpfx)malloc/mtrace $(objpfx)tst-allocate_once.mtrace > $@; \ | |
154 | $(evaluate-test) | |
db9a8ad4 FW |
155 | |
156 | $(objpfx)tst-gethostid: $(libdl) |