Kurt Zeilenga wrote:
On Feb 24, 2009, at 12:01 PM, richm@stanfordalumni.org wrote:
Kurt@OpenLDAP.org wrote:
On Feb 23, 2009, at 5:08 PM, hyc@symas.com wrote:
I'm still uncertain about how configure should detect the NSS header files though; they are not in any standardized location yet AFAICS.
Like with other things, I would assume the environment to be adjusted to find the right NSS prior to running configure.
I'm not sure I understand what you mean by "environment to be adjusted"
CPPFLAGS, CFLAGS, ... and PATH environmental variables.
- How does openldap detect the header files for other components?
autoconf is used, which uses the compiler to check if necessary headers are there, with the (additional to those built into the compiler) header path specified via CPPFLAGS.
The idea here is to give the builder the freedom over which header directories are searched, and the order in which they are searched.
What's the usual way that openldap does this for packages installed in non-standard locations e.g. if I want to have my own private build of cyrus-sasl? Is it up to the user to specify CPPFLAGS=-I/path/to/nonstd/sasl/include and LDFLAGS=-L/path/to/nonstd/lib ? Does openldap configure have a --with-sasl=/path/to/nonstd/sasl option?
Perhaps a better question is - how would you like it to work? I'm assuming there must be some way specify which crypto you want to build openldap with - is that a configure option?
Note that both NSPR and NSS support pkg-config
Here would be to ensure that the proper pkg-config is in the PATH.
Of course, pkg-config stuff gets stuff into the environment in some fixed order, which does take away some freedom from the builder. I guess the builder can always manually adjust the order (by providing CPPFLAGS, etc., directly) and then provide a pkg_config which does little. So the freedom is there, just harder to take advantage of.
The original patch - ftp://ftp.openldap.org/incoming/openldap-2.4.11-nss-20080911.patch - assumes the use of pkg-config - I suppose that is not sufficient.
-- Kurt