vcl: Handle newer Glibc (>2.28) where fcntl is actually fcntl64
Glibc 2.28 now provides fcntl64 which is used instead of fcntl
by defining fcntl as fcntl64 in fcntl.h
Type: fix
Change-Id: I87fedfbf3e0d241aafdc920e90f824d71353e0e6
Signed-off-by: Carl Smith <carl.smith@alliedtelesis.co.nz>
diff --git a/src/cmake/syscall.cmake b/src/cmake/syscall.cmake
index 1e0a559..aa3bac4 100644
--- a/src/cmake/syscall.cmake
+++ b/src/cmake/syscall.cmake
@@ -34,3 +34,12 @@
add_definitions(-DHAVE_GETCPU)
endif()
+check_c_source_compiles("
+ #define _GNU_SOURCE
+ #include <fcntl.h>
+ int main() { return fcntl64 (0, 0); }
+" HAVE_FCNTL64)
+
+if (HAVE_FCNTL64)
+ add_definitions(-DHAVE_FCNTL64)
+endif()