]> git.ozlabs.org Git - ccan/blobdiff - tools/namespacize.c
doc: english fixup.
[ccan] / tools / namespacize.c
index 13c1a36af985048c726243c6b6730e3f0207f42b..da2d599986c104d900d2dddc9f623878a6b0d8d6 100644 (file)
@@ -12,6 +12,8 @@
 #include "ccan/str/str.h"
 #include "ccan/take/take.h"
 #include "ccan/rbuf/rbuf.h"
+#include "ccan/tal/path/path.h"
+#include "ccan/tal/grab_file/grab_file.h"
 #include "ccan/err/err.h"
 #include "tools.h"
 
@@ -255,8 +257,10 @@ static void analyze_headers(const char *dir, struct replace **repl)
        char *hdr, *contents;
 
        /* Get hold of header, assume that's it. */
-       hdr = tal_fmt(dir, "%s/%s.h", dir, tal_basename(dir, dir));
-       contents = tal_grab_file(dir, hdr, NULL);
+       hdr = tal_fmt(dir, "%s.h",
+                     path_join(NULL, dir, take(path_basename(NULL, dir))));
+
+       contents = grab_file(dir, hdr);
        if (!contents)
                err(1, "Reading %s", hdr);
 
@@ -273,7 +277,7 @@ static void analyze_headers(const char *dir, struct replace **repl)
 
 static void write_replacement_file(const char *dir, struct replace **repl)
 {
-       char *replname = tal_fmt(dir, "%s/.namespacize", dir);
+       char *replname = path_join(dir, dir, ".namespacize");
        int fd;
        struct replace *r;
 
@@ -331,7 +335,7 @@ static const char *rewrite_file(const char *filename,
        int fd;
 
        verbose("Rewriting %s\n", filename);
-       file = tal_grab_file(filename, filename, NULL);
+       file = grab_file(filename, filename);
        if (!file)
                err(1, "Reading file %s", filename);
 
@@ -413,10 +417,7 @@ static void convert_dir(const char *dir)
        struct adjusted *adj = NULL;
 
        /* Remove any ugly trailing slashes. */
-       name = tal_strdup(NULL, dir);
-       while (strends(name, "/"))
-               name[strlen(name)-1] = '\0';
-
+       name = path_canon(NULL, dir);
        analyze_headers(name, &replace);
        write_replacement_file(name, &replace);
        setup_adjust_files(name, replace, &adj);
@@ -428,10 +429,10 @@ static void convert_dir(const char *dir)
 static struct replace *read_replacement_file(const char *depdir)
 {
        struct replace *repl = NULL;
-       char *replname = tal_fmt(depdir, "%s/.namespacize", depdir);
+       char *replname = path_join(depdir, depdir, ".namespacize");
        char *file, **line;
 
-       file = tal_grab_file(replname, replname, NULL);
+       file = grab_file(replname, replname);
        if (!file) {
                if (errno != ENOENT)
                        err(1, "Opening %s", replname);
@@ -445,7 +446,7 @@ static struct replace *read_replacement_file(const char *depdir)
 
 static void adjust_dir(const char *dir)
 {
-       char *parent = tal_dirname(autofree(), dir);
+       char *parent = path_dirname(autofree(), dir);
        char **deps;
 
        verbose("Adjusting %s\n", dir);
@@ -457,7 +458,7 @@ static void adjust_dir(const char *dir)
                struct adjusted *adj = NULL;
                struct replace *repl;
 
-               depdir = tal_fmt(parent, "%s/%s", parent, *deps);
+               depdir = path_join(parent, parent, *deps);
                repl = read_replacement_file(depdir);
                if (repl) {
                        verbose("%s has been namespacized\n", depdir);
@@ -473,8 +474,8 @@ static void adjust_dir(const char *dir)
 
 static void adjust_dependents(const char *dir)
 {
-       char *parent = tal_dirname(NULL, dir);
-       char *base = tal_basename(parent, dir);
+       char *parent = path_dirname(NULL, dir);
+       char *base = path_basename(parent, dir);
        char **file;
 
        verbose("Looking for dependents in %s\n", parent);
@@ -483,10 +484,10 @@ static void adjust_dependents(const char *dir)
                char *info, **deps;
                bool isdep = false;
 
-               if (tal_basename(*file, *file)[0] == '.')
+               if (path_basename(*file, *file)[0] == '.')
                        continue;
 
-               info = tal_fmt(*file, "%s/_info", *file);
+               info = path_join(*file, *file, "_info");
                if (access(info, R_OK) != 0)
                        continue;