| README for port of Mesa 3.x to XFree86 on OS/2 (X/2) |
| (as of 19990514) |
| |
| |
| Contents: |
| |
| 1) Binary release |
| 2) Building from sources |
| 3) History |
| 4) Todo |
| 5) Mesa Home Page |
| |
| |
| 1) Binary release |
| |
| Though the Mesa sources should build in a quite reasonable time even on |
| a 585 class machine a binary relase is available (check topic 4) for an URL) |
| This package includes: |
| |
| - lib/MesaGL.dll, MesaGL.a |
| - lib/MesaGLU.dll, MesaGLU.a |
| - lib/glut.dll, glut.a |
| - include/GL/*.h |
| |
| Installing this in your XFree86 tree will enable you to build and |
| run all applications compatible with Mesa (and the current DLL |
| interface, of course ;-) |
| As usual the OMF-style libraries can be created using emxomf. |
| (e.g. "emxomf foo.a" creates the foo.lib omf-style library). |
| The static libraries are rarely used and you have to rebuild |
| Mesa to get them. They're a supported target, so you get |
| them in a straightforward way (see below). |
| |
| The testing of these libraries was limited to the supplied |
| demos/examples and a quite small number of third-party apps. |
| No warranty ... as usual ... ;-) |
| |
| |
| 2) Instructions to build Mesa 3.x for XFree86/OS2 from sources: |
| |
| Except the official Mesa source distribution you need: |
| - a recent version of XFree86 (3.3.x or above) including |
| the programming libraries |
| - EMX 0.9c (0.9d might work, never checked) |
| - GNU make |
| - REXX (!) |
| |
| The creation of the DLLs as well as of the static libraries |
| (if you want to have them) is handled in "mklib-emx.cmd", |
| a small REXX script. Perhaps not the best idea, but this |
| way it fits best in the scheme used to build libraries |
| on all platforms in Mesa 3.x. |
| |
| To actually build the libraries and demos, check mklib-emx.cmd |
| and modify it as desired. Then type |
| make os2-x11 |
| and wait for completion ;-) |
| |
| |
| 3) History |
| |
| Initially Darren Abbott (abbott@hiwaay.net) ported Mesa versions 2.x |
| to XFree86 OS/2. This port might still be available from |
| http://fly.HiWAAY.net/~abbott/xfree86-os2/xfree86.html |
| |
| The current port picked up things during the beta test for 3.0. |
| No major changes in the source were done. The build mechanism under OS/2 |
| has been made very similar to other platforms (if you treat mklib-emx.cmd |
| as a "black box"). |
| Advantage is that X/2 is now a valid target and all files are |
| integrated in the official source distribution. |
| Disadvantage is that this port (i.e. the DLLs' interface itself) is |
| definitly NOT COMPATIBLE to those of version 2.x. |
| It's uncertain whether this would be at all possible but since there |
| a _very_ few those apps it's not worth to find out anyway. |
| Also some libs (MesaTK, MesaAUX) are withdrawn from the Mesa distribution, |
| and accordingly from the OS/2 port. |
| |
| 4) Todo |
| |
| By now binary compatiblity is ensured by using the function names |
| as entry points instead of ordinals. This might cost performance and |
| is subject to change in future. In addition the supplied X86 assembler |
| source is not used yet. |
| |
| 5) Mesa Home Page |
| |
| You can get the source code and more information about Mesa from |
| http://www.mesa3d.org/ |
| |
| The OS/2 ports should be available from |
| http://r350.ee.ntu.edu.tw/~hcchu/os2/ports |
| |
| -- |
| Alexander Mai |
| st002279@hrzpub.tu-darmstadt.de |