xz is never included in Chromium. It’s only included in the macOS diff installer package, and the tools used to build that package. That’s effectively a Google Chrome-only thing, although the source bits are all open. It’s only reached by the
chrome/installer/mac:copies target, which is part of the installer target, but is not part of any normal build. Even though it’s used for macOS Chrome, it’s never linked into any part of Google Chrome. The only parts of xz that we ship are a standalone dylib (
liblzma_decompress.dylib, containing just the decompression parts of
liblzma) and a decompressor program (
xzdec) that does xz decompression.
goobspatch, our variant of
bspatch, also uses the
liblzma_decompress.dylib.
liblzma_decompress.dylib,
xzdec, and
goobspatch are all just part of the macOS diff installer package, not even part of Google Chrome or any of Chrome’s own libraries. They just exist on the diff installer disk image, which is discarded once an update is applied.
In addition, although the
README.chromium shows the full suite of licenses used for various files in the entire xz source package, xz’s own
COPYING file gives a better description of the license status. All of the code that we use falls under the first two bullet points, clarifying that the code in question is in fact public domain, and not LGPL or GPL.
- liblzma is in the public domain.
- xz, xzdec, and lzmadec command line tools are in the public domain unless GNU getopt_long had to be compiled and linked in from the lib directory. The getopt_long code is under GNU LGPLv2.1+.
(We don’t use the bundled getopt_long here, we use the version provided by the OS.)