Browse Source

ccanlint: module_links test must link with module.

Gcc doesn't include unused inline functions, even without -O, but Solaris CC
does, so fails to link block_pool where one inline function refers to a
non-inline function.
Rusty Russell 14 years ago
parent
commit
6acab66f84
1 changed files with 7 additions and 2 deletions
  1. 7 2
      tools/ccanlint/tests/module_links.c

+ 7 - 2
tools/ccanlint/tests/module_links.c

@@ -23,13 +23,18 @@ static const char *can_build(struct manifest *m)
 
 static char *obj_list(const struct manifest *m)
 {
-	char *list = talloc_strdup(m, "");
+	char *list;
 	struct manifest *i;
 
+	if (m->compiled[COMPILE_NORMAL])
+		list = talloc_strdup(m, m->compiled[COMPILE_NORMAL]);
+	else
+		list = talloc_strdup(m, "");
+
 	/* Other CCAN deps. */
 	list_for_each(&m->deps, i, list) {
 		if (i->compiled[COMPILE_NORMAL])
-			list = talloc_asprintf_append(list, "%s ",
+			list = talloc_asprintf_append(list, " %s",
 						      i->compiled
 						      [COMPILE_NORMAL]);
 	}