From: neal@neal.ctd.comsat.com (Neal Becker)
Newsgroups: comp.sys.hp
Subject: Re: amd for HP 9000/7??
Date: 4 Sep 92 15:21:09 GMT
Organization: COMSAT Labs
NNTP-Posting-Host: neal.ctd.comsat.com
In-reply-to: heeres@uars_mag.jhuapl.edu's message of 4 Sep 92 12:46:00 GMT

>>>>> On 4 Sep 92 12:46:00 GMT, heeres@uars_mag.jhuapl.edu (Ken Heeres) said:

	Ken> I am looking for a version of amd for the HP 9000/7??, does anyone have pointer
	Ken> to it?  It is not on Iworks and the version I downloaded has configurations for
	Ken> HP 300 but not the 700.  
	Ken>   1. what version should I use
	Ken>   2. will amd reread its map file without restarting?

Get amd5.3-beta1 from usc.edu.  Here is hpux patches for it:

Note: This patch probably turns on a few things you may not want, that
reflects my local configuration.

diff -r -c amd5.3-beta1/Makefile.com amd5.3-beta1-hpux/Makefile.com
*** amd5.3-beta1/Makefile.com	Sat Mar  7 05:22:04 1992
--- amd5.3-beta1-hpux/Makefile.com	Tue Jul 21 17:13:50 1992
***************
*** 48,54 ****
  #
  
  # Where to install amd
! ETC = /usr/local/etc
  
  # With what to install amd
  INSTALL = install
--- 48,54 ----
  #
  
  # Where to install amd
! ETC = /local/etc
  
  # With what to install amd
  INSTALL = install
***************
*** 60,66 ****
  GCCOPTS = -W -Wunused -fstrength-reduce #-finline-functions -fcombine-regs
  
  # Basic C compiler options
! CCOPTS = -O
  
  # These are for testing/debugging...
  # Best to put your own definitions in Makefile.local.<foo>
--- 60,66 ----
  GCCOPTS = -W -Wunused -fstrength-reduce #-finline-functions -fcombine-regs
  
  # Basic C compiler options
! CCOPTS = -O -DINFORM_MOUNTD
  
  # These are for testing/debugging...
  # Best to put your own definitions in Makefile.local.<foo>
diff -r -c amd5.3-beta1/Makefile.top amd5.3-beta1-hpux/Makefile.top
*** amd5.3-beta1/Makefile.top	Sun May 31 12:37:20 1992
--- amd5.3-beta1-hpux/Makefile.top	Tue Jul 21 16:37:07 1992
***************
*** 44,53 ****
  SHELL = /bin/sh
  
  # Machine architecture
! ARCH = `PATH=$${PATH}:. /bin/sh ../config/arch`
  
  # O/S Name
! OS = `PATH=$${PATH}:. /bin/sh ../config/os-type`
  
  # version of make
  Make = make
--- 44,53 ----
  SHELL = /bin/sh
  
  # Machine architecture
! ARCH = `PATH=$${PATH}:. ${SHELL} ../config/arch`
  
  # O/S Name
! OS = `PATH=$${PATH}:. ${SHELL} ../config/os-type`
  
  # version of make
  Make = make
***************
*** 62,68 ****
  	hlh42 hpux irix3 irix4 next pyrOSx riscix sos3 sos4 \
  	stellix u2_2 u3_0 u4_0 u4_2 umax43 utek utx32 xinu43
  CHECK_OS = \
! 	case " ${OS_SUPPORTED} " in *" $${OS} "*) ;; \
  	*) case "$${OS}" in unknown);; *) echo "Unknown OS '$${OS}'";; esac; \
  	   echo "OS should be one of ${OS_SUPPORTED}"; \
  	   exit 1;; \
--- 62,68 ----
  	hlh42 hpux irix3 irix4 next pyrOSx riscix sos3 sos4 \
  	stellix u2_2 u3_0 u4_0 u4_2 umax43 utek utx32 xinu43
  CHECK_OS = \
!  	case " ${OS_SUPPORTED} " in *$${OS}*) ;; \
  	*) case "$${OS}" in unknown);; *) echo "Unknown OS '$${OS}'";; esac; \
  	   echo "OS should be one of ${OS_SUPPORTED}"; \
  	   exit 1;; \
