[Toybox] Working on unxz-some questions

Isaac Dunham idunham at lavabit.com
Thu Feb 28 23:10:36 PST 2013


I'm looking into adding an unxz based on xz-embedded, which is public domain.  However, I'm wondering about some things.
Basically, I get the impression that some (most? all?) of the compile-time options may not be reasonable.

1) xz allows several filters to improve compression of executables (BCJ filters). Should all of these be turned on unconditionally, or should it be user-selectable?  The native BCJ filter for each arch is probably necessary for compatability reasons, but I'm wondering about alternative ones (eg, should we enable sparc BCJ filters everywhere?)

2) I assume that CRC64 support should be unconditional. Upstream recently added crc64, but it's optional there.

3) Should unsupported integrity checks be ignored, cause an error, or should this be a compile-time option?
I'm assuming that even if we can't check, we should still decompress.

Also, (assuming that at least one of the above should be configurable) should the xz library part be configurable separately from the unxz command?  This is mainly relevant for if you plan to use it to decompress for tar et al.
Is there a way to conditionally compile code in lib/?


Thanks,
Isaac Dunham


 1362121836.0


More information about the Toybox mailing list