Files
RedBear-OS/local/recipes/dev/libclc/source/llvm/docs/CommandGuide/llvm-lipo.rst
T
vasilito cb424d7448 build: static patch-sanity linter (shift-left the malformed-patch class)
verify-patch-sanity.py validates every active recipe .patch has internally-
consistent hunk line counts — catching the 'malformed patch at line N' failure
at commit/CI/preflight time instead of hours into a cook. This cycle hit that
class three times (qtwaylandscanner, sddm, xwayland), each only discovered when
cookbook tried to apply the patch.

Running it across the repo found 29 latent malformed patches (validated against
GNU patch: e.g. relibc/P3-sysv-ipc reproduces 'malformed patch at line 22').
They were harmless only because they sit in vendored recipes (baked, not re-
applied) — but would fail on any version-bump re-derivation. --fix recounts the
hunk headers (body untouched) and repaired all 29.

Wired into build-preflight.sh (Phase 1.0D) and redbear-ci.yml, with a unit test
(test-patch-sanity.sh). Skips archived/legacy trees and unvalidatable formats
(empty placeholders, bare-@@ git hunks).
2026-08-01 05:13:02 +03:00

74 lines
2.5 KiB
ReStructuredText

llvm-lipo - LLVM tool for manipulating universal binaries
=========================================================
.. program:: llvm-lipo
SYNOPSIS
--------
:program:`llvm-lipo` [*filenames...*] [*options*]
DESCRIPTION
-----------
:program:`llvm-lipo` can create universal binaries from Mach-O files, extract regular object files from universal binaries, and display architecture information about both universal and regular files.
COMMANDS
--------
:program:`llvm-lipo` supports the following mutually exclusive commands:
.. option:: -help, -h
Display usage information and exit.
.. option:: -version
Display the version of this program.
.. option:: -verify_arch <architecture 1> [<architecture 2> ...]
Take a single input file and verify the specified architectures are present in the file.
If so then exit with a status of 0 else exit with a status of 1.
.. option:: -archs
Take a single input file and display the architectures present in the file.
Each architecture is separated by a single whitespace.
Unknown architectures are displayed as unknown(CPUtype,CPUsubtype).
.. option:: -info
Take at least one input file and display the descriptions of each file.
The descriptions include the filename and architecture types separated by whitespace.
Universal binaries are grouped together first, followed by thin files.
Architectures in the fat file: <filename> are: <architectures>
Non-fat file: <filename> is architecture: <architecture>
.. option:: -thin
Take a single universal binary input file and the thin flag followed by an architecture type.
Require the output flag to be specified, and output a thin binary of the specified architecture.
.. option:: -create
Take at least one input file and require the output flag to be specified.
Output a universal binary combining the input files.
.. option:: -replace
Take a single universal binary input file and require the output flag to be specified.
The replace flag is followed by an architecture type, and a thin input file.
Output a universal binary with the specified architecture slice in the
universal binary input replaced with the contents of the thin input file.
.. option:: -segalign
Additional flag that can be specified with create and replace.
The segalign flag is followed by an architecture type, and an alignment.
The alignment is a hexadecimal number that is a power of 2.
Output a file in which the slice with the specified architecture has the specified alignment.
BUGS
----
To report bugs, please visit <https://github.com/llvm/llvm-project/issues/>.