2 |
- |
1 |
Once upon a time Upas ran on many versions of Unix.
|
|
|
2 |
This is a partial rewrite to ANSI C specifically for Plan 9.
|
|
|
3 |
It uses's Plan 9's bio library instead of stdio and Plan 9's
|
|
|
4 |
regular expression library.
|
|
|
5 |
|
|
|
6 |
I've tried to make portability possible but it has
|
|
|
7 |
never been ported. To port Upas to another system:
|
|
|
8 |
|
|
|
9 |
- port Plan 9's libbio library working on that system (already available).
|
|
|
10 |
- port Plan 9's regexp library working on that system (should just compile).
|
|
|
11 |
- rewrite common/libsys.c to reflect system calls for that system. This
|
|
|
12 |
file contains all the really system dependent code that differs between
|
|
|
13 |
Plan 9 and each Unix. This includes file management, signal
|
|
|
14 |
handling, process control and error handling.
|
|
|
15 |
- change the important directory trees in common/mail.c to reflect
|
|
|
16 |
where you want things like
|
|
|
17 |
- get the ARGBEGIN/ARGEND/ARGF macros from Plan 9's libc.h
|
|
|
18 |
- get the include files correct in common/sys.h
|
|
|
19 |
- rewrite smtp/mxdial to use the conventions of that system
|
|
|
20 |
- rewrite runq.c to walk queues on that system.
|