+AC_DEFUN([LINUX_CONFIG_H_EXISTS], [
+ AC_MSG_CHECKING([for linux/config.h existance])
+ AC_CACHE_VAL([ac_cv_linux_config_h_exists], [
+ AC_TRY_KBUILD(
+[#include <linux/config.h>],
+[return;],
+ ac_cv_linux_config_h_exists=yes,
+ ac_cv_linux_config_h_exists=no)])
+ AC_MSG_RESULT($ac_cv_linux_config_h_exists)
+ if test "x$ac_cv_linux_config_h_exists" = "xyes"; then
+ AC_DEFINE([CONFIG_H_EXISTS], 1, [define if linux/config.h exists])
+ fi])
+
+
AC_DEFUN([LINUX_COMPLETION_H_EXISTS], [
AC_MSG_CHECKING([for linux/completion.h existance])
AC_CACHE_VAL([ac_cv_linux_completion_h_exists], [
AC_TRY_KBUILD(
[#include <linux/rwsem.h>
#include <linux/key.h>
-#include <linux/keyctl.h>
-#include <asm/unistd.h>
-static int errno;
-static inline _syscall2(long, keyctl, int, option, void*, arg2);],
+#include <linux/keyctl.h>],
[#ifdef CONFIG_KEYS
-keyctl(KEYCTL_JOIN_SESSION_KEYRING, NULL);
request_key(NULL, NULL, NULL);
+#if !defined(KEY_POS_VIEW) || !defined(KEY_POS_SEARCH) || !defined(KEY_POS_SETATTR)
+#error "Your linux/key.h does not contain KEY_POS_VIEW or KEY_POS_SEARCH or KEY_POS_SETATTR"
+#endif
#else
#error rebuild your kernel with CONFIG_KEYS
#endif],
if test "x$ac_cv_key_alloc_needs_struct_task" = "xyes"; then
AC_DEFINE([KEY_ALLOC_NEEDS_STRUCT_TASK], 1, [define if key_alloc takes a struct task *])
fi])
+
+AC_DEFUN([LINUX_DO_SYNC_READ], [
+ AC_MSG_CHECKING([for linux do_sync_read()])
+ AC_CACHE_VAL([ac_cv_linux_do_sync_read], [
+ save_CPPFLAGS="$CPPFLAGS"
+ CPPFLAGS="$CPPFLAGS -Werror-implicit-function-declaration"
+ AC_TRY_KBUILD(
+[#include <linux/fs.h>],
+[do_sync_read(NULL, NULL, 0, NULL);],
+ ac_cv_linux_do_sync_read=yes,
+ ac_cv_linux_do_sync_read=no)
+ CPPFLAGS="$save_CPPFLAGS"])
+ AC_MSG_RESULT($ac_cv_linux_do_sync_read)
+ if test "x$ac_cv_linux_do_sync_read" = "xyes"; then
+ AC_DEFINE([DO_SYNC_READ], 1, [define if your kernel has do_sync_read()])
+ fi])
+
+AC_DEFUN([LINUX_GENERIC_FILE_AIO_READ], [
+ AC_MSG_CHECKING([for linux generic_file_aio_read()])
+ AC_CACHE_VAL([ac_cv_linux_generic_file_aio_read], [
+ save_CPPFLAGS="$CPPFLAGS"
+ CPPFLAGS="$CPPFLAGS -Werror-implicit-function-declaration"
+ AC_TRY_KBUILD(
+[#include <linux/fs.h>],
+[generic_file_aio_read(NULL, NULL, 0, 0);],
+ ac_cv_linux_generic_file_aio_read=yes,
+ ac_cv_linux_generic_file_aio_read=no)
+ CPPFLAGS="$save_CPPFLAGS"])
+ AC_MSG_RESULT($ac_cv_linux_generic_file_aio_read)
+ if test "x$ac_cv_linux_generic_file_aio_read" = "xyes"; then
+ AC_DEFINE([GENERIC_FILE_AIO_READ], 1, [define if your kernel has generic_file_aio_read()])
+ fi])
+