diff --git a/scripts/upload_manifest.py b/scripts/upload_manifest.py index d5e817d21105b581d721615e73efd9ac1603b5ff..6cebc9f571fef3b5e9d04233ba3230ec379929f3 100755 --- a/scripts/upload_manifest.py +++ b/scripts/upload_manifest.py @@ -90,9 +90,22 @@ def upload(osv, manifest, depends): + cpio_field(0, 8) # check + filename + '\0') + def strip_file(filename): + stripped_filename = filename + if(filename.endswith(".so") and \ + (filename[0] != "/" or filename.startswith(os.getcwd()))): + stripped_filename = filename[:-3] + "-stripped.so" + if(not os.path.exists(stripped_filename) \ + or (os.path.getmtime(stripped_filename) < \ + os.path.getmtime(filename))): + subprocess.call(["strip", "-o", stripped_filename, filename]) + return stripped_filename + + # Send the files to the guest for name, hostname in files: depends.write('\t%s \\\n' % (hostname,)) + hostname = strip_file(hostname) cpio_send(cpio_header(name, os.stat(hostname).st_size)) with open(hostname, 'r') as f: cpio_send(f.read())