]> git.ozlabs.org Git - ccan/blobdiff - tools/depends.c
From: Joseph Adams <joeyadams3.14159@gmail.com>
[ccan] / tools / depends.c
index 7eac9da419a17233e28d0e5dbb1aed4a7c9907f1..2bf11415bd2e632290fa1e63a4efd3bd13add985 100644 (file)
@@ -1,5 +1,7 @@
-#include "talloc/talloc.h"
-#include "string/string.h"
+#include <ccan/talloc/talloc.h>
+#include <ccan/str/str.h>
+#include <ccan/grab_file/grab_file.h>
+#include <ccan/str_talloc/str_talloc.h>
 #include "tools.h"
 #include <err.h>
 #include <stdbool.h>
@@ -110,6 +112,10 @@ static char **get_one_safe_deps(const void *ctx,
                char *str;
                unsigned int len;
 
+               /* Ignore lines starting with # (e.g. #include) */
+               if (lines[i][0] == '#')
+                       continue;
+
                /* Start of line, or after ". */
                if (strstarts(lines[i], "ccan/"))
                        str = lines[i];
@@ -173,13 +179,21 @@ get_all_deps(const void *ctx, const char *dir,
        return deps;
 }
 
-char **get_deps(const void *ctx, const char *dir)
+char **get_deps(const void *ctx, const char *dir, bool recurse)
 {
+       if (!recurse) {
+               unsigned int num;
+               return get_one_deps(ctx, dir, &num);
+       }
        return get_all_deps(ctx, dir, get_one_deps);
 }
 
-char **get_safe_ccan_deps(const void *ctx, const char *dir)
+char **get_safe_ccan_deps(const void *ctx, const char *dir, bool recurse)
 {
+       if (!recurse) {
+               unsigned int num;
+               return get_one_safe_deps(ctx, dir, &num);
+       }
        return get_all_deps(ctx, dir, get_one_safe_deps);
 }