diff -c mit/clients/xman/ScrollByL.c:1.1.1.2 mit/clients/xman/ScrollByL.c:1.6
*** mit/clients/xman/ScrollByL.c:1.1.1.2	Mon Oct 25 21:24:39 1993
--- mit/clients/xman/ScrollByL.c	Mon Oct 25 21:24:39 1993
***************
*** 1,8 ****
  /*
   * xman - X window system manual page display program.
   *
   * $XConsortium: ScrollByL.c,v 1.27 91/07/26 18:30:47 dave Exp $
-  * $Header: ScrollByL.c,v 1.27 91/07/26 18:30:47 dave Exp $
   *
   * Copyright 1987, 1988 Massachusetts Institute of Technology
   *
--- 1,8 ----
  /*
   * xman - X window system manual page display program.
   *
+  * $XFree86: mit/clients/xman/ScrollByL.c,v 1.6 1993/03/27 08:42:42 dawes Exp $
   * $XConsortium: ScrollByL.c,v 1.27 91/07/26 18:30:47 dave Exp $
   *
   * Copyright 1987, 1988 Massachusetts Institute of Technology
   *
***************
*** 105,116 ****
    { "Page",   Page},
  };
  
! #define superclass		(&simpleClassRec)
  
  ScrollByLineClassRec scrollByLineClassRec = {
    {
  /* core_class fields      */
!     /* superclass         */    (WidgetClass) superclass,
      /* class_name         */    "ScrollByLine",
      /* widget_size        */    sizeof(ScrollByLineRec),
      /* class_initialize   */    NULL,
--- 105,116 ----
    { "Page",   Page},
  };
  
! #define SuperClass		simpleWidgetClass
  
  ScrollByLineClassRec scrollByLineClassRec = {
    {
  /* core_class fields      */
!     /* superclass         */    (WidgetClass) (&simpleClassRec),
      /* class_name         */    "ScrollByLine",
      /* widget_size        */    sizeof(ScrollByLineRec),
      /* class_initialize   */    NULL,
***************
*** 447,453 ****
  int old_y, new_y, height;
  {
    ScrollByLineWidget sblw = (ScrollByLineWidget) w;
!   int from_left = sblw->scroll.indent + sblw->scroll.offset;
    int y_clear;
  
    old_y *= sblw->scroll.font_height;
--- 447,453 ----
  int old_y, new_y, height;
  {
    ScrollByLineWidget sblw = (ScrollByLineWidget) w;
!   int from_left = sblw->scroll.indent + sblw->scroll.offset - 1;
    int y_clear;
  
    old_y *= sblw->scroll.font_height;
***************
*** 477,483 ****
  	    (unsigned int) w->core.width - from_left, (unsigned int) height,
  	    from_left, new_y);
  
!   height -= sblw->scroll.font_height/2;	/* clear 1/2 font of extra space,
  					   to make sure we don't lose or
  					   gain decenders. */
    if (old_y > new_y)
--- 477,483 ----
  	    (unsigned int) w->core.width - from_left, (unsigned int) height,
  	    from_left, new_y);
  
!   height -= sblw->scroll.font_height;	/* clear 1 font of extra space,
  					   to make sure we don't lose or
  					   gain decenders. */
    if (old_y > new_y)
***************
*** 685,691 ****
    CreateScrollbar(w);
    CreateGCs(w);
    Layout(w);
!   (*superclass->core_class.realize) (w, valueMask, attributes);
    XtRealizeWidget(sblw->scroll.bar); /* realize scrollbar. */
    XtMapWidget(sblw->scroll.bar); /* map scrollbar. */
  
--- 685,691 ----
    CreateScrollbar(w);
    CreateGCs(w);
    Layout(w);
!   (*SuperClass->core_class.realize) (w, valueMask, attributes);
    XtRealizeWidget(sblw->scroll.bar); /* realize scrollbar. */
    XtMapWidget(sblw->scroll.bar); /* map scrollbar. */
  
***************
*** 1225,1228 ****
    return(1);
  }
  
! #undef superclass
--- 1225,1228 ----
    return(1);
  }
  
