This is the Amiga directory of tin. It contains: README original readme for Amiga-tin 1.2 by Mark Tomlinson and Geoff McCaughan amiga.c \ amigatcp.c \__ Amiga-specific source needed for a amiga.h / compile with SAS/C amigatcp.h / actived.c Amiga-specific actived-source. 0. Additional Info tin needs 2.04 Minimum now. (V37) _Always_ check the other docs, especially if you are using gcc, also check the docs in the main directory. It may be, that this file is not really up-to-date. Query the document version string for the last change: $VER: tin.readme 0.4 (14.06.99) 1. Building tin. tin is tested to build on the following compilers: SAS/C 6.57 egcs-2.90.27 980315 (egcs-1.0.2 release) (ADE/Geek Gadgets) If you have SAS/C <6.55 then you have to put some work in it, but then you may consider to use the gcc instead if you can't update because your one is too old. 6.58 is going to be tested in the next time but should pose no problems. If you are using 6.50 or 6.51: UPDATE! There are lots of nasty bugs fixed in the later versions, and you also get the source for the tzset()-function. ;) And don't forget to thank the guys at SAS for putting their valuable free time in the enhancement of this great compiler. If you use an older gcc: UPDATE! The old 2.7.0 from Aminet is buggy and also out of date. Fetch your update at ftp.ninemoons.com or one of its mirrors. Do not be embarrassed by the size of the files to download, it's more than just a compiler you get. /* TODO: which archives are needed to build tin? */ a) SAS/C You need an additional package, sorry, but I have to make an archaeological excursion for the source I need to replace these functions. The date-parser needs an installed yacc/bison to compile. If you are using yacc, edit the smakefile accordingly (search for "YACC"). I am using the bison from ADE and it works fine, although the parser skeleton contains an alloca(). (Yikes!) If you are building a NNTP-version, the correct SDK's must be installed. Read the readme's closely to see how they are installed. AmiTCP SDK is available from Aminet, the AS/Inet 225 SDK is available from the Developer CD 1.1. First edit the smakefile to suit your needs. Especially take care of DEBUG, LDEBUG, SCOPTIONS, OPTIMIZE and DEFINES. You might want piping disabled if you want to run tin on a BBS. Then run smake. Ignore any warnings (if you don't, send suggestions how to clean up the code) and see tin getting built. If you get an error, sometimes calling smake a second time will be enough to clear the smoke. (Don't wonder, remember: This is BETAware and the source is under constant change.) You should now have the following files: tin.exe actived For more see under 2. b) ADE-gcc You may have guessed it if you compiled some packages before: This is going to be a piece of cake. :) Start the pdksh first. Then have a look at the available options with Configure --help Don't forget --with-libdir and --with-spooldir if you are reading locally. Select those you want additionally and start off with Configure Have a nice cup of hot Earl Grey (On my 040/40 the script takes quite some 10 minutes) or two (--with-coffee is also recommended). Then check the Makefile if you want to be sure everything went ok. Start "make". It should work with no problems. 2. Installing If you have utilities running that capture the TAB-key, (KingCON, CFN etc.) don't forget that tin uses the key for "next unread" and you might be getting confused if you get a whole stream of characters inserted instead. a) SAS/C Drop tin.exe anywhere in your path. If you use wCNews, you *DON'T* need the actived, because it already has an "active" file. I didn't test what happens to the wCNews "active" if you use the actived, but on the other hand I am not too keen on making a samba dance with my running hard disk in hand either. You might need a wrapper script like the one described in the README. b) ADE-egcs Put tin where appropriate. Don't forget to set the NNTPSERVER variable if you didn't set a default server at compile-time, this might cause problems (see doc/TODO) Caveats: a) The Amiga port of metamail 2.3a as it lies on Aminet has a really broken I/O handling. With some combinations of parameters and non-existing stdio (run <>NIL:) it doesn't open a CON: window like it is supposed to do, but just spawns new processes over and over again. In the other combinations it just does nothing, so the piping of MIME articles doesn't work. I tried some workarounds, but no avail. The problem is clearly not within tin, it is the problem of metamail. Volunteers searched for porting a new version. b) When compiling with egcs, the window resize does not work properly. This is also a problem with some of the standard GG programs (ncftp, but interestingly *not* jove). Also reading from local spool is very slow at startup, because every directory is opendir()ed and read completely. Perhaps one of the various startup switches can speed this up. Read the man page for more info. 3. Credits Thanks go to all those people who put their time into the Amiga port of this great program before. Among them: Mark Tomlinson Geoff McCaughan Reinhard Luebke Volker Barthelmann Also a big "Thank You" to Iain Lea for the original program. The scoring routines are dedicated to Tobias "Top" Walter, who celebrated birthday on the day I constructed the diff. I hope no name is missing here. Oliver B. Warzecha