The diffcr command compares the configuration records (CRs) of two derived objects. A CR is produced by clearmake, clearaudit, and omake when they finish executing a build script in a dynamic view. By comparing CRs, you can determine these differences:
Note: Not all of this information is available from configuration records of DOs created by clearaudit.
The do-pname arguments specify the derived objects to be compared. You can specify a derived object in these ways:
DO-pname@@creation_date.creation_time.id-number
For example:
To display a derived object's DO ID, use lsdo.
You can compare a nonshareable DO in your view to a nonshareable DO created in another view, but you must use a view-extended pathname to specify the DO in the other view.
diffcr supports the same filter and report style options as the catcr command. This support allows you to restrict the comparison to particular subtargets of the do-pname, control which objects appear in the listing, specify how pathnames are displayed, and expand the listing to include comments and other supplementary information. See the catcr reference page for additional information.
diffcr maintains 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.
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.
On Windows systems, diffcr reports on all objects in the CRs, which may include source files and directories; derived objects; makefiles; view-private files, and (for builds performed with omake) non-MVFS objects that were explicitly declared as dependencies.
The UNIX examples in this section are written for use in csh. If you use another shell, you may need to use different quoting and escaping conventions.
The Windows examples that include wildcards or quoting are written for use in cleartool interactive mode. If you use cleartool single-command mode, you may need to change the wildcards and quoting to make your command interpreter process the command appropriately.
In cleartool single-command mode, cmd-context represents the UNIX shell or Windows command interpreter prompt, followed by the cleartool command. In cleartool interactive mode, cmd-context represents the interactive cleartool prompt.
cmd-context lsdo -zero bgrs
11-Dec.15:24 "bgrs@@11-Dec.15:24.1487"
11-Dec.12:05 "bgrs@@11-Dec.12:05.1256"
cmd-context diffcr –flat bgrs bgrs@@11-Dec.12:05.1956
< Reference Time 11-Dec-98.15:23:52, this audit started 11-Dec-98.15:23:59
> Reference Time 11-Dec-98.12:02:39, this audit started 11-Dec-98.12:04:52
< View was oxygen:/usr/jones/views/main.vws
[uuid 66e68edc.471511cd.ac55.08:00:2b:33:ec:ab]
> View was oxygen:/usr/jones/views/r1_fix.vws
[uuid 8b468fd0.471511cd.aca5.08:00:2b:33:ec:ab]
----------------------------
----------------------------
MVFS objects:
----------------------------
< /vobs/docaux/bgr/sun4/bgrs@@11-Dec.15:24.1987
> /vobs/docaux/bgr/sun4/bgrs@@11-Dec.12:05.1956
----------------------------
< /vobs/docaux/bgr/sun4/bugs.o@@11-Dec.15:23.1981
> /vobs/docaux/bgr/sun4/bugs.o@@11-Dec.12:03.1902
----------------------------
< /vobs/docaux/bgr/sun4/bugsched.o@@11-Dec.15:23.1984
> /vobs/docaux/bgr/sun4/bugsched.o@@11-Dec.12:04.1953
The comparison shows that the builds used different versions of the object modules bugs.o and bugsched.o.
cmd-context diffcr -flat bgrs.exe bgrs.exe@@11-Dec.12:05.1956
----------------------------
MVFS objects:
----------------------------
----------------------------
< First seen in target "bugs.obj"
< 1 \vob1\docaux\bgr\bugs.c@@\main\2 <11-Dec-98.15:22:53>
> First seen in target "bugs.obj"
> 1 \vob1\docaux\bgr\bugs.c@@\main\1 <19-Dec-97.11:49:54>
----------------------------
< First seen in target "bugsched.obj"
< 1 \vob1\docaux\bgr\bugsched.c@@\main\2 <11-Dec-98.15:23:04>
> First seen in target "bugsched.obj"
> 1 \vob1\docaux\bgr\bugsched.c@@\main\1 <19-Dec-97.11:50:07>
----------------------------
< First seen in target "bgrs.exe"
< 1 \vob1\docaux\bgr\bgrs.exe@@11-Dec.15:24.1987
> First seen in target "bgrs.exe"
> 1 \vob1\docaux\bgr\bgrs.exe@@11-Dec.12:05.1956
----------------------------
< First seen in target "bgrs.exe"
< 2 \vob1\docaux\bgr\bugs.obj@@11-Dec.15:23.1981
> First seen in target "bgrs.exe"
> 2 \vob1\docaux\bgr\bugs.obj@@11-Dec.12:03.1902
----------------------------
< First seen in target "bgrs.exe"
< 2 \vob1\docaux\bgr\bugsched.obj@@11-Dec.15:23.1984
> First seen in target "bgrs.exe"
> 2 \vob1\docaux\bgr\bugsched.obj@@11-Dec.12:04.1953
The integer at the beginning of an entry indicates the number of times the object was referenced during the build. The first seen in target message indicates the first target rebuild in which the object was referenced.
Copyright© 2003 Rational Software. All Rights Reserved.