# --- SDE-COPYRIGHT-NOTE-BEGIN ---
# This copyright note is auto-generated by ./scripts/Create-CopyPatch.
#
# Filename: package/.../mdadm/mdadm-3.2.2-no-susv3-legacy.patch
# Copyright (C) 2010 - 2011 The OpenSDE Project
#
# More information can be found in the files COPYING and README.
#
# This patch file is dual-licensed. It is available under the license the
# patched project is licensed under, as long as it is an OpenSource license
# as defined at http://www.opensource.org/ (e.g. BSD, X11) or under the terms
# of the GNU General Public License as published by the Free Software
# Foundation; either version 2 of the License, or (at your option) any later
# version.
# --- SDE-COPYRIGHT-NOTE-END ---

Description: Replace usleep() with nanosleep()

usleep() was deprecated by SUSv3 and newer LIBCs are starting to enforce that
deprecation.

--- mdadm-3.2.2/mdadm.h.orig	2011-08-21 01:13:43.876087027 +0200
+++ mdadm-3.2.2/mdadm.h	2011-08-21 01:20:20.980080863 +0200
@@ -1343,5 +1343,16 @@
  */
 #ifndef PATH_MAX
 #define PATH_MAX	4096
+
+/* usleep() was deprecated by SUSv3 and newer LIBCs are starting to
+ * enforce that deprecation.
+ */
+#define usleep(x)     xx_usleep(x)
+static inline void xx_usleep(unsigned k)
+{
+	const struct timespec t = { k/1000000UL, (k%1000000UL)*1000UL };
+	nanosleep(&t, NULL);
+}
+
 #endif