Project Manager / Project Manager Reference |
Each Project Manager node has a defined set of variables containing values determined at runtime.
These variables can be used in Build rules or Environment variables. The variables available on a node are the concatenation of the variables defined for the node plus the ones defined for its ancestors.
Variable | Description | Group | Application | Library | File | Package |
---|---|---|---|---|---|---|
$(BAFilePath) | Absolute path of the 4ba file. | X | X | X | X | |
$(BinaryName) | Name of the binary node. | X | X | X | ||
$(BuildInputFileDirs) | File directories. List of all files which are input files for a build rule. For example, main.4gl form.4fd test.per toto.4gl. | X | X | |||
$(BuildInputFileNames) | File names. | X | X | |||
$(BuildInputFilePaths) | Absolute file paths. | X | X | |||
$(BuildOutputBaseNames) | Base names. List of all files which are output files for a build rule. For example, main.42m form.42f test.42f toto.42m | X | X | |||
$(BuildOutputFileNames) | File names. | X | X | |||
$(BuildOutputFilePaths) | Absolute file paths. | X | X | |||
$(CommandLineArgs) | Command line arguments. | X | ||||
$(CompilerOptions) | Compilation flags defined in the user interface. | X | X | X | X | |
$(Dependencies) | List of link output files (link results) of all dependencies binary nodes. For example, your Application depends on 2 libraries, lib1 and lib2. The lib1 link rule creates the $(TargetDir)/lib1.so output file, and the lib2 link rule creates the $(TargetDir)/lib2.so output file. The Application Dependencies is a list of these paths: {$(TargetDir)//lib1.so $(TargetDir)//lib2.so} | X | X | |||
$(DistDir) | Value of the Distribution directory property. | X | ||||
$(ExecutableName) | Executable name. | X | ||||
$(ExternalDependencies) | Value of the node property External dependencies.
Note: For Java™, C, and other languages, this property will
contain the full path for external dependencies as FGLLDPATH is not used.
|
X | X | |||
$(GSTDIR) | Genero Studio installation directory path. | X | X | X | X | X |
$(GSTSETUPDIR) | Application Generator template directory path. | X | X | X | X | |
$(Implicit) | FGL argument -implicit=none | X | ||||
$(InputBaseName) | Input file base name, without extension. | X | ||||
$(InputDir) | Absolute directory of the input file. | X | ||||
$(InputExtension) | Input file extension. | X | ||||
$(InputMimeType) | Input file MIME type. | X | ||||
$(InputName) | Input file name, with extension. | X | ||||
$(InputPath) | Absolute path of the input file. | X | ||||
$(IntermediateFilePaths) | List of intermediate file paths. | X | X | |||
$(JavaSourceDir) | Absolute path of the Java source directory (packages root). | X | ||||
$(JavaSourcePaths) | Java source path (JavaSourceDir of dependencies). | X | ||||
$(Language) | Value of the Language property. | X | X | X | X | |
$(LinkerOptions) | Value of the node property LinkerOptions | X | X | X | ||
$(LinkOutputFileBaseNames) | Base file names. List of all files which are output files for a link rule. For example, Application.42r | X | X | |||
$(LinkOutputFileNames) | File names. List of all files which are output files for a link rule. For example, Application.42r | X | X | |||
$(LinkOutputFilePaths) | Absolute file paths | X | X | |||
$(PackageName) | Value of the PackageName property. | X | ||||
$(ProjectDir) | The directory where the 4pw file is located, or the operating system temporary directory if the project has never been saved. | X | X | X | X | |
$(RelativeDir) | A list of directory names, corresponding to the path difference between the
source directory and the current directory. For example, the source directory is
$(ProjectDir)/src, and the file path is
$(ProjectDir)/src/com/d1/Account.java. The relative directory would be the
string list {com d1}. To use, you typically join with a separator:
|
X | X | |||
$(TargetDir) | Target directory of the compiled files. | X | X | X | X | |
$(TargetPaths) | List of target directories of all dependencies. | X | X | X | X | |
$(XCFFilePath) | Path of the XCF file found for the application. | X | X |
For all variables that contain a list of files, for example $(BuildInputFiles), special syntax is used to expand the list.
$(variableName:.extension)
For example, $(BuildInputFiles:.4gl) returns all files with a 4gl extension in the $(BuildInputFiles) list, separated by a space.
$(variableName|separator)
For example, $(BuildInputFiles|#) returns all the files in the $(BuildInputFiles) list, separated by a #.