mirror of
https://git.savannah.gnu.org/git/make.git
synced 2025-01-14 17:55:14 +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>
|
2005-06-09 Paul D. Smith <psmith@gnu.org>
|
||||||
|
|
||||||
* variable.c (push_new_variable_scope): File variables point
|
* 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
|
# endif
|
||||||
# include <starlet.h>
|
# include <starlet.h>
|
||||||
# include <lib$routines.h>
|
# include <lib$routines.h>
|
||||||
|
static void vmsWaitForChildren PARAMS ((int *));
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef WINDOWS32
|
#ifdef WINDOWS32
|
||||||
|
@ -535,7 +536,6 @@ reap_children (int block, int err)
|
||||||
if (any_local)
|
if (any_local)
|
||||||
{
|
{
|
||||||
#ifdef VMS
|
#ifdef VMS
|
||||||
static void vmsWaitForChildren PARAMS ((int *));
|
|
||||||
vmsWaitForChildren (&status);
|
vmsWaitForChildren (&status);
|
||||||
pid = c->pid;
|
pid = c->pid;
|
||||||
#else
|
#else
|
||||||
|
@ -1905,7 +1905,7 @@ child_execute_job (int stdin_fd, int stdout_fd, char **argv, char **envp)
|
||||||
return pid;
|
return pid;
|
||||||
}
|
}
|
||||||
|
|
||||||
#elif !defined (_AMIGA) && !defined (__MSDOS__)
|
#elif !defined (_AMIGA) && !defined (__MSDOS__) && !defined (VMS)
|
||||||
|
|
||||||
/* UNIX:
|
/* UNIX:
|
||||||
Replace the current process with one executing the command in ARGV.
|
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. */
|
/* Run the command. */
|
||||||
exec_command (argv, envp);
|
exec_command (argv, envp);
|
||||||
}
|
}
|
||||||
#endif /* !AMIGA && !__MSDOS__ */
|
#endif /* !AMIGA && !__MSDOS__ && !VMS */
|
||||||
#endif /* !WINDOWS32 */
|
#endif /* !WINDOWS32 */
|
||||||
|
|
||||||
#ifndef _AMIGA
|
#ifndef _AMIGA
|
||||||
|
|
|
@ -116,7 +116,7 @@ clean:
|
||||||
|
|
||||||
# Automatically generated dependencies.
|
# Automatically generated dependencies.
|
||||||
commands.obj: commands.c make.h dep.h commands.h filedef.h variable.h job.h
|
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
|
dir.obj: dir.c make.h
|
||||||
file.obj: file.c make.h commands.h dep.h filedef.h variable.h
|
file.obj: file.c make.h commands.h dep.h filedef.h variable.h
|
||||||
misc.obj: misc.c make.h dep.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.
|
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;
|
static int vms_jobsefnmask = 0;
|
||||||
|
|
||||||
/* Wait for nchildren children to terminate */
|
/* Wait for nchildren children to terminate */
|
||||||
void
|
static void
|
||||||
vmsWaitForChildren(int *status)
|
vmsWaitForChildren(int *status)
|
||||||
{
|
{
|
||||||
while (1)
|
while (1)
|
||||||
|
@ -91,9 +97,6 @@ vms_handle_apos (char *p)
|
||||||
return p;
|
return p;
|
||||||
}
|
}
|
||||||
|
|
||||||
#include <descrip.h>
|
|
||||||
#include <clidef.h>
|
|
||||||
|
|
||||||
/* This is called as an AST when a child process dies (it won't get
|
/* This is called as an AST when a child process dies (it won't get
|
||||||
interrupted by anything except a higher level AST).
|
interrupted by anything except a higher level AST).
|
||||||
*/
|
*/
|
||||||
|
@ -196,6 +199,7 @@ vmsHandleChildTerm(struct child *child)
|
||||||
#define MAXCMDLEN 200
|
#define MAXCMDLEN 200
|
||||||
|
|
||||||
/* local helpers to make ctrl+c and ctrl+y working, see below */
|
/* local helpers to make ctrl+c and ctrl+y working, see below */
|
||||||
|
#include <iodef.h>
|
||||||
#include <libclidef.h>
|
#include <libclidef.h>
|
||||||
#include <ssdef.h>
|
#include <ssdef.h>
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue