Development plan -- time to move forward

Kevin E Martin kem at freedesktop.org
Fri Apr 22 17:34:39 PDT 2005


The discussion has significantly died down recently and I think this is
a very good sign that we are reaching consensus and we should begin the
implementation phase.

I've reviewed all of the threads here and in IRC and have incorporated
the comments into the associated wiki pages.  Here are the links:

http://wiki.x.org/wiki/ModularizationProposal
http://wiki.x.org/wiki/ModularizationDevelPlan
http://wiki.x.org/wiki/ModuleComponentList
http://wiki.x.org/wiki/ModularDevelopersGuide

Three questions remain from the discussions:

1. Where should we put xc/nls, xc/include/bitmaps and the xkb config
   files?

   Proposed answer: xc/nls and xc/include/bitmaps are data files that
   are should be included in the lib/X11 component.  The nls files are
   used by Xlib and there is precedence for including nls in X11 from
   the xlibs modularization effort.  The bitmaps are commonly used by
   clients that otherwise depend on no other X library, so by including
   them in lib/X11, we reduce the number of dependencies by one for
   those clients.  The xkb config files should be included with xkbcomp,
   which is where they are currently found in the monolithic tree.

2. Are there additional minimum requirements for builders and developers
   other than those listed in the developer's guide?

   Proposed answer: The primary reason for documenting the requirements
   at this stage is to make sure that everyone understands which tools
   are required for modularization.  Those tools are explicitly listed
   in the required tools section, and this list is sufficient for us to
   begin implementation.  Other minimum requirements will be documented
   as we determine them (e.g., exactly which C/C++ compilers are needed,
   the subset of POSIX/UNIX API's we can assume, etc.).  It is expected
   that the majority of these requirements will be the same as they are
   in the monolithic tree.

3. Should we use AM_CONFIG_HEADER() in the initial release or wait until
   afterwards?

   Proposed answer: If the AM_CONFIG_HEADER([config.h]) macro is used,
   then we will be required to add "#include <config.h>" to the source
   files.  Since we are sharing the source code between the modular and
   monolithic trees for the 6.9/7.0 release, then those changes will
   also appear in the monolithic release, where they do no harm, but are
   not needed.  However, if we do not use this macro, then the changes
   to the shared source code will be significantly reduced.  Therefore,
   we should not use the AM_CONFIG_HEADER() macro in the initial
   release.  Note that once the initial modular release has shipped, we
   can easily add the macro and associated source changes to only the
   modular tree.

If the proposed answers to the questions above are acceptable, then I
propose that we move forward with the implementation next week.

Please review the updated documents (see links above) this weekend or
early next week, and if you have any objections, please speak up now.

Thanks,
Kevin


More information about the xorg-modular mailing list