From bb45cda0231e99618571dc835348cf5c3345e277 Mon Sep 17 00:00:00 2001 From: Jim Myhrberg Date: Thu, 20 May 2021 01:53:28 +0100 Subject: [PATCH] fix(embed): avoid potential error caused by trying to set duplicate rpath --- build-emacs-for-macos | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/build-emacs-for-macos b/build-emacs-for-macos index a55f385..cb499f2 100755 --- a/build-emacs-for-macos +++ b/build-emacs-for-macos @@ -628,9 +628,14 @@ class LibEmbedder < AbstractEmbedder Pathname.new(File.dirname(exe)) ).to_s - while_writable(exe) do - system('install_name_tool', '-add_rpath', - File.join('@executable_path', rel_path), exe) + rpath = File.join('@executable_path', rel_path) + rpaths = `otool -l "#{exe}" | grep -A 2 'cmd LC_RPATH' | grep 'path'` + + unless rpaths.include?(rpath) + while_writable(exe) do + system('install_name_tool', '-add_rpath', + File.join('@executable_path', rel_path), exe) + end end `otool -L "#{exe}"`.split("\n")[1..-1].each do |line|