blob: aecb0dae9db3cfa352acd2c8b4b8c864fb1bc9c6 [file] [log] [blame]
lh9ed821d2023-04-07 01:36:19 -07001# Copyright (C) 1991-2015 Free Software Foundation, Inc.
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
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.
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
12# Lesser General Public License for more details.
13
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/>.
17
18#
19# Sub-makefile for misc portion of the library.
20#
21
22subdir := misc
23
24include ../Makeconfig
25
26headers := sys/uio.h bits/uio.h sys/ioctl.h bits/ioctls.h bits/ioctl-types.h \
27 sys/ptrace.h sys/file.h sys/dir.h sys/cdefs.h \
28 ar.h a.out.h libgen.h stab.h bits/stab.def sgtty.h \
29 ttyent.h paths.h sys/reboot.h \
30 sys/mman.h sys/param.h bits/param.h \
31 fstab.h mntent.h search.h err.h error.h \
32 sys/queue.h sysexits.h syscall.h sys/syscall.h sys/swap.h \
33 sys/select.h ustat.h sys/ustat.h bits/ustat.h sys/sysinfo.h \
34 regexp.h bits/select.h bits/mman.h sys/xattr.h \
35 syslog.h sys/syslog.h \
36 bits/syslog.h bits/syslog-ldbl.h bits/syslog-path.h bits/error.h \
37 bits/select2.h bits/hwcap.h sys/auxv.h
38
39routines := brk sbrk sstk ioctl \
40 readv writev preadv preadv64 pwritev pwritev64 \
41 setreuid setregid \
42 seteuid setegid \
43 getpagesize \
44 getdtsz \
45 gethostname sethostname getdomain setdomain \
46 select pselect \
47 acct chroot fsync sync fdatasync syncfs reboot \
48 gethostid sethostid \
49 revoke vhangup \
50 swapon swapoff mktemp mkstemp mkstemp64 mkdtemp \
51 mkostemp mkostemp64 mkstemps mkstemps64 mkostemps mkostemps64 \
52 ualarm usleep \
53 gtty stty \
54 ptrace \
55 fstab mntent mntent_r \
56 utimes lutimes futimes futimesat \
57 truncate ftruncate truncate64 ftruncate64 \
58 chflags fchflags \
59 insremque getttyent getusershell getpass ttyslot \
60 syslog syscall daemon \
61 mmap mmap64 munmap mprotect msync madvise mincore remap_file_pages\
62 mlock munlock mlockall munlockall \
63 efgcvt efgcvt_r qefgcvt qefgcvt_r \
64 hsearch hsearch_r tsearch lsearch \
65 err error ustat \
66 getsysstats dirname regexp \
67 getloadavg getclktck \
68 fgetxattr flistxattr fremovexattr fsetxattr getxattr \
69 listxattr lgetxattr llistxattr lremovexattr lsetxattr \
70 removexattr setxattr getauxval ifunc-impl-list
71
72generated += tst-error1.mtrace tst-error1-mem.out
73
74aux := init-misc
75install-lib := libg.a
76gpl2lgpl := error.c error.h
77
78tests := tst-dirname tst-tsearch tst-fdset tst-efgcvt tst-mntent tst-hsearch \
79 tst-error1 tst-pselect tst-insremque tst-mntent2 bug-hsearch1
80ifeq ($(run-built-tests),yes)
81tests-special += $(objpfx)tst-error1-mem.out
82endif
83
84CFLAGS-select.c = -fexceptions -fasynchronous-unwind-tables
85CFLAGS-tsearch.c = $(uses-callbacks)
86CFLAGS-lsearch.c = $(uses-callbacks)
87CFLAGS-pselect.c = -fexceptions
88CFLAGS-readv.c = -fexceptions -fasynchronous-unwind-tables
89CFLAGS-writev.c = -fexceptions -fasynchronous-unwind-tables
90CFLAGS-usleep.c = -fexceptions
91CFLAGS-syslog.c = -fexceptions
92CFLAGS-error.c = -fexceptions
93CFLAGS-getpass.c = -fexceptions
94CFLAGS-mkstemp.c = -fexceptions
95CFLAGS-mkstemp64.c = -fexceptions
96CFLAGS-getsysstats.c = -fexceptions
97CFLAGS-getusershell.c = -fexceptions
98CFLAGS-err.c = -fexceptions
99CFLAGS-tst-tsearch.c = $(stack-align-test-flags)
100
101include ../Rules
102
103$(objpfx)libg.a: $(dep-dummy-lib); $(make-dummy-lib)
104
105$(objpfx)tst-tsearch: $(libm)
106
107tst-error1-ENV = MALLOC_TRACE=$(objpfx)tst-error1.mtrace
108tst-error1-ARGS = $(objpfx)tst-error1.out
109$(objpfx)tst-error1-mem.out: $(objpfx)tst-error1.out
110 $(common-objpfx)malloc/mtrace $(objpfx)tst-error1.mtrace > $@; \
111 $(evaluate-test)