83 lines
3.1 KiB
Plaintext
83 lines
3.1 KiB
Plaintext
config BR2_PACKAGE_ANDROID_TOOLS
|
|
bool "android-tools"
|
|
# Technically, fastboot could build on noMMU systems. But
|
|
# since we need at least one of the three sub-options enabled,
|
|
# and adb/adbd can't be built on noMMU systems, and fastboot
|
|
# has some complicated dependencies, we simply make the whole
|
|
# package not available on noMMU platforms.
|
|
depends on BR2_USE_MMU
|
|
depends on BR2_TOOLCHAIN_HAS_THREADS
|
|
select BR2_PACKAGE_ANDROID_TOOLS_ADBD if \
|
|
!BR2_PACKAGE_ANDROID_TOOLS_FASTBOOT && \
|
|
!BR2_PACKAGE_ANDROID_TOOLS_ADB
|
|
help
|
|
This package contains the fastboot and adb utilities, that
|
|
can be used to interact with target devices using of these
|
|
protocols.
|
|
|
|
https://wiki.debian.org/AndroidTools#Original_android-tools_package
|
|
|
|
if BR2_PACKAGE_ANDROID_TOOLS
|
|
|
|
# We need kernel headers that support the __SANE_USERSPACE_TYPES__
|
|
# mechanism for 64 bits architectures, so that u64 gets defined as
|
|
# "unsigned long long" and not "unsigned long". We know that >= 3.16
|
|
# is needed for MIPS64 (kernel commit
|
|
# f4b3aa7cd9d32407670e67238c5ee752bb98f481) and >= 3.10 is needed for
|
|
# PowerPC64 (kernel commit
|
|
# 2c9c6ce0199a4d252e20c531cfdc9d24e39235c0). Without this, the build
|
|
# fails with a bad redefinition of u64 (the android-tools fastboot
|
|
# code defines it as "unsigned long long").
|
|
config BR2_PACKAGE_ANDROID_TOOLS_FASTBOOT_GOOD_KERNEL_HEADERS
|
|
bool
|
|
default y if BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_10 && (BR2_powerpc64 || BR2_powerpc64le)
|
|
default y if BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_16 && (BR2_mips64 || BR2_mips64el)
|
|
default y if !BR2_powerpc64 && !BR2_powerpc64le && !BR2_mips64 && !BR2_mips64el
|
|
|
|
config BR2_PACKAGE_ANDROID_TOOLS_FASTBOOT
|
|
bool "fastboot"
|
|
depends on BR2_TOOLCHAIN_HAS_THREADS # libselinux
|
|
depends on !BR2_STATIC_LIBS # libselinux
|
|
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_5 # libselinux -> libsepol
|
|
depends on BR2_PACKAGE_ANDROID_TOOLS_FASTBOOT_GOOD_KERNEL_HEADERS
|
|
select BR2_PACKAGE_LIBSELINUX
|
|
select BR2_PACKAGE_ZLIB
|
|
help
|
|
This option will build and install the fastboot utility for
|
|
the target, which can be used to reflash other target devices
|
|
implementing the fastboot protocol.
|
|
|
|
comment "fastboot needs a toolchain w/ threads, dynamic library, gcc >= 5"
|
|
depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS || \
|
|
!BR2_TOOLCHAIN_GCC_AT_LEAST_5
|
|
|
|
comment "fastboot needs headers >= 3.10 (PowerPC64), headers >= 3.16 (MIPS64)"
|
|
depends on !BR2_arc
|
|
depends on !BR2_PACKAGE_ANDROID_TOOLS_FASTBOOT_GOOD_KERNEL_HEADERS
|
|
|
|
config BR2_PACKAGE_ANDROID_TOOLS_ADB
|
|
bool "adb"
|
|
depends on BR2_USE_MMU # uses fork()
|
|
select BR2_PACKAGE_OPENSSL
|
|
select BR2_PACKAGE_ZLIB
|
|
help
|
|
This option will build and install the adb utility for the
|
|
target, which can be used to interact with other target
|
|
devices implementing the ADB protocol.
|
|
|
|
config BR2_PACKAGE_ANDROID_TOOLS_ADBD
|
|
bool "adbd"
|
|
depends on BR2_USE_MMU # uses fork()
|
|
select BR2_PACKAGE_OPENSSL
|
|
select BR2_PACKAGE_ZLIB
|
|
help
|
|
This option will build and install the adbd utility for the
|
|
target, which can be used to interact with a host machine
|
|
implementing the ADB protocol.
|
|
|
|
endif
|
|
|
|
comment "android-tools needs a toolchain w/ threads"
|
|
depends on BR2_USE_MMU
|
|
depends on !BR2_TOOLCHAIN_HAS_THREADS
|