[Lazarus] Using different FPC versions
Hans-Peter Diettrich
DrDiettrich1 at aol.com
Mon Feb 10 15:39:12 CET 2014
Mattias Gaertner schrieb:
>
>> Martin Frb <lazarus at mfriebe.de> hat am 10. Februar 2014 um 14:08 geschrieben:
>> [...]
>>> I don't understand the "IDE directories" in "Paths":
>>> The IDE has one set of search paths for every directory. That means a
>>> package can have different search paths than the active project.
>>> <<
>>> Here "directory" is not clear, sounds like a recursive definition?
>> I guess it means "package directory". Then the sentence reads ok.
>
> Actually, it means directory - any directory.
> A package can have source files in many directories.
> The search paths of a package are used for all files in all directories of a
> package.
> Same for projects.
Sounds reasonable, if the search path is applied to every file (unit) in
whatsoever directory.
> The IDE has one set of search paths (unit search path, include search path,
> sources search path) for each directory.
This instead would indicate that the search path can vary, for units of
the *same* package/project in *different* directories?
> It creates these sets on demand.
> Whenever a file is parsed the IDE looks up its cache. If this is the first time
> that a file in that directory is parsed, the IDE collects all settings and
> calculates the search paths and compiler options. This data is not stored on
> disk.
Does this mean that the IDE determines to which project/package the
directory belongs, and then applies the settings for that package
(owner?) to that directory?
Then we could eliminate the confusing "directory" references at all, and
instead state that the project/package rules apply to every unit of that
project/package. When the IDE uses directories internally, to find out
to which project/package a file belongs, that's nothing that the user
must know or care of.
DoDi
More information about the Lazarus
mailing list