softether: add patch to fix build on uClibc toolchain without ifaddr support
authorThomas Petazzoni <thomas.petazzoni@free-electrons.com>
Fri, 3 Apr 2015 12:01:59 +0000 (14:01 +0200)
committerThomas Petazzoni <thomas.petazzoni@free-electrons.com>
Fri, 3 Apr 2015 12:01:59 +0000 (14:01 +0200)
This commit adds a patch to softether to make sure it doesn't use the
ifaddrs functions when they are not provided by the C library, which
can be the case with certain external uClibc toolchains.

Fixes:

  http://autobuild.buildroot.net/results/199/19992951da34a703a476dc62ea92e12927c8a02d/

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
package/softether/0007-uclibc-ai-addrconfig.patch [new file with mode: 0644]

diff --git a/package/softether/0007-uclibc-ai-addrconfig.patch b/package/softether/0007-uclibc-ai-addrconfig.patch
new file mode 100644 (file)
index 0000000..7d8f1c6
--- /dev/null
@@ -0,0 +1,27 @@
+Only enable getifaddrs support when available
+
+On uClibc, the ifaddrs.h support is optional. While the default
+Buildroot uClibc configuration has it enabled, some external
+toolchains may not. Therefore this patch detects that and adjusts
+softether usage of ifaddrs accordingly.
+
+Based on an initial patch from Bernd Kuhls.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/src/Mayaqua/Mayaqua.h
+===================================================================
+--- a/src/Mayaqua/Mayaqua.h
++++ b/src/Mayaqua/Mayaqua.h
+@@ -235,9 +235,11 @@
+ #ifdef        OS_UNIX\r
+ #ifndef       UNIX_SOLARIS\r
+ #ifndef       CPU_SH4\r
++#if !defined(__UCLIBC__) || defined(__UCLIBC_SUPPORT_AI_ADDRCONFIG__)\r
+ // Getifaddrs system call is supported on UNIX other than Solaris.\r
+ // However, it is not supported also by the Linux on SH4 CPU\r
+ #define       MAYAQUA_SUPPORTS_GETIFADDRS\r
++#endif  // !UCLIBC || UCLIBC_SUPPORT_AI_ADDRCONFIG\r
+ #endif        // CPU_SH4\r
+ #endif        // UNIX_SOLARIS\r
+ #endif        // OS_UNIX\r