QEF home page
8. Check-in, Qgdiff, Qef -Ptargets, Incls

In this section we will check in the file that was changed in the previous section and demonstrate some other useful tools.

Table of Contents
Previous Page
Next Page

Checking our check-out

vci, the QEF version control system interface provides a number of mechanisms to invoke facilities of the underlying version system, be if rcs, cvs, SCCS, Perforce and so on. Some of these facilities are illustrated in the following.

% vci tell  # get list of locked files

% sls -a etoc.l  # list all etoc.l in path

% vci diff etoc.l  # show changes to file
RCS file: /p/cook/s3.4/ctoe/RCS/etoc.l,v
retrieving revision 1.1
diff -r1.1 etoc.l
> void{ENDL}    {
>               coutput("void");
>               castreset();
>       }
<               coutput ("int");
>               coutput("int");
<               /* gratuitous comment */

% vci vdiff etoc.l  # show changes to file visually
qgdiff window
Check In and Rebuild

Given that the changes seem to be valid, we now use vci to check in the changes and then use qef to rebuild using the newly checked-in version.

% vci ci etoc.l  # check in the file
Checking in /g/dt/cook/work/ctoe/etoc.l
/p/cook/s3.4/ctoe/RCS/etoc.l,v  <--  etoc.l
new revision: 1.2; previous revision: 1.1
enter log message, terminated with single '.' or end of file:
>> added void type
>> .
Updating baseline /g/dt/cook/work/ctoe/etoc.l
/p/cook/s3.4/ctoe/RCS/etoc.l,v  -->  etoc.l
revision 1.2
cush: Enter to continue:^J

% qef etoc  # rebuild after check-in
#{ etoc @gobo 2003/07/18 04:48:15
# QEFHALTFILE: /g/dt/cook/obj/ctoe/%qef11225b.hlt
Moved:   /g/dt/cook/work/ctoe/etoc.l -> /p/cook/s3.4/ctoe/etoc.l
+ qlex /p/cook/s3.4/ctoe/etoc.l
+ cc -c -I. -I/g/dt/cook/work/ctoe -I/p/cook/s3.4/ctoe \
        -I/p/qtree/9.1/linux2_0i/include etoc.c
+ cc -o etoc etoc.o -L/p/qtree/9.1/linux2_0i/lib -ldt \
#} E0 gobo@/g/dt/cook/obj/ctoe 2003/07/18 04:48:20(5)
List the Supported Targets
% qef -Ptargets  # list qef targets possible
Local:          do local constructions
Install:        do installations
RemoveInst:     remove objects installed into other directories
RemoveObjs:     remove objects in local directories
RemoveAll:      remove installed and local objects
                Any of above can be followed by `List' which
                suppresses removals and leaves list in place.
Man:            install manual sections
Objects:        produce all *.o files
<module>.o:     produce object file for module
<module>.i:     produce preprocessed C code for module.[cly]
Sfiles:         produce *.s files
<module>.s:     produce assembly code for module.[cly]
<module>.c:     intermediate product for <module>.?
<module>~I:     do Install actions for installed file called 
<module>~M:     do Man actions for installed file called module
<man>.<sect>~M: install manual section <man>.<sect>

Individual selectable items:

ctoe     ctoe.1~M ctoe~I   etoc     etoc.1~M etoc~I
Installing etoc and its manual section
% qef etoc~I etoc.1~M  # install etoc and its man section
#{ etoc~I etoc.1~M @gobo 2003/07/18 05:00:24
# QEFHALTFILE: /g/dt/cook/obj/ctoe/%qef11313b.hlt
+ instal -E -d /g/dt/cook/dest/bin/etoc etoc
+ instal -d /g/dt/cook/dest/man/man1/etoc.1 
#} E0 gobo@/g/dt/cook/obj/ctoe 2003/07/18 05:00:24(0)
Using incls to look at the dependencies
% incls etoc.l  # includes for `sls etoc.l`
                    /usr/include/features.h ... circular
                /usr/include/features.h ... listed above
                /usr/include/features.h ... listed above
                    machine/ansi.h ... missing
                /usr/include/gnu/types.h ... listed above
# eliminated 77 additional lines

% incls -l etoc.l  # as above but a simple list
# eliminated 48 additional lines ...

cook18.qh - 1.16 - 05/09/23 QEF home page Table of Contents Previous Page Next Page