[Lazarus] lazbuild CheckIfCurPkgOutDirNeedsCompile Missing state file for

Mattias Gaertner nc-gaertnma at netcologne.de
Mon Mar 16 23:27:32 CET 2015


On Mon, 16 Mar 2015 16:28:43 +0100
Péter Gábor <ptrg at freemail.hu> wrote:

>[...]
> The package files (*.lpk) and only the corresponding pascal files are in
> the same directory by the package's author:
> 
> zeoslib/packages/lazarus/zcomponent.pas
> zeoslib/packages/lazarus/zcore.pas
> zeoslib/packages/lazarus/zdbc.pas
> zeoslib/packages/lazarus/zparsesql.pas
> zeoslib/packages/lazarus/zplain.pas
> zeoslib/packages/lazarus/zcomponent.lpk
> zeoslib/packages/lazarus/zcore.lpk
> zeoslib/packages/lazarus/zdbc.lpk
> zeoslib/packages/lazarus/zparsesql.lpk
> zeoslib/packages/lazarus/zplain.lpk

The zdbc.pas is in the path of all these packages. That means
every time one of these packages is compiled the compiler has a chance
to build a new zdbc.ppu.
And it is hard for the user, to find out what package contains unit
zdbc.
Ergo: this setup is valid, but not recommended.
Maybe the many warnings can be reduced to a few.

 
> Additiona sources of the packages are in an other place (in the
> distributed archive):
> 
> zeoslib/src/*
> zeoslib/src/component/*
> zeoslib/src/core/*
> zeoslib/src/dbc/*
> zeoslib/src/parsesql/*
> zeoslib/src/plain/*
> 
> >  
> >> Warning: Duplicate unit "fpolebasic" in "laz_fpspreadsheet 1.5",
> >> ppu="fpspreadsheet/lib/i386-linux/fpolebasic.ppu",
> >> source="fpspreadsheet/fpolebasic.pas"
> >> Warning: Duplicate unit "fpolebasic" in "laz_fpspreadsheet_visual 1.5",
> >> ppu="fpspreadsheet/lib/i386-linux/fpolebasic.ppu",
> >> source="fpspreadsheet/fpolebasic.pas"
> > 
> > The two packages use the same sources. Either this is a
> > "bug" in the packages or you are not supposed to use both.
> > 
> 
> laz_fpspreadsheet is added to the list of dependencies in
> laz_fpspreadsheet_visual, so the visual component cannot be
> installed/used without the other.
> 
> The package files (*.lpk), the corresponding pascal files, and the
> additional pascal/other files are in the same directory by the package's
> author:
> 
> fpspreadsheet/*
> 
> 
> For me the both above seem to be very similar situation (except the
> location of additional source/other files).

Yes.

 
> Cleanup doesn't help in this cases. After removing the "....../lib/"
> directories the first rebuild runs without the warnings (of course), but
> next time the warnings appear again.

Yes.
Eventually there should be a warning about shr

> 
> The package files (*.lpk) are in the same directory, so the compiled ppu
> files can/will go into the same place by default.

I improved it a bit: When a ppu is in two packages and only one package
has a source, there will be no warning.

Mattias




More information about the Lazarus mailing list