-/* This also needs to compile the info file. */
-char **get_libs(const void *ctx, const char *dir,
- unsigned int *num, char **infofile);
+/* This also needs to compile the info file:
+ * style == NULL: don't recurse.
+ * style == depends: recurse dependencies.
+ * style == testdepends: recurse testdepends and depends.
+ */
+char **get_libs(const void *ctx, const char *dir, const char *style,
+ char *(*get_info)(const void *ctx, const char *dir));
+
+char **get_cflags(const void *ctx, const char *dir,
+ char *(*get_info)(const void *ctx, const char *dir));
+
+char *get_ported(const void *ctx, const char *dir, bool recurse,
+ char *(*get_info)(const void *ctx, const char *dir));