031387
"extern int errno" is just a really bad idea.
031387
031387
diff -up mariadb-5.5.33a/include/my_sys.h.p1 mariadb-5.5.33a/include/my_sys.h
031387
--- mariadb-5.5.33a/include/my_sys.h.p1	2013-09-20 00:34:26.000000000 +0200
031387
+++ mariadb-5.5.33a/include/my_sys.h	2013-10-21 14:46:46.866624871 +0200
031387
@@ -190,13 +190,8 @@ extern void my_large_free(uchar *ptr);
031387
 #define my_safe_alloca(size, min_length) ((size <= min_length) ? my_alloca(size) : my_malloc(size,MYF(MY_FAE)))
031387
 #define my_safe_afree(ptr, size, min_length) ((size <= min_length) ? my_afree(ptr) : my_free(ptr))
031387
 
031387
-#ifndef errno				/* did we already get it? */
031387
-#ifdef HAVE_ERRNO_AS_DEFINE
031387
 #include <errno.h>			/* errno is a define */
031387
-#else
031387
-extern int errno;			/* declare errno */
031387
-#endif
031387
-#endif					/* #ifndef errno */
031387
+
031387
 extern char *home_dir;			/* Home directory for user */
031387
 extern MYSQL_PLUGIN_IMPORT char  *mysql_data_home;
031387
 extern const char *my_progname;		/* program-name (printed in errors) */