+static char *
+FcCacheProduceMachineSignature ()
+{
+ static char buf[MACHINE_SIGNATURE_SIZE];
+ int magic = ENDIAN_TEST;
+ char * m = (char *)&magic;
+
+ sprintf (buf, "%2x%2x%2x%2x "
+ "%4x %4x %4x %4x %4x %4x %4x %4x %4x %4x %4x %4x "
+ "%4x %4x %4x %4x %4x %4x %4x\n",
+ m[0], m[1], m[2], m[3],
+ sizeof (char),
+ sizeof (char *),
+ sizeof (int),
+ sizeof (FcPattern),
+ sizeof (FcPatternEltPtr),
+ sizeof (struct _FcPatternElt *),
+ sizeof (FcPatternElt),
+ sizeof (FcObjectPtr),
+ sizeof (FcValueListPtr),
+ sizeof (FcValue),
+ sizeof (FcValueBinding),
+ sizeof (struct _FcValueList *),
+ sizeof (FcCharSet),
+ sizeof (FcCharLeaf **),
+ sizeof (FcChar16 *),
+ sizeof (FcChar16),
+ sizeof (FcCharLeaf),
+ sizeof (FcChar32),
+ sizeof (FcCache));
+
+ return buf;
+}
+