]> git.ipfire.org Git - thirdparty/glibc.git/blobdiff - misc/Makefile
iconv, localedef: avoid floating point rounding differences [BZ #24372]
[thirdparty/glibc.git] / misc / Makefile
index 9a2db1925346816e64e573140a94fa50c488ebc8..032f28fc38e5a4e1ac0b37e4de943b8e6f733931 100644 (file)
@@ -1,4 +1,4 @@
-# Copyright (C) 1991-2002, 2003 Free Software Foundation, Inc.
+# Copyright (C) 1991-2019 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
@@ -12,9 +12,8 @@
 # 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, write to the Free
-# Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-# 02111-1307 USA.
+# License along with the GNU C Library; if not, see
+# <http://www.gnu.org/licenses/>.
 
 #
 #      Sub-makefile for misc portion of the library.
 
 subdir := misc
 
-headers        := sys/uio.h bits/uio.h sys/ioctl.h bits/ioctls.h bits/ioctl-types.h \
+include ../Makeconfig
+
+headers        := sys/uio.h bits/uio-ext.h bits/uio_lim.h \
+          sys/ioctl.h bits/ioctls.h bits/ioctl-types.h \
           sys/ptrace.h sys/file.h sys/dir.h sys/cdefs.h \
           ar.h a.out.h libgen.h stab.h bits/stab.def sgtty.h \
-          ttyent.h syslog.h sys/syslog.h paths.h sys/reboot.h \
-          sys/mman.h sys/param.h fstab.h mntent.h search.h err.h error.h \
+          ttyent.h paths.h sys/reboot.h \
+          sys/mman.h sys/param.h bits/param.h \
+          fstab.h mntent.h search.h err.h error.h \
           sys/queue.h sysexits.h syscall.h sys/syscall.h sys/swap.h \
-          sys/select.h ustat.h sys/ustat.h bits/ustat.h sys/sysinfo.h \
-          regexp.h bits/select.h bits/mman.h sys/xattr.h
+          sys/select.h sys/sysinfo.h \
+          regexp.h bits/select.h bits/mman.h sys/xattr.h \
+          syslog.h sys/syslog.h \
+          bits/syslog.h bits/syslog-ldbl.h bits/syslog-path.h bits/error.h \
+          bits/select2.h bits/hwcap.h sys/auxv.h \
+          sys/sysmacros.h bits/sysmacros.h bits/types/struct_iovec.h \
+          bits/err-ldbl.h bits/error-ldbl.h
 
 routines := brk sbrk sstk ioctl \
-           readv writev \
+           readv writev preadv preadv64 pwritev pwritev64 \
+           preadv2 preadv64v2 pwritev2 pwritev64v2 \
            setreuid setregid \
            seteuid setegid \
            getpagesize \
            getdtsz \
            gethostname sethostname getdomain setdomain \
            select pselect \
-           acct chroot fsync sync fdatasync reboot \
+           acct chroot fsync sync fdatasync syncfs reboot \
            gethostid sethostid \
            revoke vhangup \
            swapon swapoff mktemp mkstemp mkstemp64 mkdtemp \
+           mkostemp mkostemp64 mkstemps mkstemps64 mkostemps mkostemps64 \
            ualarm usleep \
            gtty stty \
            ptrace \
            fstab mntent mntent_r \
-           utimes lutimes futimes \
+           utimes lutimes futimes futimesat \
            truncate ftruncate truncate64 ftruncate64 \
            chflags fchflags \
            insremque getttyent getusershell getpass ttyslot \
@@ -61,34 +71,86 @@ routines := brk sbrk sstk ioctl \
            getloadavg getclktck \
            fgetxattr flistxattr fremovexattr fsetxattr getxattr \
            listxattr lgetxattr llistxattr lremovexattr lsetxattr \
-           removexattr setxattr
+           removexattr setxattr getauxval ifunc-impl-list makedev \
+           allocate_once
 
-distribute := device-nrs.h
-
-include ../Makeconfig
+generated += tst-error1.mtrace tst-error1-mem.out \
+  tst-allocate_once.mtrace tst-allocate_once-mem.out
 
 aux := init-misc
-ifeq ($(build-static),yes)
-install-lib := libbsd-compat.a libg.a
-endif
+install-lib := libg.a
 gpl2lgpl := error.c error.h
 
-tests := tst-dirname tst-tsearch tst-fdset tst-efgcvt tst-mntent tst-hsearch
+tests := tst-dirname tst-tsearch tst-fdset tst-mntent tst-hsearch \
+        tst-error1 tst-pselect tst-insremque tst-mntent2 bug-hsearch1 \
+        tst-mntent-blank-corrupt tst-mntent-blank-passno bug18240 \
+        tst-preadvwritev tst-preadvwritev64 tst-makedev tst-empty \
+        tst-preadvwritev2 tst-preadvwritev64v2 tst-warn-wide \
+        tst-ldbl-warn tst-ldbl-error tst-dbl-efgcvt tst-ldbl-efgcvt
+
+# Tests which need libdl.
+ifeq (yes,$(build-shared))
+tests += tst-gethostid
+endif
+
+tests-internal := tst-atomic tst-atomic-long tst-allocate_once
+tests-static := tst-empty
+
+ifeq ($(run-built-tests),yes)
+tests-special += $(objpfx)tst-error1-mem.out \
+  $(objpfx)tst-allocate_once-mem.out
+endif
 
-CFLAGS-tsearch.c = $(exceptions)
-CFLAGS-lsearch.c = $(exceptions)
+CFLAGS-select.c += -fexceptions -fasynchronous-unwind-tables
+CFLAGS-tsearch.c += $(uses-callbacks)
+CFLAGS-lsearch.c += $(uses-callbacks)
+CFLAGS-pselect.c += -fexceptions
+CFLAGS-readv.c += -fexceptions -fasynchronous-unwind-tables
+CFLAGS-writev.c += -fexceptions -fasynchronous-unwind-tables
+CFLAGS-preadv.c += -fexceptions -fasynchronous-unwind-tables
+CFLAGS-preadv64.c += -fexceptions -fasynchronous-unwind-tables
+CFLAGS-pwritev.c += -fexceptions -fasynchronous-unwind-tables
+CFLAGS-pwritev64.c += -fexceptions -fasynchronous-unwind-tables
+CFLAGS-preadv2.c += -fexceptions -fasynchronous-unwind-tables
+CFLAGS-preadv64v2.c += -fexceptions -fasynchronous-unwind-tables
+CFLAGS-pwritev2.c += -fexceptions -fasynchronous-unwind-tables
+CFLAGS-pwritev64v2.c += -fexceptions -fasynchronous-unwind-tables
+CFLAGS-usleep.c += -fexceptions
+CFLAGS-syslog.c += -fexceptions
+CFLAGS-error.c += -fexceptions
+CFLAGS-getpass.c += -fexceptions
+CFLAGS-mkstemp.c += -fexceptions
+CFLAGS-mkstemp64.c += -fexceptions
+CFLAGS-getsysstats.c += -fexceptions
+CFLAGS-getusershell.c += -fexceptions
+CFLAGS-err.c += -fexceptions
+CFLAGS-tst-tsearch.c += $(stack-align-test-flags)
+CFLAGS-msync.c += -fexceptions -fasynchronous-unwind-tables
+CFLAGS-fdatasync.c += -fexceptions -fasynchronous-unwind-tables
+CFLAGS-fsync.c += -fexceptions -fasynchronous-unwind-tables
+
+# Called during static library initialization, so turn stack-protection
+# off for non-shared builds.
+CFLAGS-sbrk.o = $(no-stack-protector)
+CFLAGS-sbrk.op = $(no-stack-protector)
+CFLAGS-brk.o = $(no-stack-protector)
+CFLAGS-brk.op = $(no-stack-protector)
 
 include ../Rules
 
-$(objpfx)libbsd-compat.a: $(dep-dummy-lib); $(make-dummy-lib)
 $(objpfx)libg.a: $(dep-dummy-lib); $(make-dummy-lib)
 
-ifeq ($(build-shared),yes)
-$(objpfx)tst-tsearch: $(common-objpfx)math/libm.so$(libm.so-version)
-else
-$(objpfx)tst-tsearch: $(common-objpfx)math/libm.a
-endif
+$(objpfx)tst-tsearch: $(libm)
 
-ifeq ($(build-bounded),yes)
-$(objpfx)tst-tsearch-bp: $(common-objpfx)math/libm_b.a
-endif
+tst-error1-ENV = MALLOC_TRACE=$(objpfx)tst-error1.mtrace
+tst-error1-ARGS = $(objpfx)tst-error1.out
+$(objpfx)tst-error1-mem.out: $(objpfx)tst-error1.out
+       $(common-objpfx)malloc/mtrace $(objpfx)tst-error1.mtrace > $@; \
+       $(evaluate-test)
+
+tst-allocate_once-ENV = MALLOC_TRACE=$(objpfx)tst-allocate_once.mtrace
+$(objpfx)tst-allocate_once-mem.out: $(objpfx)tst-allocate_once.out
+       $(common-objpfx)malloc/mtrace $(objpfx)tst-allocate_once.mtrace > $@; \
+       $(evaluate-test)
+
+$(objpfx)tst-gethostid: $(libdl)