--- meson-0.63.3.old/mesonbuild/minstall.py +++ meson-0.63.3/mesonbuild/minstall.py @@ -333,7 +334,8 @@ def fix_rpath(self, *args: T.Any, **kwargs: T.Any) -> None: if not self.dry_run: - depfixer.fix_rpath(*args, **kwargs) + # depfixer.fix_rpath (*args, **kwargs) + print ("meson: rpath changes at install time disabled") def set_chown(self, *args: T.Any, **kwargs: T.Any) -> None: if not self.dry_run: @@ -714,16 +724,9 @@ raise RuntimeError(f'Unknown file type for {fname!r}') if file_copied: self.did_install_something = True - try: - self.fix_rpath(outname, t.rpath_dirs_to_remove, install_rpath, final_path, - install_name_mappings, verbose=False) - except SystemExit as e: - if isinstance(e.code, int) and e.code == 0: - pass - else: - raise # file mode needs to be set last, after strip/depfixer editing self.set_mode(outname, install_mode, d.install_umask) + # nothing def rebuild_all(wd: str) -> bool: if not (Path(wd) / 'build.ninja').is_file(): --- meson-0.63.3.old/mesonbuild/scripts/depfixer.py +++ meson-0.63.3/mesonbuild/scripts/depfixer.py @@ -314,12 +314,14 @@ self.bf.write(newname) def fix_rpath(self, fname: str, rpath_dirs_to_remove: T.Set[bytes], new_rpath: bytes) -> None: + return # The path to search for can be either rpath or runpath. # Fix both of them to be sure. self.fix_rpathtype_entry(fname, rpath_dirs_to_remove, new_rpath, DT_RPATH) self.fix_rpathtype_entry(fname, rpath_dirs_to_remove, new_rpath, DT_RUNPATH) def fix_rpathtype_entry(self, fname: str, rpath_dirs_to_remove: T.Set[bytes], new_rpath: bytes, entrynum: int) -> None: + return rp_off = self.get_entry_offset(entrynum) if rp_off is None: if self.verbose: @@ -365,6 +367,7 @@ self.bf.write(b'\0') def remove_rpath_entry(self, entrynum: int) -> None: + return None sec = self.find_section(b'.dynamic') if sec is None: return None