diff -r -c amd5.3-beta1/amd/afs_ops.c amd5.3-beta1-hpux/amd/afs_ops.c
*** amd5.3-beta1/amd/afs_ops.c	Sun May 31 12:36:41 1992
--- amd5.3-beta1-hpux/amd/afs_ops.c	Tue Jul 21 16:38:50 1992
***************
*** 185,190 ****
--- 185,194 ----
  	if (strlen(fs_hostname) >= HOSTNAMESZ)
  		strcpy(fs_hostname + HOSTNAMESZ - 3, "..");
  #endif /* HOSTNAMESZ */
+ #ifdef NFSMNT_FSNAME
+ 	nfs_args.fsname = pid_fsname;
+ 	nfs_args.flags |= NFSMNT_FSNAME;
+ #endif /* NFSMNT_FSNAME */
  
  	/*
  	 * Parse a subset of the standard nfs options.  The
diff -r -c amd5.3-beta1/amd/info_hes.c amd5.3-beta1-hpux/amd/info_hes.c
*** amd5.3-beta1/amd/info_hes.c	Sun Feb  9 10:08:09 1992
--- amd5.3-beta1-hpux/amd/info_hes.c	Wed Jul 22 14:18:45 1992
***************
*** 107,113 ****
   * Do a Hesiod nameserver call.
   * Modify time is ignored by Hesiod - XXX
   */
! int hesiod_search P((mnt_map *m, char *map, char **pval, time_t *tp));
  int hesiod_search(m, map, key, pval, tp)
  mnt_map *m;
  char *map;
--- 107,113 ----
   * Do a Hesiod nameserver call.
   * Modify time is ignored by Hesiod - XXX
   */
! int hesiod_search P((mnt_map *m, char *map, char *key, char **pval, time_t *tp));
  int hesiod_search(m, map, key, pval, tp)
  mnt_map *m;
  char *map;
diff -r -c amd5.3-beta1/amd/nfs_ops.c amd5.3-beta1-hpux/amd/nfs_ops.c
*** amd5.3-beta1/amd/nfs_ops.c	Sun May 31 12:35:19 1992
--- amd5.3-beta1-hpux/amd/nfs_ops.c	Tue Jul 21 16:41:35 1992
***************
*** 542,547 ****
--- 542,551 ----
  	if (strlen(host) >= HOSTNAMESZ)
  		strcpy(host + HOSTNAMESZ - 3, "..");
  #endif /* HOSTNAMESZ */
+ #ifdef NFSMNT_FSNAME
+ 	nfs_args.fsname = fs_name;
+ 	nfs_args.flags |= NFSMNT_FSNAME;
+ #endif /* NFSMNT_FSNAME */
  
  	if (nfs_args.rsize = hasmntval(&mnt, "rsize"))
  		nfs_args.flags |= NFSMNT_RSIZE;
diff -r -c amd5.3-beta1/config/Makefile.config amd5.3-beta1-hpux/config/Makefile.config
*** amd5.3-beta1/config/Makefile.config	Sun Feb  9 10:10:57 1992
--- amd5.3-beta1-hpux/config/Makefile.config	Tue Jul 21 16:24:52 1992
***************
*** 52,58 ****
  # Define RESOLV if your C library does not include support
  # for Hesiod and/or Named.
  #
! #RESOLV = -lhesiod -lresolv
  
  #
  # Define XLIBDIR if you have libraries not on the standard
--- 52,58 ----
  # Define RESOLV if your C library does not include support
  # for Hesiod and/or Named.
  #
! RESOLV = -lhesiod # -lresolv
  
  #
  # Define XLIBDIR if you have libraries not on the standard
***************
*** 89,95 ****
  # Also define HAS_HESIOD_RELOAD to include zone
  # transfer code implementing "cache:=all"
  #
! #HAS_HESIOD_MAPS = -DHAS_HESIOD_MAPS -DHAS_HESIOD_RELOAD
  
  #
  # Include support for /etc/passwd
--- 89,95 ----
  # Also define HAS_HESIOD_RELOAD to include zone
  # transfer code implementing "cache:=all"
  #
! HAS_HESIOD_MAPS = -DHAS_HESIOD_MAPS -DHAS_HESIOD_RELOAD
  
  #
  # Include support for /etc/passwd
diff -r -c amd5.3-beta1/config/Makefile.hpux amd5.3-beta1-hpux/config/Makefile.hpux
*** amd5.3-beta1/config/Makefile.hpux	Sun Feb  9 10:10:06 1992
--- amd5.3-beta1-hpux/config/Makefile.hpux	Wed Jul 22 14:20:50 1992
***************
*** 44,50 ****
  
  #CC = gcc ${GCCOPTS}
  # Works only on HP300