! #undef SuperClass
diff -c mit/clients/xman/defs.h:1.1.1.1 mit/clients/xman/defs.h:2.0
*** mit/clients/xman/defs.h:1.1.1.1	Mon Oct 25 01:51:28 1993
--- mit/clients/xman/defs.h	Mon Oct 25 01:51:28 1993
***************
*** 1,6 ****
--- 1,7 ----
  /*
   * xman - X window system manual page display program.
   *
+  * $XFree86: mit/clients/xman/defs.h,v 2.0 1993/10/18 12:04:43 dawes Exp $
   * $XConsortium: defs.h,v 1.24 91/02/13 16:08:07 converse Exp $
   *
   * Copyright 1987, 1988 Massachusetts Institute of Technology
***************
*** 81,87 ****
  
  #define NO_SECTION_DEFAULTS ("no default sections")
  
! #define TBL "tbl"
  
  #define DEFAULT_WIDTH 500	/* The default width of xman. */
  #define SECTALLOC  8		/* The number of entries allocated
--- 82,92 ----
  
  #define NO_SECTION_DEFAULTS ("no default sections")
  
! #if !defined(linux)
! # define TBL "tbl"
! #else
! # define TBL "gtbl"
! #endif
  
  #define DEFAULT_WIDTH 500	/* The default width of xman. */
  #define SECTALLOC  8		/* The number of entries allocated
diff -c mit/clients/xman/main.c:1.1.1.2 mit/clients/xman/main.c:1.3
*** mit/clients/xman/main.c:1.1.1.2	Mon Oct 25 01:51:28 1993
--- mit/clients/xman/main.c	Mon Oct 25 01:51:28 1993
***************
*** 1,6 ****
--- 1,7 ----
  /*
   * xman - X window system manual page display program.
   *
+  * $XFree86: mit/clients/xman/main.c,v 1.3 1993/04/11 13:24:27 dawes Exp $
   * $XConsortium: main.c,v 1.21 91/09/03 18:16:55 dave Exp $
   *
   * Copyright 1987, 1988 Massachusetts Institute of Technology
***************
*** 29,34 ****
--- 30,36 ----
  #endif
  
  static void ArgError();
+ static void AdjustDefResources();
  
  #define Offset(field) (XtOffsetOf(Xman_Resources , field))
  
***************
*** 137,142 ****
--- 139,146 ----
  
    manglobals_context = XStringToContext(MANNAME);
  
+   AdjustDefResources();
+ 
    XtGetApplicationResources( initial_widget, (caddr_t) &resources, 
  			    my_resources, XtNumber(my_resources),
  			    NULL, (Cardinal) 0);
***************
*** 239,243 ****
--- 243,275 ----
    while ( *syntax != NULL ) {
      printf("%-30s - %s\n", syntax[0], syntax[1]);
      syntax += 2;
+   }
+ }
+ 
+ /*	Function Name: AdjustDefResources
+  *	Description: Changes default resources which contain paths when
+  *		XWINHOME is set
+  *	Arguments: none
+  *	Returns: nothing
+  */
+ 
+ static void
+ AdjustDefResources()
+ {
+   char	*xwinhome = NULL;
+   int	i;
+ 
+   if (!(xwinhome = getenv("XWINHOME")))
+     return;
+ 
+   for (i = 0; i < sizeof(my_resources)/sizeof(XtResource); i++) {
+     if (!strcmp(my_resources[i].resource_name, "helpFile")) {
+       if (!(my_resources[i].default_addr =
+ 		malloc(strlen(xwinhome) + sizeof("/lib/X11/xman.help")))) {
+         fprintf(stderr, "malloc failure\n");
+         exit(1);
+       }
+       sprintf(my_resources[i].default_addr, "%s/lib/X11/xman.help", xwinhome);
+     }
    }
  }
