![]() |
In this section we build the rest of the project and introduce qefdirs, the multi-directory manager. |
![]() ![]() ![]() ![]() |
![]() |
![]()
Before we leave this directory, let's build and install the balance.
|
% qef Install Man #{ Install Man @gobo 2003/07/20 02:22:32 # QEFHALTFILE: /g/dt/cook/obj/ctoe/%qef31186b.hlt + cc -c -I. -I/g/dt/cook/work/ctoe -I/p/cook/s3.4/ctoe \ -I/p/qtree/9.1/linux2_0i/include \ /p/cook/s3.4/ctoe/ctoe.c + qyacc -h -yctoe /p/cook/s3.4/ctoe/ctoey.y + qlex -yctoe /p/cook/s3.4/ctoe/ctoel.l yacc: 6 shift/reduce conflicts. + instal -d /g/dt/cook/dest/man/man1/ctoe.1 The Instal Log |
|
One of the features of the instal (used for most installations) is the audit trail named by the qvrs variable InstLog. This variable is usually set in the project's top level tree.vrs file using the following: cset InstLog @RootDir/instal.logTo examine the @InstLog file: % qvrs @InstLog # retrieve value of InstLog /g/dt/cook/obj/instal.log % tail `!!` # tail the instal log # /*^ cleanilog -puv ^F dest/man/man1/ctoe.1 dt 20030720 02:22 ctoe:src/ctoe/ctoe.1 dest/man/man1/etoc.1 dt 20030720 02:22 ctoe:src/ctoe/etoc.1 dest/bin/ctoe dt 20030720 02:22 ctoe:ctoe dest/bin/etoc dt 20030720 02:22 ctoe:etoc The com line (/*^ cleanilog) is the command to clean up the log (e.g., remove duplicate entries and references to non-existent files). This line was added manually. The fields of the instal record are:
Why is instal misspelled? |
|
% x-qmisc faq8 faq8(x-qmisc) Why is Q-Tree's instal program misspelled? Because so many versions of install are mis-implemented. The second `l' is elided to ensure that the Q-Tree instal is used as versus implementations of install that often vary greatly and are never as paranoid as instal. One of the primary objectives of the qef package is consistent behaviour across all platforms. This often means that the system must provide its own utilities, rather than risk wide variations in semantics and interfaces. Note: On one university system the author found over two dozen variations of install, with a wide range of semantics and syntaxes. Note instal will not install an empty file unless the -e flag is specified because that same university's file system so often quietly created empty files. instal has a variety of flags to control the installation
of a file. The qvrs variable _F_instal is used to
specify universal flags, whereas _F_instal[file] is used to specify
the flags for file.
The _F_instal flag is usually set in the default and prototype
file cset _F_instal -qIsThe ![]() ![]() instal -I and the instal.fix file |
| Some flags, such as 102755 ^ mail /p/qtree/9.1/linux2_0i/bin/mvmail 104755 root ^ /p/qtree/9.1/linux2_0i/bin/sc This features allows one to install software as a user other than root (which we believe is a good thing) and then make the ownership, group, and mode changes as required by a user with appropriate permission after validation that the settings are kosher. |
cook21.qh - 1.17 - 03/10/24 |
![]() ![]() ![]() ![]() |