i386-*-dragonfly2.3*)
AFS_SYSNAME="i386_dfbsd_23"
;;
- i?86-*-netbsd*1.5*)
- AFS_SYSNAME="i386_nbsd15"
- ;;
- alpha-*-netbsd*1.5*)
- AFS_SYSNAME="alpha_nbsd15"
- ;;
i?86-*-netbsd*1.6[[M-Z]]*)
AFS_SYSNAME="i386_nbsd20"
;;
powerpc-*-netbsd*1.6[[M-Z]]*)
AFS_SYSNAME="ppc_nbsd20"
;;
- i?86-*-netbsd*2.0*)
- AFS_SYSNAME="i386_nbsd20"
- ;;
- amd64-*-netbsd*2.0*)
- AFS_SYSNAME="amd64_nbsd20"
- ;;
- x86_64-*-netbsd*3.[[0-8]]*)
-# XXX AFS_PARAM_COMMON handled separately, redundant?
- AFS_PARAM_COMMON=param.nbsd30.h
- AFS_SYSNAME="amd64_nbsd30"
- ;;
- x86_64-*-netbsd*4.[[0-8]]*)
-# XXX AFS_PARAM_COMMON handled separately, redundant?
- AFS_PARAM_COMMON=param.nbsd40.h
- AFS_SYSNAME="amd64_nbsd40"
- ;;
- powerpc-*-netbsd*2.0*)
- AFS_SYSNAME="ppc_nbsd20"
- ;;
- i?86-*-netbsd*1.6*)
- AFS_SYSNAME="i386_nbsd16"
- ;;
- alpha-*-netbsd*1.6*)
- AFS_SYSNAME="alpha_nbsd16"
- ;;
- powerpc-*-netbsd*1.6*)
- AFS_SYSNAME="ppc_nbsd16"
- ;;
- i?86-*-netbsd*2.1*)
- AFS_SYSNAME="i386_nbsd21"
- ;;
- i?86-*-netbsd*2.99*)
- AFS_SYSNAME="i386_nbsd30"
- ;;
- i?86-*-netbsd*3.[[0-8]]*)
- AFS_SYSNAME="i386_nbsd30"
- ;;
- i?86-*-netbsd*3.99*)
- AFS_SYSNAME="i386_nbsd30"
- ;;
- i?86-*-netbsd*4.[[0-8]]*)
- AFS_SYSNAME="i386_nbsd40"
- ;;
- i?86-*-netbsd*4.99*)
- AFS_SYSNAME="i386_nbsd40"
+ *-*-netbsd*)
+ arch=${host%%-unknown*}
+ arch=$(echo $arch |sed -e 's/x86_64/amd64/g' \
+ -e 's/powerpc/ppc/g')
+ v=${host#*netbsd}
+ v=${v#*aout}
+ v=${v#*ecoff}
+ v=${v#*elf}
+ vM=${v%%.*}
+ vM=${vM%.*}
+ v=${v#*.}
+ vm=${v%%.*}
+ vm=${vm%.*}
+ vm=${vm%%[[_A-Z]]*}
+ if test $vm -eq 99 ; then
+ vM=$((vM+1))
+ fi
+ if test $vM -gt 1 ; then
+ vm=0
+ fi
+ AFS_SYSNAME="${arch}_nbsd${vM}${vm}"
;;
hppa*-hp-hpux11.0*)
AFS_SYSNAME="hp_ux110"
*_nbsd21) AFS_PARAM_COMMON=param.nbsd21.h ;;
*_nbsd30) AFS_PARAM_COMMON=param.nbsd30.h ;;
*_nbsd40) AFS_PARAM_COMMON=param.nbsd40.h ;;
+ *_nbsd50) AFS_PARAM_COMMON=param.nbsd50.h ;;
*_obsd31) AFS_PARAM_COMMON=param.obsd31.h ;;
*_obsd32) AFS_PARAM_COMMON=param.obsd32.h ;;
*_obsd33) AFS_PARAM_COMMON=param.obsd33.h ;;
--- /dev/null
+/* NetBSD shared section */
+
+#ifndef AFS_PARAM_COMMON_H
+#define AFS_PARAM_COMMON_H 1
+
+#define AFS_64BIT_ENV 1
+#define AFS_NAMEI_ENV 1 /* User space interface to file system */
+#define AFS_64BIT_IOPS_ENV 1 /* Needed for NAMEI */
+#define AFS_64BIT_CLIENT 1
+
+#define AFS_MOUNT_AFS "afs" /* The name of the filesystem type. */
+#define AFS_SYSCALL 210
+
+#ifndef MOUNT_AFS
+#define MOUNT_AFS AFS_MOUNT_AFS
+#endif
+
+#define AFS_XBSD_ENV 1 /* {Free,Open,Net}BSD */
+
+#define AFS_NBSD_ENV 1
+#define AFS_NBSD15_ENV 1
+#define AFS_NBSD16_ENV 1
+#define AFS_NBSD20_ENV 1
+#define AFS_NBSD30_ENV 1
+#define AFS_NBSD40_ENV 1
+#define AFS_NBSD50_ENV 1
+#undef AFS_NONFSTRANS
+#define AFS_NONFSTRANS 1
+
+#define AFS_VFSINCL_ENV 1
+
+#define AFS_HAVE_FFS 1 /* Use system's ffs. */
+
+#if !defined(ASSEMBLER) && !defined(__LANGUAGE_ASSEMBLY__) && !defined(IGNORE_STDS_H)
+#define AFS_HAVE_STATVFS 1 /* System supports statvfs */
+#endif
+
+#ifndef UKERNEL
+
+#if !defined(ASSEMBLER) && !defined(__LANGUAGE_ASSEMBLY__) && !defined(IGNORE_STDS_H)
+#include <sys/param.h>
+#endif
+
+#define FTRUNC O_TRUNC
+
+#define IUPD 0x0010
+#define IACC 0x0020
+#define ICHG 0x0040
+#define IMOD 0x0080
+
+#define IN_LOCK(ip) lockmgr(&ip->i_lock, LK_EXCLUSIVE, \
+ NULL, curproc)
+#define IN_UNLOCK(ip) lockmgr(&ip->i_lock, LK_RELEASE, \
+ NULL, curproc)
+
+#include <afs/afs_sysnames.h>
+
+#define AFS_VM_RDWR_ENV 1
+#define AFS_VFS_ENV 1
+#define AFS_GREEDY43_ENV 1
+
+#define AFS_GCPAGS 0 /* if nonzero, garbage collect PAGs */
+#define AFS_USE_GETTIMEOFDAY 1 /* use gettimeofday to implement rx clock */
+
+/* Extra kernel definitions (from kdefs file) */
+#ifdef _KERNEL
+#define AFS_GLOBAL_SUNLOCK 1
+#define AFS_VFS34 1 /* What is VFS34??? */
+#define AFS_SHORTGID 1 /* are group id's short? */
+#define afsio_iov uio_iov
+#define afsio_iovcnt uio_iovcnt
+#define afsio_offset uio_offset
+#define afsio_seg uio_segflg
+#define afsio_resid uio_resid
+#define AFS_UIOSYS UIO_SYSSPACE
+#define AFS_UIOUSER UIO_USERSPACE
+#define AFS_CLBYTES CLBYTES
+#define osi_GetTime(x) microtime(x)
+#define AFS_KALLOC(x) kalloc(x)
+#define AFS_KFREE(x,y) kfree(x,y)
+#define v_count v_usecount
+#define v_vfsp v_mount
+#define vfs_bsize mnt_stat.f_bsize
+#define vfs_fsid mnt_stat.f_fsid
+#define va_nodeid va_fileid
+#define vfs_vnodecovered mnt_vnodecovered
+#define direct dirent
+#define vnode_t struct vnode
+
+#ifndef MUTEX_DEFAULT
+#define MUTEX_DEFAULT 0
+#endif /* MUTEX_DEFAULT */
+
+#ifndef SSYS
+#define SSYS 0x00002
+#endif /* SSYS */
+
+#define p_rcred p_ucred
+
+#define VN_RELE(vp) vrele(((struct vnode *)(vp)))
+#define VN_HOLD(vp) VREF(((struct vnode *)(vp)))
+
+#if !defined(ASSEMBLER) && !defined(__LANGUAGE_ASSEMBLY__) && !defined(IGNORE_STDS_H)
+enum vcexcl { NONEXCL, EXCL };
+
+#ifdef KERNEL
+#ifndef MIN
+#define MIN(A,B) ((A) < (B) ? (A) : (B))
+#endif
+#ifndef MAX
+#define MAX(A,B) ((A) > (B) ? (A) : (B))
+#endif
+#endif /* KERNEL */
+
+#endif /* ! ASSEMBLER & ! __LANGUAGE_ASSEMBLY__ && !defined(IGNORE_STDS_H) */
+#endif /* _KERNEL */
+
+#else /* !defined(UKERNEL) */
+
+
+/* This section for user space compiles only */
+
+#define UKERNEL 1 /* user space kernel */
+
+#include <afs/afs_sysnames.h>
+
+#define AFS_USERSPACE_IP_ADDR 1
+#define RXK_LISTENER_ENV 1
+#define AFS_GCPAGS 0 /* if nonzero, garbage collect PAGs */
+
+#define afsio_iov uio_iov
+#define afsio_iovcnt uio_iovcnt
+#define afsio_offset uio_offset
+#define afsio_seg uio_segflg
+#define afsio_fmode uio_fmode
+#define afsio_resid uio_resid
+#define AFS_UIOSYS UIO_SYSSPACE
+#define AFS_UIOUSER UIO_USERSPACE
+#define AFS_CLBYTES MCLBYTES
+#define AFS_MINCHANGE 2
+#define VATTR_NULL usr_vattr_null
+
+#define AFS_DIRENT
+#ifndef CMSERVERPREF
+#define CMSERVERPREF
+#endif
+
+#if !defined(ASSEMBLER) && !defined(__LANGUAGE_ASSEMBLY__) && !defined(IGNORE_STDS_H)
+#include <limits.h>
+#include <sys/param.h>
+#include <sys/types.h>
+#include <sys/mount.h>
+#include <sys/fcntl.h>
+#include <netinet/in.h>
+#include <sys/uio.h>
+#include <sys/socket.h>
+#endif
+
+#endif /* !defined(UKERNEL) */
+
+#endif /* AFS_PARAM_COMMON_H */