plan9fox/sys/src/cmd/upas
2011-03-30 19:35:09 +03:00
..
alias Import sources from 2011-03-30 iso image - lib 2011-03-30 19:35:09 +03:00
bayes Import sources from 2011-03-30 iso image - lib 2011-03-30 19:35:09 +03:00
common Import sources from 2011-03-30 iso image - lib 2011-03-30 19:35:09 +03:00
filterkit Import sources from 2011-03-30 iso image - lib 2011-03-30 19:35:09 +03:00
fs Import sources from 2011-03-30 iso image - lib 2011-03-30 19:35:09 +03:00
marshal Import sources from 2011-03-30 iso image - lib 2011-03-30 19:35:09 +03:00
misc Import sources from 2011-03-30 iso image - lib 2011-03-30 19:35:09 +03:00
ml Import sources from 2011-03-30 iso image - lib 2011-03-30 19:35:09 +03:00
ned Import sources from 2011-03-30 iso image - lib 2011-03-30 19:35:09 +03:00
pop3 Import sources from 2011-03-30 iso image - lib 2011-03-30 19:35:09 +03:00
q Import sources from 2011-03-30 iso image - lib 2011-03-30 19:35:09 +03:00
scanmail Import sources from 2011-03-30 iso image - lib 2011-03-30 19:35:09 +03:00
send Import sources from 2011-03-30 iso image - lib 2011-03-30 19:35:09 +03:00
smtp Import sources from 2011-03-30 iso image - lib 2011-03-30 19:35:09 +03:00
unesc Import sources from 2011-03-30 iso image - lib 2011-03-30 19:35:09 +03:00
vf Import sources from 2011-03-30 iso image - lib 2011-03-30 19:35:09 +03:00
mkfile Import sources from 2011-03-30 iso image - lib 2011-03-30 19:35:09 +03:00
README Import sources from 2011-03-30 iso image - lib 2011-03-30 19:35:09 +03:00

Once upon a time Upas ran on many versions of Unix.
This is a partial rewrite to ANSI C specifically for Plan 9.
It uses's Plan 9's bio library instead of stdio and Plan 9's
regular expression library.

I've tried to make portability possible but it has
never been ported.  To port Upas to another system:

	- port Plan 9's libbio library working on that system (already available).
	- port Plan 9's regexp library working on that system (should just compile).
	- rewrite common/libsys.c to reflect system calls for that system.  This
	  file contains all the really system dependent code that differs between
	  Plan 9 and each Unix.  This includes file management, signal
	  handling, process control and error handling.
	- change the important directory trees in common/mail.c to reflect
	  where you want things like 
	- get the ARGBEGIN/ARGEND/ARGF macros from Plan 9's libc.h
	- get the include files correct in common/sys.h
	- rewrite smtp/mxdial to use the conventions of that system
	- rewrite runq.c to walk queues on that system.