On 9/3/20 4:24 AM, Michal Privoznik wrote:
As it turned out my previous commits which switched from HAVE_ to
WITH_ and dropped stdarg.h detection were a bit too aggressive.
Because of reasons described in 9ea3424a178 we need to define
HAVE_STDARG_H before including readline otherwise macos build
fails. Honestly, I still don't fully understand the problem so I
am not going to bother you with "explanation".
Signed-off-by: Michal Privoznik <mprivozn@xxxxxxxxxx>
---
tools/vsh.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/tools/vsh.c b/tools/vsh.c
index 2511089e6e..ef2a3f62d7 100644
--- a/tools/vsh.c
+++ b/tools/vsh.c
@@ -30,6 +30,10 @@
#include <signal.h>
#if WITH_READLINE
+/* In order to have proper rl_message declaration with older
+ * versions of readline, we have to declare this. See 9ea3424a178
+ * for more info. */
+# define HAVE_STDARG_H
# include <readline/readline.h>
# include <readline/history.h>
#endif
How common is it for library .h files to assume autotools-style HAVE_*
and WITH_* flags are defined? I'm just wondering if this particular
failure is just one instance that's indicating a more general problem.