home *** CD-ROM | disk | FTP | other *** search
/ PC-Online 1996 May / PCOnline_05_1996.bin / linux / source / n / tcpip / nfs-serv.1 / nfs-serv / nfs-server-2.1 / aclocal.m4 < prev    next >
Encoding:
M4 Source File  |  1993-10-13  |  3.5 KB  |  159 lines

  1. dnl aclocal.m4 -- custom autoconf macros for the Universal NFS server
  2. dnl
  3. define(AC_PROG_RPCGEN,
  4. [AC_PROGRAMS_CHECK(RPCGEN, rpcgen.new rpcgen, rpcgen)])dnl
  5. dnl
  6. define(AC_RPCGEN_C,
  7. [echo checking for rpcgen -C
  8. if $RPCGEN -C -c </dev/null >/dev/null 2>/dev/null
  9. then
  10.   RPCGEN_C=-C
  11. else
  12.   RPCGEN_C=
  13. fi
  14. AC_SUBST(RPCGEN_C)
  15. test -n "$RPCGEN_C" && AC_DEFINE(HAVE_RPCGEN_C)
  16. ])dnl
  17. dnl
  18. define(AC_RPCGEN_I,
  19. [echo checking for rpcgen -I
  20. if $RPCGEN -I -c </dev/null >/dev/null 2>/dev/null
  21. then
  22.   RPCGEN_I=-I
  23. else
  24.   RPCGEN_I=
  25. fi
  26. AC_SUBST(RPCGEN_I)
  27. test -n "$RPCGEN_I" && AC_DEFINE(HAVE_RPCGEN_I)
  28. ])dnl
  29. dnl
  30. define(AC_NOBODY,
  31. [echo checking for the uid and gid of nobody
  32. rm -f confout
  33. AC_TEST_PROGRAM([#include <stdio.h>
  34. #include <pwd.h>
  35. main()
  36. {
  37.     struct passwd *pw;
  38.     struct passwd *getpwnam();
  39.     FILE *ofp;
  40.  
  41.     pw = getpwnam("nobody");
  42.     if (pw) {
  43.         ofp = fopen("confout", "w");
  44.         if (ofp) {
  45.             fprintf(ofp, "NOBODY_UID=%d NOBODY_GID=%d\n",
  46.                 pw->pw_uid, pw->pw_gid);
  47.             exit(0);
  48.         }
  49.     }
  50.     exit(1);
  51. }
  52. ],
  53. [eval `cat confout`])
  54. rm -f core confout
  55. test -n "$NOBODY_UID" && AC_DEFINE_UNQUOTED(NOBODY_UID, $NOBODY_UID)
  56. test -n "$NOBODY_GID" && AC_DEFINE_UNQUOTED(NOBODY_GID, $NOBODY_GID)
  57. ])dnl
  58. dnl
  59. define(AC_MOUNTLIST,
  60. [echo checking how to get list of mounted filesystems
  61. mounted=
  62.  
  63. # DEC Alpha running OSF/1.
  64. AC_COMPILE_CHECK(, [
  65. #include <sys/types.h>
  66. #include <sys/mount.h>
  67. #include <sys/fs_types.h>],
  68. [struct statfs *stats;
  69. numsys = getfsstat ((struct statfs *)0, 0L, MNT_WAIT); ],
  70.   AC_DEFINE(MOUNTED_GETFSSTAT) mounted=1)
  71. if test -z "$mounted"; then
  72. # SVR4
  73. AC_HEADER_EGREP(getmntent, sys/mnttab.h,
  74.   AC_DEFINE(MOUNTED_GETMNTENT2) mounted=1)
  75. fi
  76. if test -z "$mounted"; then
  77. # AIX.
  78. AC_TEST_CPP([#include <fshelp.h>], 
  79.   AC_DEFINE(MOUNTED_VMOUNT) mounted=1)
  80. fi
  81. if test -z "$mounted"; then
  82. # SVR3
  83. AC_TEST_CPP([#include <sys/statfs.h>
  84. #include <sys/fstyp.h>
  85. #include <mnttab.h>], 
  86.   AC_DEFINE(MOUNTED_FREAD_FSTYP) mounted=1)
  87. fi
  88. if test -z "$mounted"; then
  89. # 4.3BSD
  90. AC_TEST_CPP([#include <mntent.h>], 
  91.   AC_DEFINE(MOUNTED_GETMNTENT1) mounted=1)
  92. fi
  93. if test -z "$mounted"; then
  94. # 4.4BSD and DEC OSF/1.
  95. AC_HEADER_EGREP(f_type;, sys/mount.h,  
  96.   AC_DEFINE(MOUNTED_GETMNTINFO) mounted=1)
  97. fi
  98. if test -z "$mounted"; then
  99. # Ultrix
  100. AC_TEST_CPP([#include <sys/fs_types.h>
  101. #include <sys/mount.h>],
  102.   AC_DEFINE(MOUNTED_GETMNT) mounted=1)
  103. fi
  104. if test -z "$mounted"; then
  105. # SVR2
  106. AC_TEST_CPP([#include <mnttab.h>],
  107.   AC_DEFINE(MOUNTED_FREAD) mounted=1)
  108. fi
  109. ])dnl
  110. define(AC_FSUSAGE,
  111. [echo checking how to get filesystem space usage
  112. space= 
  113.  
  114. # DEC Alpha running OSF/1
  115. AC_TEST_PROGRAM([
  116. #include <sys/types.h>
  117. #include <sys/mount.h>
  118. main ()
  119. {
  120. struct statfs fsd;
  121. exit (statfs (".", &fsd, sizeof (struct statfs)));
  122. }], AC_DEFINE(STATFS_OSF1) space=1)
  123. if test -z "$space"; then
  124. # SVR4
  125. AC_TEST_CPP([#include <sys/statvfs.h>
  126. #include <sys/fstyp.h>], AC_DEFINE(STAT_STATVFS) space=1)
  127. fi
  128. if test -z "$space"; then
  129. # AIX
  130. AC_HEADER_EGREP(f_nlsdirtype, sys/statfs.h, 
  131.   AC_DEFINE(STAT_STATFS2_BSIZE) space=1)
  132. fi
  133. if test -z "$space"; then
  134. # SVR3
  135. AC_TEST_CPP([#include <sys/statfs.h>], 
  136.   AC_DEFINE(STAT_STATFS4) space=1)
  137. fi
  138. if test -z "$space"; then
  139. # 4.3BSD
  140. AC_TEST_CPP([#include <sys/vfs.h>],
  141.   AC_DEFINE(STAT_STATFS2_BSIZE) space=1)
  142. fi
  143. if test -z "$space"; then
  144. # 4.4BSD
  145. AC_HEADER_EGREP(MOUNT_UFS, sys/mount.h,
  146.   AC_DEFINE(STAT_STATFS2_FSIZE) space=1)
  147. fi
  148. if test -z "$space"; then
  149. # SVR2
  150. AC_TEST_CPP([#include <sys/filsys.h>],
  151.   AC_DEFINE(STAT_READ) space=1)
  152. fi
  153. if test -z "$space"; then
  154. # Ultrix
  155. AC_TEST_CPP([#include <sys/mount.h>],
  156.   AC_DEFINE(STAT_STATFS2_FS_DATA) space=1)
  157. fi
  158. ])dnl
  159.