Using Sun WorkShop

Using the dmake Utility

You execute dmake on a dmake host and distribute jobs to build servers. You can also distribute jobs to the dmake host, in which case it is also considered to be a build server. The dmake utility distributes jobs based on makefile targets that dmake determines (based on your makefiles) can be built concurrently. You can use a machine as a build server if it meets the following requirements:

From the dmake host you can control which build servers are used and how many dmake jobs are allotted to each build server. The number of dmake jobs that can run on a given build server can also be limited on that server.


Note -

If you specify the -m option with the parallel argument, or set the DMAKE_MODE variable or macro to the value parallel, dmake does not scan your runtime configuration file. Therefore, you must specify the number of jobs using the -j option or the DMAKE_MAX_JOBS variable or macro. If you do not specify a value this way, a default of two jobs is used.



Note -

If you modify the maximum number of jobs using the -j option, or the DMAKE_MAX_JOBS variable or macro when using dmake in distributed mode, the value you specify overrides the values listed in the runtime configuration file. The value you specify is used as the total number of jobs that can be distributed to all build servers.


Controlling dmake Jobs

The distribution of dmake jobs is controlled in two ways:

  1. A dmake user on a dmake host can specify the machines to use as build servers and the number of jobs to distribute to each build server.

  2. The "owner" on a build server can control the maximum total number of dmake jobs that can be distributed to that build server. The owner is a user who can alter the /etc/opt/SPROdmake/dmake.conf file.


    Note -

    If you access dmake from the GUI (Building window), use the online help to know how to specify your build servers and jobs. If you access dmake from the coommand line, see the dmake man page (dmake.1).