summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJussi Pakkanen <jpakkane@gmail.com>2018-04-29 20:45:46 +0300
committerJussi Pakkanen <jpakkane@gmail.com>2018-04-29 20:45:46 +0300
commit2c0be63393a329e74f80ed3306172d438e4787aa (patch)
treee01b393bb1593e1920ce5f97c3e7b1d5cd184ce8
parentccaf5711cd50c2119d03cda77d378e1a87eca0c9 (diff)
downloadmeson-osxdepfixerfixes.tar.gz
Made depfixer more robust on OSX. Closes #3493.osxdepfixerfixes
-rw-r--r--mesonbuild/scripts/depfixer.py14
1 files changed, 10 insertions, 4 deletions
diff --git a/mesonbuild/scripts/depfixer.py b/mesonbuild/scripts/depfixer.py
index 41ede1d5e..185c76a4c 100644
--- a/mesonbuild/scripts/depfixer.py
+++ b/mesonbuild/scripts/depfixer.py
@@ -347,7 +347,9 @@ def fix_elf(fname, new_rpath, verbose=True):
e.fix_rpath(new_rpath)
def get_darwin_rpaths_to_remove(fname):
- out = subprocess.check_output(['otool', '-l', fname], universal_newlines=True)
+ out = subprocess.check_output(['otool', '-l', fname],
+ universal_newlines=True,
+ stderr=subprocess.DEVNULL)
result = []
current_cmd = 'FOOBAR'
for line in out.split('\n'):
@@ -371,9 +373,13 @@ def fix_darwin(fname, new_rpath):
return
try:
for rp in rpaths:
- subprocess.check_call(['install_name_tool', '-delete_rpath', rp, fname])
- if new_rpath != '':
- subprocess.check_call(['install_name_tool', '-add_rpath', new_rpath, fname])
+ subprocess.check_call(['install_name_tool', '-delete_rpath', rp, fname],
+ stdout=subprocess.DEVNULL,
+ stderr=subprocess.DEVNULL)
+ if new_rpath:
+ subprocess.check_call(['install_name_tool', '-add_rpath', new_rpath, fname],
+ stdout=subprocess.DEVNULL,
+ stderr=subprocess.DEVNULL)
except Exception as e:
raise
sys.exit(0)