Docs (help and the dtinfo guides) are now always built using the
ISO8859-1 locale. To support UTF-8, our docbook needs to be updated
to something from this century, ideally this decade. In addition, a
conversion to XML would also be required as a result. So, until that
happens, use ISO8859-1 for docs.
However, other locale information, like message catalogs, resource
files, and the like are now converted to UTF-8.
All supported languages are now built by default on linux again.
This patch fixes some wierd word splicing that occured with the importing of
the sources, which caused the last letter of many bugs to be cut off, with
some of them cutting off more, I made my best judgement on what was supposed
to be there.
This patch also gets rid of old bugs and software that CDE no longer includes.
In this commit, we convert FreeBSD and OpenBSD to use a system version
of TCL (8.6).
We also get rid of the hairy and buggy "CompareI18NStrings" custom Tcl
function and use the newer Tcl's builtin dictionary sort mechanism for
generating the Indexes and Glossaries, which were silently broken in
previous commits.
It was just not possible to use the same Tcl code in modern versions
of Tcl in addition to the ancient version included with CDE - so, now
we will always depend on the system version. It's been tested with
8.6 and 8.7 versions of Tcl with great results.
dtdocbook/instant has been modified to use a more modern Tcl (8.6),
which means certain functions are not present when we are using the
dtdocbook/tcl (7.5) version of tcl instead of a modern system version.
So, create some defines that should work around this problem.
One issue that came up was attempting to read array values indexed by
a key that didn't exist when generating indexes and glossaries.
I am not sure why this hasn't been a problem before, but for now, we
simply won't try to emit array values for non-existant array indexes.
Remove calls to bogus utility functions in cases where the user is
root and the filesystem in question is an NFS filesystem.
For now, __linux___ and CSRG_BASED machines will use statfs to
determine whether to test delete-ability. For other systems, just do
the create/delete test always if the user is root.
dtfile makes use of ustat(2) on certain systems. This call has been
deprecated in glibc for a while and now, as of glibc-2.28, it has been
removed. The recommended replacement is to use statfs(2).