diff -c mit/clients/xman/man.c:1.1.1.1 mit/clients/xman/man.c:2.0
*** mit/clients/xman/man.c:1.1.1.1	Mon Oct 25 01:51:29 1993
--- mit/clients/xman/man.c	Mon Oct 25 01:51:29 1993
***************
*** 1,6 ****
--- 1,7 ----
  /*
   * xman - X Window System manual page display program.
   *
+  * $XFree86: mit/clients/xman/man.c,v 2.0 1993/07/28 11:52:54 dawes Exp $
   * $XConsortium: man.c,v 1.29 91/07/30 22:03:20 rws Exp $
   *
   * Copyright 1987, 1988 Massachusetts Institute of Technology
***************
*** 47,52 ****
--- 48,57 ----
  static void AddToCurrentSection();
  static void ReadCurrentSection();
  
+ #ifdef MANCONF
+ Bool ReadManConfig();
+ #endif
+ 
  #define SECT_ERROR -1
  
  /*	Function Name: Man
***************
*** 69,79 ****
  
    ptr = getenv("MANPATH");
    if (ptr == NULL || streq(ptr , "") ) {
!     strcpy(manpath, SYSMANPATH);
  #ifdef LOCALMANPATH
!     strcat(manpath, ":");
!     strcat(manpath, LOCALMANPATH);
  #endif
    } else {
      strcpy(manpath, ptr);
    }
--- 74,89 ----
  
    ptr = getenv("MANPATH");
    if (ptr == NULL || streq(ptr , "") ) {
! #ifdef MANCONF
!     if (!ReadManConfig(manpath))
! #endif
!     {
!       strcpy(manpath, SYSMANPATH);
  #ifdef LOCALMANPATH
!       strcat(manpath, ":");
!       strcat(manpath, LOCALMANPATH);
  #endif
+     }
    } else {
      strcpy(manpath, ptr);
    }
***************
*** 112,118 ****
        else {
  	if ( ++sect >= num_alloced ) {
  	  num_alloced += SECTALLOC;
! 	  manual = (Manual *) realloc ( (char *) manual,
  				        (sizeof(Manual) * num_alloced));
  	  if (manual == NULL) 
  	    PrintError("Could not allocate memory for manual sections.");
--- 122,128 ----
        else {
  	if ( ++sect >= num_alloced ) {
  	  num_alloced += SECTALLOC;
! 	  manual = (Manual *) XtRealloc ( (char *) manual,
  				        (sizeof(Manual) * num_alloced));
  	  if (manual == NULL) 
  	    PrintError("Could not allocate memory for manual sections.");
***************
*** 141,147 ****
   * realloc manual to be minimum space necessary.
   */
  
!   manual = (Manual *) realloc( (char *) manual, (sizeof(Manual) * sect));
    if (manual == NULL) 
      PrintError("Could not allocate memory for manual sections.");
  
--- 151,157 ----
   * realloc manual to be minimum space necessary.
   */
  
!   manual = (Manual *) XtRealloc( (char *) manual, (sizeof(Manual) * sect));
    if (manual == NULL) 
      PrintError("Could not allocate memory for manual sections.");
  
***************
*** 368,374 ****
--- 378,388 ----
   */
  
    if ( (ptr = rindex(path, '.')) != NULL) 
+ #if !defined(SCO) && !defined(ISC)
      if (streq(ptr + 1, COMPRESSION_EXTENSION)) 
+ #else
+     if (strpbrk(ptr + 1, COMPRESSION_EXTENSIONS) != NULL)
+ #endif
        *ptr = '\0';
    
    nentries = local_manual->nentries;
***************
*** 397,403 ****
--- 411,421 ----
   */
  
      if ( (ptr = rindex(full_name, '.')) != NULL) 
+ #if !defined(SCO) && !defined(ISC)
        if (streq(ptr + 1, COMPRESSION_EXTENSION)) 
+ #else
+       if (strpbrk(ptr + 1, COMPRESSION_EXTENSIONS) != NULL)
+ #endif
  	*ptr = '\0';
      local_manual->entries[nentries] = StrAlloc(full_name);
      local_manual->entries_less_paths[nentries] = 
