grwalter@wcbcs.uucp (Fred Walter) (01/10/91)
I mentioned in another message that I have cnews running under Xenix. Here's what I needed to get it up and running. 1) anonymous ftp to 141.210.180.2 (unix.secs.oakland.edu) to get gnu gcc. (I assume cnews will compile under plain cc but I never tried. I ran alot of trials with gcc and cc using dhrystone 2.1 on my machine (playing with internal and external caches on and/or off) and gcc produced smaller and faster executibles. Needless to say I use gcc). 2) anonymous ftp to 128.100.1.65 (cs.toronto.edu) to get the lastest cnews sources. 3) anonymous ftp to 192.55.239.132 (ftp.cs.widener.edu) to get cnews.speedups. Make code changes as suggested in README.XENIX.2. I suppose I should let the original authors know what I did so they can include it. Someday. 4) use the BUILD.XENIX enclosed as build.def when you are building cnews. Change directories (for news/etc) and users as appropriate for your system. 5) read the README's included herein ! They point out some obvious changes needed. 6) compile and install properly (*READ* the man pages first ! It could save you some grief.) 7) sit back and enjoy much quicker news processing. Hopefully I haven't forgotten anything. You don't really need anything from the speedups package except for the spacefor stuff. But I made the other stuff work anyway. Cnews screams. Together with rn you'll have an awesome news-reading machine. fred ----README.XENIX.1 (for cnews) Need to add a line to the start of all copies of dbz.h typedef unsigned int size_t; I use gcc (with some flags that I might not need but it works). I don't use the fast stdio because it doesn't seem to be compatible. Use BUILD.XENIX as build.def I have everything owned by news (binaries/etc). It simplifies things. Need to fix the ME line in /usr/lib/news/sys (if you plan on adding any local groups). Simplest to change it to ME:all Need a /usr/lib/newsbin/spacefor that works under Xenix. The one from the cnews.speedups seems to work. I also install all the other stuff from that package. It needed some work to make it work. See the README.XENIX.2 file. Need to add the appropriate stuff to the /etc/rc.d directories and the /usr/spool/cron/crontabs directory to ensure news is gotten. (News entries and uucp entries). Might have to fine-tune the execute permissions by hand for some of the shell scripts under /usr/lib/newsbin (they might not have all the read perms they need). If you use BUILD.XENIX it will have everything owned by news. That should work. ----README.XENIX.2 (for cnews.speedups) The Xenix cc and gcc sprintf has a bug ... it won't properly handle the %i in the sprintf in anne.jones.c. Use %d instead. tear must gererate a body file, even if it is empty. Added code to do that. anne.h must have #undef HAVESTRSTR #undef HAVEGETHOSTNAME #define NOLINEBUF /* It doesn't hurt */ As well I put some ifdefs so allheaders isn't included needlessly in anne.jones.c anne.jones.c must handle "Subject: cmsg " as well as "Subject: cmesg " Added code for this. Xenix ustat returns f_tfree in blocks of size 1024 (at least on my system). BUT my harddisk is really got a BLK_SIZE of 512 (which du uses). Confusing, eh ? Well, just use BLK_SIZE 1024 instead of 512. Check this on your system. rnews.c has the pid and gid of the user "news" hardcoded into it. Naughty, naughty. Make sure it is correct. May have been other changes. I can't remember. ----BUILD.XENIX (for in cnews/conf directory to be used as build.def) # These answers are interdependent; do not edit this file! newsuid="news" # These answers are interdependent; do not edit this file! newsgid="news" # These answers are interdependent; do not edit this file! binuid="news" # These answers are interdependent; do not edit this file! bingid="news" # These answers are interdependent; do not edit this file! binsrc="yes" # These answers are interdependent; do not edit this file! mess="no" # These answers are interdependent; do not edit this file! unmess="no" # These answers are interdependent; do not edit this file! newsarts="/usr/spool/news" # These answers are interdependent; do not edit this file! newsctl="/usr/lib/news" # These answers are interdependent; do not edit this file! newsbin="/usr/lib/newsbin" # These answers are interdependent; do not edit this file! newsumask="002" # These answers are interdependent; do not edit this file! newsmaster="root" # These answers are interdependent; do not edit this file! newsconfig="/usr/lib/news/bin/config" # These answers are interdependent; do not edit this file! chown="/bin/chown" # These answers are interdependent; do not edit this file! chboth="no" # These answers are interdependent; do not edit this file! chgrp="/bin/chgrp" # These answers are interdependent; do not edit this file! unixkind="usg" # These answers are interdependent; do not edit this file! addrsize="big" # These answers are interdependent; do not edit this file! dbmopt="" # These answers are interdependent; do not edit this file! faststdio="no" # These answers are interdependent; do not edit this file! storeval="yes" # These answers are interdependent; do not edit this file! faststrchr="no" # These answers are interdependent; do not edit this file! sete="no" # These answers are interdependent; do not edit this file! ranlib="yes" # These answers are interdependent; do not edit this file! symdef="no" # These answers are interdependent; do not edit this file! cc="/usr/local/bin/gcc" # These answers are interdependent; do not edit this file! copts="-O -traditional -fpcc-struct-return" # These answers are interdependent; do not edit this file! ldopts="" # These answers are interdependent; do not edit this file! postlibs="" # These answers are interdependent; do not edit this file! hostname="no" # These answers are interdependent; do not edit this file! uname="no" # These answers are interdependent; do not edit this file! uucptype="hdb" # These answers are interdependent; do not edit this file! dftype="xenix" # These answers are interdependent; do not edit this file! dfdirs="no" # These answers are interdependent; do not edit this file! archive="no" # These answers are interdependent; do not edit this file! spacelow="no" # These answers are interdependent; do not edit this file! nfsgroup="no" # These answers are interdependent; do not edit this file! server="newsie" # These answers are interdependent; do not edit this file! manpages="/usr/man" # These answers are interdependent; do not edit this file! manmess="no" # These answers are interdependent; do not edit this file! rbin="/usr/bin" # These answers are interdependent; do not edit this file! doui="no" # These answers are interdependent; do not edit this file! bin="/usr/bin" # These answers are interdependent; do not edit this file! atok="no" # These answers are interdependent; do not edit this file! postdefltdist="" # These answers are interdependent; do not edit this file! paranoid="no" # These answers are interdependent; do not edit this file! whoami="screamer" # These answers are interdependent; do not edit this file! mailname="screamer.uucp" # These answers are interdependent; do not edit this file! organization="GRW Enterprises" # These answers are interdependent; do not edit this file! postdefltgroup="" # These answers are interdependent; do not edit this file! newspath="/bin:/usr/bin:/usr/local/bin" # These answers are interdependent; do not edit this file! fake=" fsync.o mkdir.o symlink.o strerror.o" # These answers are interdependent; do not edit this file! fakehdrs="" # These answers are interdependent; do not edit this file! immediate="no" # These answers are interdependent; do not edit this file! inputstall="yes" # These answers are interdependent; do not edit this file! defsub="" # These answers are interdependent; do not edit this file! mustsub=""