--- a/Incremental.c
+++ b/Incremental.c
@@ -1642,6 +1642,10 @@ static int Incremental_container(struct
 	if (ra_all == ra_blocked)
 		return 0;
 
+#ifndef MDADM_FULL
+	return 0;
+#endif
+
 	/* Now move all suitable spares from spare container */
 	domains = domain_from_array(list, st->ss->name);
 	memcpy(suuid, uuid_zero, sizeof(int[4]));
--- a/util.c
+++ b/util.c
@@ -1151,7 +1151,9 @@ void wait_for(char *dev, int fd)
 struct superswitch *superlist[] =
 {
 	&super0, &super1,
+#ifdef MDADM_FULL
 	&super_ddf, &super_imsm,
+#endif
 	&mbr, &gpt,
 	NULL };
 
