summaryrefslogtreecommitdiffstats
path: root/package/mdadm/mdadm-020-uclibc-dont-force-largefile.patch
diff options
context:
space:
mode:
Diffstat (limited to 'package/mdadm/mdadm-020-uclibc-dont-force-largefile.patch')
-rw-r--r--package/mdadm/mdadm-020-uclibc-dont-force-largefile.patch27
1 files changed, 27 insertions, 0 deletions
diff --git a/package/mdadm/mdadm-020-uclibc-dont-force-largefile.patch b/package/mdadm/mdadm-020-uclibc-dont-force-largefile.patch
new file mode 100644
index 000000000..fe3ab47d3
--- /dev/null
+++ b/package/mdadm/mdadm-020-uclibc-dont-force-largefile.patch
@@ -0,0 +1,27 @@
+[PATCH] mdadm: don't enable largefile support unconditionally on uClibc
+
+uClibc can be compiled without largefile support (and errors out if
+_FILE_OFFSET_BITS is set to 64), so don't define it if that combination
+is detected.
+
+Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
+---
+ mdadm.h | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+Index: mdadm-3.2.6/mdadm.h
+===================================================================
+--- mdadm-3.2.6.orig/mdadm.h
++++ mdadm-3.2.6/mdadm.h
+@@ -23,7 +23,11 @@
+ */
+
+ #define _GNU_SOURCE
++#include <features.h>
++/* uclibc without largefile support #errors on _FILE_OFFSET_BITS=64 */
++#if !(defined(__UCLIBC__) && !defined(__UCLIBC_HAS_LFS__))
+ #define _FILE_OFFSET_BITS 64
++#endif
+ #include <unistd.h>
+ #if !defined(__dietlibc__) && !defined(__KLIBC__)
+ extern __off64_t lseek64 __P ((int __fd, __off64_t __offset, int __whence));