3451ed63d2c1de6a27cb25af2cf5fc89f9842f04
[openafs.git] / src / cf / linux-test2.m4
1 AC_DEFUN(LINUX_FS_STRUCT_ADDRESS_SPACE_HAS_GFP_MASK, [
2 AC_MSG_CHECKING(for gfp_mask in struct address_space)
3 save_CPPFLAGS="$CPPFLAGS"
4 CPPFLAGS="-I${LINUX_KERNEL_PATH}/include -D__KERNEL__ $CPPFLAGS"
5 AC_CACHE_VAL(ac_cv_linux_fs_struct_address_space_has_gfp_mask, 
6 [
7 AC_TRY_COMPILE(
8 [#include <linux/fs.h>],
9 [struct address_space _a;
10 printf("%d\n", _a.gfp_mask);], 
11 ac_cv_linux_fs_struct_address_space_has_gfp_mask=yes,
12 ac_cv_linux_fs_struct_address_space_has_gfp_mask=no)])
13 AC_MSG_RESULT($ac_cv_linux_fs_struct_address_space_has_gfp_mask)
14 CPPFLAGS="$save_CPPFLAGS"])
15
16 AC_DEFUN(LINUX_FS_STRUCT_INODE_HAS_I_BYTES, [
17 AC_MSG_CHECKING(for i_bytes in struct inode)
18 save_CPPFLAGS="$CPPFLAGS"
19 CPPFLAGS="-I${LINUX_KERNEL_PATH}/include -D__KERNEL__ $CPPFLAGS"
20 AC_CACHE_VAL(ac_cv_linux_fs_struct_inode_has_i_bytes, 
21 [
22 AC_TRY_COMPILE(
23 [#include <linux/fs.h>],
24 [struct inode _inode;
25 printf("%d\n", _inode.i_bytes);], 
26 ac_cv_linux_fs_struct_inode_has_i_bytes=yes,
27 ac_cv_linux_fs_struct_inode_has_i_bytes=no)])
28 AC_MSG_RESULT($ac_cv_linux_fs_struct_inode_has_i_bytes)
29 CPPFLAGS="$save_CPPFLAGS"])
30
31 AC_DEFUN(LINUX_FS_STRUCT_INODE_HAS_I_TRUNCATE_SEM, [
32 AC_MSG_CHECKING(for i_truncate_sem in struct inode)
33 save_CPPFLAGS="$CPPFLAGS"
34 CPPFLAGS="-I${LINUX_KERNEL_PATH}/include -D__KERNEL__ $CPPFLAGS"
35 AC_CACHE_VAL(ac_cv_linux_fs_struct_inode_has_i_truncate_sem,
36 [
37 AC_TRY_COMPILE(
38 [#include <linux/fs.h>],
39 [struct inode _i;
40 printf("%x\n", _i.i_truncate_sem);], 
41 ac_cv_linux_fs_struct_inode_has_i_truncate_sem=yes,
42 ac_cv_linux_fs_struct_inode_has_i_truncate_sem=no)])
43 AC_MSG_RESULT($ac_cv_linux_fs_struct_inode_has_i_truncate_sem)
44 CPPFLAGS="$save_CPPFLAGS"])
45
46 AC_DEFUN(LINUX_FS_STRUCT_ADDRESS_SPACE_HAS_PAGE_LOCK, [
47 AC_MSG_CHECKING(for page_lock in struct address_space)
48 save_CPPFLAGS="$CPPFLAGS"
49 CPPFLAGS="-I${LINUX_KERNEL_PATH}/include -D__KERNEL__ $CPPFLAGS"
50 AC_CACHE_VAL(ac_cv_linux_fs_struct_address_space_has_page_lock, 
51 [
52 AC_TRY_COMPILE(
53 [#include <linux/fs.h>],
54 [struct address_space _a_s;
55 printf("%x\n", _a_s.page_lock);], 
56 ac_cv_linux_fs_struct_address_space_has_page_lock=yes,
57 ac_cv_linux_fs_struct_address_space_has_page_lock=no)])
58 AC_MSG_RESULT($ac_cv_linux_fs_struct_address_space_has_page_lock)
59 CPPFLAGS="$save_CPPFLAGS"])
60
61
62 dnl LINUX_BUILD_VNODE_FROM_INODE (configdir, outputdir, tmpldir)
63 dnl             defaults: (src/config, src/afs/LINUX, src/afs/linux)
64
65 AC_DEFUN(LINUX_BUILD_VNODE_FROM_INODE, [
66 AC_MSG_CHECKING(whether to build osi_vfs.h)
67 configdir=ifelse([$1], ,[src/config],$1)
68 outputdir=ifelse([$2], ,[src/afs/LINUX],$2)
69 tmpldir=ifelse([$3], ,[src/afs/LINUX],$3)
70 chmod +x $configdir/make_vnode.pl
71 $configdir/make_vnode.pl -i $LINUX_KERNEL_PATH -t ${tmpldir} -o $outputdir
72 ])