Treat multiple

SPECIAL prog {objs,objpaths,keepsymbols} itemX

lines (where "prog" is fixed) in crunchgen configuration the same as

  SPECIAL prog {objs,objpaths,keepsymbols} item1 ... itemN

OK by David Laight
This commit is contained in:
freza 2006-10-18 21:20:44 +00:00
parent 322d0c4e0a
commit 57dc9ea382
2 changed files with 15 additions and 6 deletions

View File

@ -1,4 +1,4 @@
.\" $NetBSD: crunchgen.1,v 1.25 2004/09/25 21:47:53 wiz Exp $
.\" $NetBSD: crunchgen.1,v 1.26 2006/10/18 21:20:44 freza Exp $
.\"
.\" Copyright (c) 1994 University of Maryland
.\" All Rights Reserved.
@ -207,6 +207,10 @@ Don't hide the specified symbols for
.Ar progname .
Normally all externally visible symbols for
a program is hidden to avoid interference.
Multiple
.Em keepsymbols
lines can be specified for given
.Ar progname .
.It Nm special Ar progname Nm srcdir Ar pathname
Set the source directory for
.Ar progname .
@ -235,6 +239,10 @@ Set the list of object files for program
This is normally calculated by constructing a temporary makefile that includes
.Dq Nm srcdir / Pa Makefile
and outputs the value of $(OBJS).
Multiple
.Em objs
lines can be specified for given
.Ar progname .
.It Nm special Ar progname Nm objpaths Ar full-pathname-to-object-file ...
Sets the pathnames of the object files for program
.Ar progname .
@ -243,6 +251,10 @@ This is normally calculated by prepending the
pathname to each file in the
.Nm objs
list.
Multiple
.Em objpaths
lines can be specified for given
.Ar progname .
.El
.Pp
Only the

View File

@ -1,4 +1,4 @@
/* $NetBSD: crunchgen.c,v 1.72 2006/08/26 18:17:42 christos Exp $ */
/* $NetBSD: crunchgen.c,v 1.73 2006/10/18 21:20:44 freza Exp $ */
/*
* Copyright (c) 1994 University of Maryland
* All Rights Reserved.
@ -38,7 +38,7 @@
#include <sys/cdefs.h>
#if !defined(lint)
__RCSID("$NetBSD: crunchgen.c,v 1.72 2006/08/26 18:17:42 christos Exp $");
__RCSID("$NetBSD: crunchgen.c,v 1.73 2006/10/18 21:20:44 freza Exp $");
#endif
#include <stdlib.h>
@ -490,7 +490,6 @@ add_special(int argc, char **argv)
if (!strcmp(argv[2], "objs")) {
oneobj = 0;
p->objs = NULL;
for (i = 3; i < argc; i++)
add_string(&p->objs, argv[i]);
return;
@ -498,14 +497,12 @@ add_special(int argc, char **argv)
if (!strcmp(argv[2], "objpaths")) {
oneobj = 0;
p->objpaths = NULL;
for (i = 3; i < argc; i++)
add_string(&p->objpaths, argv[i]);
return;
}
if (!strcmp(argv[2], "keepsymbols")) {
p->keepsymbols = NULL;
for (i = 3; i < argc; i++)
add_string(&p->keepsymbols, argv[i]);
return;