Module Name: src
Committed By: rillig
Date: Fri Apr 15 12:28:16 UTC 2022
Modified Files:
src/usr.bin/make: meta.c
Log Message:
make: do not use __CONCAT and __STRING in meta_needed
Using __CONCAT for identifiers makes it impossible to find their usages
easily, as could be seen in targ.c 1.22 from 2001-07-03. It also
requires that the parts of the identifier are not macros themselves.
No binary change.
To generate a diff of this commit:
cvs rdiff -u -r1.199 -r1.200 src/usr.bin/make/meta.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/usr.bin/make/meta.c
diff -u src/usr.bin/make/meta.c:1.199 src/usr.bin/make/meta.c:1.200
--- src/usr.bin/make/meta.c:1.199 Fri Mar 4 23:17:16 2022
+++ src/usr.bin/make/meta.c Fri Apr 15 12:28:16 2022
@@ -1,4 +1,4 @@
-/* $NetBSD: meta.c,v 1.199 2022/03/04 23:17:16 sjg Exp $ */
+/* $NetBSD: meta.c,v 1.200 2022/04/15 12:28:16 rillig Exp $ */
/*
* Implement 'meta' mode.
@@ -380,12 +380,10 @@ printCMDs(GNode *gn, FILE *fp)
/*
* Certain node types never get a .meta file
*/
-#define SKIP_META_TYPE(_type) do { \
- if ((gn->type & __CONCAT(OP_, _type))) { \
- if (verbose) { \
- debug_printf("Skipping meta for %s: .%s\n", \
- gn->name, __STRING(_type)); \
- } \
+#define SKIP_META_TYPE(flag, str) do { \
+ if ((gn->type & (flag))) { \
+ if (verbose) \
+ debug_printf("Skipping meta for %s: .%s\n", gn->name, str); \
return false; \
} \
} while (false)
@@ -406,12 +404,12 @@ meta_needed(GNode *gn, const char *dname
/* This may be a phony node which we don't want meta data for... */
/* Skip .meta for .BEGIN, .END, .ERROR etc as well. */
/* Or it may be explicitly flagged as .NOMETA */
- SKIP_META_TYPE(NOMETA);
+ SKIP_META_TYPE(OP_NOMETA, "NOMETA");
/* Unless it is explicitly flagged as .META */
if (!(gn->type & OP_META)) {
- SKIP_META_TYPE(PHONY);
- SKIP_META_TYPE(SPECIAL);
- SKIP_META_TYPE(MAKE);
+ SKIP_META_TYPE(OP_PHONY, "PHONY");
+ SKIP_META_TYPE(OP_SPECIAL, "SPECIAL");
+ SKIP_META_TYPE(OP_MAKE, "MAKE");
}
/* Check if there are no commands to execute. */