Allow for cumulative -V flags.
This commit is contained in:
		
							parent
							
								
									5fbe427853
								
							
						
					
					
						commit
						ecf8a9b28f
					
				
					 1 changed files with 7 additions and 10 deletions
				
			
		| 
						 | 
					@ -31,7 +31,6 @@ int     toterr;
 | 
				
			||||||
int     parent;
 | 
					int     parent;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
char    *eeflag;
 | 
					char    *eeflag;
 | 
				
			||||||
char    *vvflag = "-V";
 | 
					 | 
				
			||||||
int	no_pemflag = 0 ;
 | 
					int	no_pemflag = 0 ;
 | 
				
			||||||
char    *pemflag[MAX_FLAG];
 | 
					char    *pemflag[MAX_FLAG];
 | 
				
			||||||
char    *eflag;
 | 
					char    *eflag;
 | 
				
			||||||
| 
						 | 
					@ -146,7 +145,7 @@ char *flag(f) char *f; {
 | 
				
			||||||
		wflag = f;
 | 
							wflag = f;
 | 
				
			||||||
		break;
 | 
							break;
 | 
				
			||||||
	case 'V':
 | 
						case 'V':
 | 
				
			||||||
		vvflag = f;
 | 
							initsizes(f+2);
 | 
				
			||||||
		return(0);
 | 
							return(0);
 | 
				
			||||||
	case '{':
 | 
						case '{':
 | 
				
			||||||
		if ( no_pemflag>=MAX_FLAG ) {
 | 
							if ( no_pemflag>=MAX_FLAG ) {
 | 
				
			||||||
| 
						 | 
					@ -169,11 +168,10 @@ char *flag(f) char *f; {
 | 
				
			||||||
	return(0);
 | 
						return(0);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
initsizes(f) FILE *f; {
 | 
					initsizes(vvflag) char *vvflag; {
 | 
				
			||||||
	register c, i;
 | 
						register c, i;
 | 
				
			||||||
	register char *p;
 | 
						register char *p = vvflag;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	p = vvflag + 2;
 | 
					 | 
				
			||||||
	while (c = *p++) {
 | 
						while (c = *p++) {
 | 
				
			||||||
		i = atoi(p);
 | 
							i = atoi(p);
 | 
				
			||||||
		while (*p >= '0' && *p <= '9')
 | 
							while (*p >= '0' && *p <= '9')
 | 
				
			||||||
| 
						 | 
					@ -196,10 +194,6 @@ initsizes(f) FILE *f; {
 | 
				
			||||||
	    (sz_long != 4)) {
 | 
						    (sz_long != 4)) {
 | 
				
			||||||
		fatal("bad V-flag %s",vvflag);
 | 
							fatal("bad V-flag %s",vvflag);
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	if (sz_head == 0)
 | 
					 | 
				
			||||||
		sz_head = 6*sz_word + 2*sz_addr;
 | 
					 | 
				
			||||||
	for (i = 0; i <= sz_last; i++)
 | 
					 | 
				
			||||||
		fprintf(f, "%d\n",sizes[i]);
 | 
					 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/* ------------------ calling sequences -------------------- */
 | 
					/* ------------------ calling sequences -------------------- */
 | 
				
			||||||
| 
						 | 
					@ -214,7 +208,10 @@ pem(p,q) char *p,*q; {
 | 
				
			||||||
	d = tempfile('d');
 | 
						d = tempfile('d');
 | 
				
			||||||
	if ((erfil = fopen(d,"w")) == NULL)
 | 
						if ((erfil = fopen(d,"w")) == NULL)
 | 
				
			||||||
		syserr(d);
 | 
							syserr(d);
 | 
				
			||||||
	initsizes(erfil);
 | 
						if (sz_head == 0)
 | 
				
			||||||
 | 
							sz_head = 6*sz_word + 2*sz_addr;
 | 
				
			||||||
 | 
						for (i = 0; i <= sz_last; i++)
 | 
				
			||||||
 | 
							fprintf(erfil, "%d\n",sizes[i]);
 | 
				
			||||||
	fprintf(erfil,"%s\n",basename(source));
 | 
						fprintf(erfil,"%s\n",basename(source));
 | 
				
			||||||
	for ( i=0 ; i<no_pemflag ; i++ ) fprintf(erfil,"%s\n",pemflag[i]);
 | 
						for ( i=0 ; i<no_pemflag ; i++ ) fprintf(erfil,"%s\n",pemflag[i]);
 | 
				
			||||||
	fclose(erfil);
 | 
						fclose(erfil);
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		
		Reference in a new issue