🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

1 total messages Started by Alexander Dupuy Wed, 30 Aug 1989 21:00
Make 3.55 patches/enhancements
#385
Author: Alexander Dupuy
Date: Wed, 30 Aug 1989 21:00
266 lines
7772 bytes
A few minor fixes for GNU Make 3.55; relevant RCS log messages follow:

An extra comment line in Makefile was deleted

The default rule for building dvi from texinfo used mv on the auxiliary files;
as a result, crossreferences were never right; changed to use cp instead.

Some BSD variants (4.3BSD+NFS, 4.2?) don't have <fcntl.h>, so always use
<sys/file.h> instead, which is what is really wanted.

Improve error checking for /dev/kmem, /vmunix files in load.c

Allow use of vfork on USG machines which have it (HP-UX).

Fix bug in dup2() emulation code which caused it always to fail (it's only used
in the shell function, so I guess nobody else uses that on USG systems :-).

Eliminate a redundant #include of <errno.h> in dup2 code.

@alex


RCS file:        RCS/Makefile,v;   Working file:    Makefile
----------------------------
revision 3.55.1.1        
date: 89/08/30 13:43:30;  author: dupuy;  state: Exp;  lines added/del: 0/1
delete extra line in comment
=============================================================================

RCS file:        RCS/default.c,v;   Working file:    default.c
----------------------------
revision 3.55.1.1        
date: 89/08/30 15:21:46;  author: dupuy;  state: Exp;  lines added/del: 1/1
better rule for %.dvi: %.texinfo
=============================================================================

RCS file:        RCS/load.c,v;   Working file:    load.c
----------------------------
revision 3.55.1.1        
date: 89/08/30 15:41:58;  author: dupuy;  state: Exp;  lines added/del: 31/7
add error messages, some BSD variants have no <fcntl.h>
=============================================================================

RCS file:        RCS/job.c,v;   Working file:    job.c
----------------------------
revision 3.55.1.1        
date: 89/08/30 16:39:12;  author: dupuy;  state: Exp;  lines added/del: 2/5
add conditionalization for vfork (HP-UX)
eliminate extra inclusion of <errno.h>
fix dup2 implementation
=============================================================================

RCS file:        RCS/remake.c,v;   Working file:    remake.c
----------------------------
revision 3.55.1.1        
date: 89/08/30 15:53:04;  author: dupuy;  state: Exp;  lines added/del: 2/2
some BSD variants have no <fcntl.h>
=============================================================================

*** /tmp/,RCSt1a10936	Wed Aug 30 13:43:12 1989
--- Makefile	Wed Aug 30 13:42:26 1989
***************
*** 36,42 ****
  # "/vmunix", LDAV_SYMBOL if not "_avenrun", LDAV_TYPE if not `long int',
  # and LDAV_CVT to convert the LDAV_TYPE value from LDAV_SYMBOL (in `load')
  # to a double if this is not "(double) load".  If the `n_name' member of a
- # If no load average determination can be done, define NO_LDAV.
  # `struct nlist' is an array that must be copied into, define NLIST_NAME_ARRAY.
  # Otherwise, define NO_LDAV.
  LOAD_AVG =
--- 36,41 ----
*** /tmp/,RCSt1a14678	Wed Aug 30 15:38:23 1989
--- default.c	Wed Aug 30 15:22:18 1989
***************
*** 150,156 ****
      "$(TEXINDEX) $(wildcard $(foreach _s_,cp fn ky pg tp vr,\
  $*.$(_s_)))\n\
       -$(foreach _f_,$(wildcard $(foreach _s_,aux cp fn ky pg tp vr,\
! $*.$(_s_))),mv $(_f_) $(_f_)O;)\n\
       -$(TEX) $< \n\
       $(foreach _f_,$(wildcard $(foreach _s_,aux cp fn ky pg tp vr,\
  $*.$(_s_))),cmp -s $(_f_)O $(_f_) ||) \\\n\
--- 150,156 ----
      "$(TEXINDEX) $(wildcard $(foreach _s_,cp fn ky pg tp vr,\
  $*.$(_s_)))\n\
       -$(foreach _f_,$(wildcard $(foreach _s_,aux cp fn ky pg tp vr,\
! $*.$(_s_))),cp $(_f_) $(_f_)O;)\n\
       -$(TEX) $< \n\
       $(foreach _f_,$(wildcard $(foreach _s_,aux cp fn ky pg tp vr,\
  $*.$(_s_))),cmp -s $(_f_)O $(_f_) ||) \\\n\

