STABLE12-sunx86-update-20030318

make client useful on solaris x86 again
This commit is contained in:
Joakim Fallsjö 2003-03-18 23:18:18 +00:00 committed by Derrick Brashear
parent 5020cd875f
commit 567b277d77
8 changed files with 253 additions and 12 deletions

View File

@ -0,0 +1,49 @@
# Keep macros within each section in sorted order for clean diff displays.
#
# AFS_OSTYPE used to indicate suffixes and os specific subdirectories.
AFS_OSTYPE = SOLARIS
#
# compilation and link editor flags
XCFLAGS=-dy -Bdynamic
MT_CFLAGS=-mt -DAFS_PTHREAD_ENV ${XCFLAGS}
PAM_CFLAGS = -KPIC
PAMLIBS= -lc -lpam -lsocket -lnsl -lm
LWP_OPTMZ=-g
OPTMZ=-O
DBG=-g
## Compilation flags for 64 bit Solaris
XCFLAGS64 = ${XCFLAGS} -xarch=v9
#
# libraries
XLIBS=@LIB_AFSDB@ -lsocket -lnsl -lintl -ldl
TXLIBS=-lcurses
MTLIBS=-lpthread -lsocket
XLIBELFA=-lelf
XLIBKVM=-lkvm
#
SHLIB_LINKER=${CC} -G -dy -Wl,-Mmapfile -Bsymbolic -z text
SHLIB_SUFFIX=so
SHLIB_CFLAGS=-KPIC
SHLIB_LDFLAGS = -G -Bsymbolic
#
# programs
AR=/usr/ccs/bin/ar
AS=as
CC=/opt/SUNWspro/bin/cc
MT_CC=/opt/SUNWspro/bin/cc
CP=/bin/cp
LEX=lex
LD= /usr/ccs/bin/ld
LORDER = /usr/ccs/bin/lorder
MV=mv
RANLIB=/bin/true
RM=rm
STRIP= /usr/ccs/bin/strip
INSTALL=${TOP_SRCDIR}/pinstall/pinstall
#
# this is for the vol package
FS_CONV_SOL26 = fs_conv_sol26
install_FS_CONV_SOL26 = $(DESTDIR)${afssrvsbindir}/fs_conv_sol26
dest_FS_CONV_SOL26 = $(DEST)/root.server/usr/afs/bin/fs_conv_sol26

View File

@ -88,6 +88,7 @@
they won't allocate sunx86 IDs at all. So leave a gap and pray. */
#define SYS_NAME_ID_sunx86_57 950
#define SYS_NAME_ID_sunx86_58 951
#define SYS_NAME_ID_sunx86_59 952
#define SYS_NAME_ID_vax_ul4 1003
#define SYS_NAME_ID_vax_ul40 1004

View File

@ -21,6 +21,7 @@
#define AFS_ENV 1
#define AFS_USR_SUN5_ENV 1
#define AFS_USR_SUN6_ENV 1
#define AFS_USR_SUN7_ENV 1
#include <afs/afs_sysnames.h>
@ -33,9 +34,9 @@
#define AFS_MOUNT_AFS 1
/* Machine / Operating system information */
#define sys_sun4x_55 1
#define SYS_NAME "sun4x_55"
#define SYS_NAME_ID SYS_NAME_ID_sun4x_55
#define sys_sunx86_57 1
#define SYS_NAME "sunx86_57"
#define SYS_NAME_ID SYS_NAME_ID_sunx86_57
#define AFSLITTLE_ENDIAN 1
#define AFS_HAVE_FFS 1 /* Use system's ffs. */
#define AFS_HAVE_STATVFS 0 /* System doesn't support statvfs */

View File

@ -21,6 +21,8 @@
#define AFS_ENV 1
#define AFS_USR_SUN5_ENV 1
#define AFS_USR_SUN6_ENV 1
#define AFS_USR_SUN7_ENV 1
#define AFS_USR_SUN8_ENV 1
#include <afs/afs_sysnames.h>
@ -33,9 +35,9 @@
#define AFS_MOUNT_AFS 1
/* Machine / Operating system information */
#define sys_sun4x_55 1
#define SYS_NAME "sun4x_55"
#define SYS_NAME_ID SYS_NAME_ID_sun4x_55
#define sys_sunx86_58 1
#define SYS_NAME "sunx86_58"
#define SYS_NAME_ID SYS_NAME_ID_sunx86_58
#define AFSLITTLE_ENDIAN 1
#define AFS_HAVE_FFS 1 /* Use system's ffs. */
#define AFS_HAVE_STATVFS 0 /* System doesn't support statvfs */

View File

