Zsh Mailing List Archive
Messages sorted by:
Reverse Date,
Date,
Thread,
Author
Modules build framework/autoconf-2.13
- X-seq: zsh-workers 17089
- From: Borsenkow Andrej <Andrej.Borsenkow@xxxxxxxxxxxxxx>
- To: "'zsh-workers@xxxxxxxxxx'" <zsh-workers@xxxxxxxxxx>
- Subject: Modules build framework/autoconf-2.13
- Date: Wed, 8 May 2002 14:41:10 +0400
- Mailing-list: contact zsh-workers-help@xxxxxxxxxx; run by ezmlm
Here is suggested change in modules build procedure. It does not strictly
speaking require autoconf-2.5x but it makes it much more easier and
consistent.
Every module is locate in own subdirectory. .mdd file specifies
- usual stuff (dependencies, file, etc)
- Makefile.in fragment
- configure.in fragment
preconfig script walks source directory and in every directory with *.mdd
creates
- Makefile.in (using standard template and adding fragment from .mdd)
- configure.in ( -"- )
preconfig also collects names of all subdirectories and adds them (via
inclusion) to top-level configure.in that is then using it to recursivly
call generated module's configure. Then it runs autoconf to create configure
in all subdirectories.
preconfig may optionally generate config.modules in source directory so
users have some example; config.modules in build directory overrides
(augments) it. To skip some modules at configure time it is possible to
generate dummy entry in Makefile (by configure.in fragment) that would just
print a warning without doing anything.
The main goal is to make adding new modules as non-intrusive as possible.
Modules come with own configure if needed so there is no need to modify
top-level configure every time; still (owing to autoconf 2.5x) you can list
help from all modules and pass needed parameters. This also (theretically)
allows you to have modules in separate tress from Zsh tree.
It does requires you to rerun preconfig it is all that is needed (autoconf
etc will be run automatically). It also should hopefully simplify makefiles.
Comments?
-andrej
Messages sorted by:
Reverse Date,
Date,
Thread,
Author