Opened 14 years ago

Closed 14 years ago

#23030 closed submission (fixed)

New port: lrzip

Reported by: jlaurila@… Owned by: macports-tickets@…
Priority: Normal Milestone:
Component: ports Version: 1.8.1
Keywords: Cc:
Port: lrzip

Description

lrzip is a compressor especially good with large files that have long distance repeats, such as VM disk images.

Attachments (6)

patch-lzma-C-Types.h (416 bytes) - added by jlaurila@… 14 years ago.
patch-Makefile.in (673 bytes) - added by jlaurila@… 14 years ago.
patch-rzip.h (433 bytes) - added by jlaurila@… 14 years ago.
patch-stream.c (2.3 KB) - added by jlaurila@… 14 years ago.
patch-main.c (402 bytes) - added by jlaurila@… 14 years ago.
Portfile (984 bytes) - added by jlaurila@… 14 years ago.
Updated portfile for 0.43. No patches required anymore.

Download all attachments as: .zip

Change History (12)

Changed 14 years ago by jlaurila@…

Attachment: patch-lzma-C-Types.h added

Changed 14 years ago by jlaurila@…

Attachment: patch-Makefile.in added

Changed 14 years ago by jlaurila@…

Attachment: patch-rzip.h added

Changed 14 years ago by jlaurila@…

Attachment: patch-stream.c added

comment:1 in reply to:  description Changed 14 years ago by jlaurila@…

Tested only on 10.6.2 for now. I'm submitting the patches upstream as well, hopefully the next upstream version will require less work.

Changes:

  • made get_ram() in main.c use the HW_MEMSIZE sysctl instead of HW_PHYSMEM to support large RAM sizes.
  • emulated the missing functions fmemopen and open_memstream in stream.c
  • lzma/C/Types.h defines Byte, just like zlib. Kludged and rearranged includes to avoid duplicate definition.
  • made Makefile.in obey LDFLAGS given in configure
  • disabled the asm code using the --disable-asm configure option, since the 64-bit code has been marked as broken, and didn't quickly find a way to link the 32-bit asm code with 64-bit C object code.

comment:2 Changed 14 years ago by jlaurila@…

(Resubmitting this comment to fix formatting)

Tested only on 10.6.2 for now. I'm submitting the patches upstream as well, hopefully the next upstream version will require less work.

Changes:

  • made get_ram() in main.c use the HW_MEMSIZE sysctl instead of HW_PHYSMEM to support large RAM sizes.
  • emulated the missing functions fmemopen and open_memstream in stream.c
  • lzma/C/Types.h defines Byte, just like zlib. Kludged and rearranged includes to avoid duplicate definition.
  • made Makefile.in obey LDFLAGS given in configure
  • disabled the asm code using the --disable-asm configure option, since the 64-bit code has been marked as broken, and didn't quickly find a way to link the 32-bit asm code with 64-bit C object code.

Changed 14 years ago by jlaurila@…

Attachment: patch-main.c added

comment:3 Changed 14 years ago by jlaurila@…

Added an updated version of patch-main.c that fixes a bug that would've prevented the port from working on machines with over 4 GB of RAM.

Changed 14 years ago by jlaurila@…

Attachment: Portfile added

Updated portfile for 0.43. No patches required anymore.

comment:4 Changed 14 years ago by jlaurila@…

The upstream author was quick and just released 0.43 with my patches included, and thus the attached updated Portfile no longer needs the patches.

comment:5 Changed 14 years ago by jlaurila@…

Three weeks, no activity. Anyone willing to commit this some time in the near future?

comment:6 Changed 14 years ago by blb@…

Resolution: fixed
Status: newclosed

Added in r62794, thanks; made a couple of changes:

  • removed LDFLAGS setting since that's already done
  • replaced /opt/local with ${prefix} in CFLAGS
Note: See TracTickets for help on using tickets.