kientzle at freebsd.org
Sun Feb 21 05:42:05 UTC 2010
b. f. wrote:
>>> The code organization depends on what you want to do with it and how you
>>> want to update the code in the future, if your lzma library is third party.
>> LZMA made by Igor Pavlov, and since 4.62 it licensed under Public Domain.
>> So we can use it, if we need.
>>> If you never intend to update the lzma code then I guess it's fine to
>>> embed it in a big .c file. For a port, it doesn't matter much since it
>>> is your own thing. There are stricter rules on maintainability and style
>>> if you want it in the base system.
>> So, I think right place for lzma library under sys/contrib directory, if I "promise" >maintain it?
> There are already long-standing plans to import lzma compression
> libraries into the base system, by the libarchive maintainers.
Libarchive has hooks to support the liblzma library
from Lasse Collin's "xz utils" package. When linked
against this library, libarchive (and hence bsdtar)
has full support for "bare" lzma streams and for
Collin's "xz" format (which is a big improvement over
bare lzma streams). Like Igor Pavlov's original
code, the "xz utils" code is in the public domain.
Officially, xz utils is in version 4.999.8beta; Collin
has promised to bump the version to 5.0 once he feels
the code is sufficiently stable. As far as I can
tell, it's actually in pretty good shape now; the
changes going in seem to mostly be minor portability
fixes. I see no reason to not import the current
version into the FreeBSD base system. I plan
to do so but may not get to it very soon; I
certainly would not complain if someone else
beat me to it. ;-)
There are other lzma libraries around, of course.
In particular, I've seen references to the lzma libraries
distributed with lzip. Unfortunately, lzip is GPLv3
so is not a candidate for inclusion in FreeBSD's base
More information about the freebsd-hackers