include: Define __WORDSIZE if needed.

Signed-off-by: Andreas Schneider <asn@cryptomilk.org>
diff --git a/include/cmocka.h b/include/cmocka.h
index d1c057b..2980055 100644
--- a/include/cmocka.h
+++ b/include/cmocka.h
@@ -60,6 +60,16 @@
  * Largest integral type.  This type should be large enough to hold any
  * pointer or integer supported by the compiler.
  */
+
+/* If __WORDSIZE is not set, try to figure it out and default to 32 bit. */
+#ifndef __WORDSIZE
+# if defined(__x86_64__) && !defined(__ILP32__)
+#  define __WORDSIZE 64
+# else
+#  define __WORDSIZE 32
+# endif
+#endif
+
 #ifndef LargestIntegralType
 # if __WORDSIZE == 64
 #  define LargestIntegralType unsigned long int