]> git.ozlabs.org Git - ccan/blobdiff - tools/ccanlint/ccanlint.h
ccanlint: get rid of separate class of compulsory tests.
[ccan] / tools / ccanlint / ccanlint.h
index 9a4817092acecc6c08e67bffac7c43158bd3c1da..16600cff4d0e83411b9c6aab1e5722fc718838c8 100644 (file)
@@ -91,6 +91,9 @@ struct ccanlint {
        /* Can we run this test?  Return string explaining why, if not. */
        const char *(*can_run)(struct manifest *m);
 
+       /* Should we stop immediately if test fails? */
+       bool compulsory;
+
        /* keep is set if you should keep the results.
         * If timeleft is set to 0, means it timed out.
         * score is the result, and a talloc context freed after all our
@@ -235,6 +238,20 @@ char **per_file_options(const struct ccanlint *test, struct ccan_file *f);
 void score_file_error(struct score *, struct ccan_file *f, unsigned line,
                      const char *errorfmt, ...);
 
+/* Start a command in the background. */
+void run_command_async(const void *ctx, unsigned int time_ms,
+                      const char *fmt, ...);
+
+/* Async version of compile_and_link. */
+void compile_and_link_async(const void *ctx, unsigned int time_ms,
+                           const char *cfile, const char *ccandir,
+                           const char *objs, const char *compiler,
+                           const char *cflags,
+                           const char *libs, const char *outfile);
+
+/* Get results of a command, returning ctx (and free it). */
+void *collect_command(bool *ok, char **output);
+
 /* Normal tests. */
 extern struct ccanlint trailing_whitespace;