diff options
author | Etienne Cordonnier <ecordonnier@snap.com> | 2023-03-02 14:23:41 +0100 |
---|---|---|
committer | Khem Raj <raj.khem@gmail.com> | 2023-03-06 10:21:29 -0800 |
commit | 398d4bc3805ca1c5cbb845aacccdb8999aabeab4 (patch) | |
tree | 20d08819f8a4bab186877edfd6bf1bf584cd3832 /dynamic-layers | |
parent | 39b89bbffe9e21bb2db5b2733b1f56610b6cdb45 (diff) | |
download | meta-clang-398d4bc3805ca1c5cbb845aacccdb8999aabeab4.tar.gz |
android-tools: fix libcrypto_utils link error
When building android-tools, this chain of dependency pulls the openssl library libcrypto.so.3 in recipe-sysroot:
clang-native -> cmake-native -> curl-native -> openssl-native
The issue is that libcrypto_utils attempt to link against the libcrypto.so produced by boringssl (debian/out/usr/lib/android/libcrypto.so),
but the -L flags added by yocto to CPPFLAGS appear before the -L flag provided in the patch, and therefore the wrong library is used.
Link explicitly against libcrypto.so.0 in order to ignore the openssl library and use boringssl instead.
Note: to debug this add -Wl,--verbose to LDFLAGS
Signed-off-by: Etienne Cordonnier <ecordonnier@snap.com>
Diffstat (limited to 'dynamic-layers')
-rw-r--r-- | dynamic-layers/selinux/android-tools/android-tools/libcrypto_utils_mk_change_out_dir.patch | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/dynamic-layers/selinux/android-tools/android-tools/libcrypto_utils_mk_change_out_dir.patch b/dynamic-layers/selinux/android-tools/android-tools/libcrypto_utils_mk_change_out_dir.patch index db613df..ec0db57 100644 --- a/dynamic-layers/selinux/android-tools/android-tools/libcrypto_utils_mk_change_out_dir.patch +++ b/dynamic-layers/selinux/android-tools/android-tools/libcrypto_utils_mk_change_out_dir.patch | |||
@@ -23,8 +23,9 @@ Signed-off-by: Nisha Parrakat <Nisha.Parrakat@kpit.com> | |||
23 | LDFLAGS += -shared -Wl,-soname,$(NAME).so.0 \ | 23 | LDFLAGS += -shared -Wl,-soname,$(NAME).so.0 \ |
24 | -Wl,-rpath=/usr/lib/$(DEB_HOST_MULTIARCH)/android \ | 24 | -Wl,-rpath=/usr/lib/$(DEB_HOST_MULTIARCH)/android \ |
25 | - -L/usr/lib/$(DEB_HOST_MULTIARCH)/android \ | 25 | - -L/usr/lib/$(DEB_HOST_MULTIARCH)/android \ |
26 | - -lcrypto -Wl,-z,defs | ||
26 | + -L$(OUT_DIR)/usr/lib/$(DEB_HOST_MULTIARCH)/android \ | 27 | + -L$(OUT_DIR)/usr/lib/$(DEB_HOST_MULTIARCH)/android \ |
27 | -lcrypto -Wl,-z,defs | 28 | + -l:libcrypto.so.0 -Wl,-z,defs |
28 | 29 | ||
29 | build: $(SOURCES) | 30 | build: $(SOURCES) |
30 | - $(CC) $^ -o $(NAME).so.0 $(CPPFLAGS) $(LDFLAGS) | 31 | - $(CC) $^ -o $(NAME).so.0 $(CPPFLAGS) $(LDFLAGS) |