[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: GNU SASL 0.2.28

From: Simon Josefsson
Subject: Re: GNU SASL 0.2.28
Date: Wed, 17 Sep 2008 16:05:21 +0200
User-agent: Gnus/5.110011 (No Gnus v0.11) Emacs/22.2 (gnu/linux)

Francis Brosnan Blázquez <address@hidden> writes:

> Hi Simon,
> I've been updating our builds to use this new release and it works
> fine on Linux, but on Microsoft
> Windows there are some issues.

Hi Francis!  Thanks for your comments.  I have also noticed that Windows
builds have been failing under cross-compilation.  The changes made were
to accommodate the MSVS project files in lib/win32/.

I've forgotten, how do you build gsasl under Windows?  MSVS, mingw,
cygwin, ...?

> 1) At lib/src/gsasl.h:31, the new GSASL_API symbol depends on having
> defined GSASL_EXPORTS.
> Maybe I'm missing something, but compiling sources the same way as
> previous release do not include
> this symbol at the gcc flags. Therefore I compiled using:
>  >> ./configure CFLAGS="-DGSASL_EXPORTS"
> Digging a bit, it seems DLL_EXPORT is automatically defined by
> autotools on windows so,
> changing GSASL_EXPORTS by DLL_EXPORT also work, which is a better fix.

GSASL_EXPORTS is intended to be set by the MSVS project files, and not
needed otherwise.  Do you need it?

This is the problem that makes it break for me under mingw too, so I'm
going to revisit this.

> 2) At src/internal.h:38, it is included poll.h. On windows this API is
> not available. I've updated
> the declaration with the following:
> #if !defined(_WIN32)
> # include <poll.h>  /* poll() */
> #endif
> 3) The next issue requires a bit more of work. Since poll API is not
> available, gsasl.c (around line 700)
> won't compile on windows. I've checked previous release (0.2.27) and
> it was using select(2).
> I didn't propose a path because I don't know your opinion about the
> approach to follow. My initial
> impression is that gsasl.c should use again select(2) as default.

The idea was to use gnulib's upcoming poll module which works fine under
Windows too.  However, I know realize that if the select approach worked
under Windows, there is no point in that.  Did gsasl really work for you
before?  I recall in GnuTLS that select was not able to select on both a
network connection and a tty under Windows.

> 4) I would recommend to include into the distribution the file
> src/gsasl_cmd.c generated by gengetopt
> because it would allow to not require to install this tool (to get
> gsasl compiled).
> In the other hand, I'm not able to successfully run this tool on
> windows to produce such file:
> gengetopt --unamed-opts="HOST [PORT]" \
>        --no-handle-version --no-handle-help \
>        --input gsasl.ggo --file-name gsasl_cmd
> c:\mingw\bin\gengetopt.exe: option `--unamed-opts' doesn't allow an argument
> Run gengetopt --help to see the list of options.

It should be included:

address@hidden:~/src/gsasl master$ tar tvfz 
../releases/gsasl/gsasl-0.2.28.tar.gz|grep _cmd
-rw-r--r-- 0/0           19516 2008-08-20 12:06 gsasl-0.2.28/src/gsasl_cmd.h
-rw-r--r-- 0/0           45853 2008-08-20 12:06 gsasl-0.2.28/src/gsasl_cmd.c
address@hidden:~/src/gsasl master$ 


reply via email to

[Prev in Thread] Current Thread [Next in Thread]