[fpc-pascal] OpenSSL

Dmitry Boyarintsev skalogryz.lists at gmail.com
Tue Nov 17 16:23:28 CET 2015

On Tue, Nov 17, 2015 at 10:02 AM, Tomas Hajny <XHajT03 at hajny.biz> wrote:

> First, the two units serve as interfaces to the same external library,
> thus they provide the same functions with the same parameters.

For the external functions, it shouldn't be a problem at all.
Since it's happening today, since it's allowed to reference the same
external function via different names/units in pascal.
i.e. WinAPI functions are usually referenced from a custom written units.
But later are added to rlt windows.pas unit. So the custom written unit
compiles just fine.
So, in the end keeping the reference to an external function name the same
is ok.

> Second, they even come from the same original codebase, so even the
> functionality
> added on top of what is included in the external library probably matches
> at least partly.

Custom (pascal-level) code has to be split (unless 100% the same). Thus if
both lnet/openssl.pas and fcl/openssl.pas are providing the same function
(i.e. sslinit), but have different pascal code (not just an external
reference), object names for these function should be unique.

I guess, the biggest issue here is that "packages" are being precompiled
(using the same names), thus either sources are necessary to recompile and
change the name  or object files has to be modified to make names unique.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freepascal.org/pipermail/fpc-pascal/attachments/20151117/30358809/attachment.html>

More information about the fpc-pascal mailing list