]>
Commit | Line | Data |
---|---|---|
ebabc882 DJ |
1 | /* Set flags signalling availability of kernel features based on given |
2 | kernel version number. | |
3 | Copyright (C) 2006 Free Software Foundation, Inc. | |
4 | This file is part of the GNU C Library. | |
5 | ||
6 | The GNU C Library is free software; you can redistribute it and/or | |
7 | modify it under the terms of the GNU Lesser General Public | |
8 | License as published by the Free Software Foundation; either | |
9 | version 2.1 of the License, or (at your option) any later version. | |
10 | ||
11 | The GNU C Library is distributed in the hope that it will be useful, | |
12 | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
14 | Lesser General Public License for more details. | |
15 | ||
16 | You should have received a copy of the GNU Lesser General Public | |
ab84e3ff PE |
17 | License along with the GNU C Library. If not, see |
18 | <http://www.gnu.org/licenses/>. */ | |
ebabc882 DJ |
19 | |
20 | /* The utimes syscall was added before 2.6.1. */ | |
21 | #if __LINUX_KERNEL_VERSION >= 132609 | |
22 | # define __ASSUME_UTIMES 1 | |
23 | #endif | |
24 | ||
25 | /* The new getrlimit syscall was added sometime before 2.4.6. */ | |
26 | #if __LINUX_KERNEL_VERSION >= 132102 | |
27 | #define __ASSUME_NEW_GETRLIMIT_SYSCALL 1 | |
28 | #endif | |
29 | ||
023a0de1 DJ |
30 | /* On ARM the truncate64/ftruncate64/mmap2/stat64/lstat64/fstat64 |
31 | syscalls were introduced in 2.3.35. */ | |
32 | #if __LINUX_KERNEL_VERSION >= 131875 | |
33 | # define __ASSUME_TRUNCATE64_SYSCALL 1 | |
34 | # define __ASSUME_MMAP2_SYSCALL 1 | |
35 | # define __ASSUME_STAT64_SYSCALL 1 | |
36 | #endif | |
37 | ||
38 | /* Arm got fcntl64 in 2.4.4. */ | |
39 | #if __LINUX_KERNEL_VERSION >= 132100 | |
40 | # define __ASSUME_FCNTL64 1 | |
41 | #endif | |
42 | ||
43 | /* The vfork syscall on arm was definitely available in 2.4. */ | |
d2ff5a57 | 44 | #if __LINUX_KERNEL_VERSION >= 132097 |
023a0de1 DJ |
45 | # define __ASSUME_VFORK_SYSCALL 1 |
46 | #endif | |
47 | ||
99e5e16c DJ |
48 | /* The signal frame layout changed in 2.6.18. */ |
49 | #if __LINUX_KERNEL_VERSION >= 132626 | |
50 | # define __ASSUME_SIGFRAME_V2 1 | |
51 | #endif | |
52 | ||
0a6ab2a6 AJ |
53 | /* Support for the eventfd2 and signalfd4 syscalls was added in 2.6.27. */ |
54 | #if __LINUX_KERNEL_VERSION >= 0x02061b | |
55 | # define __ASSUME_EVENTFD2 1 | |
56 | # define __ASSUME_SIGNALFD4 1 | |
57 | #endif | |
58 | ||
ebabc882 | 59 | #include_next <kernel-features.h> |
2b03bcf4 | 60 | |
3a2e1f4e JM |
61 | /* Support for pselect6, ppoll and epoll_pwait was added in 2.6.32. */ |
62 | #if __LINUX_KERNEL_VERSION < 0x020620 | |
63 | # undef __ASSUME_PSELECT | |
64 | # undef __ASSUME_PPOLL | |
65 | #endif |