On 1/22/20 2:24 PM, Wainer dos Santos Moschetta wrote:

On 1/22/20 8:22 AM, Alex Bennée wrote:
When we are copying we want to ensure we grab the first
resolution (the found in path section). However even that binary might
be a symlink so lets make sure we chase the symlinks to copy the right
binary to where it can be found.

Signed-off-by: Alex Bennée <alex.ben...@linaro.org>
---
  tests/docker/docker.py | 3 ++-
  1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/tests/docker/docker.py b/tests/docker/docker.py
index 31d8adf836..96d4326d53 100755
--- a/tests/docker/docker.py
+++ b/tests/docker/docker.py
@@ -109,7 +109,7 @@ def _get_so_libs(executable):
      ensure theright data is copied."""
      libs = []
-    ldd_re = re.compile(r"(/.*/)(\S*)")
+    ldd_re = re.compile(r"=> ?(/.*/)(\S*)")

Why the 'optional space' after "=>"?

      try:
          ldd_output = subprocess.check_output(["ldd", executable]).decode('utf-8')
          for line in ldd_output.split("\n"):
@@ -145,6 +145,7 @@ def _copy_binary_with_libs(src, bin_dest, dest_dir):
      if libs:
          for l in libs:
              so_path = os.path.dirname(l)
+            real_l = os.path.realpath(l)

real_l is not used.

I suppose the idea is to use it as:

                _copy_with_mkdir(real_l, dest_dir, so_path)


- Wainer

              _copy_with_mkdir(l, dest_dir, so_path)



Reply via email to