summaryrefslogtreecommitdiff
path: root/doc/c-extensions
diff options
context:
space:
mode:
authorJon TURNEY <jon.turney@dronecode.org.uk>2012-05-01 20:08:41 +0100
committerJon TURNEY <jon.turney@dronecode.org.uk>2012-10-29 12:21:14 +0000
commit748be9da20a8bf3dd99701a95eac7ee3895a28de (patch)
tree191c1e15ee05fde7e0364454218f90e538985222 /doc/c-extensions
parentcc1d8fa8a4ef2e34e9837a44945094fd77e40a0b (diff)
doc: Update documentation about Windows platforms support a bit
Update what c-extensions says about Windows platforms support a bit: - Document that MinGW Win32 gets let off being POSIX-compilant - Document the minimum Windows version supported Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk> Reviewed-by: Colin Harrison <colin.harrison@virgin.net>
Diffstat (limited to 'doc/c-extensions')
-rw-r--r--doc/c-extensions19
1 files changed, 13 insertions, 6 deletions
diff --git a/doc/c-extensions b/doc/c-extensions
index eb33e272b..4a9006150 100644
--- a/doc/c-extensions
+++ b/doc/c-extensions
@@ -35,7 +35,7 @@ The server will not build if your toolchain does not support these extensions.
* interleaved code and declarations: { foo = TRUE; int bar; do_stuff(); }
-Use of OS and library facilities throughout the X server tree
+Use of library facilities throughout the X server tree
-------------------------------------------------------------
Non-OS-dependent code can assume facilities at least as good as
@@ -44,6 +44,17 @@ be C99, but even gcc+glibc doesn't implement that yet.
Unix-like systems are assumed to be at least as good as UNIX03.
+Note that there are two Windows ports, Cygwin and MinGW:
+- Cygwin is more or less like Linux.
+- MinGW is more restrictive. Windows does not provide the required
+POSIX facilities, so some non-OS-dependent code is stubbed out or
+has an alternate implementation if WIN32 is defined. Code that
+needs to be portable to Windows should be careful to, well, be portable.
+
+
+Required OS facilities
+-------------------------------------------------------------
+
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.
@@ -51,11 +62,7 @@ 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.
+Windows-dependent code assumes at least NT 5.1.
OSX support is generally limited to the most recent version. Currently
that means 10.5.