xserver: Branch 'master'

Adam Jackson ajax at kemper.freedesktop.org
Thu Jul 31 12:50:36 PDT 2008


 doc/c-extensions |   32 ++++++++++++++++++++++++++++++--
 1 file changed, 30 insertions(+), 2 deletions(-)

New commits:
commit 8d214bc26f9b7ab6a5c54d7749cd4b6811cb0b96
Author: Adam Jackson <ajax at redhat.com>
Date:   Thu Jul 31 15:46:52 2008 -0400

    Document more of the OS and library assumptions.

diff --git a/doc/c-extensions b/doc/c-extensions
index e1b222b..eb33e27 100644
--- a/doc/c-extensions
+++ b/doc/c-extensions
@@ -1,5 +1,7 @@
-Use of extensions throughout the X server tree
-----------------------------------------------
+First of all: C89 or better.  If you don't have that, port gcc first.
+
+Use of C language extensions throughout the X server tree
+---------------------------------------------------------
 
 Optional extensions:
 The server will still build if your toolchain does not support these
@@ -31,3 +33,29 @@ The server will not build if your toolchain does not support these extensions.
     * variadic macros: macros with a variable number of arguments, e.g.:
                        #define DebugF(x, ...) /**/
     * interleaved code and declarations: { foo = TRUE; int bar; do_stuff(); }
+
+
+Use of OS and library facilities throughout the X server tree
+-------------------------------------------------------------
+
+Non-OS-dependent code can assume facilities at least as good as
+the non-OS-facility parts of POSIX-1.2001.  Ideally this would
+be C99, but even gcc+glibc doesn't implement that yet.
+
+Unix-like systems are assumed to be at least as good as UNIX03.
+
+Linux systems must be at least 2.4 or later.  As a practical matter
+though, 2.4 kernels never receive any testing.  Use 2.6 already.
+
+TODO: Solaris.
+
+TODO: *BSD.
+
+Code that needs to be portable to Windows should be careful to,
+well, be portable.  Note that there are two Windows ports, cygwin and
+mingw.  Cygwin is more or less like Linux, but mingw is a bit more
+restrictive.  TODO: document which versions of Windows we actually care
+about.
+
+OSX support is generally limited to the most recent version.  Currently
+that means 10.5.


More information about the xorg-commit mailing list