From: <ai...@us...> - 2014-01-28 06:46:06
|
Revision: 12963 http://sourceforge.net/p/plplot/code/12963 Author: airwin Date: 2014-01-28 06:46:00 +0000 (Tue, 28 Jan 2014) Log Message: ----------- Rename all alpha channel arguments in our public API from a to alpha. Tested on Linux using the plplotd target. Modified Paths: -------------- trunk/include/plplot.h trunk/src/plctrl.c Modified: trunk/include/plplot.h =================================================================== --- trunk/include/plplot.h 2014-01-27 08:07:41 UTC (rev 12962) +++ trunk/include/plplot.h 2014-01-28 06:46:00 UTC (rev 12963) @@ -1017,7 +1017,7 @@ // Returns 8 bit RGB values for given color from color map 0 and alpha value PLDLLIMPEXP void -c_plgcol0a( PLINT icol0, PLINT *r, PLINT *g, PLINT *b, PLFLT *a ); +c_plgcol0a( PLINT icol0, PLINT *r, PLINT *g, PLINT *b, PLFLT *alpha ); // Returns the background color by 8 bit RGB value @@ -1027,7 +1027,7 @@ // Returns the background color by 8 bit RGB value and alpha value PLDLLIMPEXP void -c_plgcolbga( PLINT *r, PLINT *g, PLINT *b, PLFLT *a ); +c_plgcolbga( PLINT *r, PLINT *g, PLINT *b, PLFLT *alpha ); // Returns the current compression setting @@ -1487,7 +1487,7 @@ // Set color map 0 colors by 8 bit RGB values and alpha values PLDLLIMPEXP void -c_plscmap0a( const PLINT *r, const PLINT *g, const PLINT *b, const PLFLT *a, PLINT ncol0 ); +c_plscmap0a( const PLINT *r, const PLINT *g, const PLINT *b, const PLFLT *alpha, PLINT ncol0 ); // Set number of colors in cmap 0 @@ -1502,7 +1502,7 @@ // Set color map 1 colors by 8 bit RGB and alpha values PLDLLIMPEXP void -c_plscmap1a( const PLINT *r, const PLINT *g, const PLINT *b, const PLFLT *a, PLINT ncol1 ); +c_plscmap1a( const PLINT *r, const PLINT *g, const PLINT *b, const PLFLT *alpha, PLINT ncol1 ); // Set color map 1 colors using a piece-wise linear relationship between // intensity [0,1] (cmap 1 index) and position in HLS or RGB color space. @@ -1517,7 +1517,7 @@ PLDLLIMPEXP void c_plscmap1la( PLBOOL itype, PLINT npts, const PLFLT *intensity, - const PLFLT *coord1, const PLFLT *coord2, const PLFLT *coord3, const PLFLT *a, const PLBOOL *alt_hue_path ); + const PLFLT *coord1, const PLFLT *coord2, const PLFLT *coord3, const PLFLT *alpha, const PLBOOL *alt_hue_path ); // Set number of colors in cmap 1 @@ -1542,7 +1542,7 @@ // Set a given color from color map 0 by 8 bit RGB value PLDLLIMPEXP void -c_plscol0a( PLINT icol0, PLINT r, PLINT g, PLINT b, PLFLT a ); +c_plscol0a( PLINT icol0, PLINT r, PLINT g, PLINT b, PLFLT alpha ); // Set the background color by 8 bit RGB value @@ -1552,7 +1552,7 @@ // Set the background color by 8 bit RGB value and alpha value PLDLLIMPEXP void -c_plscolbga( PLINT r, PLINT g, PLINT b, PLFLT a ); +c_plscolbga( PLINT r, PLINT g, PLINT b, PLFLT alpha ); // Used to globally turn color output on/off Modified: trunk/src/plctrl.c =================================================================== --- trunk/src/plctrl.c 2014-01-27 08:07:41 UTC (rev 12962) +++ trunk/src/plctrl.c 2014-01-28 06:46:00 UTC (rev 12963) @@ -227,15 +227,15 @@ //! @param r Red value of the background color (0 - 255). //! @param g Green value of the background color (0 - 255). //! @param b Blue value of the background color (0 - 255). -//! @param a Alpha (transparency) value of the background color +//! @param alpha Alpha (transparency) value of the background color //! (0.0 - 1.0). //-------------------------------------------------------------------------- void -c_plscolbga( PLINT r, PLINT g, PLINT b, PLFLT a ) +c_plscolbga( PLINT r, PLINT g, PLINT b, PLFLT alpha ) { - plscol0a( 0, r, g, b, a ); + plscol0a( 0, r, g, b, alpha ); } //-------------------------------------------------------------------------- @@ -261,12 +261,12 @@ //! @param r Current red value of the background color. //! @param g Current green value of the background color. //! @param b Current blue value of the background color. -//! @param a Current alpha value of the background color. +//! @param alpha Current alpha value of the background color. void -c_plgcolbga( PLINT *r, PLINT *g, PLINT *b, PLFLT *a ) +c_plgcolbga( PLINT *r, PLINT *g, PLINT *b, PLFLT *alpha ) { - plgcol0a( 0, r, g, b, a ); + plgcol0a( 0, r, g, b, alpha ); } //-------------------------------------------------------------------------- @@ -314,10 +314,10 @@ //! @param r Red value of the color (0 - 255). //! @param g Green value of the color (0 - 255). //! @param b Blue value of the color (0 - 255). -//! @param a Alpha value of the color (0.0 - 1.0). +//! @param alpha Alpha value of the color (0.0 - 1.0). void -c_plscol0a( PLINT icol0, PLINT r, PLINT g, PLINT b, PLFLT a ) +c_plscol0a( PLINT icol0, PLINT r, PLINT g, PLINT b, PLFLT alpha ) { if ( plsc->cmap0 == NULL ) plscmap0n( 0 ); @@ -328,11 +328,11 @@ plabort( buffer ); return; } - if ( ( r < 0 || r > 255 ) || ( g < 0 || g > 255 ) || ( b < 0 || b > 255 ) || ( a < 0 || a > 1.0 ) ) + if ( ( r < 0 || r > 255 ) || ( g < 0 || g > 255 ) || ( b < 0 || b > 255 ) || ( alpha < 0. || alpha > 1.0 ) ) { char buffer[BUFFER_SIZE]; snprintf( buffer, BUFFER_SIZE, "plscol0a: Invalid RGB color: %d, %d, %d, %f", - (int) r, (int) g, (int) b, (double) a ); + (int) r, (int) g, (int) b, (double) alpha ); plabort( buffer ); return; } @@ -340,7 +340,7 @@ plsc->cmap0[icol0].r = (unsigned char) r; plsc->cmap0[icol0].g = (unsigned char) g; plsc->cmap0[icol0].b = (unsigned char) b; - plsc->cmap0[icol0].a = a; + plsc->cmap0[icol0].a = alpha; if ( plsc->level > 0 ) plP_state( PLSTATE_CMAP0 ); @@ -392,18 +392,18 @@ //! @param r Current red value of the color. //! @param g Current green value of the color. //! @param b Current blue value of the color. -//! @param a Current alpha value of the color. +//! @param alpha Current alpha value of the color. void -c_plgcol0a( PLINT icol0, PLINT *r, PLINT *g, PLINT *b, PLFLT *a ) +c_plgcol0a( PLINT icol0, PLINT *r, PLINT *g, PLINT *b, PLFLT *alpha ) { if ( plsc->cmap0 == NULL ) plscmap0n( 0 ); - *r = -1; - *g = -1; - *b = -1; - *a = -1.0; + *r = -1; + *g = -1; + *b = -1; + *alpha = -1.0; if ( icol0 < 0 || icol0 > plsc->ncol0 ) { @@ -413,10 +413,10 @@ return; } - *r = plsc->cmap0[icol0].r; - *g = plsc->cmap0[icol0].g; - *b = plsc->cmap0[icol0].b; - *a = plsc->cmap0[icol0].a; + *r = plsc->cmap0[icol0].r; + *g = plsc->cmap0[icol0].g; + *b = plsc->cmap0[icol0].b; + *alpha = plsc->cmap0[icol0].a; return; } @@ -471,11 +471,11 @@ //! @param r Array of red values. //! @param g Array of green values. //! @param b Array of blue values. -//! @param a Array of alpha values. +//! @param alpha Array of alpha values. //! @param ncol0 Total number of RGBA values. void -c_plscmap0a( const PLINT *r, const PLINT *g, const PLINT *b, const PLFLT *a, PLINT ncol0 ) +c_plscmap0a( const PLINT *r, const PLINT *g, const PLINT *b, const PLFLT *alpha, PLINT ncol0 ) { int i; @@ -486,11 +486,11 @@ if ( ( r[i] < 0 || r[i] > 255 ) || ( g[i] < 0 || g[i] > 255 ) || ( b[i] < 0 || b[i] > 255 ) || - ( a[i] < 0.0 || a[i] > 1.0 ) ) + ( alpha[i] < 0.0 || alpha[i] > 1.0 ) ) { char buffer[BUFFER_SIZE]; snprintf( buffer, BUFFER_SIZE, "plscmap0a: Invalid RGB color: %d, %d, %d, %f", - (int) r[i], (int) g[i], (int) b[i], (double) a[i] ); + (int) r[i], (int) g[i], (int) b[i], (double) alpha[i] ); plabort( buffer ); return; } @@ -498,7 +498,7 @@ plsc->cmap0[i].r = (unsigned char) r[i]; plsc->cmap0[i].g = (unsigned char) g[i]; plsc->cmap0[i].b = (unsigned char) b[i]; - plsc->cmap0[i].a = a[i]; + plsc->cmap0[i].a = alpha[i]; } if ( plsc->level > 0 ) @@ -554,11 +554,11 @@ //! @param r Array of red values. //! @param g Array of green values. //! @param b Array of blue values. -//! @param a Array of alpha values. +//! @param alpha Array of alpha values. //! @param ncol1 Total number of RGBA values. void -c_plscmap1a( const PLINT *r, const PLINT *g, const PLINT *b, const PLFLT *a, PLINT ncol1 ) +c_plscmap1a( const PLINT *r, const PLINT *g, const PLINT *b, const PLFLT *alpha, PLINT ncol1 ) { int i; @@ -569,18 +569,18 @@ if ( ( r[i] < 0 || r[i] > 255 ) || ( g[i] < 0 || g[i] > 255 ) || ( b[i] < 0 || b[i] > 255 ) || - ( a[i] < 0.0 || a[i] > 1.0 ) ) + ( alpha[i] < 0.0 || alpha[i] > 1.0 ) ) { char buffer[BUFFER_SIZE]; snprintf( buffer, BUFFER_SIZE, "plscmap1a: Invalid RGB color: %d, %d, %d, %f", - (int) r[i], (int) g[i], (int) b[i], (double) a[i] ); + (int) r[i], (int) g[i], (int) b[i], (double) alpha[i] ); plabort( buffer ); return; } plsc->cmap1[i].r = (unsigned char) r[i]; plsc->cmap1[i].g = (unsigned char) g[i]; plsc->cmap1[i].b = (unsigned char) b[i]; - plsc->cmap1[i].a = a[i]; + plsc->cmap1[i].a = alpha[i]; } if ( plsc->level > 0 ) @@ -721,13 +721,13 @@ //! @param coord1[] first coordinate for each control point //! @param coord2[] second coordinate for each control point //! @param coord3[] third coordinate for each control point -//! @param a[] alpha value for each control point +//! @param alpha[] alpha value for each control point //! @param alt_hue_path[] if true, use alternative hue interpolation path //! for the associated interval. void c_plscmap1la( PLINT itype, PLINT npts, const PLFLT *pos, - const PLFLT *coord1, const PLFLT *coord2, const PLFLT *coord3, const PLFLT *a, const PLINT *alt_hue_path ) + const PLFLT *coord1, const PLFLT *coord2, const PLFLT *coord3, const PLFLT *alpha, const PLINT *alt_hue_path ) { int n; PLFLT h, l, s, r, g, b; @@ -779,7 +779,7 @@ plsc->cmap1cp[n].l = l; plsc->cmap1cp[n].s = s; plsc->cmap1cp[n].p = pos[n]; - plsc->cmap1cp[n].a = a[n]; + plsc->cmap1cp[n].a = alpha[n]; if ( alt_hue_path == NULL ) plsc->cmap1cp[n].alt_hue_path = 0; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <arj...@us...> - 2014-01-28 20:23:58
|
Revision: 12965 http://sourceforge.net/p/plplot/code/12965 Author: arjenmarkus Date: 2014-01-28 20:23:52 +0000 (Tue, 28 Jan 2014) Log Message: ----------- Small corrections (FALSE instead of 0, plFramePtr->tkwin instead of new and a few superfluous empty lines removed) Modified Paths: -------------- trunk/bindings/tk/plframe.c trunk/drivers/tk.c trunk/drivers/wingcc.c Modified: trunk/bindings/tk/plframe.c =================================================================== --- trunk/bindings/tk/plframe.c 2014-01-28 09:57:01 UTC (rev 12964) +++ trunk/bindings/tk/plframe.c 2014-01-28 20:23:52 UTC (rev 12965) @@ -469,7 +469,7 @@ // Start up event handlers and other good stuff - Tk_SetClass( new, "Plframe" ); + Tk_SetClass( plFramePtr->tkwin, "Plframe" ); Tk_CreateEventHandler( plFramePtr->tkwin, StructureNotifyMask, PlFrameConfigureEH, (ClientData) plFramePtr ); Modified: trunk/drivers/tk.c =================================================================== --- trunk/drivers/tk.c 2014-01-28 09:57:01 UTC (rev 12964) +++ trunk/drivers/tk.c 2014-01-28 20:23:52 UTC (rev 12965) @@ -268,7 +268,7 @@ if ( dev->iodev == NULL ) plexit( "plD_init_tk: Out of memory." ); - dev->exit_eventloop = 0; + dev->exit_eventloop = FALSE; // Variables used in querying plserver for events Modified: trunk/drivers/wingcc.c =================================================================== --- trunk/drivers/wingcc.c 2014-01-28 09:57:01 UTC (rev 12964) +++ trunk/drivers/wingcc.c 2014-01-28 20:23:52 UTC (rev 12965) @@ -981,8 +981,6 @@ case PLSTATE_CMAP0: case PLSTATE_CMAP1: dev->colour = RGB( pls->curcolor.r, pls->curcolor.g, pls->curcolor.b ); - - break; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ai...@us...> - 2014-01-29 00:01:56
|
Revision: 12966 http://sourceforge.net/p/plplot/code/12966 Author: airwin Date: 2014-01-29 00:01:50 +0000 (Wed, 29 Jan 2014) Log Message: ----------- Finish the previous renaming of pos ==> intensity for the plscmap1l and plscmap1la arguments in plplot.h by making the same change in src/plctrl.c. Change the argument name of plseed from s ==> seed. Modified Paths: -------------- trunk/include/plplot.h trunk/src/plctrl.c Modified: trunk/include/plplot.h =================================================================== --- trunk/include/plplot.h 2014-01-28 20:23:52 UTC (rev 12965) +++ trunk/include/plplot.h 2014-01-29 00:01:50 UTC (rev 12966) @@ -1599,7 +1599,7 @@ // Set seed for internal random number generator PLDLLIMPEXP void -c_plseed( unsigned int s ); +c_plseed( unsigned int seed ); // Set the escape character for text strings. Modified: trunk/src/plctrl.c =================================================================== --- trunk/src/plctrl.c 2014-01-28 20:23:52 UTC (rev 12965) +++ trunk/src/plctrl.c 2014-01-29 00:01:50 UTC (rev 12966) @@ -632,7 +632,7 @@ //! The inputs are: //! @param itype 0: HLS, 1: RGB //! @param npts number of control points -//! @param pos[] position for each control point +//! @param intensity[] intensity index for each control point //! @param coord1[] first coordinate for each control point //! @param coord2[] second coordinate for each control point //! @param coord3[] third coordinate for each control point @@ -640,7 +640,7 @@ //! for the associated interval. void -c_plscmap1l( PLINT itype, PLINT npts, const PLFLT *pos, +c_plscmap1l( PLINT itype, PLINT npts, const PLFLT *intensity, const PLFLT *coord1, const PLFLT *coord2, const PLFLT *coord3, const PLINT *alt_hue_path ) { int n; @@ -652,7 +652,7 @@ return; } - if ( ( pos[0] != 0 ) || ( pos[npts - 1] != 1 ) ) + if ( ( intensity[0] != 0 ) || ( intensity[npts - 1] != 1 ) ) { plabort( "plscmap1l: First, last control points must lie on boundary" ); return; @@ -692,7 +692,7 @@ plsc->cmap1cp[n].h = h; plsc->cmap1cp[n].l = l; plsc->cmap1cp[n].s = s; - plsc->cmap1cp[n].p = pos[n]; + plsc->cmap1cp[n].p = intensity[n]; plsc->cmap1cp[n].a = 1.0; if ( alt_hue_path == NULL ) @@ -717,7 +717,7 @@ //! //! @param itype 0: HLS, 1: RGB //! @param npts number of control points -//! @param pos[] position for each control point +//! @param intensity[] intensity index for each control point //! @param coord1[] first coordinate for each control point //! @param coord2[] second coordinate for each control point //! @param coord3[] third coordinate for each control point @@ -726,7 +726,7 @@ //! for the associated interval. void -c_plscmap1la( PLINT itype, PLINT npts, const PLFLT *pos, +c_plscmap1la( PLINT itype, PLINT npts, const PLFLT *intensity, const PLFLT *coord1, const PLFLT *coord2, const PLFLT *coord3, const PLFLT *alpha, const PLINT *alt_hue_path ) { int n; @@ -738,7 +738,7 @@ return; } - if ( ( pos[0] != 0 ) || ( pos[npts - 1] != 1 ) ) + if ( ( intensity[0] != 0 ) || ( intensity[npts - 1] != 1 ) ) { plabort( "plscmap1la: First, last control points must lie on boundary" ); return; @@ -778,7 +778,7 @@ plsc->cmap1cp[n].h = h; plsc->cmap1cp[n].l = l; plsc->cmap1cp[n].s = s; - plsc->cmap1cp[n].p = pos[n]; + plsc->cmap1cp[n].p = intensity[n]; plsc->cmap1cp[n].a = alpha[n]; if ( alt_hue_path == NULL ) @@ -3045,13 +3045,13 @@ // //! Set the seed for the random number generator included. //! -//! @param s The random number generator seed value. +//! @param seed The random number generator seed value. //-------------------------------------------------------------------------- void -c_plseed( unsigned int s ) +c_plseed( unsigned int seed ) { - init_genrand( s ); + init_genrand( seed ); } //-------------------------------------------------------------------------- This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ai...@us...> - 2014-01-29 01:43:05
|
Revision: 12968 http://sourceforge.net/p/plplot/code/12968 Author: airwin Date: 2014-01-29 01:42:57 +0000 (Wed, 29 Jan 2014) Log Message: ----------- Use better parameter names (xmin0, xmax0, ymin0, ymax0, zmin0, zmax0) ==> (xmin, xmax, ymin, ymax, zmin, zmax) for some of the plw3d arguments. Modified Paths: -------------- trunk/include/plplot.h trunk/src/plwind.c Modified: trunk/include/plplot.h =================================================================== --- trunk/include/plplot.h 2014-01-29 00:29:24 UTC (rev 12967) +++ trunk/include/plplot.h 2014-01-29 01:42:57 UTC (rev 12968) @@ -1980,9 +1980,9 @@ // Set up a window for three-dimensional plotting. PLDLLIMPEXP void -c_plw3d( PLFLT basex, PLFLT basey, PLFLT height, PLFLT xmin0, - PLFLT xmax0, PLFLT ymin0, PLFLT ymax0, PLFLT zmin0, - PLFLT zmax0, PLFLT alt, PLFLT az ); +c_plw3d( PLFLT basex, PLFLT basey, PLFLT height, PLFLT xmin, + PLFLT xmax, PLFLT ymin, PLFLT ymax, PLFLT zmin, + PLFLT zmax, PLFLT alt, PLFLT az ); #ifdef PL_DEPRECATED // Set pen width with deprecated integer width Modified: trunk/src/plwind.c =================================================================== --- trunk/src/plwind.c 2014-01-29 00:29:24 UTC (rev 12967) +++ trunk/src/plwind.c 2014-01-29 01:42:57 UTC (rev 12968) @@ -136,11 +136,11 @@ //-------------------------------------------------------------------------- void -c_plw3d( PLFLT basex, PLFLT basey, PLFLT height, PLFLT xmin0, - PLFLT xmax0, PLFLT ymin0, PLFLT ymax0, PLFLT zmin0, - PLFLT zmax0, PLFLT alt, PLFLT az ) +c_plw3d( PLFLT basex, PLFLT basey, PLFLT height, PLFLT xmin, + PLFLT xmax, PLFLT ymin, PLFLT ymax, PLFLT zmin, + PLFLT zmax, PLFLT alt, PLFLT az ) { - PLFLT xmin, xmax, ymin, ymax, zmin, zmax, d; + PLFLT xmin_adjusted, xmax_adjusted, ymin_adjusted, ymax_adjusted, zmin_adjusted, zmax_adjusted, d; PLFLT cx, cy, saz, caz, salt, calt, zscale; if ( plsc->level < 3 ) @@ -153,7 +153,7 @@ plabort( "plw3d: Invalid world coordinate boxsize" ); return; } - if ( xmin0 == xmax0 || ymin0 == ymax0 || zmin0 == zmax0 ) + if ( xmin == xmax || ymin == ymax || zmin == zmax ) { plabort( "plw3d: Invalid axis range" ); return; @@ -164,40 +164,40 @@ return; } - d = 1.0e-5 * ( xmax0 - xmin0 ); - xmax = xmax0 + d; - xmin = xmin0 - d; - d = 1.0e-5 * ( ymax0 - ymin0 ); - ymax = ymax0 + d; - ymin = ymin0 - d; - d = 1.0e-5 * ( zmax0 - zmin0 ); - zmax = zmax0 + d; - zmin = zmin0 - d; - cx = basex / ( xmax - xmin ); - cy = basey / ( ymax - ymin ); - zscale = height / ( zmax - zmin ); - saz = sin( dtr * az ); - caz = cos( dtr * az ); - salt = sin( dtr * alt ); - calt = cos( dtr * alt ); + d = 1.0e-5 * ( xmax - xmin ); + xmax_adjusted = xmax + d; + xmin_adjusted = xmin - d; + d = 1.0e-5 * ( ymax - ymin ); + ymax_adjusted = ymax + d; + ymin_adjusted = ymin - d; + d = 1.0e-5 * ( zmax - zmin ); + zmax_adjusted = zmax + d; + zmin_adjusted = zmin - d; + cx = basex / ( xmax_adjusted - xmin_adjusted ); + cy = basey / ( ymax_adjusted - ymin_adjusted ); + zscale = height / ( zmax_adjusted - zmin_adjusted ); + saz = sin( dtr * az ); + caz = cos( dtr * az ); + salt = sin( dtr * alt ); + calt = cos( dtr * alt ); - plsc->domxmi = xmin; - plsc->domxma = xmax; - plsc->domymi = ymin; - plsc->domyma = ymax; + plsc->domxmi = xmin_adjusted; + plsc->domxma = xmax_adjusted; + plsc->domymi = ymin_adjusted; + plsc->domyma = ymax_adjusted; plsc->zzscl = zscale; - plsc->ranmi = zmin; - plsc->ranma = zmax; + plsc->ranmi = zmin_adjusted; + plsc->ranma = zmax_adjusted; plsc->base3x = basex; plsc->base3y = basey; - plsc->basecx = 0.5 * ( xmin + xmax ); - plsc->basecy = 0.5 * ( ymin + ymax ); + plsc->basecx = 0.5 * ( xmin_adjusted + xmax_adjusted ); + plsc->basecy = 0.5 * ( ymin_adjusted + ymax_adjusted ); // Mathematical explanation of the 3 transformations of coordinates: // (I) Scaling: // x' = cx*(x-x_mid) = cx*(x-plsc->basecx) // y' = cy*(y-y_mid) = cy*(y-plsc->basecy) -// z' = zscale*(z-zmin) = zscale*(z-plsc->ranmi) +// z' = zscale*(z-zmin_adjusted) = zscale*(z-plsc->ranmi) // (II) Rotation about z' axis clockwise by the angle of the azimut when // looking from the top in a right-handed coordinate system. // x'' x' This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ai...@us...> - 2014-02-05 22:23:42
|
Revision: 12975 http://sourceforge.net/p/plplot/code/12975 Author: airwin Date: 2014-02-05 22:23:38 +0000 (Wed, 05 Feb 2014) Log Message: ----------- Update the configuration of pkg-config files so that good results are obtained on MinGW/MSYS. Lightly tested on MinGW/MSYS/Wine using the traditional build of some of the installed examples. Modified Paths: -------------- trunk/cmake/modules/pkg-config.cmake trunk/cmake/modules/plplot_functions.cmake trunk/src/CMakeLists.txt Modified: trunk/cmake/modules/pkg-config.cmake =================================================================== --- trunk/cmake/modules/pkg-config.cmake 2014-02-02 19:32:14 UTC (rev 12974) +++ trunk/cmake/modules/pkg-config.cmake 2014-02-05 22:23:38 UTC (rev 12975) @@ -42,10 +42,17 @@ set(PKG_CONFIG_DIR "${LIB_DIR}/pkgconfig") set(env_PKG_CONFIG_PATH $ENV{PKG_CONFIG_PATH}) if(env_PKG_CONFIG_PATH) - set(PKG_CONFIG_ENV PKG_CONFIG_PATH="${PKG_CONFIG_DIR}:${env_PKG_CONFIG_PATH}") + set(_pkg_config_path "${PKG_CONFIG_DIR};${env_PKG_CONFIG_PATH}") else(env_PKG_CONFIG_PATH) - set(PKG_CONFIG_ENV PKG_CONFIG_PATH="${PKG_CONFIG_DIR}") + set(_pkg_config_path "${PKG_CONFIG_DIR}") endif(env_PKG_CONFIG_PATH) + + if(MINGW) + determine_msys_path(_pkg_config_path "${_pkg_config_path}") + endif(MINGW) + + set(PKG_CONFIG_ENV PKG_CONFIG_PATH="${_pkg_config_path}") + else(PKG_CONFIG_EXECUTABLE) message(STATUS "Looking for pkg-config - not found") message(STATUS @@ -110,7 +117,8 @@ macro(pkg_config_link_flags _link_flags_out _link_flags_in) # Transform link flags into a form that is suitable to be used for # output pkg-config (*.pc) files. - # N.B. ${_link_flags_in} must be a string and not a list. + # N.B. ${_link_flags_in} must be in quoted "${list_variable}" form + # where list_variable is a CMake list. # First strip out optimized / debug options which are not needed # Currently only FindQt4 seems to need this. @@ -135,28 +143,42 @@ # since it appears pkg-config handles that latter form much better (with # regard to keeping the correct order and eliminating duplicates). - # These REGEX REPLACE's won't actually replace anything on bare windows since - # library names are not of this form on that platform. Something to be - # considered later if we decide to use pkg-config on bare windows. + # This logic appears to work fine on Linux, Mac OS X, and MinGW/MSYS + # but it may need some generalization on other platforms such as + # Cygwin. + if(CMAKE_SYSTEM_NAME STREQUAL "Linux") + set(suffix_list "\\.so" "\\.a") + elseif(CMAKE_SYSTEM_NAME STREQUAL "Darwin") + set(suffix_list "\\.so" "\\.a" "\\.dylib") + elseif(WIN32_OR_CYGWIN) + # Order is important here. + set(suffix_list "\\.dll\\.a" "\\.a") + else(CMAKE_SYSTEM_NAME STREQUAL "Linux") + # Probably a non-Linux, non-Mac OS X, Unix platform + # For this case we assume the same as Linux. + set(suffix_list "\\.so" "\\.a") + endif(CMAKE_SYSTEM_NAME STREQUAL "Linux") - # This logic will need to be expanded for Unix platforms other than - # Mac OS X and Linux. - if(APPLE) - set(suffix_list ".so" ".a" ".dylib") - else(APPLE) - set(suffix_list ".so" ".a") - endif(APPLE) - foreach(suffix ${suffix_list}) + if(WIN32_OR_CYGWIN) + # Look for colon-delimited drive-letter form on these platforms. + string( + REGEX REPLACE "([a-zA-Z]:/[^ ]*)/lib([^ ]*)${suffix}" "-L\\1 -l\\2" + ${_link_flags_out} + "${${_link_flags_out}}" + ) + #message("(${suffix}) ${_link_flags_out} = ${${_link_flags_out}}") + endif(WIN32_OR_CYGWIN) + # Look for form starting with "/" on all platforms. string( - REGEX REPLACE "(/[^ ]*)/lib([^ ]*)\\${suffix}" "-L\\1 -l\\2" - ${_link_flags_out} - "${${_link_flags_out}}" - ) + REGEX REPLACE "(/[^ ]*)/lib([^ ]*)${suffix}" "-L\\1 -l\\2" + ${_link_flags_out} + "${${_link_flags_out}}" + ) #message("(${suffix}) ${_link_flags_out} = ${${_link_flags_out}}") endforeach(suffix ${suffix_list}) - if(APPLE) + if(CMAKE_SYSTEM_NAME STREQUAL "Darwin") # For Mac OS X transform frameworks information into correct form. string( REGEX REPLACE @@ -166,7 +188,7 @@ ${${_link_flags_out}} ) #message("(frameworks) ${_link_flags_out} = ${${_link_flags_out}}") - endif(APPLE) + endif(CMAKE_SYSTEM_NAME STREQUAL "Darwin") endmacro(pkg_config_link_flags) Modified: trunk/cmake/modules/plplot_functions.cmake =================================================================== --- trunk/cmake/modules/plplot_functions.cmake 2014-02-02 19:32:14 UTC (rev 12974) +++ trunk/cmake/modules/plplot_functions.cmake 2014-02-05 22:23:38 UTC (rev 12975) @@ -221,3 +221,21 @@ #message("DEBUG: (filtered) ${rpath} = ${internal_rpath}") set(${rpath} ${internal_rpath} PARENT_SCOPE) endfunction(filter_rpath) + +if(MINGW) + # Useful function to convert Windows list of semicolon-delimited + # PATHs to the equivalent list of MSYS PATHs (exactly like the + # colon-delimited Unix list of PATHs except the driver letters are + # specified as the initial one-character component of each of the + # PATHs). For example, this function will transform the Windows + # list of PATHs, "z:\path1;c:\path2" to "/z/path1:/c/path2". + function(determine_msys_path MSYS_PATH NATIVE_PATH) + #message(STATUS "NATIVE_PATH = ${NATIVE_PATH}") + string(REGEX REPLACE "^\([a-zA-z]\):" "/\\1" PATH "${NATIVE_PATH}") + string(REGEX REPLACE ";\([a-zA-z]\):" ";/\\1" PATH "${PATH}") + string(REGEX REPLACE ";" ":" PATH "${PATH}") + file(TO_CMAKE_PATH "${PATH}" PATH) + #message(STATUS "MSYS_PATH = ${PATH}") + set(${MSYS_PATH} ${PATH} PARENT_SCOPE) + endfunction(determine_msys_path) +endif(MINGW) Modified: trunk/src/CMakeLists.txt =================================================================== --- trunk/src/CMakeLists.txt 2014-02-02 19:32:14 UTC (rev 12974) +++ trunk/src/CMakeLists.txt 2014-02-05 22:23:38 UTC (rev 12975) @@ -191,15 +191,17 @@ set(PC_REQUIRES_TAG "Requires") endif(NON_TRANSITIVE) +# Deal with external libraries. set(LIB_INSTALL_RPATH ${LIB_DIR}) +set(libplplot${LIB_TAG}_LINK_LIBRARIES) if(ENABLE_DYNDRIVERS) - set(libplplot${LIB_TAG}_LINK_LIBRARIES ${LTDL_LIBRARIES}) + list(APPEND libplplot${LIB_TAG}_LINK_LIBRARIES ${LTDL_LIBRARIES}) #message("libplplot${LIB_TAG}_LINK_LIBRARIES = ${libplplot${LIB_TAG}_LINK_LIBRARIES}") #message("libplplot${LIB_TAG}_RPATH = ${libplplot${LIB_TAG}_RPATH}") - set(LIB_INSTALL_RPATH ${LIB_INSTALL_RPATH} ${libplplot${LIB_TAG}_RPATH}) + list(APPEND LIB_INSTALL_RPATH ${libplplot${LIB_TAG}_RPATH}) else(ENABLE_DYNDRIVERS) - set(libplplot${LIB_TAG}_LINK_LIBRARIES ${DRIVERS_LINK_FLAGS}) - set(LIB_INSTALL_RPATH ${LIB_INSTALL_RPATH} ${DRIVERS_RPATH}) + list(APPEND libplplot${LIB_TAG}_LINK_LIBRARIES ${DRIVERS_LINK_FLAGS}) + list(APPEND LIB_INSTALL_RPATH ${DRIVERS_RPATH}) if(ANY_QT_DEVICE) # Update the target COMPILE_DEFINITIONS and INCLUDE_DIRECTORIES set_qt_target_properties(plplot${LIB_TAG}) @@ -208,18 +210,47 @@ #message("DEBUG: LIB_INSTALL_RPATH = ${LIB_INSTALL_RPATH}") if(MATH_LIB) - set( - libplplot${LIB_TAG}_LINK_LIBRARIES - ${libplplot${LIB_TAG}_LINK_LIBRARIES} - ${MATH_LIB} - ) + list(APPEND libplplot${LIB_TAG}_LINK_LIBRARIES ${MATH_LIB}) endif(MATH_LIB) # Transform "${libplplot${LIB_TAG}_LINK_LIBRARIES}" string to the # standard pkg-config form. +if(HAVE_SHAPELIB) + get_source_file_property(PLMAP_COMPILE_PROPS plmap.c COMPILE_FLAGS) + # Deal with NOTFOUND case. + if(NOT PLMAP_COMPILE_PROPS) + set(PLMAP_COMPILE_PROPS) + endif(NOT PLMAP_COMPILE_PROPS) + set_source_files_properties(plmap.c + PROPERTIES + COMPILE_FLAGS "${PLMAP_COMPILE_PROPS} -I${SHAPELIB_INCLUDE_DIR}" + ) + if(HAVE_SAHOOKS) + set_source_files_properties(plmap.c + PROPERTIES + COMPILE_DEFINITIONS HAVE_SAHOOKS + ) + endif(HAVE_SAHOOKS) + + list(APPEND libplplot${LIB_TAG}_LINK_LIBRARIES ${SHAPELIB_LIBRARIES}) + list(APPEND LIB_INSTALL_RPATH ${SHAPELIB_RPATH}) + +endif(HAVE_SHAPELIB) + +if(WITH_FREETYPE) + get_source_file_property(PLFREETYPE_COMPILE_PROPS plfreetype.c COMPILE_FLAGS) + # Deal with NOTFOUND case. + if(NOT PLFREETYPE_COMPILE_PROPS) + set(PLFREETYPE_COMPILE_PROPS) + endif(NOT PLFREETYPE_COMPILE_PROPS) + set_source_files_properties(plfreetype.c PROPERTIES COMPILE_FLAGS "${PLFREETYPE_COMPILE_PROPS} -I${FREETYPE_INCLUDE_DIR}") + list(APPEND libplplot${LIB_TAG}_LINK_LIBRARIES ${FREETYPE_LIBRARIES}) + +endif(WITH_FREETYPE) + set(libstdcxx_full_path) -if(NOT BUILD_SHARED_LIBS) +if(ENABLE_cxx AND NOT BUILD_SHARED_LIBS) # For this special case where the plplot library is a static C++ # library, pkg-config needs to add -L and -l options corresponding # to libstd++.so to the link flags it delivers. Another alternative @@ -243,15 +274,17 @@ endif(EXISTS "${CMAKE_CXX_COMPILER}") if(CXX_rc STREQUAL "0" AND CXX_string MATCHES "LIBRARY_PATH=") string(REGEX REPLACE "^.*(LIBRARY_PATH=.*)\nCOLLECT_GCC_OPTIONS.*$" "\\1" - CXX_library_path_string ${CXX_string} + CXX_library_path_string "${CXX_string}" ) #message(STATUS "CXX_library_path_string = ${CXX_library_path_string}") if(CXX_library_path_string MATCHES "^LIBRARY_PATH=") - string(REGEX REPLACE "^LIBRARY_PATH=" "" CXX_library_path ${CXX_library_path_string}) - # This converts native path delimiters to a semicolon-delimited - #(cmake) list of directories. - file(TO_CMAKE_PATH ${CXX_library_path} CXX_library_path) - message(STATUS "CXX_library_path = ${CXX_library_path}") + string(REGEX REPLACE "^LIBRARY_PATH=" "" CXX_library_path "${CXX_library_path_string}") + # For both Linux and MinGW, CXX_library_path is a semicolon + # delimited list which is identical to the form of a CMake list. + # Furthermore, for the MinGW case, the drive letters are in the + # colon form, but experiments show that is exactly the form + # required by find_library for the MinGW case. Net result: no + # conversion necessary for either Linux or MinGW. find_library(libstdcxx_full_path NAMES stdc++ PATHS ${CXX_library_path}) message(STATUS "libstdcxx_full_path = ${libstdcxx_full_path}") else(CXX_library_path_string MATCHES "^LIBRARY_PATH=") @@ -266,10 +299,16 @@ message(STATUS "CXX_string = ${CXX_string}") endif(CXX_rc STREQUAL "0" AND CXX_string MATCHES "LIBRARY_PATH=") if(NOT libstdcxx_full_path) - message(STATUS "WARNING: failed to find viable C++ compiler library so pkg-config link flags will be incomplete") + message(STATUS "WARNING: failed to find libstdc++ so pkg-config link flags will be incomplete") endif(NOT libstdcxx_full_path) -endif(NOT BUILD_SHARED_LIBS) +endif(ENABLE_cxx AND NOT BUILD_SHARED_LIBS) +# Transform current information in libplplot${LIB_TAG}_LINK_LIBRARIES +# into pkg-config (libplplot${LIB_TAG}_LINK_FLAGS) form. Both variables +# will have data added to them afterward due to the internal PLplot libraries +# which have a different pkg-config treatment than the external libraries +# dealt with here. + if(libstdcxx_full_path) pkg_config_link_flags( libplplot${LIB_TAG}_LINK_FLAGS @@ -282,24 +321,20 @@ ) endif(libstdcxx_full_path) +# The above completes dealing with the external libraries. Now +# deal with the internal libraries that are built by the PLplot +# build system. + if(WITH_CSA) + list(APPEND libplplot${LIB_TAG}_LINK_LIBRARIES csirocsa) set( - libplplot${LIB_TAG}_LINK_LIBRARIES - ${libplplot${LIB_TAG}_LINK_LIBRARIES} - csirocsa - ) - set( libplplot${LIB_TAG}_LINK_FLAGS "${libplplot${LIB_TAG}_LINK_FLAGS} -lcsirocsa" ) endif(WITH_CSA) if(PL_HAVE_QHULL) - set( - libplplot${LIB_TAG}_LINK_LIBRARIES - ${libplplot${LIB_TAG}_LINK_LIBRARIES} - csironn - ) + list(APPEND libplplot${LIB_TAG}_LINK_LIBRARIES csironn) if(QHULL_RPATH) set( libplplot${LIB_TAG}_LINK_FLAGS @@ -317,11 +352,11 @@ ) # Needed by the traditional pkg-config approach for installed examples # as well as the new CMake-based build system for the installed examples. - set(LIB_INSTALL_RPATH ${LIB_INSTALL_RPATH} ${QHULL_RPATH}) + list(APPEND LIB_INSTALL_RPATH ${QHULL_RPATH}) endif(PL_HAVE_QHULL) if(NOT ENABLE_DYNDRIVERS AND PLD_cgm) - list(APPEND libplplot${LIB_TAG}_LINK_LIBRARIES nistcd) + list(APPEND libplplot${LIB_TAG}_LINK_LIBRARIES nistcd) set( libplplot${LIB_TAG}_LINK_FLAGS "${libplplot${LIB_TAG}_LINK_FLAGS} -lnistcd" @@ -329,84 +364,12 @@ include_directories(${CMAKE_SOURCE_DIR}/lib/nistcd) endif(NOT ENABLE_DYNDRIVERS AND PLD_cgm) +list(APPEND libplplot${LIB_TAG}_LINK_LIBRARIES qsastime) set( - libplplot${LIB_TAG}_LINK_LIBRARIES - ${libplplot${LIB_TAG}_LINK_LIBRARIES} - qsastime - ) -set( libplplot${LIB_TAG}_LINK_FLAGS "${libplplot${LIB_TAG}_LINK_FLAGS} -lqsastime" ) -if(WITH_FREETYPE) - get_source_file_property(PLFREETYPE_COMPILE_PROPS plfreetype.c COMPILE_FLAGS) - # Deal with NOTFOUND case. - if(NOT PLFREETYPE_COMPILE_PROPS) - set(PLFREETYPE_COMPILE_PROPS) - endif(NOT PLFREETYPE_COMPILE_PROPS) - set_source_files_properties(plfreetype.c PROPERTIES COMPILE_FLAGS "${PLFREETYPE_COMPILE_PROPS} -I${FREETYPE_INCLUDE_DIR}") - set( - libplplot${LIB_TAG}_LINK_LIBRARIES - ${libplplot${LIB_TAG}_LINK_LIBRARIES} - ${FREETYPE_LIBRARIES} - ) - - # Convert to -L... -l... form. - string(REGEX REPLACE "(/[^ ]*)/lib([^ ]*)\\.so" "-L\\1 -l\\2" - _FREETYPE_LINK_FLAGS - ${FREETYPE_LIBRARIES} - ) - string(REGEX REPLACE "(/[^ ]*)/lib([^ ]*)\\.so" "-L\\1 -l\\2" - FREETYPE_LINK_FLAGS - ${_FREETYPE_LINK_FLAGS} - ) - set( - libplplot${LIB_TAG}_LINK_FLAGS - "${libplplot${LIB_TAG}_LINK_FLAGS} ${FREETYPE_LINK_FLAGS}" - ) -endif(WITH_FREETYPE) - -if(HAVE_SHAPELIB) - get_source_file_property(PLMAP_COMPILE_PROPS plmap.c COMPILE_FLAGS) - # Deal with NOTFOUND case. - if(NOT PLMAP_COMPILE_PROPS) - set(PLMAP_COMPILE_PROPS) - endif(NOT PLMAP_COMPILE_PROPS) - set_source_files_properties(plmap.c - PROPERTIES - COMPILE_FLAGS "${PLMAP_COMPILE_PROPS} -I${SHAPELIB_INCLUDE_DIR}" - ) - if(HAVE_SAHOOKS) - set_source_files_properties(plmap.c - PROPERTIES - COMPILE_DEFINITIONS HAVE_SAHOOKS - ) - endif(HAVE_SAHOOKS) - - set( - libplplot${LIB_TAG}_LINK_LIBRARIES - ${libplplot${LIB_TAG}_LINK_LIBRARIES} - ${SHAPELIB_LIBRARIES} - ) - - set(LIB_INSTALL_RPATH ${LIB_INSTALL_RPATH} ${SHAPELIB_RPATH}) - - # Convert to -L... -l... form. - string(REGEX REPLACE "(/[^ ]*)/lib([^ ]*)\\.so" "-L\\1 -l\\2" - _SHAPELIB_LINK_FLAGS - ${SHAPELIB_LIBRARIES} - ) - string(REGEX REPLACE "(/[^ ]*)/lib([^ ]*)\\.so" "-L\\1 -l\\2" - SHAPELIB_LINK_FLAGS - ${_SHAPELIB_LINK_FLAGS} - ) - set( - libplplot${LIB_TAG}_LINK_FLAGS - "${libplplot${LIB_TAG}_LINK_FLAGS} ${SHAPELIB_LINK_FLAGS}" - ) -endif(HAVE_SHAPELIB) - #message(STATUS #"libplplot${LIB_TAG}_LINK_LIBRARIES = ${libplplot${LIB_TAG}_LINK_LIBRARIES}" #) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <arj...@us...> - 2014-02-08 19:00:26
|
Revision: 12983 http://sourceforge.net/p/plplot/code/12983 Author: arjenmarkus Date: 2014-02-08 19:00:24 +0000 (Sat, 08 Feb 2014) Log Message: ----------- Modified Paths: -------------- trunk/bindings/tcl/CMakeLists.txt trunk/bindings/tk/plserver.c trunk/cmake/epa_build/cmake/CMakeLists.txt trunk/cmake/epa_build/swig/CMakeLists.txt Modified: trunk/bindings/tcl/CMakeLists.txt =================================================================== --- trunk/bindings/tcl/CMakeLists.txt 2014-02-07 05:42:56 UTC (rev 12982) +++ trunk/bindings/tcl/CMakeLists.txt 2014-02-08 19:00:24 UTC (rev 12983) @@ -23,11 +23,11 @@ # Check consistency of plplot_parameters.h. add_custom_target( check_tcl_parameters - COMMAND ${CMAKE_COMMAND} -E remove -f + COMMAND ${CMAKE_COMMAND} -E remove -f ${CMAKE_CURRENT_BINARY_DIR}/plplot_parameters.h_compare COMMAND - sed -f ${CMAKE_CURRENT_SOURCE_DIR}/global_defines.sed < - ${CMAKE_SOURCE_DIR}/bindings/swig-support/plplotcapi.i > + sed -f ${CMAKE_CURRENT_SOURCE_DIR}/global_defines.sed < + ${CMAKE_SOURCE_DIR}/bindings/swig-support/plplotcapi.i > ${CMAKE_CURRENT_BINARY_DIR}/plplot_parameters.h_compare COMMAND ${CMAKE_COMMAND} -E echo "Check that plplot_parameters.h is consistent with the #defines in bindings/swig-support/plplotcapi.i" @@ -186,6 +186,7 @@ ${TCL_LIBRARY} ) + message(STATUS "ENABLE_itcl: ${ENABLE_itcl}") if(ENABLE_itcl) include_directories(${ITCL_INCLUDE_PATH}) @@ -208,6 +209,7 @@ ${ITCL_LIBRARY} ) endif(ENABLE_itcl) + message(STATUS "Itcl libraries: ${plplottcltk_Main${LIB_TAG}_link_libraries}") if(ENABLE_tkX) set(plplottcltk${LIB_TAG}_LIB_SRCS @@ -438,10 +440,10 @@ # _target suffix to avoid nameclash with filename plplot.tcl. This # nameclash screwed up ../tk/configuration which had a non-generated file # of the same name which was a dependency of a custom target. - add_custom_target(plplot.tcl_target ALL + add_custom_target(plplot.tcl_target ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/plplot.tcl ) - set_property(GLOBAL PROPERTY + set_property(GLOBAL PROPERTY FILES_plplot.tcl_target ${CMAKE_CURRENT_BINARY_DIR}/plplot.tcl ) @@ -455,7 +457,7 @@ add_custom_target(tclIndex_tcl ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/tclIndex ) - set_property(GLOBAL PROPERTY + set_property(GLOBAL PROPERTY FILES_tclIndex_tcl ${CMAKE_CURRENT_BINARY_DIR}/tclIndex ) @@ -593,7 +595,7 @@ ) endif(USE_RPATH) - install(TARGETS pltcl + install(TARGETS pltcl EXPORT export_plplot DESTINATION ${BIN_DIR} ) Modified: trunk/bindings/tk/plserver.c =================================================================== --- trunk/bindings/tk/plserver.c 2014-02-07 05:42:56 UTC (rev 12982) +++ trunk/bindings/tk/plserver.c 2014-02-08 19:00:24 UTC (rev 12983) @@ -115,25 +115,33 @@ // Save arglist to get around Tk_ParseArgv limitations + fprintf(stderr, "Before myargv\n"); + myargv = (const char **) malloc( argc * sizeof ( char * ) ); for ( i = 0; i < argc; i++ ) { myargv[i] = argv[i]; } + fprintf(stderr, "After myargv\n"); + // Parse args // Examine the result string to see if an error return is really an error if ( Tk_ParseArgv( interp, (Tk_Window) NULL, &argc, argv, argTable, TK_ARGV_NO_DEFAULTS ) != TCL_OK ) { + fprintf(stderr, "Error in Tk_ParseArgv\n"); fprintf( stderr, "\n(plserver) %s\n\n", Tcl_GetStringResult( interp ) ); fprintf( stderr, "\ The client_<xxx> and -child options should not be used except via the\n\ PLplot/Tk driver.\n\n(wish) " ); + fprintf(stderr, "Before Tcl_SetResult\n"); Tcl_SetResult( interp, (char *) helpmsg, TCL_VOLATILE ); } + fprintf(stderr, "After Tk_ParseArgv\n"); + // No longer need interpreter #if TCL_MAJOR_VERSION < 7 || ( TCL_MAJOR_VERSION == 7 && TCL_MINOR_VERSION < 5 ) Modified: trunk/cmake/epa_build/cmake/CMakeLists.txt =================================================================== --- trunk/cmake/epa_build/cmake/CMakeLists.txt 2014-02-07 05:42:56 UTC (rev 12982) +++ trunk/cmake/epa_build/cmake/CMakeLists.txt 2014-02-08 19:00:24 UTC (rev 12983) @@ -1,76 +1,76 @@ -# cmake/CMakeLists.txt - -# Configure the build of cmake. - -# Copyright (C) 2013 Alan W. Irwin - -# This file is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License, or (at your option) any later version. - -# This file is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. - -# You should have received a copy of the GNU Lesser General Public -# License along with this file; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - -# An external curl library (see --system-curl option below) is -# required to build cmake because the cmake internal version of curl -# is quite lame (no openssl capability, for example). Also, we -# haven't yet implemented a curl epa_build configuration because that -# is going to be somewhat difficult due to the large number of -# dependencies. See -# http://www.linuxfromscratch.org/blfs/view/svn/basicnet/curl.html for -# a list of those dependencies. There is some hope because -# some of those are optional so I may tackle the curl epa_build configuration -# sooner rather than later. - -# For now we are okay on Linux because we can just use the system curl -# library for the cmake build, but on Windows it is unlikely curl is -# installed so we will be unable to build a powerful cmake (until a -# curl epa_build configuration is available). Note, if the Windows -# build of cmake fails, then either install curl (if that is possible) -# or use the workaround of downloading a binary download from kitware -# that apparently does use a powerful Windows version of curl. - -set(PACKAGE cmake) - -# List of dependencies (most of which are build tools) which should be -# ignored. -set(ignored_dependencies_LIST curl ${extra_ignored_dependencies_list}) - -set(dependencies_LIST curl) - -# Do boilerplate tasks that must be done for each different project -# that is configured as part of epa_build. -epa_boilerplate( - ignored_dependencies_LIST - PACKAGE - dependencies_LIST - dependencies_targets - EPA_PATH - source_PATH - ) - -set(CFLAGS "$ENV{CFLAGS}") -set(CXXFLAGS "$ENV{CXXFLAGS}") - -# Data that is related to downloads. -set(DIR v2.8) -set(VERSION 2.8.12.1) -set(URL http://www.cmake.org/files/${DIR}/cmake-${VERSION}.tar.gz) -set(DOWNLOAD_HASH_TYPE MD5) -set(DOWNLOAD_HASH 9d38cd4e2c94c3cea97d0e2924814acc) - -ExternalProject_Add( - build_${PACKAGE} - URL ${URL} - URL_HASH ${DOWNLOAD_HASH_TYPE}=${DOWNLOAD_HASH} - CONFIGURE_COMMAND ${ENV_EXECUTABLE} PATH=${EPA_PATH} "CFLAGS=${CFLAGS}" "CXXFLAGS=${CXXFLAGS}" ${SH_EXECUTABLE} ${EPA_BASE}/Source/build_${PACKAGE}/bootstrap --prefix=${EPA_CMAKE_INSTALL_PREFIX} --parallel=8 --verbose --system-curl --no-qt-gui - BUILD_COMMAND ${ENV_EXECUTABLE} PATH=${EPA_PATH} ${EPA_PARALLEL_BUILD_COMMAND} - INSTALL_COMMAND ${ENV_EXECUTABLE} PATH=${EPA_PATH} ${EPA_PARALLEL_BUILD_COMMAND} install - ) +# cmake/CMakeLists.txt + +# Configure the build of cmake. + +# Copyright (C) 2013 Alan W. Irwin + +# This file is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License, or (at your option) any later version. + +# This file is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. + +# You should have received a copy of the GNU Lesser General Public +# License along with this file; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + +# An external curl library (see --system-curl option below) is +# required to build cmake because the cmake internal version of curl +# is quite lame (no openssl capability, for example). Also, we +# haven't yet implemented a curl epa_build configuration because that +# is going to be somewhat difficult due to the large number of +# dependencies. See +# http://www.linuxfromscratch.org/blfs/view/svn/basicnet/curl.html for +# a list of those dependencies. There is some hope because +# some of those are optional so I may tackle the curl epa_build configuration +# sooner rather than later. + +# For now we are okay on Linux because we can just use the system curl +# library for the cmake build, but on Windows it is unlikely curl is +# installed so we will be unable to build a powerful cmake (until a +# curl epa_build configuration is available). Note, if the Windows +# build of cmake fails, then either install curl (if that is possible) +# or use the workaround of downloading a binary download from kitware +# that apparently does use a powerful Windows version of curl. + +set(PACKAGE cmake) + +# List of dependencies (most of which are build tools) which should be +# ignored. +set(ignored_dependencies_LIST curl ${extra_ignored_dependencies_list}) + +set(dependencies_LIST curl) + +# Do boilerplate tasks that must be done for each different project +# that is configured as part of epa_build. +epa_boilerplate( + ignored_dependencies_LIST + PACKAGE + dependencies_LIST + dependencies_targets + EPA_PATH + source_PATH + ) + +set(CFLAGS "$ENV{CFLAGS}") +set(CXXFLAGS "$ENV{CXXFLAGS}") + +# Data that is related to downloads. +set(DIR v2.8) +set(VERSION 2.8.12.2) +set(URL http://www.cmake.org/files/${DIR}/cmake-${VERSION}.tar.gz) +set(DOWNLOAD_HASH_TYPE MD5) +set(DOWNLOAD_HASH 17c6513483d23590cbce6957ec6d1e66) + +ExternalProject_Add( + build_${PACKAGE} + URL ${URL} + URL_HASH ${DOWNLOAD_HASH_TYPE}=${DOWNLOAD_HASH} + CONFIGURE_COMMAND ${ENV_EXECUTABLE} PATH=${EPA_PATH} "CFLAGS=${CFLAGS}" "CXXFLAGS=${CXXFLAGS}" ${SH_EXECUTABLE} ${EPA_BASE}/Source/build_${PACKAGE}/bootstrap --prefix=${EPA_CMAKE_INSTALL_PREFIX} --parallel=8 --verbose --system-curl --no-qt-gui + BUILD_COMMAND ${ENV_EXECUTABLE} PATH=${EPA_PATH} ${EPA_PARALLEL_BUILD_COMMAND} + INSTALL_COMMAND ${ENV_EXECUTABLE} PATH=${EPA_PATH} ${EPA_PARALLEL_BUILD_COMMAND} install + ) Modified: trunk/cmake/epa_build/swig/CMakeLists.txt =================================================================== --- trunk/cmake/epa_build/swig/CMakeLists.txt 2014-02-07 05:42:56 UTC (rev 12982) +++ trunk/cmake/epa_build/swig/CMakeLists.txt 2014-02-08 19:00:24 UTC (rev 12983) @@ -1,85 +1,86 @@ -# swig/CMakeLists.txt - -# Configure the build of swig. - -# N.B. this file is generated so if you edit it you will lose all your -# changes the next time it is generated (typically by running -# either/both the update_added_packages.sh or update_pango_packages.sh -# scripts). If those scripts do not provide good results, then -# consider changing their source files (e.g., by editing the files -# used in those scripts) or add a patch to be run by those scripts. - -# Copyright (C) 2013 Alan W. Irwin - -# This file is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License, or (at your option) any later version. - -# This file is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. - -# You should have received a copy of the GNU Lesser General Public -# License along with this file; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - -set(PACKAGE swig) - -# List of dependencies (most of which are build tools) which should be -# ignored. -set(ignored_dependencies_LIST pkg-config;bison;flex;python2-devel;libXft ${extra_ignored_dependencies_list}) - -set(dependencies_LIST libpcre) - -# Do boilerplate tasks that must be done for each different project -# that is configured as part of epa_build. -epa_boilerplate( - ignored_dependencies_LIST - PACKAGE - dependencies_LIST - dependencies_targets - EPA_PATH - source_PATH - ) - -if(MSYS_PLATFORM) - set(CFLAGS "$ENV{CFLAGS}") -else(MSYS_PLATFORM) - set(CFLAGS "$ENV{CFLAGS}") -endif(MSYS_PLATFORM) - -set(CXXFLAGS "$ENV{CXXFLAGS}") - -# Drop -fvisibility=hidden since that option does not work for a -# number of software packages that are configured automatically using -# this template. -string(REGEX REPLACE "-fvisibility=hidden" "" CFLAGS "${CFLAGS}") -string(REGEX REPLACE "-fvisibility=hidden" "" CXXFLAGS "${CXXFLAGS}") - -# Data that is related to downloads. -set(URL http://downloads.sourceforge.net/swig/swig/swig-2.0.11/swig-2.0.11.tar.gz) -set(DOWNLOAD_HASH_TYPE SHA256) -set(DOWNLOAD_HASH 63780bf29f53937ad399a1f68bccb3730c90f65746868c4cdfc25cafcd0a424e) - -ExternalProject_Add( - build_${PACKAGE} - DEPENDS ${dependencies_targets} - URL ${URL} - URL_HASH ${DOWNLOAD_HASH_TYPE}=${DOWNLOAD_HASH} - PATCH_COMMAND "" - CONFIGURE_COMMAND ${ENV_EXECUTABLE} PATH=${EPA_PATH} "CFLAGS=${CFLAGS}" "CXXFLAGS=${CXXFLAGS}" "LDFLAGS=-Wl,-rpath -Wl,${EPA_CMAKE_INSTALL_PREFIX}/lib" ${source_PATH}/${EPA_CONFIGURE_COMMAND} --with-pcre-prefix=${EPA_CMAKE_INSTALL_PREFIX} - BUILD_COMMAND ${ENV_EXECUTABLE} PATH=${EPA_PATH} ${EPA_PARALLEL_MAKE_COMMAND} - BUILD_IN_SOURCE OFF - INSTALL_COMMAND ${ENV_EXECUTABLE} PATH=${EPA_PATH} ${EPA_PARALLEL_MAKE_COMMAND} install - ) - -add_custom_command( - OUTPUT - ${EPA_BASE}/Stamp/build_${PACKAGE}/build_${PACKAGE}-patch - COMMAND ${CMAKE_COMMAND} -E echo - "Provide swig support for octave-3.8.0" - COMMAND ${PATCH_EXECUTABLE} --directory=${EPA_BASE}/Source/build_${PACKAGE} -p1 < ${CMAKE_CURRENT_SOURCE_DIR}/octave-3.8.0.patch - APPEND - ) +# swig/CMakeLists.txt + +# Configure the build of swig. + +# N.B. this file is generated so if you edit it you will lose all your +# changes the next time it is generated (typically by running +# either/both the update_added_packages.sh or update_pango_packages.sh +# scripts). If those scripts do not provide good results, then +# consider changing their source files (e.g., by editing the files +# used in those scripts) or add a patch to be run by those scripts. + +# Copyright (C) 2013 Alan W. Irwin + +# This file is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License, or (at your option) any later version. + +# This file is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. + +# You should have received a copy of the GNU Lesser General Public +# License along with this file; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + +set(PACKAGE swig) + +# List of dependencies (most of which are build tools) which should be +# ignored. +set(ignored_dependencies_LIST pkg-config;bison;flex;python2-devel;libXft ${extra_ignored_dependencies_list}) + +set(dependencies_LIST libpcre) + +# Do boilerplate tasks that must be done for each different project +# that is configured as part of epa_build. +epa_boilerplate( + ignored_dependencies_LIST + PACKAGE + dependencies_LIST + dependencies_targets + EPA_PATH + source_PATH + ) + +if(MSYS_PLATFORM) + # Add two MSYS specific flags to avoid compile errors + set(CFLAGS "-D__NO_MINGW_LFS -U__STRICT_ANSI__ $ENV{CFLAGS}") +else(MSYS_PLATFORM) + set(CFLAGS "$ENV{CFLAGS}") +endif(MSYS_PLATFORM) + +set(CXXFLAGS "$ENV{CXXFLAGS}") + +# Drop -fvisibility=hidden since that option does not work for a +# number of software packages that are configured automatically using +# this template. +string(REGEX REPLACE "-fvisibility=hidden" "" CFLAGS "${CFLAGS}") +string(REGEX REPLACE "-fvisibility=hidden" "" CXXFLAGS "${CXXFLAGS}") + +# Data that is related to downloads. +set(URL http://downloads.sourceforge.net/swig/swig/swig-2.0.11/swig-2.0.11.tar.gz) +set(DOWNLOAD_HASH_TYPE SHA256) +set(DOWNLOAD_HASH 63780bf29f53937ad399a1f68bccb3730c90f65746868c4cdfc25cafcd0a424e) + +ExternalProject_Add( + build_${PACKAGE} + DEPENDS ${dependencies_targets} + URL ${URL} + URL_HASH ${DOWNLOAD_HASH_TYPE}=${DOWNLOAD_HASH} + PATCH_COMMAND "" + CONFIGURE_COMMAND ${ENV_EXECUTABLE} PATH=${EPA_PATH} "CFLAGS=${CFLAGS}" "CXXFLAGS=${CXXFLAGS}" "LDFLAGS=-Wl,-rpath -Wl,${EPA_CMAKE_INSTALL_PREFIX}/lib" ${source_PATH}/${EPA_CONFIGURE_COMMAND} --with-pcre-prefix=${EPA_CMAKE_INSTALL_PREFIX} + BUILD_COMMAND ${ENV_EXECUTABLE} PATH=${EPA_PATH} ${EPA_PARALLEL_MAKE_COMMAND} + BUILD_IN_SOURCE OFF + INSTALL_COMMAND ${ENV_EXECUTABLE} PATH=${EPA_PATH} ${EPA_PARALLEL_MAKE_COMMAND} install + ) + +add_custom_command( + OUTPUT + ${EPA_BASE}/Stamp/build_${PACKAGE}/build_${PACKAGE}-patch + COMMAND ${CMAKE_COMMAND} -E echo + "Provide swig support for octave-3.8.0" + COMMAND ${PATCH_EXECUTABLE} --directory=${EPA_BASE}/Source/build_${PACKAGE} -p1 < ${CMAKE_CURRENT_SOURCE_DIR}/octave-3.8.0.patch + APPEND + ) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ai...@us...> - 2014-02-12 16:29:09
|
Revision: 12999 http://sourceforge.net/p/plplot/code/12999 Author: airwin Date: 2014-02-12 16:29:06 +0000 (Wed, 12 Feb 2014) Log Message: ----------- Update release date and version information for the 5.9.10 release that is about to happen. Modified Paths: -------------- trunk/cmake/modules/plplot_version.cmake trunk/www/examples.php Modified: trunk/cmake/modules/plplot_version.cmake =================================================================== --- trunk/cmake/modules/plplot_version.cmake 2014-02-12 16:03:35 UTC (rev 12998) +++ trunk/cmake/modules/plplot_version.cmake 2014-02-12 16:29:06 UTC (rev 12999) @@ -1,16 +1,16 @@ # For now, must set this by hand before each release. This value affects # at least the documentation build and perhaps other parts of the release. -set(RELEASE_DATE "2013-12-22") +set(RELEASE_DATE "2014-02-12") # Version data that need review and possible modification for each release. # Overall PLplot version number. -set(PLPLOT_VERSION 5.9.11) +set(PLPLOT_VERSION 5.10.0) # CPack version numbers for release tarball name. set(CPACK_PACKAGE_VERSION_MAJOR 5) -set(CPACK_PACKAGE_VERSION_MINOR 9) -set(CPACK_PACKAGE_VERSION_PATCH 11) +set(CPACK_PACKAGE_VERSION_MINOR 10) +set(CPACK_PACKAGE_VERSION_PATCH 0) # PLplot library version information. @@ -44,7 +44,7 @@ set(qsastime_VERSION ${qsastime_SOVERSION}.0.1) set(plplot_SOVERSION 12) -set(plplot_VERSION ${plplot_SOVERSION}.0.0) +set(plplot_VERSION ${plplot_SOVERSION}.0.1) set(plplotcxx_SOVERSION 11) set(plplotcxx_VERSION ${plplotcxx_SOVERSION}.0.0) @@ -62,7 +62,7 @@ set(tclmatrix_VERSION ${tclmatrix_SOVERSION}.2.0) set(plplottcltk_SOVERSION 11) -set(plplottcltk_VERSION ${plplottcltk_SOVERSION}.0.0) +set(plplottcltk_VERSION ${plplottcltk_SOVERSION}.1.0) set(plplottcltk_Main_SOVERSION 0) set(plplottcltk_Main_VERSION ${plplottcltk_Main_SOVERSION}.0.0) Modified: trunk/www/examples.php =================================================================== --- trunk/www/examples.php 2014-02-12 16:03:35 UTC (rev 12998) +++ trunk/www/examples.php 2014-02-12 16:29:06 UTC (rev 12999) @@ -230,7 +230,7 @@ echo <<<END <h3>Examples</h3> <p>These examples were generated with the pngcairo device and - reflect the status of PLplot-5.9.11.</p> + reflect the status of PLplot-5.10.0.</p> <p>Select a thumbnail to view full-size image and source code.</p> <p> END; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ai...@us...> - 2014-02-12 22:01:31
|
Revision: 13005 http://sourceforge.net/p/plplot/code/13005 Author: airwin Date: 2014-02-12 22:01:26 +0000 (Wed, 12 Feb 2014) Log Message: ----------- Use ".txt" suffix rather than "-" since that appears to give a better result with konqueror (which e.g., attempts to recognize x00c.c- as C code which should be downloaded rather than simply viewed). Modified Paths: -------------- trunk/scripts/htdocs-gen_plot-examples.sh trunk/www/examples.php Modified: trunk/scripts/htdocs-gen_plot-examples.sh =================================================================== --- trunk/scripts/htdocs-gen_plot-examples.sh 2014-02-12 19:44:35 UTC (rev 13004) +++ trunk/scripts/htdocs-gen_plot-examples.sh 2014-02-12 22:01:26 UTC (rev 13005) @@ -164,7 +164,7 @@ *.py \ *.tcl \ ; do - mv $j $j- + mv $j $j.txt done ) Modified: trunk/www/examples.php =================================================================== --- trunk/www/examples.php 2014-02-12 19:44:35 UTC (rev 13004) +++ trunk/www/examples.php 2014-02-12 22:01:26 UTC (rev 13005) @@ -180,17 +180,17 @@ END; switch($lbind) { - case ("Ada(thick)"): $fname = "xthick" . $demo_str . "a.adb-"; break; - case ("Ada(thin)"): $fname = "x" . $demo_str . "a.adb-"; break; - case ("C"): $fname = "x" . $demo_str . "c.c-"; break; - case ("C++"):$fname = "x" . $demo_str . ".cc-"; break; - case ("F95"): $fname = "x" . $demo_str . "f.f90-"; break; - case ("Java"): $fname = "x" . $demo_str . ".java-"; break; - case ("Ocaml"): $fname = "x" . $demo_str . ".ml-"; break; - case ("Octave"): $fname = "x" . $demo_str . "c.m-"; break; - case ("Python"): $fname = "xw" . $demo_str . ".py-"; break; - case ("Tcl"): $fname = "x" . $demo_str . ".tcl-"; break; - default: $fname = "x" . $demo_str . "c.c-"; + case ("Ada(thick)"): $fname = "xthick" . $demo_str . "a.adb.txt-"; break; + case ("Ada(thin)"): $fname = "x" . $demo_str . "a.adb.txt"; break; + case ("C"): $fname = "x" . $demo_str . "c.c.txt"; break; + case ("C++"):$fname = "x" . $demo_str . ".cc.txt"; break; + case ("F95"): $fname = "x" . $demo_str . "f.f90.txt"; break; + case ("Java"): $fname = "x" . $demo_str . ".java.txt"; break; + case ("Ocaml"): $fname = "x" . $demo_str . ".ml.txt"; break; + case ("Octave"): $fname = "x" . $demo_str . "c.m.txt"; break; + case ("Python"): $fname = "xw" . $demo_str . ".py.txt"; break; + case ("Tcl"): $fname = "x" . $demo_str . ".tcl.txt"; break; + default: $fname = "x" . $demo_str . "c.c.txt"; } // view code This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ai...@us...> - 2014-02-20 20:49:28
|
Revision: 13015 http://sourceforge.net/p/plplot/code/13015 Author: airwin Date: 2014-02-20 20:49:23 +0000 (Thu, 20 Feb 2014) Log Message: ----------- Additional simplification of the build system for the Octave binding of PLplot. I discovered that bindings/octave/plplot_octave_rej.h and bindings/octave/plplot_octave.h.in were not actually used any more by our modern swig-based build system for the octave binding of PLplot, so I removed those files and all references to them throughout our build system. Tested on Linux by running the test_octave_psc target. Modified Paths: -------------- trunk/bindings/octave/CMakeLists.txt trunk/cmake/modules/octave.cmake trunk/scripts/check_api_completeness.sh trunk/scripts/style_source.sh Removed Paths: ------------- trunk/bindings/octave/plplot_octave.h.in trunk/bindings/octave/plplot_octave_rej.h Modified: trunk/bindings/octave/CMakeLists.txt =================================================================== --- trunk/bindings/octave/CMakeLists.txt 2014-02-18 21:07:37 UTC (rev 13014) +++ trunk/bindings/octave/CMakeLists.txt 2014-02-20 20:49:23 UTC (rev 13015) @@ -103,13 +103,7 @@ DEPENDS ${make_documentation_DEPENDS} ) - # Configure source code for octave interface to PLplot. configure_file( - ${CMAKE_CURRENT_SOURCE_DIR}/plplot_octave.h.in - ${CMAKE_CURRENT_BINARY_DIR}/plplot_octave.h - @ONLY - ) - configure_file( ${CMAKE_CURRENT_SOURCE_DIR}/octave_version.pl.in ${CMAKE_CURRENT_BINARY_DIR}/octave_version.pl @ONLY Deleted: trunk/bindings/octave/plplot_octave.h.in =================================================================== --- trunk/bindings/octave/plplot_octave.h.in 2014-02-18 21:07:37 UTC (rev 13014) +++ trunk/bindings/octave/plplot_octave.h.in 2014-02-20 20:49:23 UTC (rev 13015) @@ -1,1857 +0,0 @@ -// $Id$ -// jc: this is a massaged plplot.h -// -// Copyright (C) 2004 Joao Cardoso -// -// This file is part of PLplot_Octave. -// -// PLplot_Octave is free software; you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published -// by the Free Software Foundation; either version 2 of the License, or -// (at your option) any later version. -// -// PLplot_Octave is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with PLplot_Octave; if not, write to the Free Software -// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA -// - -// -// Copyright (C) 1992 by -// Maurice J. LeBrun, Geoff Furnish, Tony Richardson. -// -// Macros and prototypes for the PLplot package. This header file must -// be included by all user codes. -// -// This software may be freely copied, modified and redistributed -// without fee provided that this copyright notice is preserved intact -// on all copies and modified copies. -// -// There is no warranty or other guarantee of fitness of this software. -// It is provided solely "as is". The author(s) disclaim(s) all -// responsibility and liability with respect to this software's usage -// or its effect upon hardware or computer systems. -// -// Note: some systems allow the Fortran & C namespaces to clobber each -// other. So for PLplot to work from Fortran, we do some rather nasty -// things to the externally callable C function names. This shouldn't -// affect any user programs in C as long as this file is included. -// - -#ifndef __PLPLOT_H__ -#define __PLPLOT_H__ - -//-------------------------------------------------------------------------- -// USING PLplot -// -// To use PLplot from C or C++, it is only necessary to -// -// #include "plplot.h" -// -// This file does all the necessary setup to make PLplot accessible to -// your program as documented in the manual. Additionally, this file -// allows you to request certain behavior by defining certain symbols -// before inclusion. At the moment the only one is: -// -// #define DOUBLE or.. -// #define PL_DOUBLE -// -// This causes PLplot to use doubles instead of floats. Use the type -// PLFLT everywhere in your code, and it will always be the right thing. -// -// Note: most of the functions visible here begin with "pl", while all -// of the data types and switches begin with "PL". Eventually everything -// will conform to this rule in order to keep namespace pollution of the -// user code to a minimum. All the PLplot source files actually include -// "plplotP.h", which includes this file as well as all the internally- -// visible declarations, etc. -//-------------------------------------------------------------------------- - -// The majority of PLplot source files require these, so.. -// Under ANSI C, they can be included any number of times. - -#include <stdio.h> -#include <stdlib.h> - -//-------------------------------------------------------------------------- -// SYSTEM IDENTIFICATION -// -// Several systems are supported directly by PLplot. In order to avoid -// confusion, one id macro per system is used. Since different compilers -// may predefine different system id macros, we need to check all the -// possibilities, and then set the one we will be referencing. These are: -// -// __cplusplus Any C++ compiler -// __unix Any Unix-like system -// __hpux Any HP/UX system -// __aix Any AIX system -// __linux Linux for i386 -// (others...) -// -//-------------------------------------------------------------------------- - -#ifdef unix // the old way -#ifndef __unix -#define __unix -#endif -#endif - -// Make sure Unix systems define "__unix" - -#if defined ( SX ) || /* NEC Super-UX */ \ - ( defined ( _IBMR2 ) && defined ( _AIX ) ) || /* AIX */ \ - defined ( __hpux ) || /* HP/UX */ \ - defined ( sun ) || /* SUN */ \ - defined ( CRAY ) || /* Cray */ \ - defined ( __convexc__ ) || /* CONVEX */ \ - ( defined ( __alpha ) && defined ( __osf__ ) ) // DEC Alpha AXP/OSF - -#ifndef __unix -#define __unix -#endif -#endif - -// A wrapper used in some header files so they can be compiled with cc - -#define PLARGS( a ) a - -//-------------------------------------------------------------------------- -// Base types for PLplot -// -// Only those that are necessary for function prototypes are defined here. -// Notes: -// -// PLINT is typedef'd to an int by default. This is a change from some -// previous versions, where a long was used. Under MSDOS, a PLINT is -// typedef'd to a long, since 16 bits is too inaccurate for some PLplot -// functions. So under MSDOS you must use type PLINT for integer array -// arguments to PLplot functions, but on other systems you can just use -// an int. -// -// short is currently used for device page coordinates, so they are -// bounded by (-32767, 32767). This gives a max resolution of about 3000 -// dpi, and improves performance in some areas over using a PLINT. -//-------------------------------------------------------------------------- - -@DEFINE_PL_DOUBLE@ - -#if defined ( PL_DOUBLE ) || defined ( DOUBLE ) -typedef double PLFLT; -#else -typedef float PLFLT; -#endif - -#if defined ( MSDOS ) -typedef long PLINT; -typedef unsigned long PLUNICODE; -#else -typedef int PLINT; -typedef unsigned PLUNICODE; -#endif - -// For identifying logical (boolean) arguments -typedef PLINT PLBOOL; - -// For passing user data, as with X's XtPointer - -typedef void* PLPointer; - -//-------------------------------------------------------------------------- -// Complex data types and other good stuff -//-------------------------------------------------------------------------- - -// Switches for escape function call. -// Some of these are obsolete but are retained in order to process -// old metafiles - -#define PLESC_SET_RGB 1 // obsolete -#define PLESC_ALLOC_NCOL 2 // obsolete -#define PLESC_SET_LPB 3 // obsolete -#define PLESC_EXPOSE 4 // handle window expose -#define PLESC_RESIZE 5 // handle window resize -#define PLESC_REDRAW 6 // handle window redraw -#define PLESC_TEXT 7 // switch to text screen -#define PLESC_GRAPH 8 // switch to graphics screen -#define PLESC_FILL 9 // fill polygon -#define PLESC_DI 10 // handle DI command -#define PLESC_FLUSH 11 // flush output -#define PLESC_EH 12 // handle Window events -#define PLESC_GETC 13 // get cursor position -#define PLESC_SWIN 14 // set window parameters -#define PLESC_DOUBLEBUFFERING 15 // configure double buffering -#define PLESC_XORMOD 16 // jc: set xor mode -#define PLESC_SET_COMPRESSION 17 // AFR: set compression -#define PLESC_CLEAR 18 // RL: clear graphics region -#define PLESC_DASH 19 // RL: draw dashed line - -// Window parameter tags - -#define PLSWIN_DEVICE 1 // device coordinates -#define PLSWIN_WORLD 2 // world coordinates - -// PLplot Option table & support constants - -// Option-specific settings - -#define PL_OPT_ENABLED 0x0001 // Obsolete -#define PL_OPT_ARG 0x0002 // Option has an argment -#define PL_OPT_NODELETE 0x0004 // Don't delete after processing -#define PL_OPT_INVISIBLE 0x0008 // Make invisible -#define PL_OPT_DISABLED 0x0010 // Processing is disabled - -// Option-processing settings -- mutually exclusive - -#define PL_OPT_FUNC 0x0100 // Call handler function -#define PL_OPT_BOOL 0x0200 // Set *var = 1 -#define PL_OPT_INT 0x0400 // Set *var = atoi(optarg) -#define PL_OPT_FLOAT 0x0800 // Set *var = atof(optarg) -#define PL_OPT_STRING 0x1000 // Set var = optarg - -// Global mode settings -// These override per-option settings - -#define PL_PARSE_PARTIAL 0x0000 // For backward compatibility -#define PL_PARSE_FULL 0x0001 // Process fully & exit if error -#define PL_PARSE_QUIET 0x0002 // Don't issue messages -#define PL_PARSE_NODELETE 0x0004 // Don't delete options after - // processing -#define PL_PARSE_SHOWALL 0x0008 // Show invisible options -#define PL_PARSE_OVERRIDE 0x0010 // Obsolete -#define PL_PARSE_NOPROGRAM 0x0020 // Program name NOT in *argv[0].. -#define PL_PARSE_NODASH 0x0040 // Set if leading dash NOT required -#define PL_PARSE_SKIP 0x0080 // Skip over unrecognized args - -// Obsolete names - -#define plParseInternalOpts( a, b, c ) plparseopts( a, b, c ) -#define plSetInternalOpt( a, b ) plSetOpt( a, b ) - -// Option table definition - -typedef struct -{ - char *opt; - int ( *handler )( char *, char *, void * ); - void *client_data; - void *var; - long mode; - char *syntax; - char *desc; -} PLOptionTable; - -// PLplot Graphics Input structure - -#define PL_MAXKEY 16 - -typedef struct -{ - int type; // of event (CURRENTLY UNUSED) - unsigned int state; // key or button mask - unsigned int keysym; // key selected - unsigned int button; // mouse button selected - PLINT subwindow; // subwindow (alias subpage, alias subplot) number - char string[PL_MAXKEY]; // translated string - int pX, pY; // absolute device coordinates of pointer - PLFLT dX, dY; // relative device coordinates of pointer - PLFLT wX, wY; // world coordinates of pointer -} PLGraphicsIn; - -// Structure for describing the plot window - -#define PL_MAXWINDOWS 64 // Max number of windows/page tracked - -typedef struct -{ - PLFLT dxmi, dxma, dymi, dyma; // min, max window rel dev coords - PLFLT wxmi, wxma, wymi, wyma; // min, max window world coords -} PLWindow; - -// Structure for doing display-oriented operations via escape commands -// May add other attributes in time - -typedef struct -{ - unsigned int x, y; // upper left hand corner - unsigned int width, height; // window dimensions -} PLDisplay; - -// Macro used (in some cases) to ignore value of argument -// I don't plan on changing the value so you can hard-code it - -#define PL_NOTSET ( -42 ) - -// See plcont.c for examples of the following - -// -// PLfGrid is for passing (as a pointer to the first element) an arbitrarily -// dimensioned array. The grid dimensions MUST be stored, with a maximum of 3 -// dimensions assumed for now. -// - -typedef struct -{ - PLFLT *f; - PLINT nx, ny, nz; -} PLfGrid; - -// -// PLfGrid2 is for passing (as an array of pointers) a 2d function array. The -// grid dimensions are passed for possible bounds checking. -// - -typedef struct -{ - PLFLT **f; - PLINT nx, ny; -} PLfGrid2; - -// -// NOTE: a PLfGrid3 is a good idea here but there is no way to exploit it yet -// so I'll leave it out for now. -// - -// -// PLcGrid is for passing (as a pointer to the first element) arbitrarily -// dimensioned coordinate transformation arrays. The grid dimensions MUST be -// stored, with a maximum of 3 dimensions assumed for now. -// - -typedef struct -{ - PLFLT *xg, *yg, *zg; - PLINT nx, ny, nz; -} PLcGrid; - -// -// PLcGrid2 is for passing (as arrays of pointers) 2d coordinate -// transformation arrays. The grid dimensions are passed for possible bounds -// checking. -// - -typedef struct -{ - PLFLT **xg, **yg, **zg; - PLINT nx, ny; -} PLcGrid2; - -// -// NOTE: a PLcGrid3 is a good idea here but there is no way to exploit it yet -// so I'll leave it out for now. -// - -// PLColor is the usual way to pass an rgb color value. - -typedef struct -{ - unsigned char r; // red - unsigned char g; // green - unsigned char b; // blue - char *name; -} PLColor; - -// PLControlPt is how cmap1 control points are represented. - -typedef struct -{ - PLFLT h; // hue - PLFLT l; // lightness - PLFLT s; // saturation - PLFLT p; // position - int alt_hue_path; // if set, interpolate through h=0 -} PLControlPt; - -// A PLBufferingCB is a control block for interacting with devices -// that support double buffering. - -typedef struct -{ - PLINT cmd; - PLINT result; -} PLBufferingCB; - -#define PLESC_DOUBLEBUFFERING_ENABLE 1 -#define PLESC_DOUBLEBUFFERING_DISABLE 2 -#define PLESC_DOUBLEBUFFERING_QUERY 3 - - -//-------------------------------------------------------------------------- -// BRAINDEAD-ness -// -// Some systems allow the Fortran & C namespaces to clobber each other. -// For PLplot to work from Fortran on these systems, we must name the the -// externally callable C functions something other than their Fortran entry -// names. In order to make this as easy as possible for the casual user, -// yet reversible to those who abhor my solution, I have done the -// following: -// -// The C-language bindings are actually different from those -// described in the manual. Macros are used to convert the -// documented names to the names used in this package. The -// user MUST include plplot.h in order to get the name -// redefinition correct. -// -// Sorry to have to resort to such an ugly kludge, but it is really the -// best way to handle the situation at present. If all available -// compilers offer a way to correct this stupidity, then perhaps we can -// eventually reverse it. -// -// If you feel like screaming at someone (I sure do), please -// direct it at your nearest system vendor who has a braindead shared -// C/Fortran namespace. Some vendors do offer compiler switches that -// change the object names, but then everybody who wants to use the -// package must throw these same switches, leading to no end of trouble. -// -// Note that this definition should not cause any noticable effects except -// when debugging PLplot calls, in which case you will need to remember -// the real function names (same as before but with a 'c_' prepended). -// -// Also, to avoid macro conflicts, the BRAINDEAD part must not be expanded -// in the stub routines. -// -// Aside: the reason why a shared Fortran/C namespace is deserving of the -// BRAINDEAD characterization is that it completely precludes the the kind -// of universal API that is attempted (more or less) with PLplot, without -// Herculean efforts (e.g. remapping all of the C bindings by macros as -// done here). The vendors of such a scheme, in order to allow a SINGLE -// type of argument to be passed transparently between C and Fortran, -// namely, a pointer to a conformable data type, have slammed the door on -// insertion of stub routines to handle the conversions needed for other -// data types. Intelligent linkers could solve this problem, but these are -// not anywhere close to becoming universal. So meanwhile, one must live -// with either stub routines for the inevitable data conversions, or a -// different API. The former is what is used here, but is made far more -// difficult in a braindead shared Fortran/C namespace. -//-------------------------------------------------------------------------- - -#ifndef BRAINDEAD -#define BRAINDEAD -#endif - -#ifdef BRAINDEAD - -#ifndef __PLSTUBS_H__ // i.e. do not expand this in the stubs - -#define pl_setcontlabelformat c_pl_setcontlabelformat -#define pl_setcontlabelparam c_pl_setcontlabelparam -#define pladv c_pladv -#define plarc c_plarc -#define plaxes c_plaxes -#define plbin c_plbin -#define plbop c_plbop -#define plbox c_plbox -#define plbox3 c_plbox3 -#define plbtime c_plbtime -#define plcalc_world c_plcalc_world -#define plclear c_plclear -#define plcol0 c_plcol0 -#define plcol1 c_plcol1 -#define plconfigtime c_plconfigtime -#define plcont c_plcont -#define plcpstrm c_plcpstrm -#define plctime c_plctime -#define plend c_plend -#define plend1 c_plend1 -#define plenv c_plenv -#define plenv0 c_plenv0 -#define pleop c_pleop -#define plerrx c_plerrx -#define plerry c_plerry -#define plfamadv c_plfamadv -#define plfill c_plfill -#define plfill3 c_plfill3 -#define plflush c_plflush -#define plfont c_plfont -#define plfontld c_plfontld -#define plgchr c_plgchr -#define plgcol0 c_plgcol0 -#define plgcol0a c_plgcol0a -#define plgcolbg c_plgcolbg -#define plgcolbga c_plgcolbga -#define plgcompression c_plgcompression -#define plgdev c_plgdev -#define plgdidev c_plgdidev -#define plgdiori c_plgdiori -#define plgdiplt c_plgdiplt -#define plgfam c_plgfam -#define plgfci c_plgfci -#define plgfnam c_plgfnam -#define plgfont c_plgfont -#define plglevel c_plglevel -#define plgpage c_plgpage -#define plgra c_plgra -#define plgradient c_plgradient -#define plgriddata c_plgriddata -#define plgspa c_plgspa -#define plgstrm c_plgstrm -#define plgver c_plgver -#define plgvpd c_plgvpd -#define plgvpw c_plgvpw -#define plgxax c_plgxax -#define plgyax c_plgyax -#define plgzax c_plgzax -#define plhist c_plhist -#define plhls c_plhls -#define plhlsrgb c_plhlsrgb -#define plimage c_plimage -#define plimagefr c_plimagefr -#define plinit c_plinit -#define pljoin c_pljoin -#define pllab c_pllab -#define pllightsource c_pllightsource -#define plline c_plline -#define plline3 c_plline3 -#define pllsty c_pllsty -#define plmesh c_plmesh -#define plmeshc c_plmeshc -#define plmkstrm c_plmkstrm -#define plmtex c_plmtex -#define plmtex3 c_plmtex3 -#define plot3d c_plot3d -#define plot3dc c_plot3dc -#define plparseopts c_plparseopts -#define plpat c_plpat -#define plpoin c_plpoin -#define plpoin3 c_plpoin3 -#define plpoly3 c_plpoly3 -#define plprec c_plprec -#define plpsty c_plpsty -#define plptex c_plptex -#define plptex3 c_plptex3 -#define plrandd c_plrandd -#define plreplot c_plreplot -#define plrgb c_plrgb -#define plrgb1 c_plrgb1 -#define plrgbhls c_plrgbhls -#define plschr c_plschr -#define plscmap0 c_plscmap0 -#define plscmap0a c_plscmap0a -#define plscmap0n c_plscmap0n -#define plscmap1 c_plscmap1 -#define plscmap1a c_plscmap1a -#define plscmap1l c_plscmap1l -#define plscmap1la c_plscmap1la -#define plscmap1n c_plscmap1n -#define plscol0 c_plscol0 -#define plscol0a c_plscol0a -#define plscolbg c_plscolbg -#define plscolbga c_plscolbga -#define plscolor c_plscolor -#define plscompression c_plscompression -#define plsdev c_plsdev -#define plsdidev c_plsdidev -#define plsdimap c_plsdimap -#define plsdiori c_plsdiori -#define plsdiplt c_plsdiplt -#define plsdiplz c_plsdiplz -#define plseed c_plseed -#define plsesc c_plsesc -#define plsfam c_plsfam -#define plsfci c_plsfci -#define plsfnam c_plsfnam -#define plsfont c_plsfont -#define plshades c_plshades -#define plshade c_plshade -#define plshade1 c_plshade1 -#define plslabelfunc c_plslabelfunc -#define plsmaj c_plsmaj -#define plsmin c_plsmin -#define plsori c_plsori -#define plspage c_plspage -#define plspal0 c_plspal0 -#define plspal1 c_plspal1 -#define plspause c_plspause -#define plsstrm c_plsstrm -#define plssub c_plssub -#define plssym c_plssym -#define plstar c_plstar -#define plstart c_plstart -#define plstripa c_plstripa -#define plstripc c_plstripc -#define plstripd c_plstripd -#define plstyl c_plstyl -#define plsurf3d c_plsurf3d -#define plsvect c_plsvect -#define plsvpa c_plsvpa -#define plsxax c_plsxax -#define plsyax c_plsyax -#define plsym c_plsym -#define plszax c_plszax -#define pltext c_pltext -#define pltimefmt c_pltimefmt -#define plvasp c_plvasp -#define plvect c_plvect -#define plvpas c_plvpas -#define plvpor c_plvpor -#define plvsta c_plvsta -#define plw3d c_plw3d -#define plwidth c_plwidth -#define plwind c_plwind -#define plxormod c_plxormod - -#endif // __PLSTUBS_H__ - -#endif // BRAINDEAD - -// Redefine some old function names for backward compatibility - -#ifndef __PLSTUBS_H__ // i.e. do not expand this in the stubs - -#define plclr pleop -#define plpage plbop -#define plcol plcol0 -#define plcontf plfcont -#define Alloc2dGrid plAlloc2dGrid -#define Free2dGrid plFree2dGrid - -#endif // __PLSTUBS_H__ - -//-------------------------------------------------------------------------- -// Function Prototypes -//-------------------------------------------------------------------------- - -#ifdef __cplusplus -extern "C" { -#endif - -#include "plplot_octave_rej.h" - -// All void types - -// C routines callable from stub routines come first - -// Advance to subpage "page", or to the next one if "page" = 0. - -void c_pladv( PLINT page ); //%name pladv - -// Plot an arc - -void c_plarc( PLFLT x, PLFLT y, PLFLT a, PLFLT b, PLFLT angle1, PLFLT angle2, - PLFLT rotate, PLBOOL fill ); //%name plarc - -// This functions similarly to plbox() except that the origin of the axes -// is placed at the user-specified point (x0, y0). - -void c_plaxes( PLFLT x0, PLFLT y0, const char *xopt, PLFLT xtick, PLINT nxsub, - const char *yopt, PLFLT ytick, PLINT nysub ); //%name plaxes - -// Plot a histogram using x to store data values and y to store frequencies - -void c_plbin( PLINT nbin, PLFLT *x, PLFLT *y, PLINT center ); //%name plbin //%input x(nbin), y(nbin) - -// Start new page. Should only be used with pleop(). - -void c_plbop( void ); //%name plbop - -// This draws a box around the current viewport. - -void c_plbox( const char *xopt, PLFLT xtick, PLINT nxsub, - const char *yopt, PLFLT ytick, PLINT nysub ); //%name plbox - -// This is the 3-d analogue of plbox(). - -void c_plbox3( const char *xopt, const char *xlabel, PLFLT xtick, PLINT nsubx, - const char *yopt, const char *ylabel, PLFLT ytick, PLINT nsuby, - const char *zopt, const char *zlabel, PLFLT ztick, PLINT nsubz ); //%name plbox3 - -// Calculate broken-down time from continuous time for current stream. -void c_plbtime( PLINT *year, PLINT *month, PLINT *day, PLINT *hour, PLINT *min, PLFLT *sec, PLFLT ctime ); //%name plbtime //%output year, month, day, hour, min, sec - -// Start new page. Should only be used with pleop(). - - -// Set xor mode; 1-enter, 0-leave - -void c_plxormod( PLINT mode, PLINT *status ); //%name plxormod //%output status - -// Calculate world coordinates and subpage from relative device coordinates. - -void c_plcalc_world( PLFLT rx, PLFLT ry, PLFLT *wx, PLFLT *wy, PLINT *window ); //%name plcalc_world //%output wx, wy, window - -// Clear current subpage. - -void c_plclear( void ); //%name plclear - -// Set color, map 0. Argument is integer between 0 and 15. - -void c_plcol0( PLINT icol0 ); //%name plcol0 - -inline void my_plcol( PLINT icol0 ) -{ - c_plcol0( icol0 ); -} //%name plcol - -// Set color, map 1. Argument is a float between 0. and 1. - -void c_plcol1( PLFLT col1 ); //%name plcol1 - -// Configure transformation between continuous and broken-down time (and -// vice versa) for current stream. -void c_plconfigtime( PLFLT scale, PLFLT offset1, PLFLT offset2, PLINT ccontrol, PLBOOL ifbtime_offset, PLINT year, PLINT month, PLINT day, PLINT hour, PLINT min, PLFLT sec ); //%name plconfigtime - -// Identity transformation. - -void pltr0( PLFLT x, PLFLT y, PLFLT *tx, PLFLT *ty, PLPointer pltr_data ); //%nowrap - -// Does linear interpolation from singly dimensioned coord arrays. - -void pltr1( PLFLT x, PLFLT y, PLFLT *tx, PLFLT *ty, PLPointer pltr_data ); //%nowrap - -// Does linear interpolation from doubly dimensioned coord arrays -// (column dominant, as per normal C 2d arrays). - -void pltr2( PLFLT x, PLFLT y, PLFLT *tx, PLFLT *ty, PLPointer pltr_data ); //%nowrap - -// Just like pltr2() but uses pointer arithmetic to get coordinates from -// 2d grid tables. - -void pltr2p( PLFLT x, PLFLT y, PLFLT *tx, PLFLT *ty, PLPointer pltr_data ); //%nowrap - -// One more hack. As it is not possible (and would not be desirable) to pass -// an Octave function to plcont(), I have defined three plcont(): -// plcont uses a defined here xform() -// plcont0 uses pltr0() -// plcont1 uses pltr1() -// plcont2 uses pltr2() -// plcont2p uses pltr2p() -// -// Also, as plplot expect vectorized bidimensional arrays, I provided a -// f2c, which is a #define that does the necessary conversion. -// - -void xform( PLFLT x, PLFLT y, PLFLT *tx, PLFLT *ty, PLPointer pltr_data ) -{ - *tx = *( (PLFLT *) pltr_data + 0 ) * x + *( (PLFLT *) pltr_data + 1 ) * y + *( (PLFLT *) pltr_data + 2 ); - *ty = *( (PLFLT *) pltr_data + 3 ) * x + *( (PLFLT *) pltr_data + 4 ) * y + *( (PLFLT *) pltr_data + 5 ); -} //%nowrap - -// convert from Fortran like arrays (one vector), to C like 2D arrays - -#define f2c( f, ff, nx, ny ) \ - PLFLT * *ff; \ - ff = (PLFLT **) alloca( nx * sizeof ( PLFLT * ) ); \ - for ( int i = 0; i < nx; i++ ) { \ - ff[i] = (PLFLT *) alloca( ny * sizeof ( PLFLT ) ); \ - for ( int j = 0; j < ny; j++ ) \ - *( ff[i] + j ) = *( f + nx * j + i );} - -// simpler plcont() for use with xform() - -void my_plcont( PLFLT *f, PLINT nx, PLINT ny, PLINT kx, PLINT lx, PLINT ky, - PLINT ly, PLFLT *clevel, PLINT nlevel, PLFLT *tr ) -{ - f2c( f, ff, nx, ny ); - c_plcont( ff, nx, ny, kx, lx, ky, ly, clevel, nlevel, xform, tr ); -} //%name plcont //%input f(nx,ny), clevel(nlevel), tr(6) - -// plcont() for use with pltr0() NOT TESTED - -void my_plcont0( PLFLT *f, PLINT nx, PLINT ny, PLINT kx, PLINT lx, PLINT ky, - PLINT ly, PLFLT *clevel, PLINT nlevel ) -{ - f2c( f, ff, nx, ny ); - c_plcont( ff, nx, ny, kx, lx, ky, ly, clevel, nlevel, pltr0, NULL ); -} //%name plcont0 //%input f(nx,ny), clevel(nlevel) - -// plcont() for use with pltr1() - -void my_plcont1( PLFLT *f, PLINT nx, PLINT ny, PLINT kx, PLINT lx, PLINT ky, - PLINT ly, PLFLT *clevel, PLINT nlevel, PLFLT *xg, PLFLT *yg ) -{ - PLcGrid grid1; - grid1.nx = nx; grid1.ny = ny; - grid1.xg = xg; grid1.yg = yg; - f2c( f, ff, nx, ny ); - c_plcont( ff, nx, ny, kx, lx, ky, ly, clevel, nlevel, pltr1, &grid1 ); -} //%name plcont1 //%input f(nx,ny), clevel(nlevel), xg(nx), yg(ny) - -// plcont() for use with pltr2() - -void my_plcont2( PLFLT *f, PLINT nx, PLINT ny, PLINT kx, PLINT lx, PLINT ky, - PLINT ly, PLFLT *clevel, PLINT nlevel, PLFLT *xg, PLFLT *yg ) -{ - PLcGrid2 grid2; - f2c( xg, xgg, nx, ny ); f2c( yg, ygg, nx, ny ); - grid2.nx = nx; grid2.ny = ny; - grid2.xg = xgg; grid2.yg = ygg; - f2c( f, ff, nx, ny ); - c_plcont( ff, nx, ny, kx, lx, ky, ly, clevel, nlevel, pltr2, &grid2 ); -} //%name plcont2 //%input f(nx,ny), clevel(nlevel), xg(nx,ny), yg(nx,ny) - -// plcont() for use with pltr2p() - -void my_plcont2p( PLFLT *f, PLINT nx, PLINT ny, PLINT kx, PLINT lx, PLINT ky, - PLINT ly, PLFLT *clevel, PLINT nlevel, PLFLT *xg, PLFLT *yg ) -{ - PLcGrid2 grid2; - f2c( xg, xgg, nx, ny ); f2c( yg, ygg, nx, ny ); - grid2.nx = nx; grid2.ny = ny; - grid2.xg = xgg; grid2.yg = ygg; - f2c( f, ff, nx, ny ); - c_plcont( ff, nx, ny, kx, lx, ky, ly, clevel, nlevel, pltr2, &grid2 ); -} //%name plcont2p //%input f(nx,ny), clevel(nlevel), xg(nx,ny), yg(nx,ny) - -// Copies state parameters from the reference stream to the current stream. - -void c_plcpstrm( PLINT iplsr, PLINT flags ); //%name plcpstrm - -// Calculate continuous time from broken-down time for current stream. -void c_plctime( PLINT year, PLINT month, PLINT day, PLINT hour, PLINT min, PLFLT sec, PLFLT *ctime ); //%name plctime //%output ctime - -// Converts input values from relative device coordinates to relative plot -// coordinates. - -void pldid2pc( PLFLT *xmin, PLFLT *ymin, PLFLT *xmax, PLFLT *ymax ); - -// Converts input values from relative plot coordinates to relative -// device coordinates. - -void pldip2dc( PLFLT *xmin, PLFLT *ymin, PLFLT *xmax, PLFLT *ymax ); - -// End a plotting session for all open streams. - -void c_plend( void ); //%name plend - -// End a plotting session for the current stream only. - -void c_plend1( void ); //%name plend1 - -// Simple interface for defining viewport and window. - -void c_plenv( PLFLT xmin, PLFLT xmax, PLFLT ymin, PLFLT ymax, - PLINT just, PLINT axis ); //%name plenv - - -void c_plenv0( PLFLT xmin, PLFLT xmax, PLFLT ymin, PLFLT ymax, - PLINT just, PLINT axis ); //%name plenv0 - -// End current page. Should only be used with plbop(). - -void c_pleop( void ); //%name pleop - -// Plot horizontal error bars (xmin(i),y(i)) to (xmax(i),y(i)) - -void c_plerrx( PLINT n, PLFLT *xmin, PLFLT *xmax, PLFLT *y ); //%name plerrx //%input xmin(n), xmax(n), y(n) - -// Plot vertical error bars (x,ymin(i)) to (x(i),ymax(i)) - -void c_plerry( PLINT n, PLFLT *x, PLFLT *ymin, PLFLT *ymax ); //%name plerry //%input ymin(n), ymax(n), x(n) - -// Advance to the next family file on the next new page - -void c_plfamadv( void ); //%name plfamadv - -// Pattern fills the polygon bounded by the input points. - -void c_plfill( PLINT n, PLFLT *x, PLFLT *y ); //%name plfill //%input x(n), y(n) - -// Pattern fills the 3d polygon bounded by the input points. - -void c_plfill3( PLINT n, PLFLT *x, PLFLT *y, PLFLT *z ); //%name plfill3 //%input x(n), y(n), z(n) - -// Flushes the output stream. Use sparingly, if at all. - -void c_plflush( void ); //%name plflush - -// Sets the global font flag to 'ifont'. - -void c_plfont( PLINT ifont ); //%name plfont - -// Load specified font set. - -void c_plfontld( PLINT fnt ); //%name plfontld - -// Get character default height and current (scaled) height - -void c_plgchr( PLFLT *p_def, PLFLT *p_ht ); //%name plgchr //%output p_def, p_ht - -// Returns 8 bit RGB values for given color from color map 0 - -void c_plgcol0( PLINT icol0, PLINT *r, PLINT *g, PLINT *b ); //%name plgcol0 //%output r, g, b - -// Returns 8 bit RGB + alpha values for given color from color map 0 - -void c_plgcol0a( PLINT icol0, PLINT *r, PLINT *g, PLINT *b, PLFLT *a ); //%name plgcol0a //%output r, g, b, a - -// Returns the background color by 8 bit RGB value - -void c_plgcolbg( PLINT *r, PLINT *g, PLINT *b ); //%name plgcolbg //%output r, g, b - -// Returns the background color by 8 bit RGB + alpha values - -void c_plgcolbga( PLINT *r, PLINT *g, PLINT *b, PLFLT *a ); //%name plgcolbga //%output r, g, b, a - -// Returns the current compression setting - -void c_plgcompression( PLINT *compression ); //%name plgcompression //%output compression - -// Get the current device (keyword) name - -void c_plgdev( char *p_dev ); //%name plgdev //%output p_dev(80) - -// Retrieve current window into device space - -void c_plgdidev( PLFLT *p_mar, PLFLT *p_aspect, PLFLT *p_jx, PLFLT *p_jy ); //%name plgdidev //%output p_mar, p_aspect, p_jx, p_jy - -// Get plot orientation - -void c_plgdiori( PLFLT *p_rot ); //%name plgdiori //%output p_rot - -// Retrieve current window into plot space - -void c_plgdiplt( PLFLT *p_xmin, PLFLT *p_ymin, PLFLT *p_xmax, PLFLT *p_ymax ); //%name plgdiplt //%output p_xmin, p_ymin, p_xmax, p_ymax - -// Get FCI (font characterization integer) - -void c_plgfci( PLUNICODE *pfci ); //%name plgfci //%output pfci - -// Get family file parameters - -void c_plgfam( PLINT *p_fam, PLINT *p_num, PLINT *p_bmax ); //%name plgfam //%output p_fam, p_num, p_bmax - -// Get the (current) output file name. Must be preallocated to >80 bytes - -void c_plgfnam( char *fnam ); //%name plgfnam //%output fnam(80) - -// Get the current font family, style and weight - -void c_plgfont( PLINT *p_family, PLINT *p_style, PLINT *p_weight ); //%name plgfont //%output p_family, p_style, p_weight - -// Get the (current) run level. - -void c_plglevel( PLINT *p_level ); //%name plglevel //%output p_level - -// Get output device parameters. - -void c_plgpage( PLFLT *p_xp, PLFLT *p_yp, PLINT *p_xleng, PLINT *p_yleng, - PLINT *p_xoff, PLINT *p_yoff ); //%name plgpage //%output p_xp, p_yp, p_xleng, p_yleng, p_xoff, p_yoff - -// Switches to graphics screen. - -void c_plgra( void ); //%name plgra - -// Draw gradient in polygon. - -void c_plgradient( PLINT n, PLFLT *x, PLFLT *y, PLFLT angle ); //%name plgradient //%input x(n), y(n) - -void plgriddata( PLFLT *x, PLFLT *y, PLFLT *z, int npts, - PLFLT *xg, int nptsx, PLFLT *yg, int nptsy, - PLFLT **zg, int type, PLFLT data ); //%nowrap - -void my_plgriddata( PLFLT *x, PLFLT *y, PLFLT *z, int npts, - PLFLT *xg, int nptsx, PLFLT *yg, int nptsy, - PLFLT *zg, int type, PLFLT data ) -{ - f2c( zg, zgg, nptsx, nptsy ); - plgriddata( x, y, z, npts, xg, nptsx, yg, nptsy, zgg, type, data ); - for ( int i = 0; i < nptsx; i++ ) - for ( int j = 0; j < nptsy; j++ ) - *( zg + nptsx * j + i ) = zgg[i][j]; -} //%name plgriddata //%input x(npts), y(npts), z(npts), xg(nptsx), yg(nptsy) //%output zg(nptsx, nptsy) - -// type of gridding algorithm for plgriddata() - -#define GRID_CSA 1 // Bivariate Cubic Spline approximation -#define GRID_DTLI 2 // Delaunay Triangulation Linear Interpolation -#define GRID_NNI 3 // Natural Neighbors Interpolation -#define GRID_NNIDW 4 // Nearest Neighbors Inverse Distance Weighted -#define GRID_NNLI 5 // Nearest Neighbors Linear Interpolation -#define GRID_NNAIDW 6 // Nearest Neighbors Around Inverse Distance Weighted - -// Get subpage boundaries in absolute coordinates - -void c_plgspa( PLFLT *xmin, PLFLT *xmax, PLFLT *ymin, PLFLT *ymax ); //%name plgspa //%output xmin, xmax, ymin, ymax - -// Get current stream number. - -void c_plgstrm( PLINT *p_strm ); //%name plgstrm //%output p_strm - -// Get the current library version number - -void c_plgver( char *p_ver ); //%output p_ver(20) //%name plgver - -// Get viewport boundaries in normalized device coordinates - -void c_plgvpd( PLFLT *p_xmin, PLFLT *p_xmax, PLFLT *p_ymin, PLFLT *p_ymax ); //%name plgvpd //%output p_xmin, p_xmax, p_ymin, p_ymax - -// Get viewport boundaries in world coordinates - -void c_plgvpw( PLFLT *p_xmin, PLFLT *p_xmax, PLFLT *p_ymin, PLFLT *p_ymax ); //%name plgvpw //%output p_xmin, p_xmax, p_ymin, p_ymax - -// Get x axis labeling parameters - -void c_plgxax( PLINT *p_digmax, PLINT *p_digits ); //%name plgxax //%output p_digmax, p_digits - -// Get y axis labeling parameters - -void c_plgyax( PLINT *p_digmax, PLINT *p_digits ); //%name plgyax //%output p_digmax, p_digits - -// Get z axis labeling parameters - -void c_plgzax( PLINT *p_digmax, PLINT *p_digits ); //%name plgzax //%output p_digmax, p_digits - -// Draws a histogram of n values of a variable in array data[0..n-1] - -void c_plhist( PLINT n, PLFLT *data, PLFLT datmin, PLFLT datmax, - PLINT nbin, PLINT oldwin ); //%name plhist //%input data(n) - -// Set current color (map 0) by hue, lightness, and saturation. - -void c_plhls( PLFLT h, PLFLT l, PLFLT s ); //%name plhls - -// Function for converting between HLS and RGB color space - -void c_plhlsrgb( PLFLT h, PLFLT l, PLFLT s, PLFLT *p_r, PLFLT *p_g, PLFLT *p_b ); //%name plhlsrgb //%output p_r, p_g, p_b - -// Initializes PLplot, using preset or default options - -void c_plinit( void ); //%name plinit - -// Draws a line segment from (x1, y1) to (x2, y2). - -void c_pljoin( PLFLT x1, PLFLT y1, PLFLT x2, PLFLT y2 ); //%name pljoin - -// Simple routine for labelling graphs. - -void c_pllab( const char *xlabel, const char *ylabel, const char *tlabel ); //%name pllab - -// Sets position of the light source - -void c_pllightsource( PLFLT x, PLFLT y, PLFLT z ); //%name pllightsource - -// Draws line segments connecting a series of points. - -void c_plline( PLINT n, PLFLT *x, PLFLT *y ); //%input x(n), y(n) //%name plline - -// Draws a line in 3 space. - -void c_plline3( PLINT n, PLFLT *x, PLFLT *y, PLFLT *z ); //%name plline3 //%input x(n), y(n), z(n) - -// Set line style. - -void c_pllsty( PLINT lin ); //%name pllsty - -// Plots a mesh representation of the function z[x][y]. - -void c_plmesh( PLFLT *x, PLFLT *y, PLFLT **z, PLINT nx, PLINT ny, PLINT opt ); //%nowrap - -void my_plmesh( PLFLT *x, PLFLT *y, PLFLT *z, PLINT nx, PLINT ny, PLINT opt ) -{ - f2c( z, zz, nx, ny ); - c_plmesh( x, y, zz, nx, ny, opt ); -} //%name plmesh //%input x(nx), y(ny), z(nx,ny) - -// Plots a mesh representation of the function z[x][y] with contour - -void c_plmeshc( PLFLT *x, PLFLT *y, PLFLT **z, PLINT nx, PLINT ny, PLINT opt, PLFLT *clevel, PLINT nlevel ); //%nowrap - -void my_plmeshc( PLFLT *x, PLFLT *y, PLFLT *z, PLINT nx, PLINT ny, PLINT opt, PLFLT *clevel, PLINT nlevel ) -{ - f2c( z, zz, nx, ny ); - c_plmeshc( x, y, zz, nx, ny, opt, clevel, nlevel ); -} //%name plmeshc //%input x(nx), y(ny), z(nx,ny), clevel(nlevel) - -// Creates a new stream and makes it the default. - -void c_plmkstrm( PLINT *p_strm ); //%name plmkstrm //%output p_strm - -// Prints out "text" at specified position relative to viewport - -void c_plmtex( const char *side, PLFLT disp, PLFLT pos, PLFLT just, - const char *text ); //%name plmtex - -// Prints out "text" at specified position relative to viewport (3D) - -void c_plmtex3( const char *side, PLFLT disp, PLFLT pos, PLFLT just, - const char *text ); //%name plmtex3 - -// Plots a 3-d representation of the function z[x][y]. - -void c_plot3d( PLFLT *x, PLFLT *y, PLFLT **z, - PLINT nx, PLINT ny, PLINT opt, PLINT side ); //%nowrap - -void my_plot3d( PLFLT *x, PLFLT *y, PLFLT *z, - PLINT nx, PLINT ny, PLINT opt, PLINT side ) -{ - f2c( z, zz, nx, ny ) - c_plot3d( x, y, zz, nx, ny, opt, side ); -} //%name plot3d //%input x(nx), y(ny), z(nx,ny) - -// Plots a 3-d representation of the function z[x][y] with contour - -void c_plot3dc( PLFLT *x, PLFLT *y, PLFLT **z, - PLINT nx, PLINT ny, PLINT opt, - PLFLT *clevel, PLINT nlevel ); //%nowrap - -void my_plot3dc( PLFLT *x, PLFLT *y, PLFLT *z, - PLINT nx, PLINT ny, PLINT opt, - PLFLT *clevel, PLINT nlevel ) -{ - f2c( z, zz, nx, ny ) - c_plot3dc( x, y, zz, nx, ny, opt, clevel, nlevel ); -} //%name plot3dc //%input x(nx), y(ny), z(nx,ny), clevel(nlevel) - -// Plots the 3-d surface representation of the function z[x][y]. - -void c_plsurf3d( PLFLT *x, PLFLT *y, PLFLT **z, - PLINT nx, PLINT ny, PLINT opt, PLFLT *clevel, PLINT nlevel ); //%nowrap - -void my_plsurf3d( PLFLT *x, PLFLT *y, PLFLT *z, - PLINT nx, PLINT ny, PLINT opt, PLFLT *clevel, PLINT nlevel ) -{ - f2c( z, zz, nx, ny ) - c_plsurf3d( x, y, zz, nx, ny, opt, clevel, nlevel ); -} //%name plsurf3d //%input x(nx), y(ny), z(nx,ny), clevel(nlevel) - -// Set fill pattern directly. - -void c_plpat( PLINT nlin, PLINT *inc, PLINT *del ); //%name plpat //%input inc(nlin), del(nlin) - -// Plots array y against x for n points using ASCII code "code". - -void c_plpoin( PLINT n, PLFLT *x, PLFLT *y, PLINT code ); //%input x(n), y(n) //%name plpoin - -// Draws a series of points in 3 space. - -void c_plpoin3( PLINT n, PLFLT *x, PLFLT *y, PLFLT *z, PLINT code ); //%name plpoin3 //%input x(n), y(n), z(n) - -// Draws a polygon in 3 space. - -void c_plpoly3( PLINT n, PLFLT *x, PLFLT *y, PLFLT *z, PLINT *draw, PLINT ifcc ); //%nowrap - -void my_plpoly3( PLINT n, PLFLT *x, PLFLT *y, PLFLT *z, PLINT *draw, PLINT clockwise ) -{ - c_plpoly3( n, x, y, z, draw, ( 1 - clockwise ) / 2 ); -} //%name plpoly3 //%input x(n), y(n), z(n), draw(4) - -// Set the floating point precision (in number of places) in numeric labels. - -void c_plprec( PLINT setp, PLINT prec ); //%name plprec - -// Set fill pattern, using one of the predefined patterns. - -void c_plpsty( PLINT patt ); //%name plpsty - -// Prints out "text" at world cooordinate (x,y). - -void c_plptex( PLFLT x, PLFLT y, PLFLT dx, PLFLT dy, PLFLT just, const char *text ); //%name plptex - -// Prints out "text" at world cooordinate (x,y,z). - -void c_plptex3( PLFLT wx, PLFLT wy, PLFLT wz, PLFLT dx, PLFLT dy, PLFLT dz, PLFLT sx, PLFLT sy, PLFLT sz, PLFLT just, const char *text ); //%name plptex3 - -// Random number generator based on Mersenne Twister. -// Obtain real random number in range [0,1]. - -PLFLT c_plrandd( void ); //%name plrandd - -// Replays contents of plot buffer to current device/file. - -void c_plreplot( void ); //%name plreplot - -// Set line color by red, green, blue from 0. to 1. - -void c_plrgb( PLFLT r, PLFLT g, PLFLT b ); //%name plrgb - -// Set line color by 8 bit RGB values. - -void c_plrgb1( PLINT r, PLINT g, PLINT b ); //%name plrgb1 - -// Function for converting between HLS and RGB color space - -void c_plrgbhls( PLFLT r, PLFLT g, PLFLT b, PLFLT *p_h, PLFLT *p_l, PLFLT *p_s ); //%name plrgbhls //%output p_h, p_l, p_s - -// Set character height. - -void c_plschr( PLFLT def, PLFLT scale ); //%name plschr - -// Set number of colors in cmap 0 - -void c_plscmap0n( PLINT ncol0 ); //%name plscmap0n - -// Set number of colors in cmap 1 - -void c_plscmap1n( PLINT ncol1 ); //%name plscmap1n - -// Set color map 0 colors by 8 bit RGB values - -void c_plscmap0( PLINT *r, PLINT *g, PLINT *b, PLINT ncol0 ); //%name plscmap0 //%input r(ncol0), g(ncol0), b(ncol0) - -// Set color map 1 colors by 8 bit RGB values - -void c_plscmap1( PLINT *r, PLINT *g, PLINT *b, PLINT ncol1 ); //%name plscmap1 //%input r(ncol1), g(ncol1), b(ncol1) - -// Set color map 1 colors using a piece-wise linear relationship between -// intensity [0,1] (cmap 1 index) and position in HLS or RGB color space. - -void c_plscmap1l( PLINT itype, PLINT npts, PLFLT *intensity, - PLFLT *coord1, PLFLT *coord2, PLFLT *coord3, PLINT *alt_hue_path ); -//%name plscmap1l //%input intensity(npts), coord1(npts), coord2(npts), coord3(npts), alt_hue_path(npts) - -// Set a given color from color map 0 by 8 bit RGB value - -void c_plscol0( PLINT icol0, PLINT r, PLINT g, PLINT b ); //%name plscol0 - -// Set the background color by 8 bit RGB value - -void c_plscolbg( PLINT r, PLINT g, PLINT b ); //%name plscolbg - -// Set color map 0 colors by 8 bit RGB + alpha values - -void c_plscmap0a( PLINT *r, PLINT *g, PLINT *b, PLFLT *a, PLINT ncol0 ); //%name plscmap0a //%input r(ncol0), g(ncol0), b(ncol0), a(ncol0) - -// Set color map 1 colors by 8 bit RGB + alpha values - -void c_plscmap1a( PLINT *r, PLINT *g, PLINT *b, PLFLT *a, PLINT ncol1 ); //%name plscmap1a //%input r(ncol1), g(ncol1), b(ncol1), a(ncol1) - -// Set color map 1 colors using a piece-wise linear relationship between -// intensity [0,1] (cmap 1 index) and position in HLS or RGB color space -// and alpha transparency value. - -void c_plscmap1la( PLINT itype, PLINT npts, PLFLT *intensity, - PLFLT *coord1, PLFLT *coord2, PLFLT *coord3, PLFLT *a, PLINT *alt_hue_path ); -//%name plscmap1la //%input intensity(npts), coord1(npts), coord2(npts), coord3(npts), a(npts), alt_hue_path(npts) - -// Set a given color from color map 0 by 8 bit RGB + alpha value - -void c_plscol0a( PLINT icol0, PLINT r, PLINT g, PLINT b, PLFLT a ); //%name plscol0a - -// Set the background color by 8 bit RGB + alpha value - -void c_plscolbga( PLINT r, PLINT g, PLINT b, PLFLT a ); //%name plscolbga - -// Used to globally turn color output on/off - -void c_plscolor( PLINT color ); //%name plscolor - -// Set the compression level - -void c_plscompression( PLINT compression ); //%name plscompression - -// Set the device (keyword) name - -void c_plsdev( const char *devname ); //%name plsdev - -// Set window into device space using margin, aspect ratio, and -// justification - -void c_plsdidev( PLFLT mar, PLFLT aspect, PLFLT jx, PLFLT jy ); //%name plsdidev - -// Set up transformation from metafile coordinates. - -void c_plsdimap( PLINT dimxmin, PLINT dimxmax, PLINT dimymin, PLINT dimymax, - PLFLT dimxpmm, PLFLT dimypmm ); //%name plsdimap - -// Set plot orientation, specifying rotation in units of pi/2. - -void c_plsdiori( PLFLT rot ); //%name plsdiori - -// Set window into plot space - -void c_plsdiplt( PLFLT xmin, PLFLT ymin, PLFLT xmax, PLFLT ymax ); //%name plsdiplt - -// Set window into plot space incrementally (zoom) - -void c_plsdiplz( PLFLT xmin, PLFLT ymin, PLFLT xmax, PLFLT ymax ); //%name plsdiplz - -// Set seed for internal random number generator - -void c_plseed( unsigned s ); //%name plseed - -// Set the escape character for text strings. - -void c_plsesc( char esc ); //%name plsesc - -// set offset and spacing of contour labels - -void c_pl_setcontlabelparam( PLFLT offset, PLFLT size, PLFLT spacing, PLINT active ); //%name pl_setcontlabelparam - -// set the format of the contour labels - -void c_pl_setcontlabelformat( PLINT lexp, PLINT sigdig ); //%name pl_setcontlabelformat - -// Set family file parameters - -void c_plsfam( PLINT fam, PLINT num, PLINT bmax ); //%name plsfam - -// Set FCI (font characterization integer) - -void c_plsfci( PLUNICODE fci ); //%name plsfci - -// Set the current font family, style and weight - -void c_plsfont( PLINT family, PLINT style, PLINT weight ); //%name plsfont - - -// Set the output file name. - -void c_plsfnam( const char *fnam ); //%name plsfnam - -// The same as in plcont. I have hardcoded the first function pointer -// to plfill(). The second function pointer will use the same convention -// as in plcont(). -// - -// the simpler plshade() - -void my_plshade( PLFLT *a, PLINT nx, PLINT ny, PLFLT *defined, - PLFLT left, PLFLT right, PLFLT bottom, PLFLT top, - PLFLT shade_min, PLFLT shade_max, - PLINT sh_cmap, PLFLT sh_color, PLINT sh_width, - PLINT min_color, PLINT min_width, - PLINT max_color, PLINT max_width, - PLINT rectangular, PLFLT *tr ) -{ - f2c( a, aa, nx, ny ); - c_plshade( aa, nx, ny, NULL, left, right, bottom, top, - shade_min, shade_max, sh_cmap, sh_color, sh_width, - min_color, min_width, max_color, max_width, - plfill, rectangular, xform, tr ); -} //%name plshade //%input a(nx, ny), tr(6) - -// plshade() for use with pltr1 - -void my_plshade1( PLFLT *a, PLINT nx, PLINT ny, const char *defined, - PLFLT left, PLFLT right, PLFLT bottom, PLFLT top, - PLFLT shade_min, PLFLT shade_max, - PLINT sh_cmap, PLFLT sh_color, PLINT sh_width, - PLINT min_color, PLINT min_width, - PLINT max_color, PLINT max_width, - PLINT rectangular, PLFLT *xg, PLFLT *yg ) -{ - PLcGrid grid1; - grid1.nx = nx; grid1.ny = ny; - grid1.xg = xg; grid1.yg = yg; - f2c( a, aa, nx, ny ); - c_plshade( aa, nx, ny, NULL, left, right, bottom, top, - shade_min, shade_max, sh_cmap, sh_color, sh_width, - min_color, min_width, max_color, max_width, - plfill, rectangular, pltr1, &grid1 ); -} //%name plshade1 //%input a(nx, ny), xg(nx), yg(ny) - -// plshade() for use with pltr2 - -void my_plshade2( PLFLT *a, PLINT nx, PLINT ny, const char *defined, - PLFLT left, PLFLT right, PLFLT bottom, PLFLT top, - PLFLT shade_min, PLFLT shade_max, - PLINT sh_cmap, PLFLT sh_color, PLINT sh_width, - PLINT min_color, PLINT min_width, - PLINT max_color, PLINT max_width, - PLINT rectangular, PLFLT *xg, PLFLT *yg ) -{ - PLcGrid2 grid2; - f2c( xg, xgg, nx, ny ); f2c( yg, ygg, nx, ny ); - grid2.nx = nx; grid2.ny = ny; - grid2.xg = xgg; grid2.yg = ygg; - f2c( a, aa, nx, ny ); - c_plshade( aa, nx, ny, NULL, left, right, bottom, top, - shade_min, shade_max, sh_cmap, sh_color, sh_width, - min_color, min_width, max_color, max_width, - plfill, rectangular, pltr2, &grid2 ); -} //%name plshade2 //%input a(nx, ny), xg(nx,ny), yg(nx,ny) - -void my_plshades( PLFLT *a, PLINT nx, PLINT ny, - PLFLT left, PLFLT right, PLFLT bottom, PLFLT top, - PLFLT *clevel, PLINT nlevel, PLINT fill_width, - PLINT cont_color, PLINT cont_width, - PLINT rectangular ) -{ - f2c( a, aa, nx, ny ); - c_plshades( aa, nx, ny, NULL, left, right, bottom, top, - clevel, nlevel, fill_width, cont_color, cont_width, - plfill, rectangular, NULL, NULL ); -} //%name plshades //%input a(nx, ny), clevel(nlevel) - -void my_plshadesx( PLFLT *a, PLINT nx, PLINT ny, - PLFLT left, PLFLT right, PLFLT bottom, PLFLT top, - PLFLT *clevel, PLINT nlevel, PLINT fill_width, - PLINT cont_color, PLINT cont_width, - PLINT rectangular, PLFLT *tr ) -{ - f2c( a, aa, nx, ny ); - c_plshades( aa, nx, ny, NULL, left, right, bottom, top, - clevel, nlevel, fill_width, cont_color, cont_width, - plfill, rectangular, xform, tr ); -} //%name plshadesx //%input a(nx, ny), clevel(nlevel), tr(6) - -void my_plshades1( PLFLT *a, PLINT nx, PLINT ny, - PLFLT left, PLFLT right, PLFLT bottom, PLFLT top, - PLFLT *clevel, PLINT nlevel, PLINT fill_width, - PLINT cont_color, PLINT cont_width, - PLINT rectangular, PLFLT *xg, PLFLT *yg ) -{ - PLcGrid grid1; - grid1.nx = nx; grid1.ny = ny; - grid1.xg = xg; grid1.yg = yg; - - f2c( a, aa, nx, ny ); - c_plshades( aa, nx, ny, NULL, left, right, bottom, top, - clevel, nlevel, fill_width, cont_color, cont_width, - plfill, rectangular, pltr1, &grid1 ); -} //%name plshades1 //%input a(nx, ny), clevel(nlevel), xg(nx), yg(ny) - - -void my_plshades2( PLFLT *a, PLINT nx, PLINT ny, - PLFLT left, PLFLT right, PLFLT bottom, PLFLT top, - PLFLT *clevel, PLINT nlevel, PLINT fill_width, - PLINT cont_color, PLINT cont_width, - PLINT rectangular, PLFLT *xg, PLFLT *yg ) -{ - PLcGrid2 grid2; - f2c( xg, xgg, nx, ny ); f2c( yg, ygg, nx, ny ); - grid2.nx = nx; grid2.ny = ny; - grid2.xg = xgg; grid2.yg = ygg; - f2c( a, aa, nx, ny ); - c_plshades( aa, nx, ny, NULL, left, right, bottom, top, - clevel, nlevel, fill_width, cont_color, cont_width, - plfill, rectangular, pltr2, &grid2 ); -} //%name plshades2 //%input a(nx, ny), clevel(nlevel), xg(nx,ny), yg(nx,ny) - -// Set up lengths of major tick marks. - -void c_plsmaj( PLFLT def, PLFLT scale ); //%name plsmaj - -// Set up lengths of minor tick marks. - -void c_plsmin( PLFLT def, PLFLT scale ); //%name plsmin - -// Set orientation. Must be done before calling plinit. - -void c_plsori( PLINT ori ); //%name plsori - -// Set output device parameters. Usually ignored by the driver. - -void c_plspage( PLFLT xp, PLFLT yp, PLINT xleng, PLINT yleng, - PLINT xoff, PLINT yoff ); //%name plspage - -// Set the colors for color table 0 from a cmap0 file - -void c_plspal0( const char *filename ); //%name plspal0 - -// Set the colors for color table 1 from a cmap1 file - -void c_plspal1( const char *filename, PLINT interpolate ); //%name plspal1 - -// Set the pause (on end-of-page) status - -void c_plspause( PLINT pause ); //%name plspause - -// Set stream number. - -void c_plsstrm( PLINT strm ); //%name plsstrm - -// Set the number of subwindows in x and y - -void c_plssub( PLINT nx, PLINT ny ); //%name plssub - -// Set symbol height. - -void c_plssym( PLFLT def, PLFLT scale ); //%name plssym - -// Initialize PLplot, passing in the windows/page settings. - -void c_plstar( PLINT nx, PLINT ny ); //%name plstar - -// Initialize PLplot, passing the device name and windows/page settings. - -void c_plstart( const char *devname, PLINT nx, PLINT ny ); //%name plstart - -// Create 1d stripchart - -void my_plstripc( int *id, char *xspec, char *yspec, - PLFLT xmin, PLFLT xmax, PLFLT xjump, PLFLT ymin, PLFLT ymax, - PLFLT xlpos, PLFLT ylpos, - PLINT y_ascl, PLINT acc, - PLINT colbox, PLINT collab, - PLINT *colline, PLINT *styline, - char *legline1, char *legline2, char *legline3, char *legline4, - char *labx, char *laby, char *labtop ) -{ - char *legline[4]; - legline[0] = legline1; legline[1] = legline2; - legline[2] = legline3; legline[3] = legline4; - c_plstripc( id, xspec, yspec, xmin, xmax, xjump, ymin, ymax, - xlpos, ylpos, y_ascl, acc, colbox, collab, colline, styline, legline, - labx, laby, labtop ); -} //%novectorize //%name plstripc //%output id //%input colline(4), styline(4) - -// Add a point to a stripchart. - -void c_plstripa( PLINT id, PLINT pen, PLFLT x, PLFLT y ); //%name plstripa - -// Deletes and releases memory used by a stripchart. - -void c_plstripd( PLINT id ); //%name plstripd - -// Set up a new line style - -void c_plstyl( PLINT nms, PLINT *mark, PLINT *space ); //%name plstyl //%input mark(nms), space(nms) - -// Set the vector style - -void c_plsvect( PLFLT *arrowx, PLFLT *arrowy, PLINT npts, PLBOOL fill ); //%name plsvect //%input arrowx(npts), arrowy(npts) - -// Sets the edges of the viewport to the specified absolute coordinates - -void c_plsvpa( PLFLT xmin, PLFLT xmax, PLFLT ymin, PLFLT ymax ); //%name plsvpa - -// Set x axis labeling parameters - -void c_plsxax( PLINT digmax, PLINT digits ); //%name plsxax - -// Set inferior X window - -void plsxwin( PLINT window_id ); - -// Set y axis labeling parameters - -void c_plsyax( PLINT digmax, PLINT digits ); //%name plsyax - -// Plots array y against x for n points using Hershey symbol "code" - -void c_plsym( PLINT n, PLFLT *x, PLFLT *y, PLINT code ); //%name plsym //%input x(n), y(n) - -// Set z axis labeling parameters - -void c_plszax( PLINT digmax, PLINT digits ); //%name plszax - -// Switches to text screen. - -void c_pltext( void ); //%name pltext - -// Set the format for date / time labels. - -void c_pltimefmt( const char *fmt ); //%name pltimefmt - -// Sets the edges of the viewport with the given aspect ratio, leaving -// room for labels. - -void c_plvasp( PLFLT aspect ); //%name plvasp - -// Plot an array of vector arrows - uses the same function pointer -// convention as plcont - -void my_plvect( PLFLT *u, PLFLT *v, PLINT nx, PLINT ny, PLFLT scale, PLFLT *tr ) -{ - f2c( u, uu, nx, ny ); - f2c( v, vv, nx, ny ); - c_plvect( uu, vv, nx, ny, scale, xform, tr ); -} //%name plvect //%input u(nx,ny), v(nx,ny), tr(6) - -// plvect() for use with pltr1 -void my_plvect1( PLFLT *u, PLFLT *v, PLINT nx, PLINT ny, PLFLT scale, PLFLT *xg, PLFLT *yg ) -{ - PLcGrid grid1; - grid1.nx = nx; grid1.ny = ny; - grid1.xg = xg; grid1.yg = yg; - f2c... [truncated message content] |
From: <ai...@us...> - 2014-02-23 18:50:15
|
Revision: 13016 http://sourceforge.net/p/plplot/code/13016 Author: airwin Date: 2014-02-23 18:50:11 +0000 (Sun, 23 Feb 2014) Log Message: ----------- Implement "check_all" target which depends on all the check targets. Improve run-time messages for each of the check targets. Modified Paths: -------------- trunk/bindings/f95/CMakeLists.txt trunk/bindings/ocaml/CMakeLists.txt trunk/bindings/swig-support/CMakeLists.txt trunk/bindings/tcl/CMakeLists.txt trunk/cmake/modules/plplot.cmake trunk/doc/docbook/src/CMakeLists.txt Modified: trunk/bindings/f95/CMakeLists.txt =================================================================== --- trunk/bindings/f95/CMakeLists.txt 2014-02-20 20:49:23 UTC (rev 13015) +++ trunk/bindings/f95/CMakeLists.txt 2014-02-23 18:50:11 UTC (rev 13016) @@ -112,6 +112,7 @@ # Check consistency of plplot_parameters.h. add_custom_target( check_f95_parameters + ${CMAKE_COMMAND} -E echo "Check that bindings/f95/plplot_parameters.h is consistent with the #defines in bindings/swig-support/plplotcapi.i" COMMAND ${CMAKE_COMMAND} -E remove -f ${CMAKE_CURRENT_BINARY_DIR}/plplot_parameters.h_compare COMMAND @@ -119,12 +120,13 @@ ${CMAKE_SOURCE_DIR}/bindings/swig-support/plplotcapi.i > ${CMAKE_CURRENT_BINARY_DIR}/plplot_parameters.h_compare COMMAND - ${CMAKE_COMMAND} -E echo "Check that plplot_parameters.h is consistent with the #defines in bindings/swig-support/plplotcapi.i" COMMAND cmp ${CMAKE_CURRENT_SOURCE_DIR}/plplot_parameters.h ${CMAKE_CURRENT_BINARY_DIR}/plplot_parameters.h_compare ) + add_dependencies(check_all check_f95_parameters) + set(plplotf95${LIB_TAG}_LIB_SRCS strutil.f90 configurable.f90 Modified: trunk/bindings/ocaml/CMakeLists.txt =================================================================== --- trunk/bindings/ocaml/CMakeLists.txt 2014-02-20 20:49:23 UTC (rev 13015) +++ trunk/bindings/ocaml/CMakeLists.txt 2014-02-23 18:50:11 UTC (rev 13016) @@ -57,16 +57,15 @@ if(GENERATE_PLPLOT_H_INC) add_custom_target( check_plplot_h.inc - COMMAND - ${CMAKE_COMMAND} -E remove -f ${CMAKE_CURRENT_BINARY_DIR}/generated_plplot_h.inc - COMMAND - ${OCAML} ${CMAKE_CURRENT_SOURCE_DIR}/touchup.ml ${CMAKE_CURRENT_SOURCE_DIR}/plplot_h ${CMAKE_CURRENT_BINARY_DIR}/generated_plplot_h.inc - COMMAND - ${CMAKE_COMMAND} -E echo "Check that plplot_h.inc is consistent with touchup.ml and plplot_h" - COMMAND - cmp ${CMAKE_CURRENT_SOURCE_DIR}/plplot_h.inc ${CMAKE_CURRENT_BINARY_DIR}/generated_plplot_h.inc + COMMAND ${CMAKE_COMMAND} -E echo "Check that bindings/ocaml/plplot_h.inc is consistent with bindings/ocaml/touchup.ml and bindings/ocaml/plplot_h" + COMMAND ${CMAKE_COMMAND} -E remove -f ${CMAKE_CURRENT_BINARY_DIR}/generated_plplot_h.inc + COMMAND ${OCAML} ${CMAKE_CURRENT_SOURCE_DIR}/touchup.ml ${CMAKE_CURRENT_SOURCE_DIR}/plplot_h ${CMAKE_CURRENT_BINARY_DIR}/generated_plplot_h.inc + COMMAND cmp ${CMAKE_CURRENT_SOURCE_DIR}/plplot_h.inc ${CMAKE_CURRENT_BINARY_DIR}/generated_plplot_h.inc WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} ) + + add_dependencies(check_all check_plplot_h.inc) + endif(GENERATE_PLPLOT_H_INC) #Detailed CMake logic to build ocaml bindings for PLplot. Modified: trunk/bindings/swig-support/CMakeLists.txt =================================================================== --- trunk/bindings/swig-support/CMakeLists.txt 2014-02-20 20:49:23 UTC (rev 13015) +++ trunk/bindings/swig-support/CMakeLists.txt 2014-02-23 18:50:11 UTC (rev 13016) @@ -2,7 +2,7 @@ ### ### Process this file with cmake to produce Makefile ### -# Copyright (C) 2010 Alan W. Irwin +# Copyright (C) 2010-2014 Alan W. Irwin # # This file is part of PLplot. # @@ -24,6 +24,7 @@ if(PERL_XML_DOM AND PERL_XML_PARSER) add_custom_target( check_swig_documentation + COMMAND ${CMAKE_COMMAND} -E echo "Check that bindings/swig-support/swig_documentation.i is consistent with doc/docbook/src/api.xml" COMMAND ${CMAKE_COMMAND} -E remove -f ${CMAKE_CURRENT_BINARY_DIR}/swig_documentation.i_compare COMMAND ${PERL_EXECUTABLE} @@ -31,12 +32,13 @@ ${CMAKE_SOURCE_DIR}/doc/docbook/src/plplotdoc.xml.in ${CMAKE_SOURCE_DIR}/doc/docbook/src/api.xml ${CMAKE_CURRENT_BINARY_DIR}/swig_documentation.i_compare - COMMAND ${CMAKE_COMMAND} -E echo "Check that swig_documentation.i is consistent with doc/docbook/src/api.xml" COMMAND cmp ${CMAKE_CURRENT_SOURCE_DIR}/swig_documentation.i ${CMAKE_CURRENT_BINARY_DIR}/swig_documentation.i_compare ) - + + add_dependencies(check_all check_swig_documentation) + set(make_documentation_DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/plplot_octave_txt/${rep_doc} ) @@ -50,10 +52,13 @@ # Add (Unix) custom target to check numerical #defines in plplotcapi.i. add_custom_target( check_plplotcapi_defines + COMMAND ${CMAKE_COMMAND} -E echo "Check that numerical #defines in bindings/swig-support/plplotcapi.i are consistent with the numerical #defines in include/plplot.h" + COMMAND ${CMAKE_COMMAND} -E echo "An error for this target implies the numerical #defines section of bindings/swig-support/plplotcapi.i needs updating following the directions in that file" COMMAND ${CMAKE_COMMAND} -E remove -f ${CMAKE_CURRENT_BINARY_DIR}/generated_plplotcapi_defines COMMAND grep -E "^ *#define +[^ ]+ +[()-+0-9x]+" ${CMAKE_SOURCE_DIR}/include/plplot.h | grep -v plotsh3d > ${CMAKE_CURRENT_BINARY_DIR}/generated_plplotcapi_defines - COMMAND ${CMAKE_COMMAND} -E echo "Non-NULL diff results below (which will be accompanied by an error for this target) imply the numerical #defines section of bindings/swig-support/plplotcapi.i needs updating following the directions in that file" - COMMAND grep -E "^ *#define +[^ ]+ +[()-+0-9x]+" ${CMAKE_CURRENT_SOURCE_DIR}/plplotcapi.i | diff -auw - ${CMAKE_CURRENT_BINARY_DIR}/generated_plplotcapi_defines + COMMAND grep -E "^ *#define +[^ ]+ +[()-+0-9x]+" ${CMAKE_CURRENT_SOURCE_DIR}/plplotcapi.i | diff -qw - ${CMAKE_CURRENT_BINARY_DIR}/generated_plplotcapi_defines VERBATIM -) \ No newline at end of file +) + +add_dependencies(check_all check_plplotcapi_defines) Modified: trunk/bindings/tcl/CMakeLists.txt =================================================================== --- trunk/bindings/tcl/CMakeLists.txt 2014-02-20 20:49:23 UTC (rev 13015) +++ trunk/bindings/tcl/CMakeLists.txt 2014-02-23 18:50:11 UTC (rev 13016) @@ -23,6 +23,7 @@ # Check consistency of plplot_parameters.h. add_custom_target( check_tcl_parameters + ${CMAKE_COMMAND} -E echo "Check that bindings/tcl/plplot_parameters.h is consistent with the #defines in bindings/swig-support/plplotcapi.i" COMMAND ${CMAKE_COMMAND} -E remove -f ${CMAKE_CURRENT_BINARY_DIR}/plplot_parameters.h_compare COMMAND @@ -30,12 +31,13 @@ ${CMAKE_SOURCE_DIR}/bindings/swig-support/plplotcapi.i > ${CMAKE_CURRENT_BINARY_DIR}/plplot_parameters.h_compare COMMAND - ${CMAKE_COMMAND} -E echo "Check that plplot_parameters.h is consistent with the #defines in bindings/swig-support/plplotcapi.i" COMMAND cmp ${CMAKE_CURRENT_SOURCE_DIR}/plplot_parameters.h ${CMAKE_CURRENT_BINARY_DIR}/plplot_parameters.h_compare ) + add_dependencies(check_all check_tcl_parameters) + # tclmatrix set(tclmatrix${LIB_TAG}_LIB_SRCS tclMatrix.c Modified: trunk/cmake/modules/plplot.cmake =================================================================== --- trunk/cmake/modules/plplot.cmake 2014-02-20 20:49:23 UTC (rev 13015) +++ trunk/cmake/modules/plplot.cmake 2014-02-23 18:50:11 UTC (rev 13016) @@ -21,6 +21,9 @@ option(ADD_SPECIAL_CONSISTENCY_CHECKING "Add extra source-tree consistency checking targets that require special tools" OFF) +# target that depends on all check targets. +add_custom_target(check_all) + # libraries are all shared by default option(BUILD_SHARED_LIBS "Build shared libraries" ON) Modified: trunk/doc/docbook/src/CMakeLists.txt =================================================================== --- trunk/doc/docbook/src/CMakeLists.txt 2014-02-20 20:49:23 UTC (rev 13015) +++ trunk/doc/docbook/src/CMakeLists.txt 2014-02-23 18:50:11 UTC (rev 13016) @@ -36,8 +36,12 @@ find_program(API_XML_CONSISTENCY_CHECKER api.xml_consistency_checker) if(API_XML_CONSISTENCY_CHECKER) add_custom_target(check_api_xml_consistency + COMMAND ${CMAKE_COMMAND} -E echo "Check that doc/docbook/src/api.xml is consistent with include/plplot.h" COMMAND ${API_XML_CONSISTENCY_CHECKER} -header=${CMAKE_SOURCE_DIR}/include/plplot.h -incdir=${CMAKE_BINARY_DIR}/include -apixml=${CMAKE_SOURCE_DIR}/doc/docbook/src/api.xml ) + + add_dependencies(check_all check_api_xml_consistency) + else(API_XML_CONSISTENCY_CHECKER) message(STATUS "WARNING: cannot find the api.xml_consistency_checker application so cannot check the consistency of api.xml with plplot.h") endif(API_XML_CONSISTENCY_CHECKER) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ai...@us...> - 2014-02-23 21:14:24
|
Revision: 13018 http://sourceforge.net/p/plplot/code/13018 Author: airwin Date: 2014-02-23 21:14:19 +0000 (Sun, 23 Feb 2014) Log Message: ----------- As alluded to on list, drop use of keywords that potentially could be updated by svn. In this case remove $Revision, $Author, and $Date. Modified Paths: -------------- trunk/cmake/epa_build/libqhull/src/libqhull.h trunk/cmake/epa_build/libqhull/src/mem.h trunk/cmake/epa_build/libqhull/src/unix.c trunk/doc/docbook/src/plplotdoc.xml.in trunk/examples/c/plplotcanvas_animation.c trunk/examples/c/plplotcanvas_demo.c trunk/examples/python/plplotcanvas_animation.py trunk/examples/python/plplotcanvas_demo.py Modified: trunk/cmake/epa_build/libqhull/src/libqhull.h =================================================================== --- trunk/cmake/epa_build/libqhull/src/libqhull.h 2014-02-23 20:54:04 UTC (rev 13017) +++ trunk/cmake/epa_build/libqhull/src/libqhull.h 2014-02-23 21:14:19 UTC (rev 13018) @@ -7,8 +7,6 @@ see qh-qhull.htm, qhull_a.h copyright (c) 1993-2010 The Geometry Center. - $Id$$Change: 1172 $ - $DateTime: 2010/01/09 21:42:16 $$Author$ NOTE: access to qh_qh is via the 'qh' macro. This allows qh_qh to be either a pointer or a structure. An example Modified: trunk/cmake/epa_build/libqhull/src/mem.h =================================================================== --- trunk/cmake/epa_build/libqhull/src/mem.h 2014-02-23 20:54:04 UTC (rev 13017) +++ trunk/cmake/epa_build/libqhull/src/mem.h 2014-02-23 21:14:19 UTC (rev 13018) @@ -12,8 +12,6 @@ qh_errexit(qhmem_ERRqhull, NULL, NULL) otherwise copyright (c) 1993-2010 The Geometry Center. - $Id$$Change: 1164 $ - $DateTime: 2010/01/07 21:52:00 $$Author$ */ #ifndef qhDEFmem Modified: trunk/cmake/epa_build/libqhull/src/unix.c =================================================================== --- trunk/cmake/epa_build/libqhull/src/unix.c 2014-02-23 20:54:04 UTC (rev 13017) +++ trunk/cmake/epa_build/libqhull/src/unix.c 2014-02-23 21:14:19 UTC (rev 13018) @@ -8,8 +8,6 @@ see qh-qhull.htm copyright (c) 1993-2010 The Geometry Center. - $Id$$Change: 1164 $ - $DateTime: 2010/01/07 21:52:00 $$Author$ */ #include "libqhull.h" Modified: trunk/doc/docbook/src/plplotdoc.xml.in =================================================================== --- trunk/doc/docbook/src/plplotdoc.xml.in 2014-02-23 20:54:04 UTC (rev 13017) +++ trunk/doc/docbook/src/plplotdoc.xml.in 2014-02-23 21:14:19 UTC (rev 13018) @@ -43,7 +43,6 @@ <!DOCTYPE book PUBLIC "@DOCBOOK_DTD_PUBID@" "@DOCBOOK_DTD_SYSID@" [ <!ENTITY Project-Version "@PLPLOT_VERSION@"> -<!ENTITY Project-Date "$Date$"> <!ENTITY Release-Date "@RELEASE_DATE@"> <!ENTITY chap-intro SYSTEM "@CMAKE_CURRENT_SOURCE_DIR@/intro.xml"> Modified: trunk/examples/c/plplotcanvas_animation.c =================================================================== --- trunk/examples/c/plplotcanvas_animation.c 2014-02-23 20:54:04 UTC (rev 13017) +++ trunk/examples/c/plplotcanvas_animation.c 2014-02-23 21:14:19 UTC (rev 13018) @@ -8,12 +8,6 @@ // Department of Physics and Atmospheric Science, // Dalhousie University, Halifax, Nova Scotia, Canada, B3H 3J5 // -// $Author$ -// $Revision$ -// $Date$ -// $Name$ -// -// // NOTICE // // This program is free software; you can redistribute it and/or modify Modified: trunk/examples/c/plplotcanvas_demo.c =================================================================== --- trunk/examples/c/plplotcanvas_demo.c 2014-02-23 20:54:04 UTC (rev 13017) +++ trunk/examples/c/plplotcanvas_demo.c 2014-02-23 21:14:19 UTC (rev 13018) @@ -8,12 +8,6 @@ // Department of Physics and Atmospheric Science, // Dalhousie University, Halifax, Nova Scotia, Canada, B3H 3J5 // -// $Author$ -// $Revision$ -// $Date$ -// $Name$ -// -// // NOTICE // // This program is free software; you can redistribute it and/or modify Modified: trunk/examples/python/plplotcanvas_animation.py =================================================================== --- trunk/examples/python/plplotcanvas_animation.py 2014-02-23 20:54:04 UTC (rev 13017) +++ trunk/examples/python/plplotcanvas_animation.py 2014-02-23 21:14:19 UTC (rev 13018) @@ -9,12 +9,6 @@ Department of Physics and Atmospheric Science, Dalhousie University, Halifax, Nova Scotia, Canada, B3H 3J5 - $Author$ - $Revision$ - $Date$ - $Name$ - - NOTICE This program is free software; you can redistribute it and/or modify Modified: trunk/examples/python/plplotcanvas_demo.py =================================================================== --- trunk/examples/python/plplotcanvas_demo.py 2014-02-23 20:54:04 UTC (rev 13017) +++ trunk/examples/python/plplotcanvas_demo.py 2014-02-23 21:14:19 UTC (rev 13018) @@ -9,12 +9,6 @@ Department of Physics and Atmospheric Science, Dalhousie University, Halifax, Nova Scotia, Canada, B3H 3J5 - $Author$ - $Revision$ - $Date$ - $Name$ - - NOTICE This program is free software; you can redistribute it and/or modify This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ai...@us...> - 2014-02-24 20:07:32
|
Revision: 13019 http://sourceforge.net/p/plplot/code/13019 Author: airwin Date: 2014-02-24 20:06:57 +0000 (Mon, 24 Feb 2014) Log Message: ----------- As alluded to previously on list, remove $Id keyword from files and remove all svn:keywords properties and all "keywords" properties (historically set in error instead of svn:keywords) from files. This change should completely get rid of the previous issue that an svn commit would change some file contents and thus automatically (and unexpectedly) regenerate parts of the build. Tested on Linux using svn diff -x -w |grep '^[+-]' |grep -v Id |grep -v '+++' \ |grep -v '\-\-\-' |grep -v Copyright |less to check for editing errors. Tested on Linux using the test_interactive and test_noninteractive targets in the build tree for the shared libraries/dynamic devices case. This test should test most source code, but does not test documentation files for any editing mistakes where we must rely on the previous test. Modified Paths: -------------- trunk/bindings/ada/plplot.adb trunk/bindings/ada/plplot.ads trunk/bindings/ada/plplot_auxiliary.adb trunk/bindings/ada/plplot_auxiliary.ads trunk/bindings/ada/plplot_thin.adb trunk/bindings/ada/plplot_thin.ads trunk/bindings/ada/plplot_traditional.adb trunk/bindings/ada/plplot_traditional.ads trunk/bindings/c++/plstream.cc trunk/bindings/c++/plstream.h trunk/bindings/f95/configurable.f90 trunk/bindings/f95/plstubs.h trunk/bindings/f95/sc3d.c trunk/bindings/f95/sccont.c trunk/bindings/f95/scstubs.c trunk/bindings/f95/sfstubs.f90 trunk/bindings/f95/sfstubsf95.f90 trunk/bindings/f95/strutil.f90 trunk/bindings/tcl/matrixInit.c trunk/bindings/tcl/pkgIndex.tcl.in trunk/bindings/tcl/plapi.tpl trunk/bindings/tcl/plitclgen trunk/bindings/tcl/plitclgen.tcl trunk/bindings/tcl/pltcl.c trunk/bindings/tcl/pltcl.h trunk/bindings/tcl/pltclgen trunk/bindings/tcl/pltclgen.tcl trunk/bindings/tcl/tclAPI.c trunk/bindings/tcl/tclMain.c trunk/bindings/tcl/tclMatrix.c trunk/bindings/tcl/tclMatrix.h trunk/bindings/tk/FileSelector.tcl trunk/bindings/tk/PLWin.itk trunk/bindings/tk/PLXWin.itk trunk/bindings/tk/Pltk_Init.c trunk/bindings/tk/Pltkwin.tcl trunk/bindings/tk/about.tcl trunk/bindings/tk/help_gui.tcl trunk/bindings/tk/help_keys.tcl trunk/bindings/tk/help_tcltk.tcl trunk/bindings/tk/pkgIndex.tcl.in trunk/bindings/tk/plclient.tcl trunk/bindings/tk/plcolor.tcl trunk/bindings/tk/plconfig.tcl trunk/bindings/tk/pldefaults.tcl trunk/bindings/tk/plframe.c trunk/bindings/tk/plr.c trunk/bindings/tk/plserver.c trunk/bindings/tk/plserver.h trunk/bindings/tk/plserver.tcl trunk/bindings/tk/pltk.h trunk/bindings/tk/pltkd.h trunk/bindings/tk/pltools.tcl trunk/bindings/tk/plwidget.tcl trunk/bindings/tk/tcpip.c trunk/bindings/tk/tcpip.h trunk/bindings/tk/tkMain.c trunk/bindings/tk/tkshell.c trunk/bindings/tk-x-plat/Plplotter_Init.c trunk/bindings/tk-x-plat/Plwindow.tcl trunk/bindings/tk-x-plat/pkgIndex.tcl.in trunk/bindings/tk-x-plat/plplotter.c trunk/bindings/tk-x-plat/pltkwd.h trunk/bindings/tk-x-plat/plwidget2.tcl trunk/bindings/wxwidgets/wxPLplotstream.cpp trunk/bindings/wxwidgets/wxPLplotstream.h.in trunk/bindings/wxwidgets/wxPLplotwindow.cpp trunk/bindings/wxwidgets/wxPLplotwindow.h trunk/doc/docbook/README.developers trunk/doc/docbook/bin/api2man.pl.in trunk/doc/docbook/bin/api2swigdoc.pl trunk/doc/docbook/bin/api2text.pl trunk/drivers/cgm.c trunk/drivers/dg300.c trunk/drivers/gd.c trunk/drivers/hpgl.c trunk/drivers/impress.c trunk/drivers/linuxvga.c trunk/drivers/ljii.c trunk/drivers/ljiip.c trunk/drivers/mem.c trunk/drivers/ntk.c trunk/drivers/null.c trunk/drivers/pbm.c trunk/drivers/pdf.c trunk/drivers/plmeta.c trunk/drivers/ps.c trunk/drivers/pstex.c trunk/drivers/psttf.cc trunk/drivers/tek.c trunk/drivers/tk.c trunk/drivers/tkwin.c trunk/drivers/wingcc.c trunk/drivers/wxwidgets.cpp trunk/drivers/wxwidgets.h trunk/drivers/wxwidgets_agg.cpp trunk/drivers/wxwidgets_app.cpp trunk/drivers/wxwidgets_dc.cpp trunk/drivers/wxwidgets_gc.cpp trunk/drivers/xfig.c trunk/drivers/xwin.c trunk/examples/ada/x00_easy_a.adb trunk/examples/ada/x00a.adb trunk/examples/ada/x01a.adb trunk/examples/ada/x02a.adb trunk/examples/ada/x03a.adb trunk/examples/ada/x04a.adb trunk/examples/ada/x05a.adb trunk/examples/ada/x06a.adb trunk/examples/ada/x07a.adb trunk/examples/ada/x08a.adb trunk/examples/ada/x09a.adb trunk/examples/ada/x10a.adb trunk/examples/ada/x11a.adb trunk/examples/ada/x12a.adb trunk/examples/ada/x13a.adb trunk/examples/ada/x14a.adb trunk/examples/ada/x15a.adb trunk/examples/ada/x16a.adb trunk/examples/ada/x17a.adb trunk/examples/ada/x18a.adb trunk/examples/ada/x19a.adb trunk/examples/ada/x20a.adb trunk/examples/ada/x21a.adb trunk/examples/ada/x22a.adb trunk/examples/ada/x23a.adb trunk/examples/ada/x24a.adb trunk/examples/ada/x25a.adb trunk/examples/ada/x26a.adb trunk/examples/ada/x27a.adb trunk/examples/ada/x28a.adb trunk/examples/ada/x29a.adb trunk/examples/ada/x30a.adb trunk/examples/ada/x31a.adb trunk/examples/ada/x33a.adb trunk/examples/ada/xthick00a.adb trunk/examples/ada/xthick01a.adb trunk/examples/ada/xthick02a.adb trunk/examples/ada/xthick03a.adb trunk/examples/ada/xthick04a.adb trunk/examples/ada/xthick05a.adb trunk/examples/ada/xthick06a.adb trunk/examples/ada/xthick07a.adb trunk/examples/ada/xthick08a.adb trunk/examples/ada/xthick09a.adb trunk/examples/ada/xthick10a.adb trunk/examples/ada/xthick11a.adb trunk/examples/ada/xthick12a.adb trunk/examples/ada/xthick13a.adb trunk/examples/ada/xthick14a.adb trunk/examples/ada/xthick15a.adb trunk/examples/ada/xthick16a.adb trunk/examples/ada/xthick17a.adb trunk/examples/ada/xthick18a.adb trunk/examples/ada/xthick19a.adb trunk/examples/ada/xthick20a.adb trunk/examples/ada/xthick21a.adb trunk/examples/ada/xthick22a.adb trunk/examples/ada/xthick23a.adb trunk/examples/ada/xthick24a.adb trunk/examples/ada/xthick25a.adb trunk/examples/ada/xthick26a.adb trunk/examples/ada/xthick27a.adb trunk/examples/ada/xthick28a.adb trunk/examples/ada/xthick29a.adb trunk/examples/ada/xthick30a.adb trunk/examples/ada/xthick31a.adb trunk/examples/ada/xthick33a.adb trunk/examples/c/plcdemos.h trunk/examples/c/test_plend.c trunk/examples/c/tutor.c trunk/examples/c/x00c.c trunk/examples/c/x01c.c trunk/examples/c/x02c.c trunk/examples/c/x03c.c trunk/examples/c/x04c.c trunk/examples/c/x05c.c trunk/examples/c/x06c.c trunk/examples/c/x07c.c trunk/examples/c/x08c.c trunk/examples/c/x09c.c trunk/examples/c/x10c.c trunk/examples/c/x11c.c trunk/examples/c/x12c.c trunk/examples/c/x13c.c trunk/examples/c/x14c.c trunk/examples/c/x15c.c trunk/examples/c/x16c.c trunk/examples/c/x17c.c trunk/examples/c/x18c.c trunk/examples/c/x19c.c trunk/examples/c/x20c.c trunk/examples/c/x21c.c trunk/examples/c/x22c.c trunk/examples/c/x25c.c trunk/examples/c/x26c.c trunk/examples/c/x27c.c trunk/examples/c/x28c.c trunk/examples/c/x29c.c trunk/examples/c/x31c.c trunk/examples/c/x32c.c trunk/examples/c/x33c.c trunk/examples/c/x34c.c trunk/examples/c++/plc++demos.h trunk/examples/c++/wxPLplotDemo.cpp trunk/examples/c++/x00.cc trunk/examples/c++/x01.cc trunk/examples/c++/x01cc.cc trunk/examples/c++/x02.cc trunk/examples/c++/x03.cc trunk/examples/c++/x04.cc trunk/examples/c++/x05.cc trunk/examples/c++/x06.cc trunk/examples/c++/x07.cc trunk/examples/c++/x08.cc trunk/examples/c++/x09.cc trunk/examples/c++/x10.cc trunk/examples/c++/x11.cc trunk/examples/c++/x12.cc trunk/examples/c++/x13.cc trunk/examples/c++/x14.cc trunk/examples/c++/x15.cc trunk/examples/c++/x16.cc trunk/examples/c++/x17.cc trunk/examples/c++/x18.cc trunk/examples/c++/x19.cc trunk/examples/c++/x20.cc trunk/examples/c++/x21.cc trunk/examples/c++/x22.cc trunk/examples/c++/x23.cc trunk/examples/c++/x25.cc trunk/examples/c++/x26.cc trunk/examples/c++/x27.cc trunk/examples/c++/x28.cc trunk/examples/c++/x29.cc trunk/examples/c++/x30.cc trunk/examples/c++/x31.cc trunk/examples/c++/x33.cc trunk/examples/d/x00d.d trunk/examples/d/x01d.d trunk/examples/d/x02d.d trunk/examples/d/x03d.d trunk/examples/d/x04d.d trunk/examples/d/x05d.d trunk/examples/d/x06d.d trunk/examples/d/x07d.d trunk/examples/d/x08d.d trunk/examples/d/x09d.d trunk/examples/d/x10d.d trunk/examples/d/x11d.d trunk/examples/d/x12d.d trunk/examples/d/x13d.d trunk/examples/d/x14d.d trunk/examples/d/x15d.d trunk/examples/d/x16d.d trunk/examples/d/x17d.d trunk/examples/d/x18d.d trunk/examples/d/x19d.d trunk/examples/d/x20d.d trunk/examples/d/x21d.d trunk/examples/d/x22d.d trunk/examples/d/x23d.d trunk/examples/d/x24d.d trunk/examples/d/x25d.d trunk/examples/d/x26d.d trunk/examples/d/x27d.d trunk/examples/d/x28d.d trunk/examples/d/x29d.d trunk/examples/d/x30d.d trunk/examples/d/x31d.d trunk/examples/d/x33d.d trunk/examples/f95/plf95demolib.f90 trunk/examples/f95/x00f.f90 trunk/examples/f95/x01f.f90 trunk/examples/f95/x02f.f90 trunk/examples/f95/x03f.f90 trunk/examples/f95/x04f.f90 trunk/examples/f95/x05f.f90 trunk/examples/f95/x06f.f90 trunk/examples/f95/x07f.f90 trunk/examples/f95/x08f.f90 trunk/examples/f95/x09f.f90 trunk/examples/f95/x10f.f90 trunk/examples/f95/x11f.f90 trunk/examples/f95/x12f.f90 trunk/examples/f95/x13f.f90 trunk/examples/f95/x14f.f90 trunk/examples/f95/x15f.f90 trunk/examples/f95/x16af.f90 trunk/examples/f95/x16f.f90 trunk/examples/f95/x17f.f90 trunk/examples/f95/x18f.f90 trunk/examples/f95/x19f.f90 trunk/examples/f95/x20f.f90 trunk/examples/f95/x21f.f90 trunk/examples/f95/x22f.f90 trunk/examples/f95/x23f.f90 trunk/examples/f95/x24f.f90 trunk/examples/f95/x25f.f90 trunk/examples/f95/x26f.f90 trunk/examples/f95/x27f.f90 trunk/examples/f95/x28f.f90 trunk/examples/f95/x29f.f90 trunk/examples/f95/x30f.f90 trunk/examples/f95/x31f.f90 trunk/examples/f95/x33f.f90 trunk/examples/java/x00.java trunk/examples/java/x01.java trunk/examples/java/x02.java trunk/examples/java/x03.java trunk/examples/java/x04.java trunk/examples/java/x05.java trunk/examples/java/x06.java trunk/examples/java/x07.java trunk/examples/java/x08.java trunk/examples/java/x09.java trunk/examples/java/x10.java trunk/examples/java/x11.java trunk/examples/java/x12.java trunk/examples/java/x13.java trunk/examples/java/x14.java trunk/examples/java/x15.java trunk/examples/java/x16.java trunk/examples/java/x17.java trunk/examples/java/x18.java trunk/examples/java/x19.java trunk/examples/java/x20.java trunk/examples/java/x21.java trunk/examples/java/x22.java trunk/examples/java/x23.java trunk/examples/java/x24.java trunk/examples/java/x25.java trunk/examples/java/x26.java trunk/examples/java/x27.java trunk/examples/java/x28.java trunk/examples/java/x29.java trunk/examples/java/x30.java trunk/examples/java/x31.java trunk/examples/java/x33.java trunk/examples/lua/x00.lua trunk/examples/lua/x01.lua trunk/examples/lua/x02.lua trunk/examples/lua/x03.lua trunk/examples/lua/x04.lua trunk/examples/lua/x05.lua trunk/examples/lua/x06.lua trunk/examples/lua/x07.lua trunk/examples/lua/x08.lua trunk/examples/lua/x09.lua trunk/examples/lua/x10.lua trunk/examples/lua/x11.lua trunk/examples/lua/x12.lua trunk/examples/lua/x13.lua trunk/examples/lua/x14.lua trunk/examples/lua/x15.lua trunk/examples/lua/x16.lua trunk/examples/lua/x17.lua trunk/examples/lua/x18.lua trunk/examples/lua/x19.lua trunk/examples/lua/x20.lua trunk/examples/lua/x21.lua trunk/examples/lua/x22.lua trunk/examples/lua/x23.lua trunk/examples/lua/x24.lua trunk/examples/lua/x25.lua trunk/examples/lua/x26.lua trunk/examples/lua/x27.lua trunk/examples/lua/x28.lua trunk/examples/lua/x29.lua trunk/examples/lua/x30.lua trunk/examples/lua/x31.lua trunk/examples/lua/x33.lua trunk/examples/ocaml/x00.ml trunk/examples/ocaml/x01.ml trunk/examples/ocaml/x02.ml trunk/examples/ocaml/x03.ml trunk/examples/ocaml/x04.ml trunk/examples/ocaml/x05.ml trunk/examples/ocaml/x06.ml trunk/examples/ocaml/x07.ml trunk/examples/ocaml/x08.ml trunk/examples/ocaml/x09.ml trunk/examples/ocaml/x10.ml trunk/examples/ocaml/x11.ml trunk/examples/ocaml/x12.ml trunk/examples/ocaml/x13.ml trunk/examples/ocaml/x14.ml trunk/examples/ocaml/x15.ml trunk/examples/ocaml/x16.ml trunk/examples/ocaml/x17.ml trunk/examples/ocaml/x18.ml trunk/examples/ocaml/x20.ml trunk/examples/ocaml/x21.ml trunk/examples/ocaml/x22.ml trunk/examples/ocaml/x25.ml trunk/examples/ocaml/x26.ml trunk/examples/ocaml/x27.ml trunk/examples/ocaml/x28.ml trunk/examples/ocaml/x29.ml trunk/examples/ocaml/x31.ml trunk/examples/ocaml/x33.ml trunk/examples/ocaml/x34.ml trunk/examples/octave/x00c.m trunk/examples/octave/x20c.m trunk/examples/octave/x21c.m trunk/examples/octave/x23c.m trunk/examples/octave/x24c.m trunk/examples/octave/x25c.m trunk/examples/octave/x26c.m trunk/examples/octave/x27c.m trunk/examples/octave/x28c.m trunk/examples/octave/x29c.m trunk/examples/octave/x30c.m trunk/examples/octave/x31c.m trunk/examples/octave/x33c.m trunk/examples/perl/x26.pl trunk/examples/perl/x27.pl trunk/examples/perl/x33.pl trunk/examples/python/test_hebrew_diacritic.py trunk/examples/python/test_type1.py trunk/examples/python/xw00.py trunk/examples/python/xw01.py trunk/examples/python/xw02.py trunk/examples/python/xw03.py trunk/examples/python/xw04.py trunk/examples/python/xw05.py trunk/examples/python/xw06.py trunk/examples/python/xw07.py trunk/examples/python/xw08.py trunk/examples/python/xw09.py trunk/examples/python/xw10.py trunk/examples/python/xw11.py trunk/examples/python/xw12.py trunk/examples/python/xw13.py trunk/examples/python/xw14.py trunk/examples/python/xw15.py trunk/examples/python/xw16.py trunk/examples/python/xw17.py trunk/examples/python/xw18.py trunk/examples/python/xw19.py trunk/examples/python/xw20.py trunk/examples/python/xw21.py trunk/examples/python/xw22.py trunk/examples/python/xw23.py trunk/examples/python/xw24.py trunk/examples/python/xw25.py trunk/examples/python/xw26.py trunk/examples/python/xw27.py trunk/examples/python/xw28.py trunk/examples/python/xw29.py trunk/examples/python/xw30.py trunk/examples/python/xw31.py trunk/examples/python/xw33.py trunk/examples/tcl/plgrid.tcl trunk/examples/tcl/plot.tcl trunk/examples/tcl/tcldemos.tcl trunk/examples/tcl/x00 trunk/examples/tcl/x00.tcl trunk/examples/tcl/x01 trunk/examples/tcl/x01.tcl trunk/examples/tcl/x02 trunk/examples/tcl/x02.tcl trunk/examples/tcl/x03 trunk/examples/tcl/x03.tcl trunk/examples/tcl/x04 trunk/examples/tcl/x04.tcl trunk/examples/tcl/x05 trunk/examples/tcl/x05.tcl trunk/examples/tcl/x06 trunk/examples/tcl/x06.tcl trunk/examples/tcl/x07 trunk/examples/tcl/x07.tcl trunk/examples/tcl/x08 trunk/examples/tcl/x08.tcl trunk/examples/tcl/x09 trunk/examples/tcl/x09.tcl trunk/examples/tcl/x10 trunk/examples/tcl/x10.tcl trunk/examples/tcl/x11 trunk/examples/tcl/x11.tcl trunk/examples/tcl/x12 trunk/examples/tcl/x12.tcl trunk/examples/tcl/x13 trunk/examples/tcl/x13.tcl trunk/examples/tcl/x14 trunk/examples/tcl/x14.tcl trunk/examples/tcl/x15 trunk/examples/tcl/x15.tcl trunk/examples/tcl/x16 trunk/examples/tcl/x16.tcl trunk/examples/tcl/x17 trunk/examples/tcl/x17.tcl trunk/examples/tcl/x18 trunk/examples/tcl/x18.tcl trunk/examples/tcl/x19 trunk/examples/tcl/x19.tcl trunk/examples/tcl/x20 trunk/examples/tcl/x20.tcl trunk/examples/tcl/x21 trunk/examples/tcl/x21.tcl trunk/examples/tcl/x22 trunk/examples/tcl/x22.tcl trunk/examples/tcl/x23 trunk/examples/tcl/x23.tcl trunk/examples/tcl/x24 trunk/examples/tcl/x24.tcl trunk/examples/tcl/x25 trunk/examples/tcl/x25.tcl trunk/examples/tcl/x26 trunk/examples/tcl/x26.tcl trunk/examples/tcl/x27 trunk/examples/tcl/x27.tcl trunk/examples/tcl/x28 trunk/examples/tcl/x28.tcl trunk/examples/tcl/x29 trunk/examples/tcl/x29.tcl trunk/examples/tcl/x30 trunk/examples/tcl/x31 trunk/examples/tcl/x31.tcl trunk/examples/tcl/x33 trunk/examples/tcl/x33.tcl trunk/examples/tk/tk01.in trunk/examples/tk/tk02.in trunk/examples/tk/tk03.in trunk/examples/tk/tk04.in trunk/examples/tk/tkdemos.tcl trunk/examples/tk/xtk01.c trunk/examples/tk/xtk02.c trunk/examples/tk/xtk04.c trunk/fonts/font01.c trunk/fonts/font02.c trunk/fonts/font03.c trunk/fonts/font04.c trunk/fonts/font05.c trunk/fonts/font06.c trunk/fonts/font07.c trunk/fonts/font08.c trunk/fonts/font09.c trunk/fonts/font10.c trunk/fonts/font11.c trunk/fonts/plhershey-unicode-gen.c trunk/fonts/stndfont.c trunk/fonts/xtndfont.c trunk/include/disptab.h trunk/include/drivers.h trunk/include/ltdl_win32.h trunk/include/metadefs.h trunk/include/pdf.h trunk/include/plConfig.h.in trunk/include/plDevs.h.in trunk/include/plcore.h trunk/include/pldebug.h trunk/include/plevent.h trunk/include/plfreetype.h trunk/include/plplot.h trunk/include/plplotP.h trunk/include/plstrm.h trunk/include/plxwd.h trunk/lib/qsastime/deltaT-gen.c trunk/lib/qsastime/tai-utc-gen.c trunk/pkgcfg/README trunk/plplot_test/plplot-test-interactive.sh.in trunk/plplot_test/plplot-test.sh.in trunk/scripts/make_tarball.sh trunk/scripts/mklinks trunk/scripts/mktclIndex trunk/scripts/parity_bit_check.sh trunk/scripts/plm2gif trunk/scripts/style_source.sh trunk/src/ltdl_win32.c trunk/src/plaffine.c trunk/src/plargs.c trunk/src/plbox.c trunk/src/plbuf.c trunk/src/plcont.c trunk/src/plcore.c trunk/src/plctrl.c trunk/src/plcvt.c trunk/src/pldeprecated.c trunk/src/pldtik.c trunk/src/plf2ops.c trunk/src/plfill.c trunk/src/plfreetype.c trunk/src/plgradient.c trunk/src/plgridd.c trunk/src/plhist.c trunk/src/pllegend.c trunk/src/plline.c trunk/src/plmap.c trunk/src/plot3d.c trunk/src/plpage.c trunk/src/plsdef.c trunk/src/plshade.c trunk/src/plstdio.c trunk/src/plstripc.c trunk/src/plsym.c trunk/src/pltick.c trunk/src/pltime.c trunk/src/plvect.c trunk/src/plvpor.c trunk/src/plwind.c trunk/sys/win-tk/plConfig.h trunk/sys/win-tk/plDevs.h trunk/utils/plrender.c trunk/utils/pltek.c trunk/utils/tektest.c trunk/utils/xform.c trunk/www/README trunk/www/announce/announce-plplot-5.3.0.xml trunk/www/announce/announce-plplot-5.3.1.xml Property Changed: ---------------- trunk/ABOUT trunk/AUTHORS trunk/CMakeLists.txt trunk/COPYING.LIB trunk/ChangeLog.release trunk/Copyright trunk/FAQ trunk/INSTALL trunk/NEWS trunk/OLD-NEWS trunk/OLD-README.release trunk/OLDER-NEWS trunk/PROBLEMS trunk/README trunk/README.Release_Manager_Cookbook trunk/README.developers trunk/README.emacs trunk/README.release trunk/SERVICE trunk/ToDo trunk/bindings/CMakeLists.txt trunk/bindings/ada/CMakeLists.txt trunk/bindings/ada/plplot.adb trunk/bindings/ada/plplot.ads trunk/bindings/ada/plplot_auxiliary.adb trunk/bindings/ada/plplot_auxiliary.ads trunk/bindings/ada/plplot_thin.adb trunk/bindings/ada/plplot_thin.ads trunk/bindings/ada/plplot_traditional.adb trunk/bindings/ada/plplot_traditional.ads trunk/bindings/c++/CMakeLists.txt trunk/bindings/c++/plstream.cc trunk/bindings/c++/plstream.h trunk/bindings/d/CMakeLists.txt trunk/bindings/d/plplot.d trunk/bindings/f95/CMakeLists.txt trunk/bindings/f95/configurable.f90 trunk/bindings/f95/plplot_parameters.h trunk/bindings/f95/plplotf95.def trunk/bindings/f95/plplotf95_mingw.def trunk/bindings/f95/plstubs.h trunk/bindings/f95/readme_f95.txt trunk/bindings/f95/sc3d.c trunk/bindings/f95/sccont.c trunk/bindings/f95/scstubs.c trunk/bindings/f95/sfstubs.f90 trunk/bindings/f95/sfstubsf95.f90 trunk/bindings/f95/strutil.f90 trunk/bindings/gnome2/CMakeLists.txt trunk/bindings/gnome2/README trunk/bindings/gnome2/lib/CMakeLists.txt trunk/bindings/gnome2/lib/gcw-lib.c trunk/bindings/gnome2/lib/plplotcanvas.c trunk/bindings/gnome2/python/CMakeLists.txt trunk/bindings/gnome2/python/README trunk/bindings/gnome2/python/cplplotcanvas.override trunk/bindings/gnome2/python/cplplotcanvasmodule.c trunk/bindings/gnome2/python/gcw.override trunk/bindings/gnome2/python/gcwmodule.c trunk/bindings/gnome2/python/plplotcanvas.py trunk/bindings/java/CMakeLists.txt trunk/bindings/java/PLCallbackCT.java trunk/bindings/java/PLCallbackMapform.java trunk/bindings/java/PLStream.java trunk/bindings/java/README.javaAPI trunk/bindings/java/config.java.in trunk/bindings/java/plplotjavac.i trunk/bindings/lua/CMakeLists.txt trunk/bindings/lua/plplotluac.i trunk/bindings/ocaml/CMakeLists.txt trunk/bindings/ocaml/META.in trunk/bindings/ocaml/README trunk/bindings/ocaml/plplot_h trunk/bindings/ocaml/plplot_h.inc trunk/bindings/ocaml/plplot_impl.c trunk/bindings/ocaml/touchup.ml trunk/bindings/octave/BUGS trunk/bindings/octave/CMakeLists.txt trunk/bindings/octave/FGA trunk/bindings/octave/INSTALL trunk/bindings/octave/PLplot/CMakeLists.txt trunk/bindings/octave/PLplot/arrow.m trunk/bindings/octave/PLplot/arrows.m trunk/bindings/octave/PLplot/autostyle.m trunk/bindings/octave/PLplot/axis.m trunk/bindings/octave/PLplot/axis_set.m trunk/bindings/octave/PLplot/bgr.m trunk/bindings/octave/PLplot/blue.m trunk/bindings/octave/PLplot/bone.m trunk/bindings/octave/PLplot/bottom_title.m trunk/bindings/octave/PLplot/clip.m trunk/bindings/octave/PLplot/closeallfig.m trunk/bindings/octave/PLplot/closefig.m trunk/bindings/octave/PLplot/colormap.m trunk/bindings/octave/PLplot/comet.m trunk/bindings/octave/PLplot/contour.m trunk/bindings/octave/PLplot/cool.m trunk/bindings/octave/PLplot/copper.m trunk/bindings/octave/PLplot/drawnow.m trunk/bindings/octave/PLplot/fig.m trunk/bindings/octave/PLplot/fig_raise.m trunk/bindings/octave/PLplot/fig_state.m trunk/bindings/octave/PLplot/figure.m trunk/bindings/octave/PLplot/fill.m trunk/bindings/octave/PLplot/free_fig.m trunk/bindings/octave/PLplot/ginput.m trunk/bindings/octave/PLplot/green.m trunk/bindings/octave/PLplot/grid.m trunk/bindings/octave/PLplot/griddata.m trunk/bindings/octave/PLplot/gtext.m trunk/bindings/octave/PLplot/hls2rgb.m trunk/bindings/octave/PLplot/hot.m trunk/bindings/octave/PLplot/hsv.m trunk/bindings/octave/PLplot/label_plot.m trunk/bindings/octave/PLplot/legend.m trunk/bindings/octave/PLplot/loglog.m trunk/bindings/octave/PLplot/lp_setup.m trunk/bindings/octave/PLplot/mesh.m trunk/bindings/octave/PLplot/meshc.m trunk/bindings/octave/PLplot/meshz.m trunk/bindings/octave/PLplot/mplot.m trunk/bindings/octave/PLplot/multiplot.m trunk/bindings/octave/PLplot/oneplot.m trunk/bindings/octave/PLplot/peaks.m trunk/bindings/octave/PLplot/pink.m trunk/bindings/octave/PLplot/plclearplot.m trunk/bindings/octave/PLplot/plclg.m trunk/bindings/octave/PLplot/plcolormap.m trunk/bindings/octave/PLplot/pldef.m trunk/bindings/octave/PLplot/plimage.m trunk/bindings/octave/PLplot/plot.m trunk/bindings/octave/PLplot/plot3.m trunk/bindings/octave/PLplot/plot_border.m trunk/bindings/octave/PLplot/plot_margin.m trunk/bindings/octave/PLplot/plplot_octave_path.m.in trunk/bindings/octave/PLplot/plrb.m trunk/bindings/octave/PLplot/plsetopt.m trunk/bindings/octave/PLplot/polar.m trunk/bindings/octave/PLplot/prism.m trunk/bindings/octave/PLplot/red.m trunk/bindings/octave/PLplot/rgb2hls.m trunk/bindings/octave/PLplot/rgbplot.m trunk/bindings/octave/PLplot/save_fig.m trunk/bindings/octave/PLplot/semilogx.m trunk/bindings/octave/PLplot/semilogy.m trunk/bindings/octave/PLplot/set_view.m trunk/bindings/octave/PLplot/shade.m trunk/bindings/octave/PLplot/shading.m trunk/bindings/octave/PLplot/shg.m trunk/bindings/octave/PLplot/stopdraw.m trunk/bindings/octave/PLplot/stripc.m trunk/bindings/octave/PLplot/stripc_add.m trunk/bindings/octave/PLplot/stripc_del.m trunk/bindings/octave/PLplot/struct_contains.m trunk/bindings/octave/PLplot/subplot.m trunk/bindings/octave/PLplot/subwindow.m trunk/bindings/octave/PLplot/support/CMakeLists.txt trunk/bindings/octave/PLplot/support/__comet.m trunk/bindings/octave/PLplot/support/__pl_contour.m trunk/bindings/octave/PLplot/support/__pl_draw_legend.m trunk/bindings/octave/PLplot/support/__pl_fill.m trunk/bindings/octave/PLplot/support/__pl_init.m trunk/bindings/octave/PLplot/support/__pl_logplotit.m trunk/bindings/octave/PLplot/support/__pl_matstr.m trunk/bindings/octave/PLplot/support/__pl_mesh.m trunk/bindings/octave/PLplot/support/__pl_meshplotit.m trunk/bindings/octave/PLplot/support/__pl_opt.m trunk/bindings/octave/PLplot/support/__pl_plenv.m trunk/bindings/octave/PLplot/support/__pl_plot3.m trunk/bindings/octave/PLplot/support/__pl_plotit.m trunk/bindings/octave/PLplot/support/__pl_polargrid.m trunk/bindings/octave/PLplot/support/__pl_store.m trunk/bindings/octave/PLplot/support/__plr1__.m trunk/bindings/octave/PLplot/support/__plr2__.m trunk/bindings/octave/PLplot/support/__plr__.m trunk/bindings/octave/PLplot/support/__plt1__.m trunk/bindings/octave/PLplot/support/__plt2__.m trunk/bindings/octave/PLplot/support/__plt2mm__.m trunk/bindings/octave/PLplot/support/__plt2mv__.m trunk/bindings/octave/PLplot/support/__plt2ss__.m trunk/bindings/octave/PLplot/support/__plt2vm__.m trunk/bindings/octave/PLplot/support/__plt2vv__.m trunk/bindings/octave/PLplot/support/__plt__.m trunk/bindings/octave/PLplot/support/is_strmatrix.m trunk/bindings/octave/PLplot/support/is_strvector.m trunk/bindings/octave/PLplot/surf.m trunk/bindings/octave/PLplot/surfc.m trunk/bindings/octave/PLplot/surfl.m trunk/bindings/octave/PLplot/tdeblank.m trunk/bindings/octave/PLplot/text.m trunk/bindings/octave/PLplot/title.m trunk/bindings/octave/PLplot/toggle_plplot_use.m trunk/bindings/octave/PLplot/top_title.m trunk/bindings/octave/PLplot/use_plplot.m trunk/bindings/octave/PLplot/xlabel.m trunk/bindings/octave/PLplot/xticks.m trunk/bindings/octave/PLplot/ylabel.m trunk/bindings/octave/PLplot/yticks.m trunk/bindings/octave/PLplot/zlabel.m trunk/bindings/octave/PLplot/zoom.m trunk/bindings/octave/README trunk/bindings/octave/ToDo trunk/bindings/octave/USAGE trunk/bindings/octave/etc/plplot.doc trunk/bindings/octave/globals-in-scripts trunk/bindings/octave/massage.c trunk/bindings/octave/misc/CMakeLists.txt trunk/bindings/octave/misc/diffn.m trunk/bindings/octave/misc/gradn.m trunk/bindings/octave/misc/rosenbrock.m trunk/bindings/octave/octaverc.in trunk/bindings/octave/plplot_stub_hand_crafted.m trunk/bindings/python/CMakeLists.txt trunk/bindings/python/Plframe.py trunk/bindings/python/README.pythonbuild trunk/bindings/python/TclSup.py trunk/bindings/python/fragments.i trunk/bindings/python/makedocstrings.py trunk/bindings/python/plplot_widgetmodule.c trunk/bindings/python/plplotcmodule.i trunk/bindings/qt_gui/plqt.cpp trunk/bindings/swig-support/plplotcapi.i trunk/bindings/tcl/CMakeLists.txt trunk/bindings/tcl/README.tclAPI trunk/bindings/tcl/matrixInit.c trunk/bindings/tcl/pkgIndex.tcl.in trunk/bindings/tcl/plapi.tpl trunk/bindings/tcl/plitclgen trunk/bindings/tcl/plplot_parameters.h trunk/bindings/tcl/pltcl.c trunk/bindings/tcl/pltcl.h trunk/bindings/tcl/pltclgen trunk/bindings/tcl/pltclgen.tcl trunk/bindings/tcl/tclAPI.c trunk/bindings/tcl/tclMain.c trunk/bindings/tcl/tclMatrix.c trunk/bindings/tcl/tclMatrix.h trunk/bindings/tcl/tclcmd.tpl trunk/bindings/tk/CMakeLists.txt trunk/bindings/tk/FileSelector.tcl trunk/bindings/tk/PLWin.itk trunk/bindings/tk/PLXWin.itk trunk/bindings/tk/Pltk_Init.c trunk/bindings/tk/Pltkwin.tcl trunk/bindings/tk/about.tcl trunk/bindings/tk/app-defaults/PLplot.large.ad trunk/bindings/tk/app-defaults/PLplot.medium.ad trunk/bindings/tk/app-defaults/PLplot.small.ad trunk/bindings/tk/app-defaults/README trunk/bindings/tk/cmap0a.pal trunk/bindings/tk/cmap1a.pal trunk/bindings/tk/cmap1a1.pal trunk/bindings/tk/cmap1b.pal trunk/bindings/tk/cmap1c.pal trunk/bindings/tk/cmap1d.pal trunk/bindings/tk/help_gui.tcl trunk/bindings/tk/help_keys.tcl trunk/bindings/tk/help_tcltk.tcl trunk/bindings/tk/pkgIndex.tcl.in trunk/bindings/tk/plclient.tcl trunk/bindings/tk/plcolor.tcl trunk/bindings/tk/plconfig.tcl trunk/bindings/tk/pldefaults.tcl trunk/bindings/tk/plframe.c trunk/bindings/tk/plplot.tcl trunk/bindings/tk/plr.c trunk/bindings/tk/plserver.c trunk/bindings/tk/plserver.h trunk/bindings/tk/plserver.tcl trunk/bindings/tk/pltk.h trunk/bindings/tk/pltkd.h trunk/bindings/tk/pltools.tcl trunk/bindings/tk/plwidget.tcl trunk/bindings/tk/stupidtk.c trunk/bindings/tk/tcpip.c trunk/bindings/tk/tcpip.h trunk/bindings/tk/tkMain.c trunk/bindings/tk/tkshell.c trunk/bindings/tk-x-plat/CMakeLists.txt trunk/bindings/tk-x-plat/Memberscope.tcl trunk/bindings/tk-x-plat/Plplotter_Init.c trunk/bindings/tk-x-plat/Plplotwin.tcl trunk/bindings/tk-x-plat/Plwindow.tcl trunk/bindings/tk-x-plat/pkgIndex.tcl.in trunk/bindings/tk-x-plat/plbarchart.tcl trunk/bindings/tk-x-plat/plplotter.c trunk/bindings/tk-x-plat/pltimeseries.tcl trunk/bindings/tk-x-plat/pltkwd.h trunk/bindings/tk-x-plat/plwidget2.tcl trunk/bindings/tk-x-plat/tclIndex trunk/bindings/wxwidgets/CMakeLists.txt trunk/bindings/wxwidgets/wxPLplotstream.cpp trunk/bindings/wxwidgets/wxPLplotstream.h.in trunk/bindings/wxwidgets/wxPLplotwindow.cpp trunk/bindings/wxwidgets/wxPLplotwindow.h trunk/cmake/FindPLplot.cmake trunk/cmake/README.cmake_doc trunk/cmake/UserOverride.cmake trunk/cmake/epa_build/gtk_transform.py trunk/cmake/epa_build/gtk_xml_recursive_process.py trunk/cmake/epa_build/libagg/libagg_CMakeLists.txt trunk/cmake/epa_build/libqhull/src/CMakeLists.txt trunk/cmake/epa_build/libqhull/src/libqhull.h trunk/cmake/epa_build/libqhull/src/mem.h trunk/cmake/epa_build/libqhull/src/unix.c trunk/cmake/epa_build/setup/setup_linux_makefiles trunk/cmake/epa_build/update_added_packages.sh trunk/cmake/epa_build/update_pango_packages.sh trunk/cmake/epa_build/xmlcatalog_wrapper.sh trunk/cmake/modules/CheckDIRSymbolExists.cmake trunk/cmake/modules/CheckDTD.cmake trunk/cmake/modules/CheckPerlModules.cmake trunk/cmake/modules/CheckPrototypeExists.cmake trunk/cmake/modules/FindAGG.cmake trunk/cmake/modules/FindAQT.cmake trunk/cmake/modules/FindFreetype.cmake trunk/cmake/modules/FindGD.cmake trunk/cmake/modules/FindLTDL.cmake trunk/cmake/modules/FindQHULL.cmake trunk/cmake/modules/FindSWIG.cmake trunk/cmake/modules/FindVGA.cmake trunk/cmake/modules/Findhpdf.cmake trunk/cmake/modules/TestBrokenIsnanCXX.cmake trunk/cmake/modules/TestBrokenIsnanCXX.cxx trunk/cmake/modules/TestForHighBitCharacters.c trunk/cmake/modules/TestForHighBitCharacters.cmake trunk/cmake/modules/TestForNamespace.cmake trunk/cmake/modules/TestForNamespace.cxx trunk/cmake/modules/TestForStandardHeaderwait.cmake trunk/cmake/modules/TestForStdintCXX.cmake trunk/cmake/modules/TestForStdintCXX.cxx trunk/cmake/modules/TestFortranIsnan.cmake trunk/cmake/modules/TestFortranIsnan.f trunk/cmake/modules/TestNaNAware.c trunk/cmake/modules/TestSignalType.c trunk/cmake/modules/TestSignalType.cmake trunk/cmake/modules/ada.cmake trunk/cmake/modules/agg.cmake trunk/cmake/modules/aqt.cmake trunk/cmake/modules/c++.cmake trunk/cmake/modules/cairo.cmake trunk/cmake/modules/cgm.cmake trunk/cmake/modules/csiro.cmake trunk/cmake/modules/d.cmake trunk/cmake/modules/docbook.cmake trunk/cmake/modules/double.cmake trunk/cmake/modules/drivers-finish.cmake trunk/cmake/modules/drivers-init.cmake trunk/cmake/modules/drivers.cmake trunk/cmake/modules/fortran.cmake trunk/cmake/modules/freetype.cmake trunk/cmake/modules/gcw.cmake trunk/cmake/modules/gd.cmake trunk/cmake/modules/instdirs.cmake trunk/cmake/modules/java.cmake trunk/cmake/modules/language_support/cmake/CMakeAdaCompiler.cmake.in trunk/cmake/modules/language_support/cmake/CMakeAdaInformation.cmake trunk/cmake/modules/language_support/cmake/CMakeDCompiler.cmake.in trunk/cmake/modules/language_support/cmake/CMakeDInformation.cmake trunk/cmake/modules/language_support/cmake/CMakeD_Copyright.txt trunk/cmake/modules/language_support/cmake/CMakeDetermineAdaCompiler.cmake trunk/cmake/modules/language_support/cmake/CMakeDetermineDCompiler.cmake trunk/cmake/modules/language_support/cmake/CMakeTestAdaCompiler.cmake trunk/cmake/modules/language_support/cmake/CMakeTestDCompiler.cmake trunk/cmake/modules/language_support/cmake/Platform/Linux-dmd.cmake trunk/cmake/modules/language_support/cmake/Platform/Linux-gdc.cmake trunk/cmake/modules/language_support/cmake/Platform/Windows-dmd.cmake trunk/cmake/modules/language_support/cmake/Platform/Windows-gdc.cmake trunk/cmake/modules/linuxvga.cmake trunk/cmake/modules/lua.cmake trunk/cmake/modules/ocaml.cmake trunk/cmake/modules/octave.cmake trunk/cmake/modules/pango.cmake trunk/cmake/modules/pdf.cmake trunk/cmake/modules/pdl.cmake trunk/cmake/modules/pkg-config.cmake trunk/cmake/modules/plplot.cmake trunk/cmake/modules/plplot_version.cmake trunk/cmake/modules/pstex.cmake trunk/cmake/modules/psttf.cmake trunk/cmake/modules/python.cmake trunk/cmake/modules/rpath.cmake trunk/cmake/modules/summary.cmake trunk/cmake/modules/tcl-related.cmake trunk/cmake/modules/tk.cmake trunk/cmake/modules/wingcc.cmake trunk/cmake/modules/wxwidgets.cmake trunk/cmake/modules/xwin.cmake trunk/data/.dummy trunk/data/CMakeLists.txt trunk/debian/README.Debian trunk/debian/Release trunk/debian/TODO trunk/debian/changelog trunk/debian/compat trunk/debian/control.in trunk/debian/copyright trunk/debian/get-upstream-version.pl trunk/debian/index.html.in trunk/debian/install-www.sh trunk/debian/libcsiro0.files trunk/debian/libplplot-c++11.files trunk/debian/libplplot-dev.files trunk/debian/libplplot-fortran10.files trunk/debian/libplplot-java.files trunk/debian/libplplot12.files trunk/debian/make-cvs-release.sh trunk/debian/octave-plplot.files trunk/debian/plplot-doc.doc-base trunk/debian/plplot-doc.files trunk/debian/plplot-tcl-dev.files trunk/debian/plplot-tcl.files trunk/debian/plplot12-driver-wxwidgets.files trunk/debian/plplot12-driver-xwin.files trunk/debian/python-plplot.files trunk/debian/rules trunk/debian/upload-debs.pl trunk/debian/watch trunk/doc/.indent.pro trunk/doc/CMakeLists.txt trunk/doc/README.local trunk/doc/Xauthority trunk/doc/abs.txt trunk/doc/docbook/AUTHORS trunk/doc/docbook/CMakeLists.txt trunk/doc/docbook/COPYING trunk/doc/docbook/ChangeLog trunk/doc/docbook/NEWS trunk/doc/docbook/README trunk/doc/docbook/README.developers trunk/doc/docbook/bin/CMakeLists.txt trunk/doc/docbook/bin/ChangeLog trunk/doc/docbook/bin/api2man.pl.in trunk/doc/docbook/bin/api2text.pl trunk/doc/docbook/bin/get-library-structs.pl trunk/doc/docbook/bin/get-library-symbols.pl trunk/doc/docbook/bin/info-clean.pl trunk/doc/docbook/src/CMakeLists.txt trunk/doc/docbook/src/ChangeLog trunk/doc/docbook/src/advanced.xml trunk/doc/docbook/src/api-c.xml trunk/doc/docbook/src/api-compat.xml trunk/doc/docbook/src/api-fortran95.xml trunk/doc/docbook/src/api-internal.xml trunk/doc/docbook/src/api-obsolete.xml trunk/doc/docbook/src/api.xml trunk/doc/docbook/src/bibliography.xml trunk/doc/docbook/src/c.xml trunk/doc/docbook/src/cplus.xml trunk/doc/docbook/src/deploying.xml trunk/doc/docbook/src/drivers.xml trunk/doc/docbook/src/fortran95.xml trunk/doc/docbook/src/gui.xml trunk/doc/docbook/src/inline-html.ent trunk/doc/docbook/src/inline-info.ent trunk/doc/docbook/src/inline-print_dsl.ent trunk/doc/docbook/src/intro.xml trunk/doc/docbook/src/jadetex.cfg trunk/doc/docbook/src/math.ent trunk/doc/docbook/src/ocaml.xml trunk/doc/docbook/src/os_notes.xml trunk/doc/docbook/src/pdftex.map.in trunk/doc/docbook/src/perl.xml trunk/doc/docbook/src/plplotdoc-html.dsl.in trunk/doc/docbook/src/plplotdoc-print.dsl.in trunk/doc/docbook/src/plplotdoc.xml.in trunk/doc/docbook/src/python.xml trunk/doc/docbook/src/simple.xml trunk/doc/docbook/src/stylesheet.css.dsssl.in trunk/doc/docbook/src/tcl.xml trunk/doc/docbook/src/wish.xml trunk/doc/plm2gif.1 trunk/doc/plplot_libtool.1 trunk/doc/plpr.1 trunk/doc/plrender.1 trunk/doc/plserver.1 trunk/doc/pltcl.1 trunk/doc/pltek.1 trunk/doc/pstex2eps.1 trunk/drivers/CMakeLists.txt trunk/drivers/README.drivers trunk/drivers/README.wxwidgets trunk/drivers/aqt.c trunk/drivers/cairo.c trunk/drivers/cgm.c trunk/drivers/dg300.c trunk/drivers/gcw.c trunk/drivers/gd.c trunk/drivers/hpgl.c trunk/drivers/impress.c trunk/drivers/linuxvga.c trunk/drivers/ljii.c trunk/drivers/ljiip.c trunk/drivers/mem.c trunk/drivers/ntk.c trunk/drivers/null.c trunk/drivers/pbm.c trunk/drivers/pdf.c trunk/drivers/plmeta.c trunk/drivers/plplotcanvas-hacktext.c trunk/drivers/ps.c trunk/drivers/psttf.cc trunk/drivers/qt.cpp trunk/drivers/svg.c trunk/drivers/tek.c trunk/drivers/test-drv-info.c trunk/drivers/tk.c trunk/drivers/tkwin.c trunk/drivers/wingcc.c trunk/drivers/wxwidgets.cpp trunk/drivers/wxwidgets.h trunk/drivers/wxwidgets_agg.cpp trunk/drivers/wxwidgets_app.cpp trunk/drivers/wxwidgets_dc.cpp trunk/drivers/wxwidgets_gc.cpp trunk/drivers/xfig.c trunk/drivers/xwin.c trunk/examples/CMakeLists.txt trunk/examples/Makefile.examples.in trunk/examples/ada/CMakeLists.txt trunk/examples/ada/x00_easy_a.adb trunk/examples/ada/x00a.adb trunk/examples/ada/x01a.adb trunk/examples/ada/x02a.adb trunk/examples/ada/x03a.adb trunk/examples/ada/x04a.adb trunk/examples/ada/x05a.adb trunk/examples/ada/x06a.adb trunk/examples/ada/x07a.adb trunk/examples/ada/x08a.adb trunk/examples/ada/x09a.adb trunk/examples/ada/x10a.adb trunk/examples/ada/x11a.adb trunk/examples/ada/x12a.adb trunk/examples/ada/x13a.adb trunk/examples/ada/x14a.adb trunk/examples/ada/x15a.adb trunk/examples/ada/x16a.adb trunk/examples/ada/x17a.adb trunk/examples/ada/x18a.adb trunk/examples/ada/x19a.adb trunk/examples/ada/x20a.adb trunk/examples/ada/x21a.adb trunk/examples/ada/x22a.adb trunk/examples/ada/x23a.adb trunk/examples/ada/x24a.adb trunk/examples/ada/x25a.adb trunk/examples/ada/x26a.adb trunk/examples/ada/x27a.adb trunk/examples/ada/x28a.adb trunk/examples/ada/x29a.adb trunk/examples/ada/x30a.adb trunk/examples/ada/x31a.adb trunk/examples/ada/x33a.adb trunk/examples/ada/xthick00a.adb trunk/examples/ada/xthick01a.adb trunk/examples/ada/xthick02a.adb trunk/examples/ada/xthick03a.adb trunk/examples/ada/xthick04a.adb trunk/examples/ada/xthick05a.adb trunk/examples/ada/xthick06a.adb trunk/examples/ada/xthick07a.adb trunk/examples/ada/xthick08a.adb trunk/examples/ada/xthick09a.adb trunk/examples/ada/xthick10a.adb trunk/examples/ada/xthick11a.adb trunk/examples/ada/xthick12a.adb trunk/examples/ada/xthick13a.adb trunk/examples/ada/xthick14a.adb trunk/examples/ada/xthick15a.adb trunk/examples/ada/xthick16a.adb trunk/examples/ada/xthick17a.adb trunk/examples/ada/xthick18a.adb trunk/examples/ada/xthick19a.adb trunk/examples/ada/xthick20a.adb trunk/examples/ada/xthick21a.adb trunk/examples/ada/xthick22a.adb trunk/examples/ada/xthick23a.adb trunk/examples/ada/xthick24a.adb trunk/examples/ada/xthick25a.adb trunk/examples/ada/xthick26a.adb trunk/examples/ada/xthick27a.adb trunk/examples/ada/xthick28a.adb trunk/examples/ada/xthick29a.adb trunk/examples/ada/xthick30a.adb trunk/examples/ada/xthick31a.adb trunk/examples/ada/xthick33a.adb trunk/examples/c/CMakeLists.txt trunk/examples/c/Makefile.examples.in trunk/examples/c/README.cairo trunk/examples/c/README.plplotcanvas trunk/examples/c/ext-cairo-test.c trunk/examples/c/extXdrawable_demo.c trunk/examples/c/plcdemos.h trunk/examples/c/plplotcanvas_animation.c trunk/examples/c/plplotcanvas_demo.c trunk/examples/c/test_plend.c trunk/examples/c/tutor.c trunk/examples/c/x00c.c trunk/examples/c/x01c.c trunk/examples/c/x02c.c trunk/examples/c/x03c.c trunk/examples/c/x04c.c trunk/examples/c/x05c.c trunk/examples/c/x06c.c trunk/examples/c/x07c.c trunk/examples/c/x08c.c trunk/examples/c/x09c.c trunk/examples/c/x10c.c trunk/examples/c/x11c.c trunk/examples/c/x12c.c trunk/examples/c/x13c.c trunk/examples/c/x14c.c trunk/examples/c/x15c.c trunk/examples/c/x16c.c trunk/examples/c/x17c.c trunk/examples/c/x18c.c trunk/examples/c/x19c.c trunk/examples/c/x20c.c trunk/examples/c/x21c.c trunk/examples/c/x22c.c trunk/examples/c/x23c.c trunk/examples/c/x24c.c trunk/examples/c/x25c.c trunk/examples/c/x26c.c trunk/examples/c/x27c.c trunk/examples/c/x28c.c trunk/examples/c/x29c.c trunk/examples/c/x31c.c trunk/examples/c/x32c.c trunk/examples/c/x33c.c trunk/examples/c++/CMakeLists.txt trunk/examples/c++/Makefile.examples.in trunk/examples/c++/README.c++demos trunk/examples/c++/plc++demos.h trunk/examples/c++/qt_PlotWindow.cpp trunk/examples/c++/qt_PlotWindow.h trunk/examples/c++/qt_example.cpp trunk/examples/c++/wxPLplotDemo.cpp trunk/examples/c++/x00.cc trunk/examples/c++/x01.cc trunk/examples/c++/x01cc.cc trunk/examples/c++/x02.cc trunk/examples/c++/x03.cc trunk/examples/c++/x04.cc trunk/examples/c++/x05.cc trunk/examples/c++/x06.cc trunk/examples/c++/x07.cc trunk/examples/c++/x08.cc trunk/examples/c++/x09.cc trunk/examples/c++/x10.cc trunk/examples/c++/x11.cc trunk/examples/c++/x12.cc trunk/examples/c++/x13.cc trunk/examples/c++/x14.cc trunk/examples/c++/x15.cc trunk/examples/c++/x16.cc trunk/examples/c++/x17.cc trunk/examples/c++/x18.cc trunk/examples/c++/x19.cc trunk/examples/c++/x20.cc trunk/examples/c++/x21.cc trunk/examples/c++/x22.cc trunk/examples/c++/x23.cc trunk/examples/c++/x24.cc trunk/examples/c++/x25.cc trunk/examples/c++/x26.cc trunk/examples/c++/x27.cc trunk/examples/c++/x28.cc trunk/examples/c++/x29.cc trunk/examples/c++/x30.cc trunk/examples/c++/x31.cc trunk/examples/c++/x33.cc trunk/examples/d/CMakeLists.txt trunk/examples/d/Makefile.examples.in trunk/examples/d/x00d.d trunk/examples/d/x01d.d trunk/examples/d/x02d.d trunk/examples/d/x03d.d trunk/examples/d/x04d.d trunk/examples/d/x05d.d trunk/examples/d/x06d.d trunk/examples/d/x07d.d trunk/examples/d/x08d.d trunk/examples/d/x09d.d trunk/examples/d/x10d.d trunk/examples/d/x11d.d trunk/examples/d/x12d.d trunk/examples/d/x13d.d trunk/examples/d/x14d.d trunk/examples/d/x15d.d trunk/examples/d/x16d.d trunk/examples/d/x17d.d trunk/examples/d/x18d.d trunk/examples/d/x19d.d trunk/examples/d/x20d.d trunk/examples/d/x21d.d trunk/examples/d/x22d.d trunk/examples/d/x23d.d trunk/examples/d/x24d.d trunk/examples/d/x25d.d trunk/examples/d/x26d.d trunk/examples/d/x27d.d trunk/examples/d/x28d.d trunk/examples/d/x29d.d trunk/examples/d/x30d.d trunk/examples/d/x31d.d trunk/examples/d/x33d.d trunk/examples/f95/CMakeLists.txt trunk/examples/f95/Makefile.examples.in trunk/examples/f95/cmake_workaround.f trunk/examples/f95/plf95demos.inc.in trunk/examples/f95/x00f.f90 trunk/examples/f95/x01f.f90 trunk/examples/f95/x02f.f90 trunk/examples/f95/x03f.f90 trunk/examples/f95/x04f.f90 trunk/examples/f95/x05f.f90 trunk/examples/f95/x06f.f90 trunk/examples/f95/x07f.f90 trunk/examples/f95/x08f.f90 trunk/examples/f95/x09f.f90 trunk/examples/f95/x10f.f90 trunk/examples/f95/x11f.f90 trunk/examples/f95/x12f.f90 trunk/examples/f95/x13f.f90 trunk/examples/f95/x14f.f90 trunk/examples/f95/x15f.f90 trunk/examples/f95/x16af.f90 trunk/examples/f95/x16f.f90 trunk/examples/f95/x17f.f90 trunk/examples/f95/x18f.f90 trunk/examples/f95/x19f.f90 trunk/examples/f95/x20f.f90 trunk/examples/f95/x21f.f90 trunk/examples/f95/x22f.f90 trunk/examples/f95/x23f.f90 trunk/examples/f95/x24f.f90 trunk/examples/f95/x25f.f90 trunk/examples/f95/x26f.f90 trunk/examples/f95/x27f.f90 trunk/examples/f95/x28f.f90 trunk/examples/f95/x29f.f90 trunk/examples/f95/x30f.f90 trunk/examples/f95/x31f.f90 trunk/examples/f95/x33f.f90 trunk/examples/java/CMakeLists.txt trunk/examples/java/Makefile.examples.in trunk/examples/java/README.javademos trunk/examples/java/x00.java trunk/examples/java/x01.java trunk/examples/java/x02.java trunk/examples/java/x03.java trunk/examples/java/x04.java trunk/examples/java/x05.java trunk/examples/java/x06.java trunk/examples/java/x07.java trunk/examples/java/x08.java trunk/examples/java/x09.java trunk/examples/java/x10.java trunk/examples/java/x11.java trunk/examples/java/x12.java trunk/examples/java/x13.java trunk/examples/java/x14.java trunk/examples/java/x15.java trunk/examples/java/x16.java trunk/examples/java/x17.java trunk/examples/java/x18.java trunk/examples/java/x19.java trunk/examples/java/x20.java trunk/examples/java/x21.java trunk/examples/java/x22.java trunk/examples/java/x23.java trunk/examples/java/x24.java trunk/examples/java/x25.java trunk/examples/java/x26.java trunk/examples/java/x27.java trunk/examples/java/x28.java trunk/examples/java/x29.java trunk/examples/java/x30.java trunk/examples/java/x31.java trunk/examples/java/x33.java trunk/examples/lua/x00.lua trunk/examples/lua/x01.lua trunk/examples/lua/x02.lua trunk/examples/lua/x03.lua trunk/examples/lua/x04.lua trunk/examples/lua/x05.lua trunk/examples/lua/x06.lua trunk/examples/lua/x07.lua trunk/examples/lua/x08.lua trunk/examples/lua/x09.lua trunk/examples/lua/x10.lua trunk/examples/lua/x11.lua trunk/examples/lua/x12.lua trunk/examples/lua/x13.lua trunk/examples/lua/x14.lua trunk/examples/lua/x15.lua trunk/examples/lua/x16.lua trunk/examples/lua/x17.lua trunk/examples/lua/x18.lua trunk/examples/lua/x19.lua trunk/examples/lua/x20.lua trunk/examples/lua/x21.lua trunk/examples/lua/x22.lua trunk/examples/lua/x23.lua trunk/examples/lua/x24.lua trunk/examples/lua/x25.lua trunk/examples/lua/x26.lua trunk/examples/lua/x27.lua trunk/examples/lua/x28.lua trunk/examples/lua/x29.lua trunk/examples/lua/x30.lua trunk/examples/lua/x31.lua trunk/examples/ocaml/CMakeLists.txt trunk/examples/ocaml/Makefile.examples.in trunk/examples/ocaml/x00.ml trunk/examples/ocaml/x01.ml trunk/examples/ocaml/x02.ml trunk/examples/ocaml/x03.ml trunk/examples/ocaml/x04.ml trunk/examples/ocaml/x05.ml trunk/examples/ocaml/x06.ml trunk/examples/ocaml/x07.ml trunk/examples/ocaml/x08.ml trunk/examples/ocaml/x09.ml trunk/examples/ocaml/x10.ml trunk/examples/ocaml/x11.ml trunk/examples/ocaml/x12.ml trunk/examples/ocaml/x13.ml trunk/examples/ocaml/x14.ml trunk/examples/ocaml/x15.ml trunk/examples/ocaml/x16.ml trunk/examples/ocaml/x17.ml trunk/examples/ocaml/x18.ml trunk/examples/ocaml/x19.ml trunk/examples/ocaml/x20.ml trunk/examples/ocaml/x21.ml trunk/examples/ocaml/x22.ml trunk/examples/ocaml/x23.ml trunk/examples/ocaml/x24.ml trunk/examples/ocaml/x25.ml trunk/examples/ocaml/x26.ml trunk/examples/ocaml/x27.ml trunk/examples/ocaml/x28.ml trunk/examples/ocaml/x29.ml trunk/examples/ocaml/x30.ml trunk/examples/ocaml/x31.ml trunk/examples/octave/CMakeLists.txt trunk/examples/octave/p1.m trunk/examples/octave/p10.m trunk/examples/octave/p11.m trunk/examples/octave/p12.m trunk/examples/octave/p13.m trunk/examples/octave/p14.m trunk/examples/octave/p15.m trunk/examples/octave/p16.m trunk/examples/octave/p17.m trunk/examples/octave/p18.m trunk/examples/octave/p19.m trunk/examples/octave/p2.m trunk/examples/octave/p20.m trunk/examples/octave/p21.m trunk/examples/octave/p3.m trunk/examples/octave/p4.m trunk/examples/octave/p5.m trunk/examples/octave/p6.m trunk/examples/octave/p7.m trunk/examples/octave/p8.m trunk/examples/octave/p9.m trunk/examples/octave/plplot_octave_demo.m trunk/examples/octave/x00c.m trunk/examples/octave/x01c.m trunk/examples/octave/x02c.m trunk/examples/octave/x03c.m trunk/examples/octave/x04c.m trunk/examples/octave/x05c.m trunk/examples/octave/x06c.m trunk/examples/octave/x07c.m trunk/examples/octave/x08c.m trunk/examples/octave/x09c.m trunk/examples/octave/x10c.m trunk/examples/octave/x11c.m trunk/examples/octave/x12c.m trunk/examples/octave/x13c.m trunk/examples/octave/x14c.m trunk/examples/octave/x15c.m trunk/examples/octave/x16c.m trunk/examples/octave/x17c.m trunk/examples/octave/x18c.m trunk/examples/octave/x19c.m trunk/examples/octave/x20c.m trunk/examples/octave/x21c.m trunk/examples/octave/x22c.m trunk/examples/octave/x23c.m trunk/examples/octave/x24c.m trunk/examples/octave/x25c.m trunk/examples/octave/x26c.m trunk/examples/octave/x27c.m trunk/examples/octave/x28c.m trunk/examples/octave/x29c.m trunk/examples/octave/x30c.m trunk/examples/octave/x31c.m trunk/examples/octave/x33c.m trunk/examples/perl/CMakeLists.txt trunk/examples/perl/README.perldemos trunk/examples/perl/check-sync.pl trunk/examples/perl/x01.pl trunk/examples/perl/x02.pl trunk/examples/perl/x03.pl trunk/examples/perl/x04.pl trunk/examples/perl/x05.pl trunk/examples/perl/x06.pl trunk/examples/perl/x07.pl trunk/examples/perl/x08.pl trunk/examples/perl/x09.pl trunk/examples/perl/x10.pl trunk/examples/perl/x11.pl trunk/examples/perl/x12.pl trunk/examples/perl/x13.pl trunk/examples/perl/x14.pl trunk/examples/perl/x15.pl trunk/examples/perl/x16.pl trunk/examples/perl/x17.pl trunk/examples/perl/x18.pl trunk/examples/perl/x19.pl trunk/examples/perl/x20.pl trunk/examples/perl/x21.pl trunk/examples/perl/x22.pl trunk/examples/perl/x23.pl trunk/examples/perl/x24.pl trunk/examples/perl/x25.pl trunk/examples/perl/x26.pl trunk/examples/perl/x27.pl trunk/examples/perl/x28.pl trunk/examples/perl/x29.pl trunk/examples/perl/x30.pl trunk/examples/perl/x31.pl trunk/examples/perl/x33.pl trunk/examples/python/CMakeLists.txt trunk/examples/python/README.plplotcanvas trunk/examples/python/README.pythondemos trunk/examples/python/plplot_logo.py trunk/examples/python/plplot_py_demos.py trunk/examples/python/plplot_python_start.py.in trunk/examples/python/plplotcanvas_animation.py trunk/examples/python/plplotcanvas_demo.py trunk/examples/python/pythondemos.py trunk/examples/python/pytkdemo trunk/examples/python/test_axis_precision.py trunk/examples/python/test_circle.py trunk/examples/python/test_fill.py trunk/examples/python/test_gradient.py trunk/examples/python/test_hebrew_diacritic.py trunk/examples/python/test_linebreak.py trunk/examples/python/test_plplot_encodings.py trunk/examples/python/test_style.py trunk/examples/python/test_superscript_subscript.py trunk/examples/python/test_symbol_clip.py trunk/examples/python/test_type1.py trunk/examples/python/testh.py trunk/examples/python/tutor.py trunk/examples/python/x00 trunk/examples/python/x01 trunk/examples/python/x01.py trunk/examples/python/x02 trunk/examples/python/x02.py trunk/examples/python/x03 trunk/examples/python/x03.py trunk/examples/python/x04 trunk/examples/python/x04.py trunk/examples/python/x05 trunk/examples/python/x05.py trunk/examples/python/x06 trunk/examples/python/x06.py trunk/examples/python/x07 trunk/examples/python/x07.py trunk/examples/python/x08 trunk/examples/python/x08.py trunk/examples/python/x09 trunk/examples/python/x09.py trunk/examples/python/x10 trunk/examples/python/x10.py trunk/examples/python/x11 trunk/examples/python/x11.py trunk/examples/python/x12 trunk/examples/python/x12.py trunk/examples/python/x13 trunk/examples/python/x13.py trunk/examples/python/x14 trunk/examples/python/x14.py trunk/examples/python/x15 trunk/examples/python/x15.py trunk/examples/python/x16 trunk/examples/python/x16.py trunk/examples/python/x17 trunk/examples/python/x17.py trunk/examples/python/x18 trunk/examples/python/x18.py trunk/examples/python/x19 trunk/examples/python/x19.py trunk/examples/python/x20 trunk/examples/python/x21 trunk/examples/python/x22 trunk/examples/python/x23 trunk/examples/python/x24 trunk/examples/python/x25 trunk/examples/python/x26 trunk/examples/python/x27 trunk/examples/python/x28 trunk/examples/python/x29 trunk/examples/python/x30 trunk/examples/python/x31 trunk/examples/python/x33 trunk/examples/python/xtkpy trunk/examples/python/xw00.py trunk/examples/python/xw01.py trunk/examples/python/xw02.py trunk/examples/python/xw03.py trunk/examples/python/xw04.py trunk/examples/python/xw05.py trunk/examples/python/xw06.py trunk/examples/python/xw07.py trunk/examples/python/xw08.py trunk/examples/python/xw09.py trunk/examples/python/xw10.py trunk/examples/python/xw11.py trunk/examples/python/xw12.py trunk/examples/python/xw13.py trunk/examples/python/xw14.py trunk/examples/python/xw15.py trunk/examples/python/xw16.py trunk/examples/python/xw17.py trunk/examples/python/xw18.py trunk/examples/python/xw19.py trunk/examples/python/xw20.py trunk/examples/python/xw21.py trunk/examples/python/xw22.py trunk/examples/python/xw23.py trunk/examples/python/xw24.py trunk/examples/python/xw25.py trunk/examples/python/xw26.py trunk/examples/python/xw27.py trunk/examples/python/xw28.py trunk/examples/python/xw29.py trunk/examples/python/xw30.py trunk/examples/python/xw31.py trunk/examples/python/xw33.py trunk/examples/tcl/CMakeLists.txt trunk/examples/tcl/README.tcldemos trunk/examples/tcl/plgrid.tcl trunk/examples/tcl/plot.dat trunk/examples/tcl/plot.tcl trunk/examples/tcl/pltcl_standard_examples.in trunk/examples/tcl/r.dat trunk/examples/tcl/stats.log trunk/examples/tcl/tcldemos.tcl trunk/examples/tcl/x00 trunk/examples/tcl/x00.tcl trunk/examples/tcl/x01 trunk/examples/tcl/x01.tcl trunk/examples/tcl/x02 trunk/examples/tcl/x02.tcl trunk/examples/tcl/x03 trunk/examples/tcl/x03.tcl trunk/examples/tcl/x04 trunk/examples/tcl/x04.tcl trunk/examples/tcl/x05 trunk/examples/tcl/x05.tcl trunk/examples/tcl/x06 trunk/examples/tcl/x06.tcl trunk/examples/tcl/x07 trunk/examples/tcl/x07.tcl trunk/examples/tcl/x08 trunk/examples/tcl/x08.tcl trunk/examples/tcl/x09 trunk/examples/tcl/x09.tcl trunk/examples/tcl/x10 trunk/examples/tcl/x10.tcl trunk/examples/tcl/x11 trunk/examples/tcl/x11.tcl trunk/examples/tcl/x12 trunk/examples/tcl/x12.tcl trunk/examples/tcl/x13 trunk/examples/tcl/x13.tcl trunk/examples/tcl/x14 trunk/examples/tcl/x14.tcl trunk/examples/tcl/x15 trunk/examples/tcl/x15.tcl trunk/examples/tcl/x16 trunk/examples/tcl/x16.tcl trunk/examples/tcl/x17 trunk/examples/tcl/x17.tcl trunk/examples/tcl/x18 trunk/examples/tcl/x18.tcl trunk/examples/tcl/x19 trunk/examples/tcl/x19.tcl trunk/examples/tcl/x20 trunk/examples/tcl/x20.tcl trunk/examples/tcl/x21 trunk/examples/tcl/x21.tcl trunk/examples/tcl/x22 trunk/examples/tcl/x22.tcl trunk/examples/tcl/x23 trunk/examples/tcl/x23.tcl trunk/examples/tcl/x24 trunk/examples/tcl/x24.tcl trunk/examples/tcl/x25 trunk/examples/tcl/x25.tcl trunk/examples/tcl/x26 trunk/examples/tcl/x26.tcl trunk/examples/tcl/x27 trunk/examples/tcl/x27.tcl trunk/examples/tcl/x28 trunk/examples/tcl/x28.tcl trunk/examples/tcl/x29 trunk/examples/tcl/x29.tcl trunk/examples/tcl/x30 trunk/examples/tcl/x30.tcl trunk/examples/tcl/x31 trunk/examples/tcl/x31.tcl trunk/examples/tcl/x33 trunk/examples/tcl/x33.tcl trunk/examples/tk/CMakeLists.txt trunk/examples/tk/Makefile.examples.in trunk/examples/tk/README.tkdemos trunk/examples/tk/plgrid.in trunk/examples/tk/plserver_standard_examples.in trunk/examples/tk/runAllDemos.tcl trunk/examples/tk/runExtendedDemos.tcl trunk/examples/tk/tk01.in trunk/examples/tk/tk02.in trunk/examples/tk/tk03.in trunk/examples/tk/tk04.in trunk/examples/tk/tkdemos.tcl trunk/examples/tk/xtk01.c trunk/examples/tk/xtk02.c trunk/examples/tk/xtk04.c trunk/fonts/CMakeLists.txt trunk/fonts/README trunk/fonts/font01.c trunk/fonts/font02.c tr... [truncated message content] |
From: <ai...@us...> - 2014-02-24 21:22:05
|
Revision: 13021 http://sourceforge.net/p/plplot/code/13021 Author: airwin Date: 2014-02-24 21:21:59 +0000 (Mon, 24 Feb 2014) Log Message: ----------- More simplification of the octave build. Remove unused massage.c and all references to that file. Modified Paths: -------------- trunk/scripts/style_source.sh Removed Paths: ------------- trunk/bindings/octave/massage.c Deleted: trunk/bindings/octave/massage.c =================================================================== --- trunk/bindings/octave/massage.c 2014-02-24 21:19:51 UTC (rev 13020) +++ trunk/bindings/octave/massage.c 2014-02-24 21:21:59 UTC (rev 13021) @@ -1,133 +0,0 @@ -// -//## Copyright (C) 1998-2003 Joao Cardoso. -//## -//## This program is free software; you can redistribute it and/or modify it -//## under the terms of the GNU General Public License as published by the -//## Free Software Foundation; either version 2 of the License, or (at your -//## option) any later version. -//## -//## This program is distributed in the hope that it will be useful, but -//## WITHOUT ANY WARRANTY; without even the implied warranty of -//## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -//## General Public License for more details. -//## -//## This file is part of plplot_octave. -// - -// -// Add online help to functions, parsing 'tmp_stub' and looking for -// function definitions; for each function found, scans directory -// 'plplot_octave_txt' for a file with the same basename as function -// and extension '.txt'; if found, incorporates it as the function -// online help, else, looks in 'plplot.doc' for a one-line description -// of the function and adds it. If not even found in 'plplot.doc', ask -// the user to write the docs! No free lunches! -// - -#include "stdio.h" -#include "string.h" -#include "stdlib.h" -#include <sys/stat.h> -#include "errno.h" - -int -main() -{ - char *p1, *p2; - char doc[150][1024], b[1024], tok[80]; - int item = 0, j; - FILE *fp, *fp1; - struct stat buf; - - if ( ( fp = fopen( "plplot_octave_txt/plplot.doc", "r" ) ) == NULL ) - { - perror( "plplot.doc not found:" ); - exit( 1 ); - } - - while ( !feof( fp ) && fgets( b, sizeof ( b ), fp ) != NULL ) - { - if ( strchr( b, '-' ) ) - strcpy( doc[item++], b ); - } - fclose( fp ); - - if ( ( fp = fopen( "tmp_stub", "r" ) ) == NULL ) - { - perror( "tmp_stub not found:" ); - exit( 1 ); - } - - while ( !feof( fp ) && fgets( b, sizeof ( b ), fp ) != NULL ) - { - if ( ( p2 = strchr( b, '(' ) ) ) // function ... = ...( - { - p1 = p2; - while ( *p1-- != ' ' ) - ; - p1 += 2; - if ( *( p1 + 1 ) == '_' ) // c_... - p1 += 2; - strncpy( tok, p1, p2 - p1 ); - *( tok + (int) ( p2 - p1 ) ) = '\0'; - printf( "%s", b ); - if ( fgets( b, sizeof ( b ), fp ) == NULL ) - { - fprintf( stderr, "Error reading line\n" ); - return 1; - } - printf( "%s%%\n", b ); // % function ... = ...( - - sprintf( b, "plplot_octave_txt/%s.txt", tok ); - if ( stat( b, &buf ) && errno == ENOENT ) - { - fprintf( stderr, "%s not found, trying plplot.doc... ", b ); - strcat( tok, "\t" ); - for ( j = 0; j < item; j++ ) - { - if ( strncmp( doc[j], tok, strlen( tok ) ) == 0 ) - { - printf( "%% %s", &doc[j][strlen( tok ) + 4] ); // strip func -- - break; - } - } - if ( j == item ) - { - fprintf( stderr, "%s not found\n", tok ); - printf( "%% No online help available. Help me, write and submit the documentation, or at least write a one line descriptive text.\n" ); - } - else - fprintf( stderr, "%s OK\n", tok ); - } - else - { - printf( "%% Original PLplot call documentation:\n%%\n" ); - fp1 = fopen( b, "r" ); - while ( !feof( fp1 ) && fgets( b, sizeof ( b ), fp1 ) != NULL ) - { - printf( "%% %s", b ); - } - fclose( fp1 ); - } - if ( fgets( b, sizeof ( b ), fp ) == NULL ) // % No doc... - { - fprintf( stderr, "Error reading line\n" ); - return 1; - } - if ( fgets( b, sizeof ( b ), fp ) == NULL ) - { - fprintf( stderr, "Error reading line\n" ); - return 1; - } - printf( "%s", b ); // plplot_oct... - if ( fgets( b, sizeof ( b ), fp ) == NULL ) - { - fprintf( stderr, "Error reading line\n" ); - return 1; - } - printf( "%s\n", b ); // endfunction - } - } - fclose( fp ); - exit( 0 ); -} Modified: trunk/scripts/style_source.sh =================================================================== --- trunk/scripts/style_source.sh 2014-02-24 21:19:51 UTC (rev 13020) +++ trunk/scripts/style_source.sh 2014-02-24 21:21:59 UTC (rev 13021) @@ -214,7 +214,7 @@ # C source in utils. csource_LIST="$csource_LIST utils/*.c" -csource_LIST="$csource_LIST bindings/tcl/*.[ch] bindings/f95/*.c bindings/f95/plstubs.h bindings/gnome2/*/*.c bindings/ocaml/plplot_impl.c bindings/ocaml/plcairo/plcairo_impl.c bindings/python/plplot_widgetmodule.c bindings/tk/*.[ch] bindings/tk-x-plat/*.[ch] bindings/octave/massage.c" +csource_LIST="$csource_LIST bindings/tcl/*.[ch] bindings/f95/*.c bindings/f95/plstubs.h bindings/gnome2/*/*.c bindings/ocaml/plplot_impl.c bindings/ocaml/plcairo/plcairo_impl.c bindings/python/plplot_widgetmodule.c bindings/tk/*.[ch] bindings/tk-x-plat/*.[ch] export cppsource_LIST This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ai...@us...> - 2014-02-24 23:26:58
|
Revision: 13022 http://sourceforge.net/p/plplot/code/13022 Author: airwin Date: 2014-02-24 23:26:54 +0000 (Mon, 24 Feb 2014) Log Message: ----------- More simplification of the Octave build. Remove the generation (done by api2text.pl) of Octave text documentation files in bindings/plplot_octave_txt since those documentation files are no longer used to build the Octave binding. Instead, the on-line help for the Octave (and Python) bindings is now produced by swig using bindings/swig-support/swig_documentation.i. That file is generated using api2swigdoc.pl which was derived from the (now removed) api2text.pl script. These changes were tested on Linux using the method specified in README.Release_Manager_Cookbook to create and test the release tarball. That tarball creation includes generating all PLplot documentation and sticking it in the created tarball. Modified Paths: -------------- trunk/CMakeLists.txt trunk/bindings/octave/CMakeLists.txt trunk/bindings/swig-support/CMakeLists.txt trunk/doc/docbook/README.developers trunk/scripts/parity_bit_check.exclude Removed Paths: ------------- trunk/doc/docbook/bin/api2text.pl Modified: trunk/CMakeLists.txt =================================================================== --- trunk/CMakeLists.txt 2014-02-24 21:21:59 UTC (rev 13021) +++ trunk/CMakeLists.txt 2014-02-24 23:26:54 UTC (rev 13022) @@ -206,10 +206,6 @@ # List of targets that must be (pre-)built. set(DIST_TARGETS) - if(ENABLE_octave) - list(APPEND DIST_TARGETS make_documentation) - endif(ENABLE_octave) - if(BUILD_PRINT) list(APPEND DIST_TARGETS print) endif(BUILD_PRINT) @@ -239,11 +235,6 @@ add_custom_target( prebuild_dist COMMAND ${CMAKE_COMMAND} -E remove_directory - ${CMAKE_SOURCE_DIR}/bindings/octave/plplot_octave_txt - COMMAND ${CMAKE_COMMAND} -E copy_directory - ${CMAKE_BINARY_DIR}/bindings/octave/plplot_octave_txt - ${CMAKE_SOURCE_DIR}/bindings/octave/plplot_octave_txt - COMMAND ${CMAKE_COMMAND} -E remove_directory ${CMAKE_SOURCE_DIR}/doc/doxygen COMMAND ${CMAKE_COMMAND} -E copy_directory ${CMAKE_BINARY_DIR}/doc/doxygen Modified: trunk/bindings/octave/CMakeLists.txt =================================================================== --- trunk/bindings/octave/CMakeLists.txt 2014-02-24 21:21:59 UTC (rev 13021) +++ trunk/bindings/octave/CMakeLists.txt 2014-02-24 23:26:54 UTC (rev 13022) @@ -38,71 +38,6 @@ install(FILES ${doc} DESTINATION ${DOC_DIR} RENAME ${doc}.octave) endforeach(doc ${docfiles}) - # This is a representative generated (or prebuilt) octave documentation file. - # There are more than a hundred of these *.txt files. If the (unlikely) - # event that the plinit command is no longer part of the PLplot API, this - # representative file would have to be changed. - set(rep_doc plinit.txt) - - if(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/plplot_octave_txt/${rep_doc}) - # Octave documentation has been prebuilt in the (tarball) source tree. - # Copy it to the build tree if that tree is different from source tree. - if(NOT CMAKE_BINARY_DIR STREQUAL "${CMAKE_SOURCE_DIR}") - add_custom_command( - OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/plplot_octave_txt/${rep_doc} - COMMAND ${CMAKE_COMMAND} -E copy_directory - ${CMAKE_SOURCE_DIR}/bindings/octave/plplot_octave_txt - ${CMAKE_BINARY_DIR}/bindings/octave/plplot_octave_txt - ) - endif(NOT CMAKE_BINARY_DIR STREQUAL "${CMAKE_SOURCE_DIR}") - set(make_documentation_DEPENDS - ${CMAKE_CURRENT_BINARY_DIR}/plplot_octave_txt/${rep_doc} - ) - else(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/plplot_octave_txt/${rep_doc}) - # Generate full on-line help for plplot_octave - file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/plplot_octave_txt) - add_custom_command( - OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/plplot_octave_txt/plplot.doc - COMMAND ${CMAKE_COMMAND} -E copy - ${CMAKE_CURRENT_SOURCE_DIR}/etc/plplot.doc - ${CMAKE_CURRENT_BINARY_DIR}/plplot_octave_txt/plplot.doc - DEPENDS - ${CMAKE_CURRENT_SOURCE_DIR}/etc/plplot.doc - ) - if(PERL_XML_DOM AND PERL_XML_PARSER) - add_custom_command( - OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/plplot_octave_txt/${rep_doc} - COMMAND ${PERL_EXECUTABLE} - ${CMAKE_SOURCE_DIR}/doc/docbook/bin/api2text.pl - ${CMAKE_SOURCE_DIR}/doc/docbook/src/plplotdoc.xml.in - ${CMAKE_SOURCE_DIR}/doc/docbook/src/api.xml - DEPENDS - ${CMAKE_CURRENT_BINARY_DIR}/plplot_octave_txt/plplot.doc - ${CMAKE_SOURCE_DIR}/doc/docbook/bin/api2text.pl - ${CMAKE_SOURCE_DIR}/doc/docbook/src/plplotdoc.xml.in - ${CMAKE_SOURCE_DIR}/doc/docbook/src/api.xml - WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/plplot_octave_txt - ) - - set(make_documentation_DEPENDS - ${CMAKE_CURRENT_BINARY_DIR}/plplot_octave_txt/${rep_doc} - ) - else(PERL_XML_DOM AND PERL_XML_PARSER) - message(STATUS - "WARNING: Perl modules XML::Parser and/or XML::DOM not available\n" - " so cannot generate full online help for plplot_octave" - ) - set(make_documentation_DEPENDS - ${CMAKE_CURRENT_BINARY_DIR}/plplot_octave_txt/plplot.doc - ) - endif(PERL_XML_DOM AND PERL_XML_PARSER) - endif(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/plplot_octave_txt/${rep_doc}) - - add_custom_target( - make_documentation ALL - DEPENDS ${make_documentation_DEPENDS} - ) - configure_file( ${CMAKE_CURRENT_SOURCE_DIR}/octave_version.pl.in ${CMAKE_CURRENT_BINARY_DIR}/octave_version.pl Modified: trunk/bindings/swig-support/CMakeLists.txt =================================================================== --- trunk/bindings/swig-support/CMakeLists.txt 2014-02-24 21:21:59 UTC (rev 13021) +++ trunk/bindings/swig-support/CMakeLists.txt 2014-02-24 23:26:54 UTC (rev 13022) @@ -39,9 +39,6 @@ add_dependencies(check_all check_swig_documentation) - set(make_documentation_DEPENDS - ${CMAKE_CURRENT_BINARY_DIR}/plplot_octave_txt/${rep_doc} - ) else(PERL_XML_DOM AND PERL_XML_PARSER) message(STATUS "WARNING: Perl modules XML::Parser and/or XML::DOM not available\n" Modified: trunk/doc/docbook/README.developers =================================================================== --- trunk/doc/docbook/README.developers 2014-02-24 21:21:59 UTC (rev 13021) +++ trunk/doc/docbook/README.developers 2014-02-24 23:26:54 UTC (rev 13022) @@ -58,6 +58,14 @@ library's API) to obtain the information used to generate the man pages. +(Aside. The bin subdirectory also contained at one time api2text.pl which +was used by the non-swig version of the Octave bindings to generate +text documentation for the octave PLplot commands. That script has +now been removed and replaced by the closely related +api2swigdoc.pl which generates bindings/swig-support/swig_documentation.i +API documentation in a form which can be used by swig (for both +the Python and Octave bindings). + 2. info pages. Our info pages are generated by a combination of Deleted: trunk/doc/docbook/bin/api2text.pl =================================================================== --- trunk/doc/docbook/bin/api2text.pl 2014-02-24 21:21:59 UTC (rev 13021) +++ trunk/doc/docbook/bin/api2text.pl 2014-02-24 23:26:54 UTC (rev 13022) @@ -1,204 +0,0 @@ -#!/usr/bin/perl -# File: api2man.pl -# Description: Convert the PLplot API chapter (file api.xml of the DocBook -# manual) into a series of man pages. -# Author: Rafael Laboissière <ra...@de...> -# -# Copyright (C) 2000, 2003 Rafael Laboissiere -# -# This script relies on the present structure of the API chapter (file -# ../src/api.xml), where each API function is documented in its own -# section. Here is the typical structure of a section: -# -# <sect1 id="NAME"> -# <title><function>NAME</function>: DESCRIPTION</title> -# -# <para> -# <funcsynopsis> -# <funcprototype> -# <funcdef> -# <function>NAME</function> -# </funcdef> -# <paramdef><parameter>ARG1</parameter></paramdef> -# <paramdef><parameter>ARG2</parameter></paramdef> -# ... -# </funcprototype> -# </funcsynopsis> -# </para> -# -# <para> -# DESCRIPTION -# </para> -# -# <variablelist> -# <varlistentry> -# <term> -# <parameter>ARG1</parameter> -# TYPE -# </term> -# <listitem> -# <para> -# ARG1 DESCRIPTION -# </para> -# </listitem> -# </varlistentry> -# ... -# </variablelist> -# -# </sect1> - -# Call this script by ginving the master file (typically -# plplotdoc.xml) as the first argument, the API chapter file -# (typically api.xml) as second argument, and the man volume -# (typicvally 3plplot) as third. - -use XML::Parser; -use XML::DOM; -use Text::Wrap; -$Text::Wrap::columns = 75; -use Text::Tabs; -$tabstop = 4; - -$api = ""; -open (MASTER, "< $ARGV[0]"); -while (<MASTER>) { - if (/^(<!DOCTYPE.*)\[/) { - $api .= "$1 [\n"; - } - elsif (/^<\?xml/) { - $api .= '<?xml version="1.0" standalone="yes"?> -'; - } - elsif (/^<!ENTITY pl/) { - $api .= $_; - } -} -$api .= "<!ENTITY amp '#38;#38;'> -<!ENTITY deg ' degrees'> -<!ENTITY gt '>'> -<!ENTITY leq '&#60;='> -<!ENTITY lt '&#60;'> -<!ENTITY ndash '--'> -]>\n"; -close MASTER; - -open (API, "< $ARGV[1]"); -$/ = undef; -$api .= <API>; -close API; - -sub process_node { - my $ret = ""; - my $t = shift; - my $c = $t->getChildNodes; - my $m = $c->getLength; - for (my $j = 0; $j < $m; $j++) { - my $e = $c->item($j); - my $nt = $e->getNodeType; - if ($nt == TEXT_NODE) { - my $a = $e->getData; - $a =~ s/^\s+/ /; - $a =~ s/^\s+$//; - $a =~ s/\n\s+/ /g; - $ret .= $a; - } - elsif ($nt == ELEMENT_NODE) { - my $tag = $e->getTagName; - if ($tag eq "parameter") { - $ret .= "\n" . process_node ($e); - } - elsif ($tag eq "function") { - $ret .= process_node ($e); - } - elsif ($tag eq "link") { - $ret .= process_node ($e) ; - } - elsif ($tag eq "funcprototype") { - $startproto = 1; - my $p = process_node ($e); - $p =~ s/ +$//; - $ret .= $p . ")"; - } - elsif ($tag eq "paramdef") { - my $p = process_node ($e); - $p =~ s/ +$//; - $ret .= ($startproto ? "(" : ", ") . $p; - $startproto = 0; - } - elsif ($tag eq "term") { - $ret .= "\n" . process_node ($e) . ":"; - } - elsif ($tag eq "listitem") { - $ret .= "\t" . process_node ($e) . "\n"; - } - elsif ($tag eq "xref") { - $ret .= "the PLplot documentation"; - } - elsif ($tag eq "varlistentry") { - $ret .= "\n" . process_node ($e); - } - else { - $ret .= process_node ($e); - } - } - else { - $ret .= process_node ($e); - } - } - $ret =~ s/^\s+//; - return $ret; -} - -$p = new XML::DOM::Parser; -$sects = $p->parse ($api)->getElementsByTagName ("sect1"); -my $ns = $sects->getLength; -$titles = ""; - -for ($i = 0; $i < $ns; $i++) { - $fun = $sects->item ($i); - $name = $fun->getAttribute ("id"); - $c = $fun->getChildNodes; - $nc = $c->getLength; - $desc = ""; - $varlist = ""; - $got_synopsis = 0; - for ($j = 0; $j < $nc; $j++) { - $part = $c->item($j); - if ($part->getNodeType == ELEMENT_NODE) { - $contents = process_node ($part); - $node = $part->getTagName; - if ($node eq "title") { - $title = $contents; - } - elsif ($node eq "para") { - if ($got_synopsis) { - $desc = $contents; - } - else { - $synopsis = $contents; - $got_synopsis = 1; - } - } - elsif ($node eq "variablelist") { - $varlist = $contents; - } - } - } - $indent = ' '; - $desc = wrap ($indent, $indent, split(/\n\s*\n/, $desc)); - $varlist = join ("\n", map { - s/\t/ /g; - /(^\s+)/; - $_ = wrap ($indent . $1, - $indent . $1 . $indent, $_); - s/\t/ /g; - $_; - } split ("\n", $varlist)); - open (MAN, "> $name.txt"); - print MAN "\n$title\n"; - print MAN "\nDESCRIPTION:\n\n$desc\n"; - print MAN "\nSYNOPSIS:\n\n$synopsis\n"; - print MAN "\nARGUMENTS:\n\n$varlist\n" - if not $varlist eq ""; - close MAN; -} Modified: trunk/scripts/parity_bit_check.exclude =================================================================== --- trunk/scripts/parity_bit_check.exclude 2014-02-24 21:21:59 UTC (rev 13021) +++ trunk/scripts/parity_bit_check.exclude 2014-02-24 23:26:54 UTC (rev 13022) @@ -26,7 +26,6 @@ qsastime.xml README.deltaT.dat api2man.pl.in -api2text.pl docbook/AUTHORS __pl_pltext.m plplot_auxiliary.adb This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ai...@us...> - 2014-02-26 00:38:51
|
Revision: 13025 http://sourceforge.net/p/plplot/code/13025 Author: airwin Date: 2014-02-26 00:38:44 +0000 (Wed, 26 Feb 2014) Log Message: ----------- Use version of FindFreetype.cmake that is officially distributed with CMake. Tested on Linux with a build test and also a run-time test with -dev wxwidgets -drvopt freetype=1,backend=0 for example 24 which gave the usual crummy plfreetype results for that example. These tests exclude the gd and gcw devices (deprecated/retired) and the wingcc device (not available on Linux). Modified Paths: -------------- trunk/cmake/modules/freetype.cmake trunk/cmake/modules/gcw.cmake trunk/cmake/modules/gd.cmake trunk/cmake/modules/wingcc.cmake trunk/cmake/modules/wxwidgets.cmake trunk/src/CMakeLists.txt Removed Paths: ------------- trunk/cmake/modules/FindFreetype.cmake Deleted: trunk/cmake/modules/FindFreetype.cmake =================================================================== --- trunk/cmake/modules/FindFreetype.cmake 2014-02-25 00:27:53 UTC (rev 13024) +++ trunk/cmake/modules/FindFreetype.cmake 2014-02-26 00:38:44 UTC (rev 13025) @@ -1,26 +0,0 @@ -# - Find Freetype -# Find the native freetype includes and library -# This module defines -# FREETYPE_INCLUDE_DIR, where to find freetype header files. -# FREETYPE_LIBRARIES, the libraries needed to use freetype. -# FREETYPE_FOUND, If false, do not try to use freetype. -# also defined, but not for general use are -# FREETYPE_LIBRARY, where to find the freetype library. - -FIND_PATH(FREETYPE_INCLUDE_DIR freetype/config/ftheader.h -/usr/local/include/freetype2 -/usr/include/freetype2 -) - -SET(FREETYPE_NAMES ${FREETYPE_NAMES} freetype) -FIND_LIBRARY(FREETYPE_LIBRARY - NAMES ${FREETYPE_NAMES} - PATHS /usr/local/lib /usr/lib - ) - -IF (FREETYPE_LIBRARY AND FREETYPE_INCLUDE_DIR) - SET(FREETYPE_LIBRARIES ${FREETYPE_LIBRARY}) - SET(FREETYPE_FOUND "YES") -ELSE (FREETYPE_LIBRARY AND FREETYPE_INCLUDE_DIR) - SET(FREETYPE_FOUND "NO") -ENDIF (FREETYPE_LIBRARY AND FREETYPE_INCLUDE_DIR) Modified: trunk/cmake/modules/freetype.cmake =================================================================== --- trunk/cmake/modules/freetype.cmake 2014-02-25 00:27:53 UTC (rev 13024) +++ trunk/cmake/modules/freetype.cmake 2014-02-26 00:38:44 UTC (rev 13025) @@ -1,6 +1,7 @@ # cmake/modules/freetype.cmake # # Copyright (C) 2006 Andrew Ross +# Copyright (C) 2014 Alan W. Irwin # # This file is part of PLplot. # @@ -29,7 +30,10 @@ if (WITH_FREETYPE) find_package(Freetype) if (FREETYPE_FOUND) - message(STATUS "FREETYPE_INCLUDE_DIR = ${FREETYPE_INCLUDE_DIR}") + #message(STATUS "FREETYPE_INCLUDE_DIRS = ${FREETYPE_INCLUDE_DIRS}") + string(REGEX REPLACE ";" " -I" FREETYPE_INCLUDE_CFLAGS "-I${FREETYPE_INCLUDE_DIRS}") + message(STATUS "FREETYPE_CFLAGS = ${FREETYPE_INCLUDE_CFLAGS}") + message(STATUS "FREETYPE_LIBRARIES = ${FREETYPE_LIBRARIES}") else (FREETYPE_FOUND) set(WITH_FREETYPE OFF Modified: trunk/cmake/modules/gcw.cmake =================================================================== --- trunk/cmake/modules/gcw.cmake 2014-02-25 00:27:53 UTC (rev 13024) +++ trunk/cmake/modules/gcw.cmake 2014-02-26 00:38:44 UTC (rev 13025) @@ -57,9 +57,7 @@ set(gcw_LINK_FLAGS "${linkflags1}") # Add freetype includes / libraries if required if (WITH_FREETYPE) - foreach(DIR ${FREETYPE_INCLUDE_DIR}) - set(gcw_COMPILE_FLAGS "${gcw_COMPILE_FLAGS} -I${DIR}") - endforeach(DIR ${FREETYPE_INCLUDE_DIR}) + set(gcw_COMPILE_FLAGS "${gcw_COMPILE_FLAGS} ${FREETYPE_INCLUDE_CFLAGS}") set(gcw_LINK_FLAGS ${gcw_LINK_FLAGS} ${FREETYPE_LIBRARIES}) endif (WITH_FREETYPE) else(linkflags1) Modified: trunk/cmake/modules/gd.cmake =================================================================== --- trunk/cmake/modules/gd.cmake 2014-02-25 00:27:53 UTC (rev 13024) +++ trunk/cmake/modules/gd.cmake 2014-02-26 00:38:44 UTC (rev 13025) @@ -45,7 +45,7 @@ else (NOT GD_FOUND) if (WITH_FREETYPE) - set(GD_INCLUDE_DIR ${GD_INCLUDE_DIR} ${FREETYPE_INCLUDE_DIR}) + set(GD_INCLUDE_DIR ${GD_INCLUDE_DIR} ${FREETYPE_INCLUDE_DIRS}) set(GD_LIBRARIES ${GD_LIBRARIES} ${FREETYPE_LIBRARIES}) endif (WITH_FREETYPE) endif (NOT GD_FOUND) Modified: trunk/cmake/modules/wingcc.cmake =================================================================== --- trunk/cmake/modules/wingcc.cmake 2014-02-25 00:27:53 UTC (rev 13024) +++ trunk/cmake/modules/wingcc.cmake 2014-02-26 00:38:44 UTC (rev 13025) @@ -44,7 +44,7 @@ if(WITH_FREETYPE) set( wingcc_COMPILE_FLAGS - "${wingcc_COMPILE_FLAGS} -I${FREETYPE_INCLUDE_DIR}" + "${wingcc_COMPILE_FLAGS} ${FREETYPE_INCLUDE_CFLAGS}" ) set( wingcc_LINK_FLAGS Modified: trunk/cmake/modules/wxwidgets.cmake =================================================================== --- trunk/cmake/modules/wxwidgets.cmake 2014-02-25 00:27:53 UTC (rev 13024) +++ trunk/cmake/modules/wxwidgets.cmake 2014-02-26 00:38:44 UTC (rev 13025) @@ -109,7 +109,7 @@ endif(HAVE_AGG) set( wxwidgets_COMPILE_FLAGS - "${wxwidgets_COMPILE_FLAGS} -I${FREETYPE_INCLUDE_DIR}" + "${wxwidgets_COMPILE_FLAGS} ${FREETYPE_INCLUDE_CFLAGS}" ) set( wxwidgets_LINK_FLAGS Modified: trunk/src/CMakeLists.txt =================================================================== --- trunk/src/CMakeLists.txt 2014-02-25 00:27:53 UTC (rev 13024) +++ trunk/src/CMakeLists.txt 2014-02-26 00:38:44 UTC (rev 13025) @@ -244,7 +244,7 @@ if(NOT PLFREETYPE_COMPILE_PROPS) set(PLFREETYPE_COMPILE_PROPS) endif(NOT PLFREETYPE_COMPILE_PROPS) - set_source_files_properties(plfreetype.c PROPERTIES COMPILE_FLAGS "${PLFREETYPE_COMPILE_PROPS} -I${FREETYPE_INCLUDE_DIR}") + set_source_files_properties(plfreetype.c PROPERTIES COMPILE_FLAGS "${PLFREETYPE_COMPILE_PROPS} ${FREETYPE_INCLUDE_CFLAGS}") list(APPEND libplplot${LIB_TAG}_LINK_LIBRARIES ${FREETYPE_LIBRARIES}) endif(WITH_FREETYPE) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <and...@us...> - 2014-02-28 12:54:47
|
Revision: 13028 http://sourceforge.net/p/plplot/code/13028 Author: andrewross Date: 2014-02-28 12:54:44 +0000 (Fri, 28 Feb 2014) Log Message: ----------- Fixes to octave examples + scripts to ensure they work with octave 3.8. Modified Paths: -------------- trunk/examples/octave/x23c.m trunk/examples/octave/x28c.m trunk/examples/octave/x33c.m trunk/plplot_test/test_octave.sh.in Modified: trunk/examples/octave/x23c.m =================================================================== --- trunk/examples/octave/x23c.m 2014-02-28 01:43:31 UTC (rev 13027) +++ trunk/examples/octave/x23c.m 2014-02-28 12:54:44 UTC (rev 13028) @@ -32,186 +32,186 @@ endif - Greek = [\ -"#gA";"#gB";"#gG";"#gD";"#gE";"#gZ";"#gY";"#gH";"#gI";"#gK";"#gL";"#gM";\ -"#gN";"#gC";"#gO";"#gP";"#gR";"#gS";"#gT";"#gU";"#gF";"#gX";"#gQ";"#gW";\ -"#ga";"#gb";"#gg";"#gd";"#ge";"#gz";"#gy";"#gh";"#gi";"#gk";"#gl";"#gm";\ -"#gn";"#gc";"#go";"#gp";"#gr";"#gs";"#gt";"#gu";"#gf";"#gx";"#gq";"#gw";\ + Greek = [... +"#gA";"#gB";"#gG";"#gD";"#gE";"#gZ";"#gY";"#gH";"#gI";"#gK";"#gL";"#gM"; +"#gN";"#gC";"#gO";"#gP";"#gR";"#gS";"#gT";"#gU";"#gF";"#gX";"#gQ";"#gW"; +"#ga";"#gb";"#gg";"#gd";"#ge";"#gz";"#gy";"#gh";"#gi";"#gk";"#gl";"#gm"; +"#gn";"#gc";"#go";"#gp";"#gr";"#gs";"#gt";"#gu";"#gf";"#gx";"#gq";"#gw"; ]; - Type1 = [\ -0x0020,0x0021,0x0023,0x0025,0x0026,\ -0x0028,0x0029,0x002b,0x002c,0x002e,\ -0x002f,0x0030,0x0031,0x0032,0x0033,\ -0x0034,0x0035,0x0036,0x0037,0x0038,\ -0x0039,0x003a,0x003b,0x003c,0x003d,\ -0x003e,0x003f,0x005b,0x005d,0x005f,\ -0x007b,0x007c,0x007d,0x00a9,0x00ac,\ -0x00ae,0x00b0,0x00b1,0x00d7,0x00f7,\ -0x0192,0x0391,0x0392,0x0393,0x0394,\ -0x0395,0x0396,0x0397,0x0398,0x0399,\ -0x039a,0x039b,0x039c,0x039d,0x039e,\ -0x039f,0x03a0,0x03a1,0x03a3,0x03a4,\ -0x03a5,0x03a6,0x03a7,0x03a8,0x03a9,\ -0x03b1,0x03b2,0x03b3,0x03b4,0x03b5,\ -0x03b6,0x03b7,0x03b8,0x03b9,0x03ba,\ -0x03bb,0x03bc,0x03bd,0x03be,0x03bf,\ -0x03c0,0x03c1,0x03c2,0x03c3,0x03c4,\ -0x03c5,0x03c6,0x03c7,0x03c8,0x03c9,\ -0x03d1,0x03d2,0x03d5,0x03d6,0x2022,\ -0x2026,0x2032,0x2033,0x203e,0x2044,\ -0x2111,0x2118,0x211c,0x2122,0x2126,\ -0x2135,0x2190,0x2191,0x2192,0x2193,\ -0x2194,0x21b5,0x21d0,0x21d1,0x21d2,\ -0x21d3,0x21d4,0x2200,0x2202,0x2203,\ -0x2205,0x2206,0x2207,0x2208,0x2209,\ -0x220b,0x220f,0x2211,0x2212,0x2215,\ -0x2217,0x221a,0x221d,0x221e,0x2220,\ -0x2227,0x2228,0x2229,0x222a,0x222b,\ -0x2234,0x223c,0x2245,0x2248,0x2260,\ -0x2261,0x2264,0x2265,0x2282,0x2283,\ -0x2284,0x2286,0x2287,0x2295,0x2297,\ -0x22a5,0x22c5,0x2320,0x2321,0x2329,\ -0x232a,0x25ca,0x2660,0x2663,0x2665,\ -0x2666,\ + Type1 = [... +0x0020,0x0021,0x0023,0x0025,0x0026,... +0x0028,0x0029,0x002b,0x002c,0x002e,... +0x002f,0x0030,0x0031,0x0032,0x0033,... +0x0034,0x0035,0x0036,0x0037,0x0038,... +0x0039,0x003a,0x003b,0x003c,0x003d,... +0x003e,0x003f,0x005b,0x005d,0x005f,... +0x007b,0x007c,0x007d,0x00a9,0x00ac,... +0x00ae,0x00b0,0x00b1,0x00d7,0x00f7,... +0x0192,0x0391,0x0392,0x0393,0x0394,... +0x0395,0x0396,0x0397,0x0398,0x0399,... +0x039a,0x039b,0x039c,0x039d,0x039e,... +0x039f,0x03a0,0x03a1,0x03a3,0x03a4,... +0x03a5,0x03a6,0x03a7,0x03a8,0x03a9,... +0x03b1,0x03b2,0x03b3,0x03b4,0x03b5,... +0x03b6,0x03b7,0x03b8,0x03b9,0x03ba,... +0x03bb,0x03bc,0x03bd,0x03be,0x03bf,... +0x03c0,0x03c1,0x03c2,0x03c3,0x03c4,... +0x03c5,0x03c6,0x03c7,0x03c8,0x03c9,... +0x03d1,0x03d2,0x03d5,0x03d6,0x2022,... +0x2026,0x2032,0x2033,0x203e,0x2044,... +0x2111,0x2118,0x211c,0x2122,0x2126,... +0x2135,0x2190,0x2191,0x2192,0x2193,... +0x2194,0x21b5,0x21d0,0x21d1,0x21d2,... +0x21d3,0x21d4,0x2200,0x2202,0x2203,... +0x2205,0x2206,0x2207,0x2208,0x2209,... +0x220b,0x220f,0x2211,0x2212,0x2215,... +0x2217,0x221a,0x221d,0x221e,0x2220,... +0x2227,0x2228,0x2229,0x222a,0x222b,... +0x2234,0x223c,0x2245,0x2248,0x2260,... +0x2261,0x2264,0x2265,0x2282,0x2283,... +0x2284,0x2286,0x2287,0x2295,0x2297,... +0x22a5,0x22c5,0x2320,0x2321,0x2329,... +0x232a,0x25ca,0x2660,0x2663,0x2665,... +0x2666,... ]; - title = {\ -"#<0x10>PLplot Example 23 - Greek Letters";\ -"#<0x10>PLplot Example 23 - Type 1 Symbol Font Glyphs by Unicode (a)";\ -"#<0x10>PLplot Example 23 - Type 1 Symbol Font Glyphs by Unicode (b)";\ -"#<0x10>PLplot Example 23 - Type 1 Symbol Font Glyphs by Unicode (c)";\ -"#<0x10>PLplot Example 23 - Number Forms Unicode Block";\ -"#<0x10>PLplot Example 23 - Arrows Unicode Block (a)";\ -"#<0x10>PLplot Example 23 - Arrows Unicode Block (b)";\ -"#<0x10>PLplot Example 23 - Mathematical Operators Unicode Block (a)";\ -"#<0x10>PLplot Example 23 - Mathematical Operators Unicode Block (b)";\ -"#<0x10>PLplot Example 23 - Mathematical Operators Unicode Block (c)";\ -"#<0x10>PLplot Example 23 - Mathematical Operators Unicode Block (d)"\ + title = { +"#<0x10>PLplot Example 23 - Greek Letters"; +"#<0x10>PLplot Example 23 - Type 1 Symbol Font Glyphs by Unicode (a)"; +"#<0x10>PLplot Example 23 - Type 1 Symbol Font Glyphs by Unicode (b)"; +"#<0x10>PLplot Example 23 - Type 1 Symbol Font Glyphs by Unicode (c)"; +"#<0x10>PLplot Example 23 - Number Forms Unicode Block"; +"#<0x10>PLplot Example 23 - Arrows Unicode Block (a)"; +"#<0x10>PLplot Example 23 - Arrows Unicode Block (b)"; +"#<0x10>PLplot Example 23 - Mathematical Operators Unicode Block (a)"; +"#<0x10>PLplot Example 23 - Mathematical Operators Unicode Block (b)"; +"#<0x10>PLplot Example 23 - Mathematical Operators Unicode Block (c)"; +"#<0x10>PLplot Example 23 - Mathematical Operators Unicode Block (d)" }; - lo = [\ -0x0,\ -0x0,\ -0x40,\ -0x80,\ -0x2153,\ -0x2190,\ -0x21d0,\ -0x2200,\ -0x2240,\ -0x2280,\ -0x22c0,\ + lo = [ +0x0, +0x0, +0x40, +0x80, +0x2153, +0x2190, +0x21d0, +0x2200, +0x2240, +0x2280, +0x22c0, ]; - hi = [\ -0x30,\ -0x40,\ -0x80,\ -0xA6,\ -0x2184,\ -0x21d0,\ -0x2200,\ -0x2240,\ -0x2280,\ -0x22c0,\ -0x2300,\ + hi = [ +0x30, +0x40, +0x80, +0xA6, +0x2184, +0x21d0, +0x2200, +0x2240, +0x2280, +0x22c0, +0x2300, ]; - nxcells = [\ -12,\ -8,\ -8,\ -8,\ -8,\ -8,\ -8,\ -8,\ -8,\ -8,\ -8,\ + nxcells = [ +12, +8, +8, +8, +8, +8, +8, +8, +8, +8, +8, ]; -nycells = [\ -8,\ -8,\ -8,\ -8,\ -8,\ -8,\ -8,\ -8,\ -8,\ -8,\ -8,\ +nycells = [ +8, +8, +8, +8, +8, +8, +8, +8, +8, +8, +8, ]; ## non-zero values Must be consistent with nxcells and nycells. -offset = [\ -0,\ -0,\ -64,\ -128,\ -0,\ -0,\ -0,\ -0,\ -0,\ -0,\ -0,\ +offset = [ +0, +0, +64, +128, +0, +0, +0, +0, +0, +0, +0, ]; ## 30 possible FCI values. FCI_COMBINATIONS = 30; -fci = [\ -0x80000000,\ -0x80000001,\ -0x80000002,\ -0x80000003,\ -0x80000004,\ -0x80000010,\ -0x80000011,\ -0x80000012,\ -0x80000013,\ -0x80000014,\ -0x80000020,\ -0x80000021,\ -0x80000022,\ -0x80000023,\ -0x80000024,\ -0x80000100,\ -0x80000101,\ -0x80000102,\ -0x80000103,\ -0x80000104,\ -0x80000110,\ -0x80000111,\ -0x80000112,\ -0x80000113,\ -0x80000114,\ -0x80000120,\ -0x80000121,\ -0x80000122,\ -0x80000123,\ -0x80000124,\ +fci = [ +0x80000000, +0x80000001, +0x80000002, +0x80000003, +0x80000004, +0x80000010, +0x80000011, +0x80000012, +0x80000013, +0x80000014, +0x80000020, +0x80000021, +0x80000022, +0x80000023, +0x80000024, +0x80000100, +0x80000101, +0x80000102, +0x80000103, +0x80000104, +0x80000110, +0x80000111, +0x80000112, +0x80000113, +0x80000114, +0x80000120, +0x80000121, +0x80000122, +0x80000123, +0x80000124, ]; -family = [\ - "sans-serif";\ - "serif";\ - "monospace";\ - "script";\ - "symbol"\ +family = [ + "sans-serif"; + "serif"; + "monospace"; + "script"; + "symbol" ]; -style = [\ - "upright";\ - "italic";\ - "oblique"\ +style = [ + "upright"; + "italic"; + "oblique" ]; -weight = [\ - "medium";\ - "bold"\ +weight = [ + "medium"; + "bold" ]; Modified: trunk/examples/octave/x28c.m =================================================================== --- trunk/examples/octave/x28c.m 2014-02-28 01:43:31 UTC (rev 13027) +++ trunk/examples/octave/x28c.m 2014-02-28 12:54:44 UTC (rev 13028) @@ -84,8 +84,8 @@ plw3d(1.0, 1.0, 1.0, xmin, xmax, ymin, ymax, zmin, zmax, 20., 45.); plcol0(2); - plbox3("b", "", xrange, 0, \ - "b", "", yrange, 0, \ + plbox3("b", "", xrange, 0, + "b", "", yrange, 0, "bcd", "", zrange, 0); ## z = zmin. @@ -100,9 +100,9 @@ x_shear = -0.5*xrange*sin_omega; y_shear = 0.5*yrange*cos_omega; z_shear = 0.; - plptex3(xmid, ymid, zmin, \ - x_inclination, y_inclination, z_inclination, \ - x_shear, y_shear, z_shear, \ + plptex3(xmid, ymid, zmin, + x_inclination, y_inclination, z_inclination, + x_shear, y_shear, z_shear, 0.0, " revolution"); endfor ## x = xmax. @@ -117,9 +117,9 @@ x_shear = 0.; y_shear = 0.5*yrange*sin_omega; z_shear = 0.5*zrange*cos_omega; - plptex3(xmax, ymid, zmid, \ - x_inclination, y_inclination, z_inclination, \ - x_shear, y_shear, z_shear, \ + plptex3(xmax, ymid, zmid, + x_inclination, y_inclination, z_inclination, + x_shear, y_shear, z_shear, 0.0, " revolution"); endfor @@ -135,10 +135,10 @@ x_shear = -0.5*xrange*sin_omega; y_shear = 0.; z_shear = 0.5*zrange*cos_omega; - plptex3( \ - xmid, ymax, zmid, \ - x_inclination, y_inclination, z_inclination, \ - x_shear, y_shear, z_shear, \ + plptex3( + xmid, ymax, zmid, + x_inclination, y_inclination, z_inclination, + x_shear, y_shear, z_shear, 0.0, " revolution"); endfor ## Draw minimal 3D grid to finish defining the 3D box. @@ -151,8 +151,8 @@ plw3d(1.0, 1.0, 1.0, xmin, xmax, ymin, ymax, zmin, zmax, 20., 45.); plcol0(2); - plbox3("b", "", xrange, 0, \ - "b", "", yrange, 0, \ + plbox3("b", "", xrange, 0, + "b", "", yrange, 0, "bcd", "", zrange, 0); ## y = ymax. @@ -168,10 +168,10 @@ y_shear = 0.5*yrange*sin_omega; z_shear = 0.5*zrange*cos_omega; zs = zsmax - dzsrot*i; - plptex3( \ - xmid, ymax, zs, \ - x_inclination, y_inclination, z_inclination, \ - x_shear, y_shear, z_shear, \ + plptex3( + xmid, ymax, zs, + x_inclination, y_inclination, z_inclination, + x_shear, y_shear, z_shear, 0.5, "rotation for y = y#dmax#u"); endfor @@ -188,10 +188,10 @@ x_shear = 0.5*xrange*sin_omega; z_shear = 0.5*zrange*cos_omega; zs = zsmax - dzsrot*i; - plptex3( \ - xmax, ymid, zs, \ - x_inclination, y_inclination, z_inclination, \ - x_shear, y_shear, z_shear, \ + plptex3( + xmax, ymid, zs, + x_inclination, y_inclination, z_inclination, + x_shear, y_shear, z_shear, 0.5, "rotation for x = x#dmax#u"); endfor @@ -208,10 +208,10 @@ y_shear = 0.5*yrange*cos_omega; z_shear = 0.5*zrange*sin_omega; ys = ysmax - dysrot*i; - plptex3( \ - xmid, ys, zmin, \ - x_inclination, y_inclination, z_inclination, \ - x_shear, y_shear, z_shear, \ + plptex3( + xmid, ys, zmin, + x_inclination, y_inclination, z_inclination, + x_shear, y_shear, z_shear, 0.5, "rotation for z = z#dmin#u"); endfor ## Draw minimal 3D grid to finish defining the 3D box. @@ -228,8 +228,8 @@ plw3d(1.0, 1.0, 1.0, xmin, xmax, ymin, ymax, zmin, zmax, 20., 45.); plcol0(2); - plbox3("b", "", xrange, 0, \ - "b", "", yrange, 0, \ + plbox3("b", "", xrange, 0, + "b", "", yrange, 0, "bcd", "", zrange, 0); ## y = ymax. @@ -245,10 +245,10 @@ x_shear = 0.5*xrange*sin_omega; z_shear = 0.5*zrange*cos_omega; zs = zsmax-dzsshear*i; - plptex3( \ - xmid, ymax, zs, \ - x_inclination, y_inclination, z_inclination, \ - x_shear, y_shear, z_shear, \ + plptex3( + xmid, ymax, zs, + x_inclination, y_inclination, z_inclination, + x_shear, y_shear, z_shear, 0.5, "shear for y = y#dmax#u"); endfor @@ -265,10 +265,10 @@ y_shear = -0.5*yrange*sin_omega; z_shear = 0.5*zrange*cos_omega; zs = zsmax-dzsshear*i; - plptex3( \ - xmax, ymid, zs, \ - x_inclination, y_inclination, z_inclination, \ - x_shear, y_shear, z_shear, \ + plptex3( + xmax, ymid, zs, + x_inclination, y_inclination, z_inclination, + x_shear, y_shear, z_shear, 0.5, "shear for x = x#dmax#u"); endfor @@ -285,10 +285,10 @@ y_shear = 0.5*yrange*cos_omega; x_shear = 0.5*xrange*sin_omega; ys = ysmax-dysshear*i; - plptex3( \ - xmid, ys, zmin, \ - x_inclination, y_inclination, z_inclination, \ - x_shear, y_shear, z_shear, \ + plptex3( + xmid, ys, zmin, + x_inclination, y_inclination, z_inclination, + x_shear, y_shear, z_shear, 0.5, "shear for z = z#dmin#u"); endfor ## Draw minimal 3D grid to finish defining the 3D box. @@ -301,8 +301,8 @@ plw3d(1.0, 1.0, 1.0, xmin, xmax, ymin, ymax, zmin, zmax, 40., -30.); plcol0(2); - plbox3("b", "", xrange, 0, \ - "b", "", yrange, 0, \ + plbox3("b", "", xrange, 0, + "b", "", yrange, 0, "bcd", "", zrange, 0); plschr(0., 1.2); @@ -332,10 +332,10 @@ y_shear = 0.; z_shear = 1.; p1string = pstring(i:i); - plptex3( \ - xpos, ypos, zpos, \ - x_inclination, y_inclination, z_inclination, \ - x_shear, y_shear, z_shear, \ + plptex3( + xpos, ypos, zpos, + x_inclination, y_inclination, z_inclination, + x_shear, y_shear, z_shear, 0.5, p1string); omega += domega; endfor @@ -349,8 +349,8 @@ plw3d(1.0, 1.0, 1.0, xmin, xmax, ymin, ymax, zmin, zmax, 20., 45.); plcol0(2); - plbox3("b", "", xrange, 0, \ - "b", "", yrange, 0, \ + plbox3("b", "", xrange, 0, + "b", "", yrange, 0, "bcd", "", zrange, 0); plschr(0., 1.0); Modified: trunk/examples/octave/x33c.m =================================================================== --- trunk/examples/octave/x33c.m 2014-02-28 01:43:31 UTC (rev 13027) +++ trunk/examples/octave/x33c.m 2014-02-28 12:54:44 UTC (rev 13028) @@ -193,12 +193,12 @@ plwind( 0.0, 1.0, 0.0, 1.0 ); # Set interesting background colour. plscol0a( 15, 0, 0, 0, 0.20 ); - [colorbar_width, colorbar_height] = plcolorbar( \ - bitor(opt, bitor(PL_COLORBAR_BOUNDING_BOX, PL_COLORBAR_BACKGROUND)), \ - position, x, y, x_length, y_length, \ - 15, 1, 1, low_cap_color, high_cap_color, \ - cont_color, cont_width, label_opts, label, \ - axis_opts, ticks, sub_ticks, \ + [colorbar_width, colorbar_height] = plcolorbar( + bitor(opt, bitor(PL_COLORBAR_BOUNDING_BOX, PL_COLORBAR_BACKGROUND)), + position, x, y, x_length, y_length, + 15, 1, 1, low_cap_color, high_cap_color, + cont_color, cont_width, label_opts, label, + axis_opts, ticks, sub_ticks, n_values_array, values_array ); # Reset text and tick sizes @@ -311,7 +311,7 @@ line_colors(1) = 1 + mod(k, 8); symbol_colors(1) = 1 + mod(k, 8); - [legend_width, legend_height] = \ + [legend_width, legend_height] = ... pllegend( opt, position, 0.05, 0.05, 0.1, 15, 1, 1, 0, 0, opt_array, 1.0, 1.0, 2.0, 1., text_colors, text, @@ -391,7 +391,7 @@ y = 0.1; nrow = 1; ncolumn = nlegend; - [legend_width, legend_height] = \ + [legend_width, legend_height] = ... pllegend( opt, position, x, y, 0.05, 15, 1, 1, nrow, ncolumn, opt_array, 1.0, 1.0, 2.0, 1., text_colors, text, @@ -405,7 +405,7 @@ y = 0.1; nrow = 1; ncolumn = nlegend; - [legend_width, legend_height] = \ + [legend_width, legend_height] = ... pllegend( opt, position, x, y, 0.05, 15, 1, 1, nrow, ncolumn, opt_array, 1.0, 1.0, 2.0, 1., text_colors, text, @@ -420,7 +420,7 @@ y = 0.; nrow = nlegend; ncolumn = 1; - [legend_width, legend_height] = \ + [legend_width, legend_height] = ... pllegend( opt, position, x, y, 0.05, 15, 1, 1, nrow, ncolumn, opt_array, 1.0, 1.0, 2.0, 1., text_colors, text, @@ -434,7 +434,7 @@ y = 0.; nrow = nlegend; ncolumn = 1; - [legend_width, legend_height] = \ + [legend_width, legend_height] = ... pllegend( opt, position, x, y, 0.05, 15, 1, 1, nrow, ncolumn, opt_array, 1.0, 1.0, 2.0, 1., text_colors, text, @@ -448,7 +448,7 @@ y = 0.; nrow = 6; ncolumn = 2; - [legend_width, legend_height] = \ + [legend_width, legend_height] = ... pllegend( opt, position, x, y, 0.05, 15, 1, 1, nrow, ncolumn, opt_array, 1.0, 1.0, 2.0, 1., text_colors, text, @@ -462,7 +462,7 @@ y = 0.; nrow = 6; ncolumn = 2; - [legend_width, legend_height] = \ + [legend_width, legend_height] = ... pllegend( opt, position, x, y, 0.05, 15, 1, 1, nrow, ncolumn, opt_array, 1.0, 1.0, 2.0, 1., text_colors, text, @@ -476,7 +476,7 @@ y = 0.; nrow = 3; ncolumn = 3; - [legend_width, legend_height] = \ + [legend_width, legend_height] = ... pllegend( opt, position, x, y, 0.05, 15, 1, 1, nrow, ncolumn, opt_array, 1.0, 1.0, 2.0, 1., text_colors, text, @@ -566,7 +566,7 @@ nrow = min(3, nlegend); ncolumn = 0; - [legend_width, legend_height] = \ + [legend_width, legend_height] = ... pllegend( opt, position, x, y, 0.025, 15, 1, 1, nrow, ncolumn, opt_array, 1.0, 1.0, 1.5, 1., text_colors, text, @@ -683,7 +683,7 @@ opt = opt_base; plscol0a( 15, 32, 32, 32, 0.70 ); - [legend_width, legend_height] = \ + [legend_width, legend_height] = ... pllegend( opt, position, x, y, 0.1, 15, 1, 1, 0, 0, opt_array, 1.0, text_scale, 2.0, 0., text_colors, text, @@ -714,7 +714,7 @@ opt = opt_base; x += legend_width; plscol0a( 15, 32, 32, 32, 0.70 ); - [legend_width, legend_height] = \ + [legend_width, legend_height] = ... pllegend( opt, position, x, y, 0.1, 15, 1, 1, 0, 0, opt_array, 1.0, text_scale, 2.0, 0., text_colors, text, @@ -745,7 +745,7 @@ opt = opt_base; x += legend_width; plscol0a( 15, 32, 32, 32, 0.70 ); - [legend_width, legend_height] = \ + [legend_width, legend_height] = ... pllegend( opt, position, x, y, 0.1, 15, 1, 1, 0, 0, opt_array, 1.0, text_scale, 2.0, 0., text_colors, text, @@ -779,7 +779,7 @@ y += max_height; max_height = 0.; plscol0a( 15, 32, 32, 32, 0.70 ); - [legend_width, legend_height] = \ + [legend_width, legend_height] = ... pllegend( opt, position, x, y, 0.1, 15, 1, 1, 0, 0, opt_array, 1.0, text_scale, 2.0, 0., text_colors, text, @@ -810,7 +810,7 @@ opt = opt_base; x += legend_width; plscol0a( 15, 32, 32, 32, 0.70 ); - [legend_width, legend_height] = \ + [legend_width, legend_height] = ... pllegend( opt, position, x, y, 0.1, 15, 1, 1, 0, 0, opt_array, 1.0, text_scale, 2.0, 0., text_colors, text, @@ -841,7 +841,7 @@ opt = opt_base; x += legend_width; plscol0a( 15, 32, 32, 32, 0.70 ); - [legend_width, legend_height] = \ + [legend_width, legend_height] = ... pllegend( opt, position, x, y, 0.1, 15, 1, 1, 0, 0, opt_array, 1.0, text_scale, 2.0, 0., text_colors, text, @@ -876,7 +876,7 @@ y += max_height; max_height = 0.; plscol0a( 15, 32, 32, 32, 0.70 ); - [legend_width, legend_height] = \ + [legend_width, legend_height] = ... pllegend( opt, position, x, y, 0.1, 15, 1, 1, 0, 0, opt_array, 1.0, text_scale, 2.0, 0., text_colors, text', @@ -903,7 +903,7 @@ opt = opt_base; x += legend_width; plscol0a( 15, 32, 32, 32, 0.70 ); - [legend_width, legend_height] = \ + [legend_width, legend_height] = ... pllegend( opt, position, x, y, 0.1, 15, 1, 1, 0, 0, opt_array, 1.0, text_scale, 2.0, 0., text_colors, text', @@ -931,7 +931,7 @@ opt = opt_base; x += legend_width; plscol0a( 15, 32, 32, 32, 0.70 ); - [legend_width, legend_height] = \ + [legend_width, legend_height] = ... pllegend( opt, position, x, y, 0.1, 15, 1, 1, 0, 0, opt_array, 1.0, text_scale, 2.0, 0., text_colors, text', Modified: trunk/plplot_test/test_octave.sh.in =================================================================== --- trunk/plplot_test/test_octave.sh.in 2014-02-28 01:43:31 UTC (rev 13027) +++ trunk/plplot_test/test_octave.sh.in 2014-02-28 12:54:44 UTC (rev 13028) @@ -35,8 +35,13 @@ export LD_LIBRARY_PATH="$TOPDIR"/src:"$TOPDIR"/lib/csa:"$TOPDIR"/lib/nn # Launch an Octave script that exercises all the demos -$octave -f -q -p "$octavedir" <<EOF 2> test.error +$octave -f -q <<EOF 2> test.error +# Disable warnings about shadowed functions - PLplot is _supposed_ to shadow the core functions +warning("off","Octave:shadowed-function"); + +addpath(getenv("octavedir")); + # Check verbose_test variable if (strcmp(getenv("verbose_test"),"on") == 1) verbose_test = 1; @@ -46,13 +51,15 @@ plplot_stub; t = char(strsplit("$options", "-")); -if (t); t(1,:)=""; endif; -for i=1:rows(t) - tt = deblank (t(i,:)); len = length(tt); - ix = index(tt," "); - if (ix == 0); ix = len; len = 0; endif - plsetopt(tt(1:ix), tt(ix+1:len)); -endfor +if (t) + t(1,:)=""; + for i=1:rows(t) + tt = deblank (t(i,:)); len = length(tt); + ix = index(tt," "); + if (ix == 0); ix = len; len = 0; endif + plsetopt(tt(1:ix), tt(ix+1:len)); + endfor +endif # Subset of p examples selected that seem to work ok with noninteractive # devices. @@ -80,13 +87,15 @@ printf("%s\n",cmd); endif t = char(strsplit("$options", "-")); - if (t) ; t(1,:)=""; endif - for j=1:rows(t) - tt = deblank (t(j,:)); len = length(tt); - ix = index(tt," "); - if (ix == 0); ix = len; len = 0; endif - plSetOpt(deblank(tt(1:ix)), tt(ix:len)); - endfor + if (t) + t(1,:)=""; + for j=1:rows(t) + tt = deblank (t(j,:)); len = length(tt); + ix = index(tt," "); + if (ix == 0); ix = len; len = 0; endif + plSetOpt(deblank(tt(1:ix)), tt(ix:len)); + endfor + endif device="$device"; plSetOpt("dev", device); #o trailer on filename e.g., x01o.ps) to distinguish from other This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ai...@us...> - 2014-03-04 19:12:00
|
Revision: 13035 http://sourceforge.net/p/plplot/code/13035 Author: airwin Date: 2014-03-04 19:11:54 +0000 (Tue, 04 Mar 2014) Log Message: ----------- Update Python and Octave documentation strings consistent with doc/docbook/src/api.xml. This update includes the following interrelated components. Update api2swigdoc.pl by forming a rename hash to keep track of the renaming that occurs in bindings/octave/plplot_octave.i, and using the renamed documentation names for the Octave documentation case. This solves a bug that occurred in the previous version where documentation of the renamed octave functions was lost. Propagate the improved results from api2swigdoc.pl using the check_swig_documentation target and copying the comparison file generated with api2swigdoc.pl to bindings/swig-support/swig_documentation.i. This is a major change to that latter file not only because of the api2swigdoc.pl changes but also because api.xml has been updated extensively since the last time the check_swig_documentation target was run. For example, api.xml includes UTF-8 characters now so those have been propagated to bindings/swig-support/swig_documentation.i. The UTF-8 characters in swig_documentation.i trigger an Octave bug where help strings which include UTF-8 characters are displayed in a truncated fashion, i.e., only displayed up to the first such character. Such truncated display is not a showstopper bug, but it is an annoyance. We have now made an extremely simple test case not involving PLplot which shows the display bug, and Andrew is investigating that test case further. The UTF-8 characters in swig_documentation.i end up in the swig-generated file bindings/python/plplotc.py which causes run-time problems since that file has no encoding string on the first or second line (which is demanded by Python standards). Swig should give users control of the encoding of that file, but to work around that swig bug, I have created the _plplotcmodule_fixed custom target which uses sed (now required to build the Python binding of PLplot) to append " It uses coding: utf-8" to the first line of that file. Changed target depends (just in the build tree since the fixed plplotc.py is automatically installed with no further action required in the installed examples tree) from _plplotcmodule to _plplotcmodule_fixed. The result has been tested on Linux using the test_noninteractive and test_interactive targets in the build tree and also (using the CMake-based build system) for the installed examples tree. Modified Paths: -------------- trunk/bindings/octave/plplot_octave.i trunk/bindings/python/CMakeLists.txt trunk/bindings/swig-support/CMakeLists.txt trunk/bindings/swig-support/swig_documentation.i trunk/cmake/modules/python.cmake trunk/doc/docbook/bin/api2swigdoc.pl trunk/examples/CMakeLists.txt trunk/examples/python/CMakeLists.txt Modified: trunk/bindings/octave/plplot_octave.i =================================================================== --- trunk/bindings/octave/plplot_octave.i 2014-03-04 17:52:01 UTC (rev 13034) +++ trunk/bindings/octave/plplot_octave.i 2014-03-04 19:11:54 UTC (rev 13035) @@ -1182,6 +1182,10 @@ } } +// %feature commands supporting swig-generated documentation for the bindings. +// Must occur before any %ignore directives or %rename directives. +%include swig_documentation.i + // This test function should be removed when we are confident of our // dealings with all types of octave string arrays. void testppchar( PLINT n, const PLINT *Array, const char **ArrayCk ); @@ -1881,7 +1885,6 @@ // Probably never deal with this one. %ignore plMinMax2dGrid; -//%feature commands supporting swig-generated documentation for the bindings. -%include swig_documentation.i + // swig-compatible common PLplot API definitions from here on. %include plplotcapi.i Modified: trunk/bindings/python/CMakeLists.txt =================================================================== --- trunk/bindings/python/CMakeLists.txt 2014-03-04 17:52:01 UTC (rev 13034) +++ trunk/bindings/python/CMakeLists.txt 2014-03-04 19:11:54 UTC (rev 13035) @@ -102,6 +102,31 @@ ) endif(WIN32_AND_NOT_CYGWIN) + # Fixup required to deal with UTF-8 help strings. Note the DEPENDS + # only brings in a file dependency on the shared object and + # not ${CMAKE_CURRENT_BINARY_DIR}/plplotc.py that is also built + # by swig. Therefore, when the _plplotcmodule_fixed target is run the + # following command is only executed if + # ${CMAKE_CURRENT_BINARY_DIR}/plplotc_fixed.py is outdated relative + # to the shared object and it ignores the dating of + # ${CMAKE_CURRENT_BINARY_DIR}/plplotc.py. Thus, that file + # can be overwritten by the command below without affecting whether + # the custom command is run or not. + add_custom_command( + OUTPUT + ${CMAKE_CURRENT_BINARY_DIR}/plplotc_fixed.py + COMMAND ${SED_EXECUTABLE} -e "1s?^\\(.*\\)\$?\\1 It uses coding: utf-8?" < ${CMAKE_CURRENT_BINARY_DIR}/plplotc.py > ${CMAKE_CURRENT_BINARY_DIR}/plplotc_fixed.py + COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_BINARY_DIR}/plplotc_fixed.py ${CMAKE_CURRENT_BINARY_DIR}/plplotc.py + DEPENDS _plplotcmodule + VERBATIM + ) + add_custom_target( + _plplotcmodule_fixed ALL + DEPENDS + ${CMAKE_CURRENT_BINARY_DIR}/plplotc_fixed.py + ) + add_dependencies(_plplotcmodule_fixed _plplotcmodule) + add_library(plplot_widgetmodule MODULE plplot_widgetmodule.c) set_target_properties(plplot_widgetmodule PROPERTIES PREFIX "") set_source_files_properties( Modified: trunk/bindings/swig-support/CMakeLists.txt =================================================================== --- trunk/bindings/swig-support/CMakeLists.txt 2014-03-04 17:52:01 UTC (rev 13034) +++ trunk/bindings/swig-support/CMakeLists.txt 2014-03-04 19:11:54 UTC (rev 13035) @@ -29,6 +29,7 @@ ${CMAKE_CURRENT_BINARY_DIR}/swig_documentation.i_compare COMMAND ${PERL_EXECUTABLE} ${CMAKE_SOURCE_DIR}/doc/docbook/bin/api2swigdoc.pl + ${CMAKE_SOURCE_DIR}/bindings/octave/plplot_octave.i ${CMAKE_SOURCE_DIR}/doc/docbook/src/plplotdoc.xml.in ${CMAKE_SOURCE_DIR}/doc/docbook/src/api.xml ${CMAKE_CURRENT_BINARY_DIR}/swig_documentation.i_compare Modified: trunk/bindings/swig-support/swig_documentation.i =================================================================== --- trunk/bindings/swig-support/swig_documentation.i 2014-03-04 17:52:01 UTC (rev 13034) +++ trunk/bindings/swig-support/swig_documentation.i 2014-03-04 19:11:54 UTC (rev 13035) @@ -68,15 +68,15 @@ Advances to the next subpage if sub=0, performing a page advance if there are no remaining subpages on the current page. If subpages - aren't being used, pladv(0) will always advance the page. If sub>0, + aren't being used, pladv(0) will always advance the page. If page>0, PLplot switches to the specified subpage. Note that this allows you to overwrite a plot on the specified subpage; if this is not what you intended, use pleop followed by plbop to first advance the page. This - routine is called automatically (with sub=0) by plenv, but if plenv is - not used, pladv must be called after initializing PLplot but before + routine is called automatically (with page=0) by plenv, but if plenv + is not used, pladv must be called after initializing PLplot but before defining the viewport. - Redacted form: pladv(sub) + Redacted form: pladv(page) This function is used in examples 1,2,4,6-12,14-18,20,21,23-27,29,31. @@ -84,13 +84,14 @@ SYNOPSIS: -pladv(sub) +pladv(page) ARGUMENTS: - sub (PLINT, input) : Specifies the subpage number (starting from 1 + page (PLINT, input) : Specifies the subpage number (starting from 1 in the top left corner and increasing along the rows) to which to - advance. Set to zero to advance to the next subpage. + advance. Set to zero to advance to the next subpage (or to the + next page if subpages are not being used). ") pladv; @@ -260,12 +261,13 @@ nbin (PLINT, input) : Number of bins (i.e., number of values in x and y arrays.) - x (PLFLT *, input) : Pointer to array containing values associated - with bins. These must form a strictly increasing sequence. + x (const PLFLT *, input) : Pointer to array containing values + associated with bins. These must form a strictly increasing + sequence. - y (PLFLT *, input) : Pointer to array containing number of points - in bin. This is a PLFLT (instead of PLINT) array so as to allow - histograms of probabilities, etc. + y (const PLFLT *, input) : Pointer to array containing number of + points in bin. This is a PLFLT (instead of PLINT) array so as to + allow histograms of probabilities, etc. opt (PLINT, input) : Is a combination of several flags: opt=PL_BIN_DEFAULT: The x represent the lower bin boundaries, the @@ -515,6 +517,57 @@ ") plbox3; +%feature( "docstring", "Calculate broken-down time from continuous time for the current stream + +DESCRIPTION: + + Calculate broken-down time; year, month, day, hour, min, sec; from + continuous time, ctime for the current stream. This function is the + inverse of plctime. + + The PLplot definition of broken-down time is a calendar time that + completely ignores all time zone offsets, i.e., it is the user's + responsibility to apply those offsets (if so desired) before using the + PLplot time API. By default broken-down time is defined using the + proleptic Gregorian calendar without the insertion of leap seconds and + continuous time is defined as the number of seconds since the Unix + epoch of 1970-01-01T00:00:00Z. However, other definitions of + broken-down and continuous time are possible, see plconfigtime. + + Redacted form: General: plbtime(year, month, day, hour, min, sec, + ctime) + Perl/PDL: Not available? + + + This function is used in example 29. + + + +SYNOPSIS: + +plbtime(year, month, day, hour, min, sec, ctime) + +ARGUMENTS: + + year (PLINT *, output) : Output year. + + month (PLINT *, output) : Output month in range from 0 (January) to + 11 (December). + + day (PLINT *, output) : Output day in range from 1 to 31. + + hour (PLINT *, output) : Output hour in range from 0 to 23. + + min (PLINT *, output) : Output minute in range from 0 to 59 + + sec (PLFLT *, output) : Output second in floating range from 0. to + 60. + + ctime (PLFLT, input) : Continous time from which the broken-down + time is calculated. +") +plbtime; + %feature( "docstring", "Calculate world coordinates and corresponding window index from relative device coordinates DESCRIPTION: @@ -594,13 +647,13 @@ ") plclear; -%feature( "docstring", "Set color, map0 +%feature( "docstring", "Set color, cmap0 DESCRIPTION: - Sets the color for color map0 (see the PLplot documentation). + Sets the color index for cmap0 (see the PLplot documentation). - Redacted form: plcol0(color) + Redacted form: plcol0(icol0) This function is used in examples 1-9,11-16,18-27,29. @@ -608,11 +661,11 @@ SYNOPSIS: -plcol0(color) +plcol0(icol0) ARGUMENTS: - color (PLINT, input) : Integer representing the color. The + icol0 (PLINT, input) : Integer representing the color. The defaults at present are (these may change): 0 black (default background) 1 red (default foreground) @@ -636,11 +689,11 @@ ") plcol0; -%feature( "docstring", "Set color, map1 +%feature( "docstring", "Set color, cmap1 DESCRIPTION: - Sets the color for color map1 (see the PLplot documentation). + Sets the color for cmap1 (see the PLplot documentation). Redacted form: plcol1(col1) @@ -803,7 +856,7 @@ label_opts (const PLINT *, input) : Options for each of n_labels labels. - labels (const char *const *, input) : n_labels text labels for the + labels (const char * const *, input) : n_labels text labels for the color bar. No label is drawn if no label position is specified with one of the PL_COLORBAR_LABEL_RIGHT, PL_COLORBAR_LABEL_TOP, PL_COLORBAR_LABEL_LEFT, or PL_COLORBAR_LABEL_BOTTOM bits in the @@ -815,40 +868,134 @@ but it can be larger if multiple numerical axis labels for the long edges of the color bar are desired. - axis_opts (const char *const *, input) : An array of n_axes axis + axis_opts (const char * const *, input) : An array of n_axes axis options (interpreted as for plbox) for the color bar's axis definitions. - ticks (PLFLT *, input) : An array of n_axes values of the spacing - of the major tick marks (interpreted as for plbox) for the color - bar's axis definitions. + ticks (const PLFLT *, input) : An array of n_axes values of the + spacing of the major tick marks (interpreted as for plbox) for the + color bar's axis definitions. - sub_ticks (PLINT *, input) : An array of n_axes values of the + sub_ticks (const PLINT *, input) : An array of n_axes values of the number of subticks (interpreted as for plbox) for the color bar's axis definitions. - n_values (PLINT, input) : An array containing the number of + n_values (const PLINT *, input) : An array containing the number of elements in each of the n_axes rows of the two-dimensional values array. - values (PLFLT *const *, input) : A two-dimensional array containing - the numeric values for the data range represented by the color - bar. For a row index of i_axis (where 0 < i_axis < n_axes), the - number of elements in the row is specified by n_values[i_axis]. - For PL_COLORBAR_IMAGE and PL_COLORBAR_GRADIENT the number of - elements is 2, and the corresponding row elements of the values - array are the minimum and maximum value represented by the - colorbar. For PL_COLORBAR_SHADE, the number and values of the + values (const PLFLT * const *, input) : A two-dimensional array + containing the numeric values for the data range represented by + the color bar. For a row index of i_axis (where 0 < i_axis < + n_axes), the number of elements in the row is specified by + n_values[i_axis]. For PL_COLORBAR_IMAGE and PL_COLORBAR_GRADIENT + the number of elements is 2, and the corresponding row elements of + the values array are the minimum and maximum value represented by + the colorbar. For PL_COLORBAR_SHADE, the number and values of the elements of a row of the values array is interpreted the same as the nlevel and clevel arguments of plshades. ") +#ifdef SWIG_OCTAVE +my_plcolorbar; +#else plcolorbar; +#endif +%feature( "docstring", "Configure the transformation between continuous and broken-down time for the current stream + +DESCRIPTION: + + Configure the transformation between continuous and broken-down time + for the current stream. This transformation is used by both plbtime + and plctime. + + Redacted form: General: plconfigtime(scale, offset1, offset2, + ccontrol, ifbtime_offset, year, month, day, hour, min, sec) + Perl/PDL: Not available? + + + This function is used in example 29. + + + +SYNOPSIS: + +plconfigtime(scale, offset1, offset2, ccontrol, ifbtime_offset, year, month, day, hour, min, sec) + +ARGUMENTS: + + scale (PLFLT, input) : The number of days per continuous time unit. + As a special case, if + scale is 0., then all other arguments are ignored, and the result (the + default used by PLplot) is the equivalent of a call to + plconfigtime(1./86400., 0., 0., 0x0, 1, 1970, 0, 1, 0, 0, 0.). + That is, for this special case broken-down time is calculated with + the proleptic Gregorian calendar with no leap seconds inserted, + and the continuous time is defined as the number of seconds since + the Unix epoch of 1970-01-01T00:00:00Z. + + offset1 (PLFLT, input) : If + ifbtime_offset is true, the parameters + offset1 and + offset2 are completely ignored. Otherwise, the sum of these parameters + (with units in days) specify the epoch of the continuous time + relative to the MJD epoch corresponding to the Gregorian calendar + date of 1858-11-17T00:00:00Z or JD = 2400000.5. Two PLFLT numbers + are used to specify the origin to allow users (by specifying + offset1 as an integer that can be exactly represented by a + floating-point variable and specifying + offset2 as a number in the range from 0. to 1) the chance to minimize + the numerical errors of the continuous time representation. + + offset2 (PLFLT, input) : See documentation of + offset1. + + ccontrol (PLINT, input) : ccontrol contains bits controlling the + transformation. If the 0x1 bit is set, then the proleptic Julian + calendar is used for broken-down time rather than the proleptic + Gregorian calendar. If the 0x2 bit is set, then leap seconds that + have been historically used to define UTC are inserted into the + broken-down time. Other possibilities for additional control bits + for ccontrol exist such as making the historical time corrections + in the broken-down time corresponding to ET (ephemeris time) or + making the (slightly non-constant) corrections from international + atomic time (TAI) to what astronomers define as terrestrial time + (TT). But those additional possibilities have not been + implemented yet in the qsastime library (one of the PLplot utility + libraries). + + ifbtime_offset (PLBOOL, input) : ifbtime_offset controls how the + epoch of the continuous time scale is specified by the user. If + ifbtime_offset is false, then + offset1 and + offset2 are used to specify the epoch, and the following broken-down + time parameters are completely ignored. If + ifbtime_offset is true, then + offset1 and + offset2 are completely ignored, and the following broken-down time + parameters are used to specify the epoch. + + year (PLINT, input) : Year of epoch. + + month (PLINT, input) : Month of epoch in range from 0 (January) to + 11 (December). + + day (PLINT, input) : Day of epoch in range from 1 to 31. + + hour (PLINT, input) : Hour of epoch in range from 0 to 23 + + min (PLINT, input) : Minute of epoch in range from 0 to 59. + + sec (PLFLT, input) : Second of epoch in floating range from 0. to + 60. +") +plconfigtime; + %feature( "docstring", "Contour plot DESCRIPTION: - Draws a contour plot of the data in z[ + Draws a contour plot of the data in f[ nx][ ny], using the nlevel contour levels specified by clevel. Only the region of the array from kx to lx and from ky to ly is plotted out. A @@ -859,11 +1006,11 @@ information. Redacted form: [PLEASE UPDATE! ONLY PERL INFO IS LIKELY CORRECT!] F95: - plcont(z, kx, lx, ky, ly, clevel, tr?) or plcont(z, kx, lx, ky, ly, + plcont(f, kx, lx, ky, ly, clevel, tr?) or plcont(f, kx, lx, ky, ly, clevel, xgrid, ygrid) - Java: pls.cont(z, kx, lx, ky, ly, clevel, xgrid, ygrid) - Perl/PDL: plcont(z, kx, lx, ky, ly, clevel, pltr, pltr_data) - Python: plcont2(z, kx, lx, ky, ly, clevel) + Java: pls.cont(f, kx, lx, ky, ly, clevel, xgrid, ygrid) + Perl/PDL: plcont(f, kx, lx, ky, ly, clevel, pltr, pltr_data) + Python: plcont2(f, kx, lx, ky, ly, clevel) This function is used in examples 9,14,16,22. @@ -872,27 +1019,27 @@ SYNOPSIS: -plcont(z, nx, ny, kx, lx, ky, ly, clevel, nlevel, pltr, pltr_data) +plcont(f, nx, ny, kx, lx, ky, ly, clevel, nlevel, pltr, pltr_data) ARGUMENTS: - z (PLFLT **, input) : Pointer to a vectored two-dimensional array - containing data to be contoured. + f (const PLFLT * const *, input) : Pointer to a vectored + two-dimensional array containing data to be contoured. - nx, ny (PLINT, input) : Physical dimensions of array z. + nx, ny (PLINT, input) : Physical dimensions of array f. kx, lx (PLINT, input) : Range of x indices to consider. ky, ly (PLINT, input) : Range of y indices to consider. - clevel (PLFLT *, input) : Pointer to array specifying levels at - which to draw contours. + clevel (const PLFLT *, input) : Pointer to array specifying levels + at which to draw contours. nlevel (PLINT, input) : Number of contour levels to draw. pltr (void (*) (PLFLT, PLFLT, PLFLT *, PLFLT *, PLPointer) , input) : Pointer to function that defines transformation between indices - in array z and the world coordinates (C only). Transformation + in array f and the world coordinates (C only). Transformation functions are provided in the PLplot library: pltr0 for identity mapping, and pltr1 and pltr2 for arbitrary mappings respectively defined by one- and two-dimensional arrays. In addition, @@ -908,7 +1055,11 @@ information to pltr0, pltr1, pltr2, or whatever routine that is externally supplied. ") +#ifdef SWIG_OCTAVE +my_plcont; +#else plcont; +#endif %feature( "docstring", "Copy state parameters from the reference stream to the current stream @@ -944,6 +1095,58 @@ ") plcpstrm; +%feature( "docstring", "Calculate continuous time from broken-down time for the current stream + +DESCRIPTION: + + Calculate continuous time, ctime, from broken-down time for the + current stream. The broken-down + time is specified by the following parameters: year, month, day, hour, + min, and sec. This function is the inverse of plbtime. + + The PLplot definition of broken-down time is a calendar time that + completely ignores all time zone offsets, i.e., it is the user's + responsibility to apply those offsets (if so desired) before using the + PLplot time API. By default broken-down time is defined using the + proleptic Gregorian calendar without the insertion of leap seconds and + continuous time is defined as the number of seconds since the Unix + epoch of 1970-01-01T00:00:00Z. However, other definitions of + broken-down and continuous time are possible, see plconfigtime which + specifies that transformation for the current stream. + + Redacted form: General: plctime(year, month, day, hour, min, sec, + ctime) + Perl/PDL: Not available? + + + This function is used in example 29. + + + +SYNOPSIS: + +plctime(year, month, day, hour, min, sec, ctime) + +ARGUMENTS: + + year (PLINT, input) : Input year. + + month (PLINT, input) : Input month in range from 0 (January) to 11 + (December). + + day (PLINT, input) : Input day in range from 1 to 31. + + hour (PLINT, input) : Input hour in range from 0 to 23 + + min (PLINT, input) : Input minute in range from 0 to 59. + + sec (PLFLT, input) : Input second in floating range from 0. to 60. + + ctime (PLFLT *, output) : Continous time calculated from the + broken-down time specified by the previous parameters. +") +plctime; + %feature( "docstring", "End plotting session DESCRIPTION: @@ -987,7 +1190,7 @@ ") plend1; -%feature( "docstring", "Same as plenv but if in multiplot mode does not advance the subpage, instead clears it. +%feature( "docstring", "Same as plenv but if in multiplot mode does not advance the subpage, instead clears it DESCRIPTION: @@ -1225,14 +1428,14 @@ n (PLINT, input) : Number of error bars to draw. - xmin (PLFLT *, input) : Pointer to array with x coordinates of - left-hand endpoint of error bars. + xmin (const PLFLT *, input) : Pointer to array with x coordinates + of left-hand endpoint of error bars. - xmax (PLFLT *, input) : Pointer to array with x coordinates of - right-hand endpoint of error bars. + xmax (const PLFLT *, input) : Pointer to array with x coordinates + of right-hand endpoint of error bars. - y (PLFLT *, input) : Pointer to array with y coordinates of error - bar. + y (const PLFLT *, input) : Pointer to array with y coordinates of + error bar. ") plerrx; @@ -1261,14 +1464,14 @@ n (PLINT, input) : Number of error bars to draw. - x (PLFLT *, input) : Pointer to array with x coordinates of error - bars. + x (const PLFLT *, input) : Pointer to array with x coordinates of + error bars. - ymin (PLFLT *, input) : Pointer to array with y coordinates of - lower endpoint of error bars. + ymin (const PLFLT *, input) : Pointer to array with y coordinates + of lower endpoint of error bars. - ymax (PLFLT *, input) : Pointer to array with y coordinate of upper - endpoint of error bar. + ymax (const PLFLT *, input) : Pointer to array with y coordinate of + upper endpoint of error bar. ") plerry; @@ -1315,10 +1518,10 @@ n (PLINT, input) : Number of vertices in polygon. - x (PLFLT *, input) : Pointer to array with x coordinates of + x (const PLFLT *, input) : Pointer to array with x coordinates of vertices. - y (PLFLT *, input) : Pointer to array with y coordinates of + y (const PLFLT *, input) : Pointer to array with y coordinates of vertices. ") plfill; @@ -1349,13 +1552,13 @@ n (PLINT, input) : Number of vertices in polygon. - x (PLFLT *, input) : Pointer to array with x coordinates of + x (const PLFLT *, input) : Pointer to array with x coordinates of vertices. - y (PLFLT *, input) : Pointer to array with y coordinates of + y (const PLFLT *, input) : Pointer to array with y coordinates of vertices. - z (PLFLT *, input) : Pointer to array with z coordinates of + z (const PLFLT *, input) : Pointer to array with z coordinates of vertices. ") plfill3; @@ -1386,7 +1589,7 @@ affects symbols produced by plpoin. This routine has no effect unless the extended character set is loaded (see plfontld). - Redacted form: plfont(font) + Redacted form: plfont(ifont) This function is used in examples 1,2,4,7,13,24,26. @@ -1394,11 +1597,11 @@ SYNOPSIS: -plfont(font) +plfont(ifont) ARGUMENTS: - font (PLINT, input) : Specifies the font: 1: Normal font (simplest + ifont (PLINT, input) : Specifies the font: 1: Normal font (simplest and fastest) 2: Roman font 3: Italic font @@ -1413,7 +1616,7 @@ Sets the character set to use for subsequent character drawing. May be called before initializing PLplot. - Redacted form: plfontld(set) + Redacted form: plfontld(fnt) This function is used in examples 1,7. @@ -1421,11 +1624,11 @@ SYNOPSIS: -plfontld(set) +plfontld(fnt) ARGUMENTS: - set (PLINT, input) : Specifies the character set to load: 0: + fnt (PLINT, input) : Specifies the character set to load: 0: Standard character set 1: Extended character set ") @@ -1456,14 +1659,41 @@ ") plgchr; -%feature( "docstring", "Returns 8-bit RGB values for given color from color map0 +%feature( "docstring", "Get the cmap1 argument range for continuous color plots DESCRIPTION: - Returns 8-bit RGB values (0-255) for given color from color map0 (see - the PLplot documentation). Values are negative if an invalid color id - is given. + Get the cmap1 argument range for continuous color plots. (Use + plgsmap1_range to set the cmap1 argument range.) + Redacted form: plgcmap1_range(min_color, max_color) + + This function is currently not used in any example. + + + +SYNOPSIS: + +plgcmap1_range(min_color, max_color) + +ARGUMENTS: + + min_color (PLFLT *, output) : Pointer to the current minimum cmap1 + floating point argument. + + max_color (PLFLT *, output) : Pointer to the current maximum cmap1 + floating point argument. +") +plgcmap1_range; + +%feature( "docstring", "Returns 8-bit RGB values for given color index from cmap0 + +DESCRIPTION: + + Returns 8-bit RGB values (0-255) for given color from cmap0 (see the + PLplot documentation). Values are negative if an invalid color id is + given. + Redacted form: plgcol0(icol0, r, g, b) This function is used in example 2. @@ -1486,13 +1716,13 @@ ") plgcol0; -%feature( "docstring", "Returns 8-bit RGB values and double alpha value for given color from color map0. +%feature( "docstring", "Returns 8-bit RGB values and double alpha transparency value for given color index from cmap0 DESCRIPTION: - Returns 8-bit RGB values (0-255) and double alpha value (0.0 - 1.0) - for given color from color map0 (see the PLplot documentation). - Values are negative if an invalid color id is given. + Returns 8-bit RGB values (0-255) and double alpha transparency value + (0.0 - 1.0) for given color from cmap0 (see the PLplot + documentation). Values are negative if an invalid color id is given. This function is used in example 30. @@ -1500,7 +1730,7 @@ SYNOPSIS: -plgcol0a(icol0, r, g, b, a) +plgcol0a(icol0, r, g, b, alpha) ARGUMENTS: @@ -1512,7 +1742,8 @@ b (PLINT *, output) : Pointer to 8-bit blue value. - a (PLFLT *, output) : Pointer to PLFLT alpha value. + alpha (PLFLT *, output) : Pointer to PLFLT alpha transparency + value. ") plgcol0a; @@ -1545,12 +1776,12 @@ ") plgcolbg; -%feature( "docstring", " Returns the background color (cmap0[0]) by 8-bit RGB value and double alpha value. +%feature( "docstring", " Returns the background color (cmap0[0]) by 8-bit RGB value and double alpha transparency value DESCRIPTION: Returns the background color (cmap0[0]) by 8-bit RGB value and double - alpha value. + alpha transparency value. This function is used in example 31. @@ -1558,7 +1789,7 @@ SYNOPSIS: -plgcolbga(r, g, b, a) +plgcolbga(r, g, b, alpha) ARGUMENTS: @@ -1571,7 +1802,8 @@ b (PLINT *, output) : Pointer to an unsigned 8-bit integer (0-255) representing the degree of blue in the color. - a (PLFLT *, output) : Pointer to PLFLT alpha value. + alpha (PLFLT *, output) : Pointer to PLFLT alpha transparency + value. ") plgcolbga; @@ -1711,6 +1943,30 @@ ") plgdiplt; +%feature( "docstring", "Get drawing mode (depends on +device support!) + +DESCRIPTION: + + Get drawing mode. Note only one device driver (cairo) currently + supports this at the moment, and for that case the PLINT value + returned by this function is one of PL_DRAWMODE_DEFAULT, + PL_DRAWMODE_REPLACE, PL_DRAWMODE_XOR, or PL_DRAWMODE_UNKNOWN. This + function returns PL_DRAWMODE_UNKNOWN for the rest of the device + drivers. See also plsdrawmode. + + Redacted form: plgdrawmode() + + This function is used in example 34. + + + +SYNOPSIS: + +plgdrawmode() +") +plgdrawmode; + %feature( "docstring", "Get family file parameters DESCRIPTION: @@ -1718,7 +1974,7 @@ Gets information about current family file, if familying is enabled. See the PLplot documentation for more information. - Redacted form: plgfam(fam, num, bmax) + Redacted form: plgfam(p_fam, p_num, p_bmax) This function is used in examples 14,31. @@ -1726,18 +1982,18 @@ SYNOPSIS: -plgfam(fam, num, bmax) +plgfam(p_fam, p_num, p_bmax) ARGUMENTS: - fam (PLINT *, output) : Pointer to variable with the Boolean family - flag value. If nonzero, familying is enabled. + p_fam (PLINT *, output) : Pointer to variable with the Boolean + family flag value. If nonzero, familying is enabled. - num (PLINT *, output) : Pointer to variable with the current family - file number. + p_num (PLINT *, output) : Pointer to variable with the current + family file number. - bmax (PLINT *, output) : Pointer to variable with the maximum file - size (in bytes) for a family file. + p_bmax (PLINT *, output) : Pointer to variable with the maximum + file size (in bytes) for a family file. ") plgfam; @@ -1748,7 +2004,7 @@ Gets information about the current font using the FCI approach. See the PLplot documentation for more information. - Redacted form: plgfci(fci) + Redacted form: plgfci(p_fci) This function is used in example 23. @@ -1756,11 +2012,11 @@ SYNOPSIS: -plgfci(fci) +plgfci(p_fci) ARGUMENTS: - fci (PLUNICODE *, output) : Pointer to PLUNICODE (unsigned 32-bit + p_fci (PLUNICODE *, output) : Pointer to PLUNICODE (unsigned 32-bit integer) variable which is updated with current FCI value. ") plgfci; @@ -1862,7 +2118,7 @@ instance: screen drivers will usually interpret them as number of pixels, whereas printer drivers will usually use mm. - Redacted form: plgpage(xp, yp, xleng, yleng, xoff, yoff) + Redacted form: plgpage(p_xp, p_yp, p_xleng, p_yleng, p_xoff, p_yoff) This function is used in examples 14 and 31. @@ -1870,21 +2126,22 @@ SYNOPSIS: -plgpage(xp, yp, xleng, yleng, xoff, yoff) +plgpage(p_xp, p_yp, p_xleng, p_yleng, p_xoff, p_yoff) ARGUMENTS: - xp (PLFLT *, output) : Pointer to number of pixels/inch (DPI), x. + p_xp (PLFLT *, output) : Pointer to number of pixels/inch (DPI), x. - yp (PLFLT *, output) : Pointer to number of pixels/inch (DPI) in y. + p_yp (PLFLT *, output) : Pointer to number of pixels/inch (DPI) in + y. - xleng (PLINT *, output) : Pointer to x page length value. + p_xleng (PLINT *, output) : Pointer to x page length value. - yleng (PLINT *, output) : Pointer to y page length value. + p_yleng (PLINT *, output) : Pointer to y page length value. - xoff (PLINT *, output) : Pointer to x page offset. + p_xoff (PLINT *, output) : Pointer to x page offset. - yoff (PLINT *, output) : Pointer to y page offset. + p_yoff (PLINT *, output) : Pointer to y page offset. ") plgpage; @@ -1948,10 +2205,10 @@ n (PLINT, input) : Number of vertices in polygon. - x (PLFLT *, input) : Pointer to array with x coordinates of + x (const PLFLT *, input) : Pointer to array with x coordinates of vertices. - y (PLFLT *, input) : Pointer to array with y coordinates of + y (const PLFLT *, input) : Pointer to array with y coordinates of vertices. angle (PLFLT, input) : Angle (degrees) of gradient vector from x @@ -1983,28 +2240,28 @@ SYNOPSIS: -plggriddata(x, y, z, npts, xg, nptsx, yg, nptsy, zg, type, data) +plgriddata(x, y, z, npts, xg, nptsx, yg, nptsy, zg, type, data) ARGUMENTS: - x (PLFLT *, input) : The input x array. + x (const PLFLT *, input) : The input x array. - y (PLFLT *, input) : The input y array. + y (const PLFLT *, input) : The input y array. - z (PLFLT *, input) : The input z array. Each triple x[i], y[i], - z[i] represents one data sample coordinate. + z (const PLFLT *, input) : The input z array. Each triple x[i], + y[i], z[i] represents one data sample coordinate. npts (PLINT, input) : The number of data samples in the x, y and z arrays. - xg (PLFLT *, input) : The input array that specifies the grid + xg (const PLFLT *, input) : The input array that specifies the grid spacing in the x direction. Usually xg has nptsx equally spaced values from the minimum to the maximum values of the x input array. nptsx (PLINT, input) : The number of points in the xg array. - yg (PLFLT *, input) : The input array that specifies the grid + yg (const PLFLT *, input) : The input array that specifies the grid spacing in the y direction. Similar to the xg parameter. nptsy (PLINT, input) : The number of points in the yg array. @@ -2036,7 +2293,11 @@ GRID_NNI, only weights greater than data will be accepted. If 0, all weights will be accepted. ") +#ifdef SWIG_OCTAVE +my_plgriddata; +#else plgriddata; +#endif %feature( "docstring", "Get current subpage parameters @@ -2079,7 +2340,7 @@ Gets the number of the current output stream. See also plsstrm. - Redacted form: plgstrm(strm) + Redacted form: plgstrm(p_strm) This function is used in example 1,20. @@ -2087,11 +2348,11 @@ SYNOPSIS: -plgstrm(strm) +plgstrm(p_strm) ARGUMENTS: - strm (PLINT *, output) : Pointer to current stream value. + p_strm (PLINT *, output) : Pointer to current stream value. ") plgstrm; @@ -2191,12 +2452,12 @@ DESCRIPTION: - Returns current values of the digmax and digits flags for the x axis. - digits is updated after the plot is drawn, so this routine should only - be called after the call to plbox (or plbox3) is complete. See the - PLplot documentation for more information. + Returns current values of the p_digmax and p_digits flags for the x + axis. p_digits is updated after the plot is drawn, so this routine + should only be called after the call to plbox (or plbox3) is complete. + See the PLplot documentation for more information. - Redacted form: plgxax(digmax, digits) + Redacted form: plgxax(p_digmax, p_digits) This function is used in example 31. @@ -2204,16 +2465,16 @@ SYNOPSIS: -plgxax(digmax, digits) +plgxax(p_digmax, p_digits) ARGUMENTS: - digmax (PLINT *, output) : Pointer to variable with the maximum + p_digmax (PLINT *, output) : Pointer to variable with the maximum number of digits for the x axis. If nonzero, the printed label has been switched to a floating point representation when the - number of digits exceeds digmax. + number of digits exceeds p_digmax. - digits (PLINT *, output) : Pointer to variable with the actual + p_digits (PLINT *, output) : Pointer to variable with the actual number of digits for the numeric labels (x axis) from the last plot. ") @@ -2226,7 +2487,7 @@ Identical to plgxax, except that arguments are flags for y axis. See the description of plgxax for more detail. - Redacted form: plgyax(digmax, digits) + Redacted form: plgyax(p_digmax, p_digits) This function is used in example 31. @@ -2234,16 +2495,16 @@ SYNOPSIS: -plgyax(digmax, digits) +plgyax(p_digmax, p_digits) ARGUMENTS: - digmax (PLINT *, output) : Pointer to variable with the maximum + p_digmax (PLINT *, output) : Pointer to variable with the maximum number of digits for the y axis. If nonzero, the printed label has been switched to a floating point representation when the - number of digits exceeds digmax. + number of digits exceeds p_digmax. - digits (PLINT *, output) : Pointer to variable with the actual + p_digits (PLINT *, output) : Pointer to variable with the actual number of digits for the numeric labels (y axis) from the last plot. ") @@ -2256,7 +2517,7 @@ Identical to plgxax, except that arguments are flags for z axis. See the description of plgxax for more detail. - Redacted form: plgzax(digmax, digits) + Redacted form: plgzax(p_digmax, p_digits) This function is used in example 31. @@ -2264,16 +2525,16 @@ SYNOPSIS: -plgzax(digmax, digits) +plgzax(p_digmax, p_digits) ARGUMENTS: - digmax (PLINT *, output) : Pointer to variable with the maximum + p_digmax (PLINT *, output) : Pointer to variable with the maximum number of digits for the z axis. If nonzero, the printed label has been switched to a floating point representation when the - number of digits exceeds digmax. + number of digits exceeds p_digmax. - digits (PLINT *, output) : Pointer to variable with the actual + p_digits (PLINT *, output) : Pointer to variable with the actual number of digits for the numeric labels (z axis) from the last plot. ") @@ -2304,8 +2565,8 @@ n (PLINT, input) : Number of data points. - data (PLFLT *, input) : Pointer to array with values of the n data - points. + data (const PLFLT *, input) : Pointer to array with values of the n + data points. datmin (PLFLT, input) : Left-hand edge of lowest-valued bin. @@ -2372,11 +2633,11 @@ ") plhlsrgb; -%feature( "docstring", "Plot a 2D matrix using color map1 +%feature( "docstring", "Plot a 2D matrix using cmap1 DESCRIPTION: - Plot a 2D matrix using color map1. + Plot a 2D matrix using cmap1. Redacted form: General: plimagefr(idata, xmin, xmax, ymin, ymax, zmin, zmax, valuemin, valuemax, pltr, pltr_data) @@ -2392,8 +2653,8 @@ ARGUMENTS: - idata (PLFLT**, input) : A 2D array of values (intensities) to - plot. Should have dimensions idata[nx][ny]. + idata (const PLFLT * const *, input) : A 2D array of values + (intensities) to plot. Should have dimensions idata[nx][ny]. nx, ny (PLINT, input) : Dimensions of idata @@ -2428,9 +2689,13 @@ information to pltr0, pltr1, pltr2, or whatever routine is externally supplied. ") +#ifdef SWIG_OCTAVE +my_plimagefr; +#else plimagefr; +#endif -%feature( "docstring", "Plot a 2D matrix using color map1 with automatic colour adjustment +%feature( "docstring", "Plot a 2D matrix using cmap1 with automatic colour adjustment DESCRIPTION: @@ -2452,8 +2717,8 @@ ARGUMENTS: - idata (PLFLT**, input) : A 2D array of values (intensities) to - plot. Should have dimensions idata[nx][ny]. + idata (const PLFLT * const *, input) : A 2D array of values + (intensities) to plot. Should have dimensions idata[nx][ny]. nx, ny (PLINT, input) : Dimensions of idata @@ -2721,7 +2986,7 @@ text_colors (const PLINT *, input) : Array of nlegend cmap0 text colors. - text (const char *const *, input) : Array of nlegend text string + text (const char * const *, input) : Array of nlegend text string annotations. box_colors (const PLINT *, input) : Array of nlegend cmap0 colors @@ -2764,7 +3029,7 @@ symbols to be drawn across the width of the plotted area ( PL_LEGEND_SYMBOL). - symbols (const char *const *, input) : Array of nlegend symbols + symbols (const char * const *, input) : Array of nlegend symbols (plpoin indices) ( PL_LEGEND_SYMBOL). ") @@ -2816,9 +3081,11 @@ n (PLINT, input) : Number of points defining line. - x (PLFLT *, input) : Pointer to array with x coordinates of points. + x (const PLFLT *, input) : Pointer to array with x coordinates of + points. - y (PLFLT *, input) : Pointer to array with y coordinates of points. + y (const PLFLT *, input) : Pointer to array with y coordinates of + points. ") plline; @@ -2845,11 +3112,14 @@ n (PLINT, input) : Number of points defining line. - x (PLFLT *, input) : Pointer to array with x coordinates of points. + x (const PLFLT *, input) : Pointer to array with x coordinates of + points. - y (PLFLT *, input) : Pointer to array with y coordinates of points. + y (const PLFLT *, input) : Pointer to array with y coordinates of + points. - z (PLFLT *, input) : Pointer to array with z coordinates of points. + z (const PLFLT *, input) : Pointer to array with z coordinates of + points. ") plline3; @@ -2860,7 +3130,7 @@ This sets the line style according to one of eight predefined patterns (also see plstyl). - Redacted form: pllsty(n) + Redacted form: pllsty(lin) This function is used in examples 9,12,22,25. @@ -2868,18 +3138,18 @@ SYNOPSIS: -pllsty(n) +pllsty(lin) ARGUMENTS: - n (PLINT, input) : Integer value between 1 and 8. Line style 1 is a - continuous line, line style 2 is a line with short dashes and + lin (PLINT, input) : Integer value between 1 and 8. Line style 1 is + a continuous line, line style 2 is a line with short dashes and gaps, line style 3 is a line with long dashes and gaps, line style 4 has long dashes and short gaps and so on. ") pllsty; -%feature( "docstring", "Plot continental outline in world coordinates. +%feature( "docstring", "Plot continental outline in world coordinates DESCRIPTION: @@ -2912,8 +3182,8 @@ the corresponding plot coordinates. If no transform is desired, mapform can be replaced by NULL. - type (char *, input) : type is a character string. The value of - this parameter determines the type of background. The possible + type (const char *, input) : type is a character string. The value + of this parameter determines the type of background. The possible values are: \"globe\" -- continental outlines \"usa\" -- USA and state boundaries \"cglobe\" -- continental outlines and countries @@ -2940,7 +3210,7 @@ ") plmap; -%feature( "docstring", "Plot latitude and longitude lines. +%feature( "docstring", "Plot latitude and longitude lines DESCRIPTION: @@ -3024,14 +3294,14 @@ ARGUMENTS: - x (PLFLT *, input) : Pointer to set of x coordinate values at which - the function is evaluated. + x (const PLFLT *, input) : Pointer to set of x coordinate values at + which the function is evaluated. - y (PLFLT *, input) : Pointer to set of y coordinate values at which - the function is evaluated. + y (const PLFLT *, input) : Pointer to set of y coordinate values at + which the function is evaluated. - z (PLFLT **, input) : Pointer to a vectored two-dimensional array - with set of function values. + z (const PLFLT * const *, input) : Pointer to a vectored + two-dimensional array with set of function values. nx (PLINT, input) : Number of x values at which function is evaluated. @@ -3047,16 +3317,20 @@ opt=DRAW_LINEXY: Network of lines is drawn connecting points at which function is defined. ") +#ifdef SWIG_OCTAVE +my_plmesh; +#else plmesh; +#endif -%feature( "docstring", "Magnitude colored plot surface mesh with contour. +%feature( "docstring", "Magnitude colored plot surface mesh with contour DESCRIPTION: - Identical to plmesh but with extra functionalities: the surface mesh - can be colored accordingly to the current z value being plotted, a - contour plot can be drawn at the base XY plane, and a curtain can be - drawn between the plotted function border and the base XY plane. + A more powerful form of plmesh: the surface mesh can be colored + accordingly to the current z value being plotted, a contour plot can + be drawn at the base XY plane, and a curtain can be drawn between the + plotted function border and the base XY plane. Redacted form: plmeshc(x, y, z, opt, clevel) @@ -3070,14 +3344,14 @@ ARGUMENTS: - x (PLFLT *, input) : Pointer to set of x coordinate values at which - the function is evaluated. + x (const PLFLT *, input) : Pointer to set of x coordinate values at + which the function is evaluated. - y (PLFLT *, input) : Pointer to set of y coordinate values at which - the function is evaluated. + y (const PLFLT *, input) : Pointer to set of y coordinate values at + which the function is evaluated. - z (PLFLT **, input) : Pointer to a vectored two-dimensional array - with set of function values. + z (const PLFLT * const *, input) : Pointer to a vectored + two-dimensional array with set of function values. nx (PLINT, input) : Number of x values at which function is evaluated. @@ -3104,12 +3378,16 @@ the borders of the plotted function. - clevel (PLFLT *, input) : Pointer to the array that defines the - contour level spacing. + clevel (const PLFLT *, input) : Pointer to the array that defines + the contour level spacing. nlevel (PLINT, input) : Number of elements in the clevel array. ") +#ifdef SWIG_OCTAVE +my_plmeshc; +#else plmeshc; +#endif %feature( "docstring", "Creates a new stream and makes it the default @@ -3196,7 +3474,7 @@ ") plmtex; -%feature( "docstring", "Write text relative to viewport boundaries in 3D plots. +%feature( "docstring", "Write text relative to viewport boundaries in 3D plots DESCRIPTION: @@ -3280,14 +3558,14 @@ ARGUMENTS: - x (PLFLT *, input) : Pointer to set of x coordinate values at which - the function is evaluated. + x (const PLFLT *, input) : Pointer to set of x coordinate values at + which the function is evaluated. - y (PLFLT *, input) : Pointer to set of y coordinate values at which - the function is evaluated. + y (const PLFLT *, input) : Pointer to set of y coordinate values at + which the function is evaluated. - z (PLFLT **, input) : Pointer to a vectored two-dimensional array - with set of function values. + z (const PLFLT * const *, input) : Pointer to a vectored + two-dimensional array with set of function values. nx (PLINT, input) : Number of x values at which function is evaluated. @@ -3308,19 +3586,25 @@ should be draw on the figure. If side is true sides are drawn, otherwise no sides are drawn. ") +#ifdef SWIG_OCTAVE +my_plot3d; +#else plot3d; +#endif -%feature( "docstring", "Magnitude colored plot surface with contour. +%feature( "docstring", "Magnitude colored plot surface with contour DESCRIPTION: - Identical to plot3d but with extra functionalities: the surface mesh - can be colored accordingly to the current z value being plotted, a - contour plot can be drawn at the base XY plane, and a curtain can be + Aside from dropping the + side functionality this is a more powerful form of plot3d: the surface + mesh can be colored accordingly to the current z value being plotted, + a contour plot can be drawn at the base XY plane, and a curtain can be drawn between the plotted function border and the base XY plane. The - arguments are identical to plmeshc. The only difference between - plmeshc and plot3dc is that plmeshc draws the bottom side of the - surface, while plot3dc only draws the surface as viewed from the top. + arguments are identical to those of plmeshc. The only difference + between plmeshc and plot3dc is that plmeshc draws the bottom side of + the surface, while plot3dc only draws the surface as viewed from the + top. Redacted form: General: plot3dc(x, y, z, opt, clevel) Perl/PDL: Not available? @@ -3333,9 +3617,140 @@ SYNOPSIS: plot3dc(x, y, z, nx, ny, opt, clevel, nlevel) + +ARGUMENTS: + + x (const PLFLT *, input) : Pointer to set of x coordinate values at + which the function is evaluated. + + y (const PLFLT *, input) : Pointer to set of y coordinate values at + which the function is evaluated. + + z (const PLFLT * const *, input) : Pointer to a vectored + two-dimensional array with set of function values. + + nx (PLINT, input) : Number of x values at which function is + evaluated. + + ny (PLINT, input) : Number of y values at which function is + evaluated. + + opt (PLINT, input) : Determines the way in which the surface is + represented. To specify more than one option just add the options, + e.g. DRAW_LINEXY + MAG_COLOR opt=DRAW_LINEX: Lines are drawn + showing z as a function of x for each value of y[j]. + opt=DRAW_LINEY: Lines are drawn showing z as a function of y + for each value of x[i]. + opt=DRAW_LINEXY: Network of lines is drawn connecting points + at which function is defined. + opt=MAG_COLOR: Each line in the mesh is colored according to + the z value being plotted. The color is used from the current + color map 1. + opt=BASE_CONT: A contour plot is drawn at the base XY plane + using parameters + nlevel and + clevel. + opt=DRAW_SIDES: draws a curtain between the base XY plane and + the borders of the plotted function. + + + clevel (const PLFLT *, input) : Pointer to the array that defines + the contour level spacing. + + nlevel (PLINT, input) : Number of elements in the clevel array. ") +#ifdef SWIG_OCTAVE +my_plot3dc; +#else plot3dc; +#endif +%feature( "docstring", "Magnitude colored plot surface with contour for z[x][y] with y index limits + +DESCRIPTION: + + When the implementation is completed this variant of plot3dc (see that + function's documentation for more details) should be suitable for the + case where the area of the x, y coordinate grid where z is defined can + be non-rectangular. The implementation is incomplete so the last 4 + parameters of plot3dcl; indexxmin, indexxmax, indexymin, and + indexymax; are currently ignored and the functionality is otherwise + identical to that of plot3dc. + + Redacted form: General: plot3dcl(x, y, z, opt, clevel, indexxmin, + indexymin, indexymax) + Perl/PDL: Not available? + + + This function is not used in any example. + + + +SYNOPSIS: + +plot3dcl(x, y, z, nx, ny, opt, clevel, nlevel, indexxmin, indexxmax, indexymin, indexymax) + +ARGUMENTS: + + x (const PLFLT *, input) : Pointer to set of x coordinate values at + which the function is evaluated. + + y (const PLFLT *, input) : Pointer to set of y coordinate values at + which the function is evaluated. + + z (const PLFLT * const *, input) : Pointer to a vectored + two-dimensional array with set of function values. + + nx (PLINT, input) : Number of x values at which the function is + evaluated. + + ny (PLINT, input) : Number of y values at which the function is + evaluated. + + opt (PLINT, input) : Determines the way in which the surface is + represented. To specify more than one option just add the options, + e.g. DRAW_LINEXY + MAG_COLOR opt=DRAW_LINEX: Lines are drawn + showing z as a function of x for each value of y[j]. + opt=DRAW_LINEY: Lines are drawn showing z as a function of y + for each value of x[i]. + opt=DRAW_LINEXY: Network of lines is drawn connecting points + at which function is defined. + opt=MAG_COLOR: Each line in the mesh is colored according to + the z value being plotted. The color is used from the current + color map 1. + opt=BASE_CONT: A contour plot is drawn at the base XY plane + using parameters + nlevel and + clevel. + opt=DRAW_SIDES: draws a curtain between the base XY plane and + the borders of the plotted function. + + + clevel (const PLFLT *, input) : Pointer to the array that defines + the contour level spacing. + + nlevel (PLINT, input) : Number of elements in the clevel array. + + indexxmin (PLINT, input) : The index value (which must be ≥ 0) that + corresponds to the first x index where z is defined. + + indexxmax (PLINT, input) : The index value (which must be ≤ nx) + which corresponds (by convention) to one more than the last x + index value where z is defined. + + indexymin (const PLINT *, input) : Array of y index values which + all must be ≥ 0. These values are the first y index where z is + defined for a particular x index in the range from indexxmin to + indexxmax - 1. The dimension of indexymin is indexxmax. + + indexymax (const PLINT *, input) : Array of y index values which + all must be ≤ ny. These values correspond (by convention) to one + more than the last y index where z is defined for a particular x + index in the range from indexxmin to indexxmax - 1. The dimension + of indexymax is indexxmax. +") +plot3dcl; + %feature( "docstring", "Parse command-line arguments DESCRIPTION: @@ -3381,7 +3796,7 @@ p_argc (int *, input) : pointer to number of arguments. - argv (char **, input) : Pointer to character array containing + argv (const char **, input) : Pointer to character array containing *p_argc command-line arguments. mode (PLINT, input) : Parsing mode with the following @@ -3430,17 +3845,17 @@ nlin (PLINT, input) : Number of sets of lines making up the pattern, either 1 or 2. - inc (PLINT *, input) : Pointer to array with nlin elements. + inc (const PLINT *, input) : Pointer to array with nlin elements. Specifies the line inclination in tenths of a degree. (Should be between -900 and 900). - del (PLINT *, input) : Pointer to array with nlin elements. + del (const PLINT *, input) : Pointer to array with nlin elements. Specifies the spacing in micrometers between the lines making up the pattern. ") plpat; -%feature( "docstring", "Draw a line between two points, accounting for coordinate transforms. +%feature( "docstring", "Draw a line between two points, accounting for coordinate transforms DESCRIPTION: @@ -3505,11 +3920,11 @@ n (PLINT, input) : Number of points in the x and y arrays. - x (PLFLT *, input) : Pointer to an array with X coordinates of - points. + x (const PLFLT *, input) : Pointer to an array with X coordinates + of points. - y (PLFLT *, input) : Pointer to an array with Y coordinates of - points. + y (const PLFLT *, input) : Pointer to an array with Y coordinates + of points. code (PLINT, input) : Hershey symbol code (in \"ascii-indexed\" form with -1 <= code <= 127) corresponding to a glyph to be plotted at @@ -3547,14 +3962,14 @@ n (PLINT, input) : Number of points in the x and y arrays. - x (PLFLT *, input) : Pointer to an array with X coordinates of - points. + x (const PLFLT *, input) : Pointer to an array with X coordinates + of points. - y (PLFLT *, input) : Pointer to an array with Y coordinates of - points. + y (const PLFLT *, input) : Pointer to an array with Y coordinates + of points. - z (PLFLT *, input) : Pointer to an array with Z coordinates of - points. + z (const PLFLT *, input) : Pointer to an array with Z coordinates + of points. code (PLINT, input) : Hershey symbol code (in \"ascii-indexed\" form with -1 <= code <= 127) corresponding to a glyph to be plotted at @@ -3600,15 +4015,18 @@ n (PLINT, input) : Number of points defining line. - x (PLFLT *, input) : Pointer to array with x coordinates of points. + x (const PLFLT *, input) : Pointer to array with x coordinates of + points. - y (PLFLT *, input) : Pointer to array with y coordinates of points. + y (const PLFLT *, input) : Pointer to array with y coordinates of + points. - z (PLFLT *, input) : Pointer to array with z coordinates of points. + z (const PLFLT *, input) : Pointer to array with z coordinates of + points. - draw (PLBOOL *, input) : Pointer to array which controls drawing - the segments of the polygon. If draw[i] is true, then the polygon - segment from index [i] to [i+1] is drawn, otherwise, not. + draw (const PLBOOL *, input) : Pointer to array which controls + drawing the segments of the polygon. If draw[i] is true, then the + polygon segment from index [i] to [i+1] is drawn, otherwise, not. ifcc (PLBOOL, input) : If ifcc is true the directionality of the polygon is determined by assuming the points are laid out in a @@ -3624,7 +4042,7 @@ Sets the number of places after the decimal point in numeric labels. - Redacted form: plprec(set, prec) + Redacted form: plprec(setp, prec) This function is used in example 29. @@ -3632,14 +4050,14 @@ SYNOPSIS: -plprec(set, prec) +plprec(setp, prec) ARGUMENTS: - set (PLINT, input) : If set is equal to 0 then PLplot automatically - determines the number of places to use after the decimal point in - numeric labels (like those used to label axes). If set is 1 then - prec se... [truncated message content] |
From: <ai...@us...> - 2014-03-09 19:12:47
|
Revision: 13048 http://sourceforge.net/p/plplot/code/13048 Author: airwin Date: 2014-03-09 19:12:43 +0000 (Sun, 09 Mar 2014) Log Message: ----------- Improve PLplot version information for the installed headers. Propagate PLPLOT_VERSION macro to the installed headers. #define and propagate PLPLOT_VERSION_MAJOR, PLPLOT_VERSION_MINOR, and PLPLOT_VERSION_PATCH to the installed headers. Modified Paths: -------------- trunk/cmake/modules/plplot_version.cmake trunk/include/plConfig.h.in trunk/plplot_config.h.in Modified: trunk/cmake/modules/plplot_version.cmake =================================================================== --- trunk/cmake/modules/plplot_version.cmake 2014-03-09 18:54:17 UTC (rev 13047) +++ trunk/cmake/modules/plplot_version.cmake 2014-03-09 19:12:43 UTC (rev 13048) @@ -4,13 +4,17 @@ # Version data that need review and possible modification for each release. +set(PLPLOT_VERSION_MAJOR 5) +set(PLPLOT_VERSION_MINOR 10) +set(PLPLOT_VERSION_PATCH 0) + # Overall PLplot version number. -set(PLPLOT_VERSION 5.10.0) +set(PLPLOT_VERSION ${PLPLOT_VERSION_MAJOR}.${PLPLOT_VERSION_MINOR}.${PLPLOT_VERSION_PATCH}) # CPack version numbers for release tarball name. -set(CPACK_PACKAGE_VERSION_MAJOR 5) -set(CPACK_PACKAGE_VERSION_MINOR 10) -set(CPACK_PACKAGE_VERSION_PATCH 0) +set(CPACK_PACKAGE_VERSION_MAJOR ${PLPLOT_VERSION_MAJOR}) +set(CPACK_PACKAGE_VERSION_MINOR ${PLPLOT_VERSION_MINOR}) +set(CPACK_PACKAGE_VERSION_PATCH ${PLPLOT_VERSION_PATCH}) # PLplot library version information. Modified: trunk/include/plConfig.h.in =================================================================== --- trunk/include/plConfig.h.in 2014-03-09 18:54:17 UTC (rev 13047) +++ trunk/include/plConfig.h.in 2014-03-09 19:12:43 UTC (rev 13048) @@ -47,6 +47,12 @@ # include <plplot_config.h> #endif +// PLplot version information. +#define PLPLOT_VERSION_MAJOR "@PLPLOT_VERSION_MAJOR@" +#define PLPLOT_VERSION_MINOR "@PLPLOT_VERSION_MINOR@" +#define PLPLOT_VERSION_PATCH "@PLPLOT_VERSION_PATCH@" +#define PLPLOT_VERSION "@PLPLOT_VERSION@" + // Define if you have c++ accessible stdint.h #cmakedefine PL_HAVE_CXX_STDINT_H Modified: trunk/plplot_config.h.in =================================================================== --- trunk/plplot_config.h.in 2014-03-09 18:54:17 UTC (rev 13047) +++ trunk/plplot_config.h.in 2014-03-09 19:12:43 UTC (rev 13048) @@ -282,9 +282,6 @@ // Define to 1 if you have the ANSI C header files. #cmakedefine STDC_HEADERS 1 -// Overall PLplot version number -#define PLPLOT_VERSION "@PLPLOT_VERSION@" - // Location of Tcl stuff #define TCL_DIR "@TCL_DIR@" // Consistent package versions for Itcl and friends found by PLplot This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ai...@us...> - 2014-03-12 20:54:26
|
Revision: 13050 http://sourceforge.net/p/plplot/code/13050 Author: airwin Date: 2014-03-12 20:54:20 +0000 (Wed, 12 Mar 2014) Log Message: ----------- Initial commit of experimental build_system support for finding Qt5. Modified Paths: -------------- trunk/bindings/qt_gui/CMakeLists.txt trunk/cmake/modules/qt.cmake trunk/drivers/CMakeLists.txt trunk/examples/c++/CMakeLists.txt trunk/include/CMakeLists.txt trunk/include/moc_files.h.in trunk/plplot_config.h.in trunk/src/CMakeLists.txt Modified: trunk/bindings/qt_gui/CMakeLists.txt =================================================================== --- trunk/bindings/qt_gui/CMakeLists.txt 2014-03-12 05:25:04 UTC (rev 13049) +++ trunk/bindings/qt_gui/CMakeLists.txt 2014-03-12 20:54:20 UTC (rev 13050) @@ -20,9 +20,6 @@ if(ENABLE_qt) # Set up Qt4-based build environment. - if(NOT QT_LIBRARIES) - message(FATAL_ERROR "include(${QT_USE_FILE}) failed in bindings/qt_gui subdirectory.") - endif(NOT QT_LIBRARIES) set(qt_SOURCE plqt.cpp) include_directories( ${CMAKE_SOURCE_DIR}/include @@ -43,15 +40,32 @@ else(ANY_QT_DEVICE) message(FATAL_ERROR "Internal build system inconsistency between ENABLE_qt true and ANY_QT_DEVICE false.") endif(ANY_QT_DEVICE) - target_link_libraries( - plplotqt${LIB_TAG} - plplot${LIB_TAG} - ${MATH_LIB} - ${QT_LIBRARIES} - ) - # Update the target COMPILE_DEFINITIONS and INCLUDE_DIRECTORIES - set_qt_target_properties(plplotqt${LIB_TAG}) + if(PLPLOT_USE_QT5) + # According to advice from Steve Kelly on the Cmake list, QtGui + # is a dependency of QtSvg so is not needed here, but I will + # leave it in since it is informative. + qt5_use_modules(plplotqt${LIB_TAG} QtSvg QtGui) + + target_link_libraries( + plplotqt${LIB_TAG} + plplot${LIB_TAG} + ${MATH_LIB} + ) + else(PLPLOT_USE_QT5) + if(NOT QT_LIBRARIES) + message(FATAL_ERROR "PLplot build-system inconsistency in bindings/qt_gui subdirectory.") + endif(NOT QT_LIBRARIES) + target_link_libraries( + plplotqt${LIB_TAG} + plplot${LIB_TAG} + ${MATH_LIB} + ${QT_LIBRARIES} + ) + # Update the target COMPILE_DEFINITIONS and INCLUDE_DIRECTORIES + set_qt_target_properties(plplotqt${LIB_TAG}) + endif(PLPLOT_USE_QT5) + if(NON_TRANSITIVE) # Note that there are implicit references to classes in QtCore, QtGui and QtSvg # so we need to add all three to the list of libraries to link to plplotqtd. Modified: trunk/cmake/modules/qt.cmake =================================================================== --- trunk/cmake/modules/qt.cmake 2014-03-12 05:25:04 UTC (rev 13049) +++ trunk/cmake/modules/qt.cmake 2014-03-12 20:54:20 UTC (rev 13050) @@ -91,51 +91,65 @@ endif(ENABLE_qt AND NOT PLD_extqt) if(ENABLE_qt) - # Use a minimum version corresponding to the version installed by - # Debian Wheezy. I assume all other non-enterprise Linux distros, - # Mac OS X, and Windows platforms also give access to this version - # of Qt4 or later. - find_package(Qt4 4.8.2 COMPONENTS QtCore QtGui QtSvg) + option(PLPLOT_USE_QT5 "Experimental (and currently quite limited) option to try Qt5" OFF) - # QT4_FOUND is defined to be true or false by find_package(Qt4 ...) - if(QT4_FOUND) - # Do not include(${QT_USE_FILE}) here because it contaminates ALL - # compile properties with Qt flags from (this) top-level directory - # on down. Use this alternative instead which includes a function - # set_qt_target_properties which should be called with the - # appropriate target argument whenever a Qt4-related target is built. - include(ndp_UseQt4) + if(PLPLOT_USE_QT5) + find_package(Qt5Core 5.2.1) + if(NOT Qt5Core_FOUND) + message(STATUS + "WARNING: Qt5Core could not be found so falling back to Qt4" + ) + set(PLPLOT_USE_QT5 OFF CACHE BOOL "Experimental (and currently quite limited) option to try Qt5" FORCE) + endif(NOT Qt5Core_FOUND) + endif(PLPLOT_USE_QT5) - # QT_COMPILE_DEFINITIONS (used only for pc_qt_COMPILE_FLAGS below), - # QT_INCLUDE_DIRECTORIES (used only for pc_qt_COMPILE_FLAGS below), - # NP_COMPILE_DEFINITIONS (used only in set_qt_properties function), - # NP_QT_INCLUDE_DIRECTORIES (used only in set_qt_properties function), and - # QT_LIBRARIES (used wherever link with qt libraries is needed) - # are now defined. + if(NOT PLPLOT_USE_QT5) + # Use a minimum version corresponding to the version installed by + # Debian Wheezy. I assume all other non-enterprise Linux distros, + # Mac OS X, and Windows platforms also give access to this version + # of Qt4 or later. + find_package(Qt4 4.8.2 COMPONENTS QtCore QtGui QtSvg) - # Only used for pkg-config case. - set(pc_qt_COMPILE_FLAGS ${QT_COMPILE_DEFINES} ${QT_INCLUDE_DIRECTORIES}) - string(REGEX REPLACE ";" " " pc_qt_COMPILE_FLAGS "${pc_qt_COMPILE_FLAGS}") - # Work around pkg-config issues (see bug report - # <https://bugs.freedesktop.org/show_bug.cgi?id=72584>) with - # multiple -isystem tags by replacing them with "-I" - string(REGEX REPLACE "-isystem " "-I" pc_qt_COMPILE_FLAGS "${pc_qt_COMPILE_FLAGS}") - message(STATUS "pc_qt_COMPILE_FLAGS = ${pc_qt_COMPILE_FLAGS}") + # QT4_FOUND is defined to be true or false by find_package(Qt4 ...) + if(QT4_FOUND) + # Do not include(${QT_USE_FILE}) here because it contaminates ALL + # compile properties with Qt flags from (this) top-level directory + # on down. Use this alternative instead which includes a function + # set_qt_target_properties which should be called with the + # appropriate target argument whenever a Qt4-related target is built. + include(ndp_UseQt4) - # These two must be explicitly empty since other alternative means - # are used. - set(qt_COMPILE_FLAGS) - set(qt_LINK_FLAGS) + # QT_COMPILE_DEFINITIONS (used only for pc_qt_COMPILE_FLAGS below), + # QT_INCLUDE_DIRECTORIES (used only for pc_qt_COMPILE_FLAGS below), + # NP_COMPILE_DEFINITIONS (used only in set_qt_properties function), + # NP_QT_INCLUDE_DIRECTORIES (used only in set_qt_properties function), and + # QT_LIBRARIES (used wherever link with qt libraries is needed) + # are now defined. - # ${QT_LIBRARY_DIR} defined by above find_package(Qt4 ...) call. - set(qt_RPATH ${QT_LIBRARY_DIR}) - filter_rpath(qt_RPATH) - #message("qt_LIBRARY_DIR = ${qt_LIBRARY_DIR}") - else(QT4_FOUND) - message(STATUS "WARNING: Suitable Qt4 development environment not found so disabling Qt bindings." - ) - set(ENABLE_qt OFF CACHE BOOL "Enable Qt bindings" FORCE) - endif(QT4_FOUND) + # Only used for pkg-config case. + set(pc_qt_COMPILE_FLAGS ${QT_COMPILE_DEFINES} ${QT_INCLUDE_DIRECTORIES}) + string(REGEX REPLACE ";" " " pc_qt_COMPILE_FLAGS "${pc_qt_COMPILE_FLAGS}") + # Work around pkg-config issues (see bug report + # <https://bugs.freedesktop.org/show_bug.cgi?id=72584>) with + # multiple -isystem tags by replacing them with "-I" + string(REGEX REPLACE "-isystem " "-I" pc_qt_COMPILE_FLAGS "${pc_qt_COMPILE_FLAGS}") + message(STATUS "pc_qt_COMPILE_FLAGS = ${pc_qt_COMPILE_FLAGS}") + + # These two must be explicitly empty since other alternative means + # are used. + set(qt_COMPILE_FLAGS) + set(qt_LINK_FLAGS) + + # ${QT_LIBRARY_DIR} defined by above find_package(Qt4 ...) call. + set(qt_RPATH ${QT_LIBRARY_DIR}) + filter_rpath(qt_RPATH) + #message("qt_LIBRARY_DIR = ${qt_LIBRARY_DIR}") + else(QT4_FOUND) + message(STATUS "WARNING: Suitable Qt4 development environment not found so disabling Qt bindings." + ) + set(ENABLE_qt OFF CACHE BOOL "Enable Qt bindings" FORCE) + endif(QT4_FOUND) + endif(NOT PLPLOT_USE_QT5) endif(ENABLE_qt) # All qt devices depend on ENABLE_qt @@ -177,11 +191,22 @@ set(ENABLE_pyqt4 OFF CACHE BOOL "Enable pyqt4 Python extension module " FORCE) endif(ENABLE_pyqt4 AND NOT ENABLE_qt) -if(ENABLE_qt) +## FIXME if/when there is a way to make pyqt work with Qt5. +if(ENABLE_pyqt4 AND PLPLOT_USE_QT5) + message(STATUS + "WARNING: PLPLOT_USE_QT5 is ON so " + "setting ENABLE_pyqt4 to OFF." + ) + set(ENABLE_pyqt4 OFF CACHE BOOL "Enable pyqt4 Python extension module " FORCE) +endif(ENABLE_pyqt4 AND PLPLOT_USE_QT5) + +## FIXME when a method has been found to use Qt5 with the traditional +## Makefile + pkg-config build system for the installed examples. +if(ENABLE_qt AND NOT PLPLOT_USE_QT5) set(qt_gui_true "") -else(ENABLE_qt) +else(ENABLE_qt AND NOT PLPLOT_USE_QT5) set(qt_gui_true "#") -endif(ENABLE_qt) +endif(ENABLE_qt AND NOT PLPLOT_USE_QT5) if(ANY_QT_DEVICE) if(ENABLE_DYNDRIVERS) Modified: trunk/drivers/CMakeLists.txt =================================================================== --- trunk/drivers/CMakeLists.txt 2014-03-12 05:25:04 UTC (rev 13049) +++ trunk/drivers/CMakeLists.txt 2014-03-12 20:54:20 UTC (rev 13050) @@ -106,27 +106,40 @@ if(SOURCE_ROOT_NAME STREQUAL "qt") if(ANY_QT_DEVICE) add_library(${SOURCE_ROOT_NAME} MODULE ${${SOURCE_ROOT_NAME}_SOURCE}) - if(NOT ENABLE_qt) - # Note this code is never executed considering the way the - # build system is set up now (see cmake/modules/qt.cmake), - # but nevertheless keep it for the future in case we ever - # want to deal with the case where we want to build the qt - # device without building the plplotqtd library - add_dependencies(${SOURCE_ROOT_NAME} moc_outfile_generated) - endif(NOT ENABLE_qt) - if(NOT QT_LIBRARIES) - message(FATAL_ERROR "Internal build system inconsistency. QT_LIBRARIESis empty but it should be populated") - endif(NOT QT_LIBRARIES) - - target_link_libraries( - ${SOURCE_ROOT_NAME} - plplot${LIB_TAG} - ${MATH_LIB} - ${QT_LIBRARIES} - ${${SOURCE_ROOT_NAME}_TARGETS} - ) - # Update the target COMPILE_DEFINITIONS and INCLUDE_DIRECTORIES - set_qt_target_properties(${SOURCE_ROOT_NAME}) + if(PLPLOT_USE_QT5) + # According to advice from Steve Kelly on the Cmake list, QtGui + # is a dependency of QtSvg so is not needed here, but I will + # leave it in since it is informative. + qt5_use_modules(${SOURCE_ROOT_NAME} QtSvg QtGui) + target_link_libraries( + ${SOURCE_ROOT_NAME} + plplot${LIB_TAG} + ${MATH_LIB} + ${${SOURCE_ROOT_NAME}_TARGETS} + ) + else(PLPLOT_USE_QT5) + if(NOT ENABLE_qt) + # Note this code is never executed considering the way the + # build system is set up now (see cmake/modules/qt.cmake), + # but nevertheless keep it for the future in case we ever + # want to deal with the case where we want to build the qt + # device without building the plplotqtd library + add_dependencies(${SOURCE_ROOT_NAME} moc_outfile_generated) + endif(NOT ENABLE_qt) + if(NOT QT_LIBRARIES) + message(FATAL_ERROR "Internal build system inconsistency. QT_LIBRARIESis empty but it should be populated") + endif(NOT QT_LIBRARIES) + + target_link_libraries( + ${SOURCE_ROOT_NAME} + plplot${LIB_TAG} + ${MATH_LIB} + ${QT_LIBRARIES} + ${${SOURCE_ROOT_NAME}_TARGETS} + ) + # Update the target COMPILE_DEFINITIONS and INCLUDE_DIRECTORIES + set_qt_target_properties(${SOURCE_ROOT_NAME}) + endif(PLPLOT_USE_QT5) else(ANY_QT_DEVICE) message(FATAL_ERROR "Internal build system inconsistency. Attempt to build dynamic qt device when ANY_QT_DEVICE is false.") endif(ANY_QT_DEVICE) Modified: trunk/examples/c++/CMakeLists.txt =================================================================== --- trunk/examples/c++/CMakeLists.txt 2014-03-12 05:25:04 UTC (rev 13049) +++ trunk/examples/c++/CMakeLists.txt 2014-03-12 20:54:20 UTC (rev 13050) @@ -142,7 +142,8 @@ target_link_libraries(wxPLplotDemo plplotwxwidgets${LIB_TAG} plplotcxx${LIB_TAG} ${wxwidgets_LINK_FLAGS} ${MATH_LIB}) endif(ENABLE_wxwidgets) - if(ENABLE_qt) +## FIXME for the case when PLPLOT_USE_QT5 is ON. + if(ENABLE_qt AND NOT PLPLOT_USE_QT5) if(CORE_BUILD) set(BUILD_qt_example ON) if(NOT QT_LIBRARIES) @@ -181,5 +182,5 @@ # Update the target COMPILE_DEFINITIONS and INCLUDE_DIRECTORIES set_qt_target_properties(qt_example) endif(BUILD_qt_example) - endif(ENABLE_qt) + endif(ENABLE_qt AND NOT PLPLOT_USE_QT5) endif(BUILD_TEST) Modified: trunk/include/CMakeLists.txt =================================================================== --- trunk/include/CMakeLists.txt 2014-03-12 05:25:04 UTC (rev 13049) +++ trunk/include/CMakeLists.txt 2014-03-12 20:54:20 UTC (rev 13050) @@ -120,23 +120,29 @@ list(APPEND MOC_OPTIONS -DPLD_extqt) endif(PLD_extqt) if(MOC_OPTIONS) - # This creates a custom command with OUTPUT ${QT_MOC_OUTFILES}. - qt4_wrap_cpp( - QT_MOC_OUTFILES - ${CMAKE_SOURCE_DIR}/include/qt.h - OPTIONS ${MOC_OPTIONS} - ) - # Use custom target to force correct target dependencies in - # various directories. This target is used in three possible - # places (qt_gui, drivers, or src) depending on build options. - # The CMake dependency parser creates the necessary file - # dependency on qt.h for all qt-related source code so there is no - # need to add the ${QT_MOC_OUTFILES} file dependencies for any - # target dependency on moc_outfiles_generated. - add_custom_target(moc_outfile_generated DEPENDS ${QT_MOC_OUTFILES}) + # Use entirely different method for Qt5. + if(NOT PLPLOT_USE_QT5) + # This creates a custom command with OUTPUT ${QT_MOC_OUTFILES}. + qt4_wrap_cpp( + QT_MOC_OUTFILES + ${CMAKE_SOURCE_DIR}/include/qt.h + OPTIONS ${MOC_OPTIONS} + ) + # Use custom target to force correct target dependencies in + # various directories. This target is used in three possible + # places (qt_gui, drivers, or src) depending on build options. + # The CMake dependency parser creates the necessary file + # dependency on qt.h for all qt-related source code so there is no + # need to add the ${QT_MOC_OUTFILES} file dependencies for any + # target dependency on moc_outfiles_generated. + add_custom_target(moc_outfile_generated DEPENDS ${QT_MOC_OUTFILES}) + endif(NOT PLPLOT_USE_QT5) # #include ${QT_MOC_OUTFILES}) indirectly via the configured moc_files.h # header. + # This header is #included by plqt.cpp so must be configured regardless + # of whether Qt4 or Qt5 is being used although it is effectively empty + # in the latter case. configure_file( ${CMAKE_CURRENT_SOURCE_DIR}/moc_files.h.in ${CMAKE_CURRENT_BINARY_DIR}/moc_files.h Modified: trunk/include/moc_files.h.in =================================================================== --- trunk/include/moc_files.h.in 2014-03-12 05:25:04 UTC (rev 13049) +++ trunk/include/moc_files.h.in 2014-03-12 20:54:20 UTC (rev 13050) @@ -1,6 +1,7 @@ // Configured header file listing the moc-generated files to include in plqt.cpp. #ifndef __MOC_FILES_H__ #define __MOC_FILES_H__ - +#ifndef PLPLOT_USE_QT5 #include "@QT_MOC_OUTFILES@" -#endif // __MOC_FILES_H__i +#endif +#endif // __MOC_FILES_H__ Modified: trunk/plplot_config.h.in =================================================================== --- trunk/plplot_config.h.in 2014-03-12 05:25:04 UTC (rev 13049) +++ trunk/plplot_config.h.in 2014-03-12 20:54:20 UTC (rev 13050) @@ -306,3 +306,6 @@ // Define as `fork' if `vfork' does not work. #cmakedefine vfork + +// Define if the PLplot build uses Qt5 (rather than Qt4). +#cmakedefine PLPLOT_USE_QT5 Modified: trunk/src/CMakeLists.txt =================================================================== --- trunk/src/CMakeLists.txt 2014-03-12 05:25:04 UTC (rev 13049) +++ trunk/src/CMakeLists.txt 2014-03-12 20:54:20 UTC (rev 13050) @@ -120,16 +120,20 @@ foreach(SOURCE_ROOT_NAME ${DRIVERS_LIST}) #message("${SOURCE_ROOT_NAME}_SOURCE = ${${SOURCE_ROOT_NAME}_SOURCE}") list(APPEND plplot${LIB_TAG}_LIB_SRCS ${${SOURCE_ROOT_NAME}_SOURCE}) + if(SOURCE_ROOT_NAME STREQUAL "qt") if(ANY_QT_DEVICE) # For this case libplot must have a target dependency on the # moc files generated in the binary include directory. set(qt_dependency moc_outfile_generated) - if(NOT QT_LIBRARIES) - message(FATAL_ERROR "include(${QT_USE_FILE}) failed in src subdirectory.") - endif(NOT QT_LIBRARIES) - set(DRIVERS_LINK_FLAGS ${DRIVERS_LINK_FLAGS} ${QT_LIBRARIES}) + # Qt5 handled a completely different way. + if(NOT PLPLOT_USE_QT5) + if(NOT QT_LIBRARIES) + message(FATAL_ERROR "include(${QT_USE_FILE}) failed in src subdirectory.") + endif(NOT QT_LIBRARIES) + set(DRIVERS_LINK_FLAGS ${DRIVERS_LINK_FLAGS} ${QT_LIBRARIES}) + endif(NOT PLPLOT_USE_QT5) else(ANY_QT_DEVICE) message(FATAL_ERROR "Internal build system inconsistency. Attempt to build static qt device when ANY_QT_DEVICE is false.") @@ -180,6 +184,13 @@ add_library(plplot${LIB_TAG} ${plplot${LIB_TAG}_LIB_SRCS}) add_dependencies(plplot${LIB_TAG} plhershey-unicode.h_built ${qt_dependency}) +if(NOT ENABLE_DYNDRIVERS AND ANY_QT_DEVICE AND PLPLOT_USE_QT5) + # According to advice from Steve Kelly on the Cmake list, QtGui + # is a dependency of QtSvg so is not needed here, but I will + # leave it in since it is informative. + qt5_use_modules(plplot${LIB_TAG} QtSvg QtGui) +endif(NOT ENABLE_DYNDRIVERS AND ANY_QT_DEVICE AND PLPLOT_USE_QT5) + if(NON_TRANSITIVE) # empty list ==> non-transitive linking for everything that links to # libplplotd in the shared libraries case. This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ai...@us...> - 2014-03-13 19:26:28
|
Revision: 13052 http://sourceforge.net/p/plplot/code/13052 Author: airwin Date: 2014-03-13 19:26:25 +0000 (Thu, 13 Mar 2014) Log Message: ----------- Fix typographical error in how Qt5 components are specified. (This change only affects the experimental -DPLPLOT_USE_QT5=ON case.) Modified Paths: -------------- trunk/bindings/qt_gui/CMakeLists.txt trunk/drivers/CMakeLists.txt trunk/src/CMakeLists.txt Modified: trunk/bindings/qt_gui/CMakeLists.txt =================================================================== --- trunk/bindings/qt_gui/CMakeLists.txt 2014-03-12 23:39:20 UTC (rev 13051) +++ trunk/bindings/qt_gui/CMakeLists.txt 2014-03-13 19:26:25 UTC (rev 13052) @@ -42,10 +42,10 @@ endif(ANY_QT_DEVICE) if(PLPLOT_USE_QT5) - # According to advice from Steve Kelly on the Cmake list, QtGui - # is a dependency of QtSvg so is not needed here, but I will - # leave it in since it is informative. - qt5_use_modules(plplotqt${LIB_TAG} QtSvg QtGui) + # According to advice from Steve Kelly on the Cmake list, the Qt5 + # Gui component is a dependency of the Qt5 Svg component so is not + # needed here, but I will leave it in since it is informative. + qt5_use_modules(plplotqt${LIB_TAG} Svg Gui) target_link_libraries( plplotqt${LIB_TAG} Modified: trunk/drivers/CMakeLists.txt =================================================================== --- trunk/drivers/CMakeLists.txt 2014-03-12 23:39:20 UTC (rev 13051) +++ trunk/drivers/CMakeLists.txt 2014-03-13 19:26:25 UTC (rev 13052) @@ -107,10 +107,10 @@ if(ANY_QT_DEVICE) add_library(${SOURCE_ROOT_NAME} MODULE ${${SOURCE_ROOT_NAME}_SOURCE}) if(PLPLOT_USE_QT5) - # According to advice from Steve Kelly on the Cmake list, QtGui - # is a dependency of QtSvg so is not needed here, but I will - # leave it in since it is informative. - qt5_use_modules(${SOURCE_ROOT_NAME} QtSvg QtGui) + # According to advice from Steve Kelly on the Cmake list, the Qt5 + # Gui component is a dependency of the Qt5 Svg component so is not + # needed here, but I will leave it in since it is informative. + qt5_use_modules(${SOURCE_ROOT_NAME} Svg Gui) target_link_libraries( ${SOURCE_ROOT_NAME} plplot${LIB_TAG} Modified: trunk/src/CMakeLists.txt =================================================================== --- trunk/src/CMakeLists.txt 2014-03-12 23:39:20 UTC (rev 13051) +++ trunk/src/CMakeLists.txt 2014-03-13 19:26:25 UTC (rev 13052) @@ -185,10 +185,10 @@ add_dependencies(plplot${LIB_TAG} plhershey-unicode.h_built ${qt_dependency}) if(NOT ENABLE_DYNDRIVERS AND ANY_QT_DEVICE AND PLPLOT_USE_QT5) - # According to advice from Steve Kelly on the Cmake list, QtGui - # is a dependency of QtSvg so is not needed here, but I will - # leave it in since it is informative. - qt5_use_modules(plplot${LIB_TAG} QtSvg QtGui) + # According to advice from Steve Kelly on the Cmake list, the Qt5 + # Gui component is a dependency of the Qt5 Svg component so is not + # needed here, but I will leave it in since it is informative. + qt5_use_modules(plplot${LIB_TAG} Svg Gui) endif(NOT ENABLE_DYNDRIVERS AND ANY_QT_DEVICE AND PLPLOT_USE_QT5) if(NON_TRANSITIVE) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <and...@us...> - 2014-03-14 23:17:46
|
Revision: 13057 http://sourceforge.net/p/plplot/code/13057 Author: andrewross Date: 2014-03-14 23:17:42 +0000 (Fri, 14 Mar 2014) Log Message: ----------- Some more minor fixes to get plplot compiling with Qt5. These were required for Linux with Qt 5.2.0. Modified Paths: -------------- trunk/bindings/qt_gui/CMakeLists.txt trunk/bindings/qt_gui/plqt.cpp trunk/drivers/CMakeLists.txt trunk/src/CMakeLists.txt Modified: trunk/bindings/qt_gui/CMakeLists.txt =================================================================== --- trunk/bindings/qt_gui/CMakeLists.txt 2014-03-14 17:24:49 UTC (rev 13056) +++ trunk/bindings/qt_gui/CMakeLists.txt 2014-03-14 23:17:42 UTC (rev 13057) @@ -45,7 +45,7 @@ # According to advice from Steve Kelly on the Cmake list, the Qt5 # Gui component is a dependency of the Qt5 Svg component so is not # needed here, but I will leave it in since it is informative. - qt5_use_modules(plplotqt${LIB_TAG} Svg Gui) + qt5_use_modules(plplotqt${LIB_TAG} Svg Gui PrintSupport) target_link_libraries( plplotqt${LIB_TAG} Modified: trunk/bindings/qt_gui/plqt.cpp =================================================================== --- trunk/bindings/qt_gui/plqt.cpp 2014-03-14 17:24:49 UTC (rev 13056) +++ trunk/bindings/qt_gui/plqt.cpp 2014-03-14 23:17:42 UTC (rev 13057) @@ -614,7 +614,9 @@ setOutputFileName( QString( fileName ) ); if ( ifeps ) { +#ifndef PLPLOT_USE_QT5 setOutputFormat( QPrinter::PostScriptFormat ); +#endif } else { Modified: trunk/drivers/CMakeLists.txt =================================================================== --- trunk/drivers/CMakeLists.txt 2014-03-14 17:24:49 UTC (rev 13056) +++ trunk/drivers/CMakeLists.txt 2014-03-14 23:17:42 UTC (rev 13057) @@ -110,7 +110,7 @@ # According to advice from Steve Kelly on the Cmake list, the Qt5 # Gui component is a dependency of the Qt5 Svg component so is not # needed here, but I will leave it in since it is informative. - qt5_use_modules(${SOURCE_ROOT_NAME} Svg Gui) + qt5_use_modules(${SOURCE_ROOT_NAME} Svg Gui PrintSupport) target_link_libraries( ${SOURCE_ROOT_NAME} plplot${LIB_TAG} Modified: trunk/src/CMakeLists.txt =================================================================== --- trunk/src/CMakeLists.txt 2014-03-14 17:24:49 UTC (rev 13056) +++ trunk/src/CMakeLists.txt 2014-03-14 23:17:42 UTC (rev 13057) @@ -188,7 +188,7 @@ # According to advice from Steve Kelly on the Cmake list, the Qt5 # Gui component is a dependency of the Qt5 Svg component so is not # needed here, but I will leave it in since it is informative. - qt5_use_modules(plplot${LIB_TAG} Svg Gui) + qt5_use_modules(plplot${LIB_TAG} Svg Gui PrintSupport) endif(NOT ENABLE_DYNDRIVERS AND ANY_QT_DEVICE AND PLPLOT_USE_QT5) if(NON_TRANSITIVE) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ai...@us...> - 2014-03-31 00:57:59
|
Revision: 13088 http://sourceforge.net/p/plplot/code/13088 Author: airwin Date: 2014-03-31 00:57:53 +0000 (Mon, 31 Mar 2014) Log Message: ----------- Fix up several comprehensive testing issues with epa_build. The wxwidgets-related tests are still individually implemented for all platforms and for the Windows case those tests are dependencies of the more comprehensive interactive test targets. However, for the Unix case those dependencies have been dropped because of "forced mousing" issue that occurs with gtk+3 variant of wxwidgets that is beginning to be available (e.g., for epa_build) on Unix. Implement DROP_GTK_PLUS_2_BUILDS option (which defaults to OFF). When that option is turned ON, all targets which are related to gtk+2 only are dropped. This avoids build-time errors (for the static drivers case) or run-time errors (for the dynamic drivers case) due to clashes with gtk+3 libraries that are potentially used for other parts of PLplot (e.g., the cairo and wxwidgets device drivers). Tested on Linux using the build_plplot target of epa_build that is configured with -DCOMPREHENSIVE_PLPLOT_TEST_INTERACTIVE=ON and -DCOMPREHENSIVE_PLPLOT_TEST_NONINTERACTIVE=ON Modified Paths: -------------- trunk/cmake/epa_build/plplot/CMakeLists.txt trunk/cmake/epa_build/plplot_lite/CMakeLists.txt trunk/cmake/modules/cairo.cmake trunk/cmake/modules/ocaml.cmake trunk/cmake/modules/plplot.cmake trunk/examples/CMakeLists.txt trunk/plplot_test/CMakeLists.txt trunk/plplot_test/plplot-test-interactive.sh.in Modified: trunk/cmake/epa_build/plplot/CMakeLists.txt =================================================================== --- trunk/cmake/epa_build/plplot/CMakeLists.txt 2014-03-27 17:56:11 UTC (rev 13087) +++ trunk/cmake/epa_build/plplot/CMakeLists.txt 2014-03-31 00:57:53 UTC (rev 13088) @@ -64,6 +64,13 @@ # other PLplot dependencies that are epa_built. set(cmake_args -DENABLE_octave=OFF) +# Drop gtk+2-only dependencies since those clash (at build time for static +# device drivers and at run-time with dynamic device drivers) with +# gtk+3 that is used with epa_build. +list(APPEND cmake_args + -DDROP_GTK_PLUS_2_BUILDS=ON + ) + if(MSYS_PLATFORM) # Turn off the cairo and qt device drivers for plplot on Windows # until the pango and qt4_lite packages and all their dependencies @@ -88,7 +95,7 @@ find_file(IS_PLPLOT_SOURCE_TREE plcore.c HINTS ${PLPLOT_LOCAL_SOURCE_DIR}/src NO_DEFAULT_PATH -) + ) if(NOT IS_PLPLOT_SOURCE_TREE) message(FATAL_ERROR "epa_build not located in cmake/epa_build in a PLplot source tree") Modified: trunk/cmake/epa_build/plplot_lite/CMakeLists.txt =================================================================== --- trunk/cmake/epa_build/plplot_lite/CMakeLists.txt 2014-03-27 17:56:11 UTC (rev 13087) +++ trunk/cmake/epa_build/plplot_lite/CMakeLists.txt 2014-03-31 00:57:53 UTC (rev 13088) @@ -53,6 +53,13 @@ # other PLplot dependencies that are epa_built. set(cmake_args -DENABLE_octave=OFF) +# Drop gtk+2-only dependencies since those clash (at build time for static +# device drivers and at run-time with dynamic device drivers) with +# gtk+3 that is used with epa_build. +list(APPEND cmake_args + -DDROP_GTK_PLUS_2_BUILDS=ON + ) + # In addition turn off wxwidgets, cairo, and qt for plplot_lite. list(APPEND cmake_args -DPLD_wxwidgets=OFF Modified: trunk/cmake/modules/cairo.cmake =================================================================== --- trunk/cmake/modules/cairo.cmake 2014-03-27 17:56:11 UTC (rev 13087) +++ trunk/cmake/modules/cairo.cmake 2014-03-31 00:57:53 UTC (rev 13088) @@ -48,6 +48,11 @@ # set the environment variable CMAKE_LIBRARY_PATH. # See cmake documentation for further details. +# Turn off PLD_xcairo if gtk+2 dependencies need to be dropped. +if(DROP_GTK_PLUS_2_BUILDS) + set(PLD_xcairo OFF CACHE BOOL "Enable xcairo device" FORCE) +endif(DROP_GTK_PLUS_2_BUILDS) + # Look for cairo headers and libraries with pkg-config if( PLD_memcairo Modified: trunk/cmake/modules/ocaml.cmake =================================================================== --- trunk/cmake/modules/ocaml.cmake 2014-03-27 17:56:11 UTC (rev 13087) +++ trunk/cmake/modules/ocaml.cmake 2014-03-31 00:57:53 UTC (rev 13088) @@ -243,8 +243,12 @@ else(OCAML_HAS_CAIRO) message(STATUS "WARNING:" "Cairo OCaml library not found. Disabling lablgtk2 support") - set(OCAML_HAS_GTK OFF CACHE BOOL "OCaml has the cairo.lablgtk2 package" FORCE) + set(OCAML_HAS_GTK OFF CACHE BOOL "OCaml has the cairo.lablgtk2 package" FORCE) endif(OCAML_HAS_CAIRO) + + if(DROP_GTK_PLUS_2_BUILDS) + set(OCAML_HAS_GTK OFF CACHE BOOL "OCaml has the cairo.lablgtk2 package" FORCE) + endif(DROP_GTK_PLUS_2_BUILDS) if(OCAML_HAS_GTK) set(text_gtk Modified: trunk/cmake/modules/plplot.cmake =================================================================== --- trunk/cmake/modules/plplot.cmake 2014-03-27 17:56:11 UTC (rev 13087) +++ trunk/cmake/modules/plplot.cmake 2014-03-31 00:57:53 UTC (rev 13088) @@ -21,6 +21,8 @@ option(ADD_SPECIAL_CONSISTENCY_CHECKING "Add extra source-tree consistency checking targets that require special tools" OFF) +option(DROP_GTK_PLUS_2_BUILDS "Drop builds of gtk+2-only targets that clash with gtk+3 dependencies" OFF) + # target that depends on all check targets. add_custom_target(check_all) Modified: trunk/examples/CMakeLists.txt =================================================================== --- trunk/examples/CMakeLists.txt 2014-03-27 17:56:11 UTC (rev 13087) +++ trunk/examples/CMakeLists.txt 2014-03-31 00:57:53 UTC (rev 13088) @@ -761,7 +761,17 @@ if(files_examples_c AND targets_examples_c) add_dependencies(test_c_${device} ${targets_examples_c}) endif(files_examples_c AND targets_examples_c) - list(APPEND interactive_targets_LIST test_c_${device}) + if(NOT device STREQUAL "wxwidgets") + list(APPEND interactive_targets_LIST test_c_${device}) + elseif(WIN32_AND_NOT_CYGWIN) + list(APPEND interactive_targets_LIST test_c_${device}) + else(NOT device STREQUAL "wxwidgets") + message(STATUS "WARNING: The test_c_wxwidgets target can be run independently on + the Unix platform, but it generates \"forced mousing\" screen + refreshes for the wxwidgets-3.0.0 case so it is temporarily + excluded from being a dependency of other more general interactive + test targets") + endif(NOT device STREQUAL "wxwidgets") if(ENABLE_octave) get_property(targets_examples_octave GLOBAL PROPERTY TARGETS_examples_octave) @@ -836,7 +846,15 @@ if(FILE_DEPENDS_wxwidgets) add_dependencies(test_wxPLplotDemo test_wxwidgets_dyndriver) endif(FILE_DEPENDS_wxwidgets) - list(APPEND interactive_targets_LIST test_wxPLplotDemo) + if(WIN32_AND_NOT_CYGWIN) + list(APPEND interactive_targets_LIST test_wxPLplotDemo) + else(WIN32_AND_NOT_CYGWIN) + message(STATUS "WARNING: The test_wxPLplotDemo target can be run independently on + the Unix platform, but it generates \"forced mousing\" screen + refreshes for the wxwidgets-3.0.0 case so it is temporarily + excluded from being a dependency of other more general interactive + test targets") + endif(WIN32_AND_NOT_CYGWIN) endif(ENABLE_wxwidgets) if(PLD_extqt) Modified: trunk/plplot_test/CMakeLists.txt =================================================================== --- trunk/plplot_test/CMakeLists.txt 2014-03-27 17:56:11 UTC (rev 13087) +++ trunk/plplot_test/CMakeLists.txt 2014-03-31 00:57:53 UTC (rev 13088) @@ -2,7 +2,7 @@ ### ### Process this file with cmake to produce Makefile ### -# Copyright (C) 2006-2013 Alan W. Irwin +# Copyright (C) 2006-2014 Alan W. Irwin # # This file is part of PLplot. # @@ -63,7 +63,9 @@ @ONLY ) - # Set up optional tests in the configured plplot-test-interactive.sh file. + # Set up optional tests in the configured plplot-test-interactive.sh file + # which is used by the traditional build system for the installed + # examples to do some interactive testing. set(pkgIndex_LOCATION ${DATA_DIR}) set(SHELL_TEST_PLTCL_STANDARD_EXAMPLES 1) @@ -87,6 +89,17 @@ set(SHELL_TEST_WISH_RUNALLDEMOS 0) endif(BUILD_SHARED_LIBS) + if(WIN32_AND_NOT_CYGWIN) + set(SHELL_TEST_WXWIDGETS 1) + else(WIN32_AND_NOT_CYGWIN) + # FIXME. + # The wxwidgets device on Unix generates "forced mousing" screen + # refreshes for the wxwidgets-3.0.0 case so it is temporarily excluded + # from the interactive tests done for the traditional build system + # for the installed examples. + set(SHELL_TEST_WXWIDGETS 0) + endif(WIN32_AND_NOT_CYGWIN) + configure_file( plplot-test-interactive.sh.in ${CMAKE_CURRENT_BINARY_DIR}/plplot-test-interactive.sh Modified: trunk/plplot_test/plplot-test-interactive.sh.in =================================================================== --- trunk/plplot_test/plplot-test-interactive.sh.in 2014-03-27 17:56:11 UTC (rev 13087) +++ trunk/plplot_test/plplot-test-interactive.sh.in 2014-03-31 00:57:53 UTC (rev 13088) @@ -107,7 +107,10 @@ # These blank-delimited strings must be consistent with previous configured # list of devices. -POSSIBLE_INTERACTIVE_DEVICES_LIST="xwin tk ntk xcairo gcw wxwidgets qtwidget" +POSSIBLE_INTERACTIVE_DEVICES_LIST="xwin tk ntk xcairo gcw qtwidget" +if [ "@SHELL_TEST_WXWIDGETS@" -ne 0 ] ; then + POSSIBLE_INTERACTIVE_DEVICES_LIST="$POSSIBLE_INTERACTIVE_DEVICES_LIST wxwidgets" +fi POSSIBLE_DEVICES_LIST="$POSSIBLE_INTERACTIVE_DEVICES_LIST extcairo extqt" # Default DEVICES_LIST is all eligible devices if environment variable @@ -167,7 +170,7 @@ COUNT=$(( $COUNT + 1 )) fi -if [ "@ENABLE_wxwidgets@" = "ON" -a "@ENABLE_cxx@" = "ON" ] ; then +if [ "@ENABLE_wxwidgets@" = "ON" -a "@ENABLE_cxx@" = "ON" -a "@SHELL_TEST_WXWIDGETS@" -ne 0 ] ; then INDEX_LIST="$INDEX_LIST $COUNT" DIRECTORY[$COUNT]="${EXAMPLES_DIR}/c++" COMMAND[$COUNT]="./wxPLplotDemo" This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ai...@us...> - 2014-04-04 17:31:26
|
Revision: 13096 http://sourceforge.net/p/plplot/code/13096 Author: airwin Date: 2014-04-04 17:31:22 +0000 (Fri, 04 Apr 2014) Log Message: ----------- Solve name clash <https://sourceforge.net/p/plplot/bugs/146/> by replacing HAVE_CONFIG_H ==> PLPLOT_HAVE_CONFIG_H everywhere within our source tree. Modified Paths: -------------- trunk/CMakeLists.txt trunk/bindings/ocaml/CMakeLists.txt trunk/bindings/ocaml/plcairo/CMakeLists.txt trunk/include/plConfig.h.in trunk/plplot_config.h.in Modified: trunk/CMakeLists.txt =================================================================== --- trunk/CMakeLists.txt 2014-04-04 16:21:39 UTC (rev 13095) +++ trunk/CMakeLists.txt 2014-04-04 17:31:22 UTC (rev 13096) @@ -125,7 +125,7 @@ ${CMAKE_CURRENT_BINARY_DIR}/plplot_config.h ) # Allow access to the generated plplot_config.h for this build. -add_definitions("-DHAVE_CONFIG_H") +add_definitions("-DPLPLOT_HAVE_CONFIG_H") # Install top-level files # Enable testing framework for examples Modified: trunk/bindings/ocaml/CMakeLists.txt =================================================================== --- trunk/bindings/ocaml/CMakeLists.txt 2014-04-04 16:21:39 UTC (rev 13095) +++ trunk/bindings/ocaml/CMakeLists.txt 2014-04-04 17:31:22 UTC (rev 13096) @@ -98,7 +98,7 @@ ${CMAKE_CURRENT_BINARY_DIR}/dllplplot_stubs.so ${CMAKE_CURRENT_BINARY_DIR}/libplplot_stubs.a COMMAND ${OCAMLC} -ccopt -I${CAMLIDL_LIB_DIR} -c ${CMAKE_CURRENT_BINARY_DIR}/plplot_core_stubs.c - COMMAND ${OCAMLC} -ccopt -I${CMAKE_SOURCE_DIR}/include -ccopt -I${CMAKE_BINARY_DIR}/include -ccopt -I${CMAKE_SOURCE_DIR}/lib/qsastime -ccopt -I${CMAKE_BINARY_DIR} -ccopt -I${CAMLIDL_LIB_DIR} -ccopt -DHAVE_CONFIG_H -c ${CMAKE_CURRENT_SOURCE_DIR}/plplot_impl.c + COMMAND ${OCAMLC} -ccopt -I${CMAKE_SOURCE_DIR}/include -ccopt -I${CMAKE_BINARY_DIR}/include -ccopt -I${CMAKE_SOURCE_DIR}/lib/qsastime -ccopt -I${CMAKE_BINARY_DIR} -ccopt -I${CAMLIDL_LIB_DIR} -ccopt -DPLPLOT_HAVE_CONFIG_H -c ${CMAKE_CURRENT_SOURCE_DIR}/plplot_impl.c COMMAND ${OCAMLMKLIB} -o plplot_stubs -L${CAMLIDL_LIB_DIR} -lcamlidl -L${CMAKE_BINARY_DIR}/src -lplplot${LIB_TAG} ${CMAKE_CURRENT_BINARY_DIR}/plplot_core_stubs.o ${CMAKE_CURRENT_BINARY_DIR}/plplot_impl.o ${ocaml_STATIC_FLAGS} DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/plplot_core_stubs.c Modified: trunk/bindings/ocaml/plcairo/CMakeLists.txt =================================================================== --- trunk/bindings/ocaml/plcairo/CMakeLists.txt 2014-04-04 16:21:39 UTC (rev 13095) +++ trunk/bindings/ocaml/plcairo/CMakeLists.txt 2014-04-04 17:31:22 UTC (rev 13096) @@ -36,7 +36,7 @@ ${CMAKE_CURRENT_BINARY_DIR}/plcairo_impl.o ${CMAKE_CURRENT_BINARY_DIR}/dllplcairo_stubs.so ${CMAKE_CURRENT_BINARY_DIR}/libplcairo_stubs.a - COMMAND ${OCAMLC} -ccopt "${CAIRO_COMPILE_FLAGS}" -cclib "${CAIRO_LINK_FLAGS}" -ccopt -I${CMAKE_SOURCE_DIR}/include -ccopt -I${CMAKE_BINARY_DIR}/include -ccopt -I${CMAKE_SOURCE_DIR}/lib/qsastime -ccopt -I${CMAKE_BINARY_DIR} -ccopt -DHAVE_CONFIG_H -c ${CMAKE_CURRENT_SOURCE_DIR}/plcairo_impl.c + COMMAND ${OCAMLC} -ccopt "${CAIRO_COMPILE_FLAGS}" -cclib "${CAIRO_LINK_FLAGS}" -ccopt -I${CMAKE_SOURCE_DIR}/include -ccopt -I${CMAKE_BINARY_DIR}/include -ccopt -I${CMAKE_SOURCE_DIR}/lib/qsastime -ccopt -I${CMAKE_BINARY_DIR} -ccopt -DPLPLOT_HAVE_CONFIG_H -c ${CMAKE_CURRENT_SOURCE_DIR}/plcairo_impl.c COMMAND ${OCAMLMKLIB} -o plcairo_stubs ${CAIRO_LINK_FLAGS_LIST} -L${CMAKE_BINARY_DIR}/src -lplplot${LIB_TAG} ${CMAKE_CURRENT_BINARY_DIR}/plcairo_impl.o DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/plcairo_impl.c Modified: trunk/include/plConfig.h.in =================================================================== --- trunk/include/plConfig.h.in 2014-04-04 16:21:39 UTC (rev 13095) +++ trunk/include/plConfig.h.in 2014-04-04 17:31:22 UTC (rev 13096) @@ -29,7 +29,7 @@ // any user applications). Therefore, the configured plConfig.h // should be installed. In contrast, plplot_config.h.in (note, // plConfig.h #includes plplot_config.h for the core build because -// HAVE_CONFIG_H is #defined in that case) contains configured macros +// PLPLOT_HAVE_CONFIG_H is #defined in that case) contains configured macros // that are only required for the core build. Therefore, in contrast // to plConfig.h, plplot_config.h should not be installed. // @@ -43,7 +43,7 @@ #ifndef __PLCONFIG_H__ #define __PLCONFIG_H__ -#ifdef HAVE_CONFIG_H +#ifdef PLPLOT_HAVE_CONFIG_H # include <plplot_config.h> #endif Modified: trunk/plplot_config.h.in =================================================================== --- trunk/plplot_config.h.in 2014-04-04 16:21:39 UTC (rev 13095) +++ trunk/plplot_config.h.in 2014-04-04 17:31:22 UTC (rev 13096) @@ -3,7 +3,7 @@ // examples (and presumably any user applications). Therefore, the // configured plplot_config.h should not be installed. In contrast, // include/plConfig.h.in (note, the configured plConfig.h result -// #includes plplot_config.h for the core build because HAVE_CONFIG_H +// #includes plplot_config.h for the core build because PLPLOT_HAVE_CONFIG_H // is #defined in that case) contains configured macros that are // required for the core build, installed examples build, and build of // user applications. Therefore, in contrast to plplot_config.h, This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ai...@us...> - 2014-04-21 00:26:14
|
Revision: 13105 http://sourceforge.net/p/plplot/code/13105 Author: airwin Date: 2014-04-21 00:26:11 +0000 (Mon, 21 Apr 2014) Log Message: ----------- Implement and use (in the CMake-based build system for the installed examples) a cmake-packages approach as documented at <http://www.cmake.org/cmake/help/git-next/manual/cmake-packages.7.html> for handling the CMake export of information concerning the PLplot libraries. This change in approach allows finding Qt5 automatically as part of the CMake package configuration file. That solves a linking issue with the previous approach when exporting a static version of the plplot library that depends on Qt5. Also refine the condition under which qt_example is tested both for the core build and the CMake-based build of the installed examples. Modified Paths: -------------- trunk/examples/CMakeLists.txt trunk/src/CMakeLists.txt Added Paths: ----------- trunk/src/plplotConfig.cmake Modified: trunk/examples/CMakeLists.txt =================================================================== --- trunk/examples/CMakeLists.txt 2014-04-21 00:16:56 UTC (rev 13104) +++ trunk/examples/CMakeLists.txt 2014-04-21 00:26:11 UTC (rev 13105) @@ -332,9 +332,9 @@ # Install qt support file. if(ANY_QT_DEVICE) install(FILES - ${CMAKE_SOURCE_DIR}/cmake/modules/ndp_UseQt4.cmake - DESTINATION ${DATA_DIR}/examples/cmake/modules - ) + ${CMAKE_SOURCE_DIR}/cmake/modules/ndp_UseQt4.cmake + DESTINATION ${DATA_DIR}/examples/cmake/modules + ) endif(ANY_QT_DEVICE) # Install PLplot-specific language support files needed for CMake-based @@ -409,7 +409,7 @@ #Configure variables and enable languages as needed. include(plplot_configure) - include(export_plplot) + find_package(plplot) endif(CORE_BUILD) @@ -857,7 +857,7 @@ endif(WIN32_AND_NOT_CYGWIN) endif(ENABLE_wxwidgets) - if(PLD_extqt) + if(PLD_extqt AND TARGET qt_example) add_custom_target(test_qt_example COMMAND qt_example DEPENDS @@ -868,7 +868,7 @@ add_dependencies(test_qt_example test_qt_dyndriver) endif(FILE_DEPENDS_qt) list(APPEND interactive_targets_LIST test_qt_example) - endif(PLD_extqt) + endif(PLD_extqt AND TARGET qt_example) endif(ENABLE_cxx) Modified: trunk/src/CMakeLists.txt =================================================================== --- trunk/src/CMakeLists.txt 2014-04-21 00:16:56 UTC (rev 13104) +++ trunk/src/CMakeLists.txt 2014-04-21 00:26:11 UTC (rev 13105) @@ -420,8 +420,45 @@ # This exports information for every target in the whole build that # has the EXPORT export_plplot signature (as above) for the # install(TARGETS ... # command. -install(EXPORT export_plplot DESTINATION ${DATA_DIR}/examples/cmake/modules) +install(EXPORT export_plplot DESTINATION ${LIB_DIR}/cmake/plplot) +# Install associated CMake package config file. + +install(FILES plplotConfig.cmake DESTINATION ${LIB_DIR}/cmake/plplot) + +if(NOT ENABLE_DYNDRIVERS AND ANY_QT_DEVICE AND PLPLOT_USE_QT5) + # For this special case QT_LIBRARIES is not populated so must + # this alternative method to add Qt(5) libraries to the pkg-config file + # for the plplot library. + + # FIXME? This list will need revision whenever the PLplot qt device + # driver dependencies on the Qt5 components are revised. + set(Qt5_library_name_list + Core + Svg + Gui + Widgets + PrintSupport + ) + + set(Qt5_library_fullpath_list) + foreach(Qt5_library_name ${Qt5_library_name_list}) + find_library(Qt5${Qt5_library_name}_fullpath Qt5${Qt5_library_name}) + if(Qt5${Qt5_library_name}_fullpath) + list(APPEND Qt5_library_fullpath_list ${Qt5${Qt5_library_name}_fullpath}) + else(Qt5${Qt5_library_name}_fullpath) + message(STATUS "Qt5${Qt5_library_name}_fullpath = ${Qt5${Qt5_library_name}_fullpath}") + message(FATAL_ERROR "Qt5${Qt5_library_name} library not found.") + endif(Qt5${Qt5_library_name}_fullpath) + endforeach(Qt5_library_name ${Qt5_library_name_list}) + + pkg_config_link_flags(Qt5_library_LINK_FLAGS "${Qt5_library_fullpath_list}") + set( + libplplot${LIB_TAG}_LINK_FLAGS + "${libplplot${LIB_TAG}_LINK_FLAGS} ${Qt5_library_LINK_FLAGS}" + ) +endif(NOT ENABLE_DYNDRIVERS AND ANY_QT_DEVICE AND PLPLOT_USE_QT5) + #message("libplplot${LIB_TAG}_LINK_FLAGS = ${libplplot${LIB_TAG}_LINK_FLAGS}") string(REGEX REPLACE ";" " " Added: trunk/src/plplotConfig.cmake =================================================================== --- trunk/src/plplotConfig.cmake (rev 0) +++ trunk/src/plplotConfig.cmake 2014-04-21 00:26:11 UTC (rev 13105) @@ -0,0 +1,7 @@ +if(PLPLOT_USE_QT5) + # Find Qt5 components that we need. + find_package(Qt5 5.2.0 COMPONENTS Svg Gui PrintSupport) +endif(PLPLOT_USE_QT5) + +# Find export files in same directory location as present file. +include(${CMAKE_CURRENT_LIST_DIR}/export_plplot.cmake) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ai...@us...> - 2014-04-26 02:11:30
|
Revision: 13108 http://sourceforge.net/p/plplot/code/13108 Author: airwin Date: 2014-04-26 02:11:26 +0000 (Sat, 26 Apr 2014) Log Message: ----------- Update build system for the PLPLOT_USE_QT5 case so that qt_example can be built successfully in the build tree, and in the installed examples tree for both the traditional and CMake-based build systems for that tree. This change removes the last of the restrictions on the PLPLOT_USE_QT5 case other than the disabling of pyqt4 for this case. Tested on Linux using the comprehensive test procedure (which tests all three build systems mentioned above for each of our 3 fundamental build configurations, i.e., shared libraries/dynamic devices, shared libraries/static devices, and static libraries/static devices). Modified Paths: -------------- trunk/bindings/qt_gui/CMakeLists.txt trunk/cmake/modules/qt.cmake trunk/examples/c++/CMakeLists.txt trunk/src/CMakeLists.txt Modified: trunk/bindings/qt_gui/CMakeLists.txt =================================================================== --- trunk/bindings/qt_gui/CMakeLists.txt 2014-04-26 02:02:55 UTC (rev 13107) +++ trunk/bindings/qt_gui/CMakeLists.txt 2014-04-26 02:11:26 UTC (rev 13108) @@ -114,15 +114,25 @@ RUNTIME DESTINATION ${BIN_DIR} ) - # Transform "${QT_LIBRARIES}" to the standard pkg-config form. - pkg_config_link_flags( - libplplotqt${LIB_TAG}_LINK_FLAGS - "${QT_LIBRARIES}" - ) + if(PKG_CONFIG_EXECUTABLE) + if(PLPLOT_USE_QT5) + # For this special case QT_LIBRARIES is not populated so must + # use this alternative method to add Qt(5) libraries to the pkg-config file + # for the plplotqt library. + set( + libplplotqt${LIB_TAG}_LINK_FLAGS + "${Qt5_library_LINK_FLAGS}" + ) + else(PLPLOT_USE_QT5) + # Transform "${QT_LIBRARIES}" to the standard pkg-config form. + pkg_config_link_flags( + libplplotqt${LIB_TAG}_LINK_FLAGS + "${QT_LIBRARIES}" + ) + endif(PLPLOT_USE_QT5) - # Configure pkg-config *.pc file corresponding to the compile and link - # flags needed by a Qt GUI executable using extqt to gain access to PLplot. - if(PKG_CONFIG_EXECUTABLE) + # Configure pkg-config *.pc file corresponding to the compile and link + # flags needed by a Qt GUI executable using extqt to gain access to PLplot. if(LIB_TAG) set(PC_PRECISION "double") else(LIB_TAG) Modified: trunk/cmake/modules/qt.cmake =================================================================== --- trunk/cmake/modules/qt.cmake 2014-04-26 02:02:55 UTC (rev 13107) +++ trunk/cmake/modules/qt.cmake 2014-04-26 02:11:26 UTC (rev 13108) @@ -1,6 +1,6 @@ # cmake/modules/qt.cmake # -# Copyright (C) 2009 Alan W. Irwin +# Copyright (C) 2009-2014 Alan W. Irwin # # This file is part of PLplot. # @@ -65,20 +65,89 @@ endif(DEFAULT_NO_BINDINGS) if(ENABLE_qt) - option(PLPLOT_USE_QT5 "Experimental (and currently quite limited) option to try Qt5" OFF) + option(PLPLOT_USE_QT5 "Experimental option to try Qt5" OFF) if(PLPLOT_USE_QT5) - find_package(Qt5Core 5.2.0) - if(Qt5Core_FOUND) + find_package(Qt5 5.2.0 COMPONENTS Svg Gui PrintSupport) + if(Qt5_FOUND) message(STATUS "Attempting to use Qt5 so have set PLD_epsqt to OFF since Qt5 does not support PostScript") set(PLD_epsqt OFF CACHE BOOL "Enable Qt EPS device" FORCE) - else(Qt5Core_FOUND) + else(Qt5_FOUND) message(STATUS "WARNING: Qt5Core could not be found so falling back to Qt4" ) set(PLPLOT_USE_QT5 OFF CACHE BOOL "Experimental (and currently quite limited) option to try Qt5" FORCE) - endif(Qt5Core_FOUND) + endif(Qt5_FOUND) endif(PLPLOT_USE_QT5) + + if(PLPLOT_USE_QT5) + # Calculate Qt5_library_COMPILE_FLAGS and Qt5_library_LINK_FLAGS + # to be used for the pkg-config case. + + # Note that theoretically you could use execute_process and cmake + # --find-package option to determine these flags, but + # --find-package is not maintained now and might well disappear in + # the future, there is currently a Qt5 CMake support file bug + # (badly named GL library) that needs to be addressed for + # --find-package to work even at the moment, and also there is a + # Qt5 CMake support file bug such that the required macro option + # settings are not returned by this approach. + + # Another alternative would be to use the plplotqt target properties, + # but translating those into simple compile and link flags is non-trivial + # and in fact is the issue that still needs to be addressed + # in order for --find-package to work properly for all varieties + # of target properties. + + # Therefore, use a brute-force approach (determined by looking at + # the compile flags and link flags that CMake finally figures out + # to build the plplotqt library). + + # FIXME? This list will need revision whenever the PLplot dependencies + # on the Qt5 components are revised. + set(Qt5_library_name_list + Core + Gui + PrintSupport + Widgets + Svg + ) + + # Qt5 requires position-independent code. Assume -fPIC will + # create that although apparently that flag is not supported on + # all platforms even for gcc, and may not be supported by other + # compilers. + set(pc_qt_COMPILE_FLAGS "-fPIC") + foreach(Qt5_library_name ${Qt5_library_name_list}) + string(TOUPPER ${Qt5_library_name} macro_core_name) + # Set required macros so headers will be found. + set(pc_qt_COMPILE_FLAGS "${pc_qt_COMPILE_FLAGS} -DQT_${macro_core_name}_LIB") + find_file(${Qt5_library_name}_header_directory Qt${Qt5_library_name}) + if(${Qt5_library_name}_header_directory) + if(${Qt5_library_name} STREQUAL "Core") + get_filename_component(parent_directory ${${Qt5_library_name}_header_directory} DIRECTORY) + set(pc_qt_COMPILE_FLAGS "${pc_qt_COMPILE_FLAGS} -I${parent_directory}") + endif(${Qt5_library_name} STREQUAL "Core") + set(pc_qt_COMPILE_FLAGS "${pc_qt_COMPILE_FLAGS} -I${${Qt5_library_name}_header_directory}") + else(${Qt5_library_name}_header_directory) + message(STATUS "${Qt5_library_name}_header_directory = ${${Qt5_library_name}_header_directory}") + message(FATAL_ERROR "${Qt${Qt5_library_name}} header_directory not found.") + endif(${Qt5_library_name}_header_directory) + endforeach(Qt5_library_name ${Qt5_library_name_list}) + + set(Qt5_library_fullpath_list) + foreach(Qt5_library_name ${Qt5_library_name_list}) + find_library(Qt5${Qt5_library_name}_fullpath Qt5${Qt5_library_name}) + if(Qt5${Qt5_library_name}_fullpath) + list(APPEND Qt5_library_fullpath_list ${Qt5${Qt5_library_name}_fullpath}) + else(Qt5${Qt5_library_name}_fullpath) + message(STATUS "Qt5${Qt5_library_name}_fullpath = ${Qt5${Qt5_library_name}_fullpath}") + message(FATAL_ERROR "Qt5${Qt5_library_name} library not found.") + endif(Qt5${Qt5_library_name}_fullpath) + endforeach(Qt5_library_name ${Qt5_library_name_list}) + + pkg_config_link_flags(Qt5_library_LINK_FLAGS "${Qt5_library_fullpath_list}") + endif(PLPLOT_USE_QT5) endif(ENABLE_qt) if(PLD_bmpqt OR PLD_jpgqt OR PLD_pngqt OR PLD_ppmqt OR PLD_tiffqt OR PLD_epsqt OR PLD_pdfqt OR PLD_qtwidget OR PLD_svgqt OR PLD_extqt OR PLD_memqt) @@ -205,13 +274,11 @@ set(ENABLE_pyqt4 OFF CACHE BOOL "Enable pyqt4 Python extension module " FORCE) endif(ENABLE_pyqt4 AND PLPLOT_USE_QT5) -## FIXME when a method has been found to use Qt5 with the traditional -## Makefile + pkg-config build system for the installed examples. -if(ENABLE_qt AND NOT PLPLOT_USE_QT5) +if(ENABLE_qt) set(qt_gui_true "") -else(ENABLE_qt AND NOT PLPLOT_USE_QT5) +else(ENABLE_qt) set(qt_gui_true "#") -endif(ENABLE_qt AND NOT PLPLOT_USE_QT5) +endif(ENABLE_qt) if(ANY_QT_DEVICE) if(ENABLE_DYNDRIVERS) @@ -228,6 +295,7 @@ # instead to break circular linking. set(DRIVERS_LINK_FLAGS ${DRIVERS_LINK_FLAGS} ${qt_LINK_FLAGS}) set(qt_SOURCE ${CMAKE_SOURCE_DIR}/bindings/qt_gui/plqt.cpp) + endif(ENABLE_DYNDRIVERS) endif(ANY_QT_DEVICE) Modified: trunk/examples/c++/CMakeLists.txt =================================================================== --- trunk/examples/c++/CMakeLists.txt 2014-04-26 02:02:55 UTC (rev 13107) +++ trunk/examples/c++/CMakeLists.txt 2014-04-26 02:11:26 UTC (rev 13108) @@ -2,7 +2,7 @@ ### Process this file with cmake to produce Makefile ### # Copyright (C) 2006 Andrew Ross -# Copyright (C) 2006, 2007, 2008, 2009 Alan W. Irwin +# Copyright (C) 2006-2014 Alan W. Irwin # # This file is part of PLplot. # @@ -150,8 +150,9 @@ endif(NOT PLPLOT_USE_QT5 AND NOT QT_LIBRARIES) else(CORE_BUILD) if(PLPLOT_USE_QT5) - message(STATUS "WARNING: Not currently checking for Qt5 in install tree. qt_example not built") - set(BUILD_qt_example OFF) + # qt_example build linking taken care of automatically by importing + # the plplotqt library. + set(BUILD_qt_example ON) else(PLPLOT_USE_QT5) # Must find Qt4 all over again here rather than simply copying variables # from the core build to this installed examples build so that we can Modified: trunk/src/CMakeLists.txt =================================================================== --- trunk/src/CMakeLists.txt 2014-04-26 02:02:55 UTC (rev 13107) +++ trunk/src/CMakeLists.txt 2014-04-26 02:11:26 UTC (rev 13108) @@ -428,31 +428,8 @@ if(NOT ENABLE_DYNDRIVERS AND ANY_QT_DEVICE AND PLPLOT_USE_QT5) # For this special case QT_LIBRARIES is not populated so must - # this alternative method to add Qt(5) libraries to the pkg-config file + # use this alternative method to add Qt(5) libraries to the pkg-config file # for the plplot library. - - # FIXME? This list will need revision whenever the PLplot qt device - # driver dependencies on the Qt5 components are revised. - set(Qt5_library_name_list - Core - Svg - Gui - Widgets - PrintSupport - ) - - set(Qt5_library_fullpath_list) - foreach(Qt5_library_name ${Qt5_library_name_list}) - find_library(Qt5${Qt5_library_name}_fullpath Qt5${Qt5_library_name}) - if(Qt5${Qt5_library_name}_fullpath) - list(APPEND Qt5_library_fullpath_list ${Qt5${Qt5_library_name}_fullpath}) - else(Qt5${Qt5_library_name}_fullpath) - message(STATUS "Qt5${Qt5_library_name}_fullpath = ${Qt5${Qt5_library_name}_fullpath}") - message(FATAL_ERROR "Qt5${Qt5_library_name} library not found.") - endif(Qt5${Qt5_library_name}_fullpath) - endforeach(Qt5_library_name ${Qt5_library_name_list}) - - pkg_config_link_flags(Qt5_library_LINK_FLAGS "${Qt5_library_fullpath_list}") set( libplplot${LIB_TAG}_LINK_FLAGS "${libplplot${LIB_TAG}_LINK_FLAGS} ${Qt5_library_LINK_FLAGS}" This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |