MKEXTUNPACK(8) | System Manager's Manual | MKEXTUNPACK(8) |
mkextunpack
—
extract or list the contents of a multikext (mkext)
archive
mkextunpack |
[-v ] [-a
arch] [-d
output_directory]
mkext_file |
The mkextunpack
utility has been
deprecated.
The mkextunpack
program lists the contents
of a multikext file, mkext_file, or unarchives the
contents into output_directory (which must exist). The
-v
option causes mkextunpack
to print the name if each kext as it finds them.
mkextunpack
exits with a zero status upon
success. Upon failure, it prints an error message and exits with a nonzero
status.
With a nonsegreated format 1 mkext file, wherein each kext may
contain a universal binary, mkextunpack
simply
unpacks the contents. With an mkext file segregated by architecture (that
is, with distinct internal archives of architecture-specific kexts),
mkextunpack
attempts by default to unpack or list
kexts for the current machine's architecture. To choose a particular
architecture to extract or list, use the -a
option.
There is no simple way to unpack a segregated mkext file into a set of kexts with universal binaries, but you can unpack each of its component architectures to separate directories for examination.
Many single-letter options are inconsistent in meaning with (or directly contradictory to) the same letter options in other kext tools.
For version 1 mkext files, note that the file format doesn't
record the original filenames of the kexts, so
mkextunpack
has to guess at what they are. It does
this by using the value of the CFBundleExecutable property of the kext's
info dictionary (Project Builder sets this to the base name of the kext
bundle by default, but the developer can change it). If that property
doesn't exist, the last component of the CFBundleIdentifier is used.
Duplicates have an incrementing index appended to the name. Kexts that have
no CFBundleExecutable or CFBundleIdentifier property are named
“NameUnknown-n.kext”,
where n is a number.
March 6, 2009 | Darwin |