diff options
author | Karl Berry <karl@freefriends.org> | 2019-08-06 23:33:17 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2019-08-06 23:33:17 +0000 |
commit | 48f9e4b1f4dfaf9bfb9dcb935ea1c3d39cf9c779 (patch) | |
tree | 50d9db5039167e5778005ba82a7cba229db6fe43 /Build/source/texk/kpathsea/cnf.h | |
parent | c7ce5ab1655e5a4cc880ef2ac2eba601ce4109c2 (diff) |
new cross-engine (and kpsewhich) option --cnf-line
git-svn-id: svn://tug.org/texlive/trunk@51830 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build/source/texk/kpathsea/cnf.h')
-rw-r--r-- | Build/source/texk/kpathsea/cnf.h | 30 |
1 files changed, 25 insertions, 5 deletions
diff --git a/Build/source/texk/kpathsea/cnf.h b/Build/source/texk/kpathsea/cnf.h index 44c966841be..e218964b5b6 100644 --- a/Build/source/texk/kpathsea/cnf.h +++ b/Build/source/texk/kpathsea/cnf.h @@ -1,6 +1,6 @@ /* cnf.h: runtime config files. - Copyright 1994, 1995, 2008, 2012 Karl Berry. + Copyright 1994, 1995, 2008, 2012, 2019 Karl Berry. Copyright 1999, 2005 Olaf Weber. This library is free software; you can redistribute it and/or @@ -27,10 +27,30 @@ extern "C" { #endif /* Return the value in the last-read cnf file for VAR, or NULL if none. - On the first call, also read all the `texmf.cnf' files in the - path for kpse_cnf_format (and initialize the path). */ - -extern KPSEDLL const_string kpathsea_cnf_get (kpathsea kpse, const_string name); + On the first call, also read all the `texmf.cnf' files in the path + for kpse_cnf_format (and initialize the path). Any error messages are + written to stderr. */ + +extern KPSEDLL const_string kpathsea_cnf_get (kpathsea kpse, const_string var); + + +/* Parse L as a texmf.cnf configuration line for the KPSE instance, + and insert any <variable> assignment in the environment, both as-is and + with the value (if all non-NULL) of <variable> "_" KPSE->program_name. + If <variable>[_<progname>] is already set in the environment, it is + overwritten. + + All of this behavior is because if the user runs tex with + --cnf-line=TEXINPUTS=/foo:, it's not unreasonable to expect that + cmdline option to override both environment variables TEXINPUTS and + TEXINPUTS_tex, and also both configuration values TEXINPUTS and + TEXINPUTS.tex -- even though ordinarily <var>.<progname> overrides + plain <var>. + + Any error message is written to stderr. */ + +extern KPSEDLL void kpathsea_cnf_line_env_progname (kpathsea kpse, + string l); #if defined(KPSE_COMPAT_API) extern KPSEDLL const_string kpse_cnf_get (const_string var); |