$(TargetFile) bug for library projects and host applications
Original Reporter info from Mantis: CCRDude @ccrdude
-
Reporter name:
Original Reporter info from Mantis: CCRDude @ccrdude
- Reporter name:
Description:
Using (TargetFile), e.g. in an IDE package (using IDEMacros.SubstituteMacros('
(TargetFile)')) returns the host application if using on a library with a host application set.
Steps to reproduce:
* Create a new library project, or open an existing one
* Check menu Run -> Run Parameters... -> Host application, and set one if missing
* Use Project -> Project Options -> Compiler Options -> Compiler Commands -> Execute before, and set it to "echo $(TargetFile)"
* Compile project
* Check Messages tab to see it printed the executable host application filename, not the compiled library filename.
Additional information:
This is no intended behaviour, the Wiki mentions we could expect the library filename, not the host application filename:
"TargetFile - the output file of the current project (e.g. the executable or the library)"
See http://wiki.lazarus.freepascal.org/IDE_Macros_in_paths_and_filenames
The behaviour exists in the release version 1.8.2 as well as in todays svn trunk checkout use fpcupdeluxe.
Mantis conversion info:
- Mantis ID: 33560
- OS: Windows
- OS Build: 10 (1709)
- Build: SVN 57600
- Platform: Intel PC
- Version: 1.8.3 (SVN)
- Monitored by: » @ccrdude (CCRDude)