Keresztfalvi Gabor <[EMAIL PROTECTED]> writes:
> Thinking about feature freeze + bug hunting one interesting point is the
> compression support.
Thanks for reminding me of that.
> Case 1. Not having zlib-dev package.
> Config started: ./configure --> (no zlib support asked for)
> If there's no zlib-dev package (no zlib.h exists) the configure still runs
> successfully, but the compilation fails at zlib.c with:
> zlib.c:35: warning: #warning zlib.h not present
> zlib.c:40: parse error before `*'
> zlib.c:40: warning: function declaration isn't a prototype
> In file included from zlib.c:42:
> zlib.c.x:7: parse error before `*'
> zlib.c.x:7: warning: function declaration isn't a prototype
> zlib.c.x:8: warning: no semicolon at end of struct or union
> zlib.c.x: In function `do_zlib_instance_free':
> zlib.c.x:17: dereferencing pointer to incomplete type
> zlib.c.x: At top level:
> zlib.c.x:22: sizeof applied to an incomplete type
> zlib.c:40: warning: `do_free_zstream' used but never defined
> make[3]: *** [zlib.o] Error 1
>
> Why do we get here at all? Moving '#if WITH_ZLIB' to the top of zlib.c
> solves this, compiles cleanly. and both the server and the client ran
> well, rejecting the compression requests.
I'll move the #if WITH_ZLIB to the top of the file, as you suggest. I
didn't do that earlier, because I didn't think it was that easy to get
it to compile without zlib ;)
> Case 2. Having zlib-dev package
> Config started: ./configure --> (no zlib support asked for)
> When client started the server dies with "Segmentation fault", if there is
> zlib.h and libz during compilation.
That sounds serious. How can I reproduce it? Did you compile both
the client and the server with zlib support? That's been working for
me for a long time. Or did you compile only one of them with zlib? I'd
like to know the details.
> The config.h contains the '#define
> WITH_ZLIB 1' line but we didn't ask for it! Oh... Looking into
> configure.in this is the default behaviour... Good to know. ;) Maybe the
> help string should be updated! (BTW _almost_ all --with-* parameter
> defaults to yes...)
The output from ./configure --help should tell you which options are
enabled by default. I'll have to fix that.
/Niels