diff options
author | Nisha Parrakat <nishaparrakat@gmail.com> | 2021-08-08 08:18:35 +0000 |
---|---|---|
committer | Khem Raj <raj.khem@gmail.com> | 2021-08-12 10:08:16 -0700 |
commit | 1f1d3812a10e5a20069545d3ec1e2ae034ab05af (patch) | |
tree | 8526dd017f373037618726fe20db169d8a561c31 /dynamic-layers/selinux/android-tools/android-tools/libadb_mk_change_out_dir.patch | |
parent | eb92914e31ff872c032155997c42ca8b6e6d82a3 (diff) | |
download | meta-clang-1f1d3812a10e5a20069545d3ec1e2ae034ab05af.tar.gz |
upgrade of android-tools to 10.0.0.r36
An older version is present in the meta-oe layer.
Took the old recipe and adapted it in the following way:
--Deleted all the old patches that were applicable for
old version.
--Used all the makefiles that come with the new version
directly from the source code, just modifying them
to install output to a specific folder as below
a)added rules_yocto.mk that will mimic the debian/rules
b)modified the makefiles of the components to output to
a common dir.
c)
Built boringssl crypto with the option -DOPENSSL_NO_ASM
to solve the below errors
libcrypto.so.0: undefined reference to `aes_hw_encrypt'
libcrypto.so.0: undefined reference to `aes_hw_set_encrypt_key'
libcrypto.so.0: undefined reference to `gcm_gmult_v8'
libcrypto.so.0: undefined reference to `gcm_init_v8'
libcrypto.so.0: undefined reference to `sha256_block_data_order'
libcrypto.so.0: undefined reference to `aes_hw_ctr32_encrypt_blocks'
libcrypto.so.0: undefined reference to `aes_hw_cbc_encrypt'
libcrypto.so.0: undefined reference to `vpaes_decrypt'
libcrypto.so.0: undefined reference to `vpaes_encrypt'
libcrypto.so.0: undefined reference to `gcm_gmult_neon'
libcrypto.so.0: undefined reference to `sha1_block_data_order'
libcrypto.so.0: undefined reference to `sha512_block_data_order'
libcrypto.so.0: undefined reference to `gcm_init_neon'
libcrypto.so.0: undefined reference to `aes_hw_set_decrypt_key'
libcrypto.so.0: undefined reference to `vpaes_set_decrypt_key'
libcrypto.so.0: undefined reference to `gcm_ghash_neon'
libcrypto.so.0: undefined reference to `bn_mul_mont'
libcrypto.so.0: undefined reference to `aes_hw_decrypt'
libcrypto.so.0: undefined reference to `gcm_ghash_v8'
libcrypto.so.0: undefined reference to `vpaes_cbc_encrypt'
libcrypto.so.0: undefined reference to `ChaCha20_ctr32'
libcrypto.so.0: undefined reference to `vpaes_ctr32_encrypt_blocks'
libcrypto.so.0: undefined reference to `vpaes_set_encrypt_key'
Attention : https://github.com/grpc/grpc/issues/9440
d) compiled android compatible version of libunwind to be used
to build libbacktrace
e) REQUIRES meta-selinux for libselinux, thus added it to
BBFILES_DYNAMIC of this layer.
f) checked compilation and packaging for for x86_64 and aarch64
g) UNTESTED android-tools-adbd.service , couldn't find how to build adbd
that is needed by the service with the new version of android-tools. At
present the service is still packaged but may not work.
h) tested the adb and fastboot on the core-image-minimal by including
the android-tools in the image and ran the commands with 'help'
Signed-off-by: Nisha Parrakat <Nisha.Parrakat@kpit.com>
Signed-off-by: Nisha Parrakat <nishaparrakat@gmail.com>
Diffstat (limited to 'dynamic-layers/selinux/android-tools/android-tools/libadb_mk_change_out_dir.patch')
-rw-r--r-- | dynamic-layers/selinux/android-tools/android-tools/libadb_mk_change_out_dir.patch | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/dynamic-layers/selinux/android-tools/android-tools/libadb_mk_change_out_dir.patch b/dynamic-layers/selinux/android-tools/android-tools/libadb_mk_change_out_dir.patch new file mode 100644 index 0000000..7094cca --- /dev/null +++ b/dynamic-layers/selinux/android-tools/android-tools/libadb_mk_change_out_dir.patch | |||
@@ -0,0 +1,44 @@ | |||
1 | libadb.mk: modifications to make it build in yocto environment | ||
2 | |||
3 | Adding an include file that is setting the common flags. | ||
4 | Changed the cppflag to include the headers from other components | ||
5 | of android-tools | ||
6 | |||
7 | Modified LDflags so that the libraries that are coming from other android-tools | ||
8 | are searched in the output folder. | ||
9 | |||
10 | Modified the build rule so that it outputs the binary to the OUT_DIR | ||
11 | |||
12 | Signed-off-by: Nisha Parrakat <Nisha.Parrakat@kpit.com> | ||
13 | |||
14 | --- git/system/core/debian/libadb.mk 2021-04-30 16:29:34.596618862 +0200 | ||
15 | +++ git/system/core/debian/libadb.mk 2021-04-30 16:36:53.932837490 +0200 | ||
16 | @@ -1,3 +1,4 @@ | ||
17 | +include ../../rules_yocto.mk | ||
18 | NAME := libadb | ||
19 | |||
20 | LIBADB_SRC_FILES := \ | ||
21 | @@ -43,18 +44,18 @@ | ||
22 | -Ibase/include \ | ||
23 | -Idiagnose_usb/include \ | ||
24 | -Ilibcrypto_utils/include \ | ||
25 | - -Iinclude \ | ||
26 | + -Iinclude -I$(OUT_DIR)/usr/include \ | ||
27 | -DPLATFORM_TOOLS_VERSION='"$(PLATFORM_TOOLS_VERSION)"' \ | ||
28 | -DADB_HOST=1 -DADB_VERSION='"$(DEB_VERSION)"' | ||
29 | |||
30 | LDFLAGS += -shared -Wl,-soname,$(NAME).so.0 \ | ||
31 | -Wl,-rpath=/usr/lib/$(DEB_HOST_MULTIARCH)/android \ | ||
32 | - -L/usr/lib/$(DEB_HOST_MULTIARCH)/android -lcrypto \ | ||
33 | - -lpthread -L. -lbase -lcutils -lcrypto_utils -lusb-1.0 | ||
34 | + -L$(OUT_DIR)/usr/lib/$(DEB_HOST_MULTIARCH)/android -lcrypto \ | ||
35 | + -lpthread -lbase -lcutils -lcrypto_utils -lusb-1.0 | ||
36 | |||
37 | $(NAME).so: $(SOURCES) | ||
38 | - $(CXX) $^ -o $(NAME).so.0 $(CXXFLAGS) $(CPPFLAGS) $(LDFLAGS) | ||
39 | - ln -s $(NAME).so.0 $(NAME).so | ||
40 | + $(CXX) $^ -o $(OUT_DIR)/usr/lib/$(DEB_HOST_MULTIARCH)/android/$(NAME).so.0 $(CXXFLAGS) $(CPPFLAGS) $(LDFLAGS) | ||
41 | + ln -s $(NAME).so.0 $(OUT_DIR)/usr/lib/$(DEB_HOST_MULTIARCH)/android/$(NAME).so | ||
42 | |||
43 | transport_mdns_unsupported.cpp: | ||
44 | echo 'void init_mdns_transport_discovery(void) {}' > transport_mdns_unsupported.cpp | ||