diff options
author | Eike Ziller <eike.ziller@qt.io> | 2023-03-22 09:38:48 +0100 |
---|---|---|
committer | Eike Ziller <eike.ziller@qt.io> | 2023-04-20 09:55:23 +0000 |
commit | 7879d8403375373ff99ac54a975b092ade1f0ecd (patch) | |
tree | 633e3b23105b5fc740af58ca407a625d35f8d09f | |
parent | b57971a9cd262a3c01938e9f0e3d79de842e806c (diff) |
deployqt: Support elfutils from Linux distribution
Which can be in a more complicated directory than just /usr/lib, like
/usr/lib/aarch64-linux-gnu .
So, recursively look for the elf library to determine the right
directory.
Change-Id: I58ed8a045fbde50dea8851f63409a5a0863c3b16
Reviewed-by: David Schulz <david.schulz@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
-rwxr-xr-x | scripts/deployqt.py | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/scripts/deployqt.py b/scripts/deployqt.py index 05113e43e7..79aea111bd 100755 --- a/scripts/deployqt.py +++ b/scripts/deployqt.py @@ -273,13 +273,20 @@ def deploy_elfutils(qtc_install_dir, chrpath_bin, args): if common.is_mac_platform(): return + libs = ['elf', 'dw'] + version = '1' + def lib_name(name, version): return ('lib' + name + '.so.' + version if common.is_linux_platform() else name + '.dll') - version = '1' - libs = ['elf', 'dw'] - elfutils_lib_path = os.path.join(args.elfutils_path, 'lib') + def find_elfutils_lib_path(path): + for root, _, files in os.walk(path): + if lib_name('elf', version) in files: + return root + return path + + elfutils_lib_path = find_elfutils_lib_path(os.path.join(args.elfutils_path, 'lib')) if common.is_linux_platform(): install_path = os.path.join(qtc_install_dir, 'lib', 'elfutils') backends_install_path = install_path |