The gsmake command
The gsmake command is a command line option to build projects. The tool is located in the $GSTDIR/bin (or, if you are on a Mac, $GSTDIR/Contents/MacOS) directory.
Syntax
gsmake [options] file_list
where file_list is a list of target Project (4pw) files, with or without the extension.
Argument | Description |
---|---|
-h |
Display help information. |
-V |
Display this program name and version. |
Targets | Parameter | Description |
---|---|---|
-active |
Target the default application, as set in the project. | |
-all |
Target the complete project (default behavior). | |
-t |
TARGET | The -t parameter indicates the target node of your project to
compile/clean or to execute; the path can be absolute or relative but you have to respect the XML
heirarchy of the target. When compiling/cleaning, the target can be any node of the project
except the Configuration and Virtual Folder nodes since the
When executing, the target node must be a Configuration node and
has to be called with the parameter When executing the target node and the Application and underlying Configuration node have the same name, you must specify the relative path or the absolute path to the Configuration node. This example specifes the relative path to the
target: $ gsmake -exec -t HelloWorld/HelloWorld HelloWorld.4pw This
example specifes the absolute path to the
target: $ gsmake -exec -t "Hello World/HelloWorld/HelloWorld" HelloWorld.4pw You can specify a whole (XML) path. The XML path is based on XPath, but it is a sub-set of the XPath syntax that can be used. If you want to compile the file OrderReport.4gl from the
Reports.4pw project, you could do it in the following ways:
gsmake -t OrderReport.4gl -r Reports.4pw gsmake -t OrderReport/src/OrderReport.4gl -r Reports.4pw gsmake -t Reports/Applications/OrderReport/src/OrderReport.4gl -r Reports.4pw However
you could not do it in this way:
gsmake -t Reports/OrderReport/src/OrderReport.4gl -r Reports.4pw The -t argument can be used multiple times to build several targets. |
Operations | Parameter | Description |
---|---|---|
-b |
Build the target (default behavior). The files that are not up-to-date are compiled, the others are not changed. | |
-r |
Rebuild the target. The output files are deleted, then all files are compiled. | |
-c |
Clean the target. The output files are deleted. | |
-convert |
Convert the project to the latest format. | |
-force-build |
Force the build/rebuild of the target. The files are compiled, whether or not they are up-to-date. | |
-env |
FILE_PATH | Generate a script that sets the environment defined in the project (as set on
the project nodes as well as additional environment variables computed through
dependencies) and changes the directory to the project directory. Provide the filename (and optional path) as the parameter. The goal is to replicate a project environment in a console. For example, starting from a Genero Workplace (envgenero), you can run the generated script to set the additional project-specific environment, and then run the application in the same environment that it would run under Genero Studio. |
-exec |
Executes the application specified by the target. |
Options | Parameter | Description | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
-j |
num_jobs | Set the number of parallel jobs to num_jobs. The default is 1. Set num_jobs to 0 to use the number of CPUs on the local computer. When this option is used, gsmake attempts to start multiple compilations in parallel, which should speed up the global compilation time. |
||||||||||||
-encoding |
ENCODING | Set the encoding to ENCODING. The default is System encoding. | ||||||||||||
-max-errors |
num_max_err | Set the maximum number of erroneous files to num_max_err. The
default is 5. Set num_max_err to 0 (zero) for an unlimited number of error files. |
||||||||||||
-disable-dependencies |
Disable the computation of the dependencies database. The deafult is false. | |||||||||||||
-ag-templateDir |
TEMPLATE | Set the Application Generator
template directory to
TEMPLATE.
Enter an absolute path, or a path relative to the $GSTDIR/bin/src/ag/tpl directory. The default value ("default") corresponds to the multiple-dialog template directory. |
||||||||||||
-generate-4pwdb |
Generate the 4pwdb file only. Default is False. | |||||||||||||
-wcDir |
WEBCOMPONENTS_DIR | Set the WebComponents Directory path | ||||||||||||
-verbose |
Specify verbose mode for build / link / execution rules. | |||||||||||||
-port |
PORT | Set the port number. | ||||||||||||
-javaServerPort |
JAVAPORT | Set the Java Server port number. | ||||||||||||
-javaServerLog |
LOGLEVEL | Set the Java Server log level.
|
||||||||||||
-filters |
MESSAGE_ID | By default, any TODO or BUG comments in the
source code appear as messages in the output when using the gsmake tool from the
command line to build a project.To exclude For example, to compile the HelloWorld project but exclude any TODO and BUG comments from the output: gsmake -filters TODO,BUG HelloWorld.4pw To compile the HelloWorld project but exclude any TODO comments and any -6609 errors from the output: gsmake -filters TODO,-6609 HelloWorld.4pw |