On Fri, 09 Sep 2011 20:22:55 +0000 Mark Morgan Lloyd <[email protected]> wrote:
> Mattias Gaertner wrote: > > > You can do that with the Lazarus trunk version. > > http://wiki.lazarus.freepascal.org/Macros_and_Conditionals#Conditionals > > For example: > > if TargetOS='win32' then UnitPath := '../../synapse'else UnitPath := > > '../synapse'; > > I wonder if I could ask a silly question. I think a lot of us probably > have personal conventions as to how we lay out directories etc., for > example I copy the FPC sources into /usr/local/lib/fpc/x.x.x/fpcsrc. That was one of the reasons, why the Lazarus packages were created. The package maintainer can define the directory layout of his package, and the user can freely put the package anywhere on the file system. The above static connection between a project and the synapse sources is unnecessary with Lazarus. The '../../synapse' and the '../synapse' can be computed by Lazarus automatically. Just open the laz_synapse.lpk in the IDE and click 'Use / Add to project'. The above paths are automatically computed. No need to use conditionals, macros or edit search paths. Copy the project and synapse to another computer and/or OS. Again: No need to adapt the search paths. Just open the laz_synapse.lpk and the project once. Same for the FPC sources. The compiler needs search paths. The IDE creates them for you. > Do any of the configuration files implement a backtick or similar, so > that an external script or program in some suitable language can deduce > parameters based on local conventions? Well, you could define environment variables and use them in fpc.cfg and Lazarus. But these are mostly for linker paths and options or for instantfpc. Mattias -- _______________________________________________ Lazarus mailing list [email protected] http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
