--- /dev/null
+From 3bb8b5e4517a720d178dbe5c53b4a444d718bcf1 Mon Sep 17 00:00:00 2001
+From: Baruch Siach <baruch@tkos.co.il>
+Date: Fri, 14 Sep 2018 15:19:48 +0300
+Subject: [PATCH] cmake: check for GNU compatible glob support
+
+The GLOB_TILDE flag is a GNU extension. musl libc does not implement
+this extension, which leads to build failure:
+
+.../libssh-0.8.1/src/config.c: In function 'local_parse_glob':
+/home/buildroot/autobuild/run/instance-1/output/build/libssh-0.8.1/src/config.c:329:10: error: 'glob_t {aka struct <anonymous>}' has no member named 'gl_flags'; did you mean 'gl_offs'?
+ .gl_flags = 0,
+ ^~~~~~~~
+ gl_offs
+.../libssh-0.8.1/src/config.c:334:25: error: 'GLOB_TILDE' undeclared (first use in this function); did you mean '_IO_FILE'?
+ rt = glob(fileglob, GLOB_TILDE, NULL, &globbuf);
+ ^~~~~~~~~~
+ _IO_FILE
+
+Check for GLOB_TILDE directly to make sure the libc provides the
+required extension.
+
+Signed-off-by: Baruch Siach <baruch@tkos.co.il>
+---
+Upstream status: https://www.libssh.org/archive/libssh/2018-09/0000020.html
+
+ ConfigureChecks.cmake | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/ConfigureChecks.cmake b/ConfigureChecks.cmake
+index f91bd038f5a3..dac61bcf678e 100644
+--- a/ConfigureChecks.cmake
++++ b/ConfigureChecks.cmake
+@@ -156,7 +156,7 @@ check_function_exists(explicit_bzero HAVE_EXPLICIT_BZERO)
+ check_function_exists(memset_s HAVE_MEMSET_S)
+
+ if (HAVE_GLOB_H)
+- check_function_exists(glob HAVE_GLOB)
++ check_symbol_exists(GLOB_TILDE "glob.h" HAVE_GLOB)
+ endif (HAVE_GLOB_H)
+
+ if (NOT WIN32)
+--
+2.18.0
+