Avoid gcc warning
[openafs.git] / acinclude.m4
index 1e40e9a..65067ae 100644 (file)
@@ -461,11 +461,9 @@ case $system in
         *-solaris*)
                MKAFS_OSTYPE=SOLARIS
                 AC_MSG_RESULT(sun4)
-               AC_PATH_PROG(SOLARISCC, [cc], ,
-                   [/opt/SUNWspro/bin:/opt/SunStudioExpress/bin:/opt/solarisstudio12.3/bin:/opt/solstudio12.2/bin:/opt/sunstudio12.1/bin])
-               if test "x$SOLARISCC" = "x" ; then
-                   AC_MSG_FAILURE(Could not find the solaris cc program.  Please define the environment variable SOLARISCC to specify the path.)
-               fi
+               SOLARIS_PATH_CC
+               SOLARIS_CC_TAKES_XVECTOR_NONE
+               AC_SUBST(SOLARIS_CC_KOPTS)
                SOLARIS_UFSVFS_HAS_DQRWLOCK
                SOLARIS_FS_HAS_FS_ROLLED
                SOLARIS_SOLOOKUP_TAKES_SOCKPARAMS
@@ -706,6 +704,14 @@ else
                        AFS_SYSNAME="x86_darwin_160"
                        OSXSDK="macosx10.12"
                        ;;
+               x86_64-apple-darwin17.*)
+                       AFS_SYSNAME="x86_darwin_170"
+                       OSXSDK="macosx10.13"
+                       ;;
+               i?86-apple-darwin17.*)
+                       AFS_SYSNAME="x86_darwin_170"
+                       OSXSDK="macosx10.13"
+                       ;;
                sparc-sun-solaris2.8)
                        AFS_SYSNAME="sun4x_58"
                        ;;
@@ -933,12 +939,15 @@ case $AFS_SYSNAME in *_linux* | *_umlinux*)
                                                unsigned int flags])
 
                 dnl Check for header files
+                AC_CHECK_LINUX_HEADER([cred.h])
                 AC_CHECK_LINUX_HEADER([config.h])
                 AC_CHECK_LINUX_HEADER([exportfs.h])
                 AC_CHECK_LINUX_HEADER([freezer.h])
                 AC_CHECK_LINUX_HEADER([key-type.h])
                 AC_CHECK_LINUX_HEADER([semaphore.h])
                 AC_CHECK_LINUX_HEADER([seq_file.h])
+                AC_CHECK_LINUX_HEADER([sched/signal.h])
+                AC_CHECK_LINUX_HEADER([uaccess.h])
 
                 dnl Type existence checks
                 AC_CHECK_LINUX_TYPE([struct vfs_path], [dcache.h])
@@ -1000,12 +1009,19 @@ case $AFS_SYSNAME in *_linux* | *_umlinux*)
 
                 dnl Function existence checks
 
-                AC_CHECK_LINUX_FUNC([__vfs_read],
+                AC_CHECK_LINUX_FUNC([__vfs_write],
+                                    [#include <linux/fs.h>],
+                                    [__vfs_write(NULL, NULL, 0, NULL);])
+                AC_CHECK_LINUX_FUNC([kernel_write],
                                     [#include <linux/fs.h>],
-                                    [__vfs_read(NULL, NULL, 0, NULL);])
+                                    [kernel_write(NULL, NULL, 0, NULL);])
                  AC_CHECK_LINUX_FUNC([bdi_init],
                                     [#include <linux/backing-dev.h>],
                                     [bdi_init(NULL);])
+                 AC_CHECK_LINUX_FUNC([super_setup_bdi],
+                                     [#include <linux/backing-dev.h>],
+                                     [struct super_block *sb;
+                                     super_setup_bdi(sb);])
                  AC_CHECK_LINUX_FUNC([PageChecked],
                                     [#include <linux/mm.h>
 #include <linux/page-flags.h>],
@@ -1175,6 +1191,7 @@ case $AFS_SYSNAME in *_linux* | *_umlinux*)
                 LINUX_REGISTER_SYSCTL_TABLE_NOFLAG
                 LINUX_HAVE_DCACHE_LOCK
                 LINUX_D_COUNT_IS_INT
+                LINUX_IOP_GETATTR_TAKES_PATH_STRUCT
                 LINUX_IOP_MKDIR_TAKES_UMODE_T
                 LINUX_IOP_CREATE_TAKES_UMODE_T
                 LINUX_EXPORT_OP_ENCODE_FH_TAKES_INODES
@@ -1186,6 +1203,7 @@ case $AFS_SYSNAME in *_linux* | *_umlinux*)
                 LINUX_DOP_D_REVALIDATE_TAKES_UNSIGNED
                 LINUX_IOP_LOOKUP_TAKES_UNSIGNED
                 LINUX_D_INVALIDATE_IS_VOID
+                LINUX_KERNEL_READ_OFFSET_IS_LAST
 
                 dnl If we are guaranteed that keyrings will work - that is
                 dnl  a) The kernel has keyrings enabled