X-Git-Url: https://git.ozlabs.org/?p=ccan;a=blobdiff_plain;f=tools%2Fccan_depends.c;h=4dda6fa274d65965daaceb4707b377b8bc1989ff;hp=91d7c98983c772c6acc989b467d2e782be209ccd;hb=91436a25574597dbd1fd2de5bcd5826a234100d6;hpb=a8b248ea9de55316cac4423a99a727ca7b54e0fc diff --git a/tools/ccan_depends.c b/tools/ccan_depends.c index 91d7c989..4dda6fa2 100644 --- a/tools/ccan_depends.c +++ b/tools/ccan_depends.c @@ -11,6 +11,7 @@ int main(int argc, char *argv[]) unsigned int i; bool compile = false; bool recurse = true; + bool ccan = true; if (argv[1] && streq(argv[1], "--direct")) { argv++; @@ -22,18 +23,28 @@ int main(int argc, char *argv[]) argc--; compile = true; } + if (argv[1] && streq(argv[1], "--non-ccan")) { + argv++; + argc--; + ccan = false; + } if (argc != 2) - errx(1, "Usage: ccan_depends [--direct] [--compile] \n" + errx(1, "Usage: ccan_depends [--direct] [--compile] [--non-ccan] \n" "Spits out all the ccan dependencies (recursively unless --direct)"); + /* We find depends without compiling by looking for ccan/ */ + if (!ccan && !compile) + errx(1, "--non-ccan needs --compile"); + if (compile) - deps = get_deps(talloc_autofree_context(), argv[1], recurse); + deps = get_deps(talloc_autofree_context(), argv[1], + recurse, NULL); else - deps = get_safe_ccan_deps(talloc_autofree_context(), argv[1], - recurse); + deps = get_safe_ccan_deps(talloc_autofree_context(), + argv[1], recurse); for (i = 0; deps[i]; i++) - if (strstarts(deps[i], "ccan/")) + if (strstarts(deps[i], "ccan/") == ccan) printf("%s\n", deps[i]); return 0; }