Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src/usr.bin/make make(1): inline Lst_Find in meta_oodate
details: https://anonhg.NetBSD.org/src/rev/eeef52160639
branches: trunk
changeset: 1015488:eeef52160639
user: rillig <rillig%NetBSD.org@localhost>
date: Sat Oct 24 10:32:25 2020 +0000
description:
make(1): inline Lst_Find in meta_oodate
diffstat:
usr.bin/make/meta.c | 29 +++++++++++++++--------------
1 files changed, 15 insertions(+), 14 deletions(-)
diffs (64 lines):
diff -r 5f3ebbc45a9e -r eeef52160639 usr.bin/make/meta.c
--- a/usr.bin/make/meta.c Sat Oct 24 10:18:29 2020 +0000
+++ b/usr.bin/make/meta.c Sat Oct 24 10:32:25 2020 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: meta.c,v 1.129 2020/10/24 10:17:21 rillig Exp $ */
+/* $NetBSD: meta.c,v 1.130 2020/10/24 10:32:25 rillig Exp $ */
/*
* Implement 'meta' mode.
@@ -970,13 +970,6 @@
return path[n] == '\0' || path[n] == '/';
}
-static Boolean
-string_match(const void *p, const void *q)
-{
- return strcmp(p, q) == 0;
-}
-
-
static int
meta_ignore(GNode *gn, const char *p)
{
@@ -1060,6 +1053,17 @@
*ep = '\0'; \
}
+static void
+append_if_new(StringList *list, const char *str)
+{
+ StringListNode *ln;
+
+ for (ln = list->first; ln != NULL; ln = ln->next)
+ if (strcmp(ln->datum, str) == 0)
+ return;
+ Lst_Append(list, bmake_strdup(str));
+}
+
Boolean
meta_oodate(GNode *gn, Boolean oodate)
{
@@ -1384,10 +1388,8 @@
if ((link_src != NULL && cached_lstat(p, &mst) < 0) ||
(link_src == NULL && cached_stat(p, &mst) < 0)) {
- if (!meta_ignore(gn, p)) {
- if (Lst_Find(missingFiles, string_match, p) == NULL)
- Lst_Append(missingFiles, bmake_strdup(p));
- }
+ if (!meta_ignore(gn, p))
+ append_if_new(missingFiles, p);
}
break;
check_link_src:
@@ -1470,8 +1472,7 @@
* A referenced file outside of CWD is missing.
* We cannot catch every eventuality here...
*/
- if (Lst_Find(missingFiles, string_match, p) == NULL)
- Lst_Append(missingFiles, bmake_strdup(p));
+ append_if_new(missingFiles, p);
}
}
if (buf[0] == 'E') {
Home |
Main Index |
Thread Index |
Old Index