From b14e8cb2857b3cf617fac669d72946bc402bafa0 Mon Sep 17 00:00:00 2001 From: Matt Turner Date: Fri, 26 Mar 2010 16:49:55 -0400 Subject: [PATCH] alpha: create kernel-features.h. Signed-off-by: Matt Turner --- sysdeps/unix/sysv/linux/alpha/kernel-features.h | 68 +++++++++++++++++++++++++ 1 file changed, 68 insertions(+) create mode 100644 sysdeps/unix/sysv/linux/alpha/kernel-features.h diff --git a/sysdeps/unix/sysv/linux/alpha/kernel-features.h b/sysdeps/unix/sysv/linux/alpha/kernel-features.h new file mode 100644 index 0000000000..f611d58f01 --- /dev/null +++ b/sysdeps/unix/sysv/linux/alpha/kernel-features.h @@ -0,0 +1,68 @@ +/* Set flags signalling availability of kernel features based on given + kernel version number. + Copyright (C) 2010 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 + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + 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. */ + +/* alpha switched to a 64-bit timeval sometime before 2.2.0. */ +#if __LINUX_KERNEL_VERSION >= 131584 +# define __ASSUME_TIMEVAL64 1 +#endif + +/* The tgkill syscall was introduced for alpha 2.6.0-test1 which unfortunately + cannot be distinguished from 2.6.0. */ +#if __LINUX_KERNEL_VERSION >= 132609 +# define __ASSUME_TGKILL 1 +#endif + +#define __ASSUME_UTIMES 1 + +/* Starting with version 2.6.9, SSI_IEEE_RAISE_EXCEPTION exists. */ +#if __LINUX_KERNEL_VERSION >= 0x020609 +# define __ASSUME_IEEE_RAISE_EXCEPTION 1 +#endif + +#include_next + +#undef __ASSUME_ST_INO_64_BIT + +/* pselect/ppoll were introduced on alpha just after 2.6.22-rc1. */ +#if __LINUX_KERNEL_VERSION < 0x020617 +# undef __ASSUME_PSELECT +# undef __ASSUME_PPOLL +#endif + +/* The *at syscalls were introduced on alpha just after 2.6.22-rc1. */ +#if __LINUX_KERNEL_VERSION < 0x020617 +# undef __ASSUME_ATFCTS +#endif + +/* Support for inter-process robust mutexes was added on alpha just + after 2.6.22-rc1. */ +#if __LINUX_KERNEL_VERSION < 0x020617 +# undef __ASSUME_SET_ROBUST_LIST +#endif + +/* Support for utimensat was added on alpha after 2.6.22-rc1. */ +#if __LINUX_KERNEL_VERSION < 0x020617 +# undef __ASSUME_UTIMENSAT +#endif + +/* Support for fallocate was added on alpha for 2.6.33. */ +#if __LINUX_KERNEL_VERSION < 0x020621 +# undef __ASSUME_FALLOCATE +#endif -- 2.11.4.GIT