source: trunk/athena/lib/zephyr/NOTES @ 10363

Revision 10363, 2.3 KB checked in by ghudson, 27 years ago (diff)
Pull in sources from zephyr locker. See /mit/zephyr/repository for detailed change information.
Line 
1Please observe the following notes when making changes to the source
2tree.
3
4We use the included ss and et libraries only when configured without
5--enable-athena.  configure uses the BUILDTOP make variable to locate
6the top of the build tree in order to refer to automatically generated
7files in lib/ss and lib/et.
8
9lib/dyn and lib/ss are internal libraries, i.e. they are only used by
10programs (xzwrite uses lib/dyn and zctl uses lib/ss), not by the
11Zephyr API.  lib/et and lib/zephyr are external libraries; they are
12necessary for linking programs which use Zephyr, so their libraries
13are installed in the library directory.  Note that the library built
14in lib/et is named libcom_err.a, not libet.a, and that it is only
15installed if --enable-athena is not used.
16
17The directory h contains header files used internally in the zephyr
18source tree.  The directory h/zephyr contains header files containing
19declarations for the Zephyr API.  h/zephyr/zephyr_err.h is generated
20from lib/zephyr/zephyr_err.et when lib/zephyr is built.
21h/zephyr/zephyr.h is generated by configure, as is h/config.h.  Those
22header files live in the build tree, as do h/com_err.h and h/ss/ss.h
23when --enable-athena is not given as an option to configure.  All
24other header files in h live in the source tree.
25
26h/config.h is generated by configure and contains the results of
27configure tests as well as definitions for the installation
28configuration directory and data directory.  h/sysdep.h uses
29h/config.h to include various header files or make various external
30declarations which many programs might be interested in.  h/internal.h
31contains declarations internal to the "Zephyr system proper," which
32includes the Zephyr library, the server, the hostmanager, and (for
33now) zstat.
34
35Two header files, h/zephyr/zephyr.h and lib/et/com_err.h (when
36--enable-athena is not used) are public header files; that is, they
37are installed with the Zephyr system.  As such, these header files may
38need to work with compilers other than the compiler used to build the
39Zephyr system itself.  Thus, we use __STDC__ (both in h/sysdep.h and
40in the public header files) to guess whether the compiler will handle
41const, prototypes, and stdarg.  This is unfortunately not as reliable
42as using autoconf features like AC_C_CONST.
43
44The Zephyr system version number is kept in server/version.c, and
45should be updated when releases are made.
46
Note: See TracBrowser for help on using the repository browser.