]> git.proxmox.com Git - mirror_zfs.git/blobdiff - config/kernel-current-time.m4
etc/init.d: decide which variant to use at build time.
[mirror_zfs.git] / config / kernel-current-time.m4
index 2ede9ff38c4165a1c8d1708ac61878e9ae701af3..ab7d9c5cedbad2e626e11f4de7b8059d16590ce7 100644 (file)
@@ -1,16 +1,23 @@
 dnl #
 dnl # 4.9, current_time() added
+dnl # 4.18, return type changed from timespec to timespec64
 dnl #
-AC_DEFUN([ZFS_AC_KERNEL_CURRENT_TIME],
-       [AC_MSG_CHECKING([whether current_time() exists])
-       ZFS_LINUX_TRY_COMPILE_SYMBOL([
+dnl # Note that we don't care about the return type in this check. If we have
+dnl # to implement a fallback, we'll know we're <4.9, which was timespec.
+dnl #
+AC_DEFUN([ZFS_AC_KERNEL_SRC_CURRENT_TIME], [
+       ZFS_LINUX_TEST_SRC([current_time], [
                #include <linux/fs.h>
        ], [
-               struct inode ip;
-               struct timespec now __attribute__ ((unused));
+               struct inode ip __attribute__ ((unused));
+               (void) current_time(&ip);
+       ])
+])
 
-               now = current_time(&ip);
-       ], [current_time], [fs/inode.c], [
+AC_DEFUN([ZFS_AC_KERNEL_CURRENT_TIME], [
+       AC_MSG_CHECKING([whether current_time() exists])
+       ZFS_LINUX_TEST_RESULT_SYMBOL([current_time],
+           [current_time], [fs/inode.c], [
                AC_MSG_RESULT(yes)
                AC_DEFINE(HAVE_CURRENT_TIME, 1, [current_time() exists])
        ], [