glibc/sysdeps/unix/sysv/linux/alpha/Makefile
Adhemerval Zanella 26f28fd73d Consolidate Linux select implementation
This patch consolidates the select Linux syscall implementation on
sysdeps/unix/sysv/linux/select.c.  The changes are:

  1. Remove select from auto-generation syscalls.list on the architecture
     that uses __NR_select.
  2. Remove generic implementation add a default one that handle all
     current cases (with the expection of alpha)
     The new default implementation will either use __NR_select if
     available of fallback to __NR_pselect6 otherwise.
  3. Add a alpha outlier implementation which requires old compatibility
     symbols.

Checked on i686-linux-gnu, x86_64-linux-gnu, x86_64-linux-gnux32,
arch64-linux-gnu, arm-linux-gnueabihf, and powerpc64le-linux-gnu.

	* sysdeps/unix/sysv/linux/alpha/Makefile (sysdep_routines): Add
	osf_select.
	* sysdeps/unix/sysv/linux/alpha/select.c: New file.
	* sysdeps/unix/sysv/linux/alpha/syscalls.list: Remove select and
	osf_select from auto-generation list.
	* sysdeps/unix/sysv/linux/syscalls.list: Likewise.
	* sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
	* sysdeps/unix/sysv/linux/generic/select.c: Remove file.
	* sysdeps/unix/sysv/linux/select.c: New file.
2017-05-03 10:36:36 -03:00

47 lines
1.2 KiB
Makefile

ifeq ($(subdir),posix)
sysdep_routines += oldglob
endif
ifeq ($(subdir),stdlib)
gen-as-const-headers += ucontext-offsets.sym
endif
ifeq ($(subdir),misc)
sysdep_headers += alpha/ptrace.h alpha/regdef.h sys/io.h
sysdep_routines += ieee_get_fp_control ieee_set_fp_control \
ioperm
# Support old timeval32 entry points
sysdep_routines += osf_gettimeofday osf_settimeofday \
osf_getitimer osf_setitimer osf_utimes \
osf_getrusage osf_wait4
CFLAGS-ioperm.c = -Wa,-mev6
endif
ifeq ($(subdir),signal)
sysdep_routines += rt_sigaction
endif
ifeq ($(subdir),math)
# These 2 routines are normally in libgcc{.a,_s.so.1}.
# However, alpha -mlong-double-128 libgcc relies on
# glibc providing _Ots* routines and without these files
# glibc relies on __multc3/__divtc3 only provided
# by libgcc if configured with -mlong-double-128.
# Provide these routines here as well.
libm-routines += multc3 divtc3
endif # math
ifeq ($(subdir),nptl)
# pull in __syscall_error routine, __sigprocmask, __syscall_rt_sigaction
libpthread-routines += sysdep sigprocmask rt_sigaction
libpthread-shared-only-routines += sysdep sigprocmask rt_sigaction
endif
ifeq ($(subdir),conform)
# For bug 21260.
conformtest-xfail-conds += alpha-linux
endif