***************
*** 896,898 ****
--- 914,958 ----
  }
  
  #endif /* DEBUG */
+ 
+ #ifdef MANCONF
+ 
+ /*	Function Name: ReadManConfig
+  *	Description: Reads man.conf file used by BSD 4.4
+  *      Argument: manpath - char array to return path in.
+  *	Returns: TRUE if read was successful.
+  */
+ 
+ Bool
+ ReadManConfig(manpath)
+ 
+ char	manpath[];
+ 
+ {
+   FILE	*fp;
+   char	line[BUFSIZ];
+   char	*path;
+   Bool  firstpath = TRUE;
+ 
+   if (!(fp = fopen(MANCONF, "r")))
+     return(FALSE);
+ 
+   while (fgets(line, sizeof(line), fp)) {
+     path = strtok(line, " \t\n");
+     if (!path || *path == '#' || strcmp(path, "_default"))
+       continue;
+     while (path = strtok((char *)NULL, " \t\n")) {
+       if (firstpath) {
+         strcpy(manpath, path);
+         firstpath = FALSE;
+       }
+       else {
+         strcat(manpath, ":");
+         strcat(manpath, path);
+       }
+     }
+   }
+   fclose(fp);
+   return(!firstpath);
+ }
+ #endif /* MANCONF */
diff -c mit/clients/xman/misc.c:1.1.1.2 mit/clients/xman/misc.c:2.0
*** mit/clients/xman/misc.c:1.1.1.2	Mon Oct 25 01:51:30 1993
--- mit/clients/xman/misc.c	Mon Oct 25 01:51:30 1993
***************
*** 1,6 ****
--- 1,7 ----
  /*
   * xman - X window system manual page display program.
   *
+  * $XFree86: mit/clients/xman/misc.c,v 2.0 1993/07/28 11:52:57 dawes Exp $
   * $XConsortium: misc.c,v 1.29 91/09/03 18:21:49 dave Exp $
   *
   * Copyright 1987, 1988 Massachusetts Institute of Technology
***************
*** 31,36 ****
--- 32,46 ----
  static Boolean UncompressNamed(), UncompressUnformatted();
  extern int errno;		/* error codes. */
  
+ #if defined(ISC) || defined(SCO)
+ static char *uncompress_format = NULL;
+ static char *uncompress_formats[] =
+ 	{  UNCOMPRESS_FORMAT_1,
+ 	   UNCOMPRESS_FORMAT_2,
+ 	   UNCOMPRESS_FORMAT_3
+ 	};
+ #endif
+ 
  /*	Function Name: PopupWarning
   *	Description: This function pops upa warning message.
   *	Arguments: string - the specific warning string.
***************
*** 182,187 ****
--- 192,200 ----
    char filename[BUFSIZ];
    char * entry = manual[section_num].entries[entry_num];
    int len_cat = strlen(CAT);
+ #if defined(ISC) || defined(SCO)
+   int i;
+ #endif
  
    temp = CreateManpageName(entry);
    sprintf(man_globals->manpage_title, "The current manual page is: %s.", temp);
***************
*** 201,210 ****
--- 214,237 ----
   * Then for compressed files in an uncompressed directory.
   */
  
+ #if !defined(ISC) && !defined(SCO)
    sprintf(filename, "%s/%s%s/%s.%s", path, CAT, 
  	  section + len_cat, page, COMPRESSION_EXTENSION);
+ #else
+   for(i = 0; i < strlen(COMPRESSION_EXTENSIONS); i++) {
+       sprintf(filename, "%s/%s%s/%s.%c", path, CAT,
+ 	      section + len_cat, page, COMPRESSION_EXTENSIONS[i]);
+       uncompress_format = uncompress_formats[i];
+ #ifdef DEBUG
+       printf("Trying .%c ...\n", COMPRESSION_EXTENSIONS[i]);
+ #endif
+ #endif
    if ( (file = Uncompress(man_globals, filename)) != NULL) 
      return(file);
+ 
+ #if defined(ISC) || defined(SCO)
+   }
+ #endif
  
  /*
   * And lastly files in a compressed directory.
diff -c mit/clients/xman/search.c:1.1.1.1 mit/clients/xman/search.c:1.3
*** mit/clients/xman/search.c:1.1.1.1	Mon Oct 25 01:51:31 1993
--- mit/clients/xman/search.c	Mon Oct 25 01:51:31 1993
***************
*** 1,6 ****
--- 1,7 ----
  /*
   * xman - X window system manual page display program.
   *
+  * $XFree86: mit/clients/xman/search.c,v 1.3 1993/03/27 08:42:44 dawes Exp $
   * $XConsortium: search.c,v 1.20 91/07/21 21:28:09 rws Exp $
   *
   * Copyright 1987, 1988 Massachusetts Institute of Technology
***************
*** 29,34 ****
--- 30,39 ----
  FILE * DoManualSearch();
  static int BEntrySearch();
  
+ #ifdef MANCONF
+ Bool ReadManConfig();
+ #endif
+ 
  /*	Function Name: MakeSearchWidget
   *	Description: This Function Creates the Search Widget.
   *	Arguments: man_globals - the pseudo globas for this manpage.
***************
*** 172,182 ****
  
    manpath=getenv("MANPATH");
    if (manpath == NULL || streq(manpath,"") ) {
!     strcpy(path,SYSMANPATH);
  #ifdef LOCALMANPATH
!     strcat(path,":");
!     strcat(path,LOCALMANPATH);
  #endif
    } else {
      strcpy(path,manpath);
    }
--- 177,192 ----
  
    manpath=getenv("MANPATH");
    if (manpath == NULL || streq(manpath,"") ) {
! #ifdef MANCONF
!     if (!ReadManConfig(path))
! #endif
!     {
!       strcpy(path,SYSMANPATH);
  #ifdef LOCALMANPATH
!       strcat(path,":");
!       strcat(path,LOCALMANPATH);
  #endif
+     }
    } else {
      strcpy(path,manpath);
    }
diff -c mit/clients/xman/vendor.c:1.1.1.1 mit/clients/xman/vendor.c:2.1
*** mit/clients/xman/vendor.c:1.1.1.1	Mon Oct 25 01:51:31 1993
--- mit/clients/xman/vendor.c	Mon Oct 25 01:51:31 1993
***************
*** 1,3 ****
--- 1,4 ----
+ /* $XFree86: mit/clients/xman/vendor.c,v 2.1 1993/09/24 17:06:13 dawes Exp $ */
  
  /* Vendor-specific data structures and operations */
  
***************
*** 9,15 ****
      char *	suffix;
  } SectionNameRec;
  
! #ifdef SYSV
  
  static SectionNameRec SectionNames[] = {
      {"(1) User Commands",		"1"},
--- 10,16 ----
      char *	suffix;
  } SectionNameRec;
  
