This page is a wiki. Please login or create an account to begin editing.


3 posts / 0 new
Last post
fzn's picture
fzn
Offline
Joined: 2012 Jan 20
[Hack-InProgress] xz archive dearchiver for Classic MacOS

Hello, I just registered here.

I'm currently fiddling with xz-embedded and SIOUX, to build a portable .xz decompression app.
I'd like to target M68k and PPC machines. I'll be able to test my builds on an LC III and Performa 5320 (plus emulators).

Rationale(Drunk:
- xz is an efficient format.
- xz-embedded is tiny and has no dependances
- Wasted bandwidth is a Bad Thing.
- Seeing people use sub-optimal archive compression just because decompressers don't exist for the native platforms is irritating.

I'm looking for feedback. I'll probably test my builds later today.

Edit:
I should read comments:
/*
* This is really limited: Not all filters from .xz format are supported,
* only CRC32 is supported as the integrity check, and decoding of
* concatenated .xz streams is not supported. Thus, you may want to look
* at xzdec from XZ Utils if a few KiB bigger tool is not a problem.
*/

So, current build is working, but I suppose it's a pain having to impose the use of a subset of the format. I'll rather port xzdec.

fzn

Comments

xy
Offline
Joined: 2009 Aug 7

I'll be glad to help you testing on Mac OS 9.2.2 native on G3.

fzn's picture
fzn
Offline
Joined: 2012 Jan 20

@xy: Fine Wink

Follow-up:
After some hours of fiddling, xzdec and its deps (liblzma, libxz) seem to compile and link properly. I'm happy it builds at least! This is my first try on mac development, so I'm trying to take the easy way.

It seems that, if I did not do crap editing the libs, the current build process will get us a binary compatible with PowerPC systems. It _could_ _maybe_ be _to some extent_ _easy_ to port it to CFM-68K systems.

I uploaded the very first, totally untested build to mediafire, but I don't think it's worth sharing yet (but feel free to ask it you want to read the readme).

To comply with the GNU GPL, I shall provide the modifications to the source. That can be done on request, but I'd rather clean the #ifdef mess and set-up a nice github repository Wink