scons: Add support for GLES.

GLES can be enabled by running scons with

  $ scons gles=yes

When gles=yes is given, the build is changed in three ways.  First,
libmesa.a will be built with FEATURE_ES1 and FEATURE_ES2.  This makes
DRI drivers and libEGL support and advertise GLES support.  Second, GLES
libraries will be created.  They are libGLESv1_CM, libGLESv2, and
libglapi.  Last, libGL or opengl32 will link to libglapi.  This change
is required as _glapi_* will be declared as __declspec(dllimport) in
libmesa.a on windows.  libmesa.a expects those symbols to be defined in
another DLL.  Due to this change to GL, GLES support is marked
experimental.

Note that GLES requires libxml2-python to generate some of its sources.
diff --git a/src/SConscript b/src/SConscript
index 201812c..06c6f94 100644
--- a/src/SConscript
+++ b/src/SConscript
@@ -8,6 +8,10 @@
     Export('talloc')
 
 SConscript('glsl/SConscript')
+# When env['gles'] is set, the targets defined in mapi/glapi/SConscript are not
+# used.  libgl-xlib and libgl-gdi adapt themselves to use the targets defined
+# in mapi/glapi-shared/SConscript.  mesa/SConscript also adapts itself to
+# enable OpenGL ES support.
 SConscript('mapi/glapi/SConscript')
 SConscript('mesa/SConscript')
 
@@ -17,5 +21,8 @@
     SConscript('egl/main/SConscript')
     SConscript('glut/glx/SConscript')
 
+    if env['gles']:
+        SConscript('mapi/shared-glapi/SConscript')
+
 SConscript('gallium/SConscript')