*BSD News Article 51192


Return to BSD News archive

Path: euryale.cc.adfa.oz.au!newshost.anu.edu.au!harbinger.cc.monash.edu.au!msunews!agate!howland.reston.ans.net!Germany.EU.net!Dortmund.Germany.EU.net!Uni-Dortmund.DE!distler.maschinenbau.uni-dortmund.de!ab
From: ab@distler.maschinenbau.uni-dortmund.de (Andreas Braukmann (NetAdmin))
Newsgroups: comp.unix.bsd.freebsd.misc
Subject: Re: Build complete LaTeX from source?
Date: 20 Sep 1995 12:56:28 GMT
Organization: University of Dortmund, LTD II
Lines: 151
Distribution: world
Message-ID: <43p31s$m5n@nx2.hrz.uni-dortmund.de>
References: <437eac$n68@mailnews.kub.nl> <43n119$cgf@nntp5.u.washington.edu>
NNTP-Posting-Host: distler.maschinenbau.uni-dortmund.de
X-Newsreader: TIN [version 1.2 PL2]


Clint Olsen (olsenc@kodiak.ee.washington.edu) wrote:

: What about teTeX?  It's the most comprehensive TeX distribution I've
: ever seen.

Thomas Esser has done a great job on this, especially in changing from
a pure linux-based distribution to real generic TeX-distribution.
A friend of mine was able to install it on SunOS 4.1.3 without any
problems.

I picked up the source distribution and gave it a try on my FreeBSD box.
(my source-base: teTeX-src-0.3.3 with patches 001 -- 005)
It needs some twiddling to get it up and running.


a) ... the 'wchar_t' and 'sys_errlist' type problems. The former could be
   solved by setting "FOIL=yes" in the top-level makefile. 
   I solved the 'sys_errlist' problem quick and very dirty by patching
   the source-code contained in the following files:

   [just doing a 'grep -n "A\.B\." **/*.[ch]']

~~~~~~~~~~~~~~~
kpse-2.6/dviljk/dvi2xx.c-638-
kpse-2.6/dviljk/dvi2xx.c-639-#ifdef vms
kpse-2.6/dviljk/dvi2xx.c-640-    extern noshare int errno;
kpse-2.6/dviljk/dvi2xx.c-641-    extern noshare char *sys_errlist[];
kpse-2.6/dviljk/dvi2xx.c-642-#else
kpse-2.6/dviljk/dvi2xx.c:643:/* A.B. for FreeBSD: defined in /usr/include/stdio.h */
kpse-2.6/dviljk/dvi2xx.c-644-#define __AB_FBSD_PATCH__
kpse-2.6/dviljk/dvi2xx.c-645-#ifndef __AB_FBSD_PATCH__
kpse-2.6/dviljk/dvi2xx.c-646-    extern  char *sys_errlist[];
kpse-2.6/dviljk/dvi2xx.c-647-    extern  int     errno;
kpse-2.6/dviljk/dvi2xx.c-648-#endif

~~~~~~~~~~~~~~~
kpse-2.6/xdvik/psgs.c-69-#include <sys/bsdtypes.h> /* for fd_set on ISC 4.0 */
kpse-2.6/xdvik/psgs.c-70-#endif /* not <sys/bsdtypes.h> */
kpse-2.6/xdvik/psgs.c-71-#endif /* not _AIX */
kpse-2.6/xdvik/psgs.c-72-#endif /* not STREAMSCONN */
kpse-2.6/xdvik/psgs.c-73-
kpse-2.6/xdvik/psgs.c:74:/* A.B. for FreeBSD: something wrong with autoconfiguration
kpse-2.6/xdvik/psgs.c-75-  concerning SIGIO, ... I suppose */
kpse-2.6/xdvik/psgs.c-76-#define __AB_FBSD_PATCH__
kpse-2.6/xdvik/psgs.c-77-#ifdef __AB_FBSD_PATCH__
kpse-2.6/xdvik/psgs.c-78-#define HAS_SIGIO 1
kpse-2.6/xdvik/psgs.c-79-#endif

~~~~~~~~~~~~~~~
kpse-2.6/xdvik/sfPath.c-44-#define S_IXOTH 0001
kpse-2.6/xdvik/sfPath.c-45-#endif
kpse-2.6/xdvik/sfPath.c-46-
kpse-2.6/xdvik/sfPath.c-47-#define S_ISXXX(m) ((m) & (S_IXUSR | S_IXGRP | S_IXOTH))
kpse-2.6/xdvik/sfPath.c-48-
kpse-2.6/xdvik/sfPath.c:49:/* A.B. for FreeBSD: definitions in /usr/include/stdio.h */
kpse-2.6/xdvik/sfPath.c-50-/* conflict concerning type of sys_errlist */
kpse-2.6/xdvik/sfPath.c-51-#define __AB_FBSD_PATCH__
kpse-2.6/xdvik/sfPath.c-52-#ifndef __AB_FBSD_PATCH__
kpse-2.6/xdvik/sfPath.c-53-#include <X11/Xos.h>
kpse-2.6/xdvik/sfPath.c-54-#endif

