syscall.cmake revision e16707b5
1# Copyright (c) 2018 Cisco and/or its affiliates.
2# Licensed under the Apache License, Version 2.0 (the "License");
3# you may not use this file except in compliance with the License.
4# You may obtain a copy of the License at:
5#
6#     http://www.apache.org/licenses/LICENSE-2.0
7#
8# Unless required by applicable law or agreed to in writing, software
9# distributed under the License is distributed on an "AS IS" BASIS,
10# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11# See the License for the specific language governing permissions and
12# limitations under the License.
13
14##############################################################################
15# Check for memfd_create headers and libs
16##############################################################################
17check_c_source_compiles("
18  #define _GNU_SOURCE
19  #include <sys/mman.h>
20  int main() { return memfd_create (\"/dev/false\", 0); }
21" HAVE_MEMFD_CREATE)
22
23if (HAVE_MEMFD_CREATE)
24    add_definitions(-DHAVE_MEMFD_CREATE)
25endif()
26
27check_c_source_compiles("
28  #define _GNU_SOURCE
29  #include <sched.h>
30  int main() { return getcpu (0, 0); }
31" HAVE_GETCPU)
32
33if (HAVE_GETCPU)
34    add_definitions(-DHAVE_GETCPU)
35endif()
36
37check_c_source_compiles("
38  #define _GNU_SOURCE
39  #include <fcntl.h>
40  int main() { return fcntl64 (0, 0); }
41" HAVE_FCNTL64)
42
43if (HAVE_FCNTL64)
44    add_definitions(-DHAVE_FCNTL64)
45endif()
46