Reformat.

This commit is contained in:
David Given 2022-07-16 22:33:48 +02:00
parent d48e7399ee
commit e43905afeb

View file

@ -29,30 +29,41 @@ static char **arglist ; /* The first argument */
static unsigned argcount; /* The current number of arguments */ static unsigned argcount; /* The current number of arguments */
static unsigned argmax; /* The maximum number of arguments so far */ static unsigned argmax; /* The maximum number of arguments so far */
int runphase(trf *phase) { int runphase(trf* phase)
{
register list_elem* elem; register list_elem* elem;
char *prog ; int result ; char* prog;
int result;
prog = phase->t_prog; prog = phase->t_prog;
if ( v_flag || debug ) { if (v_flag || debug)
if ( v_flag==1 && !debug ) { {
if (v_flag == 1 && !debug)
{
vprint("%s", phase->t_name); vprint("%s", phase->t_name);
if ( !phase->t_combine ) { if (!phase->t_combine)
vprint(" %s%s\n",p_basename, {
strrchr(in.p_path,SUFCHAR) ) ; vprint(" %s%s\n", p_basename, strrchr(in.p_path, SUFCHAR));
} else { }
scanlist(l_first(phase->t_inputs), elem) { else
{
scanlist(l_first(phase->t_inputs), elem)
{
vprint(" %s", p_cont(*elem)->p_path); vprint(" %s", p_cont(*elem)->p_path);
} }
vprint("\n"); vprint("\n");
} }
} else { }
else
{
/* list all args */ /* list all args */
vprint("%s", prog); vprint("%s", prog);
scanlist(l_first(phase->t_flags), elem) { scanlist(l_first(phase->t_flags), elem)
{
vprint(" %s", l_content(*elem)); vprint(" %s", l_content(*elem));
} }
scanlist(l_first(phase->t_args), elem) { scanlist(l_first(phase->t_args), elem)
{
vprint(" %s", l_content(*elem)); vprint(" %s", l_content(*elem));
} }
vprint("\n"); vprint("\n");
@ -60,10 +71,12 @@ int runphase(trf *phase) {
} }
argcount = 0; argcount = 0;
x_arg(phase->t_name); x_arg(phase->t_name);
scanlist(l_first(phase->t_flags), elem) { scanlist(l_first(phase->t_flags), elem)
{
x_arg(l_content(*elem)); x_arg(l_content(*elem));
} }
scanlist(l_first(phase->t_args), elem) { scanlist(l_first(phase->t_args), elem)
{
x_arg(l_content(*elem)); x_arg(l_content(*elem));
} }
x_arg((char*)0); x_arg((char*)0);
@ -105,7 +118,8 @@ static char* build_command_line(const char* prog)
return cmdline; return cmdline;
} }
static int run_exec(trf *phase, const char *prog) { static int run_exec(trf* phase, const char* prog)
{
int status, child, waitchild; int status, child, waitchild;
int oldstdin = -1; int oldstdin = -1;
int oldstdout = -1; int oldstdout = -1;
@ -113,27 +127,33 @@ static int run_exec(trf *phase, const char *prog) {
fflush(stdout); fflush(stdout);
fflush(stderr); fflush(stderr);
if ( phase->t_stdin ) { if (phase->t_stdin)
{
if (!in.p_path) if (!in.p_path)
fatal("no input file for %s", phase->t_name); fatal("no input file for %s", phase->t_name);
oldstdin = dup(0); oldstdin = dup(0);
close(0); close(0);
if (open(in.p_path,0)!=0) { if (open(in.p_path, 0) != 0)
{
error("cannot open %s", in.p_path); error("cannot open %s", in.p_path);
exit(1); exit(1);
} }
} }
if ( phase->t_stdout ) { if (phase->t_stdout)
if ( !out.p_path ) { {
if (!out.p_path)
{
fatal("no output file for %s", phase->t_name); fatal("no output file for %s", phase->t_name);
} }
oldstdout = dup(1); oldstdout = dup(1);
close(1); close(1);
if ( creat(out.p_path,0666)!=1 ) { if (creat(out.p_path, 0666) != 1)
close(1); dup(2); {
close(1);
dup(2);
error("cannot create %s", out.p_path); error("cannot create %s", out.p_path);
exit(1); exit(1);
} }
@ -143,20 +163,24 @@ static int run_exec(trf *phase, const char *prog) {
status = system(cmdline); status = system(cmdline);
free(cmdline); free(cmdline);
if ( oldstdin != -1 ) { if (oldstdin != -1)
{
close(0); close(0);
dup2(oldstdin, 0); dup2(oldstdin, 0);
close(oldstdin); close(oldstdin);
} }
if ( oldstdout != -1 ) { if (oldstdout != -1)
{
close(1); close(1);
dup2(oldstdout, 1); dup2(oldstdout, 1);
close(oldstdout); close(oldstdout);
} }
if ( status ) { if (status)
switch ( status&0177 ) { {
switch (status & 0177)
{
case 0: case 0:
break; break;
case SIGHUP: case SIGHUP:
@ -165,8 +189,7 @@ static int run_exec(trf *phase, const char *prog) {
case SIGTERM: case SIGTERM:
quit(-5); quit(-5);
default: default:
error("%s died with signal %d", error("%s died with signal %d", prog, status & 0177);
prog,status&0177) ;
} }
/* The assumption is that processes voluntarely /* The assumption is that processes voluntarely
dying with a non-zero status already produced dying with a non-zero status already produced
@ -178,16 +201,20 @@ static int run_exec(trf *phase, const char *prog) {
return 1; return 1;
} }
static void x_arg(char *string) { static void x_arg(char* string)
{
/* Add one execute argument to the argument vector */ /* Add one execute argument to the argument vector */
if ( argcount==argmax ) { if (argcount == argmax)
if ( argmax==0 ) { {
if (argmax == 0)
{
argmax = 2 * ARG_MORE; argmax = 2 * ARG_MORE;
arglist = (char**)getcore(argmax * sizeof(char*)); arglist = (char**)getcore(argmax * sizeof(char*));
} else { }
else
{
argmax += ARG_MORE; argmax += ARG_MORE;
arglist= (char **)changecore((char *)arglist, arglist = (char**)changecore((char*)arglist, argmax * sizeof(char*));
argmax*sizeof (char *)) ;
} }
} }
*(arglist + argcount++) = string; *(arglist + argcount++) = string;