Dear developers.
In an attempt to get a grip on the XEmacs packageing system I have drawn
an picture that is supposed to illustrate the package flow from
authoring, building/distributing, installation to XEmacs lisp
interpretation.
The intention is to clarify things, please comment on it.
To the drawing and some of the documentation on package system I have some
question:
The Makefile in the package must have three targets that just depend on
other targets, I guess that 'binkit' is intended to make all binaries in
the package (invoked by 'make bindist'). But what about 'srckit'
target? does that some reflect what the often well known target 'clean'
that is remove all created files to get back to the sourcecode? or
what? What about the target all, what is the conceptually big difference
between all and binkit?
On the drawing the double-edged boxes are supposed to illustrate the parts
that package authors have to worry about, and the single-edged boxes could
(in principle) be considered black-boxes from a package authors point of
view. Am I right about this?
++=============================================++
|| ||
|| Package Author (a Human :-) ||
|| ||
++=============================================++
|||
|||
Typing on the keyboard |||
|||
\V/
++=============================================++
|| ||
|| Package source ||
|| (XEmacs CVS repository /packages/) ||
++=============================================++
|||
|||
|
'make bindist' |
V
+-----------------------------------------------+
| |
| Package Binary distribution |
| (
ftp://ftp.xemacs.org/pub/xemacs/packages/) |
+-----------------------------------------------+
+----------------------+ ^
| | |
| (UI) Package system |-------------> |
| (packages.el, etc.) | |
+----------------------+ V
+-----------------------------------------------+
| |
| Package Binary installation |
| (/usr/local/lib/xemacs/xemacs-packages/) |
+-----------------------------------------------+
^
|
XEmacs lisp interpreter |
|||
\V/
++=============================================++
|| ||
|| XEmacs ||
|| ||
++=============================================++
Jarl