[Lazarus] Conflicting packages in fixes_0_9_30
Hans-Peter Diettrich
DrDiettrich1 at aol.com
Mon Jun 20 07:36:09 CEST 2011
Mattias Gaertner schrieb:
> The problem is, that in 0.9.30 the LCL was using some Makefile and IDE
> magic.
> Anyway, adding LCLBase as dependency is not useful. The IDE now uses
> the LCL instead.
See below :-(
> Please test.
Done:
Create a new application, and project inspector shows LCL as the only
dependency. Now add e.g. an button to the form, and Lazarus trunk adds
LCLBase as a project dependency - while 0.9.30 does not. Removing the
LCLBase dependency doesn't help much, the package is added to the trunk
project whenever another control is added to a form.
A closer look at these packages reveals:
Trunk LCL only contains widgetsets, while all controls reside in
LCLBase. It does no harm to remove the LCLBase dependency from the
project itself, because LCL already requires LCLBase.
In 0.9.30 both LCL and LCLBase contain controls, and some units are part
of both packages, what causes the package conflict. The LCL only
requires FCL, not LCLBase.
I'd suggest to update the trunk IDE (project manager), to never add
LCLBase to the immediate GUI project dependencies, for backwards
compatibility of project files. As you already stated, adding a LCLBase
dependency is not useful nor is it required.
Or, IMO better, switch the package names of LCL and LCLBase, so that the
LCL contains the controls (as before), and LCLBase contains the
widgetsets. Or remove LCLBase entirely, and put everything into the LCL...
DoDi
More information about the Lazarus
mailing list