-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On 7/14/15 5:11 AM, Mike Frysinger wrote: > On 14 Jul 2015 11:35, Pierre Gaston wrote: >> I think adoption would be difficult considering even a useful loadable >> builtin like "finfo" has not found its way into default installations, b ut >> for instance I can imagine bash programmable completion could go another >> level with an embedded interpreter that lets you access the readline >> internals. > > finfo is under the "examples" directory, and all of the loadable logic is n't > exactly trivial to package. it feels kind of bolted on, especially when you > try to build & install things. if we want the loadables to be more of a first > class concept than something people only play around with locally on thei r own > systems, this needs polishing.
It's not quite bolted on, but it does assume access to the bash source tree, since the header files have to be available. The build tree needs to be available as well, since the generated headers are required and the logic to create shared objects comes for free with the bash configure. The examples directory is just intended to give developers a flavor of how to write a loadable builtin. The original rationale is that the loadable builtins can be installed anywhere, though the example Makefile does not suggest a location, but that developers are the ones who need a development environment (the bash source tree). Linux vendors could build and include loadable builtins as part of their distributions, for example, since they obviously have the bash sources. I suppose the first thing needed to make that work, and maybe the only thing needed to make that work, is agreement on the name of a search path environment variable that enable can use to find loadable builtins. Chet - -- ``The lyf so short, the craft so long to lerne.'' - Chaucer ``Ars longa, vita brevis'' - Hippocrates Chet Ramey, ITS, CWRU c...@case.edu http://cnswww.cns.cwru.edu/~chet/ -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iEYEARECAAYFAlWn/aYACgkQu1hp8GTqdKtqjwCdHZiNY2kr/LydtmsuM9vGNQML tZwAn2ZdPAIeoUGix9usjkM6/5Vb6X9y =cUI6 -----END PGP SIGNATURE-----