]> git.ozlabs.org Git - ccan/blobdiff - tools/ccanlint/tests/objects_build.c
base64: fix for unsigned chars (e.g. ARM).
[ccan] / tools / ccanlint / tests / objects_build.c
index 21a02773aeb95dc18cbb11e7acbedeacba271372..58f364373a5f63b5624cd0a55bf39d65bbcd931c 100644 (file)
 #include <ctype.h>
 #include "build.h"
 
-static const char *can_build(struct manifest *m)
+static const char *can_build(struct manifest *m UNNEEDED)
 {
        if (safe_mode)
                return "Safe mode enabled";
        return NULL;
 }
 
+static char *cflags_list(const struct manifest *m)
+{
+       unsigned int i;
+       char *ret = tal_strdup(m, cflags);
+
+       char **flags = get_cflags(m, m->dir, get_or_compile_info);
+       for (i = 0; flags[i]; i++)
+               tal_append_fmt(&ret, " %s", flags[i]);
+       return ret;
+}
+
 void build_objects(struct manifest *m,
                   struct score *score, const char *flags,
                   enum compile_type ctype)
@@ -58,13 +69,18 @@ void build_objects(struct manifest *m,
        if (!errors) {
                score->pass = true;
                score->score = score->total - warnings;
-       }
+       } else
+               build_failed = true;
 }
 
 static void check_objs_build(struct manifest *m,
-                            unsigned int *timeleft, struct score *score)
+                            unsigned int *timeleft UNNEEDED,
+                            struct score *score)
 {
-       build_objects(m, score, cflags, COMPILE_NORMAL);
+       const char *flags;
+
+       flags = cflags_list(m);
+       build_objects(m, score, flags, COMPILE_NORMAL);
 }
 
 struct ccanlint objects_build = {
@@ -73,7 +89,7 @@ struct ccanlint objects_build = {
        .compulsory = true,
        .check = check_objs_build,
        .can_run = can_build,
-       .needs = "depends_exist"
+       .needs = "depends_exist info_ported"
 };
 
 REGISTER_TEST(objects_build);