~~~~~~~~~~~~~~~
kpse-2.6/xdvik/sfSelFile.c-46-#include <stdio.h>
kpse-2.6/xdvik/sfSelFile.c-47-#include <errno.h>
kpse-2.6/xdvik/sfSelFile.c-48-/* BSD 4.3 errno.h does not declare errno */
kpse-2.6/xdvik/sfSelFile.c-49-extern int errno;
kpse-2.6/xdvik/sfSelFile.c-50-extern int sys_nerr;
kpse-2.6/xdvik/sfSelFile.c:51:/* A.B. for FreeBSD: definitions in /usr/include/stdio.h */
kpse-2.6/xdvik/sfSelFile.c-52-/* conflict concerning type of sys_errlist */
kpse-2.6/xdvik/sfSelFile.c-53-#define __AB_FBSD_PATCH__
kpse-2.6/xdvik/sfSelFile.c-54-#ifndef __AB_FBSD_PATCH__
kpse-2.6/xdvik/sfSelFile.c-55-extern char *sys_errlist[];
kpse-2.6/xdvik/sfSelFile.c-56-#endif

~~~~~~~~~~~~~~~
kpse-2.6/xdvik/sfinternal.h-29-#define X_WCHAR
kpse-2.6/xdvik/sfinternal.h-30-#endif
kpse-2.6/xdvik/sfinternal.h-31-
kpse-2.6/xdvik/sfinternal.h-32-#include <X11/Intrinsic.h>
kpse-2.6/xdvik/sfinternal.h-33-#include <X11/StringDefs.h>
kpse-2.6/xdvik/sfinternal.h:34:/* A.B. for FreeBSD: definitions in /usr/include/stdio.h */
kpse-2.6/xdvik/sfinternal.h-35-/* conflict concerning type of sys_errlist */
kpse-2.6/xdvik/sfinternal.h-36-#define __AB_FBSD_PATCH__
kpse-2.6/xdvik/sfinternal.h-37-#ifndef __AB_FBSD_PATCH__
kpse-2.6/xdvik/sfinternal.h-38-#include <X11/Xos.h>
kpse-2.6/xdvik/sfinternal.h-39-#endif

~~~~~~~~~~~~~~~
kpse-2.6/xdvik/xdvi.h-19-#define X_WCHAR
kpse-2.6/xdvik/xdvi.h-20-#endif
kpse-2.6/xdvik/xdvi.h-21-
kpse-2.6/xdvik/xdvi.h-22-#include <X11/Xlib.h>  /* include Xfuncs.h, if available */
kpse-2.6/xdvik/xdvi.h-23-#include <X11/Xutil.h> /* needed for XDestroyImage */
kpse-2.6/xdvik/xdvi.h:24:/* A.B. for FreeBSD: definitions in /usr/include/stdio.h */
kpse-2.6/xdvik/xdvi.h-25-/* conflict concerning type of sys_errlist */
kpse-2.6/xdvik/xdvi.h-26-#define __AB_FBSD_PATCH__
kpse-2.6/xdvik/xdvi.h-27-#ifndef __AB_FBSD_PATCH__
kpse-2.6/xdvik/xdvi.h-28-#include <X11/Xos.h>
kpse-2.6/xdvik/xdvi.h-29-#endif

~~~~~~~~~~

Sorry for this ugly thing. .... But I was in a hurry, ....


b) ... the 'ncurses' and 'dialog' stuff. I had to solve conflicts between the
   FreeBSD stuff and the 'dialog' and 'ncurses' coming with teTeX.
  The 'makefile' should let one choose to use an already installed
  ncurses-library _and_ compiling a new 'dialog'. (The dialog 0.3 from
  FBSD 2.0.5 did not work [for me] with the 'texconfig'-shellscripts. It has to
  do something with FreeBSD's combined 'terminfo/termcap'-library??? )

  No, .... I don't supply how I was able to solve that, ...it's just to ugly ;-)
  ... 'texconfig' works as a commandline oriented tool, too.

c) Further I had to patch the 'texhash'-Skript. The 'kpse'-library didn't find
   anything as long as the 'ls-R'-database contains directory-lines starting
   with anything else than an '/'.
   (easy solution, .... but I found it difficult to track it down ...)

   In 'texhash' change:
   # the main task:
   (cd $TEXMF; ls -LAR ./ /dev/null 2>/dev/null) >> $db_file_tmp

    to:
   # the main task:
   (cd $TEXMF; ls -LAR ${TEXMF} /dev/null 2>/dev/null) >> $db_file_tmp

   BTW, ... on SunOS 'kpse' works with relative paths


After that (I hope I didn't forgot anything really important ...) 'teTeX' runs
like a charm.


Greetings,
	Andreas

P.S. ... sorry, ... but English is not my native language ...
   

--
       + start me up ...                  ... if only I could +
       +------------------------------------------------------+
       | Andreas Braukmann             University of Dortmund |
       +------------------------------------------------------+
       |       braukman@ls12.informatik.uni-dortmund.de       |
       |       ab@ltd2.maschinenbau.uni-dortmund.de           |
       +------------------------------------------------------+