Ethereal-dev: Re: RE : RE : RE : [Ethereal-dev] enabling libethereal.dll with MSVC (update)

Note: This archive is from the project's previous web site, ethereal.com. This list is no longer active.

From: Lars Roland <lars.roland@xxxxxxx>
Date: Tue, 04 May 2004 12:42:23 +0200
So I vote for using the def file for now and replacing it later by a better solution.

RABRET Laurent FTRD/DAC/ISS wrote:
Yes, I was thinking about a header file. Indeed, there are many files to
modify but when done, the management is easy.


-----Original Message-----
From: Lars Roland [mailto:lars.roland@xxxxxxx] Sent: Monday, May 03, 2004 7:52 PM
To: RABRET Laurent FTRD/DAC/ISS
Cc: Ethereal development
Subject: Re: RE : RE : [Ethereal-dev] enabling libethereal.dll with MSVC
(update)

So is this single file a header file?
If so, I would have to include it everywhere, where we have at least one

function to export, right? And I would have to remove the declaration of

those functions from other header files to avoid duplicates ?

RABRET Laurent FTRD/DAC/ISS wrote:


Wrong, if you create a single file dedicated to dll import/export
function declaration, the complexity is the same compared to maintain

a

def file.
I do agree, using __declspec(dllexport) requires to add additional
pre-processor directive macro.
Regards
Laurent

-----Original Message-----
From: ethereal-dev-bounces@xxxxxxxxxxxx
[mailto:ethereal-dev-bounces@xxxxxxxxxxxx] On Behalf Of Lars Roland
Sent: Monday, May 03, 2004 6:58 PM
To: Ethereal development
Subject: Re: RE : [Ethereal-dev] enabling libethereal.dll with MSVC
(update)

Yes but I think it a lot easier to create, maintain and review a def file with 478 lines (maainly copy'n'pasting) than finding and changing


487 defintions distributed throughout the code. :)
It might be problematic to use __declspec(dllexport) as long as we

still

allow this code to be linked statically into ethereal depending just

on
an option in config.nmake. You will probably need some additional preprocessor directives and macros.

I do not want to complicate the first step towards a stable and tested


libethereal.dll. Can my patches checked in so it gets tested?
The option in config.nmake to build ethereal with a libethereal.dll is


off by default so it should not break anyone's build.

However, we might think about replacing the def file for wiretap

first,
to see if this is possible.


RABRET Laurent FTRD/DAC/ISS wrote:



Yes and "def" file usage is no longer recommended (since a few years).
Using __declspec(dllimport) and __declspec(dllexport) also slightly
improve code efficiency (suppress one indirection). You must note it

is


possible to add export functions in the dll without rebuilding the
executable.
Regards
Laurent

-----Original Message-----
From: ethereal-dev-bounces@xxxxxxxxxxxx
[mailto:ethereal-dev-bounces@xxxxxxxxxxxx] On Behalf Of Guy Harris
Sent: Monday, May 03, 2004 11:02 AM
To: Ethereal development
Subject: Re: [Ethereal-dev] enabling libethereal.dll with MSVC

(update)


Speaking of __declspec(), would using __declspec(dllexport) allow us

to


get rid of libethereal.def?

_______________________________________________
Ethereal-dev mailing list
Ethereal-dev@xxxxxxxxxxxx
http://www.ethereal.com/mailman/listinfo/ethereal-dev

_______________________________________________
Ethereal-dev mailing list
Ethereal-dev@xxxxxxxxxxxx
http://www.ethereal.com/mailman/listinfo/ethereal-dev



_______________________________________________
Ethereal-dev mailing list
Ethereal-dev@xxxxxxxxxxxx
http://www.ethereal.com/mailman/listinfo/ethereal-dev