@ -0,0 +1,123 @@
/*
* Copyright 2000, International Business Machines Corporation and others.
* All Rights Reserved.
*
* This software has been released under the terms of the IBM Public
* License. For details, see the LICENSE file in the top-level source
* directory or online at http://www.openafs.org/dl/license10.html
*/
#ifndef AFS_PARAM_H
#define AFS_PARAM_H
#define AFS_VFS_ENV 1
/* Used only in vfsck code; is it needed any more???? */
#define AFS_VFSINCL_ENV 1 /* NOBODY uses this.... */
#define AFS_GREEDY43_ENV 1 /* Used only in rx/rx_user.c */
#define AFS_ENV 1
#define AFS_SUN_ENV 1
#define AFS_SUN5_ENV 1
#define AFS_SUN52_ENV 1
#define AFS_SUN53_ENV 1
#define AFS_SUN54_ENV 1
#define AFS_SUN55_ENV 1
#define AFS_SUN56_ENV 1
#define AFS_SUN57_ENV 1
#define AFS_SUN58_ENV 1
#define AFS_SUN59_ENV 1
#define AFS_X86_ENV 1
#define AFS_64BIT_ENV 1 /* Defines afs_int32 as int, not long. */
#include <afs/afs_sysnames.h>
#define AFS_GLOBAL_SUNLOCK 1 /* For global locking */
#define RXK_LISTENER_ENV 1
#define AFS_GCPAGS 1 /* if nonzero, garbage collect PAGs */
#ifdef AFS_NAMEI_ENV
#define AFS_64BIT_IOPS_ENV 1 /* needed for NAMEI... */
#else /* AFS_NAMEI_ENV */
#define AFS_3DISPARES 1 /* Utilize the 3 available disk inode 'spares' */
#endif /* AFS_NAMEI_ENV */
#define AFS_SYSCALL 65
/* File system entry (used if mount.h doesn't define MOUNT_AFS */
#define AFS_MOUNT_AFS "afs"
/* Machine / Operating system information */
#define sys_sunx86_59 1
#define SYS_NAME "sunx86_59"
#define SYS_NAME_ID SYS_NAME_ID_sunx86_59
#define AFSLITTLE_ENDIAN 1
#define AFS_HAVE_FFS 1 /* Use system's ffs. */
#define AFS_HAVE_VXFS 1 /* Support cache on Veritas vxfs file system */
#define AFS_HAVE_STATVFS 1 /* System supports statvfs */
#define AFS_VM_RDWR_ENV 1 /* read/write implemented via VM */
#define AFS_USE_GETTIMEOFDAY 1 /* use gettimeofday to implement rx clock */
#define NEARINODE_HINT 1 /* hint to ufs module to scatter inodes on disk*/
#define nearInodeHash(volid, hval) { \
unsigned char* ts = (unsigned char*)&(volid)+sizeof(volid)-1;\
for ( (hval)=0; ts >= (unsigned char*)&(volid); ts--){\
(hval) *= 173; \
(hval) += *ts; \
} \
}
/* Extra kernel definitions (from kdefs file) */
#ifdef KERNEL
/* sun definitions here */
#define AFS_UIOFMODE 1 /* Only in afs/afs_vnodeops.c (afs_ustrategy) */
#define AFS_SYSVLOCK 1 /* sys v locking supported */
/*#define AFS_USEBUFFERS 1*/
#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 osi_GetTime(x) uniqtime(x)
/**
* These defines are for the 64 bit Solaris 7 port
* AFS_SYSCALL32 is used to protect the ILP32 syscall interface
* AFS_64BIT_ENV is for use of 64 bit inode numbers
*/
#if defined(__sparcv9)
#define AFS_SUN57_64BIT_ENV 1
#define AFS_64BIT_INO 1
#endif
/**
* Solaris 7 64 bit has two versions of uniqtime. Since we consistently
* use 32 bit quantities for time in afs, we now use uniqtime32
*/
#if defined(AFS_SUN57_64BIT_ENV)
#undef osi_GetTime
#define osi_GetTime(x) uniqtime32(x)
#endif
#define AFS_KALLOC(n) kmem_alloc(n, KM_SLEEP)
#define AFS_KALLOC_NOSLEEP(n) kmem_alloc(n, KM_NOSLEEP)
#define AFS_KFREE kmem_free
#define VATTR_NULL vattr_null
#define memset(A, B, S) bzero(A, S)
#define memcpy(B, A, S) bcopy(A, B, S)
#define memcmp(A, B, S) bcmp(A, B, S)
#endif /* KERNEL */
#define AFS_DIRENT
#ifndef CMSERVERPREF
#define CMSERVERPREF
#endif
#define ROOTINO UFSROOTINO
#endif /* AFS_PARAM_H */

View File

