--- ./dom/system/OSFileConstants.cpp.orig 2013-04-17 06:17:29.798371189 +0000 +++ ./dom/system/OSFileConstants.cpp 2013-04-17 06:30:30.032285977 +0000 @@ -509,6 +509,11 @@ INT_CONSTANT(_STAT_VER), #endif // defined(_STAT_VER) + // glibc's stat/lstat/fstat are macros while uclibc's are not +#if defined(__GLIBC__) && !defined(__UCLIBC__) + { "OSFILE_STAT_MACROS", INT_TO_JSVAL(1) }, +#endif // defined(stat) + PROP_END }; --- ./toolkit/components/osfile/modules/osfile_unix_back.jsm.orig 2013-04-16 19:24:04.196535897 +0000 +++ ./toolkit/components/osfile/modules/osfile_unix_back.jsm 2013-04-17 06:49:08.869379007 +0000 @@ -502,7 +502,7 @@ /*path*/ Types.fd, /*buf*/ Types.stat.out_ptr ); - } else if (OS.Constants.libc._STAT_VER != undefined) { + } else if (OS.Constants.libc.OSFILE_STAT_MACROS != undefined) { const ver = OS.Constants.libc._STAT_VER; // Linux, all widths let xstat =