Duuhh. What's BSDI? {:-O
> There are some stray dependencies in the Line Mode makefiles that point
> hard coded paths at /tmp for making stuff. /tmp here is tiny, so I
> put the stuff in $(HOME)/tmp, but that didn't quite do the job.
It is a question of changing the ONJ macro to point to somewhere where
there is space. It used to be the source directory, but some people
want to build separately from a read-only source mount. So we put the OBJ
macros in.
> It took some amount of fiddling to get everything to build in the
> right place, I hacked at it until it all compiled ok but will have
> to go back and see what exactly it was that I did...
If you could mail me back the diffs I'll try to get them into
the next version.
> HTFile.c didn't compile until I commented out one of the two times
> that "tcp.h" was included - the compiler complained about a duplicate
> definition of "struct stat".
Ooops.. sorry, fixed. I think you mean that <stat.h> was included
explicitly once and once implcitly via "tcp.h".
> After all that it compiles fine and seems to work, and 'www -source'
> prints out what looks like real genuine HTML sources. However, it
> appears that there's some critical place where TOUPPER is not working
> right, since the lower-case <a href=foo:bar>foobar</a> tags don't
> get recognized, and the upper-case <TITLE>foobar</TITLE> tags do.
> This kind of ruins the hypertext effect :)
That is official BSD for you: toupper() doesn't work unless the isalpha()
is true. You need to turn on the macros at the bottom of tcp.h
for your platform. What is the system-specific predefined cpp macro
which we can #ifdef on? So far we have:
#if defined(pyr) || defined(mips)
/* Pyramid and Mips can't uppercase non-alpha */
#define TOLOWER(c) (isupper(c) ? tolower(c) : (c))
#define TOUPPER(c) (islower(c) ? toupper(c) : (c))
#else
#define TOLOWER(c) tolower(c)
#define TOUPPER(c) toupper(c)
#endif /* pyr || mips */
Thanks for the comments....
Tim