summaryrefslogtreecommitdiffstats
path: root/package/android-tools/0004-Fix-build-issue-with-musl.patch
diff options
context:
space:
mode:
authorThomas Petazzoni <thomas.petazzoni@free-electrons.com>2015-11-23 17:27:12 +0100
committerThomas Petazzoni <thomas.petazzoni@free-electrons.com>2016-04-30 19:04:10 +0200
commit88cbfd1007f221a40382d8828eb26ebb8b83c173 (patch)
tree46425f7ba9c50a2daa21d24ba7abc5b9eb71991d /package/android-tools/0004-Fix-build-issue-with-musl.patch
parent644d020b65842fccda158d415359ef24666d2706 (diff)
downloadbuildroot-88cbfd1007f221a40382d8828eb26ebb8b83c173.tar.gz
buildroot-88cbfd1007f221a40382d8828eb26ebb8b83c173.zip
android-tools: add new package
This package allows to build the fastboot and adb host utilities, which can be used to interact with target devices implementing one of these protocols. The work behind the host utilities was funded by ECA Group <http://www.ecagroup.com>. ECA Group is the copyright owner of the contributed code. The package also allows to build fastboot, adb and adbd daemon for the target. Regarding adbd, the target is required to have the FunctionFS USB Gadget configuration. Then the following commands enable the use of adb: # modprobe g_ffs idVendor=0x18d1 idProduct=0x4e42 \ iSerialNumber="buildroot" # mkdir -p /dev/usb-ffs/adb # mount -t functionfs adb /dev/usb-ffs/adb -o uid=2000,gid=2000 # adbd & Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Antoine Tenart <antoine.tenart@free-electrons.com> Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com> Tested-by: Julien Corjon <corjon.j@ecagroup.com> [Thomas: - update on top of master. - fix Config.in.host prompt, it should have been "host android-tools" and not just "android-tools".] Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Diffstat (limited to 'package/android-tools/0004-Fix-build-issue-with-musl.patch')
-rw-r--r--package/android-tools/0004-Fix-build-issue-with-musl.patch231
1 files changed, 231 insertions, 0 deletions
diff --git a/package/android-tools/0004-Fix-build-issue-with-musl.patch b/package/android-tools/0004-Fix-build-issue-with-musl.patch
new file mode 100644
index 0000000000..e5ba0e6ec4
--- /dev/null
+++ b/package/android-tools/0004-Fix-build-issue-with-musl.patch
@@ -0,0 +1,231 @@
+[PATCH] Fix build issue with musl
+
+cdefs.h header doesn't exist in musl toolchains:
+http://wiki.musl-libc.org/wiki/FAQ
+
+Also arpa/nameser.h doesn't use the same macro name to avoid several
+inclusions.
+
+Finally had an issue with framebuffer_service.c since it was missing the
+TEMP_FAILURE_RETRY macro.
+
+Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com>
+---
+ core/adbd/arpa_nameser.h | 12 +++++++++---
+ core/adbd/base64.c | 1 -
+ core/adbd/framebuffer_service.c | 1 +
+ core/adbd/qemu_pipe.h | 1 -
+ core/include/cutils/android_reboot.h | 8 ++++++--
+ core/include/cutils/bitops.h | 10 ++++++----
+ core/include/cutils/partition_utils.h | 8 ++++++--
+ extras/ext4_utils/sha1.c | 3 ---
+ extras/ext4_utils/sha1.h | 13 ++++++-------
+ 9 files changed, 34 insertions(+), 23 deletions(-)
+
+diff --git a/core/adbd/arpa_nameser.h b/core/adbd/arpa_nameser.h
+index 438dc04..b2a28d6 100644
+--- a/core/adbd/arpa_nameser.h
++++ b/core/adbd/arpa_nameser.h
+@@ -52,11 +52,12 @@
+
+ #ifndef _ARPA_NAMESER_H_
+ #define _ARPA_NAMESER_H_
++#ifndef _ARPA_NAMESER_H
++#define _ARPA_NAMESER_H
+
+ #define BIND_4_COMPAT
+
+ #include <sys/types.h>
+-#include <sys/cdefs.h>
+
+ /*
+ * Revision information. This is the release date in YYYYMMDD format.
+@@ -505,7 +506,9 @@ typedef enum __ns_cert_types {
+ #define ns_makecanon __ns_makecanon
+ #define ns_samename __ns_samename
+
+-__BEGIN_DECLS
++#ifdef __cplusplus
++extern "C" {
++#endif
+ int ns_msg_getflag(ns_msg, int);
+ uint16_t ns_get16(const u_char *);
+ uint32_t ns_get32(const u_char *);
+@@ -560,7 +563,9 @@ int ns_samedomain(const char *, const char *);
+ int ns_subdomain(const char *, const char *);
+ int ns_makecanon(const char *, char *, size_t);
+ int ns_samename(const char *, const char *);
+-__END_DECLS
++#ifdef __cplusplus
++}
++#endif
+
+ #ifdef BIND_4_COMPAT
+ #include "arpa_nameser_compat.h"
+@@ -574,4 +579,5 @@ __END_DECLS
+ #define XLOG(...) do {} while (0)
+ #endif
+
++#endif /* !_ARPA_NAMESER_H */
+ #endif /* !_ARPA_NAMESER_H_ */
+diff --git a/core/adbd/base64.c b/core/adbd/base64.c
+index 7270703..73725f5 100644
+--- a/core/adbd/base64.c
++++ b/core/adbd/base64.c
+@@ -42,7 +42,6 @@
+ * IF IBM IS APPRISED OF THE POSSIBILITY OF SUCH DAMAGES.
+ */
+
+-#include <sys/cdefs.h>
+ #if defined(LIBC_SCCS) && !defined(lint)
+ __RCSID("$NetBSD: base64.c,v 1.8 2002/11/11 01:15:17 thorpej Exp $");
+ #endif /* LIBC_SCCS and not lint */
+diff --git a/core/adbd/framebuffer_service.c b/core/adbd/framebuffer_service.c
+index 20c08d2..48e0241 100644
+--- a/core/adbd/framebuffer_service.c
++++ b/core/adbd/framebuffer_service.c
+@@ -26,6 +26,7 @@
+ #include "fdevent.h"
+ #include "adb.h"
+
++#include <cutils/fs.h>
+ #include <linux/fb.h>
+ #include <sys/ioctl.h>
+ #include <sys/mman.h>
+diff --git a/core/adbd/qemu_pipe.h b/core/adbd/qemu_pipe.h
+index 1a67022..572a242 100644
+--- a/core/adbd/qemu_pipe.h
++++ b/core/adbd/qemu_pipe.h
+@@ -16,7 +16,6 @@
+ #ifndef ANDROID_INCLUDE_HARDWARE_QEMU_PIPE_H
+ #define ANDROID_INCLUDE_HARDWARE_QEMU_PIPE_H
+
+-#include <sys/cdefs.h>
+ #include <unistd.h>
+ #include <fcntl.h>
+ #include <sys/mman.h>
+diff --git a/core/include/cutils/android_reboot.h b/core/include/cutils/android_reboot.h
+index 0c79be7..2ebe1cf 100644
+--- a/core/include/cutils/android_reboot.h
++++ b/core/include/cutils/android_reboot.h
+@@ -17,7 +17,9 @@
+ #ifndef __CUTILS_ANDROID_REBOOT_H__
+ #define __CUTILS_ANDROID_REBOOT_H__
+
+-__BEGIN_DECLS
++#ifdef __cplusplus
++extern "C" {
++#endif
+
+ /* Commands */
+ #define ANDROID_RB_RESTART 0xDEAD0001
+@@ -30,6 +32,8 @@ __BEGIN_DECLS
+
+ int android_reboot(int cmd, int flags, char *arg);
+
+-__END_DECLS
++#ifdef __cplusplus
++}
++#endif
+
+ #endif /* __CUTILS_ANDROID_REBOOT_H__ */
+diff --git a/core/include/cutils/bitops.h b/core/include/cutils/bitops.h
+index 1b3b762..a7c8cab 100644
+--- a/core/include/cutils/bitops.h
++++ b/core/include/cutils/bitops.h
+@@ -17,9 +17,9 @@
+ #ifndef __CUTILS_BITOPS_H
+ #define __CUTILS_BITOPS_H
+
+-#include <sys/cdefs.h>
+-
+-__BEGIN_DECLS
++#ifdef __cplusplus
++extern "C" {
++#endif
+
+ static inline int popcount(unsigned int x)
+ {
+@@ -36,6 +36,8 @@ static inline int popcountll(unsigned long long x)
+ return __builtin_popcountll(x);
+ }
+
+-__END_DECLS
++#ifdef __cplusplus
++}
++#endif
+
+ #endif /* __CUTILS_BITOPS_H */
+diff --git a/core/include/cutils/partition_utils.h b/core/include/cutils/partition_utils.h
+index 597df92..0da9d5b 100644
+--- a/core/include/cutils/partition_utils.h
++++ b/core/include/cutils/partition_utils.h
+@@ -17,11 +17,15 @@
+ #ifndef __CUTILS_PARTITION_WIPED_H__
+ #define __CUTILS_PARTITION_WIPED_H__
+
+-__BEGIN_DECLS
++#ifdef __cplusplus
++extern "C" {
++#endif
+
+ int partition_wiped(char *source);
+ void erase_footer(const char *dev_path, long long size);
+
+-__END_DECLS
++#ifdef __cplusplus
++}
++#endif
+
+ #endif /* __CUTILS_PARTITION_WIPED_H__ */
+diff --git a/extras/ext4_utils/sha1.c b/extras/ext4_utils/sha1.c
+index 463ec38..e2e29cf 100644
+--- a/extras/ext4_utils/sha1.c
++++ b/extras/ext4_utils/sha1.c
+@@ -17,9 +17,6 @@
+
+ #define SHA1HANDSOFF /* Copies data before messing with it. */
+
+-#ifndef USE_MINGW
+-#include <sys/cdefs.h>
+-#endif
+ #include <sys/types.h>
+ #include <assert.h>
+ #include <string.h>
+diff --git a/extras/ext4_utils/sha1.h b/extras/ext4_utils/sha1.h
+index 9a8f7e3..fe3217e 100644
+--- a/extras/ext4_utils/sha1.h
++++ b/extras/ext4_utils/sha1.h
+@@ -17,11 +17,6 @@ typedef unsigned char u_char;
+ typedef unsigned int uint32_t;
+ typedef unsigned int u_int32_t;
+ typedef unsigned int u_int;
+-
+-#define __BEGIN_DECLS
+-#define __END_DECLS
+-#else
+-#include <sys/cdefs.h>
+ #endif
+
+ #define SHA1_DIGEST_LENGTH 20
+@@ -33,11 +28,15 @@ typedef struct {
+ u_char buffer[64];
+ } SHA1_CTX;
+
+-__BEGIN_DECLS
++#ifdef __cplusplus
++extern "C" {
++#endif
+ void SHA1Transform(uint32_t[5], const u_char[64]);
+ void SHA1Init(SHA1_CTX *);
+ void SHA1Update(SHA1_CTX *, const u_char *, u_int);
+ void SHA1Final(u_char[SHA1_DIGEST_LENGTH], SHA1_CTX *);
+-__END_DECLS
++#ifdef __cplusplus
++}
++#endif
+
+ #endif /* _SYS_SHA1_H_ */
+--
+2.6.1
+
OpenPOWER on IntegriCloud