! #if defined(SYSV) || defined(SVR4)
  
  static SectionNameRec SectionNames[] = {
      {"(1) User Commands",		"1"},
***************
*** 24,29 ****
--- 25,60 ----
      {"(l) Local",			"l"},
      {"(n) New",				"n"},
      {"(o) Old",				"o"}
+ #ifdef SCO
+ 	,
+ 	{ "(ADM) System Administration", "ADM" },
+ 	{ "(ADMN) Network Administration", "ADMN" },
+ 	{ "(ADMP) Protocol Administration", "ADMP" },
+ 	{ "(C) Commands", "C" },
+ 	{ "(CMD) DOS Commands", "CMD" },
+ 	{ "(CP) Programming Commands", "CP" },
+ 	{ "(DOS) DOS Subroutines and Libraries", "DOS" },
+ 	{ "(F) File Formats", "F" },
+ 	{ "(HW) Hardware Dependant", "HW" },
+ 	{ "(K) Kernel Subroutines", "K" },
+ 	{ "(LOCAL) Local utilities for your system", "LOCAL" },
+ 	{ "(M) Miscellaneous", "M" },
+ 	{ "(NADM) NFS Administration", "NADM" },
+ 	{ "(NC) Network Commands", "NC" },
+ 	{ "(NF) Network File Formats", "NF" },
+ 	{ "(NS) Network Subroutines", "NS" },
+ 	{ "(NSL) Network Services", "NSL" },
+ 	{ "(S) Subroutines and Libraries", "S" },
+ 	{ "(SCO) Product Engineering Toolkit", "SCO" },
+ 	{ "(SFF) Socket File Formats", "SFF" },
+ 	{ "(STR) Streams", "STR" },
+ 	{ "(TC) Transport Layer Commands", "TC" },
+ 	{ "(X) X Man pages", "X" },
+ 	{ "(XNX) Xenix Subroutines, Commands and Libs", "XNX" },
+ 	{ "(XS) X11 Subroutines and Libraries", "XS" },
+ 	{ "(Xm) Motif Commands and Subroutines", "Xm" },
+ 	{ "(Xt) X Intrinsics", "Xt" }
+ #endif
  };
  
  #else
diff -c mit/clients/xman/vendor.h:1.1.1.1 mit/clients/xman/vendor.h:2.1
*** mit/clients/xman/vendor.h:1.1.1.1	Mon Oct 25 01:51:32 1993
--- mit/clients/xman/vendor.h	Mon Oct 25 01:51:32 1993
***************
*** 1,4 ****
--- 1,5 ----
  /*
+  * $XFree86: mit/clients/xman/vendor.h,v 2.1 1993/07/28 11:53:01 dawes Exp $
   * $XConsortium: vendor.h,v 1.7 91/08/20 14:27:57 gildea Exp $
   *
   * Copyright 1991 Massachusetts Institute of Technology
***************
*** 35,44 ****
  #  define SEARCHDIR  MAN
  #endif
  
! #if ( defined(sgi) || defined(SYSV386) )
  # define SEARCHOTHER CAT
  #endif
  
  /*
   * The default manual page directory.
   *
--- 36,49 ----
  #  define SEARCHDIR  MAN
  #endif
  
! #if ( defined(sgi) || defined(SYSV386) || defined(__386BSD__) || defined(linux) )
  # define SEARCHOTHER CAT
  #endif
  
+ #if defined(__386BSD__)
+ # define MANCONF "/etc/man.conf"
+ #endif
+ 
  /*
   * The default manual page directory.
   *
***************
*** 50,62 ****
  #ifdef macII
  #  define SYSMANPATH "/usr/catman/u_man:/usr/catman/a_man"
  #endif /* macII */
! #ifdef SVR4
  #  define SYSMANPATH "/usr/share/man"
! #endif /* SVR4 */
  #ifdef hcx
  #  define SYSMANPATH "/usr/catman/local_man:/usr/catman/u_man:/usr/catman/a_man:/usr/catman/p_man:/usr/catman/ada_man"
  #endif /* hcx */
! #if defined(SYSV) && defined(SYSV386)
  #  define SYSMANPATH "/usr/catman/u_man:/usr/catman/p_man"
  #endif /* SYSV386 */
  #ifdef sgi
--- 55,67 ----
  #ifdef macII
  #  define SYSMANPATH "/usr/catman/u_man:/usr/catman/a_man"
  #endif /* macII */
! #if defined(SVR4) || defined(__386BSD__)
  #  define SYSMANPATH "/usr/share/man"
! #endif /* SVR4 || __386BSD__ */
  #ifdef hcx
  #  define SYSMANPATH "/usr/catman/local_man:/usr/catman/u_man:/usr/catman/a_man:/usr/catman/p_man:/usr/catman/ada_man"
  #endif /* hcx */
! #if defined(SYSV) && defined(SYSV386) && !defined(SCO)
  #  define SYSMANPATH "/usr/catman/u_man:/usr/catman/p_man"
  #endif /* SYSV386 */
  #ifdef sgi
