[Date Prev][Date Next] [Chronological] [Thread] [Top]

Re: support for dynamically loadable modules (ITS#196)



At 07:20 PM 6/23/99 +0200, Bastiaan Bakker wrote:
>Hi,
>
>I've uploaded a new version of the dynamic module patch. You can find it at:
> ftp://ftp.openldap.org/incoming/bb_dynmods_for_HEAD19990623.v0.2.gz
>
>Changes against v0.1:
>
>1)Addition of options --with-ldbm-module=static | dynamic , etc. to configure. By
>default all modules are static, even when --enable-modules is turned on. Defining
>--with-<backend>-module = dynamic will result in preprocessor definition of
>'SLAPD_<BACKEND>_DYNAMIC' . In backend.c and the init.c files of the particular
>backends the define will be checked to determine wether a backend module is dynamic,
>instead of SLAPD_MODULES.
>Building and installing dynamic modules still has to be performed by hand. Help on
>sorting this out (libtool stuff, etc.) would be appreciated.

Great!  Generally best to introduce new features as optional
(defaulting to not enabled).

>2)Failure to call init_module() at module load time (for example because the module
>does not contain a function with this name) is now a fatal error, not a warning.

Very reasonable.

>Thanks to the above changes slapd can be compiled with --enable-modules without
>creating problems with building backends, since you can keep the existing ones compiled
>in if you like.
>Since the negative side effect of enabling modules has been  removed and resolving the
>issues for building dynamic backends will likely be a team effort, I would like to put
>the patch in the CVS repository.

Fine with me.

>My intend is to create a branch OPENLDAP_DEVEL_DYNMODS
>for this. If there are any objections, please let me know!

Devel branches are fine, but hopefully they are short lived.

As long as default is --disabled-modules, I see little reason
for a separate branch...

Kurt