diff --git mesonbuild/build.py mesonbuild/build.py
index cf71dc2..1118830 100644
--- mesonbuild/build.py
+++ mesonbuild/build.py
@@ -131,7 +131,7 @@ def _process_install_tag(install_tag: T.Optional[T.List[T.Optional[str]]],
 
 @lru_cache(maxsize=None)
 def get_target_macos_dylib_install_name(ld) -> str:
-    name = ['@rpath/', ld.prefix, ld.name]
+    name = ['@loader_path/', ld.prefix, ld.name]
     if ld.soversion is not None:
         name.append('.' + ld.soversion)
     name.append('.dylib')
diff --git mesonbuild/linkers/linkers.py mesonbuild/linkers/linkers.py
index c4df0fa..88a04c1 100644
--- mesonbuild/linkers/linkers.py
+++ mesonbuild/linkers/linkers.py
@@ -705,7 +705,7 @@ class GnuLikeDynamicLinkerMixin(DynamicLinkerBase):
                 paths = padding
             else:
                 paths = paths + ':' + padding
-        args.extend(self._apply_prefix('-rpath,' + paths))
+        #KEN args.extend(self._apply_prefix('-rpath,' + paths))
 
         # TODO: should this actually be "for solaris/sunos"?
         # NOTE: Remove the zigcc check once zig support "-rpath-link"
@@ -808,7 +808,7 @@ class AppleDynamicLinker(PosixDynamicLinkerMixin, DynamicLinker):
 
     def get_soname_args(self, env: 'Environment', prefix: str, shlib_name: str,
                         suffix: str, soversion: str, darwin_versions: T.Tuple[str, str]) -> T.List[str]:
-        install_name = ['@rpath/', prefix, shlib_name]
+        install_name = ['@loader_path/', prefix, shlib_name]
         if soversion is not None:
             install_name.append('.' + soversion)
         install_name.append('.dylib')
@@ -834,7 +834,7 @@ class AppleDynamicLinker(PosixDynamicLinkerMixin, DynamicLinker):
             all_paths.update(build_rpath.split(':'))
         for rp in all_paths:
             rpath_dirs_to_remove.add(rp.encode('utf8'))
-            args.extend(self._apply_prefix('-rpath,' + rp))
+            #KEN args.extend(self._apply_prefix('-rpath,' + rp))
 
         return (args, rpath_dirs_to_remove)
 
@@ -1204,8 +1204,8 @@ class NAGDynamicLinker(PosixDynamicLinkerMixin, DynamicLinker):
         all_paths = mesonlib.OrderedSet([os.path.join(origin_placeholder, p) for p in processed_rpaths])
         if build_rpath != '':
             all_paths.add(build_rpath)
-        for rp in all_paths:
-            args.extend(self._apply_prefix('-Wl,-Wl,,-rpath,,' + rp))
+        #KEN for rp in all_paths:
+        #KEN    args.extend(self._apply_prefix('-Wl,-Wl,,-rpath,,' + rp))
 
         return (args, set())
 
diff --git mesonbuild/modules/gnome.py mesonbuild/modules/gnome.py
index a1513c6..92b8147 100644
--- mesonbuild/modules/gnome.py
+++ mesonbuild/modules/gnome.py
@@ -625,8 +625,8 @@ class GnomeModule(ExtensionModule):
         if isinstance(lib, build.SharedLibrary):
             libdir = os.path.join(state.environment.get_build_dir(), state.backend.get_target_dir(lib))
             link_command.append('-L' + libdir)
-            if include_rpath:
-                link_command.append('-Wl,-rpath,' + libdir)
+            #KEN if include_rpath:
+            #KEN    link_command.append('-Wl,-rpath,' + libdir)
             new_depends.append(lib)
             # Needed for the following binutils bug:
             # https://github.com/mesonbuild/meson/issues/1911
@@ -635,8 +635,8 @@ class GnomeModule(ExtensionModule):
             for d in state.backend.determine_rpath_dirs(lib):
                 d = os.path.join(state.environment.get_build_dir(), d)
                 link_command.append('-L' + d)
-                if include_rpath:
-                    link_command.append('-Wl,-rpath,' + d)
+                #KEN if include_rpath:
+                #KEN    link_command.append('-Wl,-rpath,' + d)
         if use_gir_args and self._gir_has_option('--extra-library'):
             link_command.append('--extra-library=' + lib.name)
         else:
@@ -701,8 +701,8 @@ class GnomeModule(ExtensionModule):
                             getattr(dep, 'is_libtool', False)):
                         lib_dir = os.path.dirname(flag)
                         external_ldflags.update([f'-L{lib_dir}'])
-                        if include_rpath:
-                            external_ldflags.update([f'-Wl,-rpath {lib_dir}'])
+                        #KEN if include_rpath:
+                        #KEN    external_ldflags.update([f'-Wl,-rpath {lib_dir}'])
                         libname = os.path.basename(flag)
                         if libname.startswith("lib"):
                             libname = libname[3:]
diff --git mesonbuild/scripts/depfixer.py mesonbuild/scripts/depfixer.py
index db9c97d..77e8feb 100644
--- mesonbuild/scripts/depfixer.py
+++ mesonbuild/scripts/depfixer.py
@@ -420,9 +420,9 @@ def fix_darwin(fname: str, rpath_dirs_to_remove: T.Set[bytes], new_rpath: str, f
         args = []
         # compute diff, translate it into -delete_rpath and -add_rpath
         # calls
-        for path in new_rpaths:
-            if path not in old_rpaths:
-                args += ['-add_rpath', path]
+        #KEN for path in new_rpaths:
+            #KEN if path not in old_rpaths:
+            #KEN    args += ['-add_rpath', path]
         for path in old_rpaths:
             if path not in new_rpaths:
                 args += ['-delete_rpath', path]
