If you're doing your own makefiles (cmake for instance), then anything is
allowed: if 2 dlls feels like trouble to you, I'd suggest building the
entire thing as a library (a.k.a. static library) instead -- can't imagine
what 1 dll does better than 2 of the buggers, but that 's just me -- but
anyway: bottom line: there's no reason why dumping it all in 1 dll would be
a problem per se.

Of course you'll need to adjust the export lists (and scripts if you go
fancy) so both crypto and ssl routines are exported just as with the regular
2-dll system, so you may need to work on that bit a bit more than just
writing a cmake file, but that should be about it. Another way would be to
forego the export (def) files entirely and use another approach, such as
automated export using tools like createDLL as it is used by the OpenEXR
project (we use that one in house a lot, including our custom OpenSSL MSVC
projects; no messing around with dllexport/dllimport or DEF files then,
unless you need that access-by-ordinal functionality as well, in which case
createDLL can import existing DEF files to supply that bit of info).

All in all: 1 dll: no problem; just work to be done. Nothing fancy.
Then again, you might ask yourself why you want/need a 1dll vs. the regular
2dll layout (which represents the two components: crypto and comm. protocol,
just fine); 1lib vs. 2dlls I can see, but not 1dll vs. 2 dlls, but that's
something you'll have to answer for yourself.


BTW: in-house, we use a 3dll approach, where all the test apps are put in
the third dll as test functions, using a MONOLITH-derived main() renaming
tactic (MEGAMONOLITH). This then results in a single openssl exe and 3 dlls
which contain everything that is OpenSSL: the crypto, the protocol and all
the sample and tests apps accessible through an augmented version of the
regular 'openssl' app, which is now the one and only main(). Also handy when
you want to carry the source tree over to an embedded system which does not
sport a 'shell' of some sort.

BTW BTW: if you stripped the phone number, then the entire legal mumbojumbo
just got moot, so why not ditch the entire thing while you're at it? It's
legalese cop-out/filler and 'adjusting' it just turned it into 100%
cruft/filler. What are you afraid of that you did kill the phone number but
kept the text that depends on it?  Ah well. No bother.


On Mon, Jul 5, 2010 at 2:58 PM, Deckers, Rob <rob.deck...@oce.com> wrote:

>  When I do: nmake -f ms\ntdll.mak install
>
> I get 4 Directories:
> - bin
> - lib
> - include
> - ssl
>
> In the bin directory, I see "ssleay32.dll" and "libeay32.dll".
>
> Now, I am building OpenSSL myself with CMake and it would be easier to just
> build one big dll.
>
> Therefor, I am wondering if I run into problems it I build it as one DLL.
>
> @ David Kirkby: I removed my phone number just in this case, and not by
> accident ;)
>
>
>
> Rob Deckers
>
>
>
-- 
Met vriendelijke groeten / Best regards,

Ger Hobbelt

--------------------------------------------------
web:    http://www.hobbelt.com/
       http://www.hebbut.net/
mail:   g...@hobbelt.com
mobile: +31-6-11 120 978
--------------------------------------------------

Reply via email to