|
|
1.1 root 1: .\" This file is automatically generated. Do not edit!
2: .TH MH\-HACK 8 "April 22, 1986" MH [mh.6]
3: .UC 6
4: .SH NAME
5: mh\-hack \- how to hack MH
6: .SH SYNOPSIS
7: .in +.5i
8: .ti -.5i
9: big hack attack
10: .in -.5i
11: .SH DESCRIPTION
12: This is a description of how one can modify the \fIMH\fR system.
13: The \fIMH\fR distribution has a lot of complex inter\-relations,
14: so before you go modifying any code, you should read this and
15: understand what is going on.
16:
17: .in +.5i
18: .ti -.5i
19: \fBADDING A NEW PROGRAM\fR
20: .br
21: Suppose you want to create a new \fIMH\fR command called
22: \*(lqpickle\*(rq.
23: First, create and edit \*(lqpickle.c\*(rq in the \fBuip/\fR directory.
24: Next edit \fBconf/makefiles/uip\fR to include \*(lqpickle\*(rq.
25: This file has directions at the end of it which explain how it should
26: be modified.
27: Next, update any documentation (described below).
28: At this point you can re\-configure \fIMH\fR.
29: See \fImh\-gen(8)\fR for instructions on how to do this
30: (basically, you want \*(lqmhconfig MH\*(rq).
31:
32: .ti -.5i
33: \fBADDING A NEW SUBROUTINE\fR
34: .br
35: Suppose you want to create a new \fIMH\fR routine called
36: \*(lqpickle\*(rq.
37: First, create and edit \*(lqpickle.c\*(rq in the \fBsbr/\fR directory.
38: Next edit \fBconf/makefiles/sbr\fR to include \*(lqpickle\*(rq.
39: This file has directions at the end of it which explain how it should
40: be modified.
41: You should modify \fBconfig/mh.h\fR to define \*(lqpickle ();\*(rq.
42: Similarly, \fBsbr/llib\-lsbr\fR should be modified for \fIlint\fR.
43: At this point you can re\-configure \fIMH\fR.
44:
45: .ti -.5i
46: \fBUPDATING DOCUMENTATION\fR
47: .br
48: Edit whatever files you want in \fBconf/doc/\fR.
49: When documenting a new program, such as \*(lqpickle\*(rq,
50: you should create a manual page with the name \*(lqpickle.rf\*(rq.
51: The file \fBconf/doc/template\fR has a manual page template that you
52: can use.
53: If you are documenting a new program, then you should also update three
54: other files:
55: The file \fBconf/doc/mh.rf\fR should be modified to include the
56: \*(lq\&.NA\*(rq section from \*(lqpickle.rf\*(rq.
57: The file \fBconf/doc/mh\-chart.rf\fR should be modified to include
58: the \*(lq\&.SY\*(rq section from \*(lqpickle.rf\*(rq.
59: Finally, the file \fBconf/doc/MH.rf\fR should be modified to include a
60: \*(lq\&.so pickle.me\*(rq.
61: Naturally, none of these changes will be reflected in the configuration
62: until you actually run \fImhconfig\fR.
63: .in -.5i
64: .Fi
65: Too numerous to mention. Honest.
66: .Sa
67: mh\-gen(8)
68: .Bu
69: Hacking is an art, but most programmers are butchers, not artists.
70: .En
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.