aboutsummaryrefslogtreecommitdiff
path: root/usr.bin/make/suff.c
diff options
context:
space:
mode:
authorHartmut Brandt <harti@FreeBSD.org>2005-03-11 13:24:08 +0000
committerHartmut Brandt <harti@FreeBSD.org>2005-03-11 13:24:08 +0000
commitc2d34cc331dbaaae52d689a69bd4a2da5013d504 (patch)
treed7a72118acaac8f01559518c6d55a24514af1049 /usr.bin/make/suff.c
parentd64ac531acb0f81be1d56e10b36556e6689fbe19 (diff)
Notes
Diffstat (limited to 'usr.bin/make/suff.c')
-rw-r--r--usr.bin/make/suff.c101
1 files changed, 38 insertions, 63 deletions
diff --git a/usr.bin/make/suff.c b/usr.bin/make/suff.c
index 4972b4b844201..408f44ebb8cb3 100644
--- a/usr.bin/make/suff.c
+++ b/usr.bin/make/suff.c
@@ -2288,80 +2288,55 @@ Suff_Init(void)
/********************* DEBUGGING FUNCTIONS **********************/
-static int
-SuffPrintName(void *s, void *dummy __unused)
+void
+Suff_PrintAll(void)
{
+ const LstNode *ln;
+ const LstNode *tln;
+ const GNode *gn;
+ const Suff *s;
- printf("`%s' ", ((Suff *)s)->name);
- return (0);
-}
-
-static int
-SuffPrintSuff(void *sp, void *dummy __unused)
-{
- Suff *s = sp;
- int flags;
- int flag;
+ static const struct flag2str suff_flags[] = {
+ { SUFF_INCLUDE, "INCLUDE" },
+ { SUFF_LIBRARY, "LIBRARY" },
+ { SUFF_NULL, "NULL" },
+ { 0, NULL }
+ };
- printf("# `%s' [%d] ", s->name, s->refCount);
+ printf("#*** Suffixes:\n");
+ LST_FOREACH(ln, &sufflist) {
+ s = Lst_Datum(ln);
+ printf("# `%s' [%d] ", s->name, s->refCount);
- flags = s->flags;
- if (flags) {
- fputs(" (", stdout);
- while (flags) {
- flag = 1 << (ffs(flags) - 1);
- flags &= ~flag;
- switch (flag) {
- case SUFF_NULL:
- printf("NULL");
- break;
- case SUFF_INCLUDE:
- printf("INCLUDE");
- break;
- case SUFF_LIBRARY:
- printf("LIBRARY");
- break;
- default:
- break;
- }
- fputc(flags ? '|' : ')', stdout);
+ if (s->flags != 0) {
+ printf(" ");
+ print_flags(stdout, suff_flags, s->flags);
}
- }
- fputc('\n', stdout);
- printf("#\tTo: ");
- Lst_ForEach(&s->parents, SuffPrintName, (void *)NULL);
- fputc('\n', stdout);
- printf("#\tFrom: ");
- Lst_ForEach(&s->children, SuffPrintName, (void *)NULL);
- fputc('\n', stdout);
- printf("#\tSearch Path: ");
- Dir_PrintPath(&s->searchPath);
- fputc('\n', stdout);
- return (0);
-}
-static int
-SuffPrintTrans(void *tp, void *dummy __unused)
-{
- GNode *t = tp;
+ printf("\n#\tTo: ");
+ LST_FOREACH(tln, &s->parents)
+ printf("`%s' ", ((const Suff *)Lst_Datum(tln))->name);
- printf("%-16s: ", t->name);
- Targ_PrintType(t->type);
- fputc('\n', stdout);
- Lst_ForEach(&t->commands, Targ_PrintCmd, (void *)NULL);
- fputc('\n', stdout);
- return (0);
-}
+ printf("\n#\tFrom: ");
+ LST_FOREACH(tln, &s->children)
+ printf("`%s' ", ((const Suff *)Lst_Datum(tln))->name);
-void
-Suff_PrintAll(void)
-{
+ printf("\n#\tSearch Path: ");
+ Dir_PrintPath(&s->searchPath);
- printf("#*** Suffixes:\n");
- Lst_ForEach(&sufflist, SuffPrintSuff, (void *)NULL);
+ printf("\n");
+ }
printf("#*** Transformations:\n");
- Lst_ForEach(&transforms, SuffPrintTrans, (void *)NULL);
+ LST_FOREACH(ln, &transforms) {
+ gn = Lst_Datum(ln);
+ printf("%-16s: ", gn->name);
+ Targ_PrintType(gn->type);
+ printf("\n");
+ LST_FOREACH(tln, &gn->commands)
+ printf("\t%s\n", (const char *)Lst_Datum(tln));
+ printf("\n");
+ }
}
#ifdef DEBUG_SRC