Project

General

Profile

[Solved] Better control over which modules get built

Added by iselind over 2 years ago

I've posted https://redmine.lighttpd.net/boards/2/topics/7885 where I ask for help on making a slim lighttpd. There are quite a few modules built that i don't need/want and being able to disable them somehow would simplify this greatly.

Another perhaps easier way to accomplish this is to either start with an empty list of modules or provide a --disable-all-modules option for configure. Then i could explicitly enable the modules i actually need/want. For those that want it, it might be interesting with a --enable-all-modules option as well.

It strikes me as weird that I am forced to accept mod_staticfile, mod_dirlisting, and mod_indexfile. If these are required, why make them into modules at all? I cannot see why these would be required regardless of what i put in my configuration file.


Replies (3)

RE: Better control over which modules get built - Added by stbuehler over 2 years ago

You're mixing two problems (again).

We're not interested in providing more control over which modules get built; just don't copy them to the target system if you don't need them. Reduced build time doesn't justify the effort we'd need to maintain it.

Then there are the three auto-loaded modules you named. They are always loaded to make sure they are loaded in the proper order, and are almost always required (i.e. users expect the functionality to be always present). They are modules because their functionality fits the provided abstraction and it's easier to integrate them that way than manually hooking them somewhere else. Also it makes it easy to remove them from autoload (by manually patching) if you really don't need them.

RE: Better control over which modules get built - Added by iselind over 2 years ago

stbuehler wrote:

You're mixing two problems (again).

We're not interested in providing more control over which modules get built; just don't copy them to the target system if you don't need them. Reduced build time doesn't justify the effort we'd need to maintain it.

The build time isn't my issue, it's what gets installed with make install when i've set a prefix in the configure script. Sure, i can manually copy instead.

Then there are the three auto-loaded modules you named. They are always loaded to make sure they are loaded in the proper order, and are almost always required (i.e. users expect the functionality to be always present). They are modules because their functionality fits the provided abstraction and it's easier to integrate them that way than manually hooking them somewhere else. Also it makes it easy to remove them from autoload (by manually patching) if you really don't need them.

Is there an example patch somewhere showing how to do this correctly?

    (1-3/3)