Patrick Williams | c124f4f | 2015-09-15 14:41:29 -0500 | [diff] [blame] | 1 | From e33357b59a10d44e9bec5d24100ce23ca300cc79 Mon Sep 17 00:00:00 2001 |
| 2 | From: "Hong H. Pham" <hong.pham@windriver.com> |
| 3 | Date: Fri, 29 Aug 2014 17:13:55 +0300 |
| 4 | Subject: [PATCH] Check if wordexp function is supported |
| 5 | |
| 6 | eglibc could be configured to build without wordexp, so it is not enough |
| 7 | to check if wordexp.h exists (the header file could be installed, but it's |
| 8 | possible that the wordexp() function is not supported). An additional |
| 9 | check if wordexp() is supported by the system C library is needed. |
| 10 | |
| 11 | Upstream-Status: Inappropriate [configuration] |
| 12 | |
| 13 | Signed-off-by: Hong H. Pham <hong.pham@windriver.com> |
| 14 | Signed-off-by: Cristian Iorga <cristian.iorga@intel.com> |
| 15 | --- |
| 16 | configure.ac | 5 ++++- |
| 17 | src/userfile.c | 2 +- |
| 18 | 2 files changed, 5 insertions(+), 2 deletions(-) |
| 19 | |
| 20 | diff --git a/configure.ac b/configure.ac |
| 21 | index b8353a0..773b72f 100644 |
| 22 | --- a/configure.ac |
| 23 | +++ b/configure.ac |
| 24 | @@ -311,7 +311,10 @@ fi |
| 25 | AC_SUBST(ALSA_DEPLIBS) |
| 26 | |
| 27 | dnl Check for headers |
| 28 | -AC_CHECK_HEADERS([wordexp.h endian.h sys/endian.h]) |
| 29 | +AC_CHECK_HEADERS([wordexp.h endian.h sys/endian.h], |
| 30 | + dnl Make sure wordexp is supported by the C library |
| 31 | + AC_CHECK_FUNCS([wordexp]) |
| 32 | +) |
| 33 | |
| 34 | dnl Check for resmgr support... |
| 35 | AC_MSG_CHECKING(for resmgr support) |
| 36 | diff --git a/src/userfile.c b/src/userfile.c |
| 37 | index 3a73836..b8ce809 100644 |
| 38 | --- a/src/userfile.c |
| 39 | +++ b/src/userfile.c |
| 40 | @@ -32,7 +32,7 @@ |
| 41 | * stores the first matchine one. The returned string is strdup'ed. |
| 42 | */ |
| 43 | |
| 44 | -#ifdef HAVE_WORDEXP_H |
| 45 | +#if (defined(HAVE_WORDEXP_H) && defined(HAVE_WORDEXP)) |
| 46 | #include <wordexp.h> |
| 47 | #include <assert.h> |
| 48 | int snd_user_file(const char *file, char **result) |
| 49 | -- |
| 50 | 1.9.1 |
| 51 | |