mirror of
https://git.savannah.gnu.org/git/make.git
synced 2025-01-13 17:36:52 +00:00
Fixes for VMS from Hartmut Becker.
This commit is contained in:
parent
dd30b0552f
commit
974d14ac4f
4 changed files with 22 additions and 8 deletions
10
ChangeLog
10
ChangeLog
|
@ -1,3 +1,13 @@
|
|||
2005-06-10 Paul D. Smith <psmith@gnu.org>
|
||||
|
||||
VMS build updates from Hartmut Becker <Hartmut.Becker@hp.com>:
|
||||
|
||||
* vmsjobs.c [VMS]: Updates to compile on VMS: add some missing
|
||||
headers; make vmsWaitForChildren() static; extern vmsify().
|
||||
* job.c [VMS]: Move vmsWaitForChildren() prototype to be global.
|
||||
Don't create child_execute_job() here (it's in vmsjobs.c).
|
||||
* makefile.vms (job.obj) [VMS]: Add vmsjobs.c as a prerequisite.
|
||||
|
||||
2005-06-09 Paul D. Smith <psmith@gnu.org>
|
||||
|
||||
* variable.c (push_new_variable_scope): File variables point
|
||||
|
|
6
job.c
6
job.c
|
@ -98,6 +98,7 @@ static int amiga_batch_file;
|
|||
# endif
|
||||
# include <starlet.h>
|
||||
# include <lib$routines.h>
|
||||
static void vmsWaitForChildren PARAMS ((int *));
|
||||
#endif
|
||||
|
||||
#ifdef WINDOWS32
|
||||
|
@ -535,7 +536,6 @@ reap_children (int block, int err)
|
|||
if (any_local)
|
||||
{
|
||||
#ifdef VMS
|
||||
static void vmsWaitForChildren PARAMS ((int *));
|
||||
vmsWaitForChildren (&status);
|
||||
pid = c->pid;
|
||||
#else
|
||||
|
@ -1905,7 +1905,7 @@ child_execute_job (int stdin_fd, int stdout_fd, char **argv, char **envp)
|
|||
return pid;
|
||||
}
|
||||
|
||||
#elif !defined (_AMIGA) && !defined (__MSDOS__)
|
||||
#elif !defined (_AMIGA) && !defined (__MSDOS__) && !defined (VMS)
|
||||
|
||||
/* UNIX:
|
||||
Replace the current process with one executing the command in ARGV.
|
||||
|
@ -1926,7 +1926,7 @@ child_execute_job (int stdin_fd, int stdout_fd, char **argv, char **envp)
|
|||
/* Run the command. */
|
||||
exec_command (argv, envp);
|
||||
}
|
||||
#endif /* !AMIGA && !__MSDOS__ */
|
||||
#endif /* !AMIGA && !__MSDOS__ && !VMS */
|
||||
#endif /* !WINDOWS32 */
|
||||
|
||||
#ifndef _AMIGA
|
||||
|
|
|
@ -116,7 +116,7 @@ clean:
|
|||
|
||||
# Automatically generated dependencies.
|
||||
commands.obj: commands.c make.h dep.h commands.h filedef.h variable.h job.h
|
||||
job.obj: job.c make.h commands.h job.h filedef.h variable.h
|
||||
job.obj: job.c vmsjobs.c make.h commands.h job.h filedef.h variable.h
|
||||
dir.obj: dir.c make.h
|
||||
file.obj: file.c make.h commands.h dep.h filedef.h variable.h
|
||||
misc.obj: misc.c make.h dep.h
|
||||
|
|
12
vmsjobs.c
12
vmsjobs.c
|
@ -4,10 +4,16 @@
|
|||
This file must be #included in job.c, as it accesses static functions.
|
||||
*/
|
||||
|
||||
#include <string.h>
|
||||
#include <descrip.h>
|
||||
#include <clidef.h>
|
||||
|
||||
extern char *vmsify PARAMS ((char *name, int type));
|
||||
|
||||
static int vms_jobsefnmask = 0;
|
||||
|
||||
/* Wait for nchildren children to terminate */
|
||||
void
|
||||
static void
|
||||
vmsWaitForChildren(int *status)
|
||||
{
|
||||
while (1)
|
||||
|
@ -91,9 +97,6 @@ vms_handle_apos (char *p)
|
|||
return p;
|
||||
}
|
||||
|
||||
#include <descrip.h>
|
||||
#include <clidef.h>
|
||||
|
||||
/* This is called as an AST when a child process dies (it won't get
|
||||
interrupted by anything except a higher level AST).
|
||||
*/
|
||||
|
@ -196,6 +199,7 @@ vmsHandleChildTerm(struct child *child)
|
|||
#define MAXCMDLEN 200
|
||||
|
||||
/* local helpers to make ctrl+c and ctrl+y working, see below */
|
||||
#include <iodef.h>
|
||||
#include <libclidef.h>
|
||||
#include <ssdef.h>
|
||||
|
||||
|
|
Loading…
Reference in a new issue