[tex-k] Kpathsea on EPOC

Olaf Weber olaf at infovore.xs4all.nl
Thu Apr 28 15:38:37 CEST 2005

Vishal Kothari writes:

> Hi,
> Another thing which I wanted to know is from the Kpathsea package,
> which ones are EXEs? For e.g. kpsewhich should be a separate EXE i
> guess.
> I am not sure which ones should be build as separate exe files and
> which files are to be included in the Kpathsea dll.
> Can anyone guide me on that? What I want to know is which files from
> the Kpathsea package are to be included in the DLL and which files are
> to be built as separate EXEs?

This is easiest if know/learn how to read the Makefile.in.  A summary

kpsewhich is a command-line frontend for libkpathsea.

mktexlsr makes an lsr index file for the texmf directory tree to speed
up searches.

All other programs, scripts, and config files that I mention below are
concerned with generating and installing fonts in the texmf tree.  If
you don't want to do that, you don't need them.  If you're using
autoconf, you could disable this with --without-mktexmf-default
--without-mktexpk-default --without-mktextfm-default
--without-mkocp-default --without-mkofm-default.  If you're _not_
using autoconf, you're supposed to copy c-auto.in to c-auto.h by hand,
and modify the c-auto.h to fit the system you're compiling for (by
changing lines like



	#define HAVE_STRSTR 1

Below are some commented snippets from Makefile.in.

### The following are binaries that are built (one way to find the
### names of the binaries is to look for $(INSTALL_PROGRAM) and
### $(INSTALL_LIBTOOL_PROG).  The latter are those programs that
### require the library as well, which is currently only kpsewhich.

kpsewhich: $(kpathsea) kpsewhich.o
        $(kpathsea_link) kpsewhich.o $(LOADLIBES)

kpsestat: kpsestat.o
        $(link_command) kpsestat.o

kpseaccess: access.o
        $(link_command) access.o

kpsereadlink: readlink.o
        $(link_command) readlink.o

### This builds the library itself:

$(kpathsea): $(objects)
        $(kpathsea_link) -rpath $(libdir) -version-info 4:0:0 $(objects)

### So the files that are used for the library are in $(objects); note
### how their filenames end in .lo, the source files are the
### corresponding .c files.

objects = tex-file.lo absolute.lo atou.lo cnf.lo concat.lo concat3.lo \
concatn.lo db.lo debug.lo dir.lo elt-dirs.lo expand.lo extend-fname.lo \
file-p.lo find-suffix.lo fn.lo fontmap.lo getopt.lo getopt1.lo hash.lo \
kdefault.lo line.lo magstep.lo make-suffix.lo path-elt.lo \
pathsearch.lo proginit.lo progname.lo readable.lo rm-suffix.lo \
str-list.lo str-llist.lo tex-glyph.lo tex-hush.lo tex-make.lo \
tilde.lo truncate.lo uppercasify.lo variable.lo version.lo xbasename.lo \
xcalloc.lo xdirname.lo xfopen.lo xfseek.lo xftell.lo xgetcwd.lo xmalloc.lo \
xopendir.lo xputenv.lo xrealloc.lo xstat.lo xstrdup.lo $(liblobjs) $(malloc)

### Supporting scripts (look for $(INSTALL_SCRIPT) that installs in
### $(scriptdir):

mktexpk mktexmf mktextfm mktexlsr

### Helper scripts for the scripts above (look for $(INSTALL_SCRIPT)
### that installs in $(web2cdir).

mktexdir mktexnam mktexupd

### Config files for the scripts (look for $(INSTALL_DATA) that
### installs in $(web2cdir).

mktex.opt mktexdir.opt mktexnam.opt

Olaf Weber

               (This space left blank for technical reasons.)

More information about the tex-k mailing list