2019-12-26 Karl Berry * Makefile.am (install-data-local): must mkdir web2cdir here. * mktexdir, * mktexnam, * mktexupd, * mktex.opt, * mktexdir.opt, * mktexnam.opt: remove; these will now be maintained (if changes are needed) only in Master/texmf-dist/web2c. * Makefile.am (dist_web2c_DATA, dist_web2c_SCRIPTS): remove. (All this is primarily so that $Id$ expansions will not be lost; the user-level mktex* scripts will happen in a few days.) * mktex.cnf: remove this unused file. * Makefile.am (EXTRA_DIST): remove it here. 2019-12-22 Karl Berry * doc/kpathsea.texi (Path searching): mention translations for TL. (Config files): distinguish special characters at different levels. (Filename database): don't mention talking about 8.3 filenames. 2019-12-16 Karl Berry * texmf.cnf (glob_str_size): increase from 20,000 to 200,000 for web2c/tests/bibtex-bigauth.test (q.v.). (ent_str_size, max_strings.bibtex*): increase these while we're here. 2019-11-03 Karl Berry * progname.c: remove nowadays-useless register declarations. Mentioned by Doug McKenna. 2019-10-10 Karl Berry * texmf.cnf (LUAINPUTS.luahblatex{,-dev}): define a la other LUAINPUTS.*. Report from Marcel Fabian Krueger, 10 Oct 2019 23:08:37. 2019-09-04 Akira Kakuto * hash.c: Typo in a comment. 2019-08-13 Karl Berry * cnf.c (do_line): warn about a program name qualifier which is empty or contains one of our usual special characters: .{}$;: since it is probably a misparsing, especially if the = is omitted. Report from Johannes Kunde, 1 Aug 2019 20:57:14. * Makefile.am (TESTS): new tests/cnfprog.test (cnfprog.log): another target for kpsewhich. (EXTRA_DIST): add tests/cnfprog/texmf.cnf. * doc/kpathsea.texi (Config files): mention example of above. 2019-08-09 Karl Berry * texmf.cnf (log_openout): new configuration variable, true by default for all but tex and initex, to remove one technical trip incompatibility. Report from David Fuchs. * cnf.c, * progname.h, * tex-file.c, * types.h: doc/formatting fixes. 2019-08-06 Karl Berry * kpsewhich.c (USAGE, read_command_line): new option --cnf-line. (user_cnf_lines, user_cnf_nlines): new variables to store the args. (init_more): call kpathsea_cnf_line_env_progname on each line. * cnf.h (kpathsea_cnf_line_env_progname): declare new fn. * cnf.c (do_line): new argument ENV_PROGNAME, to insert settings in the environment instead of the hash table. (kpathsea_cnf_line_env_progname): entry point to call do_line with env_progname=true. (read_all_cnf): change do_line call to have env_progname=false. Also, don't create cnf_hash here, instead ... (kpathsea_cnf_get): ... here (if needed). * tests/cnfline.test: new test for --cnf-line. * tests/cnfline/texmf.cnf: new directory/file for cnfline.test. * Makefile.am (tests), (tests/cnfline.log), (EXTRA_DIST): add new test. * doc/kpathsea.texi (Path sources, Path searching options): doc. 2019-07-26 Karl Berry * texmf.cnf (TEXINPUTS, etc.): include explicit latex, element at end so that files under latex/ are preferred to those under latex-dev/. From Ulrike Fischer. * texmf.cnf (TEXINPUTS.latex-dev, *-dev): new -dev format names for LaTeX pre-release testing. 2019-07-24 Akira Kakuto * texmf.cnf: Define command_line_encoding = utf-8 for Windows only. 2019-07-11 Karl Berry * texmf.cnf (TEXINPUTS.lua{,jit}hb{,la}tex): four new engines, luahbtex with/without jit, with/without latex. Same path as non-hb. 2019-06-02 Karl Berry * texmf.cnf (TEXINPUTS.harf{,la}tex): new engine. Turns out we want harf{,la}tex/ directories. 2019-05-05 Karl Berry * texmf.cnf: missed top 2018's. 2019-05-03 Karl Berry * version.ac: 6.3.2/dev since TL'19 is released. 2019-04-07 Karl Berry * TeX Live 2019. 2019-03-25 Karl Berry * texmf.cnf (TEXMFDBS), * doc/kpathsea.texi (ls-R): attempt to describe the lack of disk searching when ls-R is present, regardless of !!, more clearly. Report from Yann Salmon, tex-k thread of 27 Feb 2019 21:00:46. * kpsewhich.c: doc fix. 2019-02-11 Karl Berry * version.ac, * texmf.cnf, * kpsewhich.c, * doc/kpathsea.texi: 6.3.1 for TL'19. 2019-01-19 Karl Berry * variable.h (kpathsea_var_expand): returns string "$FOO" if FOO is not defined, not the empty string; whereas ${FOO} does return the empty string. Maybe not the ideal interface, but seems undesirable to change now. * doc/kpathsea.texi (Programming with config files), (Auxiliary tasks): document this. Noted by Andreas Scherer, r49726. 2019-01-19 Karl Berry * texmf.cnf (TEXMFLOCALEDIR): define as $TEXMFMAIN/locale, for cweb translations now, and hopefully more later. 2018-12-30 Karl Berry * texmf.cnf (shell_escape_commands): make that r-mpost. 2018-12-24 Andreas Scherer * kpsewhich.c: Add missing format placeholder. 2018-12-21 Karl Berry * texmf.cnf (shell_escape_commands): add rmpost. 2018-12-17 Karl Berry * kpsewhich.c (--var-brace-value, var_to_brace_value): new option and corresponding option. (main): new case for it. For --var-value, go back to just variable (kpathsea_var_value) expansion. * doc/kpathsea.texi (Auxiliary tasks): document the new option, try to explain the difference. Follow-up report from jbglaw, https://github.com/TeX-Live/texlive-source/issues/3. 2018-12-14 Karl Berry * c-pathch.h (IS_KPSE_SEP): check for both : and ; only on Unix. On Windows, : is the c: drive separator and must not ever be a path separator. * texmf.cnf (TEXMFDOTDIR): new variable, used instead of literal "." in all search paths, so that it can be redefined as ".//". Suggestion from Linas Stonys, tex-k 4 Dec 2018 10:09:35. 2018-12-13 Karl Berry * c-pathch.h (IS_KPSE_SEP): new macro to check for either : or ; regardless of the current system. * path-elt.c (element): use it when extracting the path elements, so that we'll get ~ expansion on Unix in, e.g., env FOO='/;~' ./kpsewhich --expand-braces='$FOO' * kpsewhich.c (main): call kpathsea_brace_expand on the result from kpathsea_var_value, so that we'll get ~ expansion in, e.g., env FOO='/:~' ./kpsewhich --var-value=FOO Original report from e-kwsm (E Kawashima), https://github.com/TeX-Live/texlive-source/issues/3 * NEWS, * doc/kpathsea.texi (Auxiliary tasks): document that -var-value now does brace expansion. 2018-12-12 Karl Berry * expand.h, * pathsearch.h, * cnf.c: doc fixes. * kpsewhich.c (main): show path when --show-path can't run. 2018-12-11 Karl Berry * kpsewhich.c (main): formatting. 2018-12-04 Karl Berry * kpsewhich.c (main) [WIN32]: #define puts kpathsea_win32_puts once, instead of many #ifdefs throughout function. 2018-11-23 Akira Kakuto * elt-dirs.c, knj.c, progname.c: Support non-ascii values for variables in the case of command_line_encoding = utf-8 (w32 only). 2018-11-12 Andreas Scherer * tex-make.c (maketex): check return value from dup(2). 2018-07-02 Karl Berry * kpsewhich.c (lookup): warn that --all is ignored with bitmap fonts. (USAGE): likewise. * doc/kpathsea.texi (Path searching options) <--all>: likewise. Report from Werner Lember, 07 Apr 2018 12:39:34. 2018-06-10 TANAKA Takuji * progname.c, types.h, knj.h: Add a variable W32_codepage. * kpsewhich.c: Allow Unicode file name for pdftex in kpsewhich. (Windows only) 2018-05-29 Akira Kakuto * kpsewhich.c: Revert. Since "command_line_encoding=utf8" is not so natural for pdfTeX. 2018-05-12 TANAKA Takuji * kpsewhich.c: Allow Unicode file name for pdftex in kpsewhich. (Windows only) 2018-04-14 Karl Berry * TeX Live 2018 release, kpathsea 6.3.0. 2018-03-16 Karl Berry * tex-glyph.h (kpse_glyph_source_fallback_res): new enum value in kpse_glyph_source_type. * tex-glyph.c (kpathsea_find_glyph): use it for `source'. Private report from Doug McKenna, 14 Mar 2018 19:26:12. 2018-03-14 Karl Berry * tex-glyph.c (kpathsea_find_glyph, try_size): disentangle successful searches and filling in return information. Private report from Doug McKenna, 14 Mar 2018 11:51:29. 2018-02-26 Karl Berry * texmf.cnf (TEXMFVAR, TEXMFCONFIG, doc): 2018. 2018-02-24 Hironobu Yamashita * tex-make.c (kpathsea_make_tex): Change an error message "Invalid fontname" to "Invalid filename", since $ tex -fmt=-a x causes kpathsea:make_tex: Invalid fontname `-a.fmt', starts with '-' but it is a format file. 2018-02-23 Karl Berry * lib.h (LIB_START_FATAL): mention that the identifier `kpse' has to be defined for this to work. (In practice, it's a local variable.) Private report from Douglas McKenna, 2018/02/21. 2018-02-21 Akira Kakuto * xgetcwd.c: Replace LIB_FATAL2 by FATAL2. Private report from Douglas McKenna, 2018/02/21. 2018-02-20 Karl Berry * progname.c (expand_symlinks): make error message on unresolvable symlinks less verbose. (kpathsea_selfdir): exit(1) if name cannot be resolved, instead of failing an assertion. Report from Enrico Gregorio, http://tug.org/pipermail/tex-live/2018-February/041052.html 2018-02-17 TANAKA Takuji * texmf.cnf ({TEXINPUTS,BIBINPUTS,max_strings}.upbibtex): add defns for upbibtex. 2018-02-10 Karl Berry * doc/kpathsea.texi (Path searching options): clarify that --no-casefold-search doesn't mean the underlying (file)system magically becomes case-sensitive. 2018-02-07 Karl Berry * tests/kpsewhich.test: don't run --no-casefold-search with "Plain.TeX", since it succeeds on case-insensitive systems and fails on case-sensitive ones. 2018-02-04 Karl Berry * texmf.cnf (texmf_casefold_search): new configuration value for Unix, default 1. Latest thread about this longstanding issue: http://tug.org/pipermail/tex-live/2017-September/040619.html * version.ac: move to 6.3.0 since I guess this is a new (compatible [enough]) interface. * NEWS: mention it. * doc/kpathsea.texi: document it. (Casefolding search), (Casefolding rationale), (Casefolding examples): new nodes. (Path searching options): new option [-no]-casefold-search for kpsewhich. * pathsearch.c (KPSE_CASEFOLDING_SEARCH): new compile-time macro to support case-insensitive searches on case-sensitive operating systems, that is, not Windows. Most other changes here are conditional on it. (print_space_list): helper fn for debugging output. (readable_file_fn_type): new typedef for casefold_readable_file and kpathsea_readable_file. (casefold_readable_file): new fn to check for a file ignoring case. (dir_list_search), (dir_list_search_list): take an additional function pointer argument and call it, instead of only kpathsea_readable_file. Return the matched name instead of the original name. (This would have caused failure before with the ENAMETOOLONG kludge; guess that never actually happens.) (absolute_search), (path_search): also do casefolded search if enabled and requested. Also free passed name in callers. (kpathsea_path_search_list_generic): call absolute_search instead of kpathsea_readable_file; merge returned lists; also do casefolded search if enabled and requested. (print_tab_list) [TEST]: another helper fn to print test results. (test_path_search_list_generic) [TEST]: new test fn for some minimal casefolding tests. (main): call it, and rearrange tests. (standalone-compile-command): current to current (TeX Live) reality. * kpsewhich.c (long_options): new options [-no]-casefold-search to override the default for casefolded searches. (read_command_line): handle them with xputenv on texmf_casefold_search. * tests/kpsewhich.test: do a few casefolding tests. 2018-02-01 Karl Berry * lib.h (KPSE_CNF_P): new macro. * tex-file.c (kpathsea_find_file_generic): use it, for try_std_extension_first. 2018-01-27 Karl Berry * readable.h: doc fixes. * readable.c (READABLE): take (ignored) kpse arg in macro, so: (kpathsea_readable_file): we can avoid #ifdefs in body. * str-list.c (str_list_concat_elements): reformat for consistency. * str-list.h (STR_LIST_EMPTY, STR_LIST_FIRST_ELT): new macros. * kpsewhich.c, * pathsearch.c, * str-list.c (str_list_concat_elements): use them. 2018-01-26 Karl Berry * tex-file.c (kpathsea_init_format_return_varlist): log a newline before kpse_cnf_format, since this happens mid-search. 2018-01-25 Karl Berry * pathsearch.c: more consistent code formatting, doc fixes. No functional code changes. 2018-01-17 Norbert Preining * mktexlsr (treefile): use mktemp with fallback option for temporary file. 2018-01-16 Karl Berry * kpathsea.pc.in (Cflags): remove -I${libdir} per Debian. 2018-01-14 Karl Berry * texmf.cnf: doc fixes. 2018-01-14 Akira Kakuto * progname.c: Use a macro instead of a function strlen() to check if a string is empty or not. Report from Douglas McKenna, private mail 14 Jan 2018. 2018-01-05 Karl Berry * pathsearch.c (dir_list_search, dir_list_search_list): save the next element to continue the loop, in case the current element floats. Report from Douglas McKenna, tex-k mail 4 Jan 2018 10:16:18. 2017-12-27 Akira Kakuto * xbasename.c, xdirname.c: Remove IS_KANJI test for UNC names, and fix a W32 bug in xdirname.c. Report by Douglas McKenna: http://tug.org/pipermail/tex-k/2017-December/002840.html 2017-12-09 Jiang Jiang * tex-glyph.c (try_fallback_resolutions): Avoid warning: taking the absolute value of unsigned type 'unsigned int' has no effect [-Wabsolute-value] ref. https://github.com/jjgod/texlive/commit/4cbec4c 2017-12-08 Karl Berry * tex-file.c (kpathsea_init_format_return_varlist) , : use DIR_SEP_STRING instead of hardwired / Report from Douglas McKenna, tex-k 5 Dec 2017 22:27:10. 2017-12-05 Karl Berry * c-minmax.h (SCHAR_MAX): decrement to the correct 127. Report from Douglas McKenna, tex-k 4 Dec 2017 18:26:35. 2017-11-28 Karl Berry * doc/unixtex.texi: no longer in ~ftp, etc. * doc/kpathsea.texi (Fontmap): clarify that it's the last % on a line that starts a comment. From Doug McKenna, personal email, 21nov17. 2017-11-18 Karl Berry * db.c (elt_in_db): protect against either argument being NULL or empty. From Doug McKenna, personal mail, 17nov17. 2017-11-11 Akira Kakuto * tex-file.c: Again use a custom kpathsea_getlongpath() instead of a standard API function GetLongPathName(), since the latter sometimes does not work as desired (W32 only). 2017-11-09 Karl Berry * db.c (kpathsea_db_search_list): remove redundant test of `found'. From Doug McKenna, personal mail, 7nov17. 2017-11-03 Karl Berry * default.h: document that NULL or empty input path returns the default string. * kdefault.c (kpathsea_expand_default): check for empty input path. From Doug McKenna, personal mail, 2nov17. * cnf.c (do_line): do not move past a nul byte on erroneous input (with a . but no program name). * hash.c: doc fix. From Doug McKenna, personal mail, 31oct17. 2017-10-29 Karl Berry * several files: missed copyright 2017 updates. * elt-dirs.c (do_subdir): assert must include elt_length>0 to guarantee the assert of elt[elt_length-1] is valid. From Doug McKenna, personal mail, 29oct17. 2017-10-25 Karl Berry * expand.c (brace_expand): do not look past the terminating null with bad input like "a{\0whatever". From Doug McKenna, personal mail, 23oct17. 2017-09-22 Akira Kakuto * tex-file.c: Use a standard API function GetLongPathName() instead of the custom kpathsea_getlongpath() (W32 only). 2017-09-20 Akira Kakuto * tex-file.c: Fix to return actual file names (W32 only). 2017-09-19 Akira Kakuto * db.c: Fix for DOSISH systems in which _WIN32 is not defined. 2017-05-03 Karl Berry * texmf.cnf (TEXMFAUXTREES): new variable (default value empty string via empty braces), for tlmgr conf auxtrees. (TEXMF): include $TEXMFAUXTREES, but don't assume it is nonempty. 2017-04-22 Akira Kakuto * win32lib.c, mingw32.c: Update texlive_gs_init() (w32 only). 2017-04-21 Akira Kakuto * win32lib.c, mingw32.c: Update texlive_gs_init() (w32 only). 2017-04-14 Karl Berry * texmf.cnf (shell_escape_commands): add texosquery-jre8. 2017-04-13 Karl Berry * texmf.cnf (TEXMF, TEXMFDBS): move TEXMFLOCAL to before TEXMFSYS*, so, e.g., config.ps in TEXMFLOCAL overrides TEXMFSYSCONFIG. Report from Michael Shell: http://tug.org/pipermail/tex-live/2016-July/039062.html 2017-04-05 Akira Kakuto * texmf.cnf: mendex requires the variable INDEXDICTIONARY. 2017-03-27 Karl Berry * Makefile.am (AM_TESTS_ENVIRONMENT): use instead of TESTS_ENVIRONMENT. 2017-03-18 Karl Berry * version.ac, * NEWS, * kpsewhich.c, * texmf.cnf, * doc/kpathsea.texi: version 6.2.3 for TL17. * Makefile.am (nodist_kpseinclude_HEADERS): include c-auto.h here. (kpseinclude_HEADERS): not here. (nodist_kpselib_HEADERS): and not here; variable no longer needed. Ken Brown on tldistro, 18 Mar 2017 16:50:41. 2017-03-14 Karl Berry * Makefile.am (kpseinclude_HEADERS): add c-auto.h. Report from Ken Brown on tldistro, 14 Mar 2017 12:16:56. 2017-03-02 Karl Berry * texmf.cnf (TEXINPUTS.luajitlatex): add, same as lualatex. Report from Ulrike Fischer, 2 Mar 2017 17:46:50. 2016-12-28 Akira Kakuto * xgetcwd.c: Typo. Thanks Luigi. 2016-12-15 Akira Kakuto * kpsestat.c: Change tex-k@mail.tug.org to tex-k@tug.org. 2016-11-30 Karl Berry * texmf.cnf (shell_escape_commands): remove mpost, due to the -tex option. Oops! Report from Bruno Le Floch. 2016-11-08 Akira Kakuto * tex-file.c: Add ".OTF" as a suffix of OpenType fonts. 2016-11-02 Karl Berry * mktexdir: try a silent mkdir before a non-silent mkdir, to try to work around the inevitable race condition. https://bugs.debian.org/794228. 2016-08-04 Karl Berry * texmf.cnf (max_strings.bibtex, et al.): increase to 100,000 per report from Michael Perryman, http://tug.org/pipermail/tex-live/2016-July/039109.html. 2016-07-01 Akira Kakuto * knj.c, knj.h: Avoid compiler warnings. 2016-06-30 Karl Berry * version.ac (kpse_version): 6.2.2 => 6.2.3dev. 2016-06-29 Akira Kakuto * kpsewhich.c: Remove unnecessary w32 changes, 2016-06-28 Akira Kakuto * config.h, db.c, elt-dirs.c, expand.c, find-suffix.c, hash.c, knj.c, knj.h, kpsewhich.c, make-suffix.c, path-elt.c, progname.c, readable.c, tilde.c, types.h, variable.c, win32lib.c, win32lib.h, xbasename.c, xdirname.c, xdirtest.c, xgetcwd.c: Eliminate global and static variables (w32 only). 2016-05-28 Akira Kakuto * tex-file.c: Fix a bug that TEXMFOUTPUT does not work (w32 only). See http://tug.org/pipermail/tex-k/2016-May/002719.html. 2016-05-20 Karl Berry * Version 6.2.2 for TeX Live 2016. 2016-05-13 Karl Berry * texmf.cnf (RISINPUTS, BLTXMLINPUTS): $TEXMF/biber rather than $TEXMF/bibtex. 2016-02-03 Akira Kakuto *knj.c: Disable unnecessary warning (w32 only). 2016-04-06 Karl Berry * texmf.cnf (TEXMFVAR, TEXMFCONFIG): 2016. (shell_escape_commands): add gregorio, fingers crossed. * cnf.c (do_line): do not keep checking ISSPACE beyond end of string. (Can crash on lines without spaces.) Return error string if problems. * kpathsea_cnf_get: give warning, with line number, if do_line returns a message. 2016-02-03 Akira Kakuto * texmf.cnf: Typo. 2016-04-06 Karl Berry * kpsewhich.c, et al.: copyright 2016. 2016-03-06 Karl Berry * version.ac: remove /dev for start of 2016 builds. 2016-02-27 TANAKA Takuji * kpsewhich.c: Allow Unicode file name for upmendex in kpsewhich. (Windows only) 2016-02-03 Akira Kakuto * win32lib.[ch], mingw32.[ch]: Define a function double win32_floor (double x), since floor is defined in cpascal.h. 2015-12-29 Akira Kakuto * win32lib.h: Update (w32 only). 2015-10-01 Peter Breitenlohner * kpsewhich.c (USAGE): Say "list shown by -help-formats". 2015-07-07 Peter Breitenlohner * Makefile.am: Better dependencies for 'make check'. 2015-06-18 Peter Breitenlohner * configure.ac: Define WEB2CVERSION for WIN32 programs. 2015-06-12 Peter Breitenlohner * version.ac: Update version number 6.2.1 => 6.2.2dev. * configure.ac: Drop test for isascii (now in KPSE_COMMON). 2015-05-21 Karl Berry * TL'15. 2015-05-03 Karl Berry * kpsewhich.c: copyright 2015. * doc/kpathsea.texi (version, month-year): now 6.2.1, May 2015. (Auxiliary tasks): add --help-formats, sort. (Supported file formats): add bltxml, clua, ris. * NEWS: mention --help-formats. 2015-05-03 Akira Kakuto * file-p.c: Implement same_file_p () for windows. 2015-04-17 Peter Breitenlohner * configure.ac: Test if isascii is declared. * c-ctype.h: Correctly define isascii, if not declared. 2015-04-14 Norbert Preining * mktexlsr (treefile): switch back to hard-coded path, as indeed it seems there are several systems without support for mktemp --tmpdir, just mktemp. TL2015 pretest emails. 2015-04-12 Karl Berry * texmf.cnf: update for TL'15. (shell_escape_commands): include extractbb, fingers crossed. 2015-04-12 Peter Breitenlohner * version.ac: 6.2.1 (without the dev) for 2015 pretest. 2015-03-25 Karl Berry * mktexlsr (treefile): use shell mktemp; patch from Debian via tlbuild mail from Norbert, 6 Mar 2015 09:13:06. Per Nelson Beebe, the program is available on a wide variety of systems nowadays, excluding only SGI IRIX MIPS, which we have not built binaries for in several years. (tlbuild reply, 6 Mar 2015 06:22:21) 2015-03-14 Peter Breitenlohner * Makefile.am, kpathsea.pc.in: Install under ${libdir}. 2015-03-10 Peter Breitenlohner * configure.ac: Drop checks for strcasecmp, strtol, and strstr. * lib.h: Drop the strstr() prototype. * Makefile.am: No need to distribute the replacement functions. 2014-12-13 Akira Kakuto * texmf.cnf: Sync with master which is changed by Norbert. 2014-12-06 Peter Breitenlohner * Makefile.am [kpathsea.h]: Improved output for silent rules. 2014-12-05 Karl Berry * kpsewhich.c (help_formats): new fn for new option --help-formats. (help_message): split off code from here. (USAGE): document it. (read_command_line): recognize it. Suggestion from Julian Gilbey, tex-k 4 Dec 2014 13:34:23. 2014-10-20 Peter Breitenlohner * db.c (db_names): Use initialized non-const strings to avoid warning. 2014-10-19 Karl Berry * db.c (db_names): list DB_NAME_LC first, and list both always, dropping WIN32 conditional. (init_db): check at runtime if ls-R and ls-R are same_file_p, and only read one on any system, not just hardwiring Windows. Output debugging lines. Basic patch from Adam Maxwell (since MacOSX now uses a case-preserving filesystem). * db.c (DB_HASH_SIZE): increase per current texmf-dist/ls-R. 2014-10-17 Karl Berry * line.c (getc, FLOCKFILE, FUNLOCKFILE): #define to getc_unlocked, etc. (get_line): call them, so we lock once per call instead of once per character read. Change from Adam Maxwell . https://email.esm.psu.edu/pipermail/macosx-tex/2014-October/053026.html 2014-09-16 Peter Breitenlohner * texmf.cnf (TEX.upmpost): Added. 2014-08-23 Peter Breitenlohner * knj.c (win32_fputs): Drop unused variables. 2014-08-22 Akira Kakuto * knj.c: Update fsyscp_popen(). 2014-08-22 TANAKA Takuji * knj.[ch], c-std.h, config.h: Add a new function win32_vfprintf() (Windows only) 2014-07-22 Karl Berry * tex-file.h, * tex-file.c (kpathsea_init_format_return_varlist): new fn to expose list of environment/config variable names considered. * kpsewhich.c (help_message): use it. 2014-07-18 Karl Berry * mktex.opt: don't basename-ify the program name, that's potentially useful information. * mktexdir, * mktexlsr, * mktexmf, * mktexnam, * mktexpk, * mktextfm, * mktexupd: prepend to PATH via a simple method for Unix (but leave the complicated DOS version in mktexlsr). 2014-07-15 Peter Breitenlohner * tex-make.c, win32lib.c: Replace the deprecated spawnvp() by _spawnvp(), they differ for 64-bit MinGW. 2014-07-13 Peter Breitenlohner * debug.c, hash.c, knj.c, tex-make.c: [WIN64] Avoid cast from pointer to integer of different size. 2014-06-20 Peter Breitenlohner * mingw32.h: Require WINVER >= 0x0500. 2014-06-20 Akira Kakuto * win32lib.c: Fix a potential bug (w32 only). 2014-06-18 Peter Breitenlohner * c-ctype.h: Avoid useless char subscript warnings. 2014-06-16 Peter Breitenlohner * Makefile.am (kpathsea.h): Drop c-auto.h, c-ctype.h, c-errno.h, and more from the list of files; they are included via others. * version.ac: Update version number 6.2.0 => 6.2.1dev. 2014-05-07 Akira Kakuto * win32lib.c: Update win32_popen() (w32 only). 2014-05-05 Karl Berry * doc/kpathsea.texi, * doc/unixtex.texi, * README, * PROJECTS: omit old information about building and installing; general updates (though plenty more could be done). * BUGS, * doc/bugs.texi, * doc/hier.texi, * doc/install.texi: remove. * Makefile.am, * doc/Makefile.am: update accordingly. 2014-04-30 Peter Breitenlohner * Makefile.am (normal_headers): Add simpletypes.h. * simpletypes.h: Don't '#include '. 2014-04-29 Karl Berry * simpletypes.h: new file, defining just boolean, string, address, etc. * pathsearch.h: restore #include of str-llist.h before types.h, as it should be. * str-llist.h: #include simpletypes.h instead of types.h. * types.h: #include simpletypes.h. 2014-04-22 Karl Berry * texmf.cnf (guess_input_kanji_encoding): set to 1, per Akira and Norbert. 2014-04-17 Karl Berry * version.ac: 6.2.0 (without the dev) for 2014 pretest. * NEWS, * texmf.cnf, * kpsewhich.c: 2014. * texmf.cnf (TEXINPUTS.pdfx{latex,mex,tex}): this engine has not existed for a long time. Remove. (TEXINPUTS.luajittex): same as .luatex. 2014-04-09 Karl Berry * pathsearch.h: with deep regret, #include types.h before str-llist.h, since otherwise str_llist_type is not defined in its use within types.h and a simple #include fails. Reported by Norman Gray, tex-k 14 Apr 2013 12:23:50, http://tug.org/pipermail/tex-k/2013-April/002496.html 2014-04-09 Luigi Scarso * mingw32.h [MinGW64]: Avoid warning due to redefining popen. 2014-03-21 Peter Breitenlohner * Makefile.am, configure.ac, getopt.h: Revert previous change. Cygwin system getopt() is incompatible with the GNU version. 2014-03-06 Peter Breitenlohner * Makefile.am, configure.ac: Use Cygwin system getopt(). * getopt.h: Avoid to redeclare the getopt API. 2014-02-08 TANAKA Takuji * knj.[ch]: Add a new function win32_putc(). (Windows only) 2014-01-25 Akira Kakuto * kpsewhich.c : [WIN32 only] progname should be kpse->program_name since progname can be NULL. 2014-01-25 Peter Breitenlohner * knj.c: Drop unused variable (avoid warning). 2014-01-25 TANAKA Takuji * knj.[ch]: Add a new function win32_getc(), win32_ungetc(), win32_fputs(), and win32_puts(). (Windows only) * kpsewhich.c, pathsearch.c, line.c: Allow Unicode file name in kpsewhich. (Windows only) * knj.c: Fix typo in error message. (Windows only) 2014-01-14 Peter Breitenlohner * knj.c: Add #include as required for MinGW32. Cast arg3 of fsyscp_spawnvp() to avoid warning. 2014-01-14 Akira Kakuto * knj.[ch]: Add new functions fsyscp_spawnvp(), and fsyscp_system(). (Windows only) 2014-01-13 TANAKA Takuji * knj.[ch]: Add a new function fsyscp_popen(). (Windows only) 2014-01-08 TANAKA Takuji * knj.c: Allow encoding name "" for non-utf8 command line. Warn if unknown encoding. (Windows only) 2014-01-04 Peter Breitenlohner * knj.c: Keep non-utf8 command line. Avoid compiler warnings. 2014-01-01 TANAKA Takuji * knj.c, knj.h: Use cast for ASCII string conversion from char to wchar_t. (Windows only) 2013-12-31 Akira Kakuto * knj.h: Remove #include because Visual Studio 2010 cannot compile Kpathsea. 2013-12-31 TANAKA Takuji * knj.c, knj.h: Add new functions fsyscp_fopen() and get_command_line_args_utf8() (Windows only) * progname.c: Refine initialization for KANJI (Windows only) 2013-12-03 TANAKA Takuji * elt-dirs.c, knj.c, knj.h, progname.c, readable.c: Support KANJI file name in (e)upTeX and XeTeX on Windows. 2013-09-22 Karl Berry * mktexlsr: output normal msgs to stdout, not stderr. Suggestion from Scott Kostyshak, tex-live mail 29 Jun 2013 04:42:10. 2013-08-17 Peter Breitenlohner * configure.ac (AH_TOP): Simplify the generation of c-auto.h. 2013-08-14 Akira Kakuto * win32lib.c, mingw32.c (texlive_gs_init()): Fix a bug. 'n' and 'f' can be drive letters. 2013-08-12 Akira Kakuto * win32lib.c, mingw32.c (texlive_gs_init()): Do nothing if TEXLIVE_WINDOWS_EXTERNAL_GS is defined and its value is not '0', 'n', or 'f'. 2013-08-07 Karl Berry * line.c (read_line): only at EOF if loc==0, i.e., do not ignore a non-terminated last "line" of a file; distressingly common on Windows. * Makefile.am (TESTS): add cnfnewline.test; move all *.test to tests/ subdir. (EXTRA_DIST): add tests/cnfnewline/texmf.cnf, a file without a final newline. * kpsewhich.test: also check that we can read the environment variable that we set. 2013-07-07 TANAKA Takuji * knj.c and progname.c: Generalize the method to avoid the 0x5c problem in path names to the cases CP936 (simplified Chinese) and CP950 (traditional Chinese) on Windows system. 2013-07-06 Peter Breitenlohner * Makefile.am: Use ../../am/rebuild.am. 2013-07-05 Peter Breitenlohner * Makefile.am, man/Makefile.am: Moved Makefile fragments to ../../am/. 2013-07-01 Peter Breitenlohner * c-memstr.h: Drop mapping of BSD => SYSV/ANSI string functions. 2013-06-25 Karl Berry * texmf.cnf (guess_input_kanji_encoding): config variable, off by default. Per Akira. 2013-06-25 Peter Breitenlohner * config.h: Remove definition of EXEEXT, comes from c-auto.h. 2013-06-25 Akira Kakuto * config.h: define EXEEXT if DOSISH is defined. * win32lib.c: Unify two win32lib.c's in w32 sources. * progname.c, texmf.cnf: Define SELFAUTOGRANDPARENT to give a robust TEXMFLOCAL. 2013-06-16 Peter Breitenlohner * configure.ac: New conditional have_EXEEXT. * Makefile.am (libkpathsea_la_CPPFLAGS): Define EXEEXT for systems with a non-vanishing executable extension. * progname.[ch]: New function kpse_program_basename(). * version.ac: Update version number 6.1.1 => 6.2.0dev. Adapt kpathsea headers to C++. * absolute.h, cnf.h, concatn.h, config.h, debug.h, expand.h, hash.h, knj.h, lib.h, line.h, magstep.h, mingw32.h, pathsearch.h, proginit.h, progname.h, readable.h, str-list.h, str-llist.h, tex-file.h, tex-glyph.h, tex-hush.h, tex-make.h, types.h, variable.h, version.h, win32lib.h: When compiling C++ surround all declarations by 'extern "C" {' ... '}'. 2013-06-15 Peter Breitenlohner * cnf.c, kpsewhich.c: Drop redundant (in ). 2013-06-11 Peter Breitenlohner * xrealloc.c: Drop redundant extern (in ). 2013-06-05 Peter Breitenlohner * Makefile.am (*_la_LDFLAGS): Add -bindir for MinGW DLL. * win32lib.h.mugica (removed): Unused and unmaintained. * Makefile.am: Adapt. 2013-05-30 Karl Berry * Version 6.1.1 for TeX Live 2013. 2013-04-15 Karl Berry * texmf.cnf (TEXINPUTS.lamed): there is no lamed directory and never has been, as far as I can tell, so don't look in it. * texmf.cnf (TEXMFCACHE): new variable for lualatex font cache; same value as ConTeXt MkIV's variable of the same name in texmfcnf.lua. 2013-04-10 Karl Berry * texmf.cnf (TEXMFCNF): still look in texmf/ subdirs after all; needed for non-TL ConTeXt and likely others. Report from Mojca/Hans. 2013-04-05 Karl Berry * other files: 2013 in copyright year list. * kpsewhich.c, * NEWS, * version.ac: 6.1.1 and 2013 to prepare for TL'13 pretest. * texmf.cnf (TEXMFCNF): likewise prepare to use texmf-dist instead of texmf. From Akira. 2013-04-03 Karl Berry * texmf.cnf (TEXMFMAIN): make it the same as $TEXMFDIST, and do not use it. That is, as of TL 2013, everything will be in texmf-dist, not split between texmf and texmf-dist. See the thread including http://tug.org/mailman/htdig/tex-live/2013-January/032888.html. Also change 2012 to 2013. 2013-03-26 Karl Berry * tex-make.c (kpathsea_make_tex): specify fn name in warnings about invalid fontnames. 2013-03-14 Karl Berry * texmf.cnf (save_size): increase to 100000 (from 50000), for perldoc-all.texi (http://www.gnu.org/software/perl/manual). 2013-02-08 Peter Breitenlohner * Makefile.am (web2cdir): Change texmf => texmf-dist. 2013-01-30 Peter Breitenlohner * configure.ac: Use KPSE_COND_MINGW32. 2013-01-29 Akira Kakuto * progname.c, types.h, win32lib.c, win32lib.h: Simplify win32_popen. 2012-12-16 Peter Breitenlohner * Makefile.am (kpathsea.h): Enable silent rules. 2012-12-13 Peter Breitenlohner Resolve remaining const related problems. * db.[ch] (kpathsea_db_search_list): Make arg3 non-const. * pathsearch.[ch] (kpathsea_path_search_list_generic, dir_list_search_list): Make arg3 non-const. * tex-file.c: Remove casts 'string*' => 'const_string*'. * readable.[ch] (kpathsea_readable_file): Make arg non-const. Include code to truncate too-long filename components. * truncate.[ch] (kpathsea_truncate_filename): Files removed. * Makefile.am: Drop truncate.c and truncate.h. 2012-12-12 Peter Breitenlohner Somewhat disentangle path search functions. * db.c (kpathsea_init_db): Directly call kpathsea_path_search_list_generic() instead of the kpathsea_all_path_search_list() wrapper. * pathsearch.c: Rename the static function search_list() into the non-static kpathsea_path_search_list_generic() and drop the former kpathsea_path_search_list_generic() wrapper. * pathsearch.[ch]: Drop the now unused *_path_search_list(). 2012-12-11 Peter Breitenlohner Resolve some const related problems. * str-list.[ch]: Add cstr_list_type and cstr_list_add() for const strings. Define [c]str_list_init() as static inline. * kpathsea.c: Move definition of KPATHSEA_CAN_FREE from here ... * hash.h: ... to here. * hash.[ch]: Define hash_free() only if KPATHSEA_CAN_FREE!=0. (hash_lookup): Change return type 'string*' => 'const_string*'. * cnf.[ch] (kpathsea_cnf_get, kpse_cnf_get): Change return type 'string*' => 'const_string*'. * dir.c (kpathsea_dir_links): Adapt. * rm-suffix.c (remove_suffix): Adapt. * db.c, fontmap.c: Remove casts 'string*' => 'const_string*'. 2012-12-10 Peter Breitenlohner * mingw32.c: Remove look_for_cmd(). 2012-12-10 Akira Kakuto * win32lib.c: remove look_for_cmd(). 2012-12-08 Peter Breitenlohner * mingw32.c (look_for_cmd): Do not compute unused value. * win32lib.c (look_for_cmd, kpathsea_win32_popen): Same. 2012-11-28 Peter Breitenlohner * texmf.cnf: Increase main_memory, font_mem_size, hash_extra, and pool_size. 2012-11-20 Peter Breitenlohner * Makefile.am: Avoid use of deprecated INCLUDES. 2012-10-03 Peter Breitenlohner * mingw32.c: use stat in static int is_dir (). 2012-10-02 Akira Kakuto * win32lib.c: use stat in static int is_dir (). 2012-10-01 Akira Kakuto * win32lib.c: remove _osver since it is obsolete. 2012-09-28 Akira Kakuto * win32lib.h: remove definition of mkdir. * c-proto.h: introduce NO_KPSE_DLL as in getopt.h. 2012-08-11 Peter Breitenlohner * c-std.h: Define M_PI if not defined by (old MSVC). 2012-08-08 Peter Breitenlohner * Makefile.am: Use ../am/bin_links.am. 2012-08-02 Akira Kakuto * win32lib.h: remove definition of pipe. 2012-08-01 Peter Breitenlohner * configure.ac: Bail out for a badly broken snprintf() (hopefully this will not happen). Check if we need (v)snprintf wrapper functions. * config.h: If needed, declare (v)snprintf wrapper functions. * progname.c (kpathsea_set_program_name): Check snprintf sanity. 2012-07-25 Peter Breitenlohner * configure.ac: Add AC_CHECK_SIZEOF([long]). * types.h: #include and if they exist. If necessary #define PRId64 & Co. 2012-07-25 Peter Breitenlohner * getopt.c [WIN32 && ! __CYGWIN__]: Use __CYGWIN__ instead of __CYGWIN32__ which is deprecated and may be removed. Mail from Ken Brown , Tue, 24 Jul 2012. 2012-07-23 Peter Breitenlohner * mingw32.h (win32_popen): Static inline wrapper for _popen() to use always binary mode. 2012-07-23 Akira Kakuto * win32lib.c: rewrite kpathsea_win32_popen to use always binary mode. 2012-07-13 Peter Breitenlohner * Makefile.am (libkpathsea_la_SOURCES): Skip compilation of xfseeko.c and xftello.c for MSVC. * win32lib.h: Drop xfseeko() and xftello() prototypes, they will subsequently be defined in lib.h. 2012-07-09 Peter Breitenlohner * version.ac: Update version number 6.1.0 => 6.1.1dev. 2012-05-29 Akira Kakuto * win32lib.c: rewrite win32_system. 2012-05-22 Karl Berry * mktexmf: test $name for csso12*, not $rootname. From Debian via Norbert, 21 May 2012 10:11:08. 2012-05-16 Peter Breitenlohner * cnf.[ch]: Add KPSEDLL to kpathsea_cnf_get(), and reintroduce kpse_cnf_get(). * Makefile.am: Do install cnf.h. 2012-05-06 Peter Breitenlohner * Makefile.am (rebuild): Depend on 'all-am' instead of 'all' to avoid an infinite loop. 2012-05-05 Peter Breitenlohner * win32lib.[ch]: Copyright 2012. 2012-05-05 Akira Kakuto * win32lib.c: rewrite xftell64 for W32. 2012-05-04 Akira Kakuto * win32lib.c: rewrite xftell64 and xfseek64 for W32. 2012-04-30 Akira Kakuto * win32lib.c: further rewrite win32_system(). 2012-04-23 Peter Breitenlohner * Makefile.am (rebuild): Touch libkpathsea.la to avoid an infinite loop when only mingw32.h or win32lib.h is changed. 2012-04-23 Akira Kakuto * win32lib.h, win32lib.c: rewrite win32_system(). 2012-04-17 Akira Kakuto * texmf.cnf: erase "ptexgeneric". 2012-04-16 Karl Berry * texmf.cnf (TEXMFCNF): spell out every directory explicitly, so we can include $SELFAUTOPARENT/../texmf-local/web2c. 2012-04-09 Peter Breitenlohner * cnf.[ch]: Drop KPSEDLL from kpathsea_cnf_get(), and remove kpse_cnf_get(). * db.h: Drop KPSEDLL from kpathsea_db_insert(). * Makefile.am: Do not install cnf.h. * mingw32.h: Add a copyright statement. * configure.ac: Subst tex_live_version from ../../version.ac as WEB2CVERSION for WIN32 programs. 2012-04-09 Karl Berry * getopt.h (getopt) [!__cplusplus]: do not declare when compiling with C++, since g++ 4.7.0 introduced an incompatible declaration. http://bugs.debian.org/667392 * c-std.h (popen, pclose) [!VMS]: remove these decls to avoid conflicts, hoping they are now always in the system libraries. http://bugs.debian.org/64524 2012-04-07 Karl Berry * texmf.cnf (glob_str_size): increase from 5000 to 20000 per Akira, 06 Apr 2012 10:25:18. 2012-04-04 Peter Breitenlohner * c-unistd.h: Declare getopt() (via ) only for Mingw and Cygwin; for other systems using the GNU C library g++-4.7 might choke on incompatible exception specifications. 2012-03-11 Karl Berry * *.c: prepend kpathsea: to warnings. 2012-03-04 Peter Breitenlohner Avoid 'the address of X will always evaluate as true' warnings. * lib.h (STREQ): Test '(s) != NULL' instead of '(s)'. Gcc >=4.3 produces identical code but -Wall yields no warning. 2012-03-01 Peter Breitenlohner * c-unistd.h: Declare getopt() (via ) but not getopt_long(). * getopt.h: With __need_getopt declare only getopt() but not getopt_long() (with 'struct option'). * getopt.[ch]: Drop pre-ANSI C non-prototype declarations. 2012-02-27 Peter Breitenlohner * c-unistd.h [CYGWIN]: Explicitly #include such that from Cygwin will be skipped. 2012-02-27 Ken Brown * getopt.h: Cygwin requires getopt() prototype. 2011-12-22 Karl Berry * texmf.cnf (TEX.pmpost, TEXINPUTS.(e)up(la)tex): new definitions, from Norbert. 2011-12-06 Peter Breitenlohner * Makefile.am: Replace ${prefix}/texmf => $(datarootdir)/texmf. 2011-10-27 Karl Berry * texmf.cnf (FONTCONFIG_*): doc+formatting fix. 2011-10-06 Akira Kakuto * win32lib.c, win32lib.h: use const char * in system() and popen(). 2011-09-30 Karl Berry * types.h (kpse_{ris,bltxml}_format): new types. * tex-file.c ({RIS,BLTXML}_ENVS): new defines. (kpse_init_format): initialize them. * texmf.cnf ({RIS,BLTXML}INPUTS): new definitions. Request from Phil Kime, tex-k 25 Sep 2011 16:46:07. 2011-08-28 Karl Berry * texmf.cnf (LUAINPUTS.lualatex, LUAINPUTS.dvilualatex): new defns. (LUAINPUTS): duplicate value of TEXINPUTS.luatex, instead of using $TEXINPUTS. Report from Herbert Voss, 15 Aug 2011 23:53:45, among others. 2011-08-12 Peter Breitenlohner * version.ac: Update version number 6.0.2dev => 6.1.0dev. 2011-08-09 Peter Breitenlohner * Makefile.am (SUBDIRS): Add win32 to build C programs from Akira's W32TeX as WIN32 replacements for the shell scripts. 2011-08-08 Peter Breitenlohner * progname.c (fix_selfdir): Simplified to not modify arg. (remove_dots): Somewhat clarify the code (suggested by Karl). * progname.h [WIN32]: Don't declare {kpathsea,kpse)_selfdir(). * progname.c [TEST]: Update and extend the test program. * Makefile.am (progname-test): Add rules to build the standalone test program. 2011-08-08 Karl Berry * cnf-to-paths.awk: preserve values starting with /, so distro maintainers can edit texmf.cnf with absolute paths and not have them replaced with /nonesuch. Suggestion from Norbert. 2011-08-05 Karl Berry * dir.c, * getopt.c, * hash.h, * pathsearch.h, * progname.h, * truncate.h: copyright 2011. 2011-08-05 Peter Breitenlohner * cnf.c, fontmap.c: Do not #include . * Makefile.am (kpseinclude_HEADERS): Remove recorder.h. * recorder.h (removed): Empty file. * Makefile.am: Do not install kpathsea internal headers. * xdirtest.c: Additional test data. 2011-08-04 Peter Breitenlohner More diffs between TeX Live and W32TeX. * xbasename.c: Test for 2-Byte Kanji (CP 932, SJIS) codes and for Unc names. * xdirname.c: Test for 2-Byte Kanji (CP 932, SJIS) codes and slashify the result. * xdirtest.c (new): Standalone program to test xdirname() and xbasename(), based on code moved to here ... * xdirname.c [TEST]: ... from here. 2011-08-03 Akira Kakuto * db.c (db_build): No need to slashify lines from db_file. 2011-08-03 Peter Breitenlohner * mingw32.[ch] (dostounix_filename): Remove unused function. (texlive_gs_init): New function copied from win32lib.[ch]. 2011-08-03 Peter Breitenlohner More diffs between TeX Live and W32TeX. * db.c (ignore_dir_p, db_build, match), kpsewhich.c (subdir_match): Slashify and test for 2-Byte Kanji (CP 932, SJIS) codes. 2011-08-03 Akira Kakuto * win32lib.h: #include for _getcwd. 2011-08-02 Peter Breitenlohner Unexport kpathsea internal functions, remove unused ones. * db.[ch] (kpse_db_insert, kpse_init_db, kpse_db_search, kpse_db_search_list): All removed. * default.h (kpathsea_expand_default): Internal use only. * default.h, kdefault.c (kpse_expand_default): Removed. * elt-dirs.c (kpse_normalize_path, kpse_element_dirs): Removed. * expand.[ch] (kpathsea_expand): Internal use only. (kpse_expand): Removed. * fn.h (fn_init, fn_copy0, fn_free, fn_1grow, fn_grow, fn_str_grow, fn_shrink_to): ALL internal use only. * hash.h (hash_insert_normalized): Internal use only. * path-elt.c (kpse_path_element): Removed. * pathsearch.[ch] (kpathsea_path_element, kpathsea_element_dirs, kpathsea_path_search_list, kpathsea_path_search_list_generic, kpathsea_all_path_search_list): Internal use only. (kpse_path_element, kpse_filename_component, kpse_normalize_path, kpse_element_dirs, kpse_path_search_list, kpse_path_search_list_generic, kpse_all_path_search_list): Removed. * fontmap.h, tilde.h, truncate.h, xstat.h: Whole files internal use only. 2011-08-02 Akira Kakuto * win32lib.h: follow mingw32.h for boolean and move definitions for win32 functions from lib.h. * win32lib.c: change definitions of xfseek64 and xftell64 to match with xfseeko and xftello. 2011-08-02 Peter Breitenlohner More diffs between TeX Live and W32TeX. * elt-dirs.c (dir_list_add, do_subdir, expand_elt): Replace IS_DIR_SEP by IS_DIR_SEP_CH. * getopt.h: Add (non-ANSI) declaration for getopt(). * mingw32.h: #define off_t as off64_t for ftello64 and fseeko64. 2011-08-01 Peter Breitenlohner * win32lib.h.mugica: Renamed from win32lib.h. * win32lib.[ch]: New files, yet to be filled in. * knj.c (is_cp932_system): No KPSEDLL in knj.c, only in knj.h. 2011-07-31 Peter Breitenlohner More diffs between TeX Live and W32TeX. * c-pathch.h: IS_DIR_SEP_CH macro to be used with `slashified' filenames without need to test for 2-Byte Kanji codes. * elt-dirs.c (kpathsea_normalize_path): Slashify, reformulate, and test for 2-Byte Kanji (CP 932, SJIS) codes. (kpathsea_element_dirs): First call kpathsea_normalize_path() which might modify `elt' and then test for cached answer. * progname.c: Make sure SELFAUTO* is not just / only for WIN32. 2011-07-30 Peter Breitenlohner * dir.c (kpathsea_dir_p, dir_p), lib.h: Unconstify string parms. * elt-dirs.c (dir_list_add, checked_dir_list_add, do_subdir, expand_elt): Unconstify string parms and local vars. * progname.c (kpathsea_selfdir): Don't uselessly initialize ret. * mingw32.c: #include . * mingw32.h [IS_DIR_SEP, IS_DEVICE_SEP, IS_UNC_NAME]: Do not duplicate them here, use definitions from c-pathch.h. 2011-07-29 Akira Kakuto * tilde.c [WIN32]: Use kpathsea_getpwnam(). 2011-07-28 Peter Breitenlohner More diffs between TeX Live and W32TeX. * db.c, find-suffix.c, xbasename.c: Reformulate and test for 2-Byte Kanji (CP 932, SJIS) codes. * expand.c, make-suffix.c, tilde.c: Slashify, reformulate, and test for 2-Byte Kanji (CP 932, SJIS) codes. * progname.c: Make sure SELFAUTO{LOC,DIR,PARENT} is not just /. * types.h (kpathsea_instance): Merge TL and W32TeX. 2011-07-27 Peter Breitenlohner More diffs between TeX Live and W32TeX. * progname.c (kpathsea_set_program_name): Merge TL and W32TeX. 2011-07-26 Peter Breitenlohner More diffs between TeX Live and W32TeX. * knj.[ch]: New files from Akira's W32TeX. * progname.c (kpathsea_set_program_name): Set is_cp932_system. * Makefile.am, config.h: Adapt. * db.c, expand.c, hash, path-elt.c, tilde.c, truncate.c, variable.c, xdirname.c, xgetcwd.c: Test for 2-Byte Kanji (CP 932, SJIS) codes. * db.c (kpathsea_db_search, kpathsea_db_search_list), tex-file.c (kpathsea_set_suffixes_va_list, init_maketex): Cast arg to `void *' because MSVC warns for a `const_string *' arg when expecting `void *'. * config.h, db.c, hash.c: #define and use TRANSFORM. 2011-07-25 Peter Breitenlohner Minor changes to reduce diffs between TeX Live and W32TeX. * c-ctype.h [WIN32]: Never #define isascii. * c-fopen.h: Always write text files with Unix line endings. * tex-glyph.c (bitmap_specs) [WIN32]: Add DOS_BITMAP_SPEC. * win32lib.h: #define strncasecmp as _strnicmp. * readable.c: Replace #elif WIN32 => #elif defined (WIN32). * magstep.c, pathsearch.h, xftell.c: Adjust whitespace. 2011-07-22 Peter Breitenlohner * kpathsea.c, progname.c, tex-file.c, types.h: Drop #if defined(__MINGW32__) already implied by defined(WIN32). * kpathsea.c (kpathsea_finish): Free suffixlist. 2011-07-15 Peter Breitenlohner * version.ac: New file defining the kpathsea version. Update version number 6.0.1 => 6.0.2dev. * configure.ac: Adapt. Use KPSE_LT_VERSION. 2011-07-12 Peter Breitenlohner * ac/web2c.ac renamed into ac/mktex.ac. * ac/withenable.ac, configure.ac: web2c.ac => mktex.ac. * configure.ac: KPSE_WEB2C_PREPARE => KPSE_MKTEX_PREPARE. 2011-06-29 Peter Breitenlohner * tex-make.c [WIN32]: Do not #include from here (already done from config.h). 2011-06-28 Karl Berry * mktexlsr: need to shift when arg is not a directory. Found by Luigi Scarso, tex-k mail 28 Jun 2011 00:21:14. 2011-06-19 Karl Berry * texmf.cnf (OPENTYPEFONTS): a duplicate entry was created :(. 2011-06-18 Peter Breitenlohner * progname.c (remove_dots): Correctly handle dir="/foo/../bar". 2011-06-17 Peter Breitenlohner Reduce memory leaks. * types.h (kpse_format_info_type): Declare path as non-const. * tex-file.c (init_path): Free old value of path when assigning a new value. * progname.c (kpathsea_selfdir): Free strings no longer used. * kpsewhich.c (lookup): Free string no longer used. 2011-06-16 Peter Breitenlohner * fontmap.c (kpathsea_fontmap_lookup), kpsewhich.c (find_dpi), progname.c (kpathsea_set_program_name): Allow find_suffix() to return a const string. * find-suffix.c, lib.h: Declare find_suffix() as const. * find-suffix.c: Explain that NAME+(find_suffix(NAME)-NAME) is equivalent to find_suffix(NAME) but not necessarily const. * progname.c (remove_dots): Somewhat reorganize (initialize ret as `NULL' instead of `(string)""'). 2011-06-16 Peter Breitenlohner * tex-glyph.c (try_size, try_fontmap, kpathsea_find_glyph), tex-glyph.h (kpse_glyph_file_type): Declare font name as const. 2011-06-16 Peter Breitenlohner * xgetcwd.c: Fix #include directives (depend on GETCWD_FORKS). (xgetcwd): The returned string may be long lived, so malloc() only as needed. Do not print path when getcwd(path, size) or getwd(path) fail, the contents is undefined. 2011-06-13 Manuel P\'egour\'e-Gonnard * db.c (match): ensure that we are at a dir separator in the filename before checking for being at the final component. (We were erroneously matching "foobar" to "foo" in some cases.) Report from Manuel, tex-k mail 12 Jun 2011 21:29:55. 2011-06-10 Karl Berry * configure.ac (AC_PROG_AWK): new test. * Makefile.am (stamp-paths): use $(AWK). This is to avoid broken Solaris /usr/bin/awk, which does not have sub(). Report from Ettore Aldrovandi, 8 Jun 2011 23:36:44. 2011-06-09 Karl Berry * mktexlsr: write directory args to a file and read them back, so we can support spaces (though not newlines) in the directory names. Reword some error messages. 2011-06-08 Akira Kakuto * hash.c: leave original letter cases also on win32. 2011-06-06 Karl Berry * texmf.cnf (TEXINPUTS.context): No trailing comma, per Taco. 2011-06-03 Peter Breitenlohner * mingw32.c (normalize_filename): Use memmove() instead of memcpy() for overlapping objects. 2011-05-29 Akira Kakuto * texmf.cnf: add "shell_escape.initex = f" and "parse_first_line.initex = f", since we have initex in TL 2011. Otherwise the banner of initex is "This is TeXk, ..." 2011-05-27 Peter Breitenlohner * extend-fname.c: Remove the `generic const warning'. * readable.c, rm-suffix.c: Adjust the `generic const warning'. 2011-05-26 Peter Breitenlohner * db.c (kpathsea_db_search): Add `free (dir_part)'. (kpathsea_db_search{,_list}): Declare a few strings as const. (kpathsea_db_insert): Use pointer arith to avoid const warning. 2011-05-24 Peter Breitenlohner * Makefile.am (EXTRA_DIST): Add the new cnf-to-paths.awk script. 2011-05-24 Karl Berry * tex-file.c (TRUETYPE_SUFFIXES): add .dfont. Request from Dohyun Kim, 23 May 2011 16:09:03. * doc/kpathsea.texi (Supported file formats): mention it. 2011-05-23 Karl Berry * cnf-to-paths.awk: new awk script. * Makefile.am (stamp-paths): use it instead of the inline sed. Also, change the generated paths.h so that all non-SELFAUTO paths become a constant string "/nonesuch". That way, if the definitions change, the binaries don't all uselessly change with them. 2011-05-22 Karl Berry * texmf.cnf: doc fixes. 2011-05-15 Peter Breitenlohner * absolute.c: Partially revert the minor rewrite. 2011-05-12 Peter Breitenlohner * absolute.c: Minor rewrite. * NEWS, progname.[ch]: Finally remove kpse_set_progname (deprecated since 1998). 2011-05-06 Karl Berry * texmf.cnf (TEXINPUTS.eplatex): no longer needed per Akira. (platex will always use eptex.) 2011-05-03 Peter Breitenlohner * kpsewhich.c (find_format): Drop unused variable 'try_len'. 2011-04-28 Karl Berry * kpsewhich.c (try_suffix): new fn, checking entire string for format names. (TRY_SUFFIX): change macro to just call the fn. Report from Philipp Stephani, tex-live mail 25 Apr 2011 16:38:47. * NEWS, * kpsewhich.c (read_command_line), * doc/kpathsea.texi, * texmf.cnf: 2011. 2011-04-14 Peter Breitenlohner * configure.ac: Update version number 6.0.1dev => 6.0.1. 2011-04-11 Peter Breitenlohner * texmf.cnf (TEXEDIT): Document Unix and Windows defaults. * tex-file.c (executable_filep): Avoid using strcpy() for overlapping strings. 2011-03-22 Karl Berry * texmf.cnf (TEXINPUTS.eptex, TEXINPUTS.eplatex): define, same as .p(la)tex. From Akira. 2011-03-07 Peter Breitenlohner * types.h: Rename the variables program_invocation_name and program_invocation_short_name into kpse_invocation_name and kpse_invocation_short_name repectively, (1) in order to avoid conflicts with /usr/include/sys/errno.h from Cygwin, and (2) because they are not the same as those from the GNU C library. Problem reported by Ken Brown . 2011-03-03 Peter Breitenlohner * lib.h, xftell.c (xftell): Change return type from unsigned to signed and use ftell() instead of ftello(). 2011-03-01 Karl Berry * texmf.cnf: be more explicit that all trees, including TEXMFHOME, must follow the TDS. 2011-03-01 Peter Breitenlohner * mingw32.[ch]: Drop win32_system(); this was a workaround for a bug in system() under Win9x. 2011-03-01 Peter Breitenlohner * man/{kpsewhich,mktexlsr,mktexmf,mktexpk,mktextfm}.man: Drop useless '.rb' macros. * man/{kpseaccess,kpsereadlink,kpsestat}.man: The same. Also remove `additional' from `following additional options'. 2011-02-28 Peter Breitenlohner * Makefile.in.orig, common.ac.orig, withenable.ac: Remove ancient files. * Makefile.am (EXTRA_DIST): Adapt. 2011-02-08 Peter Breitenlohner * man/Makefile.am: Use ../am/man1_links.am for manpage links. 2011-02-02 Karl Berry * texmf.cnf (TEXMFROOT): new variable, $SELFAUTOPARENT by default, to minimize redistributors' patches with a new Perl updmap. 2011-01-06 Karl Berry * tex-file.c (LUA_SUFFIXES): add .tlu, luatex mail from t34www, 6 Jan 2011 22:04:45. 2011-01-01 Karl Berry * texmf.cnf (TEXLIVE_WINDOWS_TRY_EXTERNAL_PERL): doc fixes. 2010-12-27 Peter Breitenlohner * Makefile.am (install-exec-hook): Check symlink creation. * man/Makefile.am (install-data-hook): The same. 2010-12-24 Karl Berry * Makefile.am (stamp-paths): ensure that grep is not completely broken, e.g., from GREP_OPTIONS, in which case we'd generate a useless paths.h. 2010-12-18 Peter Breitenlohner * Makefile.am [WIN32]: Skip mktex{lsr,mf,pk,tfm} shell scripts and texhash->mktexlsr symlink. 2010-12-01 Peter Breitenlohner * tex-make.c (maketex): Factor out common WIN32 & Unix code. [WIN32]: Avoid compiler warnings. 2010-12-01 Akira Kakuto * tex-make.c (maketex): [WIN32] spawnvp(_P_NOWAIT, ...) and pipe. 2010-11-29 Karl Berry * doc/kpathsea.texi (Brace expansion): no longer derived from Bash. 2010-11-27 Taco Hoekwater * db.c (kpathsea_db_search_list): one return list for everything, else kpsewhich --all plain returns nothing, even though kpsewhich plain works. Report from Paul Isambert, 25 Nov 2010 19:09:21. 2010-11-27 Karl Berry * kpsewhich.test: test this. 2010-11-18 Peter Breitenlohner * tex-glyph.c (try_format): Drop unused params fontname and dpi; mention the use of $KPATHSEA_{NAME,DPI} from environment. 2010-11-10 Peter Breitenlohner * configure.ac: Update version number to 6.0.1dev. 2010-11-10 Mathias Kende * tex-file.c (kpathsea_set_suffixes_va_list): new fn. (kpse_set_suffixes, kpathsea_set_suffixes): call it. Avoids passing variable argument list, which is not portable. http://bugs.debian.org/602566. 2010-11-07 Karl Berry * cnf.c (do_line): remove trailing comment and preceding whitespace, so they do not appear as part of the value. From Akira. * doc/kpathsea.texi (Config files): document this. * texmf.cnf: doc fixes. 2010-10-02 Peter Breitenlohner * Makefile.am (libkpathsea_la_LDFLAGS): Add -no-undefined. 2010-09-24 Karl Berry * texmf.cnf (TTFONTS): also read opentype//. (OPENTYPEFONTS): also read truetype//. Because common practice is to use .ttf/.ttc for TrueType-flavored OpenType fonts (and .otf only for PostScript-flavored OpenType). 2010-09-18 Karl Berry * texmf.cnf (DVIPDFMXINPUTS): do not include ., so attackers cannot create a dvipdfmx.cfg with, e.g., xetex. Report from Heiko, 16 Sep 2010 22:32:25. 2010-09-09 Karl Berry * mktexlsr (vc_dirs): remove CVS and RCS from the list, for compatibility with the corresponding change on Windows, made so that rcs/rcs.sty is not ignored. 2010-06-13 Karl Berry * doc/unixtex.texi: reduce to current reality. 2010-06-10 Peter Breitenlohner * getopt.h [NO_KPSE_DLL]: Allow use of this file for chktex. From Karl Berry, 9 Jun 2010 15:36:44. 2010-06-06 Karl Berry * getopt.h (getopt) [! __STDC__]: remove decl since AIX/Solaris compilers complain (vvv, tlbuild 07 Jun 2010 01:30:47). 2010-06-04 Karl Berry * configure.ac (kpse_lib_devel): empty for TeX Live 2010 (pretest 2, maybe final). 2010-05-30 Karl Berry * texmf.cnf (shell_escape_commands): turns out fc-list is not needed after all. 2010-05-30 Manuel P\'egouri\'e-Gonnard * texmf.cnf: relax LUAINPUTS not to require and extra "lua" subdirectory for modules in texmfscripts. * texmf.cnf: enlarge trie_size to fit with latest hyph-utf8 release. 2010-05-27 Karl Berry * getopt.h (getopt) [!__GNU_LIBRARY__]: do not declare at all. Previous conditional on __cplusplus did not work with Sun CC. Maybe all systems we compile on have getopt now? We'll see. 2010-05-25 Karl Berry * texmf.cnf (shell_escape_commands): include fc-list for the luaotfload font cache. 2010-05-24 Karl Berry * texmf.cnf (font_mem_size): doc fix. 2010-05-21 Karl Berry * mktexpk: help msg, mention map files in error. 2010-05-20 Karl Berry * mktexdir, * mktexupd, * mktex.opt, * mktexnam.opt: systematize header comments. 2010-05-20 Peter Breitenlohner * kpseaccess.test: Allow for unexpected test results. 2010-05-18 Karl Berry * texmf.cnf (shell_escape): set to p. Trying restricted shells again. (shell_escape_commands): bibtex, bibtex8, kpsewhich, makeindex, repstopdf. Don't plan to add anything else for TL'10. * NEWS, * kpsewhich.c (read_command_line), * texmf.cnf (TEXMFCONFIG, TEXMFVAR): 2010. 2010-05-16 Peter Breitenlohner * access.c: Adapt comment to facts. * man/kpseaccess.man: Adapt to facts. 2010-05-16 Akira Kakuto *absolute.c, c-fopen.h, c-stat.h, config.h, debug.h, dir.c, elt-dirs.c, expand.c, getopt.c, getopt.h, getopt1.c, hash.c, kpsewhich.c, lib.h, mingw32.c, path-elt.c, pathsearch.c, progname.c, putenv.c, readable.c, strcasecmp.c, strstr.c, strtol.c, tex-file.c, tex-glyph.h, types.h, win32lib.h: untabify. 2010-05-15 Peter Breitenlohner * kpseaccess.test, kpsereadlink.test, kpsestat.test, kpsewhich.test: New shell scripts to test the programs. * configure.ac (LT_OBJDIR): AC_SUBST for kpsereadlink.test. * Makefile.am (TESTS, TESTS_ENVIRONMENT): Add the tests. 2010-05-15 Akira Kakuto *absolute.c: avoid late declaration. add support of UNC names (WIN32). *db.c: try ls-R only on WIN32. *debug.c: avoid late declaration. *elt-dirs.c: remove trailing whitespace. *lib.h: add variables in prototype. *pathsearch.c, tex-file.c: remove some spaces. *tex-glyph.c: add some spaces. 2010-05-15 Akira Kakuto *absolute.c, access.c, atou.c, c-ctype.h, c-pathch.h, c-std.h, cnf.c, concatn.c, config.h, db.c, db.h, debug.h, default.h, dir.c, elt-dirs.c, expand.c, extend-fname.c, find-suffix.c, fn.c, fontmap.c, getopt.c, kpathsea.c, kpsestat.c, kpsewhich.c, lib.h, line.c, magstep.c, magstep.h, make-suffix.c, mingw32.c, mingw32.h, path-elt.c, pathsearch.c, pathsearch.h, proginit.c, proginit.h, progname.c, readable.c, readable.h, readlink.c, rm-suffix.c, str-list.c, str-llist.c, strstr.c, tex-file.c, tex-glyph.c, tex-glyph.h, tex-hush.c, tex-make.c, tex-make.h, truncate.c, uppercasify.c, variable.h, version.c, win32lib.h, xbasename.c, xcalloc.c, xdirname.c, xfopen.c, xftell.c, xftello.c, xgetcwd.c, xopendir.c, xrealloc.c, xstat.c: remove trailing spaces. 2010-05-10 Peter Breitenlohner * c-fopen.h [SET_BINARY]: Add cast to void. 2010-05-09 Peter Breitenlohner * progname.c (kpathsea_set_program_name): Drop superfluous cast. * extend-fname.c, lib.h: Change return type of extend_filename() from 'string' to 'const_string'. * fontmap.[ch]: Change return type of kpathsea_fontmap_lookup() from 'string *' to 'const_string *', drop kpse_fontmap_lookup. * tex-file.c (target_fontmaps), tex-glyph.c (try_fontmap): Adjust. 2010-04-27 Manuel P\'egouri\'e-Gonnard * texmf.cnf: - s/pdf(lua(la)?tex)/dvi\1/ - add luatex before generic (for generic package specific to luatex) and similarly for xetex. 2010-04-22 Karl Berry * doc/kpathsea.texi, * doc/bugs.texi: Avoid over/underfull boxes. 2010-04-19 Peter Breitenlohner * texmf.cnf (max_strings.pbibtex): New defn. 2010-04-15 Karl Berry * kpsewhich.c (format_abbr_type): new type. (format_abbrs): new array. (format_abbr): new fn to use them. (find_format): call it. (help_message): new fn, including the abbreviations. 2010-04-12 Peter Breitenlohner * Makefile.am (EXTRA_DIST): Add bsnl.awk. 2010-04-11 Karl Berry * texmf.cnf ({TEXINPUTS,BIBINPUTS}.{ptex,platex,pbibtex}): new defns. 2010-04-11 Javier Mugica * getopt.c, getopt1.c: ANSIfy all fns. 2010-04-10 Karl Berry * progname.c (c-pathmx.h): #include unconditionally. * c-pathmx.h (PATH_MAX) [MAX_PATH]: #define PATH_MAX as MAX_PATH for Windows. * win32lib.h: include io.h, fcntl.h, direct.h. From Javier Mugica, 9 Apr 2010 22:04:46. 2010-04-09 Karl Berry * types.h: doc fixes. 2010-04-07 Peter Breitenlohner * man/kpseaccess.man, man/kpsestat.man, man/mktexpk.man, man/mktextfm.man: Uniform manpage formatting: bold for literals, italic for variable items, roman for meta items. 2010-04-05 Karl Berry * progname.h: doc fix. 2010-04-04 Karl Berry * bsnl.awk: tiny awk program to eliminate \-newline sequences. * Makefile.am (stamp-paths): call it. * texmf.cnf (TEXMF_RESTRICTED_SCRIPTS): use \-newline again. 2010-03-29 Peter Breitenlohner * lib.h, xcalloc.c, xmalloc.c, xrealloc.c: Change type of size arguments of xcalloc(), xmalloc, and xrealloc() from unsigned to size_t (incompatible change of ABI). Update version numbers to 6.0.0. 2010-03-24 Peter Breitenlohner * texmf.cnf (TEXMF_RESTRICTED_SCRIPTS): The make rules used to create paths.h can't handle backslash-newline (FIXME?). 2010-03-24 Karl Berry * texmf.cnf (TEXMFSCRIPTS): progname before engine, for consistency, and because the former is more specific. (TEXMF_RESTRICTED_SCRIPTS): new definition, for the w32 wrapper. (TEXMFDBS): reorder in file to be next to TEXMF, to make the relationship more apparent. No change in definition. 2010-03-23 Peter Breitenlohner * texmf.cnf (ent_str_size, glob_str_size): New for size of BibTeX (entry and global) strings. 2010-03-19 Peter Breitenlohner * texmf.cnf (BIBTEX_CSFILE): Default codepage and sort order file for BibTeX8. (max_strings): Also for BibTeX8 and BibTeXU. 2010-03-18 Karl Berry * texmf.cnf (TEXDOCS): remove .; better for texdoc not to be confused by files randomly in the current directory. 2010-03-11 Peter Breitenlohner * texmf.cnf: Append '.mf' to Metafont specific parameters. Add 'max_strings.bibtex', also for hash_size and hash_prime. 2010-03-09 Peter Breitenlohner * texmf.cnf: Append '.gftype' to GFtype specific parameters. * progname.h: Remove kpse_set_progname from exported API. Deprecated since 1998. Kept in library for Versions 5.x.y. 2010-03-08 Peter Breitenlohner * xrealloc.c (xrealloc): Allocate 1 byte if passed size 0. * xcalloc.c (xcalloc): Use 1 if passed nelem 0 or elsize 0. 2010-03-05 Peter Breitenlohner * texmf.cnf (line_length, max_rows, max_cols): GFtype parameters settable at runtime (used to be fixed values in gftype.ch). 2010-03-03 Peter Breitenlohner * texmf.cnf (screen_width, screen_depth): Increase Metafont screen size (used to be fixed values in mf.ch). 2010-03-01 Karl Berry * texmf.cnf (TW_LIBPATH, TW_INIPATH): TeXworks config/settings. 2010-02-26 Peter Breitenlohner * mingw32.c (dostounix_filename): Reactivate as extern KPSEDLL, used for gsftopk. 2010-02-23 Peter Breitenlohner * dir.c (kpathsea_dir_p), tex-make.c (maketex): [WIN32]: Cast the result of GetLastError() to int (may be or is DWORD). * tex-make.c (kpathsea_make_tex) [WIN32]: Avoid initialized ret. * mingw32.c (look_for_cmd): Declare suffixes and s as const. * config.h [WIN32]: Ensure that __STDC__ is #defined. #include , not . Diffs from Akira, 11 Feb 2010 11:03:39. * strstr.c (str): Add empty statement after label at the end of a block. From Javier Mugica, 23 Feb 2010 12:25:55. * mingw32.c (win32_get_long_filename): Declare extern KPSEDLL. 2010-02-20 Peter Breitenlohner * mingw32.c (win32_system): Declare as non-static, for web2c. * mingw32.h (win32_system): Declare as extern KPSEDLL. * c-proto.h, getopt.h (KPSE_DLL): Automatically #define for native WIN32 but not for MinGW32. 2010-02-18 Peter Breitenlohner * absolute.c (kpathsea_absolute_p): Unused param. * truncate.[ch] (kpse_truncate_filename): Removed. 2010-02-15 Karl Berry * tex-make.c [DJGPP]: change conditionals to __DJGPP__ for consistency. * progname.c () [__MINGW32__]: remove #include, it's redundant with kpathsea/config.h. () [__DJGPP__]: change conditional from DJGPP. Suggestion from Javier Mugica, 13 Feb 2010 20:46:12. 2010-02-14 Peter Breitenlohner * variable.c (kpathsea_var_value, expand): Treat strings returned by getenv() and kpathsea_cnf_get() as const. Replace kpathsea_var_expand() plus kpathsea_tilde_expand() by kpathsea_expand() and include expand.h instead of tilde.h. * tilde.[ch] (kpathsea_tilde_expand): Now used only in expand.c by kpathsea_expand(). Declare string param as non-const. (kpse_tilde_expand): Removed. * hash.[ch]: Adjust comments and remove trailing whitespace. 2010-02-13 Peter Breitenlohner * xopendir.c [WIN32]: Define neither xopendir nor xclosedir. * mingw32.[ch], progname.c: Remove set_home_warning(). From Akira. * xopendir.[ch] (xopendir): Declare string param as const. Declare prototypes if and only if functions are defined. * kdefault.c, tex-file.h, xputenv.c: Formatting, trailing whitespace. 2010-02-12 Peter Breitenlohner * dir.c (kpathsea_dir_p), elt-dirs.c (kpathsea_normalize_path), pathsearch.c (log_search, search, search_list), tex-file.c (kpathsea_find_file_generic): Add '#ifdef KPSE_DEBUG' to allow compilation with '-DNO_DEBUG'. * dir.c (kpathsea_dir_p): Replace kpse_normalize_path() by kpathsea_normalize_path(). 2010-02-11 Peter Breitenlohner * db.h (kpathsea_init_db, kpse_init_db, kpathsea_db_search, kpse_db_search, kpathsea_db_search_list, kpse_db_search_list), * fontmap.h (kpathsea_fontmap_lookup, kpse_fontmap_lookup), * getopt.h (_getopt_internal), * hash.h (hash_print, hash_free), * mingw32.h (init_user_info, set_home_warning, win32_get_long_filename, look_for_cmd, quote_args), * pathsearch.h (kpathsea_filename_component, kpse_filename_component, kpathsea_normalize_path, kpse_normalize_path), * str-list.h (str_list_init, str_list_concat, str_list_free, * str_list_concat_elements, str_list_uniqify), * str-llist.h (str_llist_add, str_llist_float), * tex-file.h (kpathsea_init_fallback_resolutions, kpse_init_fallback_resolutions), * tilde.h (kpathsea_tilde_expand, kpse_tilde_expand), * truncate.h (kpathsea_truncate_filename, kpse_truncate_filename), * xopendir.h (xopendir, xclosedir), * xstat.h (xstat, xlstat): Declare prototypes only within libkpathsea. 2010-02-10 Peter Breitenlohner * mingw32.c (get_home_directory, _parse_root, normalize_filename, dostounix_filename, unixtodos_filename, crlf_to_lf, parse_cmdline, build_cmdline, win32_system): Declare as static. (dostounix_filename, crlf_to_lf): Drop unused functions. (win32_system): Drop unused code for look_for_cmd() with 3 args. * mingw32.h: Remove decl of get_home_directory(), add quote_args(), use explicit 'extern'. * tex-make.c (maketex): Drop nested extern decl of quote_args(). * tex-make.h ({kpathsea,kpse}_make_tex), str-list.h (str_list_add): need KPSEDLL (from Akira). 2010-02-08 Peter Breitenlohner * mingw32.c (look_for_cmd): remove unused variable new_cmd, declare p and q as const and remove cast. 2010-02-07 Taco Hoekwater * mingw32.c (look_for_cmd): remove unused variable new, clean up preprocessor conditionals. Report by Hib Eris, tex-k 3 Feb 2010 12:11:42. 2010-02-01 Peter Breitenlohner * Makefile.am (kpseinclude_HEADERS): Add win32lib.h. 2010-02-01 Karl Berry * strstr.c, * strcasecmp.c, * getopt.c, * getopt.h, * getopt1.c: remove all redefinitions of const. 2010-01-31 Javier Mugica Support compilation with MSVC 7.1: * config.h (win32lib.h) [_WIN32 && !__MINGW32__]: include. (__STDC__) [WIN32]: do not define ourselves. * getopt.h (__STDC__): do not define ourselves. Instead, define const. * c-stat.h (oldnames.h) [WIN32]: is gone. * c-ctype.h (isascii): no oldnames.h here either. * win32lib.h: reinstate. 2010-01-25 Peter Breitenlohner * xputenv.c (kpathsea_xputenv): Don't use value of XRETALLOC(), XRETALLOC(addr, n, t) already assigns the new pointer to addr. 2010-01-22 Peter Breitenlohner * tex-make.c (maketex): Replace kpse_readable_file(fn) by kpathsea_readable_file(kpse,fn) also for WIN32. 2010-01-11 Taco Hoekwater * types.h (kpse_clua_format): new type. (kpse_def, kpse_def_inst): need KPSEDLL (from Akira). * tex-file.c (CLUA_ENVS): new define. (kpse_init_format): initialize it. * texmf.cnf (CLUAINPUTS): new definition. This implies using, e.g., bin/i386-linux/lib/luatex/lua/*.so in TL. 2010-01-05 Peter Breitenlohner * tex-file.c: Add alt_suffix ".pl" for kpse_opl_format and ".vpl" for kpse_ovp_format (for C version of opl2ofm/ovp2ovf). 2009-12-24 Karl Berry * HIER, INSTALL, README.CONFIGURE: remove, stale. * Makefile.am (EXTRA_DIST): change accordingly. * README, PROJECTS, access.c, readlink.c, mktex.opt, mktexdir, mktexdir.opt, mktexmf, mktexnam, mktexnam.opt, mktextfm, mktexupd: doc/email updates. 2009-12-21 Karl Berry * kpsewhich.c (find_format): had forgotten to increment the loop variable, hence the hang. From Akira. 2009-12-20 Karl Berry * kpsewhich.c (find_format): restore checking of kpse_fmt_format last, since a hang was reported by Angelo Graziosi, http://tug.org/pipermail/tlbuild/2009q4/001222.html. 2009-12-17 Karl Berry * c-proto.h (KPSE_DLL) [WIN32]: #define in this case, per Akira. 2009-12-15 Karl Berry * kpsewhich.c (-safe-in-name, -safe-out-name): new options. * doc/kpathsea.texi: document them. * tex-file.c (kpathsea_name_ok): introduce silent argument; change callers. * tex-file.h (kpathsea_{in,out}_name_ok_silent): declare these, now used in kpsewhich. 2009-12-14 Karl Berry * kpsewhich.c (separator): remove never-used variable/option. * kpsewhich.c (find_format): remove rearrangement of checking kpse_fmt_format last, since it doesn't have any special extensions now (what were they?). 2009-12-11 Alexander Cherepanov * tex-file.c (kpathsea_name_ok): correct check for /../ so that "file..txt" is still allowed. tlsec mail, 05 Dec 2009 12:33:35. 2009-12-05 Karl Berry Suggested/reported by Daniel Luecking, 16 Nov 2009 11:58:00: * kpsewhich.c (init_more): split out lengthier initializations to own fn. Initialize all mktex programs to false, so that cnf/env settings such as MKTEXPK=1 don't apply to kpsewhich. (read_command_line) <--[no-]mktex>: set must_exist, since otherwise the mktex program is never called. * doc/kpathsea.texi (Path searching options): minimally describe this. 2009-12-04 Karl Berry * tex-file.c (kpathsea_name_ok): not_ok if /..foobar. Report/patches from Alexander and Akira. 2009-12-03 Karl Berry * absolute.c, * absolute.h, * cnf.c, * db.c, * dir.c, * elt-dirs.c, * expand.c, * kdefault.c, * kpsewhich.c, * lib.h, * magstep.h, * pathsearch.c, * pathsearch.h, * proginit.c, * progname.c, * readable.h, * tex-file.c, * tex-file.h, * tex-glyph.c, * tex-glyph.h, * tex-make.c, * types.h, * xputenv.c: formatting/doc fixes. 2009-12-01 Karl Berry * tex-file.c (kpathsea_name_ok): formatting, doc fixes, start error message on a new line. 2009-12-01 Alexander Cherepanov * BUGS, * doc/bugs.texi: typo fix. 2009-11-18 Peter Breitenlohner * tex-file.c (target_fontmaps, target_asis_name, target_suffixed_names, kpathsea_find_file_generic): Revised handling of const to avoid warnings. 2009-11-18 Peter Breitenlohner * tex-file.c (kpathsea_out_name_ok): Also disallow writing files in dotted directories. From Akira Kakuto . 2009-11-17 Peter Breitenlohner * types.h (kpathsea_instance): For W32/Mingw/Cygwin declare suffixlist, listing the executable file suffixes. * progname.c (kpathsea_set_program_name): Build suffixlist. * tex-file.c (kpathsea_out_name_ok): Use suffixlist. From Akira Kakuto . * kpathsea.c: Remove obsolete initializer. (kpathsea_finish): Destroy suffixlist (not yet used). 2009-11-14 Peter Breitenlohner * tex-file.c (kpathsea_out_name_ok): Allow writing of .pl files. From Akira Kakuto . 2009-11-13 Peter Breitenlohner * tex-file.c (kpathsea_out_name_ok): On Windows disallow writing to executable files (.com, .exe, .bat, etc). From Akira Kakuto . 2009-11-07 Peter Breitenlohner * doc/kpathsea.texi (Calling sequence): Document the new functions kpathsea_out_name_ok and kpathsea_in_name_ok. Recommend Automake in addition to Autoconf; update URL for both. 2009-10-24 Peter Breitenlohner * tex-file[ch] ({kpathsea,kpse}_{in,out}_name_ok): New fuctions renamed and moved from ../web2c/lib/texmfmp.c to here. Update version numbers to 5.1.0. 2009-10-24 Peter Breitenlohner * Makefile.am (bin_links, install-exec-hook, uninstall-hook), man/Makefile.am (man1_links, install-data-hook, uninstall-hook): Moved handling of texhash symlinks from ../tetex/ to here. 2009-10-20 Karl Berry * texmf.cnf (shell_escape): doc fixes to discourage shell_escape=p. 2009-10-19 Manuel P\'egouri\'e-Gonnard * texmf.cnf: set shell_escape back to 'f': 'p' is broken on Unix. 2009-10-15 Manuel P\'egouri\'e-Gonnard * texmf.cnf (shell_escape_commands): add repstopdf, a version of epstopdf with restrictions intended to make it safer. Remove bibtex & makeindex for now, they don't respect openout_any. 2009-10-13 Karl Berry * texmf.cnf (shell_escape_commands): remove the ps-to-pdf programs for now, they don't respect openout_any. 2009-10-09 Karl Berry * texmf.cnf (TEXDOC): omit now-unneeded man for texdoc (from mpg). 2009-09-22 Peter Breitenlohner * tex-file.c: Add .vf to regcognized suffixes for kpse_ovf_format. 2009-09-21 Karl Berry * texmf.cnf (shell_escape_commands): remove pygmentize, as intended. 2009-09-04 Peter Breitenlohner * lib.h (xfseek, xfseeko, xftell, xftello), xfseek.c, xfseeko.c, xftell.c, xftello.c: Constify string param filename. 2009-09-03 Karl Berry * kpsewhich.c (find_format): remove dvipdfmx.cfg, since there is no special path for it, and add texglyphlist.txt. 2009-08-22 Peter Breitenlohner * version.[ch] (kpathsea_version_string, kpathsea_bug_address): Constify these strings. 2009-08-18 Peter Breitenlohner * tex-file.c (TRY_ENV): remove unused macro. 2009-08-15 Karl Berry * texmf.cnf (shell_escape_commands): remove many more, mail from Heiko, 14 Aug 2009 07:58:02 et al. 2009-07-23 Karl Berry * mktexlsr: update help msg. * texmf.cnf (shell_escape_commands): remove tex programs (too dangerous?), add other indexing programs, change pdfcrop to rpdfcrop, convert to imgconvert. 2009-07-22 Taco Hoekwater * texmf.cnf (sizes): fix some documentation strings for MetaPost, which nowadays uses and needs just a handful of the array size variables. 2009-07-07 Karl Berry * texmf.cnf (MAKEMPX): remove, this causes btex..etex to fail in current mpost. 2009-07-02 Peter Breitenlohner * Makefile.am (kpathsea.h): simplify, no more grep. 2009-06-30 Peter Breitenlohner * Makefile.am (kpathsea.h): avoid GNU grep specific code. 2009-06-30 Karl Berry * variable.c (expand): make boolean, to return whether there actually was a variable that got expanded. (kpathsea_var_expand): if no variable was expanded, insert the unexpanded $foo in the result, so we can read variable names with dollar signs. Bug report from Gerben Wierda. 2009-06-25 Peter Breitenlohner * version.h (new): header file for definitions in version.c. * version.c: #include . * Makefile.am: add version.h. * kpsewhich.c: #include . 2009-06-23 Peter Breitenlohner * concatn.[ch], tex-file.[ch]: use ANSI C function declarations and prototypes instead of PVAR?[CH] macros. #include , not #include . * c-vararg.h (removed): no longer used. * kpathsea.h (removed): no longer distributed. * Makefile.am: remove c-vararg.h, rebuild kpathsea.h. * c-proto.h: assume HAVE_PROTOTYPES, remove AA, P?[CH] macros. 2009-06-22 Peter Breitenlohner * getopt.c (_getopt_internal): explicit braces to avoid ambiguous 'else'. 2009-06-19 Peter Breitenlohner * Makefile.am: enable compiler warnings. * kpathsea.c (KPATHSEA_CAN_FREE): disable not yet used code. (str_llist_free, cache_free): declare as static, not yet used. (kpathsea_finish): avoid warning about not yet used variables. * tex-glyph.c (try_size): avoid uninitialized warning. * mingw32.c: avoid unused static variable. 2009-06-15 Karl Berry * texmf.cnf (TEXINPUTS.jadetex,pdfjadetex): search latex, not plain. Thus we find the latex fonttext.cfg before cslatex's, and thus we can build the format using latex.ltx, and thus we can avoid & in fmtutil.cnf, and thus we can avoid painful infinite loops on failure, or something. http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=427562 2009-06-10 Karl Berry * ac/web2c.ac (mktexfmt): default to yes. 2009-06-02 Karl Berry * types.h (kpse_file_format_type): add kpse_mlbib_format, kpse_mlbst_format for Jean-Michel Hufflen and MlBibTeX. * texmf.cnf (MLBIBINPUTS, MLBSTINPUTS): define default paths. * tex-file.c (kpathsea_init_format): initialize them. * doc/kpathsea.texi: document this. 2009-06-01 Karl Berry * Update version numbers to 5.0.0. * kpsewhich.c (lookup): translate ; to : in user_path, for consistency. Also do path expansions as promised in the documentation. Report from Tomek T. 2009-05-15 Peter Breitenlohner * absolute.c, hash.c: Avoid C99isms (variable declaration not at the beginning of a block). From Vladimir Volovich. 2009-05-12 Karl Berry * tex-file.c (kpathsea_init_format): set suffix_search_only for sfd, otf, and lig. Output binmode value for debugging. 2009-05-11 Karl Berry * Makefile.am (paths.h): depend on stamp-paths, instead of recursively invoking it. Else it does not get invoked once it is created. 2009-05-11 Karl Berry * types.h (kpse_file_format_type): add kpse_fea_format, kpse_cid_format for Hans/Taco. * texmf.cnf: define default paths (fonts/fea// and fonts/cid//). * tex-file.c (kpathsea_init_format): initialize them. Also, for kpse_enc_format, set suffix_search_only=true. * doc/kpathsea.texi: document this. 2009-04-18 Karl Berry * texmf.cnf (shell_escape_commands): add fc-match, request from Elie Roux, 17 Apr 2009 17:22:55. 2009-04-05 Taco Hoekwater * doc/kpathsea.texi, * doc/bugs.texi: updates for new reentrant API, mostly for kpse->debug replacing the global kpathsea_debug. 2009-04-02 Peter Breitenlohner * config.h: For __MINGW32__ temporarily define eof as macro while including . From Taco Hoekwater . 2009-03-19 Peter Breitenlohner * kpathsea.c: Do not use initializer for kpse_def_inst (FIXME: to be completely removed). 2009-03-17 Taco Hoekwater * types.h: Define kpse_debug_hash_lookup_int. 2009-03-17 Peter Breitenlohner * c-std.h, getopt.h: Avoid non-prototype declarations for C++. 2009-03-16 Peter Breitenlohner * db.c, debug.c, debug.h, dir.c, elt-dirs.c, hash.c, pathsearch.c, progname.c, tex-file.c, variable.c: Rename KPSE_DEBUG_P into KPATHSEA_DEBUG_P (using kpse->debug) Define KPSE_DEBUG_SET and KPSE_DEBUG_P (using kpathsea_debug) compatible with old API. 2009-03-12 Taco Hoekwater New Kpathsea API: Make libkpathsea reenterable. * extend-fname.c, file-p.c, xftello.c, make-suffix.c, xcalloc.c, line.c, readlink.c, concat3.c, line.h, str-llist.c, kpsestat.c, xmalloc.c, str-llist.h, xbasename.c, xfseeko.c, xgetcwd.c, concat.c, xstat.h, atou.c, rm-suffix.c, str-list.c, find-suffix.c, hash.c, xfseek.c, debug.c, str-list.h, hash.h, xopendir.c, uppercasify.c, debug.h, xopendir.h, xftell.c, xfopen.c, access.c, fn.c, xdirname.c, fn.h, xstrdup.c, xrealloc.c, xstat.c: All of these files have stopped using the PxC and PxH macros. Besides this change, there are a few extra changes to specific files. * debug.c: add a guard that disables debug reporting if the oldinterface is not compiled in the library, and uses the kpse_def_inst structure otherwise. * hash.c (hash_free): new function. * concat3.c: now allows the second and third argument to be NULL * tex-hush.h, tex-make.c, progname.h, dir.c, absolute.c, expand.c, tex-make.h, tex-glyph.c, tex-file.h, absolute.h, expand.h, truncate.c, variable.c, tex-glyph.h, default.h, variable.h, truncate.h, kdefault.c, readable.c, tilde.c, fontmap.c, readable.h, tilde.h, cnf.c, fontmap.h, cnf.h, path-elt.c, pathsearch.c, elt-dirs.c, db.c, pathsearch.h, db.h, proginit.c, magstep.c, proginit.h, magstep.h, tex-hush.c: All of these files have stopped using the PxC and PxH macros. In all of these files, the exported functions whose names started with 'kpse_' have been renamed to use the prefix 'kpathsea_' instead, and they now required an extra argument that is a kpathsea instance structure. New one-line functions with the old exported names have been added that use a default kpathsea instance. The functions are build and exported only if the preprocessor macro KPSE_COMPAT_API is defined (which it usually is, though). Besides these changes, there are a few extra changes to speficic files. * progname.c: Removed the variables program_invocation_name and program_invocation_short_name, these are now part of the kpathsea instance (in renamed form) * progname.c, xputenv.c, lib.h: Some extra preprocessor macros (LIB_FATALx) are added and a few others are changed so that the library functions can give the proper invocation_name in fatal error messages * tex-file.c: The default instance variable is moved to the new file kpathsea.c * kpathsea.c: New file containing the default instance variables and the new functions kpathsea_new() and kpathsea_finish() * version.c: Variable kpse_bug_address renamed to kpathsea_bug_address. * types.h: Added a preprocessor define KPSE_COMPAT_API, used throughout the library. If it is undefined then the old-style functions and definitions are not compiled. Removed the w32-specific 'cached_home_directory' and 'volumes' variables from the instance structure. Added 'invocation_name' and 'invocation_short_name' variables to the instance structure. Removed the 'kpse_' prefix from the instance variables fallback_font, fallback_resolutions_string, fallback_resolutions, and format_info. Added prototypes for kpathsea_new() and kpathsea_finish(). Added #defines for kpse_bug_address, kpse_fallback_font, kpse_fallback_resolutions_string, kpse_fallback_resolutions, kpse_format_info, program_invocation_name, and program_invocation_short_name * mingw32.c: Disabled home directory caching: removed the function uncache_home_directory() and the cached_home_directory structure item. Disabled volume queries: removed win32_volumes typedef, the static functions lookup_volume_info(), add_volume_info(), and GetCachedVolumeInformation(), as well as the functions get_volume_info() and is_fat_volume(). * mingw32.h: Removed volume_user_date typedef and added declaration for get_home_directory() * kpsewhich.c: stop using PxC macros and switch to new API interface * configure.ac: Bump the version numbers to 5.0.0 (provisionally) * Makefile.am: Add kpathsea.c 2009-03-05 Peter Breitenlohner Part 2 of patches from Taco Hoekwater for __MINGW32__ * mingw32.c: new file. * mingw32.h (look_for_cmd): use only two arguments. * tex-make.c (maketex): arg4 of ReadFile is DOWRD, not int. 2009-03-04 Peter Breitenlohner Part 1 of patches from Taco Hoekwater for __MINGW32__ * mingw32.h: new. * c-ctype.h, c-stat.h: do not #include . * config.h: #include , not * progname.c: do #include . * xopendir.c: do build xopendir for __MINGW32__. * progname.c, progname.h: changed static function selfdir() into exported function kpse_selfdir() for use in luatex. 2009-02-28 Karl Berry * texmf.cnf (shell_escape_commands): add pstopdf and convert per Dick Koch. 2009-02-26 Karl Berry * texmf.cnf (shell_escape): set to new possibility p. (shell_escape_commands): first cut at allow list. 2009-02-21 Karl Berry * tex-file.c: doc fixes. 2009-02-12 Peter Breitenlohner * xputenv.c: prototype for putenv() if !HAVE_DECL_PUTENV. 2009-02-06 Karl Berry * texmf.cnf (TEXINPUTS.lua*): add definitions for luatex, lualatex, pdfluatex, pdflualatex. 2008-12-31 Karl Berry * kpsewhich.c (find_format): special-case XDvi to kpse_program_text_file ("other text files"). 2008-12-15 Karl Berry * kpsewhich.c (main): warn if the explicit --user-format string is not recognized. 2008-12-13 Karl Berry * elt-dirs.c (do_subdir): only do the st_nlink trick if st_nlink is exactly 2; Cygwin sets st_nlink to 1 now. Remove special case for the Amiga. * kpathsea.texi (Subdirectory expansion): correct preprocessor name to ST_NLINK_TRIC. Report from Ken Brown, tlbuild mail 12 Dec 2008 13:42:19. 2008-11-10 Karl Berry * kpsewhich.c (USAGE): mention need for -engine when looking up format files. Some reformatting. 2008-09-20 Karl Berry * texmf.cnf: strongly warn that customizations in this file will be lost by later updates. 2008-08-05 Karl Berry * mktextfm (MAG): set back to 1. mag=0 fails with larm1000.mf, and we're not going to fix the fonts. 2008-07-08 Karl Berry * configure.in: version 3.5.7. 2008-07-06 Karl Berry * withenable.ac (texmfmain): do not bother with long verbose complaint when the tree can't be found, since this is normal in TL. 2008-07-05 Karl Berry * mktextfm (MAG): set to 0; why were we using MAG=1? Left over from when we included pregenerated pk's in the distribution? 2008-07-04 Karl Berry * texmf.cnf (max_strings): increase to 500000. ctt posting from Benno Puetz, http://groups.google.com/group/comp.text.tex/browse_thread/thread/2c3aa2d09b4625e3 * progname.c [HAVE_PROGRAM_INVOCATION_NAME]: remove all #ifdef's except around the declaration, so that we always use our own code to compute them. This avoids painful system dependencies. 2008-07-02 Karl Berry * mktexlsr: doc fix. * kpathsea.texi (Path searching options): mention --engine=/ trick. 2008-06-16 Karl Berry * texmf.cnf (TEXMFDOC): new var. (TEXMFDBS): use it, so ls-R gets created there. (TEXMFDOCDIR): use it. [Reminder: the texmf.cnf here in Build/ is slaved to the one in Master/.] 2008-06-15 Karl Berry * mktexlsr: once again respect dir names given on cmd line. 2008-06-12 Karl Berry * tex-file.c () : cmap files (texmf/fonts/cmap) do not have the .cmap suffix. (t1.cmap, et al., are TeX files, not cmap files.) So remove the SUFFIXES definition. 2008-05-31 Karl Berry * elt-dirs.c (kpse_normalize_path): only output debug line if value is not 1. Reformat. * tex-file.c (INIT_FORMAT): construct human-formatted list of envvars that are considered for each format, as requested by Nelson Beebe and others over the years. (init_format) [KPSE_DEBUG]: include it in the debugging output. (concatn_with_spaces): the function to make the list. * tex-make.c: concatn.h unused, removed. * db.c (DB_HASH_SIZE): 32003 seems a better compromise between the tiny texmf (~1300 entries) and huge texmf-dist (~62000 entries). 2008-05-29 Karl Berry * db.c (DB_HASH_SIZE): increase to 75000+, the actual size of current ls-R. * cnf.c: doc fixes. * Makefile.in (stamp-paths): change var substitutions to use /nonesuch. (texmf.sed, texmf.cnf): remove targets, we will juse use texmf.cnf. (install-data): texmf.cnf is in srcdir now. * texmf.in: remove. * texmf.cnf: new file, slave to Master/texmf/web2c/texmf.cnf. 2008-05-28 Karl Berry * mktexlsr: support --quiet/--silent. 2008-05-24 Karl Berry * kpathsea.texi (Specially-recognized files): new node to document the special filenames kpsewhich now knows about. 2008-05-23 Karl Berry * tex-file.c (init_path): do not free the translated env_value, else raw_path ends up pointing to that freed memory. * default.h: mention that result is always in new memory. * kpsewhich.c: recognize texmf.cnf as kpse_cnf_format. * kpsewhich.c (find_format): use the right formats for texmf.cnf, dvipdfmx.cfg, fmtutil.cnf, mktex.cnf, and updmap.cfg (as well as config.ps, earlier). Same values as texmf/texconfig/tcfmgr.map. 2008-05-18 Karl Berry * mktexlsr (vc_dirs): ignore more than just .svn. Original suggestion from Michael Schutte, Debian bug 481371, 16 May 2008 11:31:20. 2008-05-05 Karl Berry * recorder.h: declare our fn variables extern as they should be. * cnf.c: make the definitions here. 2008-05-04 Karl Berry * finish changing license notices to use FSF url instead of physical address, other minor consistency changes. 2008-05-01 Karl Berry * tex-file.c (ALT_SOURCES_SUFFIXES): new macro (.dtx, .ins). (kpse_init_format) : use it. 2008-04-30 Karl Berry * kpsewhich.c (read_command_line): leave two spaces before alt suffixes, just so they can be distinguished. * tex-file.c (ALT_TEX_SUFFIXES): define this (rather belatedly) to check for .sty, .cls, etc. Rename other *_SUFFIXES to ALT_*_SUFFIXES. * kpathsea.texi (File lookup): Document this. * tex-file.c: (target_fontmaps, target_asis_name, target_suffixed_names): new fns. (kpse_find_file_generic): call them, respecting new cnf value try_std_extension_first. 2008-04-29 Karl Berry * Makefile.in (install-data): do not cd $(srcdir) in any rule, that fails when the install program is specified by a relative path. 2008-03-27 Karl Berry * tex-make.c: start "running" on a new line, tweak other msgs. 2008-03-07 Peter Breitenlohner * kpsewhich.c (main): change type of value from string to const_string, to avoid warning. * progname.c (selfdir): change type of elt from string to const_string, to avoid warning. * xputenv.c: change type of saved_env from const_string to string, to avoid warning. 2008-03-06 Peter Breitenlohner * access.c, readlink.c: removed `#include ' preceeding `#include ' (which in turn includes stdio.h). * xfseek.c, xftell.c: reverted to state before 2008-02-21. * xfseeko.c, xftello.c (both new): new functions using off_t instead of long, and fseeko instead of fseek. * lib.h: prototypes for xfseek, xfseeko, xftell, and xftello. * Makefile.in (objects): added xfseeko.lo and xftello.lo. * configure.in: construct package and (shared) library version from m4_define'd parts, subtitute KPSE_LT_VERS ... * Makefile.in ($(kpathsea)): ... here. 2008-03-04 Peter Breitenlohner * common.ac: add AC_SYS_LARGEFILE and AC_FUNC_FSEEKO. 2008-03-02 Karl Berry * cnf.c (read_all_cnf): change warning text when texmf.cnf is not found to make it clear we are giving it, and keep it on one line. 2008-01-29 Peter Breitenlohner * common.ac: replace the private macro KPSE_STRUCT_ST_MTIM by AC_CHECK_MEMBERS([struct stat.st_mtim]). * common.ac: use AC_CHECK_DECLS([strstr]) and ... * lib.h: ... replace `#ifndef HAVE_STRSTR' by `#if !HAVE_DECL_STRSTR'. * common.ac: Move AC_CONFIG_HEADERS from here ... * configure.in: ... to here and replace PACKAGE_... by KPSE_PACKAGE_... in c-auto.h, to avoid conflicts with other packages. * configure.in: use AH_TOP, AH_BOTTOM, and AC_DEFINE's third argument to provide autoheader templates ... * common.ac: m4 code to generate AC_DEFINE with a third argument for MAKE_..._BY_DEFAULT and set them to 0 or 1 ... * withenable.ac: use AC_DEFINE's third argument to provide autoheader templates ... * acconfig.h: ... removed. 2008-02-24 Martin Schr\"oder * lib.h: systypes.h instead of c-std.h 2008-02-23 Martin Schr\"der * lib.h: include c-std.h to get off_t from stdio.h 2008-02-21 Martin Schr\"oder * lib.h, xfseek.c, xftell.c: LFS support: use off_t instead of long and fseeko instead of fseek 2008-02-14 Karl Berry * texmf.in (font_mem_size): increase to 3000000. (font_max): increase to 5000 (max_font_max increased in tex.ch). 2008-02-11 Karl Berry * install.texi: mention mktexfmt, other mktex updates. (Bug report from Ken Brooks, 03 Aug 2006 15:15:03.) 2008-02-08 Karl Berry * texmf.in: texlive2008 to match texmf/web2c/texmf.cnf. 2008-01-29 Peter Breitenlohner Convert from autoconf-2.13 to autoconf-2.59+: * Makefile.in: Add @configure_input@ line. * aclocal.m4 (new): Generated (aclocal -I ../m4). * configure: Regenerated (autoconf). 2008-01-25 Karl Berry * variable.c (expand): do ~ expansion here too, for --expand-var, or mktexnam fails. Report from Werner Lemberg, 24 Jan 2008 02:19:49. * kpathsea.texi (Auxiliary tasks): document this. 2008-01-21 Karl Berry * kpsewhich.c, kpathsea.texi: document --all and --subdir. * db.c through tex-file.c: replace FSF physical address with url. 2008-01-18 Karl Berry * kpsewhich.c (subdir_match): XRETALLOC is a statement not a function. * pathsearch.c (search_list): remove unused variable uniq_list. 2008-01-16 Karl Berry * absolute.c through config.h: replace FSF physical address with url. 2008-01-15 Karl Berry * variable.c (kpse_var_value): only free if new memory. * tex-file.c (kpse_find_file_generic): call kpse_make_tex if the first element of the list is NULL, not the list itself. 2008-01-14 Karl Berry * variable.c (kpse_var_value): also do ~ expansion. * variable.h: adjust comments. * kpathsea.texi (Auxiliary tasks): document this. * tilde.c (HOMEVAR): new #define; "USERPROFILE" on Windows, "HOME" else. * tilde.h: adjust comments. * kpathsea.texi (Tilde expansion): document this. 2008-01-13 Karl Berry * remote.c-no: remove this stub. Suggestion from Martin. * mktexpk: use $MT_MKTEXDIR in the error message if making PKDESTDIR fails, instead of hardwiring mktexdir. From Javier, 7 Jan 2008 11:33:18. * kpsewhich.c (subdir_match): protect again loc going infinitely negative. Found by dak, 8 Jan 2008 14:51:08. 2008-01-05 Karl Berry * texmf.in (progname, engine): distinguish the unset values. (main_memory): increase to 3M. (font_mem_size): increase to 2.5M. (trie_size): increase to 400K. (save_size): increase to 50K. These size changes per gwtex (except a bit more). 2008-01-02 Karl Berry * c-std.h (ALLOC_RETURN_TYPE) [!STDC_HEADERS]: just use void in the unlikely event we're declaring *alloc ourselves. No modern system uses char * for them. 2007-12-23 Karl Berry * kpsewhich.c (subdir_match): new fn. (lookup): call it if requested. (subdir_paths): new global. (read_command_line): new option --subdir. 2007-12-22 Karl Berry * kpsewhich.c (lookup): handle --all for regular lookups as well as user-specific paths. * pathsearch.c (search_list): uniqify list before returning. (kpse_path_search_list_generic): new fn. (kpse_all_path_search_list, kpse_path_search_list): rewrite to call ..._generic. * pathsearch.h (kpse_path_search_list_generic): declare it. * str-list.c (str_list_uniqify): new fn. * str-list.h (str_list_uniqify): declare it. * tex-file.c (kpse_find_file_generic): new name for kpse_find_file code, with addition of argument to find all. (kpse_find_file): rewrite to call ..._generic. * tex-file.h (kpse_find_file_generic): declare it. 2007-12-17 Karl Berry * kpathsea.texi (Path searching options): clarify --expand-path doc. 2007-12-15 Karl Berry * kpsewhich.c (read_command_line, USAGE): improve --version and --help messages. 2007-12-01 Karl Berry * texmf.in (MPMEMS, MFBASES, TEXFORMATS): switch to /$engine, to try to avoid finding a format for the wrong engine. From Akira. 2007-11-05 Karl Berry * texmf.in (allow_multiple_suffixes): unimplemented. Reported by Akira, 17 Feb 2007 15:44:39. 2007-10-24 Karl Berry * mktexpk (MODE) <720>: epscszz. From Akira. (PKDESTDIR): Quote. From Paul Vojta, tex-k 22 Oct 2007 17:38:56. 2007-09-11 Karl Berry * texmf.in (TRFONTS): don't recurse through /usr. Report from Michail Vidiassov, mp-i 10 Sep 2007 12:55:10. 2007-08-27 Karl Berry * fontmap.c (map_file_parse): free the original pointer, not the potentially moved one (after whitespace skipping). From: "George N. White III", 25 Jul 2007 11:27:12. 2007-07-29 Karl Berry * depend.mk: regenerate again. 2007-07-24 Karl Berry * recorder.h (kpse_input, kpse_output): use const_string as argument, not just char *, to avoid warning. * fontmap.c (map_file_parse): kpse_record_input if requested. From Akira, 23 Jul 2007 10:20:58 (original report from George White). 2007-07-15 Karl Berry * depend.mak: update. 2007-07-06 Karl Berry * tex-file.c (init_path) : let's make the format name be lua rather than luatex; otherwise kpsewhich -format=luatex finds kpse_tex_format sometimes, and it seems unnecessary to debug that just now. Also, set suffix_search_only=true. (LUA_SUFFIXES): put compiled suffixes first. 2007-07-05 Karl Berry * tex-file.h (kpse_file_format_type): define kpse_lua_format. * tex-file.c (LUA_ENVS, LUA_SUFFIXES): new macros (init_path): initialize kpse_lua_format. * texmf.in (LUAINPUTS): add $TEXINPUTS per Hans and Taco. 2007-06-14 Karl Berry * texmf.in: doc fix ({a,b} is not deprecated). 2007-05-19 Karl Berry * texmf.in (SYSTEXMF): add TEXMFSYSVAR (thread around 7mar07). 2007-05-05 Karl Berry * kpsewhich.c (find_format): hardware kpse_dvips_config_format for config.ps. * texmf.in (TEXMFMAIN, TEXMFDIST, TEXMFLOCAL, TEXMFSYSVAR, TEXMFSYSCONFIG, VARTEXFONTS, MIMELIBDIR, MAILCAPLIBDIR, TEXMFNCF): use @texmf@ etc. expansions so that (hopefully) --disable-multiplatform works again. For TEXMFCNF, restore inclusion of $TEXMF/web2c, too. Reported by Peter M. 2007-03-21 Karl Berry * install.texi (Shared library): remove mention of klibtool. 2007-03-09 Akira Kakuto * tex-file.c (kpse_init_format): reduce to just .fmt; and allow both .t42 and .T42. 2007-02-26 Karl Berry * bugs.texi (Logging): mention pdftex -recorder and strace et al. (Bug checklist): Remove my old physical address. 2007-02-02 Karl Berry * texmf.in (OVFFONTS): search for vf. (OFMFONTS): explicitly adding TFMFONTS seems unnecessary. From Hans and Taco, 25 Jan 2007. 2006-12-30 Karl Berry * configure.in (KPSEVERSION): 3.5.6. 2006-12-29 Karl Berry * tex-make.c (set_maketex_mag): deleted wrong extra arg; do not generate args with spaces for mf. From Akira. 2006-12-26 Karl Berry * tex-make.c: (set_maketex_mag): remove spurious extra argument `r' to sprintf. (maketex): remove unused variable status. 2006-12-25 Karl Berry * mktexlsr: support --verbose. 2006-12-14 Karl Berry * texmf.in: unify with TL texmf.cnf to make only real differences show up. 2006-12-09 Karl Berry * c-memstr.h (strings.h): don't include if HAVE_STRING_H (as all systems should, these days). Reported by vvv. 2006-07-15 Karl Berry * expand.c (kpse_expand_kpse_dot): omit empty path elements from TEXMFCNF, per http://bugs.debian.org/358330. Patch from Julian Gilbey, tex-k/tex-live mail 27 Mar 2006 19:32:43 +0100. 2006-02-03 Karl Berry * mktexlsr: ignore .svn directories. 2005-08-13 Olaf Weber * kpsewhich.c: Update copyright message. 2005-08-03 Olaf Weber * README: Change references to COPYING and COPYING.LIB to GPL and LGPL. * kpathsea.texi: Change references to COPYING and COPYING.LIB to GPL and LGPL. * readlink.c: Correct license banner. 2005-07-27 Olaf Weber * Makefile.in: Add comment to start of kpathsea.h. * absolute.h, acconfig.h, c-ctype.h, c-dir.h, c-errno.h, c-fopen.h, c-limits.h, c-memstr.h, c-minmax.h, c-namemx.h, c-pathch.h, c-pathmx.h, c-proto.h, c-stat.h, c-std.h, c-unistd.h, c-vararg.h, cnf.h, concatn.h, config.h, db.h, debug.h, default.h, expand.h, fn.h, fontmap.h, getopt.h, hash.h, lib.h, line.h, magstep.h, pathsearch.h, proginit.h, progname.h, readable.h, str-list.h, str-llist.h, systypes.h, tex-file.h, tex-glyph.h, tex-hush.h, tex-make.h, tilde.h, truncate.h, types.h, variable.h, xopendir.h, xstat.h: Update copyright, license to LGPL 2.1. 2005-07-26 Olaf Weber * access.c, readlink.c: Update copyright, license text. * atou.c, absolute.c, cnf.c, concat.c, concat3.c, concatn.c, db.c, debug.c, dir.c, elt-dirs.c, expand.c, extend-fname.c, file-p.c, find-suffix.c, fn.c, fontmap.c, getopt.c, getopt1.c, hash.c, kdefault.c, kpsestat.c, kpsewhich.c, line.c, magstep.c, make-suffix.c, path-elt.c, pathsearch.c, proginit.c, progname.c, readable.c, rm-suffix.c, str-list.c, str-llist.c, strcasecmp.c, strstr.c, strtol.c, tex-file.c, tex-glyph.c, tex-hush.c, tex-make.c, tilde.c, truncate.c, uppercasify.c, variable.c, version.c, xbasename.c, xcalloc.c, xdirname.c, xfopen.c, xfseek.c, xftell.c, xgetcwd.c, xopendir.c, xrealloc.c, xstat.c, xstrdup.c: Update copyright, license to LGLP 2.1. * xmalloc.c, xrealloc.c: Update copyright, license to LGPL 2.1. Don't include stdio.h directly, it comes via config.h. 2005-07-25 Olaf Weber * texmf.in: Increase trie_size. Remove inaccurate comment about its limits. * common.ac: Remove the check for SMART_PUTENV, the xputenv code has been rewritten not to need this. * tex-file.c (kpse_init_format): Add uppercase versions of the .ttf and .ttc suffixes for truetype fonts. Don't require a recognized suffix. * types.h: Don't #define true if it is already defined. From Karl Berry. * mktexmf: Additional change for generating cbgreek from Thomas. 2005-07-12 Olaf Weber * mktexmf: Patterns for cbgreek weren't inclusive enough. From Thomas. 2005-07-10 Olaf Weber * tex-file.c (kpse_init_format): Revive .otf extension for kpse_opentype_format, requested by Akira Kakuto . * tex-make.c (maketex): Print the name of the failing command instead of always mktexpk. From Karl berry . * acconfig.h: Remove SMART_PUTENV code. * xputenv.c (xputenv): Replace with code that doesn't depend on the SMART_PUTENV check. (common.ac): Remove SMART_PUTENV check code. 2005-06-29 Olaf Weber * tex-make.c: Metafont doesn't like literals larger than anout 4000, so try to avoid them when specifying magnifications. From Werner Fink . * hash.h [KPSE_DEBUG]: Add KPSEDLL to declaration of kpse_debug_hash_lookup_int. From Jan Nieuwenhuizen . 2005-06-26 Olaf Weber * xt.ac: Fully quote the arguments of AC_ARG_WITH. From Peter Breitenlohner. * withenable.ac: Fully quote arguments of AC_ARG_WITH. From Peter Breitenlohner. * configure.in: Syntax changes to match autoconf2.5x. From Peter Breitenlohner. Version to 3.5.5. * common.ac: Fully quote AC_CONFIG_HEADERS. From Peter Breitenlohner. * Makefile.in: Replace ac_include with kpse_include. From Peter Breitenlohner. 2005-06-22 Olaf Weber * common.ac: Add KPSE_STRUCT_ST_MTIM check. * expand.c: Update some comments. * pathsearch.c: Update some comments. * tex-file.c (init_path): Translate ';' to ':' in values we get from the environment if the latter is our env_sep. * cnf.c (do_line): Always translate ';' to ':' in config values if the latter is the env_sep. * kpathsea.texi: Remove ALLOW_SEMICOLON_IN_FILENAMES comment. 2005-06-21 Olaf Weber * mktexlsr: Re-export PATH after changing it. Some shells require this. Reported by Albert Chin . * tex-file.c (kpse_find_file): Call kpse_expand() to do tilde and variable expansion, which kpse_path_search_list() doesn't do, but kpse_path_search() did. Re-enabling this was requested by several people, including Oliver Grewe . * mktexpk, bugs.texi: From Karl Berry: "Try to be more informative when mktexpk can't guess the mode; reported by Knuth in tex-k mail, 26 Apr 2005 18:07:20 -0400." 2005-04-10 Olaf Weber * tilde.c (kpse_tilde_expand): Slightly simplify code. * tilde.c (kpse_tilde_expand): Account for the possibility that we're fed an argument starting with "!!~". Problem reported by DEK. 2005-03-07 Olaf Weber * install.texi: Document texmfvar and USE_TEXMFVAR. From Thomas. * mktexdir: Break out of loop on failure of mkdir. Last-minute change for teTeX 3.0 from Thomas. 2005-02-06 Olaf Weber * kpsereadlink.man: Correct banner: READLINK -> KPSEREADLINK. 2005-02-05 Olaf Weber * Makefile.in (texmf.sed): With TEXMFSYSVAR and TEXMFSYSCONFIG added, there's even more potential damage to clean up. (uninstall-data): Try to cleanly uninstall the info document. * texmf.in: Add TEXMFSYSVAR, TEXMFSYSCONFIG for teTeX 3.0. From Thomas. 2005-01-25 Olaf Weber * mktexmf: Don't redirect output of cd, Ultrix doesn't like that. 2005-01-21 Olaf Weber * Makefile.in: Change POSTINSTALL to POST_INSTALL. * mktex.opt: Add texmfvar to list of allowed feature options. * mktexlsr: Make getting the list of directories from $TEXMFDBS more robust. From Thomas. * kpsereadlink.man, kpsestat.man, kpsewhich.man, mktexlsr.man, mktexmf.man, mktextfm.man, mktexpk.man, kpseaccess.man: Man page corrections from Eric S. Raymond . 2005-01-07 Olaf Weber * mktexpk: Add guess ultre for 1200 dpi. This is a fairly neutral mode, also useful for pdftex. From Karl Berry. * mktexlsr: Make sorting the texmf trees more robust. From Thomas. 2004-12-29 Olaf Weber * configure.in: Version 3.5.4. * mktexlsr: Remove duplicate trees. From Thomas. * mktexdir: Remove superfluous cd. From Thomas. * withenable.ac: Sync with Thomas' version, removes --enabled-multiplatform code. 2004-12-28 Olaf Weber * Makefile.in (texmf.sed): New variables were added named TEXMF*. The cleanup code needed additional fixes for this. From Thomas Esser. * mktexnam.opt: Improve comment. * mktexnam: Handle texmfvar option, which directs all writes into the system trees to the TEXMFVAR tree, with the usual caveats. * mktexnam.opt: Add texmfvar option. * texmf.in: Changes to bring it close to teTeX 3.0. 2004-12-20 Olaf Weber * texmf.in: For XeTeX: TEXINPUTS.xetex, TEXINPUTS.xelatex, OTFFONTS. 2004-12-19 Olaf Weber * xt.ac: Mark --with-x-toolkit as obsolete. * Makefile.in [KPATHSEA_CC]: Don't quote $(CC), as it prevents libtool from functioning properly if $(CC) contains options in addition to the compiler name. From Harald Koenig . * mktexpk: Add guesses for dpi 360 and 720. From Frank K\"uster (Debian maintainer). * mktexlsr: Write all regular progress messages to stderr, instead of some to stdout. * mktexdir: Handle directories with spaces in the names. * mktexupd: If we've called mktexlsr, there is no need to do anything else, so exit immediately. From Thomas. 2004-11-28 Olaf Weber * texmf.in: Add default entries for $progname and $engine, so we don't expand these to empty if the file is used by pre 3.5.3 implementations. * mktexmf: Extend the pattern for the cbgreek fonts. From Hartmut Henkel . 2004-10-05 Olaf Weber * texmf.in: Add TEXINPUTS.lamed (Aleph's version of lambda) and TEXINPUTS.uft8mex (utf8 variation of mex). 2004-08-24 Olaf Weber * mktex.opt: Correct syntax error. Reported by Staszek Wawrykiewicz . 2004-08-23 Olaf Weber * texmf.in: The TEXINPUTS.pdftexinfo entry in obsolete, and will be removed in the future. Alert by Vladimir Volovich . * tex-file.c (kpse_find_file): Make debug message conditional KPSE_DEBUG_SEARCH being set. * kpsewhich.c: Remove spurious space in usage message. * tex-file.c (kpse_find_file): Add debug message to clarify what the library is doing when. From Karl Berry . * tex-file.c: Add TEXFONTS to the environment variables for all kinds of font-related stuff. This means you can, if you want to, just dump all font-related files in a single directory and set a single variable to point to it. It doesn't have a default. Suggested by Karl Berry, Hans Hagen, Akira Kakuto. 2004-08-17 Olaf Weber * mktexlsr, mktex.opt: Use "test ... || test ..." instead of "test ... -o ...". 2004-08-06 Olaf Weber * xdirname.c: Cygwin also understands UNC names. From Jan Nieuwenhuizen . * config.h: Do not define DOSISH for Cygwin. After Jan Nieuwenhuizen . * mktex.opt: Refine the test of $COMPSEC a bit, to accomodate Cygwin. After Jan Nieuwenhuizen . * mktexlsr: Refine the test for $COMSPEC a bit, to accomodate Cygwin. After Jan Nieuwenhuizen . * Makefile.in: Define MAKE_KPSE_DLL when compiling the library to support ugly windows declspec stuff. From Jan Nieuwenhuizen . * c-proto.h: Clean up the defines for KPSEDLL a bit. From Jan Nieuwenhuizen . * getopt.h: Clean up defines for KPSEDLL a bit. From Jan Nieuwenhuizen . 2004-08-01 Olaf Weber * texmf.in: Undoing some simplifications of the search paths, in particular the texmf/{engine1,engine2,...} style paths are back to accomodate older texmf trees. 2004-07-23 Olaf Weber * texmf.in: Adapt TRFONTS to Linux groff path, which is the most useful variant these days. 2004-07-21 Olaf Weber * Makefile.in (uninstall-exec): Add removal rules for libkpathsea and the programs other than kpsewhich. * kpathsea.texi: Push copyright to bottom of page. * texmf.in: Add paths for pdfxtex, pdfxlatex. After Peter Breitenlohner . * texmf.in: Updates/simplifications to paths, from Thomas. 2004-07-19 Olaf Weber * db.c (kpse_db_search_list): Add cast to suppress warning about discarding "const". 2004-07-03 Olaf Weber * common.ac: No m4 quoting needed in the KPSE_CROSS_BUILD_VAR calls. * common.ac: Add some invocations of KPSE_CROSS_BUILD_VAR matching usage in ../make/cross.mk. * mktextfm: Use the same code as mktexpk for ignoring metafont errors, to ensure that mktextfm and mktexpk ignore identical sets of metafont errors. 2004-06-28 Olaf Weber * kpathsea.texi: Use @copying, so the license ends up in the HTML output. Use @ifnottex instead of @ifinfo, so that makeinfo --html works without further effort. From Karl Berry. * install.texi: Name of bash manual is now "bash". From Karl Berry. 2004-06-22 Olaf Weber * c-memstr.h [HAVE_STRINGS_H]: Include strings.h if it is available, as opposed to just doing if HAVE_STRING_H is not defined. Otherwise we give conflicting information whether certain old-style functions like index, rindex are defined. * common.ac: Also check for strings.h. * c-memstr.h: Add definitions for index and rindex in terms of strchr and strrchr, as we've got some old code in TeX-live that needs this on some platforms. 2004-06-15 Olaf Weber * install.texi: Karl Berry pointed out that GNU fileutils is now GNU coreutils. 2004-06-14 Olaf Weber * kpathsea.texi: Make it more obvious that applications will often just want to use rather than pick and choose headers. 2004-06-11 Olaf Weber * kpsewhich.c: Update copyright dates. 2004-05-28 Olaf Weber * mktexlsr: Rename readlink to kpsereadlink to avoid name clash. * Makefile.in: Rename readlink to kpsereadlink to avoid name clash. 2004-05-26 Olaf Weber * tex-file.c: Make .fmt the only "true" suffix for format files, and add all other suffixes to the list of alternates. In the next version, these alternates will be dropped entirely. 2004-05-11 Olaf Weber * Makefile.in (mostlyclean): access -> kpseaccess. From Thomas. 2004-05-08 Olaf Weber * mktexlsr: Widen the matches for the lsR-pattern, so we omit the temporary directory we used. 2004-05-07 Olaf Weber * texmf.in: Use $engine in some paths. * kpathsea.texi: Date is May 2004. * kpathsea.texi: Document --engine. * kpsewhich.man: Document -engine. * kpsewhich.c: Implement -engine option. 2004-04-24 Olaf Weber * cnf.c (read_all_cnf): Fix memory leak. * mktexupd: Fix logic error. Found by Thomas Esser. * tex-file.c (kpse_init_fallback_resolutions): Fix memory leak. 2004-04-23 Olaf Weber * db.c (kpse_db_search_list): Allow matches like base/plain.tex when a db is used. This was a regression introduced by the switch to kpse_db_search_list. Like the original code, this only works with '/' used for dirsep. Reported by Wlodzimierz Bzyl . 2004-04-17 Olaf Weber * kpsewhich.c (lookup): Partial implementation of -all option. Works only in combination with the -path option. * tex-file.c: Add to list of suffixes that may be used for format files. * kpathsea.texi: Document -var-value option kpsewhich. * kpsewhich.man: Document -var-value. * kpsewhich.c: Add -var-value option. Change loop that checks for a kpse_file_format_type to check kpse_format_fmt last. * texmf.in: Add TEXINPUTS.aleph, TEXINPUTS.alambda. 2004-04-01 Olaf Weber * mktexpk: Use dpdfezzz if given 8000 for BDPI. Apparently this is what -Ppdf ends up giving the script. 2004-03-26 Olaf Weber * Makefile.in (install): access -> kpseaccess 2004-03-23 Olaf Weber * db.c (kpse_init_db): Look for both "ls-R" and "ls-r" files. Same contents, but when working cross-platform the all-lowercase name is easier to work with. * tex-file.c: Add .afmt as recognized suffix to kpse_fmt_format (for Aleph). Add ls-r as recognized suffix to kpse_db_format. * mktexlsr: Allow both ls-R and ls-r as names for an existing directory tree index file. Always create ls-R. * mktexupd: Check for both ls-R and ls-r. * pathsearch.h (kpse_all_path_search_list): New function. Like kpse_path_search_list, with must_exist true, but returns a list of filenames instead of the first hit. * pathsearch.c (kpse_all_path_search_list): New function. Like kpse_path_search_list, with must_exist true, but returns a list of filenames instead of the first hit. * tex-make.c [WIN32] (maketex): Code to print error message for ERROR_BROKEN_PIPE didn't match the format. * mktexpk: Allow 'angle(0,0)' errors without aborting. From Andreas Degert . * unixtex.texi: Update from Karl Berry. 2004-03-21 Olaf Weber * withenable.ac: Make the warnings more obvious if the search for the texmf tree fails. Also try to fall back on kpsewhich if we fail to find anything. A simplified version of code proposed by Stefan Ulrich for xdvik. 2004-03-16 Olaf Weber * texmf.in: Add file_line_error_style variable, default to false. 2004-02-26 Olaf Weber * tex-make.c (maketex): Clean up unused variables. * texmf.in: Update link in comment for TEXFONTMAPS. 2004-02-25 Olaf Weber * mktexnam: Use kpseaccess instead of access. * mktexlsr: Use kpseaccess instead of access. * Makefile.in: Rename the access executable to kpseaccess, as the old name tended to interfere. * kpseaccess.man: Formerly known as access.man. * mktexlsr: Only check for magic string in ls-R file if the file size is larger than 0. Assume that a 0-length ls-R can be overwritten without penalty. * mktexlsr: Use a more accurate method to ensure that directory names, and only directory names, start with ./ in the ls-R file. 2004-02-16 Olaf Weber * tex-file.c: Rename kpse_script_format to kpse_texmfscripts_format. * tex-file.h: Rename kpse_script_format to kpse_texmfscripts_format. 2004-02-15 Olaf Weber * mktexpk: psfonts.map and ps2pk.map now found through the map format. * kpsewhich.c (find_format): psfonts.map and pdftex.map are no longer special case, pdftex.cfg is a special case now. * kpathsea.texi: Update for new formats (misc fonts, web, cweb, enc, cmap, sfd, opentype fonts, pdftex config, lig files, texmfscripts). * tex-file.c: Add kpse_lig_format and kpse_script_format. * tex-file.h: Add kpse_lig_format and kpse_script_format. * texmf.in: Add LIGFONTS and TEXMFSCRIPTS. 2004-02-10 Olaf Weber * db.c (kpse_db_search_list): An absolute or explicit relative name that makes it here would not be found anyway, so test for it and skip. * pathsearch.c (search_list): If we're given only absolute or relative filenames, then there is no need to dig into the database or filesystem. (dir_list_search_list): Skip any absolute filenames that make it here. 2004-02-08 Olaf Weber * Makefile.in (stamp-paths): Add TEXMFDIST. Suggested by Thomas. * texmf.in: Add TEXMFDIST, suggested by Thomas. 2004-01-09 Olaf Weber * tex-file.c: Add kpse_pdftex_config_format. From Thomas. * tex-file.h: Add kpse_pdftex_config_format. From Thomas. 2004-01-04 Olaf Weber * texmf.in: Modifications to several paths suggested by Thomas. 2003-12-17 Olaf Weber * tex-make.c (kpse_make_tex): Allow '+' is font names as well. Reported by Hartmut Henkel . 2003-12-14 Olaf Weber * progname.c: Set "progname" in the environment. * tex-file.h: Add new formats: kpse_enc_format, kpse_cmap_format, kpse_sfd_format, kpse_opentype_format. Requested by Thomas. * tex-file.c: Add new formats: kpse_enc_format, kpse_cmap_format, kpse_sfd_format, kpse_opentype_format. Requested by Thomas. 2003-02-27 Olaf Weber * mktexmf: csso12[0-5][0-9] are from CJK package; unsupported by mktexmf. Fix by Werner Lemberg . 2003-02-19 Olaf Weber * kpathsea.texi: Version 3.5.2. * configure.in: Version 3.5.2. * cnf.c (do_line): KISS: Use IS_ENV_SEP(':') to check whether we might want to replace ';' with ':' in paths instead of trying to figure whether 'unix' should have been defined. * db.c (kpse_db_search_list): Change fix to prevent "re-use" of aliases for the sake of clearer code. * db.c: Set aliases to NULL after freeing it, so we don't try to realloc the same value as well. Reported by Thomas Esser . 2003-02-17 Olaf Weber * configure.in: Version 3.5.1. * kpathsea.texi: Version 3.5.1. 2003-02-15 Olaf Weber * kpathsea.texi: Version 3.5.0. * configure.in: Version 3.5.0. * kpathsea.version: removed. * Makefile.in (dist): Remove kpathsea.version. * common.ac: From klibtool to libtool. Based on patches from Albert Chin-A-Young . * Makefile.in: From klibtool to libtool. Based on patches from Albert Chin-A-Young . * texmf.in: Add TEXINPUTS.olatex path. * tex-file.c: Add additional suffixes for formats. * withenable.ac: When texmfmain is derived from ${prefix}, don't expand ${prefix}. 2003-02-11 Olaf Weber * pathsearch.c (search_list): Add some grotty code for the searches of absolute pathnames. (Grotty: if _any_ of the given pathnames is absolute or explicit relative, _and_ it is found, we stop searching then and there.) Found by Peter Breitenlohner . 2003-02-07 Olaf Weber * kpathsea.version: Version 3.4.6 * kpathsea.texi: Version 3.4.6. * configure.in: Version 3.4.6. * texmf.in: Additions for e-Omega. * tex-file.c (kpse_find_file): Use kpse_path_search_list for search. * pathsearch.h (kpse_path_search_list): New function. * pathsearch.c (dir_list_search_list): New function. (search_list): New function. (kpse_path_search_list): New function: search for a list of names, look for all names in the list in each directory before moving to the next directory. * db.h (kpse_db_search_list): New function. * db.c (kpse_db_search_list): New function. 2003-01-31 Olaf Weber * lib.h: Add include of c-proto.h. Suggested by Peter Breitenlohner. 2003-01-29 Olaf Weber * kpathsea.version: Version 3.4.5. * kpathsea.texi: Version 3.4.5. * configure.in: Version 3.4.5. 2003-01-24 Olaf Weber * config.h [KPATHSEA]: 33 -> 34. [DEV_NULL]: Added, "/dev/null" on unix, "NUL" on DOSISH. * texmf.in [TEXCONFIG]: Remove "." from path for security reasons. 2003-01-16 Olaf Weber * kpathsea.texi: Version 3.4.4. * configure.in: Version 3.4.4. * kpathsea.version: Version 3.4.4. * unixtex.texi: Updates. 2003-01-14 Olaf Weber * texmf.in: Uncomment definitions for VARTEXMF, HOMETEXMF. Change TEXMF itself to be same as teTeX. Move '//' outside braces in XDVIINPUTS and DVIPDFMINPUTS -- not strictly needed, but consistent with how we do it everywhere else. Comment out (but otherwise retain) KPSE_DOT. 2003-01-11 Olaf Weber * kpathsea.version: Version 3.4.3. * kpathsea.texi: Version 3.4.3. * configure.in: Version 3.4.3. 2003-01-08 Olaf Weber * texmf.in: Add TEXPSHEADERS.dvipdfm, from Thomas. 2002-12-25 Olaf Weber * tex-file.c (kpse_init_format): Add ".web" to the suffixes recognized for cweb. 2002-12-23 Olaf Weber * dir.c (dir_links): Argh. Error while merging stuff from Fabrice. * kpathsea.version: Version 3.4.2. * configure.in: Version 3.4.2. * kpathsea.texi: Version 3.4.2. * tex-make.c (maketex) [WIN32]: Add program calling implementation. From Fabrice Popineau . * Makefile.in: Test for kpathsea.info explicitly in current directory. Some makes prepend the source dir path otherwise, which would cause installation of the info files to fail. From Thomas Esser . 2002-12-20 Olaf Weber * configure.in: Version 3.4.1. * kpathsea.texi: Version 3.4.1. * kpathsea.version: Version 3.4.1. * tex-file.c (add_suffixes): Removed function. (SUFFIXES, ALT_SUFFIXES): Use kpse_set_suffixes instead of add_suffixes. * tex-make.c (kpse_make_tex): On second thought, we should not get dirseps in these names, ever. 2002-12-17 Olaf Weber * tex-make.c (maketex): Be sure to set ret to NULL if there's nothing to return. From Akira Kakuto . 2002-12-15 Olaf Weber * tex-file.c: Properly terminate MKTEXPK_ARGS with a NULL. Spotted by Akira Kakuto . 2002-12-14 Olaf Weber * kpathsea.texi: Version 3.4.0. * kpathsea.version: Version 3.4.0. * configure.in: Version 3.4.0. * texmf.in: Typo in TEXINPUTS.pdfemex-pl. * xbasename.c (xbasename): Remove redundant call to strlen. From Fabrice. * tex-make.c (misstex): Update to print command line correctly. (maketex): Handle argv style array for command. For unix case, call fork and exec directly instead of using popen. (kpse_make_tex): Handle argv style array for defining a command. Be very restrictive about what a name passed may contain -- this may well break somethings. * tex-file.h (kpse_format_info): Instead of having programs args be a single string, use an argv style array. * tex-file.c (init_maketex): Change to store command line as an array of arguments. [MKTEXPK_ARGS]: Define list of strings instead of single string. (kpse_init_format): Update debugging code to match new kpse_format_info structure. * progname.c [WIN32]: Updates from Fabrice. * pathsearch.h: Typo in comment. * pathsearch.c: Typo in comment. * kpsewhich.c: Correct copyright notice. * hash.c (hash_normalized): New function. (hash_insert_normalized): New function. [MONOCASE_FILENAMES]: Normalize to lower case, not upper case, because that's what in the ls-R files we distribute. * fontmap.c (map_file_parse): Use hash_insert_normalized. Again, we assume the contents of font maps are already normalized. * expand.c (kpse_expand_kpse_dot): Typo in comment. (brace_expand): Clarify the comment. * dir.c (dir_p) [WIN32]: safe_beg_of_path -> kpse_normalize_path. From Fabrice. (dir_links) [WIN32]: Changes to code that stores and retrieves integers from pointers. * db.c (db_build): Call hash_insert_normalized -- names from the ls-R file should be normalized already. (alias_build): Call hash_insert_normalized -- names from the alias file should be normalized already. (kpse_db_insert): Note that we call hash_insert here deliberately. * hash.h (hash_insert_normalized): New function. * concat.c (concat): Start strcat at the end of the previous strcpy. * absolute.c (kpse_absolute_p) [WIN32]: Remove explicit test for UNC names, they're already covered by the test for names starting with IS_DIR_SEP. [TEST] (main): Added, from Fabrice. 2002-11-13 Olaf Weber * kpathsea.version: To 3.3.11. * kpathsea.texi: To 3.3.11. * configure.in: To 3.3.11. 2002-11-12 Olaf Weber * cnf.c (do_line): First check whether len-1 exists, then access it, rather than the other way round. Spotted by Joern Clausen . * texmf.in: obj_tab_size.context is now redundant. From Thomas. * mktextfm: Use the same detection mechanism for mf-nowin as mktexpk. From Thomas. 2002-11-11 Olaf Weber * kpathsea.version: Version 3.3.10. * kpathsea.texi: Version 3.3.10. * configure.in: Version 3.3.10. * texmf.in: Disable parse_first_line by default (sorry). Enlarge a number of constants in general, as opposed to defining lots of context-specific versions. * progname.c (remove_dots): We did not correctly handle paths with ../.. in them. There is still one corner case left, if the path would try to go to the "parent" of the root directory. * mktextfm: Test for mf-nowin in a shubshell. Otherwise error messages could end up being printed if mf-nowin does not exist. * mktexpk: Test for mf-nowin in a subshell. 2002-10-25 Olaf Weber * kdefault.c (kpse_expand_default): Simplify the life of the callers by always returning allocated memory, so the returned string can be freed. John W. Eaton requested this. 2002-10-22 Olaf Weber * withenable.ac: Correct handling of mktexfmt option. * tex-file.c: Add .oft to regcognized suffixes for tex_format. * mktexupd: Correct Thomas' email address. * mktextfm: Correct Thomas' email address. * mktexpk: Correct Thomas' email address. * mktexnam.opt: Correct Thomas' email address. * mktexnam: Correct Thomas' email address. * mktexmf: Correct Thomas' email address. * mktexlsr: Correct Thomas' email address. * mktexdir.opt: Correct Thomas' email address. * mktexdir: Correct Thomas' email address. * mktex.opt: Correct Thomas' email address. * kpathsea.version: Update to 3.3.9. * kpathsea.texi: Update to 3.3.9. * configure.in: Update to 3.3.9. * common.ac: Correct handling of mktexmft option. 2002-10-16 Olaf Weber * tex-make.c (kpse_make_tex): Move the test for problematic filenames so we only do this when we're actually willing to make a new file. 2002-10-11 Olaf Weber * kpathsea.texi: Update date/version to 3.3.8. * NEWS: Update for 3.3.8. * configure.in: Version 3.3.8. * kpathsea.version: Version 3.3.8. * Makefile.in: Remove install rules for mktexfmt, as it is not a separate file. 2002-10-06 Olaf Weber * texmf.in: Expand main_memory (again). * xstat.c: Remove lstat() declaration. * variable.c (kpse_var_value): Check for NAME.progname in the environment before checking for NAME_progname. Both can occur, even on UNIX systems. * tex-file.c (init_path): We need to check PATH.progname, PATH_programe, and PATH in the environment. PATH.progname is the "logical" way to set the name on Windows systems, and can even occur on UNIX systems if env(1) is used to set the environment variables. * withenable.ac: Add --with-mktexfmt-default option. After Fabrice Popineau. He used --with-mkfmt-default, but this was changed to match the other options. * texmf.in: Add XDVIINPUTS, TEXINPUTS.pdfamstex. Modiy definition of TEXMFLOCAL to match Thomas', add MKTEXFMT. All part of the TeXlive merge. * tex-make.c (kpse_make_tex): Complain if a number of problematic characters are found in the requested font name -- this works in combination with a check in maketex() to prevent misuse of the system() call that starts the mktex* scripts. * tex-file.c (kpse_init_format): Support for mktexfmt, from Fabrice Popineau. * mktexupd: Delete CR characters at the end-of-line before doing the compare. Yet another hack for windows/unix cross-platform support. * mktextfm: TeXlive merge: support for mf-nowin. * mktexpk: TeXlive merge: considerably reorganized to support use of mf-nowin. * mktexnam: Additional definitions for the LH fonts. TeXlive merge. * mktexmf: Additional definitions for the LH fonts. TeXlive merge. * common.ac: Add support for MAKE_TEX_FMT. From Fabrice Popineau. * acconfig.h [MAKE_TEX_FMT_BY_DEFAULT] Added. After Fabrice Popineau. 2002-07-16 Olaf Weber * kpsewhich.c (find_format): Remove special case for pdftex.cfg. Not needed. * kpsewhich.c (find_format): Hard-code format types for pdftex.cnf and pdftex.map. 2002-07-08 Olaf Weber * mktex.opt: Limit permissions on $TEMPDIR. * mktexlsr: Limit permissions on tmp directory. 2002-06-04 Olaf Weber * texmf.in: Remove setting of src_specials: it will be ignored anyway as we'll only allow it to be set from the command line. 2002-05-28 Olaf Weber * mktexdir: Guard $KPSE_DOT with quotes. From Emmanuel_Thom\'e . 2002-04-01 Olaf Weber * mktexlsr: Strip a trailing CR before testing the first line of an ls-R file. Needed for interoperability with Windows (sigh). * tex-make.c (maketex): Use a literal "r" in the popen command, as (under UNIX) it tends not to understand "rb", and we're generating text anyway. 2001-11-27 Olaf Weber * kpathsea.texi: Version 3.3.7. * configure.in: Version 3.3.7. 2001-11-25 Olaf Weber * types.h: Define boolean as int whenever we can. This makes the option-handling code correct (where pointer to int and pointer to boolean need to be the same type). * install.texi: Update totals to (hopefully) more accurate values. 2001-11-19 Olaf Weber * line.c (read_line): Add prototype. 2001-11-18 Olaf Weber * kpathsea.version: Version 3.3.6. * kpathsea.texi: Version 3.3.6. * configure.in: Version 3.3.6. * xgetcwd.c: Changes to keep C++ compilers from choking. * xdirname.c: Changes to keep C++ compilers from choking. * variable.c: Changes to keep C++ compilers from choking. * str-list.c: Changes to keep C++ compilers from choking. * readable.c: Add pathsearch.h to included headers, for kpse_normalize_path. * pathsearch.c: Changes to keep C++ compilers from choking. * path-elt.c: Changes to keep C++ compilers from choking. * make-suffix.c: Changes to keep C++ compilers from choking. * line.c: Changes to keep C++ compilers from choking. * kpsewhich.c: Changes to keep C++ compilers from choking. * kdefault.c: Changes to keep C++ compilers from choking. * fontmap.c: Changes to keep C++ compilers from choking. * fn.h (fn_grow): Second argument is a const_string, not a generic address. * fn.c (fn_grow): Second argument is a const_string, not generic address. * expand.c: Add a few casts to ensure a C++ compiler wouldn't choke. * dir.c (dir_links): Replace a conditional expression with an if-then version. * db.c: Add a few casts, rename 'try', all to ensure a C++ compiler wouldn't choke. * cnf.c: Add a few casts, rename 'try', all to ensure a C++ compiler wouldn't choke. * c-proto.h: Addtional P*H and P*C macros for functions with up to 17 arguments. 2001-11-14 Olaf Weber * readlink.c (main): Add prototype. * kpsewhich.c (main): Add prototype. * kpsestat.c (main): Add protype. * c-pathch.h [WIN32] (IS_UNC_NAME): An unc name can be // as well as //. * access.c (main): Prototype. 2001-11-10 Olaf Weber * kpathsea.version: Version 3.3.5. * kpathsea.texi: Version, date. * configure.in: Version 3.3.5. * texmf.in: Additional entries for mex-pl, platex-pl, pdfplatex, pdfmex-pl, pdfemex, pdfemex-pl. As usual, ConTeXt wants more space. * mktexnam: First set defaults, then modify for explicit destination, not the reverse. From Thomas. * mktex.opt: Preserve return code over trap. From Thomas. * kpsewhich.man: Typo. 2001-10-30 Olaf Weber * configure.in: To 3.3.4. * kpathsea.version: To 3.3.4. * mktexnam.opt: Robustness fix for handling of NAME. Minor changes in the handling of the defaults when a name isn't found in the supplier or typeface maps. * tex-file.c: Add ".ch" as alternate suffix for kpse_web_format and kpse_cweb_format. * readable.c [main]: Call kpse_normalize_path. * progname.c [WIN32]: Update from Fabrice. * pathsearch.h [WIN32]: Remove prototype for safe_beg_of_path. Add prototype for kpse_normalize_path. * pathsearch.c (path_search) [WIN32]: Remove call to safe_beg_of_path. (path_search): Add call to kpse_normalize_path. * expand.c (kpse_path_expand): Don't strip devices and such here, as we're doing that in kpse_element_dirs anyway. * elt-dirs.c [WIN32]: Remove safe_beg_of_path. (kpse_normalize_path): Replaces safe_beg_of_path, but is defined on all architectures. * dir.c [WIN32]: Remove safe_beg_of_path prototype here. * common.ac: Test whether libm exists. If it does, we unconditionally link with it, which is probably wrong. * cnf.c [__NetBSD__]: Define unix. * c-pathch.h [IS_UNC_NAME]: Define on all architectures. * Makefile.in (distdir): Add *.ftp to destination directory. 2001-09-26 Olaf Weber * texmf.in: Add support for Web and Cweb files (kpse_web_format, kpse_cweb_format). Requested by Wlodek Bzyl. * tex-file.h, tex-file.c: Add support for Web and Cweb files (kpse_web_format, kpse_cweb_format). Requested by Wlodek Bzyl. 2001-07-23 Olaf Weber * common.ac [kb_cv_func_putenv_malloc]: Add declaration for malloc, which testing on IA64 revealed to be missing. 2000-08-25 Olaf Weber * mktexlsr: Changed the fix for NeXT. 2000-08-05 Olaf Weber * kpathsea.texi: Bump version, date. * kpathsea.version: Bump version. * configure.in: Update for 3.3.3. * NEWS: Update for 3.3.3. * mktexlsr: On NeXT, 'rm -rf ' will recursively remove the current directory. This is bad if you're in / and are root. 2000-05-25 Olaf Weber * lib.h [MONOCASE_FILENAMES]: Parenthesis was omitted in FILESTRNCASEEQ. Found by Fabrice. 2000-04-26 Olaf Weber * unixtex.texi: Added notes that web2c is bare-bones, and that the texk/texklib packages may contain older components. 2000-04-21 Olaf Weber * progname.c: Add P?C macros to functions that lacked them. * lib.h [STREQ,STRNEQ,FILESTRCASEEQ,FILESTRNCASEEQ]: If any argument is NULL, compare unequal. 2000-04-13 Olaf Weber * tex-hush.c (kpse_tex_hush): Check for "all" and "none" first, then look for more specific switches. This fixes the most common case of problems due to non-reentrancy of kpse_path_element. * kpathsea.texi: Correct example of brace expansion. Document TEX_HUSH = none. Found by Tijs Michels . * texmf.in: Document the use of TEX_HUSH = none. 2000-04-03 Olaf Weber * texmf.in: Add variable for src_specials. Increase arrays for context (again). * xopendir.c [WIN32]: Only define xclosedir. * kpsewhich.man: Spelling correction. * getopt.h [WIN32]: For definition of __STDC__ to 1. 2000-04-02 Olaf Weber * xopendir.c [WIN32]: Define neither xopendir nor xclosedir. From Han The Thanh . * xputenv.c (xputenv): The WIN32 conditional code is also valid for DJGPP. From Fabrice. * xmalloc.c (xmalloc): Allocate 1 byte if passed size 0. * xdirname.c (xdirname): Changes for Win32 from Fabrice. * tex-file.h: Prototype for kpse_set_suffixes. From Fabrice. * tex-file.c (kpse_set_suffixes): New function, added by Fabrice. * readable.c: Win32-related changes from Fabrice. * progname.c [WIN32]: Various changes from Fabrice. * pathsearch.h [WIN32]: Declare safe_beg_of_path. From Fabrice. * pathsearch.c (path_search [WIN32]): Use safe_beg_of_path. From Fabrice. * kpsestat.c: Remove WIN32 define. From Fabrice. * hash.c [MONOCASE_FILENAMES]: Change for the WIN32 case from Fabrice. * getopt.h [WIN32]: Changes from Fabrice. * getopt.c [WIN32 && ! __CYGWIN32__]: Ensure getpid is not defined before defining it. From Fabrice. * lib.h: Update dir_links prototype, from Fabrice. * elt-dirs.c: Win32 related changes from Fabrice. * dir.c: Various Win32-related changes from Fabrice. * config.h: Various changes for the DOS famility of systems. From Fabrice. * c-stat.h [WIN32]: Use oldnames.h instead of kpathsea/win32lib.h. From Fabrice. * c-proto.h [WIN32]: _DLL -> KPSE_DLL, from Fabrice Popineau. * c-memstr.h: Move closer to just the ANSI string functions, if necessary defined in terms of the BSD functions. After Thomas Esser . [FOPEN_RBIN_MODE, FOPEN_WBIN_MODE, FOPEN_ABIN_MODE]: Specify binary I/O mode on all systems, not just those where it makes a difference. [VMCMS]: Remove as it isn't used. [SET_BINARY]: Change defines which select it. From Fabrice Popineau. * c-ctype.h [WIN32]: On Windows, get isascii from oldnames.h. After Fabrice Popineau . * access.c: Replace WIN32 code with generic code. 2000-01-31 Olaf Weber * mktexlsr: Fix possible symlink exploit. By Thomas Esser . 1999-06-28 Olaf Weber * mktextfm: Get rid of error message if hbf2gf cannot be found. From Thomas. * tex-glyph.c: Test whether glyph_file is NULL before dereferencing it. Suggested by Julian Gilbey . * texmf.in: Improved comments about VARTEXMF, along lines suggested by Thomas Esser. Increased font_mem_size, as requested by Thomas. * pathsearch.c (path_search): Print a message if we're debugging the search and we're not pounding the disk because an ls-R file exists but must_exist=0. This to highlight the most confusing case where disk searches do not happen. * mktextfm.man: Cleanup of synopsis. * mktex.opt: More robust handling of TEMPDIR, after Luc Van Eycken . * kpsestat.man: Remove comment about unclear message. * kpsestat.c (main): Print a more understandable message when the stat call fails. 1999-06-20 Olaf Weber * pathsearch.c (log_search): If TEXMFLOG is defined, then the kpathsea library would write a space to stderr for every file logged. Fix from Charles Karney . 1999-05-29 Olaf Weber * configure.in: Update version number to 3.3.1. * kpathsea.version: Update version number to 3.3.1. * kpathsea.texi: Update version info. * mktexnam, mktexmf: Fix the LH patterns to be more specific. From Thomas. * unixtex.texi: Remove node on tape distributions. * texmf.in: Add platex, add comment about TEXMFDBS. * tex-file.c (kpse_find_file): Fix off-by-one in tests for suffix length. * pathsearch.c (log_search): Fix problem with debugging output. * mktextfm: Order of options to hbf2gf turns out to matter. * mktexpk: Updates from Thomas: don't remove generated fonts because of bad pos errors; better handling of type1 fonts. * mktexnam: Updates from Thomas for Czech fonts. Consult fontmaps if a fonts fell into unknown/unknown. * mktexmf: Updates from Thomas for Czech fonts. * mktexdir: Small fix from Julian Gilbey. * cnf.c: Apple's MacOsX is also unix-like. * access.c: Parametrise the help string as in readlink.c. * Makefile.in: Use INSTALL_DATA, not INSTALL_SCRIPT, for the *.opt files. * AUTHORS: Update accounts for MakeTeX scripts and expand.c. * c-memstr.h: Don't declare strstr if strstr is already a define. Suggested by Paul Vojta . * readlink.c: Corrected a bug in the help string (wrong program name), reported by several people. 1999-03-26 Olaf Weber * kpathsea.version: Set MINOR to 3. * configure.in: Bumped KPSEVERSION to 3.3. 1999-03-23 Olaf Weber * texmf.in: More changes from Thomas, add MISCFONTS for kpse_miscfonts_format. * tex-file.c: Implement kpse_miscfonts_format. * tex-file.h: New format: kpse_miscfonts_format, to be used for small sets of fonts for which no real type has been defined. * mktextfm: Add support for hbf fonts. (From Werner Lemberg.) * withenable.ac: Remove implementation of some --with-* options. * common.ac: Move implementation of some --with-* options here from withenable.ac, so the latter can be included elsewhere with kpathsea's acconfig.h or derivatives being seen. 1999-03-17 Olaf Weber * texmf.in: Size increases for context, requested by Hans Hagen. * texmf.in: Update from Thomas. * Makefile.in: TEXMF_CNF -> VARTEXMF * mktexmf: Small fix to a case statement from Berthold H\"ollmann . 1999-03-15 Olaf Weber * win32lib.h: Patch from Fabrice. * variable.c (kpse_var_value, expand): Handle the VAR_progname construct. After Julian Gilbey . * tex-file.c: Fixes to the code that forces an update of the paths. After Julian Gilbey . * mktexmf: Changes to support CB font family. From Kimon Kontovasilis . * kpathsea.texi: Update address info of TUG. * config.h: Remove outdated comment, explicitly include kpathsea/c-auto.h. * cnf.c (do_line): Correct comment, remove unused code. (read_all_cnf): Strip trailing whitespace. (kpse_cnf_get): Fix memory leak. After Julian Gilbey . * acconfig.h: We no longer use this for all kpathsea using programs, just kpathsea itself. Thus the WEB2CVERSION macro goes, as does other stuff that belongs to web2c or xdvik. * Makefile.in: Allow the c-auto.h file to be installed. 1999-02-18 Olaf Weber * mktex.opt: Document nomfdrivers option. * mktextfm: Implement nomfdrivers option. * mktexpk: Implement nomfdrivers option. * install.texi: Document new option: nomfdrivers. * kpsewhich.man: Document how search parts are determined. * mktexlsr: Really skip empty components. From Thomas. * tex-file.c (kpse_reset_program_name): Don't free the old paths, they may not have been allocated on the heap. 1999-02-16 Olaf Weber * tex-file.c (kpse_reset_program_name): Ensure that when the program name changes, the various paths will indeed be updated. 1999-02-14 Olaf Weber * mktexupd: Fix test whether argument is a directory name. From Thomas. * mktexlsr: Skip empty components. * mktexnam.opt: This file is supposed to be sourced, not executed, so remove the #!. From Thomas. * mktexdir.opt: This file is supposed to be sourced, not executed, so remove the #!. From Thomas. * mktex.opt: This file is supposed to be sourced, not executed, so remove the #!. From Thomas. * config.h: Make sure c-auto.h is included before win32lib.h, which needs definitions from the former. 1999-02-06 Olaf Weber * win32lib.h: Add pragma warning, for the S_* defines, only define them if they are not defined already. * pathsearch.h (kpse_all_path_search): Add KPSEDLL, from Fabrice. * debug.h (fclose): Add KPSEDLL, from Fabrice. * config.h [WIN32]: Remove pragma warning. From Fabrice. 1999-02-04 Olaf Weber * withenable.ac: Rename AR_OPTS to ARFLAGS. * texmf.in: Cleanup of semicolon/comma. Remove the double slash between 'fonts' and its subdirs. Sites using pseudo-TDS will have to add these by hand from now on. * tex-file.c (init_path, add_suffixes): Remove __cdecl, from Fabrice. * mktexmf: Special cases for 30 and 36 points, as requested by the sauter mainainer Jeroen Nijhof . * kpsewhich.c (main): Remove __cdecl, from Fabrice. * kpsestat.c (main): Remove __cdecl, from Fabrice. * install.texi: The +u flag is no longer recommended for HP-UX. * getopt.h [!WIN32]: Remove define of __cdecl, from Fabrice. * elt-dirs.c (safe_beg_of_path): Change return type to unsigned int, because other functions expect this. * concatn.c (concatn): Remove __cdecl, from Fabrice. * common.ac: sinclude from ../texk now, from Thomas. * c-proto.h [!WIN32]: Removed define of __cdecl, from Fabrice. * access.c (main): Removed __cdecl, from Fabrice. 1999-01-27 Olaf Weber * xputenv.c (xputenv) [WIN32]: Don't free old value, ever. * win32lib.h: Fixes by Fabrice. * win32lib.c: Fixes by Fabrice. * version.c (kpathsea_version_string, kpse_bug_address): Add KPSEDLL, by Fabrice. * variable.h (kpse_var_value, kpse_var_expand): Add KPSEDLL, by Fabrice. * texmf.in: Change path separators back to commas, use semicolon instead of colon, correct TEXINPUTS for the pdfeTeX family, TEXPSHEADERS for the pdfTeX family. By Thomas Esser. * tex-make.h (kpse_make_tex_discard_errors): Add KPSEDLL, by Fabrice. * tex-make.c (maketex): Add cast to shup up a compiler. From Fabrice. * tex-hush.h (kpse_tex_hush): Add KPSEDLL, by Fabrice. * tex-glyph.h (kpse_find_glyph, kpse_bitmap_tolerance): Add KPSEDLL, by Fabrice. * tex-glyph.c (try_resolution): Add casts to quiet a compiler. From Fabrice. * tex-file.h (kpse_fallback_resolutions_string, kpse_format_info, kpse_set_program_enabled, kpse_maketex_option, kpse_init_format, kpse_find_file, kpse_open_file, kpse_reset_program_name): Add KPSEDLL, by Fabrice. * tex-file.c (init_path, add_suffixes): Add __cdecl, by Fabrice. (kpse_init_format): Correct definition of "other ... files" to take different path separators into account. After Fabrice. * str-list.c (str_list_concat_elements): Make loop indices unsigned to quiet compilers. By Fabrice. * readable.h (kpse_readable_file): Add KPSEDLL, by Fabrice. * readable.c [WIN32] (kpse_readable_file): Many changes by Fabrice. * progname.h (program_invocation_name, program_invocation_short_name, kpse_program_name, kpse_set_program_name, kpse_set_progname): Add KPSEDLL, by Fabrice. * progname.c: Remove my_dirname function, which returns in its own file renamed to xdirname. From Fabrice. (kpse_set_program_name) [WIN32]: Close handle. By Fabrice. * proginit.h (kpse_init_prog): Add KPSEDLL, by Fabrice. * pathsearch.h (kpse_path_element, kpse_element_dirs, kpse_path_search): Add KPSEDLL, by Fabrice. * pathsearch.c (path_search): We now strip devices in the caller. From Fabrice. * magstep.h (kpse_magstep_fix): Add KPSEDLL, by Fabrice. * magstep.c (magstep, kpse_magstep_fix): Casts to quiet an unruly compiler. Added by Fabrice. * line.h (read_line): Add KPSEDLL, by Fabrice. * lib.h (concat, concat3, xstrdup, uppercasify, atou, same_file_p, xbasename, find_suffix, remove_suffix, make_suffix, make_prefix, extend_filename, xputenv, xputenv_int, xgetcwd,dir_p, dir_links, xfopen, xfclose, xfseek, xftell, xmalloc, xrealloc, xcalloc): Add KPSEDLL, by Fabrice. (xdirname): New function, by Fabrice. * kpsewhich.c (read_command_line): Add KPSEDLL to external functions, by Fabrice. (main): Add __cdecl, by Fabrice. * kpsestat.c (main): Add __cdecl, by Fabrice. * hash.h (hash_table_type, hash_insert, hash_remove, hash_lookup): Add KPSEDLL, by Fabrice. * hash.c [WIN32]: Different implementation of TRANSFORM, for speed reasons. From Fabrice. * getopt.h: Changes for KPSEDLL, by Fabrice. * fn.h (fn_init, fn_copy0, fn_free, fn_1grow, fn_grow, fn_str_grow, fn_shrink_to): Add KPSEDLL, by Fabrice. * expand.h (kpse_expand, kpse_brace_expand, kpse_path_expand): Add KPSEDLL, by Fabrice. * elt-dirs.c (safe_beg_of_path): New function by Fabrice. Used to strip device from a path before feeding it to expand_elt. (kpse_element_dirs): Call safe_beg_of_path. * debug.h (kpathsea_debug, fopen): Add KPSEDLL, by Fabrice. * db.h (kpse_db_insert): Add KPSEDLL, by Fabrice. * config.h [WIN32]: Add pragma to quiet some warnings. From Fabrice. * concatn.h (concatn): Add KPSEDLL. From Fabrice. * concatn.c (concatn): Add __cdecl. From Fabrice. * cnf.h (kpse_cnf_get): Add KPSEDLL. From Fabrice. * c-std.h: Don't include math.h if we're seen be a C++ compiler. From Fabrice. * c-proto.h [WIN32]: Instead of defining DllImport, define KPSEDLL. This change makes building shared libraries on windows systems work better. From Fabrice. * c-pathch.h [WIN32]: IS_UNC_NAME macro added by Fabrice. * access.c (main): Add __cdecl, from Fabrice. * absolute.h (kpse_absolute_p): Add KPSEDLL, from Fabrice. * Makefile.in: Account for the addition of xdirname.c. 1999-01-24 Olaf Weber * texmf.in: Add support for pdfeTeX. * mktexpk: Correct typo: ps_topk -> ps_to_pk. * mktexnam: New version from Thomas. * mktexmf: Update for cs* fonts from Thomas. * kpathsea.texi: Update section on brace expansion. Decided to keep the comma. * db.c (kpse_db_insert): Replace basename with xbasename. 1999-01-19 Olaf Weber * kpsestat.c (main): Replace use of S_IFMT with an octal literal. 1999-01-14 Olaf Weber * texmf.in: Remove open_any, add openout_any, openin_any. * str-list.h: Add prototype for str_list_concat_elements. 1999-01-10 Olaf Weber * mktextfm: Implement --foo=bar style options. From Thomas. * mktexpk: Implement --foo=bar options, by Thomas. Changes for new version of gsftopk. Changes to handle ttf2pk. From Thomas. * xt.ac: Remove AC_PATH_XTRA here. * withenable.ac: Changes to aid cross-compiling. Minor fixes. * unixtex.texi: Correct tug email address. Minor corrections. * texmf.in: Minor changes, additions for context. From Thomas. * tex-file.h: Use size in declaration of kpse_format_info. From Fabrice. * tex-file.c (kpse_maketex_option): Initialise fmt on entry. Test whether a fmt had been specified. (kpse_init_format): Put $TEXMF into the 'other files' formats, from Thomas. * str-list.c (str_list_concat_elements): New function, part of replacement for bash-derived code. * progname.c (my_subdir): New implementation from Fabrice. * mktexnam: Account for new release of lh fonts. Don't do subdirs if we're using $KPSE_DOT as the destination directory. * mktexupd: Handle empty elements gracefully. * mktexmf: Account for new release of lh fonts. * mktexlsr: Minor fixes from Thomas. * mktexdir: Allow for creating more directories, fixes from Thomas. * mktex.opt: Add defaults for DPI and MAG. * kpsewhich.man: Various minor corrections. * kpsewhich.c: Begin implementing -all option. (incomplete) * kpathsea.texi: Correct copyright, tug email address. * install.texi: Account for new texklib.tar.gz file. Several minor corrections. * expand.c: Remove bash-derived code. * elt-dirs.c (do_subdir): Correct code to test whether we descend into subdirectories. * db.c: Add kpathsea/c-stat.h to includes. (db_build): Correct test of '0' to 0. * common.ac: Check for more functions in AC_CHECK_FUNCS, from Thomas. * cnf.c: do_line: Remove premature optimization. * c-proto.h: Add P8H, P8C, P9H, P9C. * c-memstr.h: Revision by Thomas Esser. * c-ctype.h: Add ISBLANK macro. * acconfig.h: Add define guard for c-auto.h. * Makefile.in: Change ../make/*.make to ../make/*.mk. Correct texmf.sed. Prevent substitution of $(texmf) in texmf.cnf in some cases. Replace semicolons with colons in paths.h. 1998-09-15 Olaf Weber * mktexlsr: Trap more signals, make script hold up better under 'sh -e', from Werner Fink . * mktex.opt: Trap more signals, suggested by several people, particularly Thomas Gellekum. 1998-08-03 Olaf Weber * progname.c (selfdir): Interpret empty PATH element as "." 1998-07-26 Olaf Weber * tex-glyph.c (kpse_find_glyph): Memory management problem: we were deallocating a string prematurely. (try_fontmap): Test !ret before, not after, bumping the loop variable. Both reported by Werner Lemberg . Sun Jun 21 14:43:44 1998 Olaf Weber * mktexlsr: Test for the presence of the magic string in ls-R, to prevent accidentally overwriting ls-R files that are not ours. Change the code to ensure ./ in front of directory names in the presence of different output from different versions of ls. Mon May 4 19:42:44 1998 Olaf Weber * Makefile.in (objects): Add xbasename.lo. * Rename basename.c to xbasename.c. * tilde.c (kpse_tilde_epxand): Handle a bare ~ gracefully. * basename.c: Rename basename to xbasename and make its compilation unconditional. * common.ac: Remove check for basename. * acconfig.h: Remove HAVE_BASENAME. * lib.h: Remove conditional declaration of basename, add unconditional declaration of xbasename. * progname.c (kpse_set_program_name): Replace call of basename with xbasename. Fri Apr 24 21:15:15 1998 Olaf Weber * install.texi: Doc fix; mention the library files for etex, pdftex, omega. * pathsearch.c (kpse_path_search): Fix memory leak found by "John W. Eaton" . Tue Apr 7 19:46:07 1998 Olaf Weber * kpsewhich.c (find_format): Correct an off-by-one error by using the found value instead of a faulty comparison. Mon Mar 16 19:25:15 1998 Olaf Weber * configure.in (KPSEVERSION): version 3.2. * mktex.opt: Set MT_MKTEXNAM_OPT, MT_MKTEXDIR_OPT here. * mktexnam: Move setting of MT_MKTEXNAM_OPT to mktex.opt. Sun Mar 15 19:55:30 1998 Olaf Weber * c-proto.h: Add P7H and P7C macros. Sat Mar 14 00:10:20 1998 Olaf Weber * win32lib.h: Patch from Fabrice. * c-dir.h [WIN32]: Patch from Fabrice. Fri Mar 13 23:23:33 1998 Olaf Weber * texmf.in: Added XDVIINPUTS and TEX4HTINPUTS. Thu Mar 12 08:04:50 1998 Olaf Weber * win32lib.c: New version from Fabrice Popineau. Wed Mar 11 19:55:10 1998 Olaf Weber * install.texi: Correction for description of dosnames behaviour on MS-DOS. From Eli Zaretskii. Mon Mar 9 07:22:23 1998 Olaf Weber * mktexlsr: exit 0 if we succeeded. * withenable.ac: Remove double slashes from texmfmain variable. Strictly speaking, it is a user fault when this occurs, but... From Thomas Esser. Sun Mar 8 18:23:33 1998 Olaf Weber * tex-file.c: omkocp, omkofm -> mkocp, mkofm. * texmf.in: OMKOFM, OMKOCP -> MKOFM, MKOCP. * withenable.ac: omkofm, omkocp -> mkofm, mkocp. Thu Mar 5 15:32:48 1998 Olaf Weber * texmf.in: Add OMKOCP and OMKOFM analogous to MKTEXPK. * c-fopen.h [DOS]: Don't open files read-write if read suffices. Wed Mar 4 23:55:35 1998 Olaf Weber * withenable.ac: Add options for enabling/disabling omkocp/omkofm. From John Plaice. * tex-file.c (init_format): Support omkocp and omkofm instead of MakeOmegaOCP and MakeOmegaOFM programs. From John Plaice. (kpse_maketex_option): Some changes to handle ofm/ocp as well. Tue Mar 3 09:02:09 1998 Olaf Weber * tex-make.c (kpse_make_tex): Make same exception for AMIGA as for WIN32 and MSDOS. From Andreas Scherer. * PROJECTS: Update mail address. * mktex.opt: Print message if VARTEXMF is not defined, then default to '$KPSE_DOT'. * mktexnam: Remove use of "shell !" from tests involving varfonts feature. Simplify the code a bit. Fri Feb 27 19:55:11 1998 Olaf Weber * withenable.ac: Replace use of -a in test with && and second test. From Thomas Esser . Tue Feb 24 13:16:56 1998 Olaf Weber * Makefile.in: Corrections for building/installing outside source dir. From Vladimir Volovich . * mktexnam.opt: Correction MT_PKNAME -> MT_PKBASE to get dosnames feature to work. From Eli Zaretskii. Mon Feb 23 10:17:22 1998 Olaf Weber * mktex.opt, mktexlsr: Use test ... || test ... instead of test ... -o ... . * mktexnam.opt: Remove use of MT_PKPART, MT_MFPART, and MT_TFMPART variables, since they're no longer defined. * expand.c (kpse_expand_kpse_dot [MSDOS]): A very ugly hack to deal with a very broken feature on some MSDOS systems. After Eli Zaretskii. Fri Feb 20 17:18:19 1998 Olaf Weber * Makefile.in (texmf.sed): Remove VARTEXMF. * install.texi: Update for changes to varfonts. * kpathsea.texi: Remove references to format numbers. * kpsewhich.c (read_command_line): Remove printing of and support for format numbers. * mktex.opt: Remove VARTEXMF and related stuff, set dosnames for DOS. * mktexnam: Remove use of VARTEXMF, introduce SYSTEXMF, change semantics of varfonts. * mktexnam.opt: Remove reference to VARTEXMF, move setting of dosnames for DOS to mktex.opt. * mktexpk: Boilerplate tests. * mktexupd: Boilerplate tests. * progname.c: Move kpse_reset_program_name to tex-file.c. This move means progname.o doesn't use a common object from tex-file.o anymore. The NeXT linker would omit tex-file.o, then complain about an undefined symbol. Thanks to Gregor Hoffleit and Melissa O'Neill for their help solving this. * progname.h: Move kpse_reset_progname to tex-file.h. * tex-file.c: Move kpse_reset_program_name here from progname.c. * tex-file.h: Move kpse_reset_program_name here from progname.h. * texmf.in: Remove VARTEXMF, add SYSTEXMF. * withenable.ac: Boilerplating, a correction of the default case of the --enable-multiplatform test. Mon Feb 16 09:46:47 1998 Olaf Weber * mktexpk: Dropped a $ in the wrong place, which made chmod look for a non-existent file. * Makefile.in (texmf.sed): Include the substitution for @web2c@ in TEXMFCNF. * Makefile.in (texmf.sed): Remove traling / from VARTEXMF substitution. (stamp-paths): Replace @ with % as sed delimiter. The @ causes problems because it used in afs filenames. Spotted by Matthias Clasen. * bugs.texi: Since the NeXT(step) problem is likely to be solved now, make description of bug less definite. * common.ac: Remove check for readlink. * kpathsea.texi: Document changes to search algorithm. * mktexlsr: Use % not @ as sed delimiter. * mktexmf: Correct permissions problem. * mktexnam: Use % not @ as sed delimiter. * mktexpk: Use % not @ as sed delimiter. Correct permissions problem. Set permissions before the file is moved into place. * mktextfm: Use % not @ as sed delimiter. Correct permissions problem. Set permissions before the file is moved into place. * mktexupd: Use % not @ as delimiter for sed. * readlink.c (main): Use S_ISLNK instead of HAVE_READLINK to test whether readlink is a known function. * tex-file.c (kpse_init_format): Make changes corresponding to the movement of kpse_tfm_format. (kpse_find_file): Reorganize searches; fold code of search #3 into #1 and #2; fold #5 into #2. We now have two searches, plus an attempt to create missing files. * tex-file.h: Move kpse_tfm_format before kpse_ofm_format. Might as well put it near the front then, because it is an often-used format. * texmf.in: VARTEXFONTS uses @vartexfonts@ so it can be filled in from the Makefile. OFMFONTS changed to explicitly use TFMFONTS. TEXMCNF uses @web2c@ rather than @web2cdir@. * withenable.ac: Do not force default for --enable-multiplatform, so that we can inherit one from a script that calls us. Tue Feb 10 17:59:26 1998 Olaf Weber * withenable.ac: Don't abort configure run if the main texmf tree isn't found. * acconfig.h: Add EPSFWIN to the undefs. * install.texi: Update section on the handling of options by mktexpk. * mktex.opt: Comment on the duplication of the ls_R_magic string. * mktexlsr: Copy code from mktex.opt to mktexlsr, so the latter can run without the need to find the former. * mktextfm, mktexpk: Replace positional options with normal option handling. * mktextfm.man, mktexpk.man: Update documentation for the new option handling. * tex-file.c: Update the MKTEXPK_ARGS string for the new option-handling of mktexpk. * tex-make.c (kpse_make_tex): We pass the raw / to mktexpk in the --mfmode switch when appropriate; remove unset_mode variable. Update comments to reflect new situation. * kpathsea.texi: Note that empty path components are now ignored in stead of expanded to cwd. * line.c: Add prototype and clean up headers. * mktex.opt, mktexlsr, mktexmf, mktexnam, mktexpk, mktextfm, mktexdir, mktexupd: Make "caching" of some variables and file names in the environment possible. Provide defaults in case the 'web2c files' format doesn't work for finding files. Suggested by Thomas Esser. * withenable.ac: Give a better message when the main texmf tree isn't found. Sat Feb 7 01:00:49 1998 Olaf Weber * elt-dirs.c (kpse_element_dirs): Return NULL, not the cwd, if we're given an empty string. * mktex.opt: Determine VARTEXFONTS here. * mktexnam: Move determination of VARTEXFONTS to mktex.opt. Fri Feb 6 17:59:59 1998 Olaf Weber * config.h: Update definition of KPATHSEA to 32. * expand.c (kpse_path_expand): Do not recursively expand a leading //, as in pathsearch.c. * kpsewhich.man: Update for --epxand-braces option. * texmf.in: Put texmf.local before texmf in the TEXMFCNF path. * withenable.ac: Make code for finding texmfmain more robust. Wed Feb 4 20:39:10 1998 Olaf Weber * readable.c: Correct typo: '#elsif' -> '#elif'. Tue Feb 3 17:08:34 1998 Olaf Weber * kpathsea.texi: Update for changes to kpsewhich. Mon Feb 2 21:12:06 1998 Olaf Weber * xputenv.c: Undid last patch from Fabrice -- it was a "fix" that suppresses warnings on his compiler, and engenders them on mine. Sun Feb 1 16:08:49 1998 Olaf Weber * lib.h [!DOSISH]: Correct definition of FILESTRNCASEEQ. * mktexmf: Correct call to mktexnam. * kpsewhich.c: New option --expand-braces. (expand_path): Removed. (main): Add code for --expand-braces, account for new definition of kpse_path_expand. * expand.h: Rename kpse_path_expand to kpse_brace_expand. Add new kpse_path_expand. * expand.c (kpse_path_expand): New implementation, based on path_expand from kpsesewhich.c. (kpse_brace_expand): The old kpse_path_expand. Change calls to kpse_brace_expand to kpse_brace_expand_element. (kpse_brace_expand_element): The old kpse_brace_expand, but with static linkage. Changes calls to kpse_brace_expand to kpse_brace_expand_element. * tex-file.c (init_path): Replace kpse_path_expand with kpse_brace_expand. * texmf.in: Correct input variables for mltex variants. Add pdftex to TEXPSHEADERS path. Thu Jan 29 16:15:44 1998 Olaf Weber * Makefile.in: Update for readlink. * common.ac: Test for readlink function. * access.c, kpsestat.c: No need to explicitly include c-auto.h. * mktex.opt: Adapt to new way of finding the script. Do the actual lookup for mktexnam, mktexdir, and mktexupd here. Make a bit more robust. * mktexlsr: Make file handling more robust, use kpsewhich to find supporting scripts like mktex.opt and mktexnam, use readlink to trace symlinks. * mktexupd, mktexpk, mktextfm, mktexmf, mktexdir, mktexnam: Make file handling more robust, use kpsewhich to find supporting scripts like mktex.opt and mktexnam, simplify somewhat. * mktexnam.opt: Make handling of names more robust. * readlink.c, readlink.man: New files. * withenable.ac: Add --enable-multiplatform option. Attempt to find the texmf directory, and complain if we fail to do so. * Makefile.in (texmf.sed): Remove sed for dbtex, dbfonts, change VARTEXFONTS to comply with texmf.in, and update comment. * c-vararg.h: Comment update from Peter Breitenlohner. Wed Jan 28 20:36:56 1998 Olaf Weber * Makefile.in: Keep c-auto.h out of kpathsea.h. * c-stat.h [WIN32]: Modification from Fabrice. * dir.c [WIN32]: Extensive modifications from Fabrice. * kpsestat.c, kpsewhich.c: Replace exit with return from main. From Fabrice. * readable.c [WIN32]: Separate definition of READABLE. From Fabrice Popineau. * texmf.in: Remove almost all @var@ stuff, and just assume TDS for all. * win32lib.h: Modifications from Fabrice. * xputenv.c (xputenv): Minor fix from Fabrice. * win32lib.c: New file from Fabrice Popineau. Replacement functions for Win32. Sun Jan 25 20:02:21 1998 Olaf Weber * texmf.in: Increase buf_size to 50000 (from 10000). * tex-file.c (kpse_find_file): In the first search, postpone pounding the disk until all possible suffixes have been tried. * line.c (read_line): Accept any of NL, CR, and CRLF as end-of-line. Fri Jan 23 14:45:19 1998 Olaf Weber * access.c: Use return instead of exit to get rid of some compiler warnings. From Fabrice. * c-fopen.h: Changes for CYGWIN32. * c-proto.h: Patch from Fabrice Popineau for Win32. * kpathsea.texi: Document kpse_web2c_format, kpse_program_text_format, kpse_program_binary_format. * mktex.opt, mktexdir, mktexlsr, mktexmf, mktexnam, mktexpk, mktextfm, mktexupd: Use -expand-path instead of -expand-var where possible. This makes the handling of !! more robust. * tex-file.c (kpse_find_file): Handle other cases than precisely one extension in search number 3. (kpse_init_format): Add kpse_web2c_format, kpse_program_text_format, kpse_program_binary_format. * tex-file.h: Add kpse_web2c_format, kpse_program_text_format, kpse_program_binary_format. * tex-hush.c: Test the "path element" h, not the whole hush. * texmf.in: Add a definition for WEB2C. Add some Omega-related parameters, from John Plaice. Tue Jan 13 19:46:58 1998 Olaf Weber * mktexpk, mktextfm: Only move $NAME.log file if it exists and is not empty. Mon Jan 12 06:22:59 1998 Olaf Weber * kpathsea.texi: Fixes from Gerd Neugebauer . Sun Jan 11 18:26:56 1998 Olaf Weber * mktexupd: Two changes: absence of the current tree in the ls-R path is not an error; create an ls-R file if the current tree is in the ls-R path and the file doesn't yet exist. Sat Jan 10 09:55:47 1998 Olaf Weber * tex-hush.c: A null pointer could be fed to strcmp. Fri Jan 9 21:08:45 1998 Olaf Weber * mktexnam: Add $COMSPEC test, and use $SEP for path separator when splitting paths. From Eli Zaretskii. * mktexlsr: Correct usage for determining absolute paths. From Eli Zaretskii. * common.ac: Correct code in HAVE_PROTOTYPES test. Sun Jan 4 15:59:08 1998 Olaf Weber * Manual pages for access, kpsestat, kpsewhich, mktexlsr, mktexpk, mktexmf, mktextfm. * Makefile.in: Changes for manual pages. Thu Jan 1 10:11:49 1998 Olaf Weber * mktex.opt: Remove definition of $SEP; it is now needed before this script is sourced. * mktexlsr: If necessary, add location of script to PATH. * mktexupd: Put $SEP definition in script itself. * xputenv.c (xputenv): Move some declarations into the "not SMART_PUTENV" block to prevent "unused" warnings. Tue Dec 30 17:55:45 1997 Olaf Weber * install.texi, bugs.texi: Add comment about the need to use special compiler options in HP-UX. * mktexpk: Use nonstopmode for mf, in case of failure move log file to working directory. * mktextfm: Use nonstopmode for mf, in case of failure move log files to working directory. * mktexlsr: Add comment about use in cron scripts, use SEP variable for path separator. * mktexupd: Check for both new and old magic string in ls-R files, use SEP variable for path separator. * mktex.opt: Pick the correct path separator for MS-DOS and UNIX. Add a more appropriate magic string for ls-R files, but keep the old one around for compatibility. * Makefile.in (install-exec): Add check for original mktexlsr. Thu Dec 18 20:33:56 1997 Olaf Weber * tex-file.c (init_path): Rewrite test whether we're initializing the kpse_cnf_format paths. * tex-file.c (kpse_init_format): Initialise the binmode fields. (kpse_open_file): Use binmode field. * tex-file.h: Add binmode field to kpse_format_info_type. * kpsewhich.c: Correct option string. * tex-file.c (kpse_open_file): Assume kpse_truetype_format and kpse_type42_format are for binary files. Tue Dec 16 19:13:14 1997 Olaf Weber * texmf.in: Don't make PKFONTS.xdvi a special case. Let all programs look in modeless. If a program shouldn't look there, give it a special PKFONTS line. Mon Dec 15 18:58:01 1997 Olaf Weber * texmf.in: Add TTFONTS and T42FONTS. * Makefile.in (stamp-paths): The regular expression for variables had to be amended for T42FONTS. * tex-file.c (kpse_init_format): Add kpse_truetype_format and kpse_type42_format. * tex-file.h: Add kpse_truetype_format and kpse_type42_format to kpse_file_format_type. Sat Dec 13 11:24:23 1997 Olaf Weber * xputenv.c (xputenv [WIN32]): This system deletes an environment variable if it is set to "", with consequences for the code that reclaims the space. From Fabrice Popineau. Fri Dec 12 10:44:02 1997 Olaf Weber * acconfig.h: Add HAVE_PROTOTYPES. * c-proto.h, c-vararg.h: Test for HAVE_PROTOTYPES. * common.ac: Add explicit test for prototypes, instead of relying on __STDC__. * hash.c, hash.h (hash_remove): New function. * install.texi: Rewritten passage on font destinations, corrected reference to Triptrap node in web2c. * mktexpk, mktextfm: When mv fails, try cp. Matters on MS-DOS. * progname.c (selfdir): Test whether we are a directory, rather than whether we are not a link or file. * texmf.in: Change openout_any to paranoid. Tue Dec 9 19:08:04 1997 Olaf Weber * mktexpk: Restored test-and-move, which turns out not to be a no-op for fonts generated with gsftopk. Thu Dec 4 12:53:52 1997 Olaf Weber * texmf.in: Add TEXINPUTS.mltex and TEXINPUTS.mllatex. Tue Dec 2 12:58:04 1997 Olaf Weber * Makefile.in (distclean): Add stamp-paths. From Sebastian Rahtz . * progname.c (kpse_set_program_name [!HAVE_PROGRAM_INVOCATION_NAME && !WIN32 && !__DJGPP__]): Remember to set program_invocation_name. * getopt.c: A few changes for WIN32. From Fabrice Popineau. Mon Dec 1 19:08:07 1997 Olaf Weber * kpathsea.texi: Updated for absence of alternate TeX suffixes. * kpsewhich.c: Don't complain about unkown suffixes: it's all kpse_tex_format to us. * tex-file.c: Remove the interminable list of alternate TeX suffixes. * Makefile.in ($(library).h): Take win32lib.h into account: it should not be included by this file, as config.h will do so if needed. * progname.c (kpse_set_program_name [WIN32, __DJGPP__]): Changes from Fabrice Popineau. * win32lib.h: New file. From Fabrice Popineau. * config.h: Include instead of "../win32/win32-compat.h". From Fabrice Popineau. * access.c: Include . From Fabrice Popineau. * absolute.c (kpse_absolute_p [WIN32]): Filenames starting with \\ are absolute on this platform. From Fabrice Popineau. * tex-glyph.c (try_format): Oops, kpse_format_info[format].suffix is now a list of strings. Sun Nov 30 13:23:54 1997 Olaf Weber * texmf.in, mktex.opt, mktexdir, mktexdir.opt, mktexlsr, mktexmf, mktexnam, mktexnam.opt, mktexpk, mktextfm, mktexupd: Add a MKTEXSCRIPT variable, which is the directory where supporting scripts are found. Defaults to $TEXMFMAIN/web2c if not defined. * Makefile.in, bugs.texi, db.h, install.texi, kpathsea.texi, kpsewhich.c, proginit.c, tex-file.c, tex-file.h, tex-glyph.c, tex-make.c, tex-make.h, texmf.in, withenable.ac, mktex.opt, mktexdir, mktexdir.opt, mktexlsr, mktexmf, mktexnam, mktexnam.opt, mktexpk, mktextfm, mktexupd: Changes for the great renaming... Sat Nov 29 13:10:42 1997 Olaf Weber * The great renaming of the MakeTeX* scripts. MakeTeXPK -> mktexpk MakeTeXTFM -> mktextfm MakeTeXMF -> mktexmf MakeTeXls-R -> mktexlsr MakeTeX.site -> mktex.cnf MakeTeXcommon -> mktex.opt MakeTeXmkdir -> mktexdir MakeTeXmkdir.opt -> mktexdir.opt MakeTeXnames -> mktexnam MakeTeXnames.opt -> mktexnam.opt MakeTeXupdate -> mktexupd * Makefile.in (install-exec): Adapted for removal MakeTeX.cnf. * MakeTeX.cnf: Removed. * MakeTeXcommon: Fold MakeTeX.cnf into MakeTeXcommon. * tex-file.c (kpse_init_format): Add kpse_fmt_format add ".efmt" and ".efm" to additional suffixes. * db.c [DB_HASH_SIZE]: From 7603 increased to 15991. * tex-file.c: Yet more suffixes for kpse_tex_format. Tue Nov 25 18:19:17 1997 Olaf Weber * progname.c (kpse_set_program_name): Ensure that kpse_program_name doesn't get an .exe suffix. The program_invocation*name variables retain it. Mon Nov 24 22:03:12 1997 Olaf Weber * MakeTeXls-R: When creating the ls-R file from scratch, derive its permissions from the $db_dir, not from the current dir. Sun Nov 23 13:17:16 1997 Olaf Weber * texmf.in: Update to use : instead of , in braces. * kpathsea.texi: Document use of path separator in brace expansion, note that the comma is deprecated. * path-elt.c (element): Dont split within braces. * expand.c (expand_amble): Break text in pieces at ENV_SEP as well as commas. Sat Nov 22 19:35:30 1997 Olaf Weber * tex-file.c: Correction of description "PostScript header/font" to "PostScript header". * db.c (kpse_db_insert): Add cast for const correctness. * kpathsea.texi: Document kpse_set_program_name; updates. * kpsewhich.c: Many changes to support multiple standard suffixes. * progname.c (kpse_set_program_name): Add a few casts for const correctness. * tex-file.c: Many changes to support lists of standard suffixes. * tex-file.h: kpse_format_info_type: change type of suffix from const_string to const_string*. Fri Nov 21 15:17:35 1997 Olaf Weber * c-proto.h: Restored AA macro, needed by revised web2c. Thu Nov 20 14:23:33 1997 Olaf Weber * MakeTeXPK: Removed a test-and-move that is always a no-op. * MakeTeXnames: A shell on FreeBSD didn't like the ${foo:=`bar`} construct. Wed Nov 19 17:24:08 1997 Olaf Weber * MakeTeXls-R, MakeTeXMF, MakeTeXPK: Make temporary names fit into the 8.3 pattern. After Eli Zaretskii. * MakeTeXTFM: Make temporary names fit into the 8.3 pattern. Allow a second optional argument. Update usage message. After Eli Zaretskii. * MakeTeXcommon: Make temporary names fit into the 8.3 pattern. Do a 'cd /' before we cd to $KPSE_DOT, for MS-DOS' sake. After Eli Zaretskii. * MakeTeXnames: If $DEST starts with "letter-colon-slash", it still indicates an absolute path. After Eli Zaretskii. * MakeTeXnames.opt: Enable dosnames if we find COMSPEC set in the environment. This is apparently the canonical test for this kind of thing. After Eli Zaretskii. * Makefile.in: Numerous small changes to make building on MS-DOS easier. In particular to the rule for texmf.sed. * install.texi: Add table headers. After Eli Zaretskii. * tex-file.c (kpse_open_file): Open kpse_tex_ps_header_format and kpse_pict_format files in binary mode. After Eli Zaretskii. Tue Nov 18 11:50:35 1997 Olaf Weber * install.texi, README, Makefile.in: Changed the name of CONFIGURE to README.CONFIGURE. * Makefile.in (mostlyclean): delete klibtool.version. Sat Nov 15 21:13:46 1997 Olaf Weber * MakeTeXPK: Use quotes to ensure that test "$mf_bdpi" != $BDPI has a first argument. This occurs only in pathological circumstances, but is nevertheless annoying. * texmf.in: Add TEXINPUTS.foo for omega and lambda. Fri Nov 14 16:35:46 1997 Olaf Weber * texmf.in: Add TEXINPUTS.foo definitions for e-TeX and PDFTeX. * tex-file.h: Add kpse_find_ofm and kpse_find_ovf macros. * tex-file.c (kpse_find_file): Add a search for Omega. Thu Nov 13 22:43:06 1997 Olaf Weber * progname.c (expand_symlinks): Don't call fclose on a NULL pointer. After Gary Jennejohn . Wed Nov 12 16:20:02 1997 Olaf Weber * kpsewhich.c: Use kpse_set_program_name instead of kpse_set_progname. * tex-file.c, cnf.c: Use kpse_program_name instead of program_invocation_short_name. * progname.h (kpse_set_program_name, kpse_reset_program_name): New functions. (kpse_program_name): New global. * progname.c (kpse_set_program_name): New function, to replace kpse_set_progname. This fixes the problem that we may want to pretend to be a different program, but need the name by which we were called because that is the one for an executable and is guaranteed to exist. The pretend-name is stored in kpse_program_name. (kpse_reset_program_name): To reset kpse_program_name to a different value. It makes a half-hearted attempt to clear the search path information, so that the new name is used there as well. Mon Nov 10 13:14:01 1997 Olaf Weber * configure.in (KPSEVERSION): version 3.1. Thu Nov 6 20:25:49 1997 Olaf Weber * texmf.in: Corrected comment on size of max_print_line: it must at least be 60. Tue Nov 4 19:08:37 1997 Olaf Weber * Makefile.in (install-data): Handle a split kpathsea.info. * common.ac: Add a test to ensure that autoconf 2.12.1 -- the one with our own hacks -- is used. Wed Oct 29 11:49:46 1997 Olaf Weber * c-fopen.h [!DOSISH]: Guard against redefining O_BINARY. From Andreas Scherer . Mon Oct 27 17:25:19 1997 Olaf Weber * install.texi: Update for new MakeTeX* scripts. * MakeTeXnames: Handling of empty namepart. Fri Oct 24 14:23:58 1997 Olaf Weber * getopt.[hc]: Changes for WIN32, which are likely to be a pain if these files are ever updated wholesale. After Fabrice Popineau. Thu Oct 23 11:16:26 1997 Olaf Weber * MakeTeXnames: Corrected bug in assignemnt to stdfontpath. Wed Oct 22 17:36:57 1997 Olaf Weber * MakeTeXmkdir: Added a bit of boilerplate to the use of MT_APPEND_MASK. * Makefile.in: It's acconfig.h, not c-auto.h, that we do not want to install. * lib.h: Remove kpathsea/config.h from the includes. Note that lib.h is itself included by config.h. * Makefile.in: Change generation of kpathsea.h to put config.h first. Tue Oct 21 23:15:28 1997 Olaf Weber * MakeTeX.site, MakeTeX.cnf: Remove MT_FILE_PERMS, MT_DIR_PERMS. * MakeTeXmkdir: Use kpsestat to obtain suitable directory permissions. * MakeTeXnames, MakeTeXnames.opt: Include code that infers destination directories from where the sources are found. Make use of fontmaps an option, move that part of the code to MakeTeXnames.opt. * MakeTeXls-R: Use kpsestat to obtain suitable file permissions; this means we no longer use unset. Use access rather than test to determine whether we can write the ls-R database. * MakeTeXTFM, MakeTeXMF, MakeTeXPK: Use kpsestat to obtain suitable file permissions. * Makefile.in: Minor changes, because of the new files and renaming. * MakeTeXnames.opt, MakeTeXmkdir.opt: renamed from MakeTeXnames.cnf and MakeTeXmkdir.cnf respectively. Now MakeTeX.cnf contains the standard configuration, and MakeTeX.site the local adjustments. * kpsestat.c, access.c: New files. Mon Oct 20 07:22:33 1997 Olaf Weber * common.ac, Makefile.in, acconfig.in, config.h, install.texi, kpathsea.texi: Rename texmf.cnf.in to texmf.in / c-auto.h.in to * Renamed texmf.cnf.in to texmf.in. * bugs.texi: Add descriptions of GSFTOPK_DEBUG, MAKETEX_DEBUG, and MAKETEX_FINE_DEBUG. From Fabrice Popineau. * c-fopen.h [WIN32]: Use setmode in stead of _setmode. From Fabrice Popineau. * c-pathch.h, absolute.c [NAME_BEGINS_WITH_DEVICE]: Corrected definition. From Fabrice Popineau. * c-proto.h: Cosmetic change in definition DllImport. From Fabrice Popineau. * debug.h [WIN32 && _DEBUG]: Extra debugging code for WIN32. From Fabrice Popineau. * install.texi: Extend description of the dosnames feature. After Fabrice Popineau. * lib.h: Add kpathsea/config.h to the includes. New macro STRNEQ. From Fabrice Popineau. * progname.c (kpse_set_progname [WIN32]): New environment variable KPSE_DEBUG_OUTPUT. If defined, it names a file to which stderr will be redirected. From Fabrice Popineau. * tex-make.c: Various cosmetic changes for WIN32/MS-DOS. From Fabrice Popineau. Fri Oct 17 10:41:08 1997 Olaf Weber * db.c (kpse_db_insert): Remove dubious cast of result of basename. * progname.c (kpse_set_progname [!HAVE_PROGRAM_INVOCATION_NAME]): Removed dubious cast of basename. * tex-file.c (kpse_find_file): Reorganize searches, so that foo.bar.tex is found before foo.bar. * tex-make.c (maketex) [MSDOS]: Redirect stderr to the null device without using the shell (which requires users to install a port of a Unixy shell, since stock DOS shells don't allow redirecting stderr). (kpse_make_tex) [MSDOS]: Don't use the shell to redirect stderr. From Eli Zaretskii . * readable.c (READABLE) [__DJGPP__]: Use `access' instead of `stat', since `stat' is expensive on MS-DOS. Eli Zaretskii . * pathsearch.c (search) [__DJGPP__]: Make `stat' work in the fastest possible way, since it can be very expensive on MS-DOS. (main): Use ENV_SEP_STRING instead of explicit ":". From Eli Zaretskii . * path-elt.c (main): Use ENV_SEP_STRING instead of explicit ":". From Eli Zaretskii . * kpsewhich.c (path_expand): Handle file names with device letters. (read_command_line): Use ENV_SEP_STRING instead of explicit ":". After Eli Zaretskii . * kdefault.c (main): Use ENV_SEP_STRING instead of explicit ":" (which is only true on Unix). From Eli Zaretskii . * cnf.c (do_line) [__DJGPP__]: Don't convert semi-colons to colons, even though DJGPP defines `unix'. From Eli Zaretskii . * absolute.c (kpse_absolute_p) [DOSISH]: Don't assume the drive letter is alphanumeric. From Eli Zaretskii . * xgetcwd.c (xgetcwd) [DOSISH]: Prepend drive letter before path. From Eli Zaretskii . * progname.c (kpse_set_progname) [__DJGPP__]: Compute the long file name of the program given its 8+3 alias. (kpse_set_progname) Compute SELFAUTOLOC before removing the ".exe" suffix, if any, because `selfdir' might look along the PATH for the file. After Eli Zaretskii . * config.h (DOSISH): Move the definition to the top, so we could define MONOCASE_FILENAMES right there. [__DJGPP__]: Include DJGPP-specific headers. [DOSISH]: Let DJGPP use ST_NLINK_TRICK, since it supports it. From Eli Zaretskii . * lib.h (FILESTRNCASEEQ): New macro, for partial compares of filenames. From Eli Zaretskii . * c-fopen.h (FOPEN_RBIN_MODE, FOPEN_WBIN_MODE): Let MS-DOS use these also. (FOPEN_ABIN_MODE): New macro, defines how to open a binary file for appending. (SET_BINARY): New macro, switches an already open file to binary mode (required for stdin/stdout on MS-DOS/MS-Windows). From Eli Zaretskii . * c-pathch.h (NAME_BEGINS_WITH_DEVICE): Don't assume the drive letter is A-Z only (DOS allows 6 characters beyond Z). After Eli Zaretskii . Thu Oct 16 10:22:42 1997 Olaf Weber * configure.in: Update stamp-auto after creating c-auto.h. From Peter Breitenlohner. * Makefile.in: Don't rewrite paths.h if it was not changed. After Peter Breitenlohner. Wed Oct 15 15:33:43 1997 Olaf Weber * xputenv.c (xputenv): Don't do anything if the old and new values of the environment variables are identical, because some libraries (DJGPP) will will optimize away such no-ops, and therefore freeing the old value will lead to disaster. Free new_item if it was copied by the library `putenv'. From Eli Zaretskii * tex-file.c (kpse_open_file): Open kpse_{pk,base,fmt,mem,type1}_format files in binary mode. * install.texi: Remove description of the feature that (say) MAKETEXPK in the environment can be used to provide a specification of the argument list of MakeTeXPK. Reason: the feature isn't implemented. Tue Oct 14 17:08:22 1997 Olaf Weber * xgetcwd.c: Rename DO_NOT_USE_GETCWD to GETCWD_FORKS. * common.ac: Add a test for GETCWD_FORKS. * acconfig.h: Include GETCWD_FORKS. Mon Oct 13 19:42:58 1997 Olaf Weber * path-elt.c (element): Always return a new string rather than a part of the path, as the returned string may be modified. * tex-file.c (remove_dbonly): Replaced hard-coded ':' with ENV_SEP. From Fabrice Popineau. * common.ac, configure.in: Move definition of KPSEVERSION from common.ac to configure.in. * common.ac: Check for presence of getcwd. * xgetcwd.c: Use getcwd in preference to getwd, unless DO_NOT_USE_GETCWD is defined. * MakeTeX.cnf: Made varfonts the default. * elt-dirs.c, path-elt.c, tilde.c, variable.c: Print (nil) instead of (null), so we can distinguish *printf being fed a null pointer. * tex-file.c: remove_dbonly: Corrected off-by-one error in allocation. Sat Oct 11 13:48:33 1997 Olaf Weber * elt-dirs.c (main) [TEST, AMIGA]: Changed test code for Amiga. From Andreas Scherer . Mon Oct 6 16:36:50 1997 Olaf Weber * install.texi: Document --enable-maintainer-mode switch. Sat Oct 4 19:27:22 1997 Olaf Weber * MakeTeXnames.cnf: Add "strip" feature for backwards compatibility with 7.0. * Use a new set of MakeTeX* scripts, from Thomas Esser. Fri Oct 3 09:54:47 1997 Olaf Weber * kpsewhich.c (path_expand): Don't scribble in the datastructures of the system to get rid of trailing slash, use "%.*s" format of printf instead. * Makefile.in (texmf.sed, paths.h): Take the changes to texmf.cnf.in into account. * texmf.cnf.in: Redo variable definitions for the sake of clarity. * hash.c (hash_create): Make ret static to work around a gcc optimizer bug on the Alpha. * elt-dirs.c (do_subdir,expand_elt): Cleanup by Greg Hudson , which might fix the '//' in path problem on the Amiga as well. * xrealloc.c: Get prototype for realloc from config.h, give prototype for xmalloc, prototype xrealloc itself. After Fabrice Popineau. * xmalloc.c: Give xmalloc a prototype, get prototype for malloc from config.h. After Fabrice Popineau. * tex-file.c [TEX_SUFFIXES]: Brought into sync with tex.ch. * install.texi: Extend comments on shared library support. Thu Oct 2 00:14:57 1997 Olaf Weber * texmf.cnf.in [buf_size]: Increased from 3000 to 10000. * tex-file.h (enum kpse_src_type): removed trailing comma. From Ezra Peisach . * c-proto.h [AA]: Obsolete due to changes to web2c.y; removed. * bugs.texi: Document KPSE_DEBUG_VARS. * debug.h [KPSE_DEBUG_VARS]: New #define for debugging. From Nicolai Langfeldt . * variable.c (kpse_var_value): Add code to report how variables were expanded. From Nicolai Langfeldt . * progname.c (selfdir) [!AMIGA]: Directories were mistaken for executables. From Matthias Clasen * tex-file.c (remove_dbonly): New function that strips the !! from path specifications. Called when creating the path for kpse_db_format. From Thomas Esser * install.texi: The default installation directory is not always /usr/local, as configure will pick the location of an existing tex installation. Wed Oct 1 13:43:18 1997 Olaf Weber * texmf.cnf.in: Various definitions have changed to take advantage of the new brace expansion code. The various intermediate variables (fontdir, web2cdir, ...) have been removed because you could burn yourself severely by accidentally setting these undocumented variables -- this happened with some versions of make during compilation. Tue Sep 30 16:14:48 1997 Olaf Weber * kpathsea.texi: Document changes in brace expansion. * expand.c (array_concat): reversed the order concatenation, which result in more usable brace expansion. (kpse_expand_kpse_dot): new function. (kpse_path_expand): call kpse_expand_kpse_dot to expand relative components using KPSE_DOT, if the latter is defined. * common.ac: Define the version string. * version.c: Replaced version string with a define. * acconfig.h: Added defines for version strings. * Makefile.in: Let version = @KPSEVERSION@. * common.ac: Introduce KPSEVERSION for version. * tex-file.c (kpse_maketex_option): choose proper mf and tfm formats rather than tex. Mon Sep 29 22:47:23 1997 Olaf Weber * db.c (match): Repaired several off-by-one bugs. Wed Sep 17 21:09:56 1997 Olaf Weber * withenable.ac: Added the --enable-maintainer-mode option. Tue Aug 5 17:26:16 1997 Karl Berry * config.h (KPATHSEA): Define for the sake of kpathsea code getting merged back into original distributions. Sun Aug 3 17:14:47 1997 Karl Berry * install.texi: simple.tex doesn't exist in LaTeX 2e; it's sample2e. From: "Jonathan I. Kamens" and others. * db.c (kpse_db_search): Preprocessor # commands must start in column 1 for DEC OSF/1 2.0 cc. From: Andrew Komornicki . * common.ac (program_inv_name): Correct usage of AC_TRY_LINK. From: "John W. Eaton" . * Makefile.in (.SUFFIXES): Put before the .c.lo rule for the sake of FreeBSD 2.1.7 make. From: Hiroto Kagotani . Thu Apr 17 17:35:37 1997 Karl Berry * Makefile.in (paths.h): Replace $web2cdir too, for the sake of DEFAULT_TEXMFCNF. From: M G Berberich . Tue Apr 1 17:48:18 1997 Karl Berry * fontmap.c: Doc fix. * kpsewhich.c (find_format): Try the long name if the file format has no suffix, e.g., `dvips config'. From: "Tomasz J. Cholewo" Sun Mar 23 16:44:21 1997 Karl Berry * tex-file.c (kpse_find_file): Don't assert that `name' is empty, only NULL, so \input\relax doesn't crash. From: "Tomasz J. Cholewo" . Fri Mar 21 16:09:47 1997 Karl Berry * MakeTeXPK, MakeTeXcommon: Support a redirect option to MTPK, from Thomas via Paul V. * progname.c (selfdir) [AMIGA]: Fix from Andreas. Sun Feb 16 15:49:07 1997 Karl Berry * withenable.ac: `enableval' should have been `withval', and value must be quoted. * MakeTeXTFM: Exit if mf fails, a la MakeTeXPK. From: Julian Gilbey . Thu Feb 13 16:08:30 1997 Karl Berry * texmf.cnf.in (latex2*_inputs): Put $dbtex/generic before the ``other'' latex version. From: Olaf Weber . * progname.c (selfdir): Protect against argv0 being dir/exename, not found in PATH. Happens under Solaris. From: Ross Alexander (and many others). Sun Feb 09 15:27:15 1997 Fabrice POPINEAU * progname.c (kpse_set_progname): Added braces around Win32 code, because of variables declaration. Fri Feb 7 11:53:09 1997 Karl Berry * Version 3.0. * MakeTeXMF: Syntax problems with dc*. Fix from Thomas. * MakeTeX*: sed command to strip off all but the first of multiple trees in $TEXMF was faulty. * c-pathch.h (ENV_SEP, ENV_SEP_STRING) [AMIGA]: Change to ; for Andreas. Then Amiga binaries may be able to share the same texmf.cnf with Unix and NT. * texmf.cnf.in (main_memory): Decrease back to 263,000. It's not worth allocating 7MB on everyone's machine just to do xy-pic samples. Add a comment about it. Thu Feb 6 10:27:50 1997 Karl Berry * db.c (kpse_db_search): If an alias exists on disk, and the original entry in ls-R doesn't, use the alias. Idea, sample code from Fabrice. * cnf.c (do_line): Add awful kludge to translate ; to : when reading texmf.cnf values under Unix. The idea is to be able to write a single texmf.cnf that will work under both NT and Unix. * db.c: Doc fixes. * MakeTeXcommon: Set ps_to_pk. * MakeTeXPK: Use ps_to_pk instead of hardwiring gsftopk. * MakeTeX.site: Include ps_to_pk comment. * texmf.cnf.in (TEXMFCNF): Include SELFAUTOLOC (at the front). * progname.c (kpse_set_progname): Include SELFAUTOLOC for the real directory. It may be useful. Suggested by Andreas. * MakeTeXcommon: Add case for fc. * MakeTeX.site: Add comment for fc. * MakeTeXMF: Add case for fc, generated like Sauter. From Francois and Thomas. * progname.c [WIN32]: SELFAUTODIR fix from Fabrice. * kpathsea.h: Do not #include (infinite loop). From Fabrice and Richard. Tue Feb 4 13:20:09 1997 Karl Berry * tilde.c: xstrdup the result from getenv, since we end up freeing it with a path element of `~'. * MakeTeX.site: Include RCS id. * MakeTeX.site: Replace sample dc assignment with ec. * MakeTeXMF: Handle ec, use exbase for tc. * MakeTeXcommon (ecfontdir,tcfontdir): New variables. Tue Feb 04 15:11:29 1997 Fabrice POPINEAU * progname.c: argv[0] under Win95 is set to the short filename of the executable run. Changed the way program_invocatio_name is retrieved : used the SearchPath() win32 call, next FindFirstFile() to get the long filename. The selfdir stuff is not used any more for win32. Mon Feb 3 18:01:02 1997 Karl Berry * kpsewhich.c (read_command_line): Check for -1, not EOF, per new getopt. Sun Feb 2 16:06:42 1997 Karl Berry * texmf.cnf.in (PKFONTS.xdvi): Replace `gsftopk,ps2pk' by `modeless'. * MakeTeXPK (mode): Use `modeless' instead of `gsftopk'. * tex-file.c: Look for TEXINDEXSTYLE before INDEXSTYLE. Sat Feb 1 16:31:39 1997 Karl Berry * texmf.cnf.in: Doc fix. * progname.c (my_dirname): Check for device separators at the beginning fo the string. From Andreas. * c-pathch.h (IS_DIR_SEP) [AMIGA]: New definition from Andreas. (NAME_BEGINS_WITH_DEVICE): Remove. * tex-make.c (maketex) [AMIGA]: Have to call system instead of popen due to different interface. From Andreas. * progname.c (selfdir): Check self, not ret, for exiting the loop. (remove_dots): Missing indirection on ret. From Fabrice. Tue Jan 21 08:26:17 1997 Karl Berry * elt-dirs.c: Doc fixes. * db.c (match): Don't return false just because the path element ended in /. Bug from: Richard Walker . * expand.c (kpse_path_expand): Do variable expansion before splitting on path elements. Bug from: Richard Walker . * tilde.c [TEST]: Function name changed. From: Richard Walker . * texmf.cnf.in (MAILCAPLIBDIR): Rename from MAILCAPDIR. From Ulrik. Tue Jan 21 09:34:20 1997 Fabrice POPINEAU * c-pathch.h: NAME_BEGINS_WITH_DEVICE(string) new macro testing for the presence of a device name in front of the string. * progname.c (remove dots): stop before device name if present. When building the filename, do not add leading DIR_SEP if there is a device. * pathsearch.c (path_search): avoid searching the whole disk adapted for win32. * db.c: support aliases file along with db files. An alias file is named with ALIAS_NAME and the hashtable size is ALIAS_HASH_SIZE. When a name looked for has an alias, the alias is searched instead of the original name. The format of the aliases file is "real_name alias_name", one pair per line. Currently only for WIN32. Mon Jan 20 12:01:14 1997 Karl Berry * progname.c: Amiga patch from Andreas. Sun Jan 19 14:29:00 1997 Karl Berry * pathsearch.c (path_search): Strip off all but one of leading /'s. We never want to search the whole disk. * progname.c: Expand symlinks off the final filename, not the directory name. Sat Jan 18 14:39:00 1997 Karl Berry * texmf.cnf.in (param_size): Increase to 500 for the chemical formula macro package. From Thomas. * progname.c (expand_symlinks, ReadSymLink, CopyFirst, StripFirst, StripLast): New functions to expand symbolic links for SELFAUTO*. Noted by Thomas. * texmf.cnf.in (PKFONTS.xdvi): Fix tpyo. Document that memory changes (trie_size): Increase to 64000. Fri Jan 17 13:08:08 1997 Karl Berry * progname.c (remove_dots): Don't free the constant null string. From Andreas. * texmf.cnf.in (dbfontdir): Change to dbfonts (the commented-out one). Thu Jan 16 10:13:19 1997 Karl Berry * cnf.c (kpse_cnf_get): Avoid recursive init, due to new $TETEXDIR and other variables in default TEXMFCNF value. * getopt*, strtol.c: New versions from /gd/gnu/lib. * c-std.h (ALLOC_RETURN_TYPE): Only define if we're going to use it. * acconfig.h (EDITOR): Oops, %s not +%s. From: tim@maths.tcd.ie. * progname.c (kpse_set_progname): One more my_dirname call to get the parent and the grandparent in the environment variables. * texmf.cnf.in (texdir): Rename from tex, to avoid clash with TEX used by makempx -- win32 doesn't distinguish case on envvars. From Fabrice. (WEB2CDIR): Lowercase, so it doesn't end up in paths.h, just for cleanliness. * progname.c (kpse_set_progname): Pass program_invocation_name to selfdir instead of progname, just in case we HAVE_PROGRAM_INVOCATION_NAME and it's something different. From Fabrice. * tex-file.c (kpse_open_file): ocp, ofm and ovf should use FOPEN_RBIN_MODE. From Fabrice and John Plaice. * progname.c [AMIGA]: Fix syntax errors, remove_dots not necessary. From Andreas Scherer. * MakeTeXupdate: MakeTeXls-R isn't in the conf dir anymore, just in the regular path. From Thomas. Sun Jan 12 17:22:35 1997 Karl Berry * cnf.c (read_all_cnf): Do not test unallocated memory on empty lines; crashed on Alphas. * progname.c (dirname): Rename to my_dirname to avoid clash on Alphas. Sat Jan 11 16:28:54 1997 Karl Berry * c-std.h (calloc, malloc, realloc) [!STDC_HEADERS]: Only declare in this case. Tue Jan 7 17:44:01 1997 Karl Berry * MakeTeXPK: Doc fix. * texmf.cnf.in (KPSE_DOT): Define. * c-memstr.h: Doc fix. Wed Jan 1 16:58:02 1997 Karl Berry * pathsearch.h (kpse_filename_component): Declare this. * path-elt.c: Define it. * progname.c (remove_dots): New function to remove . and .. filename components. Subsumes slashify, it turns out. * Makefile.in (install-exec): Install MakeTeXls-R in $(scriptdir). Mon Dec 30 16:22:42 1996 Karl Berry * progname.c (kpse_set_progname): Strip off .exe if present. * cnf.c: Doc fix. * progname.c (slashify): New function, to translate \ into / for WIN32. (selfdir): Call it. * lib.h (FILE{STR,CHAR}CASEEQ) [MONOCASE_FILENAMES]: Define these, continuing yesterday's changes. From Fabrice. Sun Dec 29 13:26:09 1996 Karl Berry * db.c (match, elt_in_db), * elt-dirs.c (cached), * hash.c (hash_lookup), * kpsewhich.c (find_format, TRY_SUFFIX), * tex-file.c, * cnf.c (do_line): Compare filenames with FILESTRCASEEQ or FILECHARCASEEQ to support monocase filesystems. * hash.c (hash) [MONOCASE_FILENAMES]: Transform keys to uppercase. From Fabrice. * basename.c (basename): Consider device separators; if given 'e:foo.tex', should return 'foo.tex'. From: Fabrice POPINEAU . * types.h (boolean): Protect with #ifndef HAVE_BOOLEAN, for NeXT. From: Raf Schietekat Sat Dec 28 07:18:48 1996 Karl Berry * progname.c [AMIGA]: Add code for this case from Andreas S. Fri Dec 27 17:38:43 1996 Karl Berry * progname.c (S_IX{USR,GRP,OTH}): Define if not defined, for the NeXT. From: Gregor Hoffleit . * texmf.cnf.in (TEXMFCNF): Rewrite using /.'s etc. From Thomas. Sun Dec 15 06:21:22 1996 Karl Berry * common.ac (AC_CHECK_FUNCS): Add getwd. * lib.h (xgetcwd): Declare. * Makefile.in (objects): Add xgetcwd.lo. * xgetcwd.c: New file from xdvik. * texmf.cnf.in (TEXMFCNF): Add $SELFAUTODIR:$SELFAUTOPARENT. * progname.c (selfdir, dirname, etc.): New functions. (kpse_set_progname): Set SELFAUTODIR and SELFAUTOPARENT. Sat Dec 14 14:41:39 1996 Karl Berry * tex-file.h (kpse_src_type): New types kpse_tex{doc,source}_format. * tex-file.c (TEXDOC_ENVS, TEXSOURCE_ENVS): New envvars. (kpse_init_format): Handle them. * texmf.cnf.in (TEXDOCS, TEXSOURCES): New values. * kpathsea.texi: Document them. Fri Dec 13 16:46:00 1996 Karl Berry * expand.h: Doc fix. Thu Dec 12 17:25:25 1996 Karl Berry * xputenv.c [WIN32]: Work around putenv ("FOO=") unsetting FOO under NT. From Fabrice. Mon Dec 9 23:27:45 MET 1996 Thomas Esser * kpsewhich.c: add option -show-path to display the search path for a given file type. Mon Dec 9 17:23:32 1996 Karl Berry * readable.c (READABLE): Check !S_ISDIR instead of S_ISREG, to allow fifo's. Suggestion from: Krzysio Leszczynski . * tex-file.c (kpse_open_file): Open VF files in binary mode. From Fabrice. * types.h (boolean) [WIN32]: Remove this case, Fabrice has found another solution. * elt-dirs.c (expand_elt): Do not check for a device separator. From Fabrice. * texmf.cnf.in (OTPINPUTS, OCPINPUTS): These use a subdirectory omega/. From John P. Sun Dec 8 17:15:43 1996 Karl Berry * c-proto.h (DllImport): Define here. * config.h (DllImport): Instead of here. * kpsewhich.c: Other DllImport changes. * line.c [WIN32]: Include . * tex-file.c: Oops, had FOPEN_RBIN_MODE vs. R reversed. * tex-make.c (kpse_make_tex_discard_errors): Add Dllimport. * types.h (boolean): Bizarre WIN32 definition. From: Fabrice POPINEAU . Sat Dec 7 22:12:26 MET 1996 Thomas Esser * MakeTeXnames: Ensure that cmr1234 will be mapped to jknappen/sauter while cmr12 will still be mapped to public/cm. Fri Dec 6 15:08:35 1996 Karl Berry * texmf.cnf.in (OFMFONTS, etc.): New definitions for Omega. * tex-file.h (kpse_file_format_type): Define kpse_ocp_format, etc. * acconfig.h (MAKE_OMEGA_{OFM,OCP}_BY_DEFAULT): Include these. * tex-file.c (kpse_init_format): New cases for the Omega types. (OCP_ENVS, etc.): New environment variable lists. From: John Plaice . * texmf.cnf.in: Use fonts// consistently, instead of fonts/. * lib.h (itoa): Remove, it seems we don't use this function any more. * itoa.c: Remove. * acconfig.h (HAVE_ITOA): Remove this. * Makefile.in (objects): Remove. * cnf.c (do_line): Oops, tested prog after freeing it, should have tested prog2. From: Fabrice POPINEAU . Tue Dec 3 14:57:52 1996 Karl Berry * Makefile.in (objects): Remove strtol.lo, that's generated by configure. From: Gregor Hoffleit . Mon Dec 2 09:05:54 1996 Karl Berry * MakeTeXcommon: Set KPSE_DOT before the trap. From Thomas. Tue Dec 3 18:02:08 1996 Ulrik Vieth * texmf.cnf.in (TRFONTS): Set this to /usr/lib/font/devpost indepent of $prefix. Mon Dec 9 00:28:58 1996 Ulrik Vieth * MakeTeXcommon: Use `basename $0` in usage and version messages for consistency with other programs and scripts. Also accept -help, -version in addition to --help, --version. * MakeTeX{MF,PK,TFM,ls-R,mkdir,names,update}: Use `basename $0` in usage messages for consistency. Tue Dec 3 18:02:08 1996 Ulrik Vieth * texmf.cnf.in (TRFONTS): Set this to /usr/lib/font/devpost indepent of $prefix. Thu Nov 28 16:33:35 1996 Karl Berry * common.ac (AC_ISC_POSIX): Remove this; it causes warnings from Autoconf that make no sense, isn't cached, and is probably of dubious value today. * configure.in: Move the klibtool stuff to common.ac, so the program configure.in's can find it. Wed Nov 27 14:43:41 1996 Karl Berry * configure.in: Doc fix. * acconfig.h (HAVE_BASENAME, etc.): #undef these symbols so Autoheader can replace them; we use a non-standard macro to test for them, since they're part of the possibly-shared library. Mon Nov 25 14:04:42 1996 Karl Berry * Makefile.in (texmf.sed): Replace all $(texmf) with `$TEXMF' except on the TEXMF line itself. Sun Nov 24 10:06:35 1996 Karl Berry * Makefile.in (texmf.sed): Insert missing quote. (distdir): Use doc instead of listing all the targets (we were missing unixtex.ftp). * kpsewhich.c (read_command_line): Print the integer equivalent of each format. Sat Nov 23 15:38:31 1996 Karl Berry * xt.ac (with_x): Remove spurious ;;. Fri Nov 22 18:00:41 1996 Karl Berry * cnf.c (do_line): Let var.prog lines work if we're running prog.exe. This happens with --enable-shared. From Ulrik. Mon Nov 18 16:10:48 1996 Karl Berry * tex-file.c (kpse_troff_font_format): Change to DEFAULT_TRFONTS to make texmf.cnf.in change. Fri Nov 15 14:13:36 1996 Karl Berry * Makefile.in (texmf.sed): Get $TEXMF back into the paths. Noted by Andreas Scherer. (distdir): Add klibtool.version to the distribution. From Ulrik. (install-exec): Use INSTALL_SCRIPT for scripts. Mon Nov 11 16:16:50 1996 Karl Berry * various .c: Print (nil) instead of (null) so we can possibly detect printf of a null pointer. Sun Nov 10 16:22:43 1996 Karl Berry * xt.ac: New file so web2c and xdvi treat --with-x-toolkit uniformly. From Ulrik. Thu Oct 31 15:38:48 1996 Karl Berry * expand.c (kpse_path_expand): Do brace expansion first. (kpse_brace_expand): Expand each element of the brace expansion, so {~a,~b} expands. Suggested by Thomas. Fri Oct 25 16:51:14 1996 Karl Berry * Makefile.in (install-data): Install an empty dir file if none exists. (mostlyclean: Remove PROF etc. subdirs here. Tue Oct 22 13:56:20 1996 Karl Berry * Makefile.in ($(library).h): Make the modtime of the file the same as the latest other .h; otherwise, we think kpathsea always has to be remade. Sun Oct 20 18:06:36 1996 Karl Berry * Makefile.in (distdir): No need to distribute copying.texi. Mon Oct 14 11:32:51 1996 Karl Berry * Changes for NT from: Fabrice POPINEAU . * xputenv.c (putenv) [WIN32]: #include instead of declaring. * tex-file.c (kpse_open_file): Use FOPEN_RBIN_MODE for tfm and gf formats. * xopendir.h [!WIN32]: Conditionalize whole file. * xopendir.c (xopendir) [!WIN32]: Conditionalize defn. * kpsewhich.c (DllImport) [_WIN32]: Define. (path_sep): Use ENV_SEP_STRING. * progname.h, * lib.h, * debug.h (kpathsea_debug), * concatn.h (concatn): Give DllImport kludge. * config.h (DOSISH) [WIN32]: #define. Also include , etc. * c-std.h (getenv, popen, pclose) [WIN32]: Conditionalize decls. * c-fopen.h [WIN32]: Use rb and wb. * c-limits.h [HAVE_SYS_PARAM_H]: Conditionalize #ifdef. * common.ac: Check for * c-stat.h [WIN32]: #include and #define stat _stat. Sat Oct 12 11:10:45 1996 Karl Berry * tex-file.c (kpse_find_file): Include a suffix in what we pass to kpse_fontmap_lookup. * Makefile.in (paths.h): Remove extra $ when replacing $VARFONTS. Tue Oct 8 16:40:07 1996 Karl Berry * tex-glyph.c (try_fontmap): Do not return the first alias if it itself is an alias. Also, if a particular alias succeeds, return that. Sun Oct 6 17:52:58 1996 Karl Berry * version.c: Doc fix. Sat Oct 5 17:06:54 1996 Karl Berry * kpsewhich.c (-must-exist): New option. (must_exist): New global. * Makefile.in (install-data): Call install-info. * kpathsea.texi, *.texi: Use @url, @email, and @dircategory/@direntry. Sat Sep 21 19:02:17 1996 Karl Berry * MakeTeXnames.cnf: Doc fix. * texmf.cnf.in (latex{2e,209}_inputs): Replace spurious `latex2e'. (TEXINPUTS.fontinst): New definition, including AFM files. (MFINPUTS, TFMFONTS, PKFONTS): Use $VARFONTS. From Thomas. Sat Sep 7 16:00:53 1996 Karl Berry * MakeTeXupdate, * MakeTeXnames, * MakeTeXmkdir, * MakeTeXls-R, * MakeTeXTFM, * MakeTeXPK, * MakeTeXMF (version): Call kpsewhich in MakeTeXcommon, not here. * version.c: Doc fix. * kpsewhich.c (read_command_line): Improve formatting of --help message. Fri Sep 6 19:16:20 1996 Karl Berry * kpsewhich.c (read_command_line): Print the bug reporting address. * version.c (kpse_bug_address): New global. Thu Sep 5 19:08:04 1996 Karl Berry * Makefile.in: Doc fix. * configure.in: Include ../acklibtool.m4 here. * common.ac: Not here. Move calls to kb_*LIBTOOL* functions, too. Sun Sep 1 17:34:17 1996 Karl Berry * Makefile.in (.c.lo): Put filename right after $(CC), for Klibtool. (KPATHSEA_CC): Do not include ALL_CFLAGS here. (paths.h): Instead of deleting definitions with lowercase variable names, don't include them in the first place. Sat Aug 31 16:15:33 1996 Karl Berry * common.ac: Call kb_KLIBTOOL_REPLACE_FUNCS and kb_PROG_LIBTOOL instead of the AM_* versions. Also, include acklibtool.m4 instead of aclibtool.m4. * Makefile.in (liblobjs): Change to use @LTLIBOBJS@. Sat Aug 17 17:22:18 1996 Karl Berry * texmf.cnf.in (PKFONTS*, GFFONTS): Need another / to match TDS. Sat Aug 10 15:46:46 1996 Karl Berry * texmf.cnf.in (TFMFONTS, VFFONTS): Update with trailing // for TDS. * MakeTeXupdate, * MakeTeXnames.cnf, * MakeTeXnames, * MakeTeXTFM, * MakeTeXMF, * MakeTeXmkdir, * MakeTeXls-R, * MakeTeXPK: Change --expand to -expand-var. * tex-glyph.c (try_fontmap): Return the real name of the first alias as the font name. (kpse_find_glyph): Change call, free string if necessary, etc. Basic idea from a patch sent by wls@astro.umd.edu. Fri Aug 9 15:42:40 1996 Karl Berry * Makefile.in (paths.h): Substitute for dbtex, dbfonts, and prefix. Also, do not define lowercase variables. Thu Aug 8 14:50:29 1996 Karl Berry * texmf.cnf.in (TEXCONFIG, INDEXSTYLE): Use //, just in case there are subdirectories. From Thomas. Tue Aug 6 13:59:03 1996 Karl Berry * kpsewhich.c (lookup): Handle user_path case. Mon Aug 5 17:23:56 1996 Karl Berry * kpsewhich.c: Rename -expand to -expand-var, -path to -expand-path, and add new -path option to specify explicit path for lookups. * tex-file.h (kpse_ist_format): New format. * tex-file.c (kpse_init_format): Initialize it. (IST_ENVS): New #define. * texmf.cnf.in (INDEXSTYLE): Set the default path. * tilde.c (kpse_tilde_expand): If $HOME starts with //, only use one of the slashes. Sat Aug 3 17:18:00 1996 Karl Berry * kpsewhich.c (read_command_line): Change Usage: line to conform. Fri Aug 2 11:57:23 1996 Karl Berry * db.c (db_build): Test len > 0 before evaluating len - 1. From: "Peter Henderson, Syrinx Speech Systems P/L, Tel: (+61-2) 956-6540" . Sat Jul 27 14:35:17 1996 Karl Berry * Makefile.in (paths.h): Change target name to $(kpathsea_dir)/paths.h, for rdepend.make dependency. * Makefile.in (liblobjs): New variable, gets @LIBTOOL_LIBOBJS@. * common.ac (kbAC_LIBTOOL_REPLACE_FUNCS): Use this new macro instead of AC_REPLACE_FUNCS. Fri Jul 26 15:51:55 1996 Karl Berry * Makefile.in (KPATHSEA_CC): Include $(compile). (.c.lo): Change suffix rule for libtool 0.5. (install-exec): Use new variables INSTALL_LIBTOOL_*. Mon Jul 8 17:21:34 1996 Karl Berry * unixtex.texi: Rename from obtain.texi. Fri Jun 7 19:10:52 1996 K. Berry * common.ac: Include ../kpathsea/withenable.ac. Thu Jun 6 16:34:43 1996 K. Berry * Makefile.in (kpsewhich): Use libtool commands etc. instead of our shared lib stuff. * common.ac: Replace our shared lib stuff with gm_PROG_LIBTOOL. * withenable.ac: Remove --enable-shared stuff. Sat Jun 1 15:05:42 1996 Karl Berry * MakeTeX*: Add RCS info for version strings. Thu May 30 13:46:46 1996 Karl Berry * MakeTeXPK: Doc fix; we're called with the base font name (pplr8r), not the user font name (pplr). * db.c (ignore_dir_p): Remove the dot_pos != dirname test, since it's always true. It caused directory names containing .'s (e.g., `dc-1.2') to be ignored. From Thomas Esser and Frank Mittelbach. Sun May 26 16:06:41 1996 Karl Berry * tex-make.c (kpse_make_tex): If called kpse_init_form, reassign our local variable, too. Thu May 23 16:20:53 1996 Karl Berry * MakeTeXnames: Doc fix. Fri May 3 13:34:51 1996 Karl Berry * withenable.ac: Use AC_ARG_WITH instead of AC_ARG_ENABLE for maketex*. * tex-file.c (kpse_find_file): Oops, testing for kpse_pk_format twice, when meant to test for kpse_gf_format. * cnf.c (do_line): Allow whitespace in variable values. * texmf.cnf.in: Finish adding easier support for !!. From Joachim. Wed May 1 16:30:56 1996 Karl Berry * texmf.cnf.in (TEXCONFIG): Take $HOME back out again, we're going to hardwire a seach for dvipsrc in $HOME. Mon Apr 29 14:02:03 1996 Karl Berry * texmf.cnf.in (latex2e_inputs): Use just `latex', not `latex2e'. From: David Carlisle . (TEXINPUTS, etc.): Also rewrite to make !! support easier to add. From: Joachim Schrod . * install.texi: Document ksh/ash/Ultrix sh lossage, in favor of bash/bsh/sh5. Sun Apr 28 15:02:55 1996 Karl Berry * acconfig.h (ASM_NEEDS_UNDERSCORE): New define. From: Peter Breitenlohner . * Makefile.in (sharedlib_version): Remove unused variable. Sat Apr 27 17:15:14 1996 Karl Berry * texmf.cnf.in (hyph_size): Add this. Tue Apr 23 07:34:05 1996 Karl Berry * texmf.cnf.in (MIMELIBDIR, MAILCAPDIR): Add these. (MPXCOMMAND): And these. * MakeTeX.site: New file, just an example. Mon Apr 22 17:31:27 1996 Karl Berry * MakeTeXnames.conf: Rename to MakeTeXnames.cnf. * MakeTeXnames: Change call. * Makefile.in (install-exec): Change install. Sun Apr 21 12:09:06 1996 Karl Berry * tex-file.h (kpse_set_program_enabled, kpse_maketex_option): Declare new functions. (kpse_src_type): Define new type. * tex-file.c (kpse_set_program_enabled): New function, so we can set this at all the various levels and get the overrides right. (kpse_maketex_option): Handle MakeTeX options in a common place. * proginit.c (kpse_init_prog): Call it, and remove the make_tex_pk argument. * proginit.h (kpse_init_prog): Likewise. * kpsewhich.c (parse_options): New options -maketex and -nomaketex, just calls kpse_maketex_option. * Makefile.in ($(library).h): New target, made at dist time. Sat Apr 20 17:21:24 1996 Karl Berry * tex-file.c (kpse_find_file): Do not pound the disk on the first search if we might be trying the second. Tue Mar 12 15:21:16 1996 Karl Berry * MakeTeXPK: Restore check for mismatched mode and bdpi. From Thomas. Sun Mar 10 14:17:14 1996 Karl Berry * MakeTeXnames.conf: Rename VARFONTS to VARTEXFONTS. * MakeTeXcommon (trap): Oops, cd $KPSE_DOT before testing $STDOUT. Sat Mar 9 17:57:02 1996 Karl Berry * MakeTeXcommon (trap): cd back to KPSE_DOT before removing TEMPDIR, in case $TMPDIR is relative. Reported by Thomas. Fri Mar 8 11:41:22 1996 Karl Berry * db.c (kpse_db_search): Add debug statement with the result of the match. * tex-make.c (kpse_make_tex): Don't look for the arg spec here. * tex-file.c (init_maketex): Do it here. Check for disbaling in the config file, too. * tex-make.c (misstex): Look for TEXMFOUTPUT in texmf.cnf. * texmf.cnf.in (TEXMFOUTPUT): Define this. * kpathsea.texi (Suppressing warnings): New node to describe TEX_HUSH. * tex-file.c (kpse_init_format): Include the numeric value of the format for use with kpsewhich --format. * tex-hush.c: Support `all' to suppress everything. Thu Mar 7 11:24:51 1996 Karl Berry * kpsewhich.c: Change --program to --progname, for compatibility with TeX & co. * texmf.cnf.in (TEXCONFIG): Remove ~ from default path, for consistency with everything else. * readable.c: Let's call it TEX_HUSH instead of KPSE_NOWARN_PERM, so we can use it for checksum warnings, too. And for similarity with xdvi. * kpathsea.texi: Corresponding change. * tex-hush.[ch]: New files. Wed Feb 28 15:16:32 1996 Karl Berry * tex-make.c (misstex): Let the name missfont.log be configurable. * texmf.cnf.in (MISSFONT_LOG): Add this definition. * kpathsea.texi: Document this. Sun Feb 25 16:55:35 1996 Karl Berry * tex-file.c: Reverse order of alias & suffix searches, so we look for the original TFM name before aliases. Sun Feb 18 16:24:50 1996 Karl Berry * tex-file.c (xopenfile): Move this function to here and rename to kpse_open_file. * xopenfile.c: Remove this. * Makefile.in (objects): Remove xopenfile.o. Thu Feb 15 12:57:56 1996 Karl Berry * tex-make.c (maketex): Do not print the `kpathsea: Running ...' message if we're discarding output. (misstex): Do not log the missing file in missfont.log, either. Sat Feb 10 14:59:23 1996 Karl Berry * Makefile.in (sharedlib): Add new command here $(shared_postlink) so we can make the necessary symlink. (shared_postlink): New variable Fri Feb 9 15:46:55 1996 Karl Berry * withenable.ac (maketex{mf,pk,tfm}-default): Move here from web2c/withenable.ac. Wed Feb 7 16:52:08 1996 Karl Berry * MakeTeXnames.conf: Extract this new script from MakeTeXcommon, sigh. * MakeTeX*: Other updates from Thomas -- - replace the exec 3>&1 1>&2 by trap/subshell construction. The 3>&1 may cause the 'open fd bug' with bash. - ts is a typo. tc are the text companion fonts - replace >&3 by >$STDOUT where $STDOUT is a filename. Its content is displayed by the trap command in MTcommon. - added missing ;; in case/esac - use : ${VAR=VAL} where possible - added mt_min_args - removed psfonts.map parsing (was only needed for ps2pk) - removed >&2 where redirection stdout->stderr is active anyway - removed $TEMPDIR/mtout.$$ - add line trap 'test -f $STDOUT && cat $STDOUT; cd /; rm -rf $TEMPDIR; exit 0' 0 1 2 15 to MakeTeXcommon - MT_FEATURES now in MakeTeXnames.conf since we need to read it later than MakeTeXcommon Tue Feb 6 17:04:25 1996 Karl Berry * tex-file.h (kpse_file_format_type): Add afm and type1 support. * tex-file.c: Likewise. (kpse_init_format): In tex_ps_header_format, no longer need to recognize .pfa and .pfb. * texmf.cnf.in (AFMFONTS, T1FONTS): Likewise. * Makefile.in (paths.h): Include 0-9 in the regexp for the sake of T1FONTS. Sat Feb 3 15:45:00 1996 Karl Berry * Makefile.in (DEFS): Move to common.make. Mon Jan 29 17:01:44 1996 Karl Berry * MakeTeXls-R: Doc fix. Mon Jan 8 17:17:42 1996 Karl Berry * tex-file.c: Doc fix. * fontmap.c (MAP_NAME, MAP_HASH_SIZE): Conditionalize these #defines. Sun Jan 7 17:38:00 1996 Karl Berry * db.c (DB_HASH_SIZE, DB_NAME): Conditionalize these. * MakeTeXcommon (dcfontdir, tsfontdir): Use supplier `jknappen'. Mon Jan 1 15:14:42 1996 Karl Berry * Makefile.in (distdir): Don't bother including freedom.texi. Fri Dec 29 17:17:08 1995 Karl Berry * Makefile.in: misc.make is now clean.make. Tue Dec 26 14:21:08 1995 Karl Berry * withenable.ac: New file with --enable option extracted from common.ac, for the top level to include. * acconfig.h (MAKE_TEX_PK_BY_DEFAULT): Add this. * readable.c (kpse_readable_file): Omit warning if KPSE_NOREAD_WARN is set to 1. Wed Dec 13 14:14:09 1995 Karl Berry * kpsewhich.c: Call kpse_init_format when necessary in the --format case. Mon Dec 11 14:42:13 1995 Karl Berry * common.ac: --disable-shared should not act like --enable-shared. From Ulrik. Sun Dec 10 15:35:15 1995 Karl Berry * tex-file.h (kpse_mft_format): New format. * tex-file.c (MFT_ENVS): New variable. (kpse_init_format): Initialize it. * texmf.cnf.in (MFTINPUTS): New variable. Fri Dec 8 08:54:58 1995 Karl Berry * xopenfile.c: Doc fix. Mon Dec 4 17:23:34 1995 Karl Berry * Makefile.in (check): Extra $ missing. Sun Dec 3 13:42:54 1995 Karl Berry * tex-file.c (TEX_SUFFIXES): Add .dtx. Sun Nov 19 16:19:37 1995 Karl Berry * MakeTeX*: Use MakeTeXupdate, mkdir, etc. in $TEXMFCNF_DIR, not along PATH. From John I. Sat Nov 18 17:03:46 1995 Karl Berry * tex-file.c (TEX_SUFFIXES): Add .txi. Fri Nov 17 15:12:03 1995 Karl Berry * common.ac (kb_AC_SYS_SHAREDLIB): Add the kb_ prefix. * Makefile.in ({un,}install-exec): Use sharedlibname and staticlibname instead of `basename`. Also, pass no arguments to $(shared_postinstall); let the Autoconf macro set this completely. * expand.c: Bash code remains under the GPL, per rms. Thu Nov 16 16:14:14 1995 Karl Berry * Makefile.in (uninstall-exec): Needs same `basename` treatment as install-exec. From Ulrik. * config.h [AMIGA] (pclose): Must be #defined as 0, not just empty. From Andreas Scherer. Tue Nov 14 14:04:57 1995 Karl Berry * tex-file.h (kpse_fallback_resolutions_string): New global. * tex-file.c: Define it. (kpse_init_fallback_resolutions): Use it instead of DEFAULT_FONT_SIZES, if set. Mon Nov 13 10:43:11 1995 Kathy Hargreaves * find-suffix.c: Remove spurious + 1. Sun Nov 12 13:42:51 1995 Karl Berry * tex-file.c: Improve warning message if last resort sizes are not sorted. Suggested by Kathy. * texmf.cnf.in (trie_size, main_memory): Doc improvements from Wayne. Sat Nov 11 16:58:37 1995 Karl Berry * MakeTeXnames: Correct too many left quotes. * tex-make.c (kpse_make_tex): Initialize the format if necessary. Mon Oct 30 16:49:05 1995 Karl Berry * MakeTeXPK (GFNAME): Do not assume $cmd produced $GFNAME. From Tim. * texmf.cnf.in (trie_size): Increase to 32000 so common language combinations will require no change. Suggested by Ulrik. * MakeTeXls-R: Missing s in sed cmd. * MakeTeXTFM (TFM_NAME): Should be TFMNAME. * MakeTeXnames (FONTNAME): Missing `. * MakeTeXcommon: If the caller requires no args (i.e., MakeTeXls-R), don't complain if given no. Missing } in varfonts case. All from Thomas. Sun Oct 22 17:02:25 1995 Karl Berry * c-std.h (hypot): Remove this declaration. It was only needed for fontutils, and it conflicts under Linux 1.2.10. From Tim Murphy. Sat Oct 14 10:55:26 1995 Karl Berry * acconfig.h (EDITOR): Missing %. From Tim Murphy. Sat Oct 7 17:44:41 1995 Karl Berry * Makefile.in (install-exec): Use basename to get the real name so we don't install in $(libdir)/../kpathsea/etc. From Ulrik. Sat Sep 30 12:16:05 1995 Karl Berry * MakeTeXls-R (db_file_tmp): Replace double slashes with single, for the sake of NetBSD/FreeBSD. From Thomas. Fri Sep 29 11:29:08 1995 Karl Berry * Makefile.in (tex-file.o): CPPFLAGS is now ALL_CPPFLAGS. Mon Sep 25 15:05:32 1995 Karl Berry * lib.h (FATAL_PERROR): Avoid using the formal parameter `s' since cc gets confused with %s. * MakeTeXls-R: Include subtleties from Thomas. * MakeTeXcommon: Rename stickydir to appendonlydir. Sun Sep 24 13:15:51 1995 Karl Berry * cnf.c (kpse_cnf_get): Call kpse_init_db here. * pathsearch.c (search): Instead of here. * tex-file.c (init_format): The override path may be null, so use MAYBE to print it. * MakeTeXPK: Don't use unset, as Ultrix sh doesn't support it. Sat Sep 23 15:07:12 1995 Karl Berry * common.ac (basename strstr putenv): Use AC_REPLACE_FUNCS instead of AC_CHECK_FUNCS. Add strtol and strcasecmp from web2c/lib and xdvik. * Makefile.in (objects): Use @LIBOBJS@ instead of corresponding .o's. Fri Sep 22 13:34:51 1995 Karl Berry * acconfig.h (MAKE_TEX_*): #define as 0/1, instead of #undef, since we now pass this as a default argument to init_maketex. * tex-file.c (init_path): Look for environment variables PATH.prog and PATH_prog before PATH. Thu Sep 21 13:53:38 1995 Karl Berry * kpsewhich.c (USAGE): Avoid bare newline. * xfseek.c, xftell.c: Add unprototypification. * common.ac (library_cflags): AC_SUBST for this depending on --enable-shared. * Makefile.in (shared_cflags, sharedlib_cflags): Rewrite accordingly, so the shared flags aren't always used. Wed Sep 20 17:06:53 1995 Karl Berry * tex-file.c: Add .ltx, .texi, and .texinfo as alternate suffices for kpse_tex_format. Tue Sep 19 17:12:10 1995 Karl Berry * texmf.cnf.in: Changes for TDS. * MakeTeX*: New scripts from Thomas. Sat Sep 16 17:30:46 1995 Karl Berry * tex-file.c: Do not print extra `kdebug:'s when printing the alt_suffixes. * expand.c: Incorporate brace expansion code from bash. * texmf.cnf.in (PKFONTS.xdvi): Use it here, and document the possibility for $TEXMF. Thu Sep 14 12:59:17 1995 Karl Berry * tex-file.c (kpse_init_format): For any_glyph_format, do not initialize a suffix. * kpsewhich.c (main): Initialize all the formats. (find_format): psfonts.map => dvips_config_format. Tue Sep 12 16:19:44 1995 Karl Berry * MakeTeX{MF,TFM}: New scripts from te. * Makefile.in (install-exec, distdir): Install and dist them. Sun Sep 10 15:11:07 1995 Karl Berry * pathsearch.c (search): Doc fix. * tex-file.h (kpse_format_info_type): Add alt_suffix member. * tex-file.c (init_format): Set it for PS headers and picts, and print it if it exists. * kpsewhich.c: Use the new alt suffixes and also the regular suffixes to allow for -format names as well as numbers, and for file format guessing. Sat Sep 9 14:27:48 1995 Karl Berry * MakeTeXPK: If the MODE and BDPI don't match, ignore the mode. Suggested by Thomas. * tex-file.[ch] (kpse_font_override_path): Remove this. (kpse_format_info_type): Replace the `override_p' member with a general `override_path'. * proginit.c: Set the override path for both fonts and headers. * acconfig.h (NOTOOL): Add this. Fri Sep 8 14:52:42 1995 Karl Berry * acconfig.h (HYPERXDVI): Don't need this after all, Autoconf's default actions are better. Thu Sep 7 15:11:17 1995 Karl Berry * acconfig.h (HYPERXDVI): Define this. Mon Sep 4 17:14:25 1995 Karl Berry * debug.h (KPSE_LAST_DEBUG): Define this, for use with gsftopk. * Makefile.in (objects): Add xopenfile.o. * xopenfile.c: New file. * lib.h (xopenfile): Declare it. Sat Sep 2 13:49:53 1995 Karl Berry * tex-file.h (kpse_file_format): Rename kpse_ps_header_format to tex_ps_header_format. * tex-file.c (TEX_PS_HEADER_ENVS): Rename likewise, etc. * kpsewhich.c (suffixes): Likewise. * texmf.cnf: Likewise. * tex-file.c: Never set must_exist on the first search. Is this really correct? Fri Sep 1 13:24:49 1995 Karl Berry * tex-make.c (maketex): Give perror if the popen fails. * db.c (db_dir_list): Keep track of the directories we found db's in. (kpse_db_search): If no db directories are relevant to this path elt, return NULL. * db.h: Doc fix. * pathsearch.c (path_search): Doc fix. * Makefile.in (shared_ext, etc.): Move to common.make. Thu Aug 31 14:40:32 1995 Karl Berry * kpsewhich.c: Install suffix rewrite from Yves. * common.ac: Move AC_SYS_SHAREDLIB etc. here. * acconfig.h (ASM_SCALED_FRACTION): Add this. Wed Aug 30 17:02:58 1995 Karl Berry * tex-file.c (kpse_find_file): Call kpse_make_tex. * tex-make.c (kpse_make_tex): Only call set_maketex_mag if we are doing MakeTeX-PK or GF-ing. From Greg. Tue Aug 29 13:58:59 1995 Karl Berry * Makefile.in (texmf.sed): Depend on paths.make. Should we avoid creating a new file unless it changes, a la c-auto.h? * configure.in: Check for --enable-shared. Mon Aug 28 17:50:06 1995 Karl Berry * Makefile.in: Add sharedlib variables. Sun Aug 27 13:27:01 1995 Karl Berry * hash.c (hash_print): New option summary_only, and always print the summary. Also, output to stderr, not stdout. * hash.h: Change decl. * db.c (kpse_init_db): Oops, have to make it external, so rename again. * db.h: Declare it. * pathsearch.c (search): Call it. * cnf.c (read_all_cnf): Rename from read_files. * db.c (read_all_lsR): Rename from read_all_dbs. * fontmap.c (read_all_maps): Rename from map_create. * tex-file.h (kpse_db_format): Another new type. * tex-file.c (kpse_init_path): Case for it. (DB_ENVS): Envvar list. * texmf.cnf.in (TEXMFDBS): Default path. * kpsewhich.c (suffix): Add new element. Sat Aug 26 14:49:28 1995 Karl Berry * cnf.c (CNF_NAME): #define this. * tex-file.c (kpse_init_path): Instead of setting the .program element to texmf.cnf here. * db.c (db_insert): Rename to kpse_db_insert. * db.h: Change decl. * tex-make.c (maketex): Change call. * cnf.c, cnf.h, db.c, db.h, pathsearch.c: Remove references to kpse_db_dir. * pathsearch.c (first_search): New static. (path_search): Do not do ls-R search if first_search. (search): Do not log if first_search. * pathsearch.c (path_search): Don't bother calling elt_in_db -- the match function in db.c will catch the irrelevant hits. Pointed out by te. Fri Aug 25 14:01:24 1995 Karl Berry * cnf.c (kpse_cnf_get): Look for NAME.PROGRAM before NAME. (do_line): Save NAME.PROGRAM separately from NAME. * texmf.cnf.in: Put the usual definitions of TEXINPUTS and PKFONTS first now, before the .prog variants. * fontmap.c: Use ISSPACE instead of just checking for space and tab. Thu Aug 24 13:46:19 1995 Karl Berry * lib.h (strstr) [!HAVE_STRSTR]: Declare this. * Makefile.in (objects): Add strstr.o. * common.ac (AC_CHECK_FUNCS): Remove memmove; we seem to never use this. And add strstr. * fontmap.c (map_file_parse): Comments at the last % or @c, not at the first %. Also, implement the include feature. And thus, don't give up if the map file can't be opened. (token): New routine, since we can no longer use strtok. * tex-file.h (kpse_file_format_type): New format kpse_fontmap_format. * tex-file.c (kpse_init_format): Initialize it. (FONTMAP_ENVS): Define it. * texmf.cnf.in (TEXFONTMAPS): Define the default. * kpsewhich.c (suffix): Add .map. Tue Aug 22 13:28:46 1995 Karl Berry * MakeTeXPK.in: No >&/dev/null, source.map is now supplier.map. * tex-file.c: Doc fix. Mon Aug 21 15:52:42 1995 Karl Berry * c-memstr.h (SYSV): OK, omit this definition in the never-ending battle to appease the X headers. From: neal@ctd.comsat.com (Neal Becker). Sun Aug 20 12:58:28 1995 Karl Berry * cnf.c (read_files): Concatenate consecutive lines that end in \. * types.h (boolean) [__cplusplus]: Don't define true and false for C++. From: Johannes Sixt . * db.c (db_build): Call absolute_p to determine if the possible directory really is one. Also, allow relative names in the ls-R file. * kpsewhich.c: New options -path, -separator. From: David Aspinall . * MakeTeXPK.in: Unset DISPLAY and MFTERM. From: Yves Arrouye . * db.c (ignored_dir_p): New function to ignore . directories. (db_build): Call it, and do the ignoring. Report on how many directories were ignored. * Makefile.in (MakeTeXPK): Remove dcfontdir substitution. * MakeTeXPK.in: Play redirection games so regular echo's will work. (dcfontdir): Remove this; it's unused. From: te@informatik.uni-hannover.de (Thomas Esser). * pathsearch.c (path_search): Free more garbage. From: John Eaton . Sat Aug 19 12:57:54 1995 Karl Berry * kpsewhich.c (USAGE): Document -format and -program. * tex-make.c (maketex): Give warning if MTPK output a string that wasn't a filename. From Pierre. * kpsewhich.c (read_command_line): Execute -expand right * tilde.c (kpse_tilde_expand): If HOME is /, don't start path with //. From: Andreas Schott . * db.c (match): Make /// (or more) like //. * elt-dirs.c (do_subdir): Likewise. Also, skip over as many slashes as we found. * variable.c (expanding_p, expanding, expansions, expansion_type): New functions, variables, type. (expand): Check for recursively expanded variables. Reported by Nicolai Langfeldt . * cnf.c (kpse_cnf_get): Free temporary list after extracting the first element (the one we return). Fri Aug 18 17:39:29 1995 Karl Berry * MakeTeXPK.in (1270): The guess here should be linohi, not linolo. From pwa. * kpsewhich.c (suffix): Update for new MetaPost stuff. * tex-file.h: Doc fix. Mon Aug 14 17:49:05 1995 Karl Berry * debug.h: Define KPSE_DEBUG, not DEBUG. * hash.c, hash.h, tex-file.c, elt-dirs.c, dir.c, db.c: Change #ifdef's accordingly. From John I. Sun Aug 13 16:03:51 1995 Karl Berry * tex-file.h (kpse_file_format_type): Rename kpse_dvips_headers to just kpse_ps_headers. xdvik uses this too, now. * tex-file.c (kpse_init_format, KPSE_DVIPS_HEADER_ENVS): Likewise. Also, look for the PSHEADERS envvar, not DVIPSHEADERS. * texmf.cnf.in: Likewise. Thu Aug 10 19:31:14 1995 Karl Berry * tex-file.c (kpse_init_fallback_resolutions): Complain if sizes aren't sorted, and ignore offending sizes. From: Manuel Fahndrich . Tue Aug 1 13:53:53 1995 Karl Berry * variable.[ch] (kpse_var_value): Use const_string. * texmf.cnf.in (string_vacancies): Decrease to 25000. From Bernd. (font_max): Add this. From Wayne. Mon Jul 31 15:47:01 1995 Karl Berry * db.h (KPSE_DB_DIR): Remove $. * cnf.c (read_files): Call kpse_var_value instead of kpse_var_expand. * tex-file.[ch]: Add mpsupport and troff_font formats. * texmf.cnf.in: Likewise. Sat Jul 29 09:21:44 1995 Karl Berry * variable.h (kpse_var_value): Declare this. * variable.c (kpse_var_value): New routine. * tex-file.c: Check TEXMFINI for pool/fmt/base/mem lookups Tue Jul 25 11:22:25 1995 Karl Berry * concatn.c (concatn): Free the intermediate result, not the final version. * texmf.cnf.in (TEXMFLOG): Don't mention this, as we need to log the finding of the .cnf file itself, thus it must be an environment variable. Sat Jul 22 17:09:58 1995 Karl Berry * tex-file.c (KPSE_{MEM,MP,MPPOOL}_ENVS): Define envvars. * tex-file.h (kpse_file_format_type): Add kpse_{mem,mp,mppool}_formats. * texmf.cnf.in (MPPOOL, MPMEMS, MPINPUTS): New variables. Adapted from: vieth@xerxes.thphy.uni-duesseldorf.de (Ulrik Vieth). Fri Jul 21 15:26:42 1995 Karl Berry * *.c, *.h: The FSF has a new address. * kpsewhich.c: Give error if no args. Wed Jul 19 17:34:26 1995 Karl Berry * texmf.cnf.in: Document limits on error_line et al. Mon Jul 17 13:09:05 1995 Karl Berry * acconfig.h (NO_FMTBASE_SHARE): Rename to NO_DUMP_SHARE. Sun Jul 16 14:17:16 1995 Karl Berry * acconfig.h (IPC, FUNNY_CORE_DUMP, NO_FMTBASE_SHARE): Include these. Sat Jul 15 12:45:51 1995 Karl Berry * acconfig.h (HAVE_ITOA): Remove extraneous #define. * texmf.cnf.in (hash_extra): New TeX array variable, 0 by default. * tex-file.c (KPSE_BIB_ENVS): Include TEXBIB. Thu Jul 13 15:04:52 1995 Karl Berry * texmf.cnf.in (TEXPOOL, MFPOOL): Include . after all, now that we use TEXPOOL to search for tcx files. Sun Jul 9 15:30:59 1995 Karl Berry * tex-file.c (kpse_find_file): Don't go through the mapped_name_list if it's null. Wed Jun 21 19:47:33 1995 Karl Berry * lib.h (FATAL5): Define this. Sat Jun 10 15:52:41 1995 Karl Berry * tex-file.c (kpse_find_file): Use texfonts.map aliases for TFM searches. * tex-file.h: Doc fix. * fontmap.c (kpse_fontmap_lookup): New name. Fault in the map table as needed, instead of initializing. Make map_create static. * fontname.h: New name; remove map_create. * tex-glyph.c (try_fontmap): Just call kpse_fontmap_lookup, no need to create it. * fontmap.c (map_lookup): Don't let return value fall off the end in the suffix-appending case. From: "Heading, Anthony" . Fri Jun 9 19:11:34 1995 Karl Berry * tilde.c: Only assume PWD_H for looking up ~user, not for ~ or ~/. * make-suffix.c: Use IS_DIR_SEP instead of assuming /. * concatn.c: Free the in-between concatenations to avoid garbage. * absolute.c [OS2]: Use same conventions as for DOS. * c-std.h, c-pathch.h, c-fopen.h: Likewise. From: rs@purple.in-ulm.de (Ralph Schleicher). Tue Jun 6 13:11:46 1995 Karl Berry * lib.h (itoa) [!HAVE_ITOA]: Define conditionally. * itoa.c: Likewise. * acconfig.h (HAVE_ITOA): Add this. * c-pathch.h, c-fopen.h [DOS]: Changes from web2pc from Wayne. * xputenv.c: Doc fix. * truncate.c (kpse_truncate_filename): Check for a device separator. * elt-dirs.c (main): Tests for Amiga. Mon Jun 5 13:12:10 1995 Karl Berry * absolute.c: Add Amiga support. From Andreas Scherer. * c-pathch.h: Ditto. * elt-dirs.c (dir_list_add): Ditto. Check for device separators, too. Sun Jun 4 11:29:18 1995 Karl Berry * c-proto.h (AA): New macro to throw away (or keep) any number of arguments, used with an extra set of parens. * Makefile.in (distdir): Put PROJECTS in the distribution. Sat Jun 3 11:53:45 1995 Karl Berry * texmf.cnf.in (main_memory): Add definitions for TeX array sizes. * config.h (progname.h): Include this. * prog{init,name}.c, kpsewhich.c: No longer need to include it. * lib.h (START_FATAL, FATAL_PERROR): Use program_invocation_name in the error message. * variable.h: Doc fix. Fri Jun 2 13:41:29 1995 Karl Berry * config.h (DOSISH) [DOS || OS2]: Define this. Tue May 30 15:43:56 1995 Karl Berry * tex-file.c (kpse_find_file): Don't look for foo.sty.tex before foo.sty. Suggested by worsch@ira.uka.de. Mon May 29 15:24:38 1995 Karl Berry * db.c (db_insert): If DOS, don't check that first character on a line IS_DIR_SEP. From Sebastian. Sat May 27 13:51:47 1995 Karl Berry * pathsearch.c (log_search): Cast time_t arg to avoid printf warning. * lib.h (atou): Declare it. * Makefile.in (objects): Add atou.o. * atou.c: New file. Sun May 21 10:58:31 1995 Karl Berry * xfopen.c: Assert non-null filenames. Mon May 15 17:40:27 1995 Karl Berry * kpsewhich.c (USAGE): Add one-line description to the help message. Sun Apr 16 14:25:06 1995 Karl Berry * line.c (BLOCK_SIZE): Increase to 56, to avoid realloc's. Fri Apr 14 15:56:13 1995 Karl Berry * Makefile.in (objects): Add xfseek and xftell, from fontutils. Mon Mar 13 20:05:02 1995 Karl Berry * MakeTeXPK.in: Don't egrep in a file that doesn't exist. Fri Mar 10 10:49:28 1995 Karl Berry * tex-file.c (kpse_find_file): Abort if the name passed in is null or empty. Thu Mar 9 15:23:07 1995 Karl Berry * tex-file.c (kpse_init_format): Only do suffix searches for GF files. * acconfig.h: Warn that this is not the right thing to edit to fix configuration problems. Thu Mar 2 15:58:11 1995 Karl Berry * texmf.cnf.in (TEXFORMATS): Doc fix. Fri Feb 24 16:40:23 1995 Karl Berry * MakeTeXPK.in: `generate rootname' with no trailing punctuation for the dc fonts. Mon Feb 20 15:23:05 1995 Karl Berry * tex-file.h (kpse_find_mf): New abbreviation. Sat Feb 11 13:06:23 1995 Karl Berry * putenv.c: Include c-auto.h instead of kpathsea/c-auto.h, so the sed commands don't transform it into $(kpathsea_srcdir)/c-auto.h. From Andreas. * tex-make.c (maketex): Don't make a bad return from pclose a fatal error. Reported most recently by Wayne Sullivan, also by Andy Piper in the past. * MakeTeXPK.in (sauterdir): Only try this if we have the right b-foo.mf file. And correct $DESTDIR=... mistake. From Nick Cropper . Fri Feb 10 15:49:49 1995 Karl Berry * tex-file.c (INIT_MT): If the .program member has already been set, don't reset it. Wed Jan 18 15:47:07 1995 Karl Berry * xopendir.c (xclosedir): Use CLOSEDIR_VOID, not VOID_CLOSEDIR. From tim@maths.tcd.ie. * db.c (db_insert): Don't assert db.size>0, since we may not have called kpse_db_search. From te@informatik.uni-hannover.de. * MakeTeXPK.in (dc fonts): Don't put a trailing period in the filename. From Tor Lillqvist . Sun Jan 8 12:14:47 1995 Karl Berry * Version 2.6. Wed Jan 4 14:44:34 1995 Karl Berry * Makefile.in (mostlyclean): Remove kpsewhich. Tue Jan 3 11:48:40 1995 Karl Berry * kpsewhich.c (long_options): Can't make this automatic. * basename.c: Include before testing HAVE_BASENAME. * Makefile.in (kpsewhich): Make the library before kpsewhich.o. (paths.h): No need for the $(kpathsea_dir)/ any more, now make depend gets rid of it. * rm-suffix.c: Doc fix. * kpsewhich.c: Extract the dpi from the filename if possible. Mon Jan 2 09:45:17 1995 Karl Berry * Makefile.in (kpsexpand): Replace with kpsewhich. * proginit.h: Doc fix. * texmf.cnf.in (TEXMFCNF): Rename from TEXMF_CNF. * tex-file.c (kpse_init_format): Likewise. Sun Jan 1 14:04:41 1995 Karl Berry * Makefile.in (MakeTeXPK): Substitute for web2cdir. * MakeTeXPK.in: Use it for MakeTeXPK.site. (install-data): Install texmf.cnf in web2cdir instead of texmf. * texmf.cnf.in (TEXMF_CNF): Default path includes web2cdir. Sat Dec 31 14:26:48 1994 Karl Berry * Makefile.in (objects): No more @LIBOBJS@. * common.ac: Use AC_CHECK_FUNCS for basename, not REPLACE_FUNCS. The latter doesn't define HAVE_BASENAME. * basename.c [!HAVE_BASENAME]: Conditionalize whole file. * Makefile.in (uninstall-exec): Remove kpsexpand. (MakeTeXPK): New target. (install-exec): Install MTPK. (install-library): New target to replace install-headers. (install): Don't install-library by default. Fri Dec 30 15:53:04 1994 Karl Berry * Makefile.in (objects): Don't put @LIBOBJS@ on a line by itself. From Joachim. Mon Dec 26 07:55:40 1994 Karl Berry * common.ac (AC_FUNC_CLOSEDIR_VOID): Call this. Reported by Timothy Murphy . * tex-file.c (init_path): If a variable is set to an empty value, ignore it. Suggested by Stephen Gildea . * proginit.c: If passed a NULL mode, put / in the environment here. * tex-make.c (kpse_make_tex): Don't do STREQ on NULL (though it should never be NULL in the first place), and properly restore MAKETEX_MODE if it was /. Tue Dec 20 09:57:21 1994 Karl Berry * install.texi: Mention how to do optimization. Mon Dec 19 13:18:04 1994 Karl Berry * tex-file.h: Doc fix. Wed Dec 14 14:46:47 1994 Karl Berry * Version 2.5. * pathsearch.c (log_search): Don't prepend the `kdebug:' to the search result. Sat Dec 10 16:49:12 1994 Karl Berry * tex-make.c (set_maketex_mag): Make case of magstep -1 work properly. From a bug report by heiko@lotte.sax.de (Heiko Schlittermann). Mon Dec 5 11:58:08 1994 Karl Berry * Makefile.in (objects): Add @LIBOBJS@. * common.ac: Check for basename. * db.c (db_insert): Include trailing / in directory part, and pass the key and the value in the right order. From te@informatik.uni-hannover.de. Sun Dec 4 14:26:44 1994 Karl Berry * kpsexpand.c: Add extra filename argument. From ware@cis.ohio-state.edu. * common.ac: Use AC_TRY_RUN to test for SMART_PUTENV, not AC_TRY_LINK. From parkes@sierravista.com. * acconfig.h: Use #undef instead of commented-out `/* #define'. Sun Nov 27 13:47:06 1994 Karl Berry * db.c (db_insert): Don't try to insert into an empty hash table. From dc@cobi.gsfc.nasa.gov (and others). * pathsearch.c (log_search): Call DEBUGF, not printf, for the filenames. From John I. * tex-make.c (kpse_make_tex): If MAKETEX_MODE is /, unset it and reset it around the command expansion. (maketex): Back to calling db_insert. Sat Nov 26 11:44:09 1994 Karl Berry * cnf.c (read_file): If expansion of $TEXMF (KPSE_DB_DIR) fails, expand DEFAULT_TEXMF. From te@informatik.uni-hannover.de. Thu Nov 24 13:41:15 1994 Karl Berry * tex-file.c (KPSE_BST_ENVS): Do not look at TEXINPUTS. * tex-file.h: Doc fix. Tue Nov 15 14:06:56 1994 Karl Berry * progname.c (kpse_set_progname): Use basename. Fri Nov 11 19:12:23 1994 Karl Berry * acconfig.h (HAVE_SIGIO): Add this. Tue Nov 8 19:14:12 1994 Karl Berry * tex-make.c (kpse_make_tex): Change argument name from `basename', since now we have a fn by that name. * magstep.c (kpse_magstep_fix): Initialize mdpi. * basename.c (basename): Initalize base. Mon Nov 7 15:46:21 1994 Karl Berry * common.ac: Run autoupdate. * c-dir.h: Change #if names and NLENGTH to new style. Fri Oct 28 21:28:02 1994 K. Berry (karl@terminus.cs.umb.edu) * Version 2.4. * tex-make.c (maketex): Don't call db_insert, that routine is buggy. I'll fix it later. In the meantime, trying to get a semi-stable release. Tue Oct 25 16:43:31 1994 Karl Berry * Version 2.3. * progname.c (kpse_set_progname): Initialize kpathsea_debug from the KPATHSEA_DEBUG envvar. From neal@ctd.comsat.com. Mon Oct 24 13:41:24 1994 Karl Berry * db.c (db_insert): New function. * db.h: Declare it. * tex-make.c (maketex): db_insert the result if we succeeded. * basename.c: New file to define basename. * lib.h (basename): Declare it. * Makefile.in (objects): Include basename.o. * tex-file.h (kpse_file_format_type): Add missing enum values for base/fmt/pool files. * tex-file.c (kpse_init_format): Add cases for these. From te@informatik.uni-hannover.de. * lib.h (WARNING, FATAL): Use fputs instead of fprintf. * Many files: Use DEBUGF instead of printf ("kdebug". * debug.h (DEBUGF) [DEBUG]: Define this. * xputenv.c (xputenv): Initialize that static saved_env_items to null, just for documentation's sake. Tue Oct 18 13:19:06 1994 Karl Berry * tex-file.c (KPSE_*_ENVS): Move environment variable list here. * tex-file.h: Move them from here. * tex-glyph.h: Doc fix. * tex-file.c (kpse_find_file): Correct off-by-one in suffix comparison. From toy@rtp.ericsson.se. Mon Oct 17 14:01:02 1994 Karl Berry * elt-dirs.c (do_subdir): Find a top-level subdir if it matches the POST. * db.c (kpse_db_search): Allow for the passed name including a directory part, as in dpi600/cmr10.pk. * tex-glyph.c (try_format): First search all specs with must_exist=false. * kpsexpand.c: New file, from te@informatik.uni-hannover.de. * Makefile.in (kpsexpand): New target (a program). (install-exec): Depend on, and install, kpsexpand. * common.ac: Doc fix. * cnf.c (do_line): Don't quit just because the variable is in the environment. From te@informatik.uni-hannover.de. * tex-glyph.c (PXL_BITMAP_SPEC): Remove this, we're not going to support pxl1500. Sun Oct 16 20:46:26 1994 Karl Berry * kpathsea.texi: Make it clear that names of debugging bits can never be used. Fri Oct 14 10:31:35 1994 Karl Berry * Version 2.2. * hash.c (hash_lookup) [DEBUG]: Cast to long, not int. Thu Oct 13 15:39:34 1994 Karl Berry * db.c (db_build): Warn if ls-R contains nothing useful. * debug.c (fopen, fclose) [DEBUG]: fflush stdout. * dir.c (dir_links), * hash.c (hash_lookup), * tex-file.c (kpse_init_format), * elt-dirs.c (kpse_element_dirs): Likewise. Thu Oct 13 09:02:56 1994 Karl Berry * hash.c (kpse_debug_hash_lookup_int) [DEBUG]: New global. (hash_lookup): Use it. * hash.h [DEBUG]: Declare it. * dir.c (dir_links) [DEBUG]: Set it and reset it. * tex-glyph.c (PXL_BITMAP_SPEC): Add this (pxlNNN/cmr10.pk) for the Bitstream utilities. From abrahams@acm.org. (try_format): Search for this. Tue Oct 11 15:15:49 1994 Karl Berry * db.c (db_build): Use kpse_db_dir instead of KPSE_DB_DIR. This avoids one variable expansion, and te@informatik.uni-hannover.de says otherwise TeX sometimes can't find ls-R. Sun Oct 9 17:18:23 1994 Karl Berry * kdefault.c: Rename from default.c. * Makefile.in (objects): Likewise. Fri Oct 7 12:58:33 1994 Karl Berry * tex-file.c (kpse_init_format): Call INIT_MT for the any_glyph case. From carson@lehman.com. Sun Oct 2 14:11:20 1994 Karl Berry * magstep.c: Doc fix. Sun Sep 25 17:11:40 1994 Karl Berry * Makefile.in: Include library.make. Thu Sep 22 15:34:40 1994 Karl Berry * tex-file.h (kpse_file_format_type): Don't make equal to the last element index, make one more. From Eric Auborg. Thu Sep 15 19:24:30 1994 Karl Berry (karl@cs.umb.edu) * Makefile.in (distdir): Include install.texi in the distribution. Mon Sep 12 11:05:18 1994 Karl Berry (karl@cs.umb.edu) * Version 2.1. Sun Sep 11 15:03:18 1994 Karl Berry (karl@cs.umb.edu) * Makefile.in (install-data): Install texmf.cnf if it didn't exist. Sat Sep 10 13:28:29 1994 Karl Berry (karl@cs.umb.edu) * Makefile.in (texmf.sed, paths.h): Use tr 012 instead of \n. From John Interrante. * Makefile.in (distdir): Include the .aux and .cps files in the distribution. Don't include paths.h (from John Interrante). * kpathsea.texi: Fix overfull boxes and other TeX errors. Wed Sep 7 16:28:37 1994 Karl Berry (karl@cs.umb.edu) * Version 2.0. Tue Sep 6 10:33:18 1994 Karl Berry (karl@cs.umb.edu) * dir.c (dir_links): Use %ld for ret, since it's now a long. Sat Sep 3 09:01:25 1994 Karl Berry (karl@cs.umb.edu) * dir.c (dir_links): Use long instead of int for the cast and the variable, to avoid warnings on the Alpha. * c-std.h (SYSV, X_NOT_STDC_ENV): Don't define these here. * c-memstr.h (SYSV): Define this. (_XFUNCS_H_): And this. * Makefile.in (distclean): Add texmf.cnf and texmf.sed. Thu Sep 1 14:22:48 1994 Karl Berry (karl@cs.umb.edu) * xputenv.c (putenv): Declare this to avoid a warning. * xstat.c (lstat): And this. * common.ac (SMART_PUTENV): Use program to test for this. From mike@cs.utah.edu. * tex-glyph.c (try_fallback_resolutions): Quit early if there's no resolutions in the list. From sanjoy@dope.caltech.edu. Tue Aug 30 14:26:48 1994 Karl Berry (karl@cs.umb.edu) * acconfig.h (FOIL_X_WCHAR_T): New definition. * c-std.h (hypot) [!hypot]: Conditionalize declaration. Fri Aug 26 09:00:24 1994 Karl Berry (karl@cs.umb.edu) * Makefile.in (install-data): Install headers into $(includedir)/kpathsea, not just $(includedir). From john@wpi.edu. * pathsearch.c (search): Show results of the search as well as the start of it. Thu Aug 25 13:40:29 1994 Karl Berry (karl@cs.umb.edu) * proginit.c (kpse_init_prog): Newline at end of fputs. * pathsearch.c (search): Add debug statement. * debug.h (KPSE_DEBUG_SEARCH): New bit. * tex-file.h (kpse_format_info_type): Rename `font_override_p' from `font_p'. Also `program_enabled' => `program_enabled_p'. Also new member `suffix_search_only'. * tex-file.c (kpse_find_file): Avoid searching for foo.tex.tex, etc. Tue Aug 16 09:29:59 1994 Karl Berry (karl@cs.umb.edu) * tex-make.c (maketex): Announce that we are running the script before running it. Mon Aug 15 11:18:19 1994 Karl Berry (karl@cs.umb.edu) * texmf.cnf.in (PKFONTS.xdvi): Write program-specific definition to include gsftopk and ps2pk ``modes''. Sat Aug 13 16:34:43 1994 Karl Berry (karl@cs.umb.edu) * Makefile.in (lib): Rename to program to simplify rules. * magstep.h: Doc fix. * common.ac (AC_HAVE_FUNCS): Test for bcopy. Tue Aug 9 14:18:56 1994 Karl Berry (karl@cs.umb.edu) * tex-make.c (misstex): Prepend kpathsea: to the missfont.log message. Mon Aug 8 17:53:58 1994 Karl Berry (karl@cs.umb.edu) * tex-make.c (set_maketex_mag): Rewrite to call kpse_magstep_fix. * magstep.[ch]: New files. Fri Aug 5 14:07:51 1994 Karl Berry (karl@cs.umb.edu) * db.c (match): Allow a trailing component in the filename. Tue Aug 2 08:55:21 1994 Karl Berry (karl@cs.umb.edu) * Change `debug:' to `kdebug:'. * hash.c (hash_lookup): Print results of lookup if DEBUG_HASH. * debug.h (KPSE_DEBUG_HASH): New bit, replacing DB_BUILD. * db.c (db_build): Don't print the built hash table. * db.c (match): Implement this. Petr Sojka and Zdenek Salvet(?) supplied code for this, but I wound up writing my own. * variable.c (expand): Do variable expansion on the value. * texmf.cnf.in (TEXINPUTS): Put this after the .prog-specific entries. * tex-file.c (kpse_pict_format): Remember to break after setting the type. (EXPAND_DEFAULT, init_path): Keep raw_path as pre-default expansion. Sun Jul 31 14:18:09 1994 Karl Berry (karl@cs.umb.edu) * debug.c: Don't include debug.h, it's already in debug.h. * Makefile.in (db.o,pathsearch.o): Don't need these special cases since tossed db_dir from paths.make. * db.h (DB_DIR): Change default to $TEXMF, rename to KPSE_DB_DIR. (kpse_db_dir): New global variable (sigh). * db.c (kpse_db_dir): Define. * cnf.c: Include db.h for KPSE_DB_DIR. (read_files): Set kpse_db_dir after all have been read. * pathsearch.c (elt_in_db): Check if kpse_db_dir is null. (path_search): Do not initialize db_dir. Sat Jul 30 06:12:12 1994 Karl Berry (karl@cs.umb.edu) * c-dir.h [_POSIX_VERSION]: Remove this condition; just use DIRENT. Fri Jul 29 11:36:25 1994 Karl Berry (karl@cs.umb.edu) * tex-file.c (init_path): Look up cnf file value if no suffix. * xstat.h (SAME_FILE_P): Move here. * c-stat.h (SAME_FILE_P): From here. * file-p.c: Change include. * lib.h (dir_p, dir_links): Declare here. * dir.h: Split into xopendir.h and c-dir.h; Sun 3 include files get confused otherwise, according to john@minster.york.ac.uk. * xopendir.c: Include xopendir.h. * elt-dirs.c, dir.c: Change includes. Sun Jul 17 10:21:16 1994 Karl Berry (karl@cs.umb.edu) * hash.c (hash_insert): Put new elements in at the end of the list, instead of the beginning. * hash.h: Document this. * texmf.cnf.in (TEXMFROOT): Change to TEXMF. * kpathsea.texi: Likewise. * cnf.c (do_line): assert program_invocation_short_name. * progname.c: Doc fix. * absolute.[ch] (kpse_absolute_p): Take additional arg relative_ok. * pathsearch.c (log_search): Call it (with false). * tex-glyph.c: Change call. * pathsearch.c (path_search): Initialize db_dir here. (elt_in_db): Not here. Fri Jul 15 11:44:15 1994 Karl Berry (karl@cs.umb.edu) * tex-file.h: Doc fix. * pathsearch.c (log_search): Pass in the whole str_list; anything else is unreliable. * proginit.[ch] (kpse_init_prog): Don't pass in argv0; we need it earlier. Tue Jul 12 11:56:54 1994 Karl Berry (karl@cs.umb.edu) * tex-file.c (init_path): Use the first envvar that's *set*, not the first in the list. * tex-file.h (kpse_format_info_type): New member `type'. * tex-file.c (kpse_init_format): Initialize it. * pathsearch.c (log_search): New fn. (search): Call it. Fri Jul 1 11:54:29 1994 Karl Berry (karl@cs.umb.edu) * tex-file.c: Doc fix. Mon Jun 27 10:18:59 1994 Karl Berry (karl@cs.umb.edu) * db.c (db_build): Call kpse_var_expand on the db filename. * pathsearch.c (elt_in_db): Likewise. * tex-glyph.h (kpse_find_gf): By analogy with kpse_find_pk. Sat Jun 25 16:09:05 1994 Karl Berry (karl@cs.umb.edu) * tex-glyph.c (try_format): Try both Unix and DOS bitmap specs, instead of just one or the other. (bitmap_name): No longer needed. Fri Jun 24 11:52:32 1994 Karl Berry (karl@cs.umb.edu) * tex-file.c (kpse_find_file): Don't try the suffix if it doesn't exist. * tex-file.h (kpse_find_{dvips_header,pict}): New definition. Thu Jun 23 16:57:58 1994 Karl Berry (karl@cs.umb.edu) * tex-file.h (kpse_{pict,dvips_header}_format): New consts. (KPSE_{PICT,DVIPS_HEADER}_ENVS): Likewise. Tue Jun 21 11:53:09 1994 Karl Berry (karl@cs.umb.edu) * tex-file.c (kpse_find_file): Try the name as given if the name concatenated with the suffix fails, for the sake of, e.g., EPS files. * tex-file.h (kpse_find_tex): New definition. * absolute.[ch]: Make arg const. * tex-glyph.[ch]: (kpse_bitmap_tolerance): Move here from tex-make. * c-proto.h (P6[CH]): New definitions. * Makefile.in (objects): Add proginit.o. * proginit.[ch]: New files. Mon Jun 20 14:55:57 1994 Karl Berry (karl@cs.umb.edu) * tex-file.c (kpse_init_format): Make override path not apply to TFM and VF files. * tex-glyph.c (kpse_find_glyph_format): Rename to kpse_find_glyph, and don't call MakeTeXPK if the filename is absolute. * tex-glyph.h: Likewise. Sun Jun 19 11:00:50 1994 Karl Berry (karl@cs.umb.edu) * common.ac (HAVE_PROGRAM_INVOCATION_NAME): Test for this. * acconfig.h: #undef this by default. * progname.[ch]: New files. * Makefile.in (objects): Add progname.o. * cnf.c (do_line): Check for . qualification. Sat Jun 18 16:55:36 1994 Karl Berry (karl@cs.umb.edu) * elt-dirs.c (kpse_element_dirs): Avoid stats in leaf directories found via a non-null post. Fri Jun 17 14:25:08 1994 Karl Berry (karl@cs.umb.edu) * elt-dirs.c (kpse_element_dirs) [DEBUG]: Print the directory expansion of the path element. * str-llist.h: Doc fix. * elt-dirs.c (do_subdir): Ignore anything beginning with ., not just `.' and `..'. Tue Jun 14 11:53:49 1994 Karl Berry (karl@cs.umb.edu) * dir.c (dir_links): Cache the lookups. * elt-dirs.c (kpse_element_dirs): Don't expand the argument. * expand.h (kpse_path_expand): New routine. * expand.c: Define it. * pathsearch.h: Doc fix. * db.c, tex-file.c [DEBUG]: Prefix output lines with `debug:'. * tex-file.h (kpse_format_info_type): Add cnf_path to the struct. * tex-file.c (kpse_init_path): Print the cnf_path. (init_path): Set it, instead of a local variable. * pathsearch.c (path_search): Use !! for no-disk-search instead of %%, because now % is the comment char in cnf files. * kpathsea.texi: Document this. Also change all `Kpathsearch' to `kpathsea'. Mon Jun 13 10:15:49 1994 Karl Berry (karl@cs.umb.edu) * tex-make.h (kpse_set_maketex_mag): Remove. * tex-make.c (kpse_set_maketex_mag): Make static, remove kpse_ prefix, and use KPATHSEA_DPI and MAKETEX_BASE_DPI instead of args. Sun Jun 12 13:49:15 1994 Karl Berry (karl@cs.umb.edu) * db.c (db_build): Put a header on the hash table. * tex-glyph.c (try_format): Set extension and path after kpse_init_format, natch. Sat Jun 11 14:26:34 1994 Karl Berry (karl@cs.umb.edu) * Makefile.in (objects): Add cnf.o. * variable.c (expand): Call kpse_cnf_get if no envvar value. Fri Jun 10 11:20:23 1994 Karl Berry (karl@cs.umb.edu) * tex-make.h: Remove spec type and variable. Thu Jun 9 13:42:21 1994 Karl Berry (karl@cs.umb.edu) * Makefile.in (objects): Remove init-path.o. * tex-file.c (kpse_find_file): Rewrite to initialize the paths only once, and keep all path info in a structure. * tex-file.h: Vastly simplify. * tex-glyph.h (kpse_font_file_type): Move here, since it's really only for glyphs. * tex-glyph.c: Corresponding changes. * debug.h (KPSE_DEBUG_PATHS): New debug bit. * default.h, str-list.h: Doc fix. Tue May 31 10:06:51 1994 Karl Berry (karl@cs.umb.edu) * debug.c: Doc fix. Mon May 23 11:50:03 1994 Karl Berry (karl@cs.umb.edu) * c-fopen.h (FOPEN_A_MODE): Define this. * tex-make.c (misstex, maketex): Split up kpse_make_tex into these, and create missfont.log if appropriate. Sun May 22 17:39:52 1994 Karl Berry (karl@cs.umb.edu) * tex-make.h: Doc fix. Wed May 11 13:25:58 1994 Karl Berry (karl@cs.umb.edu) * configure.in (AC_OUTPUT): Use just `Makefile' instead of `./Makefile', to avoid a bug in Autoconf (through 1.10). Sun Apr 17 16:18:00 1994 Karl Berry (karl@ra.cs.umb.edu) * debug.h: Prefix macros with KPSE_. * db.c, dir.c: Change calls. * common.ac: Remove :: VPATH stuff; that made it in to Autoconf 1.8. * Makefile.in (top_srcdir): Define this for configure to substitute. Thu Apr 7 17:52:05 1994 Karl Berry (karl@ra.cs.umb.edu) * debug.[ch]: Implement fopen/fclose tracing. Thu Mar 31 07:25:49 1994 Karl Berry (karl@cs.umb.edu) * Version 1.8. Thu Mar 24 10:01:20 1994 Karl Berry (karl@cs.umb.edu) * tex-glyph.c: Doc fix. * pathsearch.c (path_search): Don't search the disk if there is magic in the path spec. * db.c: Doc fix. Wed Mar 16 13:50:17 1994 Karl Berry (karl@cs.umb.edu) * readable.c (kpse_readable_file): Complain if errno == EPERM. Sun Mar 13 11:14:19 1994 Karl Berry (karl@cs.umb.edu) * pathsearch.h (kpse_path_search): Take an extra arg must_exist. * pathsearch.c (kpse_path_search, search, path_search): Likewise. * tex-file.c (kpse_find_file): Change call. * tex-file.h (kpse_find_*): Change these calls, too. * hash.c (hash_create): Don't use xcalloc to init pointers to null. * db.c (kpse_db_search): Don't free the pointer after incrementing it. From Frank Jensen. Sat Mar 12 17:55:36 1994 Karl Berry (karl@cs.umb.edu) * db.h (kpse_db_search): Returns a pointer. * db.c (kpse_db_search): If db can't be built, return NULL, else a pointer to the (possibly empty) list. (db_build): Return whether we found the file. * pathsearch.c (path_search): Change call. Thu Mar 10 07:45:13 1994 Karl Berry (karl@cs.umb.edu) * Makefile.in (install-info): New target. Fri Mar 4 08:06:16 1994 Karl Berry (karl@cs.umb.edu) * hash.c (hash): Change hash function to spread out the values a bit better. * debug.h (DEBUG_DB_BUILD): New debug bit. * db.c (db_build) [DEBUG]: If bit is set, print hash table. * hash.h (hash_print): Declare. Thu Mar 3 08:52:01 1994 Karl Berry (karl@cs.umb.edu) * Version 1.7. Sun Feb 27 15:57:30 1994 Karl Berry (karl@cs.umb.edu) * Makefile.in (objects): Add db.o, hash.o. * db.[ch]: New files. * hash.[ch]: Also new files. * pathsearch.c (path_search): Try db search. * tex-glyph.c, fontmap.c: Use general hash functions. Sat Feb 26 13:15:53 1994 Karl Berry (karl@cs.umb.edu) * fontmap.c: Doc fix. * pathsearch.c (INIT_ALLOC): Increase to 75, what the heck. Fri Feb 25 08:30:50 1994 Karl Berry (karl@cs.umb.edu) * tex-file.[ch]: Decare args const. Thu Feb 24 07:55:43 1994 Karl Berry (karl@cs.umb.edu) * tex-make.h: Include tex-file.h, not init-path.h. * init-path.h (KPSE_*_{ENVS,PATHS}, kpse_font_override_path): Move to tex-font.h. * tex-font.h (kpse_find_{file,tfm,vf}): Also declare these. * tex-font.c (kpse_find_file): Define these. (kpse_font_override_path): Move definition here. * tex-file.*: Rename from tex-font.*. * GNUmakefile: Corresponding changes. * elt-dirs.c (do_subdir): Only append the / once we know it's a directory. Wed Feb 23 16:41:31 1994 Karl Berry (karl@cs.umb.edu) * elt-dirs.c (do_subdir): Don't tack POST on if it is exactly the d_name, so we can find a/b with a path of a//b. * c-vararg.h (PVAR3[CH]): New defines. * init-path.h: Include KPSE_*_{ENVS,PATHS} here. (kpse_init_path): Take an additional arg font_p. * init-path.c (kpse_override_path): Rename kpse_font_override_path. (kpse_init_path): Only use kpse_font_override_font if font_p. Mon Feb 21 15:38:53 1994 Karl Berry (karl@cs.umb.edu) * common.ac (extrasub): Define to remove VPATH lines if srcdir = `.'. Thu Feb 3 06:19:49 1994 Karl Berry (karl@cs.umb.edu) * Version 1.6. * fn.c (fn_copy0): Remember to allocate space for the null. Thanks, simon. Wed Feb 2 09:57:47 1994 Karl Berry (karl@cs.umb.edu) * tex-make.h (KPSE_BITMAP_TOLERANCE): Move to here from tex-glyph.c (kpse_check_bitmap_tolerance): Declare. * tex-make.c (kpse_check_bitmap_tolerance): Define. Tue Feb 1 10:42:03 1994 Karl Berry (karl@cs.umb.edu) * c-std.h (*alloc) [! _MALLOC_INTERNAL]: Make decl conditional. * c-std.h [HAVE_STDLIB_H]: Change #if for including to this. * common.ac (AC_HAVE_HEADERS): Check for stdlib.h. * Makefile.in (paths.h): Do all substitutions globally. * absolute.c [DOS]: Include c-ctype.h. * tex-glyph.c (KPATHSEA_BITMAP_NAME) [DOS]: Double the backslash. * elt-dirs.c (do_subdir) [!UNIX_ST_LINK]: Avoid dangling else. From Wayne. * paths.h.in: Doc fix. * xputenv.c (xputenv): Check entire variable name for being saved, not just a prefix of it. Mon Jan 31 12:05:30 1994 Karl Berry (karl@cs.umb.edu) * fn.c (fn_copy0): Allocate LEN if that's bigger than CHUNK_SIZE. (CHUNK_SIZE): Increase to 75. Sat Jan 22 15:36:08 1994 Karl Berry (karl@cs.umb.edu) * Version 1.5. * common.ac (AC_HAVE_FUNCS): Check for memmove. * paths.h.in (DEFAULT_MF_PATH): Don't search just public/, cause we need ams/. Mon Jan 17 15:09:36 1994 Karl Berry (karl@cs.umb.edu) * paths.h.in (DEFAULT_{FMT,BASE}_PATH): Include `.'. Sun Jan 16 14:50:02 1994 Karl Berry (karl@cs.umb.edu) * paths.h.in (DEFAULT_PK_PATH): Search subdirs of pk. Mon Jan 10 16:40:35 1994 Karl Berry (karl@cs.umb.edu) * xputenv.c (xputenv): Don't try to be smart about saving/freeing stuff if SMART_PUTENV is defined. * c-std.h (assert) [!HAVE_ASSERT_H]: Define as nothing, to avoid undefined references to assert. Tue Dec 21 16:28:13 1993 Karl Berry (karl@cs.umb.edu) * c-std.h (SYSV) [STDC_HEADERS]: Define, to get around old X include files under hpux. Sun Dec 19 13:06:15 1993 Karl Berry (karl@cs.umb.edu) * Makefile.in (objects): Put tex-font.o first. Sat Dec 18 15:03:57 1993 Karl Berry (karl@cs.umb.edu) * config.h (GCC_WCHAR_T, _GCC_WCHAR_T): Remove these; I have another theory now for wchar_t, done in xdvi.h and x11.c. Sat Dec 18 14:41:15 1993 Karl Berry (karl@owl.hq.ileaf.com) * c-memstr.h ([r]index) [STDC_HEADERS]: Conditionalize #define. Tue Dec 14 17:43:30 1993 Karl Berry (karl@cs.umb.edu) * Makefile.in (paths.h): Change substitutions accordingly. * paths.h.in (DEFAULT_FMT_PATH): Variable is now fmtdir. (DEFAULT_{BIB,BST}_PATH): Variable is now texmf_prefix. Sat Dec 11 13:21:43 1993 Karl Berry (karl@cs.umb.edu) * tex-make.c (ABS): New macro. (kpse_set_maketex_mag): Use it, instead of fabs. Fri Dec 10 15:31:16 1993 Karl Berry (karl@cs.umb.edu) * xmalloc.c, xrealloc.c: Use exit instead of abort, remove abort decls, and reword error messages to be less cryptic. From john@minster.york.ac.uk. * dir.h: use `defined' instead of just `DIRENT || _POSIX_VERSION'. How annoying. From kretschm@aitxu3.ait.physik.uni-tuebingen.de. * xputenv.c (putenv): Remove declaration, as different systems do it differently. From kayvan@satyr.sylvan.com. Thu Dec 9 09:12:33 1993 Karl Berry (karl@cs.umb.edu) * tex-make.c (kpse_set_maketex_mag): Allow off-by-1 when deciding if a dpi is a magstep. Tue Dec 7 11:03:51 1993 Karl Berry (karl@cs.umb.edu) * tex-make.c (kpse_set_maketex_mag): New routine from dvips, called by dvipsk and xdvik to ensure consistency. (magstep): Subroutine of above, also from dvips. * tex-make.h: Declare it. * tex-doc.texi: Correct menu item (from maechler@stat.math.ethz.ch). Fri Dec 3 12:53:38 1993 Karl Berry (karl@cs.umb.edu) * c-pathmx.h: Doc fix. Sat Nov 27 14:36:11 1993 Karl Berry (karl@cs.umb.edu) * default.h: Doc fix. * paths.h.in (texfontdir): This has been renamed to fontdir. Sun Nov 21 08:28:41 1993 Karl Berry (karl@cs.umb.edu) * Makefile.in (distdir): Include HIER in the distribution, until we merge it into the manual. Sun Nov 7 14:54:47 1993 Karl Berry (karl@cs.umb.edu) * c-namemx.h (NAME_MAX): Avoid use of pathconf. * c-pathmx.h: Doc fix. Thu Nov 4 14:50:45 1993 Karl Berry (karl@cs.umb.edu) * config.h (_GCC_WCHAR_T) [!GCC_WCHAR]: Conditionalize. * c-std.h (EXIT_SUCCESS) [!EXIT_SUCCESS]: Move these defines outside of !STDC_HEADERS, for the sake of SunOS 4.1.1. (From vonbrand@inf.utfsm.cl.) Wed Nov 3 14:43:05 1993 Karl Berry (karl@cs.umb.edu) * Version 1.4. Wed Nov 3 07:05:48 1993 Karl Berry (karl@cs.umb.edu) * paths.h.in (DEFAULT_{BASE,FMT}_PATH): Had these definitions reversed. Fri Oct 29 19:27:36 1993 Karl Berry (karl@cs.umb.edu) * tex-glyph.c (try_fallback_resolutions): Initialize ret in all cases. Thu Oct 28 14:32:34 1993 Karl Berry (karl@cs.umb.edu) * lib.h: Doc fix. * common.h (AC_UNISTD_H): Replace this with unistd.h in the list of HAVE_HEADERS. Tue Oct 26 13:59:33 1993 Karl Berry (karl@cs.umb.edu) * str-llist.[ch]: New files. * Makefile.in (objects): Add str_llist.o. * elt-dirs.[ch]: Use str_llist_type throughout. * pathsearch.c (dir_list_search): Take a str_llist_type, and float a successful dir towards the top. (path_search): Change call of kpse_element_dirs. Sun Oct 24 19:41:49 1993 Karl Berry (karl@cs.umb.edu) * elt-dirs.c (do_optional): Remove this stub. (expand_elt): Don't call it. Fri Oct 22 14:46:44 1993 Karl Berry (karl@cs.umb.edu) * xmalloc.c, xrealloc.c, line.c, pathsearch.c: Doc fix. Tue Oct 19 12:11:32 1993 Karl Berry (karl@cs.umb.edu) * tex-glyph.c (try_fallback_resolutions): New routine. (kpse_find_glyph_format): Call it, instead of repeating (the now pretty complicated) code. * tex-font.c (kpse_init_fallback_resolutions): Pass the value of any environment variable, not its name. From R.Kooijman@et.tudelft.nl. * c-memstr.h (str[r]chr) [!str[r]chr]: Conditionalize. From maarrrk@seidel.ece.ucsb.edu. Tue Oct 12 16:26:48 1993 Karl Berry (karl@cs.umb.edu) * tex-make.c: Doc fix. Thu Oct 7 13:13:57 1993 Karl Berry (karl@cs.umb.edu) * xmalloc.c: Rewrite to not require . * xrealloc.c: Likewise. * make-suffix.c (make_suffix): Declare variables const. * remove-suffx.c (remove_suffix): Likewise. Also rename to rm-suffix.c. * xputenv.c (putenv): Declare with correct prototype. * fontmap.c (internal routines): Likewise. * line.c (xmalloc, xrealloc): Declare as void *. (From john@minster.york.ac.uk.) Wed Oct 6 06:49:53 1993 Karl Berry (karl@cs.umb.edu) * Version 1.3. * tilde.c (kpse_tilde_expand): Always return a malloc-ed value. (From ken@cs.toronto.edu.) Sun Oct 3 14:11:33 1993 Karl Berry (karl@cs.umb.edu) * config.h (_GCC_WCHAR_T): Define. Sat Oct 2 17:17:32 1993 Karl Berry (karl@cs.umb.edu) * Makefile.in (install-*): Don't reassign PATH, just invoke mkdirchain explicitly. * tex-glyph.c (KPATHSEA_BITMAP_NAME) [DOS]: Define what I think will work for this ... * paths.h.in: Doc fix. * Makefile.in: Doc fix. * tex-glyph.c (kpse_find_glyph_format): Unconditionally initialize glyph_paths[*], since we might use them both in try_size. From worsch@ira.uka.de. Fri Oct 1 12:02:11 1993 Karl Berry (karl@cs.umb.edu) * expand.c: Doc fix. Wed Sep 29 15:21:49 1993 (karl@terminus.cs.umb.edu) * Version 1.2. Sat Sep 25 14:12:00 1993 Karl Berry (karl@cs.umb.edu) * pathsearch.c (path_search, absolute_search): Don't initialize structs. Fri Sep 24 12:50:00 1993 Karl Berry (karl@cs.umb.edu) * tex-glyph.c (try_size): Skip the simultaneous stuff. (try_format): Set the envvar here. (bitmap_name): Not here. * pathsearch.c (kpse_*_multi_search): Delete. Change most other routines to take only a single name again, instead of a name list. * pathsearch.h: Delete decls. * tex-glyph.c (init-path.h): Don't need to include this. * tex-glyph.c (kpse_find_glyph_format): Try the fallback resolutions for the fallback font. * Makefile.in (warn_more, MAKEINFO_FLAGS) [hayley]: Define these for development and distribution. * Makefile.in (dvi): Make analogous to info (including use of new suffix rule). * tex-glyph.c (kpse_find_glyph_format): Set KPATHSEA_NAME to the fallback font if we get that far. Wed Sep 15 19:29:56 1993 Karl Berry (karl@cs.umb.edu) * filefmt.h (KPSE_*_PATH): Pass NULL as first arg. * xputenv.c (xputenv): Rewrite again to save the variable names, not the old items. Mon Sep 13 06:55:29 1993 Karl Berry (karl@cs.umb.edu) * concatn.h: Doc fix. Sun Sep 12 15:54:55 1993 Karl Berry (karl@cs.umb.edu) * lib.h (XTALLOC): Parenthesize the cast. * xputenv.c (xputenv): Rewrite to collect some of the garbage. Fri Sep 10 14:00:35 1993 Karl Berry (karl@cs.umb.edu) * lib.h (ENVVAR_SET_DEFAULT): No longer needed. * xputenv.c (xputenv_int): New routine. Thu Sep 9 14:58:00 1993 Karl Berry (karl@cs.umb.edu) * tex-make.c (MAKE_TEX_PK_SPEC): Change MAKETEX_DPI to KPATHSEA_DPI. * tex-glyph.c (try_fontmap): Use KPSE_GLYPH_PATH. * filefmt.c (KPSE_GLYPH_{PATH,ENVS}): New macros. (KPSE_{GF,PK}_ENVS): Use GLYPH_ENVS. * tex-glyph.c (bitmap_name): Rewrite to use a variable spec, introducing KPATHSEA_{BITMAP_NAME,FORMAT,DPI,NAME}. (kpse_find_glyph_format): Set KPATHSEA_DPI instead of MAKETEX_DPI; also set KPATHSEA_NAME. (try_fontmap): Also set KPATHSEA_NAME here. (try_size): Set KPATHSEA_DPI here. * tex-glyph.c (try_name): Delete this routine. (kpse_find_glyph_format): Try fallback resolutions here, call try_resolution directly. (try_fontmap): Call try_resolution directly. * init-path.h: Need not include c-proto.h. Sun Aug 29 13:34:25 1993 Karl Berry (karl@cs.umb.edu) * tex-make.c: Doc fix. * filefmt.h: Don't need c-proto.h or types.h. Fri Aug 27 10:36:46 1993 Karl Berry (karl@cs.umb.edu) * c-vararg.h (PVAR2C): Take AP as an arg. * init-path.[ch] (kpse_init_path): Take the current value as an additional argument, separate from the default path, and always expand_default. * uppercasify.c (uppercasify): Don't discard upcased result! Thu Aug 26 10:36:28 1993 Karl Berry (karl@cs.umb.edu) * Version 1.1. Sun Aug 22 19:18:35 1993 Karl Berry (karl@cs.umb.edu) * install-data (install-data): Replace nonexistent $(kpath_includedir) with $(includedir), and define it. Also remove c-auto.h. Thu Aug 5 09:03:22 1993 Karl Berry (karl@cs.umb.edu) * Version 1.0. Wed Aug 4 13:51:24 1993 Karl Berry (karl@cs.umb.edu) * tex-glyph.c (kpse_find_glyph_format): Fill in the font_file struct in the maketex case. * Makefile.in (info): Just depend on kpathsea.info, and rely on new suffix rule to do the work. Tue Aug 3 17:50:40 1993 Karl Berry (karl@fishbowl.hq.ileaf.com) * tex-glyph.c (try_name): Don't free expanded_name if we're returning it. Tue Aug 3 10:13:43 1993 Karl Berry (karl@owl.hq.ileaf.com) * version.c (kpathsea_version_string): Do not declare const. * line.h (read_line): Protoize decl. Tue Aug 3 09:10:07 1993 Karl Berry (karl@blood.hq.ileaf.com) * c-memstr.h (bcmp, bcopy, bzero) [!HAVE_BCOPY]: Conditionalize. * putenv.c: Include , and use const when calling memcpy. Sun Aug 1 08:48:49 1993 Karl Berry (karl@cs.umb.edu) * Add new features to manual. * Makefile.in (objects): Include putenv.o. * putenv.c: New file from gdb. * common.ac: Test for putenv. Sat Jul 31 11:54:31 1993 Karl Berry (karl@cs.umb.edu) * Makefile.in (distclean): Remove paths.h. * Most files: changes for traditional C compatibility. * filefmt.h: Add new KPSE_..._PATH's for the other formats. * paths.h.in: Add defaults. * Makefile.in (paths.h): sed the values in. Fri Jul 30 17:23:10 1993 Karl Berry (karl@cs.umb.edu) * filefmt.h (KPSE_VF_PATH): Add empty parens. * tex-paths.h*: Rename to just paths.h*. Tue Jul 27 09:00:58 1993 Karl Berry (karl@cs.umb.edu) * filefmt.h: Include tex-paths.h, and use default paths in KPSE_..._PATH macros. * find-suffix.c: Correct logic. * filefmt.h: Include init-path.h. Sat Jul 24 10:44:21 1993 Karl Berry (karl@cs.umb.edu) * tex-glyph.c (kpse_find_glyph_format): Assign to it. * tex-font.h (kpse_font_file_type): New member `source'. (KPSE_FONT_FILE_SOURCE): Accessor macro. (kpse_source_type): New type. Wed Jul 21 19:45:45 1993 Karl Berry (karl@cs.umb.edu) * Makefile.in (configclean): New target. Sun Jul 18 13:53:38 1993 Karl Berry (karl@cs.umb.edu) * tilde.[ch] (kpse_expand_tilde): Rename to kpse_tilde_expand. * elt-dirs.c, pathsearch.c, tex-glyph.c: Replace calls to kpse_expand_tilde with kpse_expand. * expand.[ch]: New files. * Makefile.in (objects): Add it. * fn.[ch]: New files. * elt-dirs.c (fn*): Moved to fn.c. * tex-make.c, variable.c: Use the new routines. * *obstack*: No longer needed. * Makefile.in (objects): Appropriate changes. Sat Jul 17 13:25:25 1993 Karl Berry (karl@cs.umb.edu) * concat.c: Doc fix. * pathsearch.c (search, path_search): Expand variable references. * itoa.c: New file. * lib.h (itoa): Declare it. * Makefile.in (objects): Add it. * lib.h (ENVVAR_SET_DEFAULT): New macro. * tex-glyph.c (kpse_find_glyph_format): Call it to set the dpi. Fri Jul 16 09:10:52 1993 Karl Berry (karl@cs.umb.edu) * xputenv.c: New file. * Makefile.in (objects): Add it. * lib.h (xputenv): Declare it. * c-obstack.h: New file. * variable.[ch]: New files. * Makefile.in (objects): Add it. * uppercasify.c: New file. * Makefile.in (objects): add it. * lib.h (uppercasify): Declare it. Tue Jul 13 13:47:54 1993 Karl Berry (karl@cs.umb.edu) * tex-glyph.c (kpse_find_glyph_format): Simplify path initialization. * filefmt.h: New file; add abbrevs for GF and PK inits. * Makefile.in (objects): Add obstack.o and tex-make.o. * obstack.[ch]: New files from GNU. * concatn.[ch], tex-make.[ch]: New files. * init-path.c: Doc fix. * elt-dirs.c: Doc fix. * readable.[ch]: Doc fixes. Sun Jul 11 13:37:02 1993 Karl Berry (karl@cs.umb.edu) * tex-font.h (kpse_font_format_type): Rename to kpse_file_format_type, and include the other file formats. * tex-glyph.c: Change uses. Tue Jul 6 08:09:10 1993 Karl Berry (karl@cs.umb.edu) * tex-font.c (kpse_fallback_font): Initialize to NULL. Mon Jul 5 08:23:09 1993 Karl Berry (karl@cs.umb.edu) * tex-glyph.c (try_size): Don't fill in FONT_FILE if it's null. * tex-font.c (kpse_init_fallback_resolutions): Look for TEXSIZES after the program-specific *SIZES var. * tex-glyph.c (kpse_find_glyph_format): Use kpse_init_path. * Makefile.in (objects): Add init_path.o. * tex-font.[ch] (kpse_override_path): Move to init-path.[ch]. * init-path.[ch]: New files. * c-vararg.h: New file. Sun Jul 4 11:26:17 1993 Karl Berry (karl@cs.umb.edu) * tex-font.c (kpse_init_fallback_resolutions): New routine. * tex-font.h: Declare it, and companion return type. Fri Jul 2 10:43:11 1993 Karl Berry (karl@cs.umb.edu) * tex-glyph.c (kpse_find_glyph_format): Take first successful fontmap entry. * fontmap.c (map_file_parse): Take first % on line as starting the comment, not the last. * fontmap.c (map_insert): Always insert the new element. Thu Jul 1 19:21:35 1993 Karl Berry (karl@cs.umb.edu) * fontmap.c (map_lookup): Return a list, not a single string. (map_lookup_str): Likewise. * fontmap.h (map_lookup): Change decl. * tex-glyph.c (kpse_find_glyph_format): Change caller. Sat Jun 26 11:48:36 1993 Karl Berry (karl@cs.umb.edu) * tex-font.h: Doc fix. Thu Jun 24 11:16:41 1993 Karl Berry (karl@cs.umb.edu) * configure.in (MISSING_HEADERS): Toss in favor of HAVE_HEADERS. Sigh. Also, move all this to an include file. Change uses in several files. * stat.h: Rename to c-stat.h, and change includers. * Makefile.in (objects): Add tex-glyph.o. * pathsearch.[ch] (kpse_*_multi_search): New routines. Sat Jun 19 11:37:18 1993 Karl Berry (karl@cs.umb.edu) * str-list.c (str_list_free): New routine. Fri Jun 18 13:54:08 1993 Karl Berry (karl@cs.umb.edu) * fontmap.c (map_create): Rewrite to use kpse_all_path_search. Include const in various subroutines. Tue Jun 15 15:58:18 1993 Karl Berry (karl@cs.umb.edu) * Change to pathsearch. Rename the files themselves. * elt-dirs.c (cache): Copy the key into our own storage, since it comes from kpse_path_element and might get overwritten. Should we copy all the values, too? Sun Jun 13 16:49:09 1993 Karl Berry (karl@cs.umb.edu) * pathsearch.c (dir_list_search): Don't need to append the null here; in fact, it's wrong, since then the final list might have nulls in the middle. * elt-dirs.c (dir_list_add): Correct check for new directory already ending in /. Fri Jun 11 10:45:33 1993 Karl Berry (karl@cs.umb.edu) * str-list.[ch]: New files. * pathsrch.c: Use it for the dir_list routines. * Many changes and new files throughout for new implementation including TeX-font-lookup routines. Tue Jun 8 14:00:54 1993 Karl Berry (karl@cs.umb.edu) * Most files: Change `const string' (constant pointer) to `const char *' (pointer to constant data). What a crock. Mon Jun 7 09:43:21 1993 Karl Berry (karl@cs.umb.edu) * debug.[ch]: New files. * config.h: Include debug.h. * dir-p.c: Rename to dir.c. (dir_links): New routine. * c-std.h (assert.h) [!ASSERT_H_MISSING]: Include this. * configure.in: Check for it with new macro AC_MISSING_HEADERS. Thu Jun 3 10:12:12 1993 Karl Berry (karl@cs.umb.edu) * dirio.h (leaf_dir_p): No longer defined; rename to dir.h. * xopendir.c, dir-p.c, pathsrch.c: Change include. Mon May 31 07:49:16 1993 Karl Berry (karl@cs.umb.edu) * c-std.h (EXIT_{SUCCESS,FAILURE}): Define these if they're undefined. * config.h: Use instead "...". * kpathlib.h: Had #ifndef protection messed up. Rename to lib.h. * c-memstr.h (index, rindex) [!index, !rindex]: Make definitions conditional. Tue May 25 10:07:00 1993 Karl Berry (karl@cs.umb.edu) * c-{namemx,pathmx,pathch,...}.h: Doc fixes. * c-systypes.h: New file. * c-std.h: Include it. * stat.h: New file. * xstat.h: Include it. * configure.in (AC_HAVE_HEADERS): Test for `pwd.h'. Sun May 23 19:06:22 1993 Karl Berry (karl@cs.umb.edu) * pathsrch.[ch]: Doc fixes. Fri May 21 11:27:54 1993 Karl Berry (karl@cs.umb.edu) * line.c (free): Declare. * pathsrch.c, find-suffix.c: Change caller. * c-pathch.h ({IS_,}{DIR,ENV}_SEP): Rename existing confusing definitions to these. Suggested by rocky. Mon May 17 08:18:18 1993 Karl Berry (karl@cs.umb.edu) * Version 0.3. * pathsrch.c (expand_default): Handle doubled colon and nothing-but-colon cases. * Write documentation, change Makefile accordingly. Thu May 13 16:32:34 1993 Karl Berry (karl@cs.umb.edu) * c-std.h (popen) [VMS]: Make decl conditional, and include and . Mon May 10 07:12:50 1993 Karl Berry (karl@cs.umb.edu) * Version 0.2. * version.c: Put in placeholder. Sun May 9 10:42:34 1993 Karl Berry (karl@cs.umb.edu) * config.h (c-auto.h): Use <...> instead of "...". Tue May 4 14:54:41 1993 Karl Berry (karl@cs.umb.edu) * Makefile.in (info check dvi): New targets (that do nothing). Mon May 3 13:46:17 1993 Karl Berry (karl@claude.cs.umb.edu) * Version 0.1. * Use KPATHSEARCH_ prefix for various headers' cpp protections. Sun May 2 10:28:25 1993 Karl Berry (karl@cs.umb.edu) * Makefile.in (dist): Depend on TAGS, and put it in the dist. * Makefile.in (c-auto.h.in): Remove extra $(srcdir). Sun Apr 25 11:22:12 1993 Karl Berry (karl@cs.umb.edu) * pathsrch.h: Include c-proto.h. * make-suffix.c: New file. * Makefile.in (objects): Add the .o. * file-p.c: Use the SAME_FILE_P macro. * fontmap.h: Include c-proto.h and types.h. * lib.h: Rename to kpathlib.h. * config.h: Include changed. * c-proto.h, c-std.h: Doc fix. * c-limits.h [LIMITS_H_MISSING]: Conditionalize include of c-std.h. * xstat.h: Include c-std.h. * Makefile.in (c-auto.h.in): Add unused warning to top. * dirio.h: Include c-proto.h and types.h. Fri Apr 23 16:11:13 1993 Karl Berry (karl@cs.umb.edu) * line.c: Don't include config.h, just declare xmalloc and xrealloc explicitly. * pathsrch.c: paths.h need not be included. * Created. (This ChangeLog file public domain.)