1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89
|
To install ssh-cron by hand instead of using a binary distribution perform
the following steps:
0. ssh-cron and its construction depends, in addition to the normally
standard available system software on specific software and versions
which is documented in the file `required'.
(If you compile the bobcat library yourself, note that ssh-cron does
not use the SSL, Milter and Xpointer classes; they may --as far as
ssh-cron is concerned-- be left out of the library by running
'./build light')
1. It is expected you use icmake for the package construction. For this a
top-level script (build) and support scripts in the ./icmake/
directory are available. By default, the 'build' script echoes the
commands it executes to the standard output stream. By specifying the
option -q (e.g., ./build -q ...) this is prevented, significantly
reducing the output generated by 'build'.
2. Inspect the values of the variables in the file INSTALL.im Modify these
when necessary.
3. Run
./build program [strip]
to compile ssh-cron. The argument `strip' is optional and strips
symbolic information from the final executable.
4. If you installed Yodl then you can create the documentation:
./build man
builds the man-page.
5. Before installing the components of ssh-cron, consider defining the
environment variable SSHCRON, defining its value as the (preferably
absolute) filename of a file on which installed files and directories
are logged.
Defining the SSHCRON environment variable as ~/.ssh-cron usually
works well.
6. Run (probably as root)
./build install 'what' 'base'
to install. Here, 'what' specifies what you want to install.
Specify:
x, to install all components,
or specify a combination of:
b (binary program),
d (standard documentation),
m (man-page)
E.g., use
./build install b 'base'
if you only want to be able to run ssh-cron, and want it to be
installed below 'base'.
./build install's last argument 'base' is optional: the base directory
below which the requested files are installed. This base directory is
prepended to the paths #defined in the INSTALL.im file. If 'base' is
not specified, then INSTALL.im's #defined paths are used as-is.
When requesting non-existing elements (e.g., ./build install x was
requested, but the man-page hasn't been created) then these
non-existing elements are silently ignored by the installation
process.
If the environment variable SSHCRON was defined when issuing the
`./build install ...' command then a log of all installed files is
written to the file indicated by the SSHCRON environment variable
(see also the next item).
Defining the SSHCRON environment variable as ~/.ssh-cron usually
works well.
7. Uninstalling previously installed components of ssh-cron is easy if
the environment variable SSHCRON was defined before issuing the
`./build install ...' command. In that case, run the command
./build uninstall logfile
where 'logfile' is the file that was written by ./build install.
Modified files and non-empty directories are not removed, but the
logfile itself is removed following the de-installation.
8. Following the installation nothing in the directory tree which contains
this file (i.e., INSTALL) is required for the proper functioning of
ssh-cron, so consider removing it. If you only want to remove
left-over files from the build-process, just run
./build distclean
|