Modularization development notes [was Re: RFA sent to the ArchWG]

Alan Coopersmith Alan.Coopersmith at Sun.COM
Mon Apr 11 14:19:36 PDT 2005


Kevin E Martin wrote:
> Ideally, we would like to see at least one person and preferably more
> signed up to work on each of these platforms; however, it is more likely
> that we will get fairly good coverage on a subset of them.  I expect
> good coverage on Linux, but we need much more than that.  So, if you are
> interested in working on a platform and have the hardware available,
> please speak up now so that we can get an idea of where we stand. [***]

You can count me in for Solaris on SPARC & x86/x64, of course.

> What I have in mind here is a simple brain dump of the process used to
> autotool in the xapps, xlibs, xserver and Debrix projects.  I'd also
> like to see us discuss any common conventions that everyone should
> follow so that we have a consistent build system and config options name
> space.

Me too - I'd like to see a page in the wiki for:
  - how to do common checks
  - lists of common things you need to check for (i.e. which functions
    are known to need special handling).

I'd also like to see a page definining the minimum base platform requirements,
i.e. ANSI/ISO C89-compliant compiler, etc.   Things we can all agree you must
have and we no longer need to special case.   That doesn't mean we prevent
running on older platforms, just that people who want to build on those 
platforms may need to do something else first - for instance, if we decide 
it's finally time to declare snprintf a minimum base requirement, older OS
users would have to build a libsnprintf first and set the flags to link with
it on those systems.

For example, a suggested list I wrote earlier in private mail on an 
autotool-ing discussion as a starting point:

 > Minimum requirements - autotoolers may assume these, platform
 > maintainers must make sure they can provide them:
 > 	- An ISO/ANSI C89 compliant C compiler & libc
 > 	- A C++ compiler with this subset of ISO/ANSI C++:
 > 		<filled in by someone who knows C++ better than me>
 > 	- These functions are provided either by the compiler & libc
 > 	  or by objects in CFLAGS/LDFLAGS/etc.: snprintf(), iconv()
 > 	- If gcc is used, it's version 2.95 or later
 > 	- A subset of POSIX/UNIX API's common to Cygwin, MacOSX, and
 > 	  the various Unix/Linux platforms:
 > 	<filled in by someone who knows Cygwin & MacOSX better than me>
 >
 > Optional features - autotoolers must *NOT* assume these or require
 > them for core functionality, but may test for them and enable additional
 > functionality if they're present:
 > 	- a specific compiler or version of that compiler, beyond
 > 	  what's stated above
 > 	- C99 features & additional API's
 > 	- POSIX/UNIX standard features, beyond what's stated above

-- 
	-Alan Coopersmith-           alan.coopersmith at sun.com
	 Sun Microsystems, Inc. - X Window System Engineering


More information about the xorg-modular mailing list