[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: win32 Visual Studio 2005 project for gsasl
From: |
Simon Josefsson |
Subject: |
Re: win32 Visual Studio 2005 project for gsasl |
Date: |
Tue, 19 Aug 2008 17:26:06 +0200 |
User-agent: |
Gnus/5.110011 (No Gnus v0.11) Emacs/22.2 (gnu/linux) |
Adam Strzelecki <address@hidden> writes:
>> (...) I now looked more closely how your patch in libidn
>> worked, and it used a perl script gen-win32-headers.pl. That approach
>> seems good since avoids the static config.h which was part of your
>> gsasl
>> patch. If you have the time, please use this approach for gsasl as
>> well. I don't care strongly that gsasl.h is handled the same way,
>> having a GSASL_API define is fine, so maybe the gen-win32-headers.pl
>> script in gsasl could only for generating config.h.
>>
>> I'll wait with installing the other win32 related fixes until I hear
>> from you.
>
> Now Windows project related things:
>
> I reworked my project files so those are now using GSASL_API dll
> exports, and gen-win32-headers.pl to produce dynamically config.h in
> win32/include.
Great!
> * gsasl-lib-win32-dll-exports.patch + gsasl-lib-win32+vc8-3.patch
>
> Alternatively to those two here goes old version with .def file:
>
> * gsasl-lib-win32+vc8-2.patch
>
> I'm looking towards having those patches in the git repo.
>
> If you decide you use dll-exports please from now on mark all
> functions with GSASL_API rather than "extern".
I prefer the dll-exports idea -- the .def file approach is difficult to
maintain since it requires yet another file to modify when an API is
added.
However, I would like to preserve the 'extern' qualifier for functions
in the header file if possible. I.e., something like:
/* GSASL Windows DLL */
#ifndef GSASL_API
# if defined(_WIN32) && !defined(GSASL_STATIC)
# ifdef GSASL_EXPORTS
# define GSASL_API __declspec(dllexport)
# else /* GSASL_EXPORTS */
# define GSASL_API __declspec(dllimport)
# endif /* GSASL_EXPORTS */
#endif /* GSASL_API */
...
extern GSASL_API int gsasl_init (Gsasl ** ctx);
Does the presence of the 'extern' keyword cause any problems for
compilation under Windows?
The gen-win32-headers.pl is GPLv3+, but libgsasl should be LGPLv2.1+.
Is it ok to use LGPLv2.1+ for it instead? Also, I suggest adding a
statement like this after the license declaration:
# I consider the output of this program to be unrestricted. Use it as
# you will.
With these changes, your patch could be installed. I can roll a 0.2.28
immediately after your response.
Thanks,
/Simon
- Re: win32 Visual Studio 2005 project for gsasl, Adam Strzelecki, 2008/08/14
- Re: win32 Visual Studio 2005 project for gsasl, Simon Josefsson, 2008/08/19
- Re: win32 Visual Studio 2005 project for gsasl,
Simon Josefsson <=
- Re: win32 Visual Studio 2005 project for gsasl, Adam Strzelecki, 2008/08/19
- Re: win32 Visual Studio 2005 project for gsasl, Simon Josefsson, 2008/08/19
- gsasl 0.2.28rc1, Simon Josefsson, 2008/08/19
- Re: gsasl 0.2.28rc1, Adam Strzelecki, 2008/08/19
- Re: gsasl 0.2.28rc1, Simon Josefsson, 2008/08/19
- Re: gsasl 0.2.28rc1, Simon Josefsson, 2008/08/19
- Re: gsasl 0.2.28rc1, Adam Strzelecki, 2008/08/20
- Re: gsasl 0.2.28rc1, Simon Josefsson, 2008/08/20
- Re: gsasl 0.2.28rc1, Adam Strzelecki, 2008/08/20
- Re: gsasl 0.2.28rc1, Simon Josefsson, 2008/08/20