@ -0,0 +1,69 @@
/*
* Copyright 2000, International Business Machines Corporation and others.
* All Rights Reserved.
*
* This software has been released under the terms of the IBM Public
* License. For details, see the LICENSE file in the top-level source
* directory or online at http://www.openafs.org/dl/license10.html
*/
#ifndef AFS_PARAM_H
#define AFS_PARAM_H
#define AFS_VFS_ENV 1
/* Used only in vfsck code; is it needed any more???? */
#define RXK_LISTENER_ENV 1
#define AFS_USERSPACE_IP_ADDR 1
#define AFS_GCPAGS 0 /* if nonzero, garbage collect PAGs */
#define UKERNEL 1 /* user space kernel */
#define AFS_GREEDY43_ENV 1 /* Used only in rx/rx_user.c */
#define AFS_ENV 1
#define AFS_USR_SUN5_ENV 1
#define AFS_USR_SUN6_ENV 1
#define AFS_USR_SUN7_ENV 1
#define AFS_USR_SUN8_ENV 1
#define AFS_USR_SUN9_ENV 1
#include <afs/afs_sysnames.h>
/*#define AFS_GLOBAL_SUNLOCK 1 /* For global locking */
#define AFS_3DISPARES 1 /* Utilize the 3 available disk inode 'spares' */
#define AFS_SYSCALL 65
/* File system entry (used if mount.h doesn't define MOUNT_AFS */
#define AFS_MOUNT_AFS 1
/* Machine / Operating system information */
#define sys_sunx86_59 1
#define SYS_NAME "sunx86_59"
#define SYS_NAME_ID SYS_NAME_ID_sunx86_59
#define AFSLITTLE_ENDIAN 1
#define AFS_HAVE_FFS 1 /* Use system's ffs. */
#define AFS_HAVE_STATVFS 0 /* System doesn't support statvfs */
/* Extra kernel definitions (from kdefs file) */
#ifdef KERNEL
#define AFS_UIOFMODE 1 /* Only in afs/afs_vnodeops.c (afs_ustrategy) */
#define AFS_SYSVLOCK 1 /* sys v locking supported */
/*#define AFS_USEBUFFERS 1*/
#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 1
#define AFS_UIOUSER UIO_USERSPACE
#define AFS_CLBYTES MCLBYTES
#define AFS_MINCHANGE 2
#define VATTR_NULL usr_vattr_null
#endif /* KERNEL */
#define AFS_DIRENT
#ifndef CMSERVERPREF
#define CMSERVERPREF
#endif
#define ROOTINO UFSROOTINO
#endif /* AFS_PARAM_H */

View File

@ -63,7 +63,7 @@ install: ${DESTDIR}${sbindir}/inetd
dest: ${DEST}/etc/inetd
set -x; \
case "${SYS_NAME}" in \
sun4* ) \
sun* ) \
${INSTALL} -m 644 -f inetd.conf.solaris ${DEST}/etc/inetd.conf ;; \
sgi_* ) \
${INSTALL} -m 644 -f inetd.conf.sgi ${DEST}/etc/inetd.conf ;; \

View File

@ -55,7 +55,7 @@ process.o : process.s process.c
@case "$(SYS_NAME)" in \
pmax_he1) \
$(CC) -c -I${TOP_INCDIR} process.s;; \
sun4c_51 | sun4c_52 | sun4m_51 | sun4m_52 | sun4c_53 | sun4m_53 | sun4_53 | sun4_52 | sun4_54 | sun4c_54 | sun4m_54 | sun4x_5? | sunx86_54) \
sun4c_51 | sun4c_52 | sun4m_51 | sun4m_52 | sun4c_53 | sun4m_53 | sun4_53 | sun4_52 | sun4_54 | sun4c_54 | sun4m_54 | sun4x_5? | sunx86_5? | ncrx86_*) \
/usr/ccs/lib/cpp -P -I${TOP_INCDIR} process.s process.ss; \
${AS} process.ss -o process.o; \
$(RM) process.ss ;; \
@ -75,10 +75,6 @@ process.o : process.s process.c
$(RM) process.ss ;; \
hp* | *_linux* | sgi_64 | sgi_65 ) \
${CC} ${CFLAGS} -c process.c;; \
ncrx86_*) \
/usr/ccs/lib/cpp -P -I${TOP_INCDIR} process.s process.ss; \
${AS} -o process.o process.ss; \
$(RM) process.ss ;; \
alpha_osf1 | alpha_osf20 | alpha_osf30 | alpha_osf32 | alpha_osf32c | alpha_dux?? ) \
${AS} -v -P -DOSF -I${TOP_INCDIR} -DASSEMBLER process.s; \
${AS} -v process.i -o process.o;; \