Howard Chu writes:
(...) There have been a variety of reasons to use include files in the
past, but ultimately I think they'll have to be phased out.
For the primary use - loading schema, the best solution that comes to
mind is to create a cn=schema,cn=config subtree where individual entries
under this subtree comprise what used to be an individual schema config
file. Since back-ldif stores individual entries in individual files
anyway, we can still ship individual schema files. They'll just need to
be copied from the install directory into the proper subdirectory of the
config directory. (Or I suppose we can set a symlink at install time.)
e.g., given a LDAP_SYSCONFDIR of /etc/openldap the default config
directory is /etc/openldap/slapd.d.
Our site has two schema directories: The directory which OpenLDAP
installs with its own schema files, and a directory outside
LDAP_SYSCONFDIR with our other schema files. LDAP_SYSCONFDIR contains
the OpenLDAP version name, so we have to copy the configuration (*.conf)
from the last installation to the current one and edit it a bit.
It's not the biggest problem in the world to create symlinks between the
two, but if others have the same setup, remember that there are
filesystemes that do not support symlinks. And _copying_ schema files
from the private schema directory to the installation directory could
easily lead to mismatches - one would edit a file in one directory but
forgot to copy it to the others.