Instructions to create the plplot module
========================================

* Download the D compiler (version 1.028) from http://www.digitalmars.com/d/download.html
* Download the digitalmars C/C++ compiler from http://www.digitalmars.com/download/freecompiler.html
* Unzip them and set the PATH variable accordingly
* Download the htod tool from http://www.digitalmars.com/d/2.0/htod.html and put it in the dm/bin directory
* cd into the plplot/include directory
* edit the plplot.h file:
  - remove the first 136 lines
  - add
      #define PLDLLIMPEXP
      #define PLDLLIMPEXP_DATA(type) type
    before the rest of the header file
  - remove the plgfile(FILE **p_file); and plsfile(FILE *file); declarations (around line 1600)
* run "htod plplot.h plplot.d -hc -DDOUBLE"
* remove
    alias DBL_MAX PLFLT_MAX;
    alias DBL_MIN PLFLT_MIN;
  from the plplot.d file (right at the top).
* needed to add the following lines at about line 880, since they were not converted
    const DRAW_LINEX=1<<0; /* draw lines parallel to the X axis */
    const DRAW_LINEY=1<<1; /* draw lines parallel to the Y axis */
    const DRAW_LINEXY=DRAW_LINEX|DRAW_LINEY; /* draw lines parallel to both the X and Y axis */
    const MAG_COLOR=1<<2; /* draw the mesh with a color dependent of the magnitude */
    const BASE_CONT=1<<3; /* draw contour plot at bottom xy plane */
    const TOP_CONT=1<<4; /* draw contour plot at top xy plane */
    const SURF_CONT=1<<5; /* draw contour plot at surface */
    const DRAW_SIDES=1<<6; /* draw sides */
    const FACETED=1<<7; /* draw outline for each square that makes up the surface */
    const MESH=1<<8; /* draw mesh */
  
Compile examples
================
* Download and install the gdc compiler (only tested with this compiler)
  - Linux: http://dgcc.sourceforge.net/
  - Ubuntu: sudo apt-get install gdc
  - Windows: http://gdcwin.sourceforge.net/ (You need the MinGW compiler 3.4.5 installed as well)
  - Mac OS X: http://gdcmac.sourceforge.net/
* cd into the plplot/examples/d directory
* MinGW: gdc x07d.d -I ..\..\bindings\d path_to_build_directory\dll\libplplotd.dll.a -o x07d
* Linux: gdc x06d.d -I../../bindings/d path_to_build_directory/src/libplplotd.so -o x06d
