Module: MachO::Tools
- Defined in:
- lib/macho/tools.rb
Overview
A collection of convenient methods for common operations on Mach-O and Fat binaries.
Class Method Summary collapse
-
.add_rpath(filename, new_path, options = {}) ⇒ void
Add a runtime path to a Mach-O or Fat binary, overwriting the source file.
-
.change_dylib_id(filename, new_id, options = {}) ⇒ void
Changes the dylib ID of a Mach-O or Fat binary, overwriting the source file.
-
.change_install_name(filename, old_name, new_name, options = {}) ⇒ void
Changes a shared library install name in a Mach-O or Fat binary, overwriting the source file.
-
.change_rpath(filename, old_path, new_path, options = {}) ⇒ void
Changes a runtime path in a Mach-O or Fat binary, overwriting the source file.
-
.delete_rpath(filename, old_path, options = {}) ⇒ void
Delete a runtime path from a Mach-O or Fat binary, overwriting the source file.
-
.dylibs(filename) ⇒ Array<String>
An array of all dylibs linked to the binary.
Class Method Details
.add_rpath(filename, new_path, options = {}) ⇒ void
This method returns an undefined value.
Add a runtime path to a Mach-O or Fat binary, overwriting the source file.
63 64 65 66 67 68 |
# File 'lib/macho/tools.rb', line 63 def self.add_rpath(filename, new_path, = {}) file = MachO.open(filename) file.add_rpath(new_path, ) file.write! end |
.change_dylib_id(filename, new_id, options = {}) ⇒ void
This method returns an undefined value.
Changes the dylib ID of a Mach-O or Fat binary, overwriting the source file.
19 20 21 22 23 24 |
# File 'lib/macho/tools.rb', line 19 def self.change_dylib_id(filename, new_id, = {}) file = MachO.open(filename) file.change_dylib_id(new_id, ) file.write! end |
.change_install_name(filename, old_name, new_name, options = {}) ⇒ void
This method returns an undefined value.
Changes a shared library install name in a Mach-O or Fat binary, overwriting the source file.
34 35 36 37 38 39 |
# File 'lib/macho/tools.rb', line 34 def self.change_install_name(filename, old_name, new_name, = {}) file = MachO.open(filename) file.change_install_name(old_name, new_name, ) file.write! end |
.change_rpath(filename, old_path, new_path, options = {}) ⇒ void
This method returns an undefined value.
Changes a runtime path in a Mach-O or Fat binary, overwriting the source file.
49 50 51 52 53 54 |
# File 'lib/macho/tools.rb', line 49 def self.change_rpath(filename, old_path, new_path, = {}) file = MachO.open(filename) file.change_rpath(old_path, new_path, ) file.write! end |
.delete_rpath(filename, old_path, options = {}) ⇒ void
This method returns an undefined value.
Delete a runtime path from a Mach-O or Fat binary, overwriting the source file.
77 78 79 80 81 82 |
# File 'lib/macho/tools.rb', line 77 def self.delete_rpath(filename, old_path, = {}) file = MachO.open(filename) file.delete_rpath(old_path, ) file.write! end |
.dylibs(filename) ⇒ Array<String>
Returns an array of all dylibs linked to the binary.
6 7 8 9 10 |
# File 'lib/macho/tools.rb', line 6 def self.dylibs(filename) file = MachO.open(filename) file.linked_dylibs end |