*** /tmp/,RCSt1a16807	Wed Aug 30 16:38:52 1989
--- job.c	Wed Aug 30 16:33:15 1989
***************
*** 27,33 ****
  
  extern char **construct_command_argv ();
  
! #ifdef	USG
  #define	vfork	fork
  #define	VFORK_NAME	"fork"
  #else	/* Not USG.  */
--- 27,33 ----
  
  extern char **construct_command_argv ();
  
! #ifdef	USG && !defined(HAVE_VFORK)
  #define	vfork	fork
  #define	VFORK_NAME	"fork"
  #else	/* Not USG.  */
***************
*** 989,997 ****
  
  #if	defined(USG) && !defined(USGr3) && !defined(HAVE_DUP2)
  
- #include <errno.h>
- extern int errno;
- 
  int
  dup2 (old, new)
       int old, new;
--- 989,994 ----
***************
*** 1000,1006 ****
  
    (void) close (new);
    fd = dup (old);
!   if (fd != old)
      {
        (void) close (fd);
        errno = EMFILE;
--- 997,1003 ----
  
    (void) close (new);
    fd = dup (old);
!   if (fd != new)
      {
        (void) close (fd);
        errno = EMFILE;

*** /tmp/,RCSt1a14764	Wed Aug 30 15:41:32 1989
--- load.c	Wed Aug 30 15:40:16 1989
***************
*** 128,134 ****
--- 128,138 ----
  #endif
  
  #include <nlist.h>
+ #ifdef USG
  #include <fcntl.h>
+ #else
+ #include <sys/file.h>
+ #endif
  
  /* Return the current load average as a double.  */
  
***************
*** 137,142 ****
--- 141,147 ----
  {
    LDAV_TYPE load;
    static int kmem = -1;
+   static int warned = 0;
    static unsigned long int offset = 0;
  
    if (kmem < 0)
***************
*** 143,149 ****
      {
        kmem = open ("/dev/kmem", O_RDONLY);
        if (kmem < 0)
! 	return 0.0;
      }
  
    if (offset == 0)
--- 148,161 ----
      {
        kmem = open ("/dev/kmem", O_RDONLY);
        if (kmem < 0)
!         {
! 	  if (warned == 0)
! 	    {
! 	      perror_with_name ("open: ", "/dev/kmem");
! 	      warned = 1;
! 	    }
! 	  return 0.0;
! 	}
      }
  
    if (offset == 0)
***************
*** 155,172 ****
        strcpy (nl[1].n_name, "");
  #else	/* Not NLIST_NAME_ARRAY.  */
        nl[0].n_name = LDAV_SYMBOL;
!       nl[1].n_name = 0;
  #endif	/* NLIST_NAME_ARRAY.  */
  
        if (nlist (KERNEL_FILE, nl) < 0 || nl[0].n_type == 0)
! 	return 0.0;
        offset = nl[0].n_value;
      }
  
!   if (lseek (kmem, offset, 0) < 0L)
!     return 0.0;
!   if (read (kmem, &load, sizeof load) < 0)
!     return 0.0;
  
    return LDAV_CVT;
  }
--- 167,196 ----
        strcpy (nl[1].n_name, "");
  #else	/* Not NLIST_NAME_ARRAY.  */
        nl[0].n_name = LDAV_SYMBOL;
!       nl[1].n_name = "";
  #endif	/* NLIST_NAME_ARRAY.  */
  
        if (nlist (KERNEL_FILE, nl) < 0 || nl[0].n_type == 0)
!         {
! 	  if (warned == 0)
! 	    {
! 	      perror_with_name ("nlist: ", KERNEL_FILE);
! 	      warned = 1;
! 	    }
! 	  return 0.0;
!         }
        offset = nl[0].n_value;
      }
  
!   if (lseek (kmem, offset, 0) == -1L || read (kmem, &load, sizeof load) < 0)
!     {
!       if (warned == 0)
!         {
! 	  perror_with_name ("read: ", "/dev/kmem");
! 	  warned = 1;
!         }
!       return 0.0;
!     }
  
    return LDAV_CVT;
  }

*** /tmp/,RCSt1a15196	Wed Aug 30 16:02:28 1989
--- remake.c	Wed Aug 30 15:55:36 1989
***************
*** 19,27 ****
  #include "commands.h"
  #include "dep.h"
  #include "file.h"
  #include <fcntl.h>
! 
! #ifndef USG
  #include <sys/file.h>
  #endif
  
--- 19,27 ----
  #include "commands.h"
  #include "dep.h"
  #include "file.h"
+ #ifdef USG
  #include <fcntl.h>
! #else
  #include <sys/file.h>
  #endif
  
--
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads