This is the mail archive of the
cygwin-apps
mailing list for the Cygwin project.
Re: setup.exe: Support xz and lzma decompression via liblzma
- From: Corinna Vinschen <corinna-cygwin at cygwin dot com>
- To: cygwin-apps at cygwin dot com
- Date: Sat, 13 Mar 2010 12:06:08 +0100
- Subject: Re: setup.exe: Support xz and lzma decompression via liblzma
- References: <4B987464.8070702@cwilson.fastmail.fm>
- Reply-to: cygwin-apps at cygwin dot com
On Mar 10 23:41, Charles Wilson wrote:
> Ok, here's the long-awaited xz support for setup.exe. It links against
> the mingw-liblzma-devel package, which provides the static liblzma.a for
> native apps.
>
> Sadly, when compiled for native win32, liblzma is firmly in the "msvc"
> camp: no auto-import. Therefore, when mingw/msvc the header files by
> default decorate all symbols with declspec(dllimport) -- to link
> statically you have to #define LZMA_API_STATIC when compiling. Also,
> when you use libtool to link, -Wl,-static doesn't do what you think when
> there is a .la file present. libtool turns -llzma+liblzma.la into
> /full/path/to/liblzma.dll.a -- so -Wl,-static has no effect on that
> particular lib. Instead, you have to tell *libtool* that you want to
> link statically. So, I added -DLZMA_API_STATIC to AM_CPPFLAGS and
> -static-libtool-libs to setup_LDFLAGS for just these reasons.
>
> As posted, compress_xz.cc has a small number of msg() calls, which send
> information to OutputDebugString. Some of these might need to be changed
> to note() [e.g. MessageBox] or maybe removed entirely. Or left as is.
> Opinions?
AFAICS, the other compress_foo::read calls basically only return -1.
So, either msg or nothing at all looks fine.
Corinna
--
Corinna Vinschen Please, send mails regarding Cygwin to
Cygwin Project Co-Leader cygwin AT cygwin DOT com
Red Hat