***************
*** 73,79 ****
   * Compression Definitions.
   */
  
! #if defined( macII ) || defined( hcx ) || (defined(SYSV) && defined(SYSV386)) || defined(sgi)
  #  define COMPRESSION_EXTENSION   "z"
  #  define UNCOMPRESS_FORMAT       "pcat %s > %s"
  #  define NO_COMPRESS		/* mac can't handle using pack as a filter and
--- 78,84 ----
   * Compression Definitions.
   */
  
! #if defined( macII ) || defined( hcx ) || (defined(SYSV) && defined(SYSV386) && !defined(ISC) && !defined(SCO)) || defined(sgi)
  #  define COMPRESSION_EXTENSION   "z"
  #  define UNCOMPRESS_FORMAT       "pcat %s > %s"
  #  define NO_COMPRESS		/* mac can't handle using pack as a filter and
***************
*** 84,92 ****
  #    define UNCOMPRESS_FORMAT     "ccat < %s > %s"
  #    define COMPRESS              "compact"
  #  else
! #    define COMPRESSION_EXTENSION "Z"
! #    define UNCOMPRESS_FORMAT     "zcat < %s > %s"
! #    define COMPRESS              "compress"
  #  endif /* UTEK */
  #endif /* macII, hcx, SYSV386, sgi */
  
--- 89,111 ----
  #    define UNCOMPRESS_FORMAT     "ccat < %s > %s"
  #    define COMPRESS              "compact"
  #  else
! #    if defined (ISC) || defined(SCO)
! #      define COMPRESSION_EXTENSION   "Z"	/* dummy */
! #      ifndef SCO
! #        define COMPRESSION_EXTENSIONS  "zZF"	/* pack, compress, freeze */
! #      else
! #        define COMPRESSION_EXTENSIONS  "zZ"	/* pack, compress */
! #      endif
! #      define UNCOMPRESS_FORMAT       uncompress_format
! #      define UNCOMPRESS_FORMAT_1     "pcat %s > %s"
! #      define UNCOMPRESS_FORMAT_2     "zcat < %s > %s"
! #      define UNCOMPRESS_FORMAT_3     "fcat < %s > %s"
! #      define NO_COMPRESS
! #    else
! #      define COMPRESSION_EXTENSION "Z"
! #      define UNCOMPRESS_FORMAT     "zcat < %s > %s"
! #      define COMPRESS              "compress"
! #    endif /* ISC */
  #  endif /* UTEK */
  #endif /* macII, hcx, SYSV386, sgi */
  
***************
*** 109,115 ****
  #if defined( ultrix )
  #  define FORMAT "| nroff -man"             /* The format command. */
  #else
! #  define FORMAT "| neqn | nroff -man"      /* The format command. */
  #endif
  
  /*
--- 128,145 ----
  #if defined( ultrix )
  #  define FORMAT "| nroff -man"             /* The format command. */
  #else
! #  ifdef __386BSD__
! #    define FORMAT "| eqn | tbl | nroff -man"
! #  else
! #    ifdef linux
! #      define linux_GROFF		/* undef this to use nroff instead */
! #    endif /* linux */
! #    ifdef linux_GROFF
! #      define FORMAT "| geqn | gtbl | groff -Tascii -man"
! #    else
! #      define FORMAT "| neqn | nroff -man"      /* The format command. */
! #    endif /* linux_GROFF */
! #  endif
  #endif
  
  /*
***************
*** 123,129 ****
   * The Apple, Cray,, SYSV386, and HCX folks put the preformatted pages in the
   * "man" directories.
   */
! #  define CAT MAN
  #else
  #  define CAT "cat"
  #endif
--- 153,163 ----
   * The Apple, Cray,, SYSV386, and HCX folks put the preformatted pages in the
   * "man" directories.
   */
! #  ifdef SCO
! #    define CAT "cat."
! #  else
! #    define CAT MAN
! #  endif
  #else
  #  define CAT "cat"
  #endif
