Go to main content
Oracle® Developer Studio 12.5: Distributed Make (dmake)

Exit Print View

Updated: June 2016
 
 

Environment/Macros

The following can be defined as either environment variables or makefile macros:

DMAKE_RCFILE

Defines an alternate runtime configuration file. The default runtime configuration file is $(HOME)/.dmakerc .

DMAKE_GROUP

Defines the name of the build server group to which jobs are distributed. Server groups are defined in the runtime configuration file. The default server group is the first group in the runtime configuration file.

DMAKE_MAX_JOBS

Defines the maximum total number of jobs that are distributed to the specified group of build servers in the runtime configuration file. The default maximum number of jobs is the sum of all the specified jobs in a build server group. The jobs are subtracted from, or added to, hosts by 1 in the order they appear in the runtime configuration file.

See the -j option in this man page for an example.

DMAKE_ADJUST_MAX_JOBS

May contain one of the following key words:

YES

Enables dmake to adjust the limit of parallel jobs according to the current loading of the system. If the system is not overloaded, dmake will use the limit defined by the user. If the system is overloaded, dmake will set the "current" limit to less than the limit defined by the user.

If this variable is not set, dmake will adjust the limit of parallel jobs according to the current loading of the system. This is the dmake default.

NO

Causes dmake to switch off the autoadjustment mechanism.

DMAKE_MODE

May contain one of the following key words:

serial

Causes dmake to behave like the standard serial version of make.

parallel

Causes dmake to distribute jobs to only the dmake host.

distributed

Causes dmake to behave in fully distributed mode. This is the dmake default.

grid

Causes dmake to use Oracle Grid Engine (formerly Solaris Grid Engine) to distribute build jobs.

DMAKE_ODIR

Defines a common physical directory that dmake can write temporary output files to and read temporary output files from.

Use this environment variable, or macro, only if the $(HOME) directory on your local host and the $(HOME) directory on all of your remote hosts are not the same physical $(HOME) directory. For example, a root user would use this option.

DMAKE_OUTPUT_MODE

Defines the format of the log file. May contain one of the following keywords:

TEXT1

On starting each build job, dmake prints the name of the system and command to the log file.

Also, if the command itself prints any output, then as the job finishes, dmake prints the name of the system and command to the log file again along with the command output.

Example:

host1 --> 1 job
echo "Done host1"
host2 --> 1 job
echo
"Done host2"
host1 --> Job output
echo "Done host1"
Done host1
host2 --> Job output
echo "Done host2"
Done host2

This is the dmake default.

TEXT2

Allows dmake to serialize the output of parallel jobs, which makes the log file more readable. In this mode, dmake just prints the command once, immediately followed by the command output, as each job finishes.

Example:

echo "Done host1"
Done host1
echo "Done host2"
Done host2