diff mbox

include/common.h: fix build against current uClibc

Message ID 98c2959992086acd792ef9850c90cc9da8a2a063.1397392006.git.baruch@tkos.co.il
State Accepted
Commit 50c9e11f7ec21dfa17fd252426367333056ba7a5
Headers show

Commit Message

Baruch Siach April 13, 2014, 12:26 p.m. UTC
Commit dbe0fd17f2 (mtd-utils: new prompt() helper for talking to the user)
introduced a rpmatch() call. However, uClibc versions older than (not yet
released) 0.9.34 don't have rpmatch() implementation. Add one.

Cc: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
---
 include/common.h | 13 +++++++++++++
 1 file changed, 13 insertions(+)

Comments

Mike Frysinger April 14, 2014, 10:35 p.m. UTC | #1
Acked-by: Mike Frysinger <vapier@gentoo.org>
-mike
Artem Bityutskiy April 15, 2014, 12:56 p.m. UTC | #2
On Sun, 2014-04-13 at 15:26 +0300, Baruch Siach wrote:
> Commit dbe0fd17f2 (mtd-utils: new prompt() helper for talking to the user)
> introduced a rpmatch() call. However, uClibc versions older than (not yet
> released) 0.9.34 don't have rpmatch() implementation. Add one.
> 
> Cc: Mike Frysinger <vapier@gentoo.org>
> Signed-off-by: Baruch Siach <baruch@tkos.co.il>

Pushed to mtd-utils.git, thanks!
diff mbox

Patch

diff --git a/include/common.h b/include/common.h
index 4ffccea17213..3b1366e927c4 100644
--- a/include/common.h
+++ b/include/common.h
@@ -102,6 +102,19 @@  extern "C" {
 	fprintf(stderr, "%s: warning!: " fmt "\n", PROGRAM_NAME, ##__VA_ARGS__); \
 } while(0)
 
+#if defined(__UCLIBC__)
+/* uClibc versions before 0.9.34 don't have rpmatch() */
+#if __UCLIBC_MAJOR__ == 0 && \
+		(__UCLIBC_MINOR__ < 9 || \
+		(__UCLIBC_MINOR__ == 9 && __UCLIBC_SUBLEVEL__ < 34))
+static inline int rpmatch(const char *resp)
+{
+    return (resp[0] == 'y' || resp[0] == 'Y') ? 1 :
+	(resp[0] == 'n' || resp[0] == 'N') ? 0 : -1;
+}
+#endif
+#endif
+
 /**
  * prompt the user for confirmation
  */