! CC = cc -Wc,-Nd2000
  SYSCC = $(CC)
  # Works only Hp800
  # CC = cc
--- 44,51 ----
  
  #CC = gcc ${GCCOPTS}
  # Works only on HP300
! #CC = cc -Wc,-Nd2000
  SYSCC = $(CC)
  # Works only Hp800
  # CC = cc
+ CC = cc -D_HPUX_SOURCE
diff -r -c amd5.3-beta1/config/misc-hpux.h amd5.3-beta1-hpux/config/misc-hpux.h
*** amd5.3-beta1/config/misc-hpux.h	Sun Feb  9 10:10:04 1992
--- amd5.3-beta1-hpux/config/misc-hpux.h	Tue Jul 21 16:44:15 1992
***************
*** 49,54 ****
--- 49,56 ----
   * Isn't HP-UX wonderful!
   */
  
+ #include <unistd.h>
+ 
  /*
   * HP-UX specific definitions
   */
***************
*** 61,69 ****
  	int			timeo;		/* initial timeout in .1 secs */
  	int			retrans;	/* times to retry send */
  	char			*hostname;	/* server's name */
! #ifdef __hp9000s700 /* XXX for HPUX 8.0 */
! 	char			*fsname;	/* server's filesystem name */
! #endif
  };
  
  /*
--- 63,71 ----
  	int			timeo;		/* initial timeout in .1 secs */
  	int			retrans;	/* times to retry send */
  	char			*hostname;	/* server's name */
! #ifdef	_CS_MANPATH	/* to distinguish between HPUX 7.0 and 8.0 */
! 	char			*fsname;	/* server's fs path name */
! #endif	/* _CS_MANPATH */
  };
  
  /*
***************
*** 77,79 ****
--- 79,84 ----
  #define	NFSMNT_HOSTNAME	0x020	/* set hostname for error printf */
  #define	NFSMNT_INT	0x040	/* set option to have interruptable mounts */
  #define	NFSMNT_NODEVS   0x080   /* turn off device file access (default on) */
+ #ifdef	_CS_MANPATH	/* to distinguish between HPUX 7.0 and 8.0 */
+ #define NFSMNT_FSNAME   0x100   /* provide name of server's fs to system */
+ #endif	/* _CS_MANPATH */
diff -r -c amd5.3-beta1/config/os-hpux.h amd5.3-beta1-hpux/config/os-hpux.h
*** amd5.3-beta1/config/os-hpux.h	Sun Feb  9 10:10:03 1992
--- amd5.3-beta1-hpux/config/os-hpux.h	Tue Jul 21 16:33:43 1992
***************
*** 42,47 ****
--- 42,49 ----
   * HP/9000 HP-UX definitions for Amd (automounter)
   */
  
+ #include <unistd.h>
+ 
  /*
   * Does the compiler grok void *
   */
***************
*** 103,110 ****
--- 105,115 ----
  /*
   * Where to get union wait
   */
+ /*
  #undef WAIT
  #define	WAIT	"uwait.h"
+ */
+ #define _BSD
  #ifdef HPUX_VERSION_6
  #define SIGCHLD	SIGCLD
  #endif
***************
*** 131,136 ****
--- 136,151 ----
   * Additional fields in struct mntent
   * are fixed up here
   */
+ #ifdef	_CS_MANPATH	/* to distinguish between HPUX 7.0 and 8.0 */
+ #define FIXUP_MNTENT(mntp) { \
+ 	(mntp)->mnt_time = clocktime(); \
+ 	(mntp)->mnt_cnode = 0; \
+ }
+ #define FIXUP_MNTENT_DUP(mntp, mp) { \
+ 	(mntp)->mnt_time = (mp)->mnt_time; \
+ 	(mntp)->mnt_cnode = (mp)->mnt_cnode; \
+ }
+ #else	/* _CS_MANPATH */
  #define FIXUP_MNTENT(mntp) { \
  	(mntp)->mnt_time = clocktime(); \
  }
***************
*** 137,142 ****
--- 152,158 ----
  #define FIXUP_MNTENT_DUP(mntp, mp) { \
  	(mntp)->mnt_time = (mp)->mnt_time; \
  }
+ #endif	/* _CS_MANPATH */
  
  #define	bzero(ptr, len)	memset(ptr, 0, len)
  #define bcopy(from, to, len) memcpy(to, from, len)
Xref: sparky comp.sys.hp:10067 comp.unix.programmer:4543