Samba v4.2.0 vs. v4.3.5 and -ltinfo
davidh at netacquire.com
Fri Mar 4 17:48:23 UTC 2016
I've been working on migrating my cross-build from v4.2.0 to v4.3.5 (latest stable). I finally got this building but wanted to ask about the one build failure I initially encountered. Specifically this related to a missing libtinfo.so. My build environment includes 'ncurses' built without the --with-termlib autoconf parameter set (hence no libtinfo) and so packages that rely on 'ncurses', and that expect to use -ltinfo, will fail during link.
Fixing this requires either: 1) rebuilding 'ncurses' with --with-termlib, or 2) soft-linking libtinfo.so to libncurses.so. My solution was the latter since rebuilding 'ncurses' would require other (non-samba) packages that rely on 'ncurses' to be rebuilt as well (since they would now likely need to include '-ltinfo' in their link commands). This latter option is not viable in my (current) environment.
I've been trying to locate where/when the -ltinfo link option was added to the samba build (somewhere between v4.2.0 and v4.3.5). Unfortunately my perusal of the git logs and my searching through the waf scripts hasn't turned anything up. Can anyone help me with this? What is the new reliance on libtinfo (as opposed to just libncurses) and when was this added? Shouldn't there be some autoconf-like determination for whether this library exists?
I've been wondering if the -ltinfo was somehow added dynamically as a result of 'waf configure' (since I can't find reference to it in the git logs). However, I also don't see anything related to 'tinfo' in the waf scripts either (except for one single reference in libcli/readline/wscript_configure). Admittedly, my current familiarity with samba source, and waf specifically, is thin at best so I'm likely just missing something obvious.
Any help would be appreciated.
More information about the samba-technical