[tex-k] Minor prototype fix in kpathsea header file

Doug McKenna doug at mathemaesthetics.com
Fri Oct 18 23:33:44 CEST 2019


I downloaded the 2019 kpathsea code.  The documentation says there's a "kpathsea.h" file that references all the headers, but it wasn't in the archive that I could find, so I was trying to create something similar based on all the header files that were in the archive.

But all the "HAVE_..." compilation constants aren't defined anywhere I can see, so as I was adding files the compiler was issuing the warning.  There's no "c-auto.h" file in the archive either, just a "c-auto.in" file, but it appears to just undefine everything in preparation for something else that creates all the "HAVE_..." constant definitions.

Just trying to wrap my head around all the confusing inter-dependencies, with attendant explosive inner pressure. :)

Doug McKenna


----- Original Message -----
From: "Karl Berry" <karl at freefriends.org>
To: "doug" <doug at mathemaesthetics.com>
Cc: "tex-k" <tex-k at tug.org>
Sent: Friday, October 18, 2019 2:37:50 PM
Subject: Re: [tex-k] Minor prototype fix in kpathsea header file

Hi Doug,

    #if !defined(HAVE_STRING_H)
    extern char *strtok ();           <--
    #ifndef strstr
    extern char *strstr ();           <--
    #endif

Seems to me the real question is why HAVE_STRING_H is not
defined. Surely it provides the standard <string.h> header, so it should
be. If you look at the config.log file, you should find the test program
and invocation that failed.

    The correct fix, based on looking up their latest prototypes in system

It's generally neither desirable nor possible to define prototypes for
system functions, because they vary from system to system, over the
(many) years, etc. Certainly so in this case. --best, karl.


More information about the tex-k mailing list