[lazarus] LCL: create non-win32 directory

Mattias Gaertner nc-gaertnma at netcologne.de
Wed Oct 15 17:41:02 EDT 2003


On Mon, 06 Oct 2003 14:55:18 +0200
Micha Nelissen <M.Nelissen at student.tue.nl> wrote:

> Hi,
> 
> Problem: unit messages is both present in the lcl and in the fpc rtl for 
>   the win32 port. So, the messages unit does not exist in the non-win32 
> rtl.
> 
> Therefore the suggestion is to move all 'emulation units', like the 
> messages unit, to a non-win32 directory and compile it only when the 
> target is not win32. 

The target is not given to the LCL (the lcl without interfaces). It is given
to the LCL interfaces. The LCL is platform independent.
The messages.pp exists only for Delphi compatibility and *not* for win32
compatibility. Therefore messages.pp only uses messages from the
lmessages.pp.
Normally no LCL application should use the win32 messages. Of course the
win32 intf and win32 specific components will need the win32 messages.pp
from the RTL. Hmm. Tricky.

Either we copy the messages.pp from rtl to a new unit win32messages.pp in
the lcl/interfaces/win32 dir. (My favourite). Or we remove messages.pp from
the LCL and porting Delphi units will become more difficult. Think about
someone working under win32, porting a unit  to Lazarus. He will have the
messages unit in the rtl and the program will compile, maybe even work. But
the program will fail on all other platforms.


Mattias



> Then let the win32 lcl use the fpc win32-rtl one 
> and other platforms the 'emulated' one from non-win32 directory.
> 
> In the future, Com, Ole, ActiveX can be moved into this non-win32 
> directory as well, as the rtl doesn't provide emulation for that.
> 
> Regards,
> 
> Micha.
> 
> 
> _________________________________________________________________
>      To unsubscribe: mail lazarus-request at miraclec.com with
>                 "unsubscribe" as the Subject
>    archives at http://www.lazarus.freepascal.org/mailarchives


-- 






More information about the Lazarus mailing list