ClearCase build utility; maintains, updates, and regenerates groups of programs
Product | Command Type |
---|---|
ClearCase | command |
Platform |
---|
UNIX |
Windows |
UNIX only-Build a target:
Windows only-Build a target:
Display version information for clearmake:
clearmake is ClearCase's variant of the UNIX make(1) utility. It includes most of the features of UNIX System V make(1). It also features compatibility modes, which enable you to use clearmake with makefiles that were constructed for use with other popular make variants, including Gnu make.
clearmake features a number of ClearCase extensions:
Configuration Lookup-A build-avoidance scheme that is more sophisticated than the standard scheme, which uses time stamps of built objects. Configuration lookup also includes automatic dependency detection. For example, this guarantees correct build behavior as C-language header files change, even if the header files are not listed as dependencies in the makefile.
Derived Object Sharing-Developers working in different views can share the files created by clearmake builds.
Creation of Configuration Records-Software bill-of-materials records that fully document a build and support the ability to rebuild.
NOTE: clearmake is intended for use in dynamic views. You can use clearmake in a snapshot view, but most of the features that distinguish it from ordinary make programs-build avoidance, build auditing, derived object sharing, and so on-are not enabled in snapshot views. (Parallel builds are enabled.) The rest of the information in this reference page assumes you are using clearmake in a dynamic view.
The following reference pages include information related to clearmake operations and results:
Executes builds on remote hosts during a parallel build. | |
Specifies hosts to be used for parallel builds. | |
Controls use of a host for parallel builds. | |
Builds software on Windows NT and provides compatibility with PC-based make products. | |
Runs audited builds. | |
(cleartool subcommand) Lists derived objects created by clearmake, omake, or clearaudit. | |
(cleartool subcommand) Displays configuration records created by clearmake, omake, or clearaudit. | |
(cleartool subcommand) Compares configuration records created by clearmake, omake, or clearaudit. | |
(cleartool subcommand) Removes a derived object from a VOB. | |
(cleartool subcommand) Winks in a derived object to a view or to the VOB. |
See also Building Software with ClearCase.
For a build that uses the data in one or more VOBs, the shell or command interpreter from which you invoke clearmake must have a view context:
On UNIX systems, the view context must be either a set view or a working directory view. If you have a working directory view, but it differs from the set view, clearmake changes its set view to the working directory view.
On Windows systems, you must be on the dynamic-views drive (default: M:\) or a drive assigned to a view. If you want derived objects to be shared among views, you must be on a drive assigned to a view.
You can build objects in a standard directory, without a view context, but this disables many of clearmake's special features.
clearmake is designed to read makefiles in a way that is compatible with other make variants. For details, including discussions of areas in which the compatibility is not absolute, see Using clearmake Compatibility Modes in Building Software with ClearCase.
For more information about makefiles and clearmake, see Building Software with ClearCase.
In many ways, ClearCase builds adhere closely to the standard make paradigm:
You invoke clearmake, optionally specifying the names of one or more targets. (Such explicitly specified targets are called "goal targets.")
clearmake reads zero or more makefiles, each of which contains targets and their associated build scripts. It also reads zero or more build options specification (BOS) files, which supplement the information in the makefiles.
clearmake supplements the makefile-based software build instructions with its own built-in rules, or, when it runs in a compatibility mode, with built-in rules specific to that mode.
For each target, clearmake performs build avoidance, determining whether it actually needs to execute the associated build script (target rebuild). It takes into account both source dependencies (Have any changes occurred in source files used in building the target?) and build dependencies (Must other targets be updated before this one?).
If it decides to rebuild the target, clearmake executes its build script.
The following sections describe special clearmake build features in more detail. Figure 7 illustrates the associated data flow.
Figure 7 Data Flow in a clearmake Build
In conjunction with the MVFS file system, clearmake audits the execution of all build scripts, keeping track of file use at the system-call level. For each execution of a build script, it creates a configuration record (CR), which includes the versions of files and directories used in the build, the build script, build options, (for example, macro assignments) and other related information. A copy of the CR is stored in the VOB database of each VOB in which the build script has built new objects.
A file created within a VOB by a build script is called a derived object (DO), and it can be shareable or nonshareable. When a shareable derived object is built in a view, a corresponding VOB database object is also created. This enables any view to access and possibly share (subject to access permissions) any derived object, no matter what view it was originally created in.
When a build tool creates a nonshareable derived object, the tool does not write any information about the DO to the VOB. Therefore, the DO is invisible to other views and cannot be winked in by them. Builds that create nonshareable DOs are called express builds. For more information about using express builds, see Preventing Winkin to Other Views.
NOTE: Symbolic links created by a build script and files created in non-VOB directories are not DOs. See MVFS FILES AND NON-MVFS OBJECTS.
For each build script execution, ClearCase logically associates each DO created with the build script's CR.
You can suppress the creation of CRs and derived objects with the -F option. For details on CRs, derived objects, see Derived Objects and Configuration Records in Building Software with ClearCase. For information on ClearCase-specific special targets, see Building Software with ClearCase.
A typical makefile has a hierarchical structure. Thus, a single invocation of clearmake to build a high-level target can cause multiple build scripts to be executed and, accordingly, multiple CRs to be created.
For directory targets, clearmake uses standard make logic.
When a target names a nondirectory file in a VOB, clearmake (by default) uses configuration lookup to determine whether a build is required. This involves comparing the CRs of existing DOs with the current build configuration:
The versions of elements selected by the view's config spec.
The build options to be applied, as specified on the clearmake command line, in the environment, in makefile(s), or in build options specification file. See BUILD OPTIONS SPECIFICATION FILE.
The build script to be executed.
In performing configuration lookup, clearmake considers a DO version (a derived object that has been checked in as a version of an element) only if the version's element has the same pathname as the original derived object. That is, if you copy a DO to a different location from where it was created and check it in there, clearmake does not consider the DO version.
clearmake first tries to avoid rebuilding by reusing a DO in the current view; this succeeds only if the CR of the candidate DO matches the current build configuration. For the purpose of rebuilding, a branch/0 version of a file selected by a view is considered to match its non-zero predecessor version in a CR.
clearmake can also avoid rebuilding by finding a shareable DO, built in another view, whose CR matches the current build configuration. In this case, it winks in (winkin) that derived object, causing it to be shared among views. Other derived objects created by the same build script (siblings) are winked in at the same time. clearmake rebuilds a target only if it cannot locate any existing derived object that matches the current build configuration.
DO versions must be checked out before they can be re-used or winked in. The -c option to clearmake provides support for automatically checking out these DOs before they are used. The CCASE_AUTO_DO_CI environment variable provides a means to automatically check in DOs checked out by clearmake -c. Checkouts executed by this feature behave like any cleartool checkout does with respect to reservation. Methods that can be used to change cleartool checkout's default reservation policy apply here as well. The checkouts are not audited. Checkins preserve the timestamp of the DO as though cleartool checkin -ptime were used. This feature is fully compatible with checkout or checkin triggers, which fire normally when the event occurs.
The .cmake.state file is a view-private cache of config records for derived objects built in the view. clearmake creates this file in the directory that was current when the build started. During subsequent builds in that directory in the view, clearmake references the file instead of communicating with the VOB. This makes configuration lookup faster, improving clearmake performance.
You can delete .cmake.state files if they get too large. When clearmake looks for a .cmake.state file and it doesn't exist, no errors occur and clearmake creates a new file.
You can override the default configuration lookup behavior with command options and ClearCase special targets. (For information on ClearCase special targets, see Building Software with ClearCase). For example, -T turns off configuration lookup, basing rebuild decisions on time stamps, and -V disables winkin of DOs from other views.
You can prevent derived objects that you create from being winked in to other views by using express builds. During an express build, clearmake creates nonshareable DOs. These DOs have config records, but clearmake does not write information about the DOs into the VOB. DOs created during an express build are invisible to other views. To use express builds, invoke clearmake in a view configured with the nonshareable DOs property:
To configure an existing view for express builds, use chview -nshareable_dos view-tag. See the chview reference page for more information.
To create a new view and configure it with the nonshareable DOs property, use the mkview command and specify the -nshareable_dos option. See the mkview reference page for more information.
Use the -T or -F options to create view-private files only.
Use special targets that prevent winkin; for example, .NO_WINK_IN. For more information, see Building Software with ClearCase.
Set an environment variable that no other users set identically. This environment variable will be recorded in the config records clearmake creates.
All files with pathnames below a VOB-tag (VOB mount point) are termed MVFS files:
Checked-in versions of file elements (data stored in VOB)
Checked-out versions of file elements (data stored in view)
Other view-private files
Derived objects
Conversely, a non-MVFS object is any file, directory, or UNIX link whose pathname is not under a VOB-tag; such objects are not version controlled. By default, non-MVFS objects are not audited during clearmake builds. Non-MVFS files that are read during a build are not included in the detected dependency list of the CR, and non-MVFS files that are created are not ClearCase derived objects. A CR includes information on a non-MVFS object used by a build script only if either of these conditions are true:
The object appears as an explicit dependency in the makefile.
The object can be inferred to be a dependency through clearmake's file-name extension rules.
The explicit dependency is referred to as a makefile dependency. For example:
src.o : /usr/include/stdio.h
During configuration lookup, clearmake examines each non-MVFS file that is listed in the CR of a candidate DO. The CR entry includes: the non-MVFS file's size, its time stamp, and its checksum. The current version of the non-MVFS file must match the CR entry in one of these ways:
First check: file size and time stamp
Second check: file size and checksum
clearmake also performs these checks during a parallel build. If the characteristics of a file are different on the local machine and the remote build host, clearmake does not attempt the rebuild; instead, it prints the following message:
abe: Error: Inconsistent version for dependency "dependency"
This ensures the consistency of a build across multiple hosts.
A build options specification (BOS) file is a text file containing macro definitions and/or ClearCase special targets. We recommend that you place nonpermanent option specifications (for example, a macro that specifies "compile for debugging") in a BOS file, instead of on the clearmake command line. This minimizes the likelihood of having clearmake perform a rebuild unexpectedly (for example, because you specified -g (UNIX) or /Zi (Windows) on a compiler command line last time, but forgot to specify it this time).
See Building Software with ClearCase for details.
clearmake can monitor the current VOB's lock status during a build, so that if an administrator locks the VOB while clearmake is running, the build does not terminate abnormally. Before executing the build script and before creating a derived object and configuration record, clearmake checks the lock status of the current VOB. If the VOB is locked, clearmake starts a sleep-check cycle. When it finds the VOB unlocked, the build proceeds.
NOTE: clearmake starts the sleep-check cycle even if the user who invokes the build is on the exception list for the lock.
When a sleep-check cycle begins, clearmake prints a message announcing the sleep, its duration, and the reason for it. Initially, clearmake checks the lock status 10 times, waiting 60 seconds between attempts. clearmake then increments the sleep time by 5 seconds and again tries 10 times, and so on. clearmake prints a sleep message at the start of each group of 10 retries.
This implementation does not guarantee that the build will not terminate abnormally. There are still a few "windows of failure." The build script will fail and terminate abnormally, and the build will terminate if any of these conditions is true:
The build script modifies the VOB, either by running a cleartool command that modifies the VOB, or simply removing the derived object which is the target of the build.
The build script writes to another VOB other than the current VOB, and the other VOB is locked.
The VOB becomes locked in the short time between the check and the build script execution, and the build script has an action that modifies the VOB.
By default, clearmake checks the VOB containing the working directory that was current at the start of the build. To check a set of VOBs, set the environment variable CCASE_BLD_VOBS to the list of VOB-tags to check. Separate the VOB-tags in the list with a space, tab, colon (UNIX), semicolon (Windows), or comma.
To disable the checks, set the environment variable CCASE_BLD_NOWAIT. When this environment variable is set, clearmake does not check for a VOB-lock (or wait for the VOB to be unlocked).
When clearmake shops for a derived object to wink in to a build, it may find DOs from a view that is unavailable (because the view server host is down, the albd_server is not running on the server host, and so on). Attempting to fetch the DO's configuration record from an unavailable view causes a long time-out, and the build may reference multiple DOs from the same view.
clearmake and other cleartool commands that access configuration records and DOs (lsdo, describe, catcr, diffcr) maintain a cache of tags of inaccessible views. For each view-tag, the command records the time of the first unsuccessful contact. Before trying to access a view, the command checks the cache. If the view's tag is not listed in the cache, the command tries to contact the view. If the view's tag is listed in the cache, the command compares the time elapsed since the last attempt with the time-out period specified by the CCASE_DNVW_RETRY environment variable. If the elapsed time is greater than the time-out period, the command removes the view-tag from the cache and tries to contact the view again.
NOTE: The cache is not persistent across clearmake sessions. Each recursive or individual invocation of clearmake attempts to contact a view whose tag may have been cached in a previous invocation.
The default time-out period is 60 minutes. To specify a different time-out period, set CCASE_DNVW_RETRY to another integer value (representing minutes). To disable the cache, set CCASE_DNVW_RETRY to 0.
clearmake supports parallel building (execution of several build scripts concurrently on one or more hosts). Parallel building is enabled by the -J option, which specifies the parallelism (concurrency) level, and the build hosts file, which lists hosts where build scripts can be dispatched.
Before starting a parallel build, clearmake determines what work needs to be done, organizing the work as a sequence of target rebuilds. clearmake then dispatches build scripts to hosts, using a load balancing scheme. By default, a host is used only if it is at least 50% idle. You can adjust this idleness threshold with a -idle specification in your build hosts file. See the bldhost and bldserver.control reference pages for details.
To suppress parallel building for some or all of a makefile's targets, use the special .NOTPARALLEL target. See Building Software with ClearCase for details.
For information on setting up a parallel build, see Setting Up a Parallel Build in Building Software with ClearCase.
clearmake dispatches a build script to a remote host by invoking a remote shell there. This shell, in turn, runs an audited build executor (abe) process which executes the build script. If the abe process cannot be started, clearmake will not use the host.
For information on how the environment is set, see the abe reference page.
In a serial build (-J not specified), a target's build script is connected to stdout directly. Output appears as soon as it is produced by the script's commands. In a parallel build (-J specified with an argument >=1), the standard output of each build script is accumulated in a temporary file by clearmake. As each build script finishes, clearmake sends it to stdout all at once.
To perform a parallel build on the local host, make sure that both of the following conditions are true:
CCASE_HOST_TYPE is unset when you invoke clearmake.
You specify -J num on the clearmake command line, where num is greater than 0.
clearmake uses the idle specification in your host's bldserver.control file to determine whether it can perform the build on your host. If your host does not have a bldserver.control file, clearmake assumes an idle threshold of 0 and performs the build regardless of the load on your host.
NOTE: clearmake prints a message that it is performing a parallel build on the local host.
clearmake schedules and manages target rebuilds as follows:
It executes the build script for an out-of-date target as soon after detection as system build resources will allow.
It does not assume that executing a build script for a specific target implies that the target was updated.
clearmake evaluates the dependency graph, beginning with the command-line supplied targets. Before evaluating a specific target, clearmake ensures that all dependents of that target have been evaluated and brought up to date. As soon as a target is deemed to be out of date, it is made available for rebuilding. A rebuild is initiated as soon as system resources allow. Depending on the availability of build hosts and load-balancing settings, this may happen immediately or be delayed.
When DO shopping/winkin occurs, clearmake postpones DO lookup for any target that has scheduled dependents until the target is encountered in the rebuild logic. When a target with previously scheduled dependents is encountered in the rebuild logic, clearmake then performs the DO shopping/winkin attempt only when the target's dependencies have completed. This eliminates unnecessary rebuilds in serial mode and allows a parallel clearmake to initiate rebuilds sooner.
When you perform a parallel build with clearmake, you can specify that clearmake must build a target on a certain host. The environment variable CCASE_BLD_HOSTS specifies one or more build hosts.
NOTE: These hosts do not have to appear in your build hosts file. If a specified host appears in your build hosts file, clearmake ignores any -idle specifications for the host in the build hosts file and uses -idle 0.
We recommend that you set this variable conditionally in your makefile, using target-dependent variable bindings. If you set the variable on the clearmake command line, in your process environment, or unconditionally in your makefile, it applies to all targets.
NOTE: clearmake supports target-dependent variable bindings in standard mode and in Sun compatibility mode. You can also use target-dependent variable bindings in your BOS file for any compatibility mode.
For example, to ensure that the target foo is built on host neon or saturn:
foo := CCASE_BLD_HOSTS = neon saturn
You can also use patterns in target names. For example, to build all .o files on host pluto:
%.o := CCASE_BLD_HOSTS = pluto
clearmake applies CCASE_BLD_HOSTS bindings to dependencies of the specified targets. To apply CCASE_BLD_HOSTS to the specified targets but not their dependencies, add the line shown below to the builtins file for your compatibility mode:
Mode | Location of builtins file | Line to add |
---|---|---|
standard | ccase-home-dir/etc/builtin.mk |
% := CCASE_BLD_HOSTS = |
Sun | ccase-home-dir/etc/sunbuiltin.mk |
% := CCASE_BLD_HOSTS = |
clearmake takes into account the fact that as your build progresses, other developers can continue to work on their files, and may check in new versions of elements that your build uses. If your build takes an hour to complete, you do not want build scripts executed early in the build to use version 6 of a header file, and scripts executed later to use version 7 or 8. To prevent such inconsistencies, clearmake locks out any version that meets both of these conditions:
The version is selected by a config spec rule that includes the LATEST version label.
The version was checked in after the time the build began (the build reference time).
This reference-time facility applies to checked-in versions of elements only; it does not lock out changes to checked-out versions, other view-private files, and non-MVFS objects. clearmake adjusts for the fact that the system clocks on different hosts in a network may be somewhat out of sync (clock skew).
For more information, see Pointers on Using ClearCase Build Tools in Building Software with ClearCase.
clearmake returns a zero exit status if all goal targets are successfully processed. It returns a nonzero exit status in two cases:
clearmake itself detects an error, such as a syntax error in the makefile. In this case, the error message includes the string "clearmake".
A makefile build script terminates with a nonzero exit status (for example, a compiler error).
See also the description of the -q option.
clearmake supports the options below. In general, standard make options are lowercase characters and clearmake extensions are uppercase. Options that do not take arguments can be combined on the command line (for example, -rOi).
@
) are listed. See Building Software with ClearCase.
|
|
sgismake | Emulates the smake(1) native to IRIX systems. To define built-in make rules, clearmake reads file /usr/include/make/system.mk instead of ccase-home-dir/etc/builtin.mk. |
sgipmake | Emulates the pmake(1) native to IRIX systems. To define built-in make rules, clearmake reads file /usr/include/make/system.mk instead of ccase-home-dir/etc/builtin.mk. |
sun | Emulates the standard make(1) native to SunOS systems. clearmake defines built-in make rules in the following ways:
|
aix | Emulates the standard make(1) native to IBM AIX systems. |
gnu | Emulates the Free Software Foundation's Gnu make program. To define built-in make rules, clearmake reads file ccase-home-dir/etc/gnubuiltin.mk instead of ccase-home-dir/etc/builtin.mk. |
std | Invokes the standard clearmake with no compatibility mode enabled. Use this option to nullify a setting of the environment variable CCASE_MAKE_COMPAT. |
gnu | Emulates the Free Software Foundation's Gnu make program. To define built-in make rules, clearmake reads file ccase-home-dir\etc\gnubuiltin.mk instead of ccase-home-dir\etc\builtin.mk. |
std | Invokes the standard clearmake with no compatibility mode enabled. Use this option to nullify a setting of the environment variable CCASE_MAKE_COMPAT. |
|
|
String-valued variables called make macros can be used anywhere in a makefile: in target lists, in dependency lists, and/or in build scripts. For example, the value of make macro CFLAGS can be incorporated into a build script as follows:
UNIX:
cc -c $(CFLAGS) msg.c
Windows:
cl $(CFLAGS) msg.c
Environment variables (EVs) can also be used in a makefile, but only in a build script. For example:
print:
print_report -style $$PRT_STYLE -dest $${PRT_DEST}.rpt
clearmake converts the double-dollar-sign ($$) to a single dollar sign:
On UNIX systems, the EV is expanded in the shell in which the build script executes. (Programs invoked by the build script can also read their environment, using getenv(2).)
On Windows systems, the EV is expanded in the shell in which the build script executes only if the shell recognizes the dollar sign ($) (cmd.exe does not).
Conflicts can occur in specifications of make macros and environment variables. For example, the same make macro might be specified both in a makefile and on the command line; or the same name may be specified both as a make macro and as an environment variable.
clearmake resolves such conflicts similarly to other make variants; it uses the following priority order, from highest to lowest:
Target-specific macros specified in a BOS file
Target-specific macros specified in a makefile
Make macros specified on the command line
Make macros specified in a BOS file
Make macros specified in a makefile
Environment variables
Built-in macros
Using the -e option gives environment variables higher priority than make macros specified in a makefile.
Conflict Resolution Details. The following discussion treats this topic more precisely but less concisely.
clearmake starts by converting all EVs in its environment to make macros. (SHELL is an exception-see SHELL Environment Variable.) These EVs are also placed in the environment of the shell process in which a build script executes. Then, it adds in the make macros declared in the makefile. If this produces name conflicts, they are resolved as follows:
If clearmake was not invoked with the -e option, the macro value overwrites the EV value in the environment.
If clearmake was invoked with the -e option, the EV value becomes the value of the make macro.
Finally, clearmake adds make macros specified on the command line or in a BOS file; these settings are also added to the environment. These assignments always override any others that conflict. (A command-line assignment overrides a BOS setting of the same macro.)
clearmake does not use the SHELL environment variable to select the shell program in which to execute build scripts. It uses a UNIX Bourne shell (/bin/sh) or Windows cmd.exe, unless you specify another program with a SHELL macro. You can specify SHELL on the command line, in the makefile, or in a build options spec; the value of SHELL must be a full pathname, and on Windows, it must include the file extension.
NOTE: If clearmake determines that it can execute the build script directly, it does not use the shell program even if you specify one explicitly. If you use Windows .bat files in build scripts, you must make them executable (use the cleartool protect command). To force clearmake to always use the shell program, set the environment variable CCASE_SHELL_REQUIRED.
The CCASE_MAKEFLAGS and MAKEFLAGS environment variables provide an alternative (or supplementary) mechanism for specifying clearmake command options. These environment variables can contain a string of keyletters, the same letters used for clearmake command-line options. (However, clearmake does not allow options that take arguments in a CCASE_MAKEFLAGS or MAKEFLAGS string. See Special Environment Variables for information about specifying options that are not supported through CCASE_MAKEFLAGS or MAKEFLAGS.)
setenv CCASE_MAKEFLAGS ei |
(options set in environment) |
clearmake foo |
|
clearmake -ei foo |
(options set on command line) |
clearmake combines the value of CCASE_MAKEFLAGS or MAKEFLAGS with the options specified on the command line (if any). The combined string of keyletters becomes the value of the macro MAKEFLAGS, available to build scripts.
This is very useful for build scripts that involve recursive invocations of clearmake. When clearmake -n is applied to such a build script, all the nested invocations of clearmake pick up the "no-execute" option from the value of CCASE_MAKEFLAGS or MAKEFLAGS. Thus, no targets are actually rebuilt, even though many levels of clearmake command may be executed. This is one way to debug all of the makefiles for a software project without building anything.
clearmake uses one of CCASE_MAKEFLAGS or MAKEFLAGS, but not both. If CCASE_MAKEFLAGS is set, clearmake uses it. If CCASE_MAKEFLAGS is not set, clearmake looks for MAKEFLAGS.
If you use other make programs in addition to clearmake, putting clearmake-specific options in the MAKEFLAGS environment variable may cause the make programs to generate errors. Therefore, we suggest you use the CCASE_MAKEFLAGS and MAKEFLAGS environment variables in the following ways:
If you use... | Use... |
---|---|
clearmake only | CCASE_MAKEFLAGS |
clearmake and other make programs, but do not use clearmake-specific options | MAKEFLAGS |
clearmake and other make programs, and do use clearmake-specific options | CCASE_MAKEFLAGS (all options) for clearmake builds MAKEFLAGS (all options except clearmake-specific options) for other make builds |
The environment variables described below are also read by clearmake at startup. In some cases, as noted, you can also specify the information as a make macro on the command line, in a makefile, or in a BOS file.
1 | Equivalent to -v on the command line |
2 | Equivalent to -d on the command line |
0 or undefined | Equivalent to standard message logging level |
Unconditionally build the default target in a particular makefile, along with all its dependent targets.
% clearmake -u -f project.mk
Build target hello without checking build scripts or build options during configuration lookup. Be moderately verbose in generating status messages.
z:\src>
clearmake -v -O hello
Build the default target in the default makefile, with a particular value of make macro INCL_DIR. Base rebuild decisions on time-stamped comparisons instead of performing configuration lookup, but still produce CRs.
y:\>
clearmake -T INCL_DIR=\src\include_test
Perform a parallel build of target bgrs, using up to five of the hosts listed in file .bldhost.solaris in your home directory.
% setenv CCASE_HOST_TYPE solaris
% clearmake -J 5 bgrs
Build target bgrs.exe, restricting configuration lookup to the current view only. Have environment variables override makefile macro assignments.
z:\src>
clearmake -e -V bgrs.exe
Build the default target in Sun compatibility mode.
% clearmake -C sun
ccase-home-dir/etc/builtin.mk (UNIX) or ccase-home-dir\etc\builtin.mk (Windows)
abe, bldhost, bldserver.control, clearaudit, omake, promote_server, scrubber, umask(1)
Building Software with ClearCase
Feedback on the documentation in this site? We welcome any comments!
Copyright © 2001 by Rational Software Corporation. All rights reserved. |