This is the mail archive of the cygwin-apps@sources.redhat.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

*NEW* test versions of zlib (1.1.3-2) and libpng (1.0.8pre3)


are now available for testing at
   ftp://sourceware.cygnus.com/pub/cygwin/private/cygwin-extras-392/

zlib-1.1.3-2.tar.gz
zlib-1.1.3-2-src.tar.gz

libpng-1.0.8pre3-1.tar.gz
libpng-1.0.8pre3-1-src.tar.gz

libpng-1.0.8pre3-1.patch

There were only a few minor cosmetic changes to zlib from the previous
version posted in /private/.

Both packaqes, however, require
  gcc-2.95.2-2 (June 10?)
  binutils-20000625 + my new ld.exe (*)

(*) Several patches have recently been accepted into binutils CVS, and
these are necessary for proper dll creation and linking. You can
download a precompiled copy of ld.exe that includes these fixes from
http://cygutils.netpedia.net/V1.1/linker/ld.exe.tar.gz. Presumably the
next version of binutils officially released in cygwin-latest will
include these fixes since they've all been accepted into CVS.

Common to both packages:

o import-lib libfoo.dll.a
o stripped dll libfoo.dll
o static-lib libfoo.a
o cygwin-specific docs in /usr/doc/Cygwin/<package>-<version>.README
o generic docs in /usr/doc/<package>-<version>/*
o source archive already has the cygwin-specific patch applied

o cygwin-specific README and PATCH are stored in the source archive,
under <top>/CYGWIN-PATCHES/* (although the patch has already been
applied to the archive itself).

o define -DZLIB_STATIC (and -DPNG_STATIC) to get the 'correct' #define's
when compiling a .o that will be linked statically -- as well as using
'gcc -static' during the link step

o no special -Ddefine options needed (or link options) needed to link to
the dll

Notes about zlib:

I was able to successfully compile and pass 'make test' with all of the
following:

static 
dll
static w/ contrib/asm686/match.S
dll w/ contrib/asm585/match.S
static w/ contrib/asm586/match.S
dll w/ contrib/asm586/match.S

static (using 'gcc -mno-win32')
dll (using 'gcc -mno-win32')
static w/ contrib/asm686/match.S (using 'gcc -mno-win32')
dll w/ contrib/asm585/match.S (using 'gcc -mno-win32')
static w/ contrib/asm586/match.S (using 'gcc -mno-win32')
dll w/ contrib/asm586/match.S (using 'gcc -mno-win32')

However, the binary package did not use any of the assembler code, and I
didn't use 'gcc -mno-win32'.

Notes about libpng:

the patch here is slightly different than the one I submitted to
png-implement. This version contains the CYGWIN-PATCHES stuff, and the
Makefile install: is slightly different. However, I'm trying to get
*most* of these changes into the official -1.0.8 release.

I was able to compile and pass pngtest with all of the following:

static
dll
static w/ pnggccrd (assembler stuff)
dll w/ pnggccrd
static using 'gcc -mno-win32'
dll using 'gcc -mno-win32'
static w/ pnggccrd using 'gcc -mno-win32'
dll w/ pnggccrd using 'gcc -mno-win32'

However, the binary package did not use -mno-win32, and did not include
pnggccrd.

A word of warning: pngtest will fail if it picks up the wrong libz.dll
at runtime. Make sure you're using the one in the zlib-1.1.3-2 package
and not an older copy or the one distributed with Suhaib's X11 stuff.
(and don't scold me about dll versioning, Michael! <G> )

Comments and test reports, anyone?

--Chuck

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]