linux ttyname and ttyname_r: do not return wrong results
[glibc.git] / misc / Makefile
blobed988c3967243ed614fd3cd1f675fa2d7177e71a
1 # Copyright (C) 1991-2017 Free Software Foundation, Inc.
2 # This file is part of the GNU C Library.
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.
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.
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/>.
19 # Sub-makefile for misc portion of the library.
22 subdir := misc
24 include ../Makeconfig
26 headers := 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 sys/sysmacros.h bits/sysmacros.h
40 routines := brk sbrk sstk ioctl \
41 readv writev preadv preadv64 pwritev pwritev64 \
42 setreuid setregid \
43 seteuid setegid \
44 getpagesize \
45 getdtsz \
46 gethostname sethostname getdomain setdomain \
47 select pselect \
48 acct chroot fsync sync fdatasync syncfs reboot \
49 gethostid sethostid \
50 revoke vhangup \
51 swapon swapoff mktemp mkstemp mkstemp64 mkdtemp \
52 mkostemp mkostemp64 mkstemps mkstemps64 mkostemps mkostemps64 \
53 ualarm usleep \
54 gtty stty \
55 ptrace \
56 fstab mntent mntent_r \
57 utimes lutimes futimes futimesat \
58 truncate ftruncate truncate64 ftruncate64 \
59 chflags fchflags \
60 insremque getttyent getusershell getpass ttyslot \
61 syslog syscall daemon \
62 mmap mmap64 munmap mprotect msync madvise mincore remap_file_pages\
63 mlock munlock mlockall munlockall \
64 efgcvt efgcvt_r qefgcvt qefgcvt_r \
65 hsearch hsearch_r tsearch lsearch \
66 err error ustat \
67 getsysstats dirname regexp \
68 getloadavg getclktck \
69 fgetxattr flistxattr fremovexattr fsetxattr getxattr \
70 listxattr lgetxattr llistxattr lremovexattr lsetxattr \
71 removexattr setxattr getauxval ifunc-impl-list makedev
73 generated += tst-error1.mtrace tst-error1-mem.out
75 aux := init-misc
76 install-lib := libg.a
77 gpl2lgpl := error.c error.h
79 tests := tst-dirname tst-tsearch tst-fdset tst-efgcvt tst-mntent tst-hsearch \
80 tst-error1 tst-pselect tst-insremque tst-mntent2 bug-hsearch1 \
81 tst-mntent-blank-corrupt tst-mntent-blank-passno bug18240 \
82 tst-preadvwritev tst-preadvwritev64 tst-makedev tst-empty \
83 tst-atomic tst-atomic-long
84 tests-static := tst-empty
86 ifeq ($(run-built-tests),yes)
87 tests-special += $(objpfx)tst-error1-mem.out
88 endif
90 CFLAGS-select.c = -fexceptions -fasynchronous-unwind-tables
91 CFLAGS-tsearch.c = $(uses-callbacks)
92 CFLAGS-lsearch.c = $(uses-callbacks)
93 CFLAGS-pselect.c = -fexceptions
94 CFLAGS-readv.c = -fexceptions -fasynchronous-unwind-tables
95 CFLAGS-writev.c = -fexceptions -fasynchronous-unwind-tables
96 CFLAGS-preadv.c = -fexceptions -fasynchronous-unwind-tables
97 CFLAGS-preadv64.c = -fexceptions -fasynchronous-unwind-tables
98 CFLAGS-pwritev.c = -fexceptions -fasynchronous-unwind-tables
99 CFLAGS-pwritev64.c = -fexceptions -fasynchronous-unwind-tables
100 CFLAGS-usleep.c = -fexceptions
101 CFLAGS-syslog.c = -fexceptions
102 CFLAGS-error.c = -fexceptions
103 CFLAGS-getpass.c = -fexceptions
104 CFLAGS-mkstemp.c = -fexceptions
105 CFLAGS-mkstemp64.c = -fexceptions
106 CFLAGS-getsysstats.c = -fexceptions
107 CFLAGS-getusershell.c = -fexceptions
108 CFLAGS-err.c = -fexceptions
109 CFLAGS-tst-tsearch.c = $(stack-align-test-flags)
111 # Called during static library initialization, so turn stack-protection
112 # off for non-shared builds.
113 CFLAGS-sbrk.o = $(no-stack-protector)
114 CFLAGS-sbrk.op = $(no-stack-protector)
115 CFLAGS-brk.o = $(no-stack-protector)
116 CFLAGS-brk.op = $(no-stack-protector)
118 include ../Rules
120 $(objpfx)libg.a: $(dep-dummy-lib); $(make-dummy-lib)
122 $(objpfx)tst-tsearch: $(libm)
124 tst-error1-ENV = MALLOC_TRACE=$(objpfx)tst-error1.mtrace
125 tst-error1-ARGS = $(objpfx)tst-error1.out
126 $(objpfx)tst-error1-mem.out: $(objpfx)tst-error1.out
127 $(common-objpfx)malloc/mtrace $(objpfx)tst-error1.mtrace > $@; \
128 $(evaluate-test)