Download Latest Version plplot-5.15.0.tar.gz (15.4 MB)
Email in envelope

Get an email when there's a new version of PLplot

Home / plplot / 5.9.10 Source
Name Modified Size InfoDownloads / Week
Parent folder
README.release 2013-10-01 385.5 kB
plplot-5.9.10.tar.gz 2013-10-01 15.2 MB
plplot-5.9.10.tar.gz.asc 2013-10-01 490 Bytes
Totals: 3 Items   15.6 MB 0
PLplot Release 5.9.10
~~~~~~~~~~~~~~~~~~~~
This is a development release of PLplot. It represents the ongoing efforts
of the community to improve the PLplot plotting package. Development
releases in the 5.9.x series will be available every few months. The next
stable release will be 5.10.0.

     If you encounter a problem that is not already documented in the
PROBLEMS file or on our bug tracker, then please send bug reports to PLplot
developers via the mailing lists at
http://sourceforge.net/mail/?group_id=2915 (preferred) or on our bug tracker
at http://sourceforge.net/tracker/?group_id=2915&atid=102915.

     Please see the license under which this software is distributed
(LGPL), and the disclaimer of all warranties, given in the COPYING.LIB
file.

INDEX

OFFICIAL NOTICES FOR USERS

CHANGES

-1. Important changes we should have mentioned in previous release announcements.

-1.1 Add full bindings and examples for the D language.

0. Tests made for release 5.9.10

1. Changes relative to PLplot 5.9.9 (the previous development release)

1.1 The format for map data used by plmap has changed
1.2 Python support for Numeric has been dropped
1.3 Backwards-incompatible API change to non-integer line widths
1.4 Improvements to the build system for the Cygwin case
1.5 The plcolorbar API has been finalized
1.6 Documentation of the new legend and color bar capabilities of PLplot
1.7 The D bindings and examples have been converted from the
old version of D (D1) to the new version of D (D2)
1.8 The DocBook documentation for PLplot is now generated using modern
XML/XSL backend tools for DocBook
1.9 Implement experimental build_projects sub-project
1.10 Implement extremely simple "00" example
1.11 Convert to using the Allura form of SourceForge software
1.12 Use NON_TRANSITIVE linking by default for the shared libraries case for
all non-windows systems
1.13 Update f95 examples to take larger advantage of Fortran 95 capabilities
1.14 Substantial additions to the doxygen documentation

2. Changes relative to PLplot 5.8.0 (the previous stable release)

2.1 All autotools-related files have now been removed
2.2 Build system bug fixes
2.3 Build system improvements
2.4 Implement build-system infrastructure for installed Ada bindings and
examples
2.5 Code cleanup
2.6 Date / time labels for axes
2.7 Alpha value support
2.8 New PLplot functions
2.9 External libLASi library improvements affecting our psttf device
2.10 Improvements to the cairo driver family
2.11 wxWidgets driver improvements
2.12 pdf driver improvements
2.13 svg driver improvements
2.14 Ada language support
2.15 OCaml language support
2.16 Perl/PDL language support
2.17 Update to various language bindings
2.18 Update to various examples
2.19 Extension of our test framework
2.20 Rename test subdirectory to plplot_test
2.21 Website support files updated
2.22 Internal changes to function visibility
2.23 Dynamic driver support in Windows
2.24 Documentation updates
2.25 libnistcd (a.k.a. libcd) now built internally for -dev cgm
2.26 get-drv-info now changed to test-drv-info
2.27 Text clipping now enabled by default for the cairo devices
2.28 A powerful qt device driver has been implemented
2.29 The PLplot API is now accessible from Qt GUI applications
2.30 NaN / Inf support for some PLplot functions
2.31 Various bug fixes
2.32 Cairo driver improvements
2.33 PyQt changes
2.34 Color Palettes
2.35 Re-implementation of a "soft landing" when a bad/missing compiler is
detected
2.36 Make PLplot aware of LC_NUMERIC locale
2.37 Linear gradients have been implemented
2.38 Cairo Windows driver implemented
2.39 Custom axis labelling implemented
2.40 Universal coordinate transform implemented
2.41 Support for arbitrary storage of 2D user data
2.42 Font improvements
2.42 Alpha value support for plotting in memory.
2.43 Add a Qt device for in memory plotting.
2.44 Add discrete legend capability.
2.45 Add full bindings and examples for the D language.
2.46 The plstring and plstring3 functions have been added
2.47 The pllegend API has been finalized
2.48 Octave bindings now implemented with swig
2.49 Documentation redone for our swig-generated Python and Octave bindings
2.50 Support large polygons
2.51 Complete set of PLplot parameters now available for Fortran
2.52 The plarc function has been added
2.53 The format for map data used by plmap has changed
2.54 Python support for Numeric has been dropped
2.55 Backwards-incompatible API change to non-integer line widths
2.56 Improvements to the build system for the Cygwin case
2.57 The plcolorbar API has been finalized
2.58 Documentation of the new legend and color bar capabilities of PLplot
2.59 The D bindings and examples have been converted from the
old version of D (D1) to the new version of D (D2)
2.60 The DocBook documentation for PLplot is now generated using modern
XML/XSL backend tools for DocBook
2.61 Implement experimental build_projects sub-project
2.62 Implement extremely simple "00" example
2.63 Convert to using the Allura form of SourceForge software
2.64 Use NON_TRANSITIVE linking by default for the shared libraries case for
all non-windows systems
2.65 Update f95 examples to take larger advantage of Fortran 95 capabilities
2.66 Substantial additions to the doxygen documentation


OFFICIAL NOTICES FOR USERS

(5.9.10) The minimum version of CMake has been bumped to 2.8.9.  This
change allows our build system to take advantage of CMake features
introduced in later versions of CMake.  Even more importantly it also
updates user's builds to the CMake policy conventions (important
backwards-incompatible changes in CMake behaviour introduced in later
versions of CMake) to the default CMake policy used for 2.8.9.

(5.9.10) The long deprecated support for the python Numeric package has been
dropped. This is no longer supported and is superseded by numpy. Support for
numpy has been the default in PLplot for a number of years so most users
should notice no difference.

(5.9.10) The current format for maps used by plmap has been deprecated in
favour of using shapefiles (a standard format widely used for GIS and with
suitable free data sources available). This requires the shapelib library
to be installed. If this library is not installed then by default no map
support will be available. Support for the old binary format is still
available by setting the cmake variable PL_DEPRECATED, however this
support will be removed in a future release of PLplot.

(5.9.10) Those who use the Python version of plgriddata will have to
change their use of this function for this release as follows (see
examples/xw21.py)

# old version (which overwrites preexisting zg in place):
zg = reshape(zeros(xp*yp),(xp,yp))
plgriddata(x, y, z, xg, yg, zg, alg, opt[alg-1])

# new version (which uses a properly returned newly created NumPy array
# as per the normal Python expectations):

zg = plgriddata(x, y, z, xg, yg, alg, opt[alg-1])

(5.9.10) Significant efforts have been made to ensure the PLplot code
is standards compliant and free from warnings. Compliance has been
tested using the gcc compiler suite -std, -pedantic and -W  flags. The
language standards adopted are
C: ISO C99 with POSIX.1-2001 base specification (required for a number
of C library calls)
C++: ISO C++ 1998 standard plus amendments
F95: Fortran 95 standard

Specifically, the following gcc / g++ / gfortran flags were used

CFLAGS='-O3 -std=c99 -pedantic -D_POSIX_C_SOURCE=200112L -Wall  \
-Wextra -Wmissing-prototypes -Wstrict-prototypes -Wnested-externs \
-Wconversion -Wshadow -Wcast-qual -Wcast-align -Wwrite-strings'

CXXFLAGS='-O3 -fvisibility=hidden -std=c++98 -pedantic -Wall -Wextra '

FFLAGS='-std=f95 -O3 -fall-intrinsics -fvisibility=hidden -pedantic \
-Wall -Wextra '

Note that the code is not yet quite standards compliant or warning free,
but this is our aim. We know that a number of common compilers do not
support these standards "out of the box", so we will continue to develop
and support workarounds to ensure that PLplot remains easily built on
a variety of platforms and compilers. Standards compliance should make
it easier to port to new systems in the future. Using aggressive
warnings flags will help to detect and eliminate errors or problems in
the libraries.

The gfortran -fall-intrinsics flag is required for a couple of
non-standard intrinsics which are used in the code. In the future
adopting the fortran 2003 or 2008 standard should allow this to be
removed.

Note: currently this code cleanup does not apply to code generated by
swig (octave, python, java, lua bindings) which gives a large number of
code warnings.

(5.9.10) For some years now we have had both FORTRAN 77 and Fortran 95
bindings, but to the best of our knowledge, there are no longer
any maintained FORTRAN 77 compilers left that do not also support
Fortran 95. (g77 for instance has not been maintained for several
years now. Its successor gfortran supports Fortran 95 and later standards
as well all g77's legacy features).

An important consequence is that we can not test the implementation for
compliance to the FORTRAN 77 standard.
Furthermore, we would prefer to concentrate all our Fortran
development effort on our f95 bindings and strongly encourage all our
Fortran users to use those bindings if they haven't switched from the
f77 version already. Therefore, as of this release we are deprecating
the f77 bindings and examples and plan no further support for them.
We signal this deprecation by disabling f77 by default (although our
users can still get access to these unsupported bindings and examples
for now by specifying the -DENABLE_f77=ON cmake option).

We plan to completely remove the f77 bindings and examples
two releases after this one.

(5.9.10) We have found that some distributions of the Windows
MinGW/gfortran compiler (i.e., MinGW/gfortran 4.6.1 and 4.6.2 from
http://www.equation.com) may cause a link error due to duplicate
symbols like __gfortran_setarg_. These errors can be suppressed by
adding the flag -Wl,--allow-multiple-define. It is very likely that
this is a bug in these distributions.

As building the libraries and the examples succeeds without any problem
if you use most other distributions of Windows MinGW/gfortran,
we have decided not to include this flag in our build system.

Distributions that are known to work:
- MinGW/gfortran-4.5 from http://www.equation.com,
- MinGW/gfortran-4.5.2-1 that is installed using the latest
  mingw-get-inst-20110802 automatic installer available at
  http://sourceforge.net/projects/mingw/files/Installer/mingw-get-inst
- MinGW/gfortran-4.6.2 from tdm-gcc.tdragon.net

(Therefore it is not the 4.5.x versus 4.6.x version of MinGW/gfortran
as such that causes this problem.)

(5.9.9) This is a quick release to deal with two broken build issues
that were recently discovered for our Windows platform.  Windows users should
avoid 5.9.8 because of these problems for that release, and instead use
5.9.9 which has been heavily tested on a number of platforms including
Windows, see "Tests made for release 5.9.9" below.

(5.9.8) For unicode-aware devices we now follow what is done for the
Hershey font case for epsilon, theta, and phi.  This means the #ge,
#gh, and #gf escapes now give users the Greek lunate epsilon, the
ordinary Greek lower case theta, and the Greek symbol phi for Unicode
fonts just like has occurred since the dawn of PLplot history for the
Hershey font case.  Previously these legacy escapes were assigned to
ordinary Greek lower-case epsilon, the Greek symbol theta (= script
theta), and the ordinary Greek lower case phi for unicode fonts
inconsistently with what occurred for Hershey fonts.  This change gets
rid of this inconsistency, that is the #g escapes should give the best
unicode approximation to the Hershey glyph result that is possible for
unicode-aware devices.

In general we encourage users of unicode-aware devices who might
dislike the Greek glyph Hershey-lookalike choices they get with the
legacy #g escapes to use instead either PLplot unicode escapes (e.g.,
"#[0x03b5]" for ordinary Greek lower-case epsilon, see page 3 of
example 23) or better yet, UTF-8 strings (e.g., "ε") to specify
exactly what unicode glyph they want.

(5.9.8) The full set of PLplot constants have been made available to
our Fortran 95 users as part of the plplot module.  This means those
users will have to remove any parameter statements where they have
previously defined the PLplot constants (whose names typically start
with "PL_" for themselves.  For a complete list of the affected
constants, see the #defines in swig-support/plplotcapi.i which are
used internally to help generate the plplot module.  See also Index
item 2.51 below.

(5.9.8) There has been widespread const modifier changes in the API
for libplplotd and libplplotcxxd.  Those backwards-incompatible API
changes are indicated in the usual way by a soversion bump in those
two libraries which will force all apps and libraries that depend on
those two libraries to be rebuilt.

Specifically, we have changed the following arguments in the C library
(libplplotd) case

type * name1 ==> const type * name1
type * name2 ==> const type ** name2

and the following arguments in the C++ library (libplplotcxxd) case

type * name1 ==> const type * name1
type * name1 ==> const type * const * name2

where name1 is the name of a singly dimensioned array whose values are
not changed internally by the PLplot libraries and name2 is the name
of a doubly dimensioned array whose values are not changed internally
by the PLplot libraries.

The general documentation and safety justification for such const
modifier changes to our API is given in
http://www.cprogramming.com/tutorial/const_correctness.html.
Essentially, the above const modifier changes constitute our guarantee
that the associated arrays are not changed internally by the PLplot
libraries.

Although it is necessary to rebuild all apps and libraries that depend
on libplplotd and/or libplplotcxxd, that rebuild should be possible
with unchanged source code without build errors in all cases.  For C
apps and libraries (depending on libplplotd) there will be additional
build warnings due to a limitation in the C standard discussed at
http://c-faq.com/ansi/constmismatch.html unless all doubly dimensioned
arrays (but not singly dimensioned) are explicitly cast to (const type
**).  However, such source code changes will not be necessary to avoid
warning messages for the C++ (libplplotcxxd) change because of the
double use of const in the above "const type * const * name2" change.

(5.9.8) The plarc API has changed in release 5.9.8.  The plarc API now
has a rotation parameter which will eventually allow for rotated arcs.
PLplot does not currently support rotated arcs, but the plarc function
signature has been modified to avoid changing the API when this
functionality is added.

(5.9.6) We have retired the pbm driver containing the pbm (actually
portable pixmap) file device. This device is quite primitive and
poorly maintained. It ignores unicode fonts (i.e., uses the Hershey
font fallback), falls back to ugly software fills, doesn't support
alpha transparency, etc.  It also has a serious run-time issue with
example 2 (double free detected by glibc) which probably indicates
some fundamental issue with the 100 colors in cmap0 for that
example. For those who really need portable pixmap results, we suggest
using the ImageMagick convert programme, e.g., "convert
examples/x24c01.pngqt test.ppm" or "convert examples/x24c01.pngcairo
test.ppm" to produce good-looking portable pixmap results from our
best png device results.

(5.9.6) We have retired the linuxvga driver containing the linuxvga
interactive device.  This device is quite primitive, difficult to
test, and poorly maintained. It ignores unicode fonts (i.e., uses the
Hershey font fallback), falls back to ugly software fills, doesn't
support alpha transparency, etc.  It is Linux only, can only be run as
root, and svgalib (the library used by linuxsvga) is not supported by
some mainstream (e.g., Intel) chipsets.  All of these characteristics
make it difficult to even test this device much less use it for
anything serious.  Finally, it has had a well-known issue for years
(incorrect colors) which has never been fixed indicating nobody is
interested in maintaining this device.

(5.9.6) We have retired our platform support of djgpp that used to
reside in sys/dos/djgpp.  The developer (Andrew Roach) who used to
maintain those support files for djgpp feels that the djgpp platform
is no longer actively developed, and he no longer uses djgpp himself.

(5.9.6) We have changed plpoin results for ascii codes 92, 94, and 95
from centred dot, degree symbol, and centred dot glyphs to the correct
backslash, caret, and underscore glyphs that are associated with those
ascii indices.  This change is consistent with the documentation of
plpoin and solves a long-standing issue with backslash, caret, and
underscore ascii characters in character strings used for example by
pl[mp]tex.  Those who need access to a centred dot with plpoin should
use index 1.  The degree symbol is no longer accessible with plpoin,
but it is available in ordinary text input to PLplot as Hershey escape
"#(718)", where 718 is the Hershey index of the degree symbol, unicode
escape "#[0x00B0]" where 0x00B0 is the unicode index for the degree
symbol or direct UTF8 unicode string "°".

(5.9.6) We have retired the gcw device driver and the related gnome2
and pygcw bindings since these are unmaintained and there are good
replacements.  These components of PLplot were deprecated as of
release 5.9.3.  A good replacement for the gcw device is either the
xcairo or qtwidget device.  A good replacement for the gnome2 bindings
is the externally supplied XDrawable or Cairo context associated with
the xcairo device and the extcairo device (see
examples/c/README.cairo).  A good replacement for pygcw is our new
pyqt4 bindings for PLplot.

(5.9.6) We have deprecated support for the python Numeric array
extensions. Numeric is no longer maintained and users of Numeric are
advised to migrate to numpy. Numpy has been the standard for PLplot
for some time. If numpy is not present PLplot will now disable python
by default. If you still require Numeric support in the short term
then set USE_NUMERIC to ON in cmake. The PLplot support for Numeric
will be dropped in a future release.

(5.9.5) We have removed pyqt3 access to PLplot and replaced it by
pyqt4 access to PLplot (see details below).

(5.9.5) The only method of specifying a non-default compiler (and
associated compiler options) that we support is the environment
variable approach, e.g.,

export CC='gcc -g -fvisibility=hidden'
export CXX='g++ -g -fvisibility=hidden'
export FC='gfortran -g -fvisibility=hidden'

All other CMake methods of specifying a non-default compiler and
associated compiler options will not be supported until CMake bug 9220
is fixed, see discussion below of the soft-landing re-implementation
for details.

(5.9.5) We have retired the hpgl driver (containing the hp7470,
hp7580, and lj_hpgl devices), the impress driver (containing the imp
device), the ljii driver (containing the ljii and ljiip devices), and
the tek driver (containing the conex, mskermit, tek4107, tek4107f,
tek4010, tek4010f, versaterm, vlt, and xterm devices).  Retirement
means we have removed the build options which would allow these
devices to build and install.  Recent tests have shown a number of
run-time issues (hpgl, impress, and ljii) or build-time issues (tek)
with these devices, and as far as we know there is no more user
interest in them. Therefore, we have decided to retire these devices
rather than fix them.

(5.9.4) We have deprecated the pbm device driver (containing the pbm
device) because glibc detects a catastrophic double free.

(5.9.3) Our build system requires CMake version 2.6.0 or higher.

(5.9.3) We have deprecated the gcw device driver and the related
gnome2 and pygcw bindings since these are essentially unmaintained.
For example, the gcw device and associated bindings still depends on
the plfreetype approach for accessing unicode fonts which has known
issues (inconsistent text offsets, inconvenient font setting
capabilities, and incorrect rendering of CTL languages).  To avoid
these issues we advise using the xcairo device and the externally
supplied XDrawable or Cairo context associated with the xcairo device
and the extcairo device (see examples/c/README.cairo) instead. If you
still absolutely must use -dev gcw or the related gnome2 or pygcw
bindings despite the known problems, then they can still be accessed
by setting PLD_gcw, ENABLE_gnome2, and/or ENABLE_pygcw to ON.

(5.9.3) We have deprecated the gd device driver which implements the
png, jpeg, and gif devices.  This device driver is essentially
unmaintained. For example, it still depends on the plfreetype approach
for accessing unicode fonts which has known issues (inconsistent text
offsets, inconvenient font setting capabilities, and incorrect
rendering of CTL languages).  To avoid these issues for PNG format, we
advise using the pngcairo or pngqt devices.  To avoid these issues for
the JPEG format, we advise using the jpgqt device.  PNG is normally
considered a better raster format than GIF, but if you absolutely
require GIF format, we advise using the pngcairo or pngqt devices and
then downgrading the results to the GIF format using the ImageMagick
"convert" application.  For those platforms where libgd (the
dependency of the gd device driver) is accessible while the required
dependencies of the cairo and/or qt devices are not accessible, you
can still use these deprecated devices by setting PLD_png, PLD_jpeg,
or PLD_gif to ON.

(5.9.3) We have re-enabled the tk, itk, and itcl components of PLplot
by default that were disabled by default as of release 5.9.1 due to
segfaults.  The cause of the segfaults was a bug (now fixed) in how
pthread support was implemented for the Tk-related components of
PLplot.

(5.9.2) We have set HAVE_PTHREAD (now called PL_HAVE_PTHREAD as of
release 5.9.8) to ON by default for all platforms other than Darwin.
Darwin will follow later once it appears the Apple version of X
supports it.

(5.9.1) We have removed our previously deprecated autotools-based
build system.  Instead, use the CMake-based build system following the
directions in the INSTALL file.

(5.9.1) We no longer support Octave-2.1.73 which has a variety of
run-time issues in our tests of the Octave examples on different
platforms. In contrast our tests show we get good run-time results
with all our Octave examples for Octave-3.0.1. Also, that is the
recommended stable version of Octave at
http://www.gnu.org/software/octave/download.html so that is the only
version of Octave we support at this time.

(5.9.1) We have decided for consistency sake to change the PLplot
stream variables plsc->vpwxmi, plsc->vpwxma, plsc->vpwymi, and
plsc->vpwyma and the results returned by plgvpw to reflect the exact
window limit values input by users using plwind. Previously to this
change, the stream variables and the values returned by plgvpw
reflected the internal slightly expanded range of window limits used
by PLplot so that the user's specified limits would be on the graph.
Two users noted this slight difference, and we agree with them it
should not be there. Note that internally, PLplot still uses the
expanded ranges so most users results will be identical.  However, you
may notice some small changes to your plot results if you use these
stream variables directly (only possible in C/C++) or use plgvpw.

CHANGES

0. Tests made for release 5.9.10

Comprehensive testing that showed no non-zero return codes or other
obvious run-time issues such as segfaults was done for the Debian
Wheezy platform.  These tests were done with the
scripts/comprehensive_test.sh which does 21 major tests.  Those tests
consist of seven tests (ctest, and "make test_noninteractive" and make
"test_interactive" results for the build tree, and "make
test_noninteractive" and make "test_interactive" results for both the
traditional and CMake-based build systems for the installed examples
tree) for each of our three major configurations (shared
libraries/dynamic devices, shared libraries/non-dynamic devices,
static libraries/non-dynamic devices).

More limited testing that showed no non-zero return codes or other
obvious run-time issues such as segfaults was done on a large number
of different platforms including the following:

Fedora with "Unix Makefiles" generator
Ubuntu with "Unix Makefiles" generator
Debian unstable with "Unix Makefiles" generator
Debian wheezy with "Ninja" generator
Wine version of Windows with "MSYS Makefiles" generator
Wine version of Windows with "MinGW Makefiles" generator
Wine version of Windows with "NMake Makefiles JOM" generator
Microsoft version of Windows with Cygwin and with "Unix Makefiles" generator
Microsoft version of Windows with "MinGW Makefiles" generator
Microsoft version of Windows with "MSYS Makefiles" generator
Microsoft version of Windows with "NMake Makefiles" generator

1. Changes relative to PLplot 5.9.9 (the previous development release)

N.B. This release includes many code cleanups and fixes relative to
5.9.9 that are not mentioned in the list below.

1.1 The format for map data used by plmap has changed

The format for map data used by plmap is now the shapefile format.
This is a widely used standard format and there are many sources of data
in this format. This replaces the custom binary format that PLplot used
to use. The support for reading shapefiles is provided by the shapelib
library, which is a new dependency for PLplot. If users do not have this
installed then, by default, they will not get any map capabilities with
PLplot. Support for the old format can still be enabled by setting the
PL_DEPRECATED cmake variable, but this support will be removed in a
subsequent PLplot release.

1.2 Python support for Numeric has been dropped

Support for the python Numeric package has been dropped. This has been
deprecated since 5.9.6. Numeric is no longer supported and is superseded
by numpy. Support for numpy has been the default in plplot for a number
of years so most users should notice no difference.

1.3 Backwards-incompatible API change to non-integer line widths

All functions which take line width arguments (plwidth, plshade*,
pllegend) now use PLFLT values for the line width. This allows device
drivers which are based on modern graphics libraries such as Qt4 and
pango/cairo to make full use (e.g., extremely fine line widths) of the
floating-point line width capabilities of those libraries.  The
replacement of plwid by plwidth, and the change in argument lists for
plshade* and pllegend constitute a backwards incompatible API change
from previous releases and the soname of libraries has been bumped
accordingly (which forces users to recompile PLplot).

1.4 Improvements to the build system for the Cygwin case

The Cygwin platform provides a full-featured Unix environment on
Windows.  CMake has recently been changed (at the request of Cygwin
developers) to emphasize the Unix aspects of the Cygwin platform and
deemphasize the Windows aspects of that platform.  It was argued this
change would tend to make CMake builds of software much more reliable
on Cygwin, and after some small but important changes to our
CMake-based build system to adjust for these recent CMake changes for
Cygwin, we have indeed confirmed that prediction for the PLplot case.
There are still some Cygwin platform issues left which are being
discussed on our Wiki at http://www.miscdebris.net/plplot_wiki/index.php?title=Setup_cygwin,
but some fundamental breakthroughs have also been made for the Cygwin case
that should interest all our Windows users.  For example, for the
first time ever we have been able to build our cairo and qt device
drivers on the Cygwin platform giving our Windows users convenient
access to the many high-quality PLplot devices that are available with
these two different device drivers.

1.5 The plcolorbar API has been finalized

The function plcolorbar allows users to create a color bar (an
annotated subplot representing a continuous range of colors within the
main plot and typically identifying certain colors with certain
numerical values using an axis).  The plcolorbar capabilities are
documented in our DocBook (and doxygen) documentation and demonstrated
in standard examples 16 and 33.

N.B. The previous two releases (5.9.8 and 5.9.9) contained
unadvertised experimental versions of plcolorbar.  Any PLplot user who
found and tried those capabilities will have to reprogramme their
plcolorbar calls to be compatible with the argument list of the latest
version.

1.6 Documentation of the new legend and color bar capabilities of PLplot

The pllegend and plcolorbar API has been documented in both doxygen
and DocBook forms.  In addition, the "advanced use" chapter of the
DocBook form of documentation now contains a section giving an
overview of pllegend and plcolorbar.

N.B. Although we feel the pllegend and plcolorbar API has now been
finalized with regard to the PLplot core developers own interests and
needs, we also realize that as more and more PLplot users take
advantage of these new PLplot capabilities there will likely be calls
to add additional features to pllegend or plcolorbar based on
additional experience with these powerful capabilities.  In general,
we would welcome such feature requests.

1.7 The D bindings and examples have been converted from the
old version of D (D1) to the new version of D (D2)

This change should make PLplot much more relevant for D users
going forward.

See http://en.wikipedia.org/wiki/D_(programming_language)#History for
a discussion of the differences between these two variants of D.

1.8 The DocBook documentation for PLplot is now generated using modern
XML/XSL backend tools for DocBook

These modern backend tools (such as xmlto) replace the
deprecated/unmaintained SGML/DSSL tools we have used before.  For
developers this means generation of our DocBook generation is much
easier. much faster, and much less error-prone.  End users will notice
some improvements in the results (e.g., the table of Greek letters) as
well as some minor style changes.

1.9 Implement experimental build_projects sub-project

The idea here (see cmake/build_projects) is to automate the build of
all PLplot dependencies and the build and test of PLplot itself for
platforms (such as Linux enterprise distributions and all forms of
Windows platforms other than Cygwin) that do not come with modern
versions of PLplot soft dependencies such as Pango/Cairo and Qt.
This project is beginning to work properly for the Linux case, but
still needs lots of work for the Windows case.

1.10 Implement extremely simple "00" example

The point of this standard example is to give the users an extremely
simple tutorial example to help them to get started with 2D plotting
with PLplot.

1.11 Convert to using the Allura form of SourceForge software

We use sourceforge.net as our software hosting facility.  Early in
2013 Sourceforge updated essentially all their support software as
part of the so-called Allura project.  This made it necessary to make
some minor internal PLplot changes such as script changes and different URL's
in the website referring to SourceForge facilities.  The most important
change from the user perspective is the URL for the Allura form
of the svn repository that we use now:

http://svn.code.sf.net/p/plplot/code/trunk/

1.12 Use NON_TRANSITIVE linking by default for the shared libraries case for
all non-windows systems

The point of this change is to reduce overlinking and therefore
the problems caused by overlinking that are mentioned
at http://en.altlinux.org/UnderOverLinkProblems.

Non-transitive linking means link only to libraries that directly
resolve undefined symbols, i.e., do not link to a library just because
it is a dependency of a dependency.

1.13 Update f95 examples to take larger advantage of Fortran 95 capabilities

Previously our f95 examples tended to use legacy Fortran capabilities, but
that situation has substantially changed for this release.

1.14 Substantial additions to the doxygen documentation

One of the on-going documentation projects is to create doxygen
documentation of every single argument of the public API for PLplot.
A substantial increase in such documentation has been implemented
in this release cycle.

2. Changes relative to PLplot 5.8.0 (the previous stable release)

N.B. This release includes many code cleanups and fixes relative to
5.8.0 that are not mentioned in the list below.

2.1 All autotools-related files have now been removed

CMake is now the only supported build system. It has been tested on
Linux / Unix, Mac OS-X and Windows platforms.

2.2 Build system bug fixes

Various fixes include the following:

Ctest will now work correctly when the build tree path includes symlinks.

Dependencies for swig generated files fixed so they are not rebuilt every
time make is called.

Various dependency fixes to ensure that parallel builds (using make -j)
work under unix.

2.3 Build system improvements

We now transform link flag results delivered to the CMake environment by
pkg-config into the preferred CMake form of library information.  The
practical effect of this improvement is that external libraries in
non-standard locations now have their rpath options set correctly for our
build system both for the build tree and the install tree so you don't have
to fiddle with LD_LIBRARY_PATH, etc.

2.4 Implement build-system infrastructure for installed Ada bindings and
examples

Install source files, library information files, and the plplotada library
associated with the Ada bindings.  Configure and install the pkg-config file
for the plplotada library.  Install the Ada examples and a configured Makefile
to build them in the install tree.

2.5 Code cleanup

The PLplot source code has been cleaned up to make consistent use of
(const char *) and (char *) throughout. Some API functions have changed
to use const char * instead of char * to make it clear that the strings
are not modified by the function. The C and C++ examples have been updated
consistent with this. These changes fix a large number of warnings
with gcc-4.2. Note: this should not require programs using PLplot to be
recompiled as it is not a binary API change.

There has also been some cleanup of include files in the C++ examples
so the code will compile with the forthcoming gcc-4.3.

2.6 Date / time labels for axes

PLplot now allows date / time labels to be used on axes. A new option
('d') is available for the xopt and yopt arguments to plbox which
indicates that the axis should be interpreted as a date / time. Similarly
there is a new range of options for plenv to select date / time labels.
The time format is seconds since the epoch (usually 1 Jan 1970). This
format is commonly used on most systems. The C gmtime routine can be
used to calculate this for a given date and time. The format for the
labels is controlled using a new pltimefmt function, which takes a
format string. All formatting is done using the C strftime function.
See documentation for available options on your platform. Example 29
demonstrates the new capabilities.

N.B. Our reliance on C library POSIX time routines to (1) convert from
broken-down time to time-epoch, (2) to convert from time-epoch to
broken-down time, and (3) to format results with strftime have proved
problematic for non-C languages which have time routines of variable
quality.  Also, it is not clear that even the POSIX time routines are
available on Windows. So we have plans afoot to implement high-quality
versions of (1), (2), and (3) with additional functions to get/set the epoch
in the PLplot core library itself.  These routines should work on all C
platforms and should also be uniformly accessible for all our language
bindings.

WARNING.....  Therefore, assuming these plans are implemented, the present
part of our date/time PLplot API that uses POSIX time routines will be
changed.

2.7 Alpha value support

PLplot core has been modified to support a transparency or alpha value
channel for each color in color map 0 and 1. In addition a number of new
functions were added the PLplot API so that the user can both set and query
alpha values for color in the two color maps. These functions have the same
name as their non-alpha value equivalents, but with a an "a" added to the
end. Example 30 demonstrates some different ways to use these functions
and the effects of alpha values, at least for those drivers that support alpha
values. This change should have no effect on the device drivers that do not
currently support alpha values. Currently only the cairo, qt, gd, wxwidgets and
aquaterm drivers support alpha values. There are some limitations with the gd
driver due to transparency support in the underlying libgd library.

2.8 New PLplot functions

An enhanced version of plimage, plimagefr has been added. This allows images
to be plotted using coordinate transformation, and also for the dynamic range
of the plotted values to be altered. Example 20 has been modified to
demonstrate this new functionality.

To ensure consistent results in example 21 between different platforms and
language bindings PLplot now includes a small random number generator within
the library. plrandd will return a PLFLT random number in the range 0.0-1.0.
plseed will allow the random number generator to be seeded.

2.9 External libLASi library improvements affecting our psttf device

Our psttf device depends on the libLASi library. libLASi-1.1.0 has just been
released at http://sourceforge.net/svn/?group_id=187113 .  We recommend
using this latest version of libLASi for building PLplot and the psttf
device since this version of libLASi is more robust against glyph
information returned by pango/cairo/fontconfig that on rare occasions is not
suitable for use by libLASi.

2.10 Improvements to the cairo driver family

Jonathan Woithe improved the xcairo driver so that it can optionally be
used with an external user supplied X Drawable. This enables a nice
separation of graphing (PLplot) and window management (Gtk, etc..). Doug
Hunt fixed the bugs that broke the memcairo driver and it is now fully
functional. Additionally, a new extcairo driver was added that will plot
into a user supplied cairo context.

2.11 wxWidgets driver improvements

Complete reorganization of the driver code. A new backend was added, based
on the wxGraphicsContext class, which is available for wxWidgets 2.8.4
and later. This backend produces antialiased output similar to the
AGG backend but has no dependency on the AGG library. The basic wxDC
backend and the wxGraphicsContext backend process the text output
on their own, which results in much nicer plots than with the standard
Hershey fonts and is much faster than using the freetype library. New
options were introduced in the wxWidgets driver:
 - backend: Choose backend: (0) standard, (1) using AGG library,
                            (2) using wxGraphicsContext
 - hrshsym: Use Hershey symbol set (hrshsym=0|1)
 - text: Use own text routines (text=0|1)
 - freetype: Use FreeType library (freetype=0|1)
The option "text" changed its meaning, since it enabled the FreeType library
support, while now the option enables the driver's own text routines.

Some other features were added:
 * the wxWidgets driver now correctly clears the background (or parts of it)
 * transparency support was added
 * the "locate mode" (already available in the xwin and tk driver) was
   implemented, where graphics input events are processed and translated
   to world coordinates

2.12 pdf driver improvements

The pdf driver (which is based on the haru library http://www.libharu.org)
processes the text output now on its own. So far only the Adobe Type1
fonts are supported. TrueType font support will follow. Full unicode
support will follow after the haru library will support unicode strings. The
driver is now able to produce A4, letter, A5 and A3 pages. The Hershey font
may be used only for symbols. Output can now be compressed, resulting in
much smaller file sizes.
Added new options:
 - text: Use own text routines (text=0|1)
 - compress: Compress pdf output (compress=0|1)
 - hrshsym: Use Hershey symbol set (hrshsym=0|1)
 - pagesize: Set page size (pagesize=A4|letter|A3|A5)

2.13 svg driver improvements

This device driver has had the following improvements: schema for generated
file now validates properly at http://validator.w3.org/ for the
automatically detected document type of SVG 1.1; -geometry option now works;
alpha channel transparency has been implemented; file familying for
multipage examples has been implemented; coordinate scaling has been
implemented so that full internal PLplot resolution is used; extraneous
whitespace and line endings that were being injected into text in error have
now been removed; and differential correction to string justification is now
applied.

The result of these improvements is that our SVG device now gives the
best-looking results of all our devices.  However, currently you must be
careful of which SVG viewer or editor you try because a number of them have
some bugs that need to be resolved.  For example, there is a librsvg bug in
text placement (http://bugzilla.gnome.org/show_bug.cgi?id=525023) that
affects all svg use within GNOME as well as the ImageMagick "display"
application.  However, at least the latest konqueror and firefox as well as
inkscape and scribus-ng (but not scribus!) give outstanding looking results
for files generated by our svg device driver.

2.14 Ada language support

We now have a complete Ada bindings implemented for PLplot. We also have a
complete set of our standard examples implemented in Ada which give results
that are identical with corresponding results for the C standard examples.
This is an excellent test of a large subset of the Ada bindings. We now
enable Ada by default for our users and request widespread testing of this
new feature.

2.15 OCaml language support

Thanks primarily to Hezekiah M. Carty's efforts we now have a complete OCaml
bindings implemented for PLplot. We also have a complete set of our standard
examples implemented in OCaml which give results that are identical with
corresponding results for the C standard examples. This is an excellent test
of a large subset of the OCaml bindings. We now enable OCaml by default for
our users and request widespread testing of this new feature.

2.16 Perl/PDL language support

Thanks to Doug Hunt's efforts the external Perl/PDL module,
PDL::Graphics::PLplot version 0.46 available at
http://search.cpan.org/dist/PDL-Graphics-PLplot has been brought up to date
to give access to recently added PLplot API.  The instructions for how to
install this module on top of an official PDL release are given in
examples/perl/README.perldemos. Doug has also finished implementing a
complete set of standard examples in Perl/PDL which are part of PLplot and
which produce identical results to their C counterparts if the above updated
module has been installed.  Our build system tests the version of
PDL::Graphics::PLplot that is available, and if it is not 0.46 or later, the
list of Perl/PDL examples that are run as part of our standard tests is
substantially reduced to avoid examples that use the new functionality.  In
sum, if you use PDL::Graphics::PLplot version 0.46 or later the full
complement of PLplot commands is available to you from Perl/PDL, but
otherwise not.

2.17 Updates to various language bindings

A concerted effort has been made to bring all the language bindings up to
date with recently added functions. Ada, C++, f77, f95, Java, OCaml, Octave,
Perl/PDL, Python, and Tcl now all support the common PLplot API (with the
exception of the mapping functions which are not yet implemented for all
bindings due to technical issues.) This is a significant step forward for
those using languages other than C.

2.18 Updates to various examples

To help test the updates to the language bindings the examples have been
thoroughly checked. Ada, C, C++, f77, f95, and OCaml now contain a full set
of non-interactive tests (examples 1-31 excluding 14 and 17). Java, Octave,
Python and Tcl are missing example 19 because of the issue with the mapping
functions. The examples have also been checked to ensure consistent results
between different language bindings. Currently there are still some minor
differences in the results for the tcl examples, probably due to rounding
errors.  Some of the Tcl examples (example 21) require Tcl version 8.5 for
proper support for NaNs.

Also new is an option for the plplot_test.sh script to run the examples
using a debugging command. This is enabled using the --debug option. The
default it to use the valgrind memory checker. This has highlighted at
least one memory leaks in PLplot which have been fixed. It is not part
of the standard ctest tests because it can be _very_ slow for a complete
set of language bindings and device drivers.

2.19 Extension of our test framework

The standard test suite for PLplot now carries out a comparison of the
stdout output (especially important for example 31 which tests most of our
set and get functions) and PostScript output for different languages as a
check.  Thanks to the addition of example 31, the inclusion of examples 14
and 17 in the test suite and other recent extensions of the other
examples we now have rigorous testing in place for almost the entirety
of our common API.  This extensive testing framework has already helped
us track down a number of bugs, and it should make it much easier for us
to maintain high quality for our ongoing PLplot releases.

2.20 Rename test subdirectory to plplot_test

This change was necessary to quit clashing with the "make test" target which
now works for the first time ever (by executing ctest).

2.21 Website support files updated

Our new website content is generated with PHP and uses CSS (cascaded style
sheets) to implement a consistent style.  This new approach demanded lots of
changes in the website support files that are used to generate and upload
our website and which are automatically included with the release.

2.22 Internal changes to function visibility

The internal definitions of functions in PLplot have been significantly
tidied up to allow the use of the -fvisibility=hidden option with newer
versions of gcc. This prevents internal functions from being exported
to the user where possible. This extends the existing support for this
on windows.

2.23 Dynamic driver support in Windows

An interface based on the ltdl library function calls was established
which allows to open and close dynamic link libraries (DLL) during
run-time and call functions from these libraries. As a consequence
drivers can now be compiled into single DLLs separate from the core
PLplot DLL also in Windows. The cmake option ENABLE_DYNDRIVERS is now
ON by default for Windows if a shared PLplot library is built.

2.24 Documentation updates

The DocBook documentation has been updated to include many of the
C-specific functions (for example plAlloc2dGrid) which are not part
of the common API, but are used in the examples and may be helpful
for PLplot users.

2.25 libnistcd (a.k.a. libcd) now built internally for -dev cgm

CGM format is a long-established (since 1987) open standard for vector
graphics that is supported by w3c (see http://www.w3.org/Graphics/WebCGM/).
PLplot has long had a cgm device driver which depended on the (mostly)
public domain libcd library that was distributed in the mid 90's by National
Institute of Standards and Technology (NIST) and which is still available
from http://www.pa.msu.edu/ftp/pub/unix/cd1.3.tar.gz.  As a convenience
to our -dev cgm users, we have brought that
source code in house under lib/nistcd and now build libnistcd routinely
as part of our ordinary builds.  The only changes we have made to the
cd1.3 source code is visibility changes in cd.h and swapping the sense of
the return codes for the test executables so that 0 is returned on success
and 1 on failure.  If you want to test libnistcd on your platform,
please run

make test_nistcd

in the top-level build tree.  (That tests runs all the test executables
that are built as part of cd1.3 and compares the results that are generated
with the *.cgm files that are supplied as part of cd1.3.)

Two applications that convert and/or display CGM results on Linux are
ralcgm (which is called by the ImageMagick convert and display applications)
and uniconvertor.

Some additional work on -dev cgm is required to implement antialiasing and
non-Hershey fonts, but both those should be possible using libnistcd according
to the text that is shown by lib/nistcd/cdtext.cgm and lib/nistcd/cdexp1.cgm.

2.26 get-drv-info now changed to test-drv-info

To make cross-building much easier for PLplot we now configure the *.rc
files that are used to describe our various dynamic devices rather than
generating the required *.rc files with get-drv-info.  We have changed the
name of get-drv-info to test-drv-info.  That name is more appropriate
because that executable has always tested dynamic loading of the driver
plug-ins as well as generating the *.rc files from the information gleaned
from that dynamic loading.  Now, we simply run test-drv-info as an option
(defaults to ON unless cross-building is enabled) and compare the resulting
*.rc file with the one configured by cmake to be sure the dynamic device
has been built correctly.

2.27 Text clipping now enabled by default for the cairo devices

When correct text clipping was first implemented for cairo devices, it was
discovered that the libcairo library of that era (2007-08) did that clipping
quite inefficiently so text clipping was disabled by default.  Recent tests
of text clipping for the cairo devices using libcairo 1.6.4 (released in
2008-04) shows text clipping is quite efficient now.  Therefore, it is now
enabled by default.  If you notice a significant slowdown for some libcairo
version prior to 1.6.4 you can use the option -drvopt text_clipping=0 for
your cairo device plots (and accept the improperly clipped text results that
might occur with that option).  Better yet, use libcairo 1.6.4 or later.

2.28 A powerful qt device driver has been implemented

Thanks to the efforts of Alban Rochel of the QSAS team, we now have a new qt
device driver which delivers the following 9 (!) devices: qtwidget, bmpqt,
jpgqt, pngqt, ppmqt, tiffqt, epsqt, pdfqt, and svgqt. qtwidget is an
elementary interactive device where, for now, the possible interactions
consist of resizing the window and right clicking with the mouse (or hitting
<return> to be consistent with other PLplot interactive devices) to control
paging.  The qtwidget overall size is expressed in pixels. bmpqt, jpgqt,
pngqt, ppmqt, and tiffqt are file devices whose overall sizes are specified
in pixels and whose output is BMP (Windows bitmap), JPEG, PNG, PPM (portable
pixmap), and TIFF (tagged image file format) formatted files. epsqt, pdfqt,
svgqt are file devices whose overall sizes are specified in points (1/72 of
an inch) and whose output is EPS (encapsulated PostScript), PDF, and SVG
formatted files.  The qt device driver is based on the powerful facilities
of Qt4 so all qt devices implement variable opacity (alpha channel) effects
(see example 30).  The qt devices also use system unicode fonts, and deal
with CTL (complex text layout) languages automatically without any
intervention required by the user.  (To show this, try qt device results
from examples 23 [mathematical symbols] and 24 [CTL languages].)

Our exhaustive Linux testing of the qt devices (which consisted of detailed
comparisons for all our standard examples between qt device results and the
corresponding cairo device results) indicates this device driver is mature,
but testing on other platforms is requested to confirm that maturity. Qt-4.5
(the version we used for most of our tests) has some essential SVG
functionality so we recommend that version (downloadable from
http://www.qtsoftware.com/downloads for Linux, Mac OS X, and Windows) for
svgqt.  One of our developers found that pdfqt was orders of magnitude
slower than the other qt devices for Qt-4.4.3 on Ubuntu 8.10 installed on a
64 bit box.  That problem was completely cured by moving to the downloadable
Qt-4.5 version.  However, we have also had good Qt-4.4.3 pdfqt reports on
other platforms.  One of our developers also found that all first pages of
examples were black for just the qtwidget device for Qt-4.5.1 on Mac OS X.
From the other improvements we see in Qt-4.5.1 relative to Qt-4.4.3 we
assume this black first page for qtwidget problem also exists for Qt-4.4.3,
but we haven't tested that combination.

In sum, Qt-4.4.3 is worth trying if it is already installed on your machine,
but if you run into any difficulty with it please switch to Qt-4.5.x (once
Qt-4.5.x is installed all you have to do is to put the 4.5.x version of
qmake in your path, and cmake does the rest).  If the problem persists for
Qt-4.5, then it is worth reporting a qt bug.

2.29 The PLplot API is now accessible from Qt GUI applications

This important new feature has been implemented by Alban Rochel of the QSAS
team as a spin-off of the qt device driver project using the extqt device
(which constitutes the tenth qt device).  See examples/c++/README.qt_example
for a brief description of a simple Qt example which accesses the PLplot API
and which is built in the installed examples tree using the pkg-config
approach. Our build system has been enhanced to configure the necessary
plplotd-qt.pc file.

2.30 NaN / Inf support for some PLplot functions

Some PLplot now correctly handle Nan or Inf values in the data to be plotted.
Line plotting (plline etc) and image plotting (plimage, plimagefr) will
now ignore NaN / Inf values. Currently some of the contour plotting / 3-d
routines do not handle NaN / Inf values. This functionality will
depend on whether the language binding used supports NaN / Inf values.

2.31 Various bug fixes

Various bugs in the 5.9.3 release have been fixed including:

- Include missing file needed for the aqt driver on Mac OS X
- Missing library version number for nistcd
- Fixes for the qt examples with dynamic drivers disabled
- Fixes to several tcl examples so they work with plserver
- Fix pkg-config files to work correctly with Debug / Release build types set
- Make Fortran command line argument parsing work with shared libraries on Windows

2.32 Cairo driver improvements

Improvements to the cairo driver to give better results for bitmap
formats when used with anti-aliasing file viewers.

2.33 PyQt changes

Years ago we got a donation of a hand-crafted pyqt3 interface to PLplot
(some of the functions in plplot_widgetmodule.c in bindings/python) and a
proof-of-concept example (prova.py and qplplot.py in examples/python), but
this code did not gain any developer interest and was therefore not
understood or maintained. Recently one of our core developers has
implemented a sip-generated pyqt4 interface to PLplot (controlled by
plplot_pyqt4.sip in bindings/qt_gui/pyqt4) that builds without problems as a
python extension module, and a good-looking pyqt4 example (pyqt4_example.py
in examples/python) that works well.  Since this pyqt4 approach is
maintained by a PLplot developer it appears to have a good future, and we
have therefore decided to concentrate on pyqt4 and remove the pyqt3 PLplot
interface and example completely.

2.34 Color Palettes

Support has been added to PLplot for user defined color palette files.
These files can be loaded at the command line using the -cmap0 or
-cmap1 commands, or via the API using the plspal0 and plspal1 commands.
The commands cmap0 / plspal0 are used to load cmap0 type files which
specify the colors in PLplot's color table 0. The commands cmap1 /
plspal1 are used to load cmap1 type files which specify PLplot's color
table 1. Examples of both types of files can be found in either the
plplot-source/data directory or the PLplot installed directory
(typically /usr/local/share/plplotx.y.z/ on Linux).

2.35 Reimplementation of a "soft landing" when a bad/missing compiler is
detected

The PLplot core library is written in C so our CMake-based build system will
error out if it doesn't detect a working C compiler.  However all other
compiled languages (Ada, C++, D, Fortran, Java, and OCaml) we support are
optional.  If a working compiler is not available, we give a "soft landing"
(give a warning message, disable the optional component, and keep going).
The old implementation of the soft landing was not applied consistently (C++
was unnecessarily mandatory before) and also caused problems for ccmake (a
CLI front-end to the cmake application) and cmake-gui (a CMake GUI front-end
to the cmake application) which incorrectly dropped languages as a result
even when there was a working compiler.

We now have completely reimplemented the soft landing logic.  The result
works well for cmake, ccmake, and cmake-gui.  The one limitation of this new
method that we are aware of is it only recognizes either the default
compiler chosen by the generator or else a compiler specified by the
environment variable approach (see Official Notice XII above).  Once CMake
bug 9220 has been fixed (so that the OPTIONAL signature of the
enable_language command actually works without erroring out), then our
soft-landing approach (which is a workaround for bug 9220) will be replaced
by the OPTIONAL signature of enable_language, and all CMake methods of
specifying compilers and compiler options will automatically be recognized
as a result.

2.36 Make PLplot aware of LC_NUMERIC locale

For POSIX-compliant systems, locale is set globally so any external
applications or libraries that use the PLplot library or any external
libraries used by the PLplot library or PLplot device drivers could
potentially change the LC_NUMERIC locale used by PLplot to anything those
external applications and libraries choose. The principal consequence of
such choice is the decimal separator could be a comma (for some locales)
rather than the period assumed for the "C" locale.  For previous versions of
PLplot a comma decimal separator would have lead to a large number of
errors, but this issue is now addressed with a side benefit that our plots
now have the capability of displaying the comma (e.g., in axis labels) for
the decimal separator for those locales which require that.

If you are not satisfied with the results for the default PLplot locale set
by external applications and libraries, then you can now choose the
LC_NUMERIC locale for PLplot by (a) specifying the new -locale command-line
option for PLplot (if you do not specify that option, a default locale is
chosen depending on applications and libraries external to PLplot (see
comments above), and (b) setting an environment variable (LC_ALL,
LC_NUMERIC, or LANG on Linux, for example) to some locale that has been
installed on your system.  On Linux, to find what locales are installed, use
the "locale -a" option. The "C" locale is always installed, but usually
there is also a principal locale that works on a platform such as
en_US.UTF8, nl_NL.UTF8, etc.  Furthermore, it is straightforward to build
and install any additional locale you desire.  (For example, on Debian Linux
you do that by running "dpkg-reconfigure locales".)

Normally, users will not use the -locale option since the period
decimal separator that you get for the normal LC_NUMERIC default "C"
locale used by external applications and libraries is fine for their needs.
However, if the resulting decimal separator is not what the user
wants, then they would do something like the following to (a) use a period
decimal separator for command-line input and plots:

LC_ALL=C examples/c/x09c -locale -dev psc -o test.psc -ori 0.5

or (b) use a comma decimal separator for command-line input and plots:

LC_ALL=nl_NL.UTF8 examples/c/x09c -locale -dev psc -o test.psc -ori 0,5

N.B. in either case if the wrong separator is used for input (e.g., -ori 0,5
in the first case or -ori 0.5 in the second) the floating-point conversion
(using atof) is silently terminated at the wrong separator for the locale,
i.e., the fractional part of the number is silently dropped.  This is
obviously not ideal, but on the other hand there are relatively few
floating-point command-line options for PLplot, and we also expect those who
use the -locale option to specifically ask for a given separator for plots
(e.g., axis labels) will then use it for command-line input of
floating-point values as well.

Certain critical areas of the PLplot library (e.g., our color palette file
reading routines and much of the code in our device drivers) absolutely
require a period for the decimal separator.  We now protect those critical
areas by saving the normal PLplot LC_NUMERIC locale (established with the
above -locale option or by default by whatever is set by external
applications or libraries), setting the LC_NUMERIC "C" locale, executing the
critical code, then restoring back to the normal PLplot LC_NUMERIC locale.
Previous versions of PLplot did not have this protection of the critical
areas so were vulnerable to default LC_NUMERIC settings of external
applications that resulted in a comma decimal separator that did not work
correctly for the critical areas.

2.37 Linear gradients have been implemented

The new plgradient routine draws a linear gradient (based on the
current color map 1) at a specified angle with the x axis for a
specified polygon.  Standard examples 25 and 30 now demonstrate use of
plgradient.  Some devices use a software fallback to render the
gradient.  This fallback is implemented with plshades which uses a
series of rectangles to approximate the gradient. Tiny alignment
issues for those rectangles relative to the pixel grid may look
problematic for transparency gradients.  To avoid that issue, we try
to use native gradient capability whenever that is possible for any of
our devices.  Currently, this has been implemented for our svg, qt,
and cairo devices.  The result is nice-looking smooth transparency
gradients for those devices, for, e.g., example 30, page 2.

2.38 Cairo Windows driver implemented

A cairo Windows driver has been implemented. This provides an
interactive cairo driver for Windows similar to xcairo on Linux.
Work to improve its functionality is ongoing.

2.39 Custom axis labelling implemented

Axis text labels can now be customized using the new plslabelfunc function.
This allows a user to specify what text should be draw at a given position
along a plot axis.  Example 19 has been updated to illustrate this function's
use through labelling geographic coordinates in degrees North, South, East and
West.

2.40 Universal coordinate transform implemented

A custom coordinate transformation function can be set using plstransform.
This transformation function affects all subsequent plot function calls which
work with plot window coordinates.  Testing and refinement of this support is
ongoing.

2.41 Support for arbitrary storage of 2D user data

This improvement courtesy of David MacMahon adds support for arbitrary
storage of 2D user data.  This is very similar to the technique employed
by some existing functions (e.g. plfcont and plfshade) that use "evaluator"
functions to access 2D user data that is stored in an arbitrary format.
The new approach extends the concept of a user-supplied (or predefined)
"evaluator" function to a group of user-supplied (or predefined) "operator"
functions.  The operator functions provide for various operations on the
arbitrarily stored 2D data including: get, set, +=, -=, *=, /=, isnan,
minmax, and f2eval.

To facilitate the passing of an entire family of operator functions (via
function pointers), a plf2ops_t structure is defined to contain a
pointer to each type of operator function.  Predefined operator
functions are defined for several common 2D data storage techniques.
Variables (of type plf2ops_t) containing function pointers for these
operator functions are also defined.

New variants of functions that accept 2D data are created.  The new
variants accept the 2D data as two parameters: a pointer to a plf2ops_t
structure containing (pointers to) suitable operator functions and a
PLPointer to the actual 2D data store.  Existing functions that accept
2D data are modified to simply pass their parameters to the
corresponding new variant of the function, along with a pointer to the
suitable predefined plf2ops_t structure of operator function pointers.

The list of functions for which new variants are created is:
c_plimage, c_plimagefr, c_plmesh, c_plmeshc, c_plot3d, c_plot3dc,
c_plot3dcl, c_plshade1, c_plshades, c_plsurf3d, and c_plsurf3dl, and
c_plgriddata.  The new variants are named the same as their
corresponding existing function except that the "c_" prefix is changed
to "plf" (e.g. the new variant of c_plmesh is called plfmesh).

Adds plfvect declaration to plplot.h and changes the names (and only the
names) of some plfvect arguments to make them slightly clearer.  In
order to maintain backwards API compatibility, this function and the
other existing functions that use "evaluator" functions are NOT changed
to use the new operator functions.

Makes plplot.h and libplplot consistent vis-a-vis pltr0f and pltr2d.
Moves the definitions of pltr2f (already declared in plplot.h) from the
sccont.c files of the FORTRAN 77 and Fortran 95 bindings into plcont.c.
Removes pltr0f declaration from plplot.h.

Changes x08c.c to demonstrate use of new support for arbitrary storage
of 2D data arrays.  Shows how to do surface plots with the following
four types of 2D data arrays:

1) PLFLT z[nx][ny];
2) PLfGrid2 z;
3) PLFLT z[nx*ny]; /* row major order */
4) PLFLT z[nx*ny]; /* column major order */

2.42 Font improvements

We have added the underscore to the Hershey glyphs (thanks to David
MacMahon) and slightly rearranged the ascii index to the Hershey
indices so that plpoin now generates the complete set of printable
ascii characters in the correct order for the Hershey fonts (and therefore
the Type1 and TrueType fonts as well).

We have improved how we access TrueType and Type1 fonts via the Hershey
font index (used by plpoin, plsym, and the Hershey escape sequences in pl*tex
commands).  We have added considerably to the Hershey index to Unicode index
translation table both for the compact and extended Hershey indexing scheme,
and we have adopted the standard Unicode to Type1 index translation tables
from http://unicode.org/Public/MAPPINGS/VENDORS/ADOBE/.

We have also dropped the momentary switch to symbol font that was
implemented in the PLplot core library.  That switch was designed to partially
compensate for the lack of symbol glyphs in the standard Type1 fonts.  That
was a bad design because it affected TrueType font devices as well as
the desired Type1 font devices.  To replace this bad idea we now
change from Type1 standard fonts to the Type1 Symbol font (and vice
versa) whenever there is a glyph lookup failure in the Type1 font
device drivers (ps and pdf).

2.42 Alpha value support for plotting in memory.

The function plsmema() was added to the PLplot API. This allows the user
to supply a RGBA formatted array that PLplot can use to do in memory
plotting with alpha value support. At present only the memcairo device
is capable of using RGBA formatted memory. The mem device, at least
for the time being, only supports RGB formatted memory and will exit
if the user attempts to give it RGBA formatted memory to plot in.

2.43 Add a Qt device for in memory plotting.

A new device called memqt has been added for in memory plotting using
Qt. This device is the Qt equivalent of the memcairo device.

2.44 Add discrete legend capability.

A new routine called pllegend has been added to our core C API.
(N.B. This is an experimental API that may be subject to further
change as we gain more experience with it.)  This routine creates a
discrete plot legend with a plotted box, line, and/or line of symbols
for each annotated legend entry. The arguments of pllegend provide
control over the location and size of the legend within the current
subpage as well as the location and characteristics of the elements
(most of which are optional) within that legend. The resulting legend
is clipped at the boundaries of the current subpage

2.45 Add full bindings and examples for the D language.

As of release 5.9.5 we added full bindings and examples for the D
language.  The results for the D examples are generally consistent
with the corresponding C examples which helps to verify the D
bindings.

Since the release of 5.9.5 it has come to our attention that the
version of gdc supplied with several recent versions of Ubuntu has a
very serious bug on 64-bit systems (see
https://bugs.launchpad.net/ubuntu/+source/gdc-4.2/+bug/235955) which
causes several of the plplot D examples to crash. If this affects you,
you are recommended to disable the d bindings or switch to an
alternative d compiler (the Digital Mars compiler is reported to be
good).

2.46 The plstring and plstring3 functions have been added

The plstring function largely supersedes plpoin and plsym
because many(!) more glyphs are accessible with plstring.  The glyph
is specified with a PLplot user string.  As with plmtex and plptex,
the user string can contain FCI escapes to determine the font, UTF-8
code to determine the glyph or else PLplot escapes for Hershey or
unicode text to determine the glyph.  Standard examples 4 and 26 use
plstring.

The plstring3 function largely supersedes plpoin3 for the same (access
to many more glyphs) reasons.  Standard example 18 uses plstring3.

2.47 The pllegend API has been finalized

The function pllegend allows users to create a discrete plot legend
with a plotted colored box, line, and/or line of symbols for each
annotated legend entry.  The pllegend function was first made
available for 5.9.7. Due to feedback from early adopters of pllegend,
we have now added substantially to the pllegend capabilities. and we
now believe pllegend is ready for prime time.  The pllegend
capabilities are documented in our DocBook documentation and
demonstrated in standard examples 4, 26, and 33.

N.B. The current set of changes required a backwards-incompatible
change to the pllegend API.  This requires users who tried this new
functionality for 5.9.7 to reprogramme their pllegend calls.  Since
the pllegend API was labelled experimental for 5.9.7, we will not be
bumping the soversions of the affected PLplot libraries.

2.48 Octave bindings now implemented with swig

Octave is a powerful platform that demands a first-class PLplot
solution, but we were finding it difficult to realize that goal
because we were running up against limitations of the previous
matwrap-generated Octave bindings.  Accordingly, a swig-generated
version of the Octave bindings has now been implemented that builds on
the prior matwrapped bindings effort but also extends it with, e.g.,
bindings for plstring, plstring3, pllegend, and plcolorbar.  These new
octave bindings (which now completely replace the prior matwrapped
bindings) make it possible to run examples 4, 18, 26, and 33 (all of
which have now have been updated to use those functions) and get
consistent results with the corresponding C examples.

Like the matwrapped bindings before it, the new swig-generated octave
bindings currently do not have a number of the PLplot functions
wrapped (e.g., "plmap") that are needed by standard example 19.
However, because of the power of swig we now have some confidence we
can solve this issue in the future.

2.49 Documentation redone for our swig-generated Python and Octave bindings

Through the docstring %feature, swig can generate documentation
strings for certain of the languages it supports (currently Python,
Octave, and Ruby).  We have now removed all such hand-crafted swig
documentation data from bindings/swig-support/plplotcapi.i and
replaced it with generated documentation in the file
bindings/swig-support/swig_documentation.i.  That file is generated
from doc/docbook/src/api.xml using the perl script
doc/docbook/bin/api2swigdoc.pl.  The build system Unix target
"check_swig_documentation" now runs that script and compares results
with bindings/swig-support/swig_documentation.i in the source tree to
make sure that latter file is consistent with any changes that might
have occurred in doc/docbook/src/api.xml.

The resulting Octave and Python user-documentation (obtained by 'help
<PLplot_command_name>' in Octave and 'print ("%s" %
<PLplot_command_name>.__doc__)' in Python is much more detailed than
what was available before using the hand-crafted documentation.  If we
ever decided to generate PLplot bindings for Ruby with swig, this
high-quality user-documentation would be available for that language
as well.

2.50 Support large polygons

Previous releases had an implicit limitation with respect to the
number of vertices in a polygon. This was due to the use of statically
defined arrays (to avoid allocating and freeing memory for each polygon
to be drawn). José Luis García Pallero found this limitation and
provided patches to eliminate this limitation. The strategy is
that for small polygons, the original statically defined arrays
are used and for large polygons new arrays are allocated and freed.
This strategy has been applied to all relevant source files.

2.51 Complete set of PLplot parameters now available for Fortran

The #defines in bindings/swig-support/plplotcapi.i (which are
consistent with those in include/plplot.h) define the complete set of
important PLplot constants (whose names typically start with "PL_").
We have implemented automatic methods of transforming that complete
set of #defines into Fortran parameters that can be used from either
Fortran 77 or Fortran 95.

For Fortran 77, the user must insert an

      include 'plplot_parameters.h'

statement in every function/subroutine/main programme where he expects
to use PLplot constants (whose names typically start with "PL_".  (See
examples/f77/*.fm4 for examples of this method).  When compiling he
must also insert the appropriate -I option to find this file (in
bindings/f77/ in the source tree and currently in
$prefix/lib/fortran/include/plplot$version in the install tree
although that install location may be subject to change).  Note, the
above method does not interfere with existing apps which have
necessarily been forced to define the needed PLplot constants for
themselves.  But for future f77 use, the above statement is
more convenient and much less subject to error than a whole bunch of
parameter statements for the required constants.

For Fortran 95, the complete set of parameters are made available as
part of the plplot module.  So access to this complete set of
parameters is automatic wherever the "use plplot" statement is used.
This is extremely convenient for new Fortran 95 apps that use PLplot,
but, in general, changes will have to be made for existing apps. (See
announcement XX above for the details).

2.52 The plarc function has been added

The plarc function allows drawing filled and outlined arcs in PLplot.
Standard example 3 uses plarc.

2.53 The format for map data used by plmap has changed

The format for map data used by plmap is now the shapefile format.
This is a widely used standard format and there are many sources of data
in this format. This replaces the custom binary format that PLplot used
to use. The support for reading shapefiles is provided by the shapelib
library, which is a new dependency for PLplot. If users do not have this
installed then, by default, they will not get any map capabilities with
PLplot. Support for the old format can still be enabled by setting the
PL_DEPRECATED cmake variable, but this support will be removed in a
subsequent PLplot release.

2.54 Python support for Numeric has been dropped

Support for the python Numeric package has been dropped. This has been
deprecated since 5.9.6. Numeric is no longer supported and is superseded
by numpy. Support for numpy has been the default in plplot for a number
of years so most users should notice no difference.

2.55 Backwards-incompatible API change to non-integer line widths

All functions which take line width arguments (plwidth, plshade*,
pllegend) now use PLFLT values for the line width. This allows device
drivers which are based on modern graphics libraries such as Qt4 and
pango/cairo to make full use (e.g., extremely fine line widths) of the
floating-point line width capabilities of those libraries.  The
replacement of plwid by plwidth, and the change in argument lists for
plshade* and pllegend constitute a backwards incompatible API change
from previous releases and the soname of libraries has been bumped
accordingly (which forces users to recompile PLplot).

2.56 Improvements to the build system for the Cygwin case

The Cygwin platform provides a full-featured Unix environment on
Windows.  CMake has recently been changed (at the request of Cygwin
developers) to emphasize the Unix aspects of the Cygwin platform and
deemphasize the Windows aspects of that platform.  It was argued this
change would tend to make CMake builds of software much more reliable
on Cygwin, and after some small but important changes to our
CMake-based build system to adjust for these recent CMake changes for
Cygwin, we have indeed confirmed that prediction for the PLplot case.
There are still some Cygwin platform issues left which are being
discussed on our Wiki at http://www.miscdebris.net/plplot_wiki/index.php?title=Setup_cygwin,
but some fundamental breakthroughs have also been made for the Cygwin case
that should interest all our Windows users.  For example, for the
first time ever we have been able to build our cairo and qt device
drivers on the Cygwin platform giving our Windows users convenient
access to the many high-quality PLplot devices that are available with
these two different device drivers.

2.57 The plcolorbar API has been finalized

The function plcolorbar allows users to create a color bar (an
annotated subplot representing a continuous range of colors within the
main plot and typically identifying certain colors with certain
numerical values using an axis).  The plcolorbar capabilities are
documented in our DocBook (and doxygen) documentation and demonstrated
in standard examples 16 and 33.

N.B. The previous two releases (5.9.8 and 5.9.9) contained
unadvertised experimental versions of plcolorbar.  Any PLplot user who
found and tried those capabilities will have to reprogramme their
plcolorbar calls to be compatible with the argument list of the latest
version.

2.58 Documentation of the new legend and color bar capabilities of PLplot

The pllegend and plcolorbar API has been documented in both doxygen
and DocBook forms.  In addition, the "advanced use" chapter of the
DocBook form of documentation now contains a section giving an
overview of pllegend and plcolorbar.

N.B. Although we feel the pllegend and plcolorbar API has now been
finalized with regard to the PLplot core developers own interests and
needs, we also realize that as more and more PLplot users take
advantage of these new PLplot capabilities there will likely be calls
to add additional features to pllegend or plcolorbar based on
additional experience with these powerful capabilities.  In general,
we would welcome such feature requests.

2.59 The D bindings and examples have been converted from the
old version of D (D1) to the new version of D (D2)

This change should make PLplot much more relevant for D users
going forward.

See http://en.wikipedia.org/wiki/D_(programming_language)#History for
a discussion of the differences between these two variants of D.

2.60 The DocBook documentation for PLplot is now generated using modern
XML/XSL backend tools for DocBook

These modern backend tools (such as xmlto) replace the
deprecated/unmaintained SGML/DSSL tools we have used before.  For
developers this means generation of our DocBook generation is much
easier. much faster, and much less error-prone.  End users will notice
some improvements in the results (e.g., the table of Greek letters) as
well as some minor style changes.

2.61 Implement experimental build_projects sub-project

The idea here (see cmake/build_projects) is to automate the build of
all PLplot dependencies and the build and test of PLplot itself for
platforms (such as Linux enterprise distributions and all forms of
Windows platforms other than Cygwin) that do not come with modern
versions of PLplot soft dependencies such as Pango/Cairo and Qt.
This project is beginning to work properly for the Linux case, but
still needs lots of work for the Windows case.

2.62 Implement extremely simple "00" example

The point of this standard example is to give the users an extremely
simple tutorial example to help them to get started with 2D plotting
with PLplot.

2.63 Convert to using the Allura form of SourceForge software

We use sourceforge.net as our software hosting facility.  Early in
2013 Sourceforge updated essentially all their support software as
part of the so-called Allura project.  This made it necessary to make
some minor internal PLplot changes such as script changes and different URL's
in the website referring to SourceForge facilities.  The most important
change from the user perspective is the URL for the Allura form
of the svn repository that we use now:

http://svn.code.sf.net/p/plplot/code/trunk/

2.64 Use NON_TRANSITIVE linking by default for the shared libraries case for
all non-windows systems

The point of this change is to reduce overlinking and therefore
the problems caused by overlinking that are mentioned
at http://en.altlinux.org/UnderOverLinkProblems.

Non-transitive linking means link only to libraries that directly
resolve undefined symbols, i.e., do not link to a library just because
it is a dependency of a dependency.

2.65 Update f95 examples to take larger advantage of Fortran 95 capabilities

Previously our f95 examples tended to use legacy Fortran capabilities, but
that situation has substantially changed for this release.

2.66 Substantial additions to the doxygen documentation

One of the on-going documentation projects is to create doxygen
documentation of every single argument of the public API for PLplot.
A substantial increase in such documentation has been implemented
in this release cycle.




DETAILED CHANGELOG FOR THIS RELEASE


------------------------------------------------------------------------
r12557 | airwin | 2013-09-30 15:57:22 -0700 (Mon, 30 Sep 2013) | 2 lines
Changed paths:
   M /trunk/README.Release_Manager_Cookbook

This may be the final version of this file for this release.

------------------------------------------------------------------------
r12556 | airwin | 2013-09-30 14:46:24 -0700 (Mon, 30 Sep 2013) | 2 lines
Changed paths:
   M /trunk/cmake/modules/plplot_version.cmake

Bump the release date by one day.

------------------------------------------------------------------------
r12555 | airwin | 2013-09-30 13:49:54 -0700 (Mon, 30 Sep 2013) | 14 lines
Changed paths:
   M /trunk/cmake/modules/docbook.cmake
   M /trunk/doc/docbook/src/CMakeLists.txt

Fix build-system bug in configuration and installation of
stylesheet.css for the case where the documentation is prebuilt.

Tested by Alan W. Irwin <airwin@users.sourceforge.net> by running

scripts/make_tarball.sh -c -i /tmp/plplot_install
find /tmp/plplot-dist-prep -name "*.out" |xargs grep -i error

and browsing the resulting documentation that was installed from the
generated preliminary version of the release tarball in
/tmp/plplot_install/share/doc/plplot/html while looking carefully
for stylesheet issues.


------------------------------------------------------------------------
r12554 | airwin | 2013-09-30 00:01:15 -0700 (Mon, 30 Sep 2013) | 8 lines
Changed paths:
   M /trunk/scripts/make_tarball.sh

Drop -t and -w options and modify script to create a release tarball
from the parent directory of wherever the script resides.  Thus, it can
create preliminary test tarballs from the local copy of svn trunk
(where this script resides) or a final release tarball from a local
copy of the appropriate tags release directory (where this script also
resides).


------------------------------------------------------------------------
r12553 | airwin | 2013-09-29 17:07:44 -0700 (Sun, 29 Sep 2013) | 4 lines
Changed paths:
   M /trunk/README.Release_Manager_Cookbook

Interim snapshot commit of the many changes I have made to the release
process.  However, there is still more edits that will need to be
made before this is ready for release.

------------------------------------------------------------------------
r12552 | airwin | 2013-09-29 13:59:14 -0700 (Sun, 29 Sep 2013) | 9 lines
Changed paths:
   M /trunk/cmake/build_projects/CMakeLists.txt
   M /trunk/cmake/build_projects/README
   M /trunk/cmake/build_projects/docbook-xml/CMakeLists.txt
   M /trunk/cmake/build_projects/docbook-xml/bp.cmake
   M /trunk/cmake/build_projects/docbook-xsl/bp.cmake
   M /trunk/cmake/build_projects/gtk-doc/bp.cmake
   M /trunk/cmake/build_projects/gtk_packages_add.xml
   M /trunk/cmake/build_projects/libxml2/bp.cmake
   M /trunk/cmake/build_projects/patch_gtk_packages.xml

In the interests of committing what I have on my disk to the svn
repository, commit the current snapshot of build_projects for this
PLplot release. Note, it has actually been a while since I have been
working on this subproject so this result should be considered
experimental and may not even currently work.  But at least
it preserves a snapshot of my work and will provide a starting
point for the next time I work on build_projects.


------------------------------------------------------------------------
r12551 | airwin | 2013-09-29 13:54:34 -0700 (Sun, 29 Sep 2013) | 2 lines
Changed paths:
   A /trunk/cmake/build_projects/subversion
   A /trunk/cmake/build_projects/subversion/bp.cmake

Preliminary commit of incomplete subversion build subproject.

------------------------------------------------------------------------
r12550 | airwin | 2013-09-29 13:53:06 -0700 (Sun, 29 Sep 2013) | 2 lines
Changed paths:
   M /trunk/cmake/build_projects/itstool/bp.cmake
   A /trunk/cmake/build_projects/itstool/itstool-1.2.0-python-location-fixes.patch

Patch itstool with reconfigured autotools-based build system

------------------------------------------------------------------------
r12549 | airwin | 2013-09-29 13:41:52 -0700 (Sun, 29 Sep 2013) | 2 lines
Changed paths:
   M /trunk/README.release

Report (good) test results for this release.

------------------------------------------------------------------------
r12548 | airwin | 2013-09-29 13:41:21 -0700 (Sun, 29 Sep 2013) | 8 lines
Changed paths:
   M /trunk/examples/CMakeLists.txt

Fix rpath issue (couldn't find shapelib) with qt_example for
traditional build system of installed examples.

Tested by: Alan W. Irwin <airwin@users.sf.net> using
scripts/comprehensive_test.sh for case where shapelib had
a non-standard location.


------------------------------------------------------------------------
r12547 | airwin | 2013-09-29 03:21:53 -0700 (Sun, 29 Sep 2013) | 4 lines
Changed paths:
   M /trunk/scripts/comprehensive_test.sh

Adjust script so that it can handle version numbers where the major
number is one numerical digit, the minor number one or more numerical
digits, and the patch number is one or more numerical digits.

------------------------------------------------------------------------
r12546 | airwin | 2013-09-29 01:17:29 -0700 (Sun, 29 Sep 2013) | 8 lines
Changed paths:
   M /trunk/cmake/modules/plplot_version.cmake

Update release date to 2013-09-29 and version to 5.9.10 in preparation
for the planned release later today.

Soversion bump for most PLplot libraries in preparation for the
release because of substantial backwards incompatible API changes
concerning integer to floating point line width parameters.


------------------------------------------------------------------------
r12545 | airwin | 2013-09-29 00:42:37 -0700 (Sun, 29 Sep 2013) | 8 lines
Changed paths:
   M /trunk/README.release

Substantial update to reflect all important changes (as revealed by
the commit messages) since the last release.

Spell check using

aspell check README.release


------------------------------------------------------------------------
r12544 | airwin | 2013-09-28 10:52:22 -0700 (Sat, 28 Sep 2013) | 4 lines
Changed paths:
   M /trunk/bindings/octave/CMakeLists.txt

Only define the check_plplot_octave_def custom target when using the
matwrapped bindings (which should probably be removed in any case during the
next release cycle).

------------------------------------------------------------------------
r12543 | airwin | 2013-09-28 10:50:13 -0700 (Sat, 28 Sep 2013) | 8 lines
Changed paths:
   M /trunk/bindings/octave/plplot_octave_def

Regenerate this file (only used for the legacy matwrapped bindings) 
to make it consistent with the updated #defines in
bindings/swig-support/plplotcapi.i.  This regeneration is accomplished
by running the check_plplot_octave_def target and copying the
comparison file generated in the build tree on top of this source-tree
file.


------------------------------------------------------------------------
r12542 | airwin | 2013-09-28 10:30:43 -0700 (Sat, 28 Sep 2013) | 2 lines
Changed paths:
   M /trunk/bindings/swig-support/CMakeLists.txt

Implement run-time explanatory message for the check_swig_documentation target.

------------------------------------------------------------------------
r12541 | airwin | 2013-09-28 10:25:21 -0700 (Sat, 28 Sep 2013) | 7 lines
Changed paths:
   M /trunk/bindings/f95/plplot_parameters.h

Regenerate this file to make it consistent with the updated #defines
in bindings/swig-support/plplotcapi.i.  This regeneration is
accomplished by running the check_f95_parameters target and copying
the comparison file generated in the build tree on top of this
source-tree file.


------------------------------------------------------------------------
r12540 | airwin | 2013-09-28 10:18:21 -0700 (Sat, 28 Sep 2013) | 6 lines
Changed paths:
   M /trunk/bindings/swig-support/swig_documentation.i

Regenerate this file to make it consistent with the updated
doc/docbook/src/api.xml.  This regeneration is accomplished by running
the check_swig_documentation target and copying the comparison file
generated in the build tree on top of this source-tree file.


------------------------------------------------------------------------
r12539 | airwin | 2013-09-28 09:52:20 -0700 (Sat, 28 Sep 2013) | 2 lines
Changed paths:
   M /trunk/bindings/ocaml/CMakeLists.txt

Make check_plplot_h.inc target to check consistency of plplot_h.inc.

------------------------------------------------------------------------
r12538 | airwin | 2013-09-27 08:53:14 -0700 (Fri, 27 Sep 2013) | 4 lines
Changed paths:
   A /trunk/doc/README.doxygen

Initial commit of documentation concerning how to implement,
configure, build, and test our doxygen form of documentation.


------------------------------------------------------------------------
r12537 | airwin | 2013-09-26 16:28:30 -0700 (Thu, 26 Sep 2013) | 2 lines
Changed paths:
   M /trunk/www/credits.php

Update broken or redirected links.

------------------------------------------------------------------------
r12536 | airwin | 2013-09-26 16:07:02 -0700 (Thu, 26 Sep 2013) | 10 lines
Changed paths:
   M /trunk/www/examples.php

Implement a method (used just for example 33 right now) for selecting
a subset of the pages to display on our website.

Tested by Alan W. Irwin <airwin@users.sf.net> by running
the scripts/generate_website.sh script and looking at the
website results for each example to make sure all pages
are displayed except for example 33 where, as expected, the
correct subset of pages was displayed.


------------------------------------------------------------------------
r12535 | airwin | 2013-09-26 14:59:56 -0700 (Thu, 26 Sep 2013) | 15 lines
Changed paths:
   M /trunk/www/examples.php

Add an additional array to demoArray which contains flags to store
which pages of each example are displayed on the website.  But for
now this extra array is not used (see ToDo below).

Add an entry in demoArray for example 00

Change demoArray to allow 100 pages for example 33

Drop f77 and Perl/PDL from list of languages whose source code is
displayed  for each example.

ToDo. Implement using the extra array in demoArray to control which
pages are displayed on the website.


------------------------------------------------------------------------
r12534 | airwin | 2013-09-26 14:51:35 -0700 (Thu, 26 Sep 2013) | 8 lines
Changed paths:
   M /trunk/scripts/htdocs-gen_plot-examples.sh

Drop f77 and Perl/PDL example source code from being copied to website.

Include source code and pngcairo results for x00.

For generated results, allow more than 99 pages.  (N.B. example 33
currently has 100 pages).


------------------------------------------------------------------------
r12533 | andrewross | 2013-09-26 08:32:18 -0700 (Thu, 26 Sep 2013) | 4 lines
Changed paths:
   M /trunk/cmake/modules/wxwidgets.cmake


Potential fix for wxWidgets problem on windows.


------------------------------------------------------------------------
r12532 | andrewross | 2013-09-26 08:18:37 -0700 (Thu, 26 Sep 2013) | 5 lines
Changed paths:
   M /trunk/examples/ada/x19a.adb
   M /trunk/examples/ada/xthick19a.adb
   M /trunk/examples/c/x19c.c
   M /trunk/examples/c++/x19.cc
   M /trunk/examples/d/x19d.d
   M /trunk/examples/f77/x19f.fm4
   M /trunk/examples/f95/x19f.f90
   M /trunk/examples/java/x19.java
   M /trunk/examples/lua/x19.lua
   M /trunk/examples/ocaml/x19.ml
   M /trunk/examples/octave/x19c.m
   M /trunk/examples/perl/x19.pl
   M /trunk/examples/python/xw19.py
   M /trunk/examples/tcl/x19.tcl

Fix from Phil Rosenberg for the missing land in example 19, propagated to all languages.

Also, further small fix to f95 example 19 to get the latitude label length right for the case where it is 0. 


------------------------------------------------------------------------
r12531 | andrewross | 2013-09-25 23:44:36 -0700 (Wed, 25 Sep 2013) | 3 lines
Changed paths:
   M /trunk/debian/changelog
   M /trunk/debian/control
   M /trunk/debian/control.in

Debian packages - bump standards version.


------------------------------------------------------------------------
r12530 | andrewross | 2013-09-25 15:31:44 -0700 (Wed, 25 Sep 2013) | 4 lines
Changed paths:
   M /trunk/bindings/d/plplot.d
   M /trunk/examples/d/x33d.d

Update d bindings for pllegend to allow null arrays.
Update d example 33 consistent with the C version.


------------------------------------------------------------------------
r12529 | airwin | 2013-09-25 11:07:21 -0700 (Wed, 25 Sep 2013) | 3 lines
Changed paths:
   M /trunk/www/corefunctions.php

Make clear distinction between the copyright of the contents and the copyright
of the design.

------------------------------------------------------------------------
r12528 | airwin | 2013-09-24 22:44:57 -0700 (Tue, 24 Sep 2013) | 8 lines
Changed paths:
   M /trunk/www/corefunctions.php

Update news feed location to be consistent with Allura version
of SourceForge.

N.B. This change does not deal with the remaining news sidebar issues
mentioned on list (too many news items, broken rendering of each
webpage with the sidebar, old version of simplepie software).


------------------------------------------------------------------------
r12527 | jbauck | 2013-09-24 21:34:57 -0700 (Tue, 24 Sep 2013) | 1 line
Changed paths:
   M /trunk/doc/docbook/src/ada.xml

Update Ada docs.
------------------------------------------------------------------------
r12526 | jbauck | 2013-09-24 19:16:25 -0700 (Tue, 24 Sep 2013) | 1 line
Changed paths:
   M /trunk/bindings/ada/plplot_thin.adb
   M /trunk/bindings/ada/plplot_thin.ads
   M /trunk/doc/docbook/src/api.xml

Update copyright dates for Ada binding. Fix "redacted" form in docs for plcolorbar.
------------------------------------------------------------------------
r12525 | airwin | 2013-09-24 15:21:20 -0700 (Tue, 24 Sep 2013) | 3 lines
Changed paths:
   M /trunk/doc/docbook/src/ada.xml
   M /trunk/doc/docbook/src/deploying.xml
   M /trunk/doc/docbook/src/drivers.xml
   M /trunk/doc/docbook/src/intro.xml
   M /trunk/doc/docbook/src/os_notes.xml
   M /trunk/doc/docbook/src/perl.xml
   M /trunk/doc/docbook/src/wish.xml

Fix broken URL's contained inside ulink elements of our DocBook
documentation.

------------------------------------------------------------------------
r12524 | airwin | 2013-09-24 09:51:13 -0700 (Tue, 24 Sep 2013) | 4 lines
Changed paths:
   M /trunk/www/corefunctions.php
   M /trunk/www/download.php
   M /trunk/www/index.php

Fix broken links for the sidebar that occurs for all pages and for the principal
page and the download page.


------------------------------------------------------------------------
r12523 | jbauck | 2013-09-24 03:27:16 -0700 (Tue, 24 Sep 2013) | 1 line
Changed paths:
   M /trunk/bindings/ada/plplot.adb
   M /trunk/bindings/ada/plplot.ads
   M /trunk/bindings/ada/plplot_thin.adb
   M /trunk/bindings/ada/plplot_thin.ads
   M /trunk/bindings/ada/plplot_traditional.adb
   M /trunk/bindings/ada/plplot_traditional.ads
   M /trunk/examples/ada/x16a.adb
   M /trunk/examples/ada/x33a.adb
   M /trunk/examples/ada/xthick16a.adb
   M /trunk/examples/ada/xthick33a.adb

Update Ada bindings and examples 16 and 33 for plcolorbar capability. Also add support for plscmap1_range and plgcmap1_range.
------------------------------------------------------------------------
r12522 | airwin | 2013-09-23 22:27:13 -0700 (Mon, 23 Sep 2013) | 2 lines
Changed paths:
   M /trunk/www/credits.php
   M /trunk/www/development.php
   M /trunk/www/documentation.php.in

Spelling updates generated by aspell check <filename>.

------------------------------------------------------------------------
r12521 | airwin | 2013-09-23 22:21:15 -0700 (Mon, 23 Sep 2013) | 2 lines
Changed paths:
   M /trunk/doc/docbook/src/ada.xml
   M /trunk/doc/docbook/src/advanced.xml
   M /trunk/doc/docbook/src/api-c.xml
   M /trunk/doc/docbook/src/api-compat.xml
   M /trunk/doc/docbook/src/api.xml
   M /trunk/doc/docbook/src/bibliography.xml
   M /trunk/doc/docbook/src/c.xml
   M /trunk/doc/docbook/src/cplus.xml
   M /trunk/doc/docbook/src/deploying.xml
   M /trunk/doc/docbook/src/drivers.xml
   M /trunk/doc/docbook/src/intro.xml
   M /trunk/doc/docbook/src/libraries.xml
   M /trunk/doc/docbook/src/ocaml.xml
   M /trunk/doc/docbook/src/simple.xml
   M /trunk/doc/docbook/src/tcl.xml
   M /trunk/doc/docbook/src/wish.xml

A large number of spelling fixes generated by "aspell check <filename>".

------------------------------------------------------------------------
r12520 | airwin | 2013-09-23 15:07:57 -0700 (Mon, 23 Sep 2013) | 2 lines
Changed paths:
   M /trunk/doc/docbook/bin/api2man.pl.in

Update "AUTHORS" and "SEE ALSO" sections of the generated man pages. 

------------------------------------------------------------------------
r12519 | airwin | 2013-09-23 14:52:25 -0700 (Mon, 23 Sep 2013) | 3 lines
Changed paths:
   M /trunk/cmake/modules/docbook.cmake
   M /trunk/doc/docbook/src/CMakeLists.txt
   M /trunk/www/documentation.php.in

Disable generation of DVI form of documentation and drop references to
it on the generated website.

------------------------------------------------------------------------
r12518 | airwin | 2013-09-23 12:30:11 -0700 (Mon, 23 Sep 2013) | 8 lines
Changed paths:
   M /trunk/README.release

Add sections describing work on plcolorbar and the pllegend and plcolorbar
documentation.

Reword the section describing the width changes.

colour ==> color.


------------------------------------------------------------------------
r12517 | airwin | 2013-09-23 12:22:13 -0700 (Mon, 23 Sep 2013) | 2 lines
Changed paths:
   M /trunk/doc/docbook/src/advanced.xml

colour ==> color.

------------------------------------------------------------------------
r12516 | airwin | 2013-09-23 11:24:27 -0700 (Mon, 23 Sep 2013) | 3 lines
Changed paths:
   M /trunk/doc/docbook/src/advanced.xml

Add section in advanced.xml concerning the pllegend and plcolorbar
capabilities.

------------------------------------------------------------------------
r12515 | arjenmarkus | 2013-09-22 03:01:44 -0700 (Sun, 22 Sep 2013) | 1 line
Changed paths:
   M /trunk/README.release

Changed the general reference to the Wiki to the specific page regarding Cygwin.
------------------------------------------------------------------------
r12514 | airwin | 2013-09-21 22:46:07 -0700 (Sat, 21 Sep 2013) | 5 lines
Changed paths:
   M /trunk/src/pllegend.c

Implement sanity check that plcolorbar caller does not specify NULL
array pointers for one of the label_opts or labels arrays when
n_labels > 0.


------------------------------------------------------------------------
r12513 | airwin | 2013-09-21 19:20:12 -0700 (Sat, 21 Sep 2013) | 2 lines
Changed paths:
   M /trunk/drivers/cairo.c

Style a previous commit.

------------------------------------------------------------------------
r12512 | airwin | 2013-09-21 19:19:29 -0700 (Sat, 21 Sep 2013) | 2 lines
Changed paths:
   M /trunk/bindings/d/plplot.d
   M /trunk/examples/d/x16d.d

Style a previous commit.

------------------------------------------------------------------------
r12511 | airwin | 2013-09-21 19:17:11 -0700 (Sat, 21 Sep 2013) | 6 lines
Changed paths:
   M /trunk/src/pllegend.c

Implement sanity check that pllegend caller does not specify NULL
array pointers for one of the box, line, or symbol arrays when
opt_array contains the relevant bit which would force the array to be
used.


------------------------------------------------------------------------
r12510 | airwin | 2013-09-21 14:19:22 -0700 (Sat, 21 Sep 2013) | 2 lines
Changed paths:
   M /trunk/README.release

Note added concerning recent breakthroughs for the Cygwin platform.

------------------------------------------------------------------------
r12509 | airwin | 2013-09-18 12:12:42 -0700 (Wed, 18 Sep 2013) | 4 lines
Changed paths:
   M /trunk/src/plctrl.c

In doxygen documentation of plcol1, use the correct (col1 rather than
icol1) parameter name.


------------------------------------------------------------------------
r12508 | airwin | 2013-09-18 11:51:03 -0700 (Wed, 18 Sep 2013) | 5 lines
Changed paths:
   M /trunk/src/pdfutils.c
   M /trunk/src/plargs.c
   M /trunk/src/plot3d.c

Update doxygen documentation of PL_UNUSED function parameters to
eliminate doxygen warning messages concerning such parameters and to
produce reasonable looking doxygen results for those parameters.


------------------------------------------------------------------------
r12507 | airwin | 2013-09-18 00:26:10 -0700 (Wed, 18 Sep 2013) | 5 lines
Changed paths:
   M /trunk/doc/docbook/src/api.xml
   M /trunk/doc/docbook/src/plplotdoc.xml.in

Update API documentation of pllegend and plcolorbar consistent with
the corresponding doxygen documentation of the same functions.  I plan
no further changes in this API documentation at the present time.


------------------------------------------------------------------------
r12506 | airwin | 2013-09-18 00:23:49 -0700 (Wed, 18 Sep 2013) | 5 lines
Changed paths:
   M /trunk/src/pllegend.c

Update doxgyen documentation of pllegend and plcolorbar and associated
internal functions.  I plan no further changes in this documentation
at the present time.


------------------------------------------------------------------------
r12505 | jbauck | 2013-09-12 21:19:42 -0700 (Thu, 12 Sep 2013) | 1 line
Changed paths:
   M /trunk/bindings/ada/plplot.adb

Test. Ignore.
------------------------------------------------------------------------
r12504 | andrewross | 2013-09-09 15:32:36 -0700 (Mon, 09 Sep 2013) | 6 lines
Changed paths:
   M /trunk/drivers/cairo.c


Modify xcairo driver to honour the -display option to set the display. 

Also exit if opening the display fails since continuing will lead to a crash anyway.


------------------------------------------------------------------------
r12503 | andrewross | 2013-09-09 07:41:12 -0700 (Mon, 09 Sep 2013) | 5 lines
Changed paths:
   M /trunk/bindings/d/plplot.d
   M /trunk/examples/d/x16d.d

Update D bindings for latest version of plcolorbar. Also add plscmap1_range and plgcmap1_range. 

Update example 16 to use plcolorbar as in the C version.


------------------------------------------------------------------------
r12502 | arjenmarkus | 2013-09-07 01:29:45 -0700 (Sat, 07 Sep 2013) | 3 lines
Changed paths:
   M /trunk/cmake/modules/cairo.cmake
   M /trunk/drivers/cairo.c

Rearrange the order of including header files to avoid a conflict between the Windows header and the X11 header - the latter defines the macro Status which the first uses as an argument name.

Furthermore, because of the routine cairo_win32_surface_create is missing from the cairo library, we can not build the wincairo device. For now this is turned off under Cygwin.
------------------------------------------------------------------------
r12501 | airwin | 2013-08-30 12:13:41 -0700 (Fri, 30 Aug 2013) | 21 lines
Changed paths:
   M /trunk/doc/docbook/src/CMakeLists.txt

CMake code fixups.

Move creation of jadetex.cfg from a place that is always executed
to the appropriate Boolean block.

Do not remove info directory that is initially created at cmake time.
This solves a bug when the info target is reinvoked at make time after
a change to the docbook source.

Specifically ignore environment variable DESTDIR when xmlto --with-fop
is invoked.  This works around a bug in xmlto which (on Debian at
least) craps out when DESTDIR is specified.

Tested by: Alan W. Irwin <airwin@users.sourceforge.net> using the
-DBUILD_DOC=ON -DBUILD_DOX_DOC=ON cmake options and the install
target invoked in the following ways:

make -j4 install
make DESTDIR=whatever -j4 install


------------------------------------------------------------------------
r12500 | airwin | 2013-08-30 09:41:29 -0700 (Fri, 30 Aug 2013) | 7 lines
Changed paths:
   M /trunk/doc/docbook/src/CMakeLists.txt

install(CODE ... changes.

Attempt to deal with issues found recently by Orion Poplawski on Fedora.
Suppress warnings about setting policy and change from undocumented to
documented form of the file(INSTALL ... signature.


------------------------------------------------------------------------
r12499 | airwin | 2013-08-27 18:05:27 -0700 (Tue, 27 Aug 2013) | 3 lines
Changed paths:
   M /trunk/src/pllegend.c

Systematic commentary (including special doxygen commentary) changes
to replace the word "colorbar" by "color bar". 

------------------------------------------------------------------------
r12498 | airwin | 2013-08-27 16:03:51 -0700 (Tue, 27 Aug 2013) | 8 lines
Changed paths:
   M /trunk/src/pllegend.c

Add doxygen documentation of plcolorbar arguments that were previously
undocumented.  This change should finalize the plcolorbar API
documentation in preparation for copying it to the DocBook API
chapter.  In addition, this change and a few other minor doxygen
changes eliminated the last of the argument inconsistency warnings
previously generated for pllegend.c by doxygen.


------------------------------------------------------------------------
r12497 | airwin | 2013-08-24 15:39:23 -0700 (Sat, 24 Aug 2013) | 4 lines
Changed paths:
   M /trunk/doc/docbook/README.developers

Update these developer directions based on the current xmlto backend
tools that are being used.  Also include some plans about further
changes once we allow UTF-8 strings in our documentation.

------------------------------------------------------------------------
r12496 | airwin | 2013-08-24 15:36:57 -0700 (Sat, 24 Aug 2013) | 5 lines
Changed paths:
   M /trunk/doc/docbook/NEWS

Substantial update (including some history that has not been mentioned
before as well as recent events) of news for PLplot's documentation
project.


------------------------------------------------------------------------
r12495 | airwin | 2013-08-23 22:34:58 -0700 (Fri, 23 Aug 2013) | 10 lines
Changed paths:
   M /trunk/cmake/modules/docbook.cmake
   M /trunk/doc/docbook/src/CMakeLists.txt
   D /trunk/doc/docbook/src/inline-print.ent
   A /trunk/doc/docbook/src/inline-print_dsl.ent (from /trunk/doc/docbook/src/inline-print.ent:12492)
   A /trunk/doc/docbook/src/inline-print_xsl.ent

For default -DDOCBOOK_XML_BACKEND=ON case, implement a dvi build.

N.B. This dvi build only works if the patch given at
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=720624 is applied
to /usr/share/pyshared/dbtexmf/dblatex/unient.py to fix a bug
in the dblatex package.

Use different inline-print_???.ent files depending on whether
-DDOCBOOK_XML_BACKEND=ON or OFF.

------------------------------------------------------------------------
r12494 | airwin | 2013-08-21 15:10:51 -0700 (Wed, 21 Aug 2013) | 7 lines
Changed paths:
   M /trunk/doc/docbook/src/CMakeLists.txt
   A /trunk/doc/docbook/src/plplotdoc-print.xsl.in

Implement XSL configuration method for print results for the default
-DDOCBOOK_XML_BACKEND=ON case.  Use this configuration method to
establish ansi style for funcsynopsis for pdf and ps results.

Tested by Alan W. Irwin <airwin@users.sourceforge.net> using
the -DBUILD_DOC=ON cmake option and the pdf_target target.

------------------------------------------------------------------------
r12493 | airwin | 2013-08-21 14:18:36 -0700 (Wed, 21 Aug 2013) | 23 lines
Changed paths:
   M /trunk/doc/docbook/src/plplotdoc-html.xsl.in
   M /trunk/doc/docbook/src/stylesheet.css.xsl.in

Change funcsynopsis style to ansi and configure widths of the
resulting html table to auto (which gives nice looking spacing for the
arguments).  These changes make the new XML/XSL backend tools produce
the html form of the API chapter with a style comparable to what was
produced with the deprecated SGML/DSSSL backend tools.

Make some progress toward the goal of representing the overlined "S" and
underlined "freq" in S(freq) correctly represented in html.  However,
the final step of inserting the correct form of html needs additional
XSLT expertise that I currently don't have as mentioned in the
/plplotdoc-html.xsl.in comments.  So the result validates
fine but is currently rendered as a blank.

So aside from this one overline/underline issue (which appears just
before the Table of Greek letters), the complete html
results for the new XML/XSL backend tools are better (Table of Greek
letters) or similar (API chapter) to what they were before for the
deprecated SGML/DSSSL backend tools.

Tested by Alan W. Irwin <airwin@users.sourceforge.net> using
the -DBUILD_DOC=ON cmake option and the "html" target.


------------------------------------------------------------------------
r12492 | airwin | 2013-08-20 12:10:05 -0700 (Tue, 20 Aug 2013) | 12 lines
Changed paths:
   M /trunk/doc/docbook/src/CMakeLists.txt
   M /trunk/doc/docbook/src/plplotdoc-html.xsl.in
   D /trunk/doc/docbook/src/stylesheet.css
   A /trunk/doc/docbook/src/stylesheet.css.dsssl.in (from /trunk/doc/docbook/src/stylesheet.css:12482)
   A /trunk/doc/docbook/src/stylesheet.css.xsl.in

Make stylesheet.css configurable with a separate template file for
the -DDOCBOOK_XML_BACKEND=OFF and (default) -DDOCBOOK_XML_BACKEND=ON
cases.  The -DDOCBOOK_XML_BACKEND=OFF case is untested but should work
since the changes are pretty trivial.  The -DDOCBOOK_XML_BACKEND=ON
case has been tested and shows the desired coloured output for
the TABLE.funcprototype-table and .variablelist parts of the
api documentation that occurs in the many links from the API chapter.

Tested by Alan W. Irwin <airwin@users.sourceforge.net> using the
scripts/generate_website.sh scripts.


------------------------------------------------------------------------
r12491 | airwin | 2013-08-20 10:16:26 -0700 (Tue, 20 Aug 2013) | 8 lines
Changed paths:
   M /trunk/doc/docbook/src/CMakeLists.txt
   A /trunk/doc/docbook/src/plplotdoc-html.xsl.in

Initial XSL customization of docbook html backend output following
ideas in http://www.sagehill.net/docbookxsl.

The meaningful (rather than numerical) HTML chunk filenames are now
(quietly) formed from the DocBook id using the chunk.quietly and
use.id.as.filename parameters.


------------------------------------------------------------------------
r12490 | airwin | 2013-08-19 19:41:28 -0700 (Mon, 19 Aug 2013) | 15 lines
Changed paths:
   M /trunk/cmake/modules/docbook.cmake
   M /trunk/doc/docbook/src/CMakeLists.txt

Generate (by default) our html, pdf, and ps results from our DocBook
source using XML/XSLT backend tools (i.e., the xmlto script).

Tested by Alan W. Irwin <airwin@users.sourceforge.net> using (1) the
-DBUILD_DOC=ON cmake option and the install target in doc/docbook/src,
and (2) using scripts/generate_website.sh (which includes using the
-DBUILD_DOC=ON cmake option and the prebuild_dist www-install-base,
and www-install targets, but which does not test the -DPREBUILT_DOC=ON
case).

ToDo: (1) xmlto does not work correctly to generate dvi results so must explore
other alternatives for that case. (2) Must explore XSLT opportunities to
style present results since the current default style is bland.


------------------------------------------------------------------------
r12489 | airwin | 2013-08-19 14:55:31 -0700 (Mon, 19 Aug 2013) | 3 lines
Changed paths:
   M /trunk/www/documentation.php.in

Reorder so that doxygen-generated documentation is last in the list on
our website.

------------------------------------------------------------------------
r12488 | airwin | 2013-08-19 13:42:06 -0700 (Mon, 19 Aug 2013) | 13 lines
Changed paths:
   M /trunk/cmake/modules/docbook.cmake
   M /trunk/doc/docbook/src/CMakeLists.txt

Implement BUILD_DVI variable in anticipation of the case where
the dvi build of documentation may not be implemented (for the future
XML backend case).

Improve build system logic for the case where a component
of the documentatin build is missing.

Improve build system logic for install of info, man, and html
documentation files so that there is exact consistency between
what is in the manifest files and what is installed that than
relying on file(GLOB...


------------------------------------------------------------------------
r12487 | airwin | 2013-08-19 11:37:30 -0700 (Mon, 19 Aug 2013) | 10 lines
Changed paths:
   M /trunk/cmake/modules/docbook.cmake
   M /trunk/doc/docbook/src/CMakeLists.txt

More changes to improve (i.e., make less obfuscated/more modular) the
build system for the documentation in preparation for implementing XML
backend tools.

Tested by Alan W. Irwin <airwin@users.sourceforge.net> using
scripts/generate_website.sh (which includes using the -DBUILD_DOC=ON
cmake option and the prebuild_dist www-install-base, and www-install
targets, but which does not test the -DPREBUILT_DOC=ON case).


------------------------------------------------------------------------
r12486 | airwin | 2013-08-17 22:56:52 -0700 (Sat, 17 Aug 2013) | 29 lines
Changed paths:
   M /trunk/doc/docbook/src/CMakeLists.txt
   M /trunk/doc/docbook/src/plplotdoc.xml.in

Improve CMake logic for building DocBook documentation.

Replace destroying and creating the inline.ent symlink idea for
various forms of the inline entities with properly configured info,
print, and html variants of plplotdoc-?.xml. This change removes the
dependencies of the various backend documentation between each other
since there is no longer the parallel build race condition to be
avoided for the various kinds of inline.ent symlinks.

Non-configured *.xml and *.ent files are referred to directly in the
source tree rather than as symlinks in the build tree.  This makes
establishing file dependencies much more straightforward.

Drop if(PERL_FOUND) logic since that is redundant.  (Earlier in build
process, BUILD_DOC is set to OFF if perl cannot be found.)

Use actual Linux filesystem commands (like mv) rather than relying on
FindUnixCommands.cmake to define the ${MV} equivalent of mv.  (ToDo,
replace Linux filesystem commmands used for the documentation build
such as "mv" with their cmake -E equivalents just on general
principles.)

Use slightly improved naming conventions for intermediate files created by info
target.

Tested by Alan W. Irwin <airwin@users.sourceforge.net> using the
-DBUILD_DOC cmake option and the "all" target in doc/docbook/src.


------------------------------------------------------------------------
r12485 | airwin | 2013-08-16 12:36:39 -0700 (Fri, 16 Aug 2013) | 4 lines
Changed paths:
   M /trunk/cmake/modules/docbook.cmake

If perl cannot be found, then do not allow a build of the docbook
documentation since all backends for that build require perl.


------------------------------------------------------------------------
r12484 | airwin | 2013-08-16 11:02:59 -0700 (Fri, 16 Aug 2013) | 7 lines
Changed paths:
   M /trunk/cmake/modules/docbook.cmake

Reorganize CMake logic in preparation for implementing
DOCBOOK_XML_BACKEND option.

Tested by Alan W. Irwin <airwin@users.sourceforge.net> using
-DBUILD_DOC=ON cmake option and clean followed by all target in doc/docbook/src.


------------------------------------------------------------------------
r12483 | airwin | 2013-08-14 13:58:11 -0700 (Wed, 14 Aug 2013) | 12 lines
Changed paths:
   M /trunk/doc/docbook/bin/info-clean.pl
   M /trunk/doc/docbook/src/CMakeLists.txt
   M /trunk/doc/docbook/src/inline-info.ent

Generate info form of documentation using utf-8 encoding rather than 
us-ascii encoding.

This change means we don't have to replace the entities defined in
math.ent by their written out (in ascii) equivalents for the info
case, and Table 3-4 looks correct (for the first time ever) in the generated
info form of our documentation.

Tested by: Alan W. Irwin <airwin@users.sourceforge.net> using the
cmake -DBUILD_DOC=ON option and the "info" target.


------------------------------------------------------------------------
r12482 | airwin | 2013-08-13 04:40:19 -0700 (Tue, 13 Aug 2013) | 20 lines
Changed paths:
   M /trunk/doc/docbook/bin/api2man.pl.in
   M /trunk/doc/docbook/bin/api2swigdoc.pl
   M /trunk/doc/docbook/bin/api2text.pl
   M /trunk/doc/docbook/bin/info-clean.pl

Remove fake system identifiers imposed by the perl scripts that parse
our DocBook XML source documentation.

Those identifiers were required before to work around the issue that
our source documentation incorrectly did not have a system identifier.
That has now been rectified with revision 12481 so the fake system
identifiers imposed by the perl scripts are no longer needed, and, in
fact, they must be removed because they conflict with the real system
identifier

"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd"

which is now configured into plplotdoc.xml(.in) so that
xmllint validation produces a good result.

Tested by Alan W. Irwin <airwin@users.sourceforge.net> using the
cmake options -DBUILD_TEST=ON -DBUILD_DOC=ON and with the targets
check_swig_documentation, make_documentation, and all.


------------------------------------------------------------------------
r12481 | airwin | 2013-08-12 16:11:08 -0700 (Mon, 12 Aug 2013) | 13 lines
Changed paths:
   M /trunk/cmake/modules/docbook.cmake
   M /trunk/doc/docbook/src/advanced.xml
   M /trunk/doc/docbook/src/plplotdoc.xml.in

Change DocBook configuration and source files so that

xmllint --noout --nonet --xinclude --postvalid --noent plplotdoc.xml

validates without errors.  

It appears this validation command (also used by the xmlto script) is
more sensitive to DocBook XML issues than the onsgmls validator which
we currently use to validate our DocBook source.  For example, before
and after the current changes our validate target showed no validation
issues.


------------------------------------------------------------------------
r12480 | airwin | 2013-08-12 15:59:06 -0700 (Mon, 12 Aug 2013) | 3 lines
Changed paths:
   M /trunk/scripts/style_source.sh

The *.h.cmake glob fails now since all of those have been renamed as
*.h.in.  So remove that glob from the list of C sources to style.

------------------------------------------------------------------------
r12479 | airwin | 2013-08-09 16:38:29 -0700 (Fri, 09 Aug 2013) | 22 lines
Changed paths:
   M /trunk/doc/docbook/src/CMakeLists.txt

Remove \$ENV{DESTDIR} references from install(CODE...) commands and
also reformat those commands to make them more human-readable.

Note, these are all examples of where file(INSTALL...) is used inside
install(CODE...).  According to the documentation file(INSTALL...) is
the workhorse signature normall used for install commands so it is
reasonable to infer that file(INSTALL...) already does its own
\$ENV{DESTDIR} handling.  Anyhow, it turns out our own use of
\$ENV{DESTDIR} is redundant and causes an error (double use of DESTDIR
for the docbook documentation) found by Orion Poplawski and which I
have confirmed.  Note, for all other uses of install(CODE...) that
does not have a call to file(INSTALL...) inside the code fragment
(e.g., doc/CMakeLists.txt) it is necessary to use \$ENV{DESTDIR}.

Tested by Alan W. Irwin <airwin@users.sourceforge.net> using the
cmake options -DCMAKE_INSTALL_PREFIX=/usr -DBUILD_DOC=ON -DBUILD_DOX_DOC=ON
and "make -j4 DESTDIR=tmp install >& install.out".  The
resulting files (including both doxgen-generated ones and
docbook-generated ones) were all installed to tmp/usr/... in the build_tree
with no double use of DESTDIR and no attempt to install files to /usr.


------------------------------------------------------------------------
r12478 | airwin | 2013-08-09 15:40:34 -0700 (Fri, 09 Aug 2013) | 6 lines
Changed paths:
   M /trunk/doc/Doxyfile.in

Exclude bindings/python/plplot.py (the user-friendly python interface
to PLplot) from doxygen consideration.  For an unknown reason, that
file (which includes no specific doxygen commands) generates a doxgyen
segfault.


------------------------------------------------------------------------
r12477 | airwin | 2013-08-09 14:41:36 -0700 (Fri, 09 Aug 2013) | 9 lines
Changed paths:
   M /trunk/doc/Doxyfile.in

Update from Doxyfile 1.7.1 to Doxyfile 1.8.1.2 using the "doxygen -u"
command.

Note, this update of the configuration file to be consistent with my
doxygen version did not get rid of a segfault that has been introduced
by some fairly recent change (either in my doxygen version or in our
code).


------------------------------------------------------------------------
r12476 | airwin | 2013-08-09 09:48:32 -0700 (Fri, 09 Aug 2013) | 6 lines
Changed paths:
   M /trunk/bindings/tcl/tclAPI.c

Style.  This is actually a fairly intrusive change but running the
test_diff_psc target shows Tcl continues to give the same results as
previous.
Tested by Alan W. Irwin <airwin@users.sourceforge.net>.


------------------------------------------------------------------------
r12475 | airwin | 2013-08-09 09:21:45 -0700 (Fri, 09 Aug 2013) | 4 lines
Changed paths:
   M /trunk/drivers/wxwidgets_dc.cpp

Use correct API for DrawPolygon.  Thanks to Joost Kuckartz for
spotting this error, and he reports this fix solves an offset issue he
had with wxwidgets plots.

------------------------------------------------------------------------
r12474 | airwin | 2013-08-04 11:13:16 -0700 (Sun, 04 Aug 2013) | 10 lines
Changed paths:
   M /trunk/cmake/build_projects/patch_gtk_packages.xml

Implement changes to gtk-doc build configuration generation.

Use '--with-xml-catalog=${BP_CMAKE_INSTALL_PREFIX}/etc/xml/catalog' as
a configure option.

Add docbook-xml and docbook-xsl dependencies.

The updated gtk-doc/bp.cmake file that is generated by this change
to this patch file has already been committed.

------------------------------------------------------------------------
r12473 | airwin | 2013-08-04 11:04:25 -0700 (Sun, 04 Aug 2013) | 4 lines
Changed paths:
   M /trunk/cmake/build_projects/gtk-doc/bp.cmake

Shift from partially hand-crafted (minor edits after generation) to
completely generated.  The only change between the two is
gtk-doc_dependencies_LIST is now alphabetized.

------------------------------------------------------------------------
r12472 | airwin | 2013-08-04 10:54:28 -0700 (Sun, 04 Aug 2013) | 7 lines
Changed paths:
   M /trunk/cmake/build_projects/gtk-doc/bp.cmake

Insert boiler-plate warning into generated */bp.cmake files that those
files are generated.

Implement use of extra_ignored_dependencies_list (which allows
platforms to selectively ignore certain dependencies).


------------------------------------------------------------------------
r12471 | airwin | 2013-08-04 10:50:42 -0700 (Sun, 04 Aug 2013) | 7 lines
Changed paths:
   M /trunk/cmake/build_projects/template.bp.in

Insert boiler-plate warning into generated */bp.cmake files that those
files are generated.

Implement use of extra_ignored_dependencies_list (which allows
platforms to selectively ignore certain dependencies).


------------------------------------------------------------------------
r12470 | airwin | 2013-08-04 10:50:07 -0700 (Sun, 04 Aug 2013) | 7 lines
Changed paths:
   M /trunk/cmake/build_projects/cairo/bp.cmake
   M /trunk/cmake/build_projects/fontconfig/bp.cmake
   M /trunk/cmake/build_projects/glib/bp.cmake
   M /trunk/cmake/build_projects/gobject-introspection/bp.cmake
   M /trunk/cmake/build_projects/harfbuzz/bp.cmake
   M /trunk/cmake/build_projects/itstool/bp.cmake
   M /trunk/cmake/build_projects/pango/bp.cmake
   M /trunk/cmake/build_projects/yelp-tools/bp.cmake
   M /trunk/cmake/build_projects/yelp-xsl/bp.cmake

Insert boiler-plate warning into generated */bp.cmake files that those
files are generated.

Implement use of extra_ignored_dependencies_list (which allows
platforms to selectively ignore certain dependencies).


------------------------------------------------------------------------
r12469 | airwin | 2013-08-04 10:41:48 -0700 (Sun, 04 Aug 2013) | 6 lines
Changed paths:
   M /trunk/cmake/build_projects/gperf/bp.cmake
   M /trunk/cmake/build_projects/intltool/bp.cmake
   M /trunk/cmake/build_projects/libffi/bp.cmake
   M /trunk/cmake/build_projects/libxml2/bp.cmake
   M /trunk/cmake/build_projects/libxslt/bp.cmake
   M /trunk/cmake/build_projects/pixman/bp.cmake
   M /trunk/cmake/build_projects/ragel/bp.cmake

Insert boiler-plate warning into generated */bp.cmake files that those
files are generated.

Implement use of extra_ignored_dependencies_list (which allows
platforms to selectively ignore certain dependencies).

------------------------------------------------------------------------
r12468 | airwin | 2013-08-03 11:30:14 -0700 (Sat, 03 Aug 2013) | 3 lines
Changed paths:
   M /trunk/cmake/build_projects/update_pango_packages.sh

Save original version of gtk_packages<VERSION>.xml file to make
it more convenient to update the patch that is applied.

------------------------------------------------------------------------
r12467 | airwin | 2013-08-03 10:40:53 -0700 (Sat, 03 Aug 2013) | 2 lines
Changed paths:
   M /trunk/cmake/build_projects/CMakeLists.txt

Small simplification of CMake logic.

------------------------------------------------------------------------
r12466 | airwin | 2013-08-03 10:39:54 -0700 (Sat, 03 Aug 2013) | 5 lines
Changed paths:
   M /trunk/cmake/build_projects/plplot/bp.cmake

Do not reuse PLPLOT_LOCAL_SOURCE_DIR in loop that configures both
plplot and plplot_lite.  This fixes a bug where
z: was being prepended twice for the second time through the loop.


------------------------------------------------------------------------
r12465 | airwin | 2013-08-03 10:35:12 -0700 (Sat, 03 Aug 2013) | 12 lines
Changed paths:
   M /trunk/cmake/build_projects/docbook-xml/CMakeLists.txt
   M /trunk/cmake/build_projects/docbook-xsl/CMakeLists.txt

Sort out all generated catalog issues for the MSYS case.

This gives good results for build_gtk-doc on Linux, but
that build still fails for the MSYS case because of the
entity mangling issue for raw xmlcatalog on that platform
(see https://mail.gnome.org/archives/xml/2013-January/msg00009.html).
However, for the MSYS case have spot-checked a few of the generated
catalog results with the xmlcatalog_wrapper.sh script, and they
seem fine.  Which seems to indicate that the catalogs generated
by the docbook-x?l packages are fine on MSYS.


------------------------------------------------------------------------
r12464 | airwin | 2013-08-03 10:29:37 -0700 (Sat, 03 Aug 2013) | 21 lines
Changed paths:
   A /trunk/cmake/build_projects/xmlcatalog_wrapper.sh

Initial commit of a script that makes it convenient to check XML
catalogs on MSYS using the xmlcatalog --shell environment.

With two arguments (with the first a reference to a file assumed to be
a catalog file) this script goes into xmlcatalog shell mode to look up
entities with both the public and system attributes.  Otherwise, it
just falls through to the equivalent raw xmlcatalog command.

The only point of this script is it provides a reasonably convenient
human workaround for the raw xmlcatalog issue on MSYS platforms where
that environment mangles entity names on the command line (it
interprets them as a path and does some substitution into the entity
which completely messes it up, see
https://mail.gnome.org/archives/xml/2013-January/msg00009.html).  I
have not been able to figure out how to make this script respond
identically to what the raw xmlcatalog command should actually be
doing if the entities didn't get mangled. So this script is only for
convenient human use to check catalogs, but cannot be used in scripts
itself as a replacement for raw xmlcatalog.


------------------------------------------------------------------------
r12463 | airwin | 2013-08-02 15:05:10 -0700 (Fri, 02 Aug 2013) | 7 lines
Changed paths:
   A /trunk/cmake/build_projects/docbook-xml
   A /trunk/cmake/build_projects/docbook-xml/CMakeLists.txt
   A /trunk/cmake/build_projects/docbook-xml/bp.cmake
   A /trunk/cmake/build_projects/docbook-xsl
   A /trunk/cmake/build_projects/docbook-xsl/CMakeLists.txt
   A /trunk/cmake/build_projects/docbook-xsl/bp.cmake
   M /trunk/cmake/build_projects/gtk-doc/bp.cmake

Add additional docbook-xml and docbook-xsl build dependencies of
gtk-doc.

ToDo.  The result works on Linux, but there are still some PATH issues I
am sorting out on MSYS.


------------------------------------------------------------------------
r12462 | airwin | 2013-07-31 21:25:44 -0700 (Wed, 31 Jul 2013) | 3 lines
Changed paths:
   A /trunk/cmake/build_projects/update_pango_packages.sh

Initial commit of a bash script to update all the pango-generated
build configurations.

------------------------------------------------------------------------
r12461 | airwin | 2013-07-31 21:24:41 -0700 (Wed, 31 Jul 2013) | 5 lines
Changed paths:
   M /trunk/cmake/build_projects/cairo/bp.cmake
   M /trunk/cmake/build_projects/fontconfig/bp.cmake
   M /trunk/cmake/build_projects/glib/bp.cmake
   M /trunk/cmake/build_projects/gobject-introspection/bp.cmake
   M /trunk/cmake/build_projects/gtk-doc/bp.cmake
   M /trunk/cmake/build_projects/harfbuzz/bp.cmake
   M /trunk/cmake/build_projects/itstool/bp.cmake
   M /trunk/cmake/build_projects/pango/bp.cmake
   M /trunk/cmake/build_projects/yelp-tools/bp.cmake
   M /trunk/cmake/build_projects/yelp-xsl/bp.cmake

Reconfigure all the build configurations that are pango-generated.
The net effect of this reconfiguration is libXft is now ignored as a dependency for
all of these generated build configurations which suppresses a CMake
warning when build_projects is configured.

------------------------------------------------------------------------
r12460 | airwin | 2013-07-31 20:59:57 -0700 (Wed, 31 Jul 2013) | 12 lines
Changed paths:
   M /trunk/cmake/build_projects/plplot/bp.cmake

Implement a build_plplot_lite target (which disables wxwidgets, qt,
and cairo device drivers and which therefore has fewer dependencies and
builds and tests 5 times as fast).

Meanwhile, the build_plplot target now has properly implemented
wxwidgets and pango build configuration dependencies, i.e., wxwidgets
and pango and their dependencies will be built first, then plplot
which will depend on those built and installed results.

Tested by Alan W. Irwin <airwin@users.sourceforge.net> using both the
build_plplot_lite (5 minutes) and build_plplot (25 minutes) targets on Linux.

------------------------------------------------------------------------
r12459 | airwin | 2013-07-31 13:31:09 -0700 (Wed, 31 Jul 2013) | 14 lines
Changed paths:
   M /trunk/cmake/build_projects/gtk_packages_add.xml
   A /trunk/cmake/build_projects/ragel
   A /trunk/cmake/build_projects/ragel/bp.cmake
   M /trunk/cmake/build_projects/update_added_packages.sh

Add ragel build configuration.  This is the last required build
configuration (other than obvious build tools and libXft) that the
jhbuild configuration data indicates is required for pango and all
its dependencies.  So in theory the build of pango should also work
on MSYS, but undoubtedly there are other dependencies that the
jhbuild configuration files currently fail to identify.

Tested by Alan W. Irwin <airwin@users.sourceforge.net> by running the
update_added_packages.sh script to automatically generate/regenerate all added
build_configurations (which now includes ragel) and afterward running the
build_harfbuzz target (which indirectly runs the build_ragel target) on
Linux.


------------------------------------------------------------------------
r12458 | airwin | 2013-07-31 12:37:14 -0700 (Wed, 31 Jul 2013) | 10 lines
Changed paths:
   A /trunk/cmake/build_projects/update_added_packages.sh

Initial commit of script to automatically generate
(or regenerate) build configurations for the following
list of packages:

libffi intltool pixman gperf libxslt libxml2

Tested by Alan W. Irwin <airwin@users.sourceforge.net> by
running the script and testing all the relevant build targets
for these packages on Linux.

------------------------------------------------------------------------
r12457 | airwin | 2013-07-31 12:33:53 -0700 (Wed, 31 Jul 2013) | 3 lines
Changed paths:
   M /trunk/cmake/build_projects/configure_bp.cmake

Ignore libXft in dependencies for all automatically generated
build configurations.

------------------------------------------------------------------------
r12456 | airwin | 2013-07-31 12:32:46 -0700 (Wed, 31 Jul 2013) | 6 lines
Changed paths:
   M /trunk/cmake/build_projects/gtk_packages_add.xml
   A /trunk/cmake/build_projects/libxml2
   A /trunk/cmake/build_projects/libxml2/bp.cmake
   A /trunk/cmake/build_projects/libxslt
   A /trunk/cmake/build_projects/libxslt/bp.cmake

Add (automatically generated) build configurations for
libxslt and libxml2.

Tested by: Alan W. Irwin <airwin@users.sourceforge.net> using the
build_libxslt target on Linux.

------------------------------------------------------------------------
r12455 | airwin | 2013-07-31 12:29:47 -0700 (Wed, 31 Jul 2013) | 5 lines
Changed paths:
   M /trunk/cmake/build_projects/gperf/bp.cmake
   M /trunk/cmake/build_projects/intltool/bp.cmake
   M /trunk/cmake/build_projects/libffi/bp.cmake
   M /trunk/cmake/build_projects/pixman/bp.cmake

Reconfigure with update_added_packages.sh script (which will soon be
committed).  This reconfiguration imposes a small
change to ignore the libXft package if it occurs in the list of
dependencies.

------------------------------------------------------------------------
r12454 | airwin | 2013-07-31 12:20:00 -0700 (Wed, 31 Jul 2013) | 3 lines
Changed paths:
   M /trunk/cmake/build_projects/CMakeLists.txt

Add python to the list of necessary executables and figure out
PYTHON_VERSION (used in some build configurations).

------------------------------------------------------------------------
r12453 | airwin | 2013-07-31 08:55:51 -0700 (Wed, 31 Jul 2013) | 6 lines
Changed paths:
   A /trunk/cmake/build_projects/gperf
   A /trunk/cmake/build_projects/gperf/bp.cmake
   M /trunk/cmake/build_projects/gtk_packages_add.xml

Add gperf build configuration to help satisfy an indirect pango build dependency.

Tested by: Alan W. Irwin <airwin@users.sourceforge.net> using the
build_gperf target on Linux.


------------------------------------------------------------------------
r12452 | airwin | 2013-07-31 08:28:47 -0700 (Wed, 31 Jul 2013) | 3 lines
Changed paths:
   M /trunk/cmake/build_projects/gtk_packages_add.xml

Update size, version information to the correct values (even though
those values are currently unused).

------------------------------------------------------------------------
r12451 | airwin | 2013-07-31 08:10:16 -0700 (Wed, 31 Jul 2013) | 3 lines
Changed paths:
   M /trunk/cmake/build_projects/patch_gtk_packages.xml

Although size is currently ignored, it might not be ignored in the
future so update this patch to the correct size for the new version of harfbuzz.

------------------------------------------------------------------------
r12450 | airwin | 2013-07-30 19:50:36 -0700 (Tue, 30 Jul 2013) | 34 lines
Changed paths:
   M /trunk/cmake/build_projects/CMakeLists.txt

Implement AUTOTOOLS_PARALLEL_BUILD option which defaults to ON (and
which works well on Linux).  It might be useful to set this to OFF for
MSYS/Wine builds because that reduces some strain caused by running
many large libtool bash scripts simultaneously and which appears to
pop some error boxes from time to time under MSYS wine.

Reduce the number of builds that are directly configured since their
dependencies indirectly bring in the rest.

Tested by: Alan W. Irwin <airwin@users.sourceforge.net> on Linux using
the build_wxwidgets, build_pango, and build_plplot targets.  These tests
are for the recent cumulation of commits up to this one.  wxwidgets
built in parallel with no issues, but because of a minor PATH issue
was ignored by the plplot build.  The pango build (and the build of all its many
dependencies) showed no issues and finished in 7.5 minutes.  The
PLplot build (and all its specific small dependencies) had no issues
(except for ignoring the wxwidgets build results and a few additional
dependency issues to be discussed).  The
cairo device driver was linked with all the pango-related libraries that
were built and the cairo non-interactive devices tested well.  Limited
tests of the cairo non-interactive devices also seemed fine.

In sum, this is a breakthrough for the build_packages project where
for the first time with this project we have built essentially the
latest version of pango and its dependencies without issues, and used
those libraries to produce excellent results for the PLplot cairo
devices on Linux.

ToDo: the libfreetype and libpng dependencies are not yet part of
build_packages so the above PLplot results used the system versions of
those instead on Linux.  There may be other dependencies that are
required (to be discussed on the plplot-devel list) as well.


------------------------------------------------------------------------
r12449 | airwin | 2013-07-30 19:28:59 -0700 (Tue, 30 Jul 2013) | 3 lines
Changed paths:
   M /trunk/cmake/build_projects/README

Improve instructions related to GTK+ configuration of all
pango-related packages.

------------------------------------------------------------------------
r12448 | airwin | 2013-07-30 19:27:16 -0700 (Tue, 30 Jul 2013) | 5 lines
Changed paths:
   M /trunk/cmake/build_projects/libffi/bp.cmake

Reconfigure libffi using the latest gtk_packages_add.xml,
gtk_transform.py, configure_bp.cmake, and template.bp.in.

The new configuration continues to build.

------------------------------------------------------------------------
r12447 | airwin | 2013-07-30 19:23:21 -0700 (Tue, 30 Jul 2013) | 12 lines
Changed paths:
   M /trunk/cmake/build_projects/wxwidgets/bp.cmake

Move back to parallel builds in general.  I now have more experience
with autotools type builds on MSYS/Wine, and they all seem to pop
several error boxes (probably due to some Wine-1.6 issue) typically
during runs of the enormous libtool bash script configured for each
project and typically run (twice!) for each compilation.  My
hypothesis now is the parallel builds are putting extreme pressure on
bash running those libtool scripts so the number of error boxes that
are popped for MSYS should be reduced if parallel builds are not
allowed for autotools-configured projects.  But I will handle that
with an overall option (see next commit) rather than specifically
turning off parallel builds for each separate autotools project.

------------------------------------------------------------------------
r12446 | airwin | 2013-07-30 19:14:21 -0700 (Tue, 30 Jul 2013) | 12 lines
Changed paths:
   M /trunk/cmake/build_projects/configure_bp.cmake
   M /trunk/cmake/build_projects/template.bp.in

Configure additional features for build configurations (typically those
from jhbuild build configuration data collected from GTK+) that are
generated by configure_bp.cmake.

Those features include improved processing of dependencies (ignoring
specific dependencies (mostly dependencies which can be assumed
to be part of the normal build tools) contained in a list in configure_bp.cmake and dropping
all dependencies which don't have a build configuration yet) and
configuring the configure script arguments and the make command
arguments.


------------------------------------------------------------------------
r12445 | airwin | 2013-07-30 18:54:31 -0700 (Tue, 30 Jul 2013) | 4 lines
Changed paths:
   A /trunk/cmake/build_projects/cairo
   A /trunk/cmake/build_projects/cairo/bp.cmake
   A /trunk/cmake/build_projects/fontconfig
   A /trunk/cmake/build_projects/fontconfig/bp.cmake
   A /trunk/cmake/build_projects/glib
   A /trunk/cmake/build_projects/glib/bp.cmake
   A /trunk/cmake/build_projects/gobject-introspection
   A /trunk/cmake/build_projects/gobject-introspection/bp.cmake
   A /trunk/cmake/build_projects/gtk-doc
   A /trunk/cmake/build_projects/gtk-doc/bp.cmake
   A /trunk/cmake/build_projects/harfbuzz
   A /trunk/cmake/build_projects/harfbuzz/bp.cmake
   A /trunk/cmake/build_projects/intltool
   A /trunk/cmake/build_projects/intltool/bp.cmake
   A /trunk/cmake/build_projects/itstool
   A /trunk/cmake/build_projects/itstool/bp.cmake
   A /trunk/cmake/build_projects/pango
   A /trunk/cmake/build_projects/pango/bp.cmake
   A /trunk/cmake/build_projects/pixman
   A /trunk/cmake/build_projects/pixman/bp.cmake
   A /trunk/cmake/build_projects/yelp-tools
   A /trunk/cmake/build_projects/yelp-tools/bp.cmake
   A /trunk/cmake/build_projects/yelp-xsl
   A /trunk/cmake/build_projects/yelp-xsl/bp.cmake

Initial configurations (generated as discussed in REAME from the
jhbuild configuration of GTK+ version 3.9.4) of pango and most/all of
its dependencies.

------------------------------------------------------------------------
r12444 | airwin | 2013-07-30 18:49:15 -0700 (Tue, 30 Jul 2013) | 4 lines
Changed paths:
   A /trunk/cmake/build_projects/gtk_packages_add.xml

Initial commit of a file containing build-configuration data in xml
form that can be processed by gtk_transform.py.  Here we add build
configuration data for libffi, intltool, and pixman.

------------------------------------------------------------------------
r12443 | airwin | 2013-07-30 18:45:12 -0700 (Tue, 30 Jul 2013) | 12 lines
Changed paths:
   M /trunk/cmake/build_projects/gtk_transform.py

Do more complete processing of data in the generated
gtk_packages<version>.xml file, and all special processing of
particular dependencies is now dropped, i.e., gtk-doc is now allowed
to be a valid dependency.

(For more on gtk_packages<version>.xml see README.) The additional
processing includes collecting make arguments data, deciding on
whether non-srcdir-builds are allowed, deciding on whether parallel
builds are allowed, and replacing "${version}" if it occurs in the URL
by the value of the version attribute.  


------------------------------------------------------------------------
r12442 | airwin | 2013-07-30 18:31:26 -0700 (Tue, 30 Jul 2013) | 8 lines
Changed paths:
   A /trunk/cmake/build_projects/patch_gtk_packages.xml

Initial commit of file that keeps track of changes to
gtk_packages<version>.xml which is not under version control
because it is a generated file (for those wanting to update
the build configurations related to GTK+, see README).

In this case we replace harfbuzz 0.9.18 by harfbuzz 0.9.19 because the
former has a showstopping build error.

------------------------------------------------------------------------
r12441 | airwin | 2013-07-29 10:44:42 -0700 (Mon, 29 Jul 2013) | 14 lines
Changed paths:
   M /trunk/cmake/build_projects/libffi/bp.cmake

Add template results for dependencies and extra CFLAGS.  libffi has
none of those so the extra CMake code that is configured
should have no effect for libffi.

Tested by: Alan W. Irwin <airwin@users.sourceforge.net> using the
build_libffi target (or build_glib target that depends on the
build_libffi target) for both Linux and "MSYS Makefiles" on Wine. In
the latter case there was a popup error box with the last command
executed being the install script. But when I ran that command by hand
afterwards everything worked fine.  I suspect this intermittent error
is due to a race condition for parallel builds so I will try turning
off parallel builds for libffi for future tests.


------------------------------------------------------------------------
r12440 | airwin | 2013-07-29 10:37:32 -0700 (Mon, 29 Jul 2013) | 2 lines
Changed paths:
   M /trunk/cmake/build_projects/template.bp.in

Add template for handling extra CFLAGS.

------------------------------------------------------------------------
r12439 | airwin | 2013-07-27 21:22:21 -0700 (Sat, 27 Jul 2013) | 2 lines
Changed paths:
   M /trunk/cmake/build_projects/gtk_transform.py

Drop all gtk-doc dependencies as a temporary? measure.

------------------------------------------------------------------------
r12438 | airwin | 2013-07-27 21:20:14 -0700 (Sat, 27 Jul 2013) | 9 lines
Changed paths:
   M /trunk/cmake/build_projects/configure_bp.cmake
   A /trunk/cmake/build_projects/template.bp.in

First working version that configures template.bp.in to create a
number of different */bp.cmake build_package configurations for GTK+
component builds as documented in the README file.

This version has created a libffi/bp.cmake file that configures the
libffit build correctly, but glib/bp.cmake needs additional
configuration to account for a required CFLAGS option.


------------------------------------------------------------------------
r12437 | airwin | 2013-07-27 21:02:04 -0700 (Sat, 27 Jul 2013) | 10 lines
Changed paths:
   M /trunk/cmake/build_projects/ExternalProject.cmake

As a temporary workaround, replace cmake -E tar <options> by the
equivalent tar <options> command to unpack *.tar.xz files in the
ExternalProject.cmake module.

This workaround should be left in place until the current CMake fix by
Brad King (import the latest version of the libarchive source code
into CMake) that finally allows cmake -E tar ... to work on *.tar.xz
files gets propagated to a CMake release.


------------------------------------------------------------------------
r12436 | airwin | 2013-07-26 16:13:38 -0700 (Fri, 26 Jul 2013) | 18 lines
Changed paths:
   M /trunk/cmake/build_projects/ExternalProject.cmake

Make ExternalProject module correctly unpack *.tar.xz files.

ToDo: 
This change works fine on Linux, but for MSYS/Windows there is an
additional CMake/libarchive issue that leads to an error which I
initially spotted for MSYS/Wine which is now confirmed by Brad King on
MSYS/Microsoft Windows.  This issue has now been fixed privately by
Brad King by importing the latest libarchive into CMake, and he plans
to incorporate that change into the mainstream git version of CMake
for eventual release.  As a workaround until that happens, my next
move is to replace cmake -E tar <options> by the equivalent tar
<options> command in ExternalProject.cmake. That workaround plus the
current change should finally allow unpacking of *.tar.xz files to
work properly for ExternalProject_Add, and that projected breakthrough
is expected to have a large impact on the build_projects project since
essentially _all_ GTK source project tarballs are in *.tar.xz form.


------------------------------------------------------------------------
r12435 | airwin | 2013-07-20 15:04:11 -0700 (Sat, 20 Jul 2013) | 3 lines
Changed paths:
   M /trunk/cmake/build_projects/libffi/bp.cmake

Update internals to be consistent with new libffi name of build
configuration.

------------------------------------------------------------------------
r12434 | airwin | 2013-07-20 15:01:12 -0700 (Sat, 20 Jul 2013) | 2 lines
Changed paths:
   D /trunk/cmake/build_projects/ffi
   A /trunk/cmake/build_projects/libffi (from /trunk/cmake/build_projects/ffi:12433)

Rename ffi ==>libffi

------------------------------------------------------------------------
r12433 | airwin | 2013-07-20 12:08:25 -0700 (Sat, 20 Jul 2013) | 16 lines
Changed paths:
   M /trunk/cmake/build_projects/CMakeLists.txt
   A /trunk/cmake/build_projects/ffi
   A /trunk/cmake/build_projects/ffi/bp.cmake

Initial commit of the ffi build configuration.  libffi is a hard
dependency of modern glib which is not mentioned in the jhbuild
configuration of glib.  So adding this build configuration for
libffi is a workaround for that jhbuild configuration bug for glib.

Tested by Alan W. Irwin <airwin@users.sourceforge.net> using the
build_ffi target for both the "Unix Makefiles" generator on Linux and
the "MSYS Makefiles" generator on Wine.  Note the latter was a factor
of 35 (!) slower than the former.  (5 minutes versus 9 seconds.) My
guess is most of this extra time is taken up running the configure
script.  That is, that part of the build is strongly subject to
startup latency costs for Wine so that for builds of much larger
autotooled packages, the Wine slowdown factor will generally be
substantially smaller than 35.


------------------------------------------------------------------------
r12432 | arjenmarkus | 2013-07-19 05:41:03 -0700 (Fri, 19 Jul 2013) | 1 line
Changed paths:
   M /trunk/bindings/python/CMakeLists.txt

Change the logic for defining the _plplotc module, because Cygwin requires an extension .dll
------------------------------------------------------------------------
r12431 | arjenmarkus | 2013-07-19 02:53:51 -0700 (Fri, 19 Jul 2013) | 2 lines
Changed paths:
   M /trunk/examples/tcl/x16.tcl

Solve the remaining difference in Tcl example 16. Now the result is exactly 
the same as for the C example.
------------------------------------------------------------------------
r12430 | arjenmarkus | 2013-07-18 12:22:12 -0700 (Thu, 18 Jul 2013) | 2 lines
Changed paths:
   M /trunk/examples/tcl/x33.tcl

Extend example 33 to reproduce the plots from the C example. This appears to
be exact - only example 16 still requires some work now.
------------------------------------------------------------------------
r12429 | arjenmarkus | 2013-07-18 12:21:06 -0700 (Thu, 18 Jul 2013) | 1 line
Changed paths:
   M /trunk/bindings/tcl/plapi.tpl

Implement two missing functions (surfaced when extending example 33): plscmap1_range and plgcmap1_range
------------------------------------------------------------------------
r12428 | arjenmarkus | 2013-07-18 12:01:09 -0700 (Thu, 18 Jul 2013) | 8 lines
Changed paths:
   M /trunk/plplot_test/test_tcl.sh.in

Add a dummy argument to the invocation of bash. The Windows format of the 
x01, x02, ... files to run the Tcl examples causes an awkward character (CR) to
be added to the extension of the output file. 

It is not clear why it is not recognized as a _separate_ option as seems to
be the case with a simple C program. This dummy option is however ignored 
and therefore the _proper_ file name is passed to the Tcl program.

------------------------------------------------------------------------
r12427 | arjenmarkus | 2013-07-17 05:50:49 -0700 (Wed, 17 Jul 2013) | 2 lines
Changed paths:
   M /trunk/scripts/mktclIndex

Print the error message if for some reason the script does fail, however
unlikely this is.
------------------------------------------------------------------------
r12426 | arjenmarkus | 2013-07-16 12:20:07 -0700 (Tue, 16 Jul 2013) | 6 lines
Changed paths:
   M /trunk/bindings/tcl/plplot_parameters.h
   M /trunk/examples/tcl/x16.tcl

Update the list of PLplot parameters for Tcl

Expand Tcl example 16 with the rest of the calls to colorbar.
Note: there remains a small difference in the PS file for this example
with the PS file for the C example. I have not been able to trace the cause
yet.
------------------------------------------------------------------------
r12425 | airwin | 2013-07-16 09:42:32 -0700 (Tue, 16 Jul 2013) | 4 lines
Changed paths:
   M /trunk/CMakeLists.txt

Drop "set(CMAKE_LEGACY_CYGWIN_WIN32 0)" to follow the directions
precisely which are that you should only set that variable if the
minimum version (currently 2.8.9) is less than 2.8.4. 

------------------------------------------------------------------------
r12424 | airwin | 2013-07-15 12:43:05 -0700 (Mon, 15 Jul 2013) | 16 lines
Changed paths:
   M /trunk/cmake/build_projects/CMakeLists.txt
   A /trunk/cmake/build_projects/pkg-config
   A /trunk/cmake/build_projects/pkg-config/bp.cmake

Add a buildtools build configuration for pkg-config and propagate
CMAKE_VERBOSE_MAKEFILE to build configurations.

Tested by Alan W. Irwin <airwin@users.sourceforge.net> using
the build_pkg-config target for the "Unix Makefiles" (on Linux)
and "MSYS Makefiles" (on Wine-1.6.rc4) CMake generators with
-DBUILD_THE_BUILDTOOLS=ON

Note, if you uncomment the test in pkg-config/bp.cmake, then
all is well on Linux, but four of the tests fail on Wine.
I have no idea how serious these test failures are, but
I have created a bug report at
<https://bugs.freedesktop.org/show_bug.cgi?id=66939> concerning these
test failures.


------------------------------------------------------------------------
r12423 | airwin | 2013-07-15 10:25:08 -0700 (Mon, 15 Jul 2013) | 3 lines
Changed paths:
   A /trunk/cmake/build_projects/wildcard_remove.cmake

Initial commit of a CMake script to remove files specified by a wildcard
pattern. 

------------------------------------------------------------------------
r12422 | arjenmarkus | 2013-07-14 23:45:29 -0700 (Sun, 14 Jul 2013) | 2 lines
Changed paths:
   M /trunk/examples/tcl/x16.tcl

First shot at implementing plcolorbar. The result is not quite like the C
example yet - also only one plot has any colorbar sofar. More tweaking required.
------------------------------------------------------------------------
r12421 | arjenmarkus | 2013-07-14 23:44:11 -0700 (Sun, 14 Jul 2013) | 2 lines
Changed paths:
   M /trunk/bindings/tcl/tclAPI.c

First shot at implementing a Tcl binding for plcolorbar. Given that example 16
does not look like the C example yet, there may still be some tweaking left.
------------------------------------------------------------------------
r12420 | airwin | 2013-07-12 12:22:25 -0700 (Fri, 12 Jul 2013) | 11 lines
Changed paths:
   M /trunk/CMakeLists.txt
   M /trunk/bindings/ada/CMakeLists.txt
   M /trunk/drivers/CMakeLists.txt
   M /trunk/examples/lua/CMakeLists.txt
   M /trunk/examples/python/CMakeLists.txt

All use of the dll subdirectory workaround is now controlled by
the USE_DLL_SUBDIRECTORY variable.  That variable is set to true
only for the case of shared libraries and either WIN32 or Cygwin.

We do this for Cygwin only because CMake currently does not use the
-rpath linker capability (which apparently works according to
anecedotal evidence) on that platform.  But we should review this
Cygwin decision in the future if/when CMake changes to use the -rpath
linker capability on that platform.


------------------------------------------------------------------------
r12419 | airwin | 2013-07-12 11:08:01 -0700 (Fri, 12 Jul 2013) | 36 lines
Changed paths:
   M /trunk/CMakeLists.txt

Follow the build of CMake itself so that the initial order of commands is

cmake_minimum_required(...
set(CMAKE_LEGACY_CYGWIN_WIN32 0)
project(...

This reordering should (hopefully) solve a current Cygwin issue where
there is a warning about CMAKE_LEGACY_CYGWIN_WIN32 not being set.

This reordering means that the variable CMAKE_SYSTEM_NAME is not
defined when cmake_minimum_required is called so we must use the same
minimum CMake version for all platforms.  In retrospect this is a good
thing since the value of the minimum version sets a number of CMake
policies, and we want those policies (how CMake logic is interpreted)
to be identical on all platforms.

I also took this opportunity to update the minimum version from 2.8.2
on Linux and 2.8.6 on all other platforms to a uniform 2.8.9.  I chose
that minimum to be consistent with the CMake version available on
Debian Wheezy (released a few months ago, and typically more
conservative about CMake versions than other modern Linux
distributions).  What this means is modern Linux distribution users
(and presumably users of modern Mac versions) should be able to build
PLplot without having to build or download a modern CMake version as
well.  As always, Windows users and legacy Linux distribution users
will have to download a binary CMake or build CMake with
a version that satisifies the version requirements (currently 2.8.9).

Tested by: Alan W. Irwin <airwin@users.sourceforge.net> using the
install target (for -DBUILD_TEST=ON) and also by running ctest.
Note, I view this testing as the minimum acceptable for such a
fundamental build-system change where some of the CMake policies
(interpretations of CMake logic) have been updated on Linux from those
policies in effect for 2.8.2 to the policies in effect for 2.8.9.


------------------------------------------------------------------------
r12418 | airwin | 2013-07-11 13:29:33 -0700 (Thu, 11 Jul 2013) | 2 lines
Changed paths:
   M /trunk/cmake/build_projects/README

Mention the usefulness of the schema file generated by trang.

------------------------------------------------------------------------
r12417 | airwin | 2013-07-11 13:23:16 -0700 (Thu, 11 Jul 2013) | 7 lines
Changed paths:
   M /trunk/cmake/build_projects/README

Add description of the commands used to generate build_projects
configurations for pango and all its dependencies.

Note this documentation will become valid only in the future
when configure_bp.cmake is updated to actually output build_projects
configurations from the input results that it currently just parses.

------------------------------------------------------------------------
r12416 | airwin | 2013-07-11 13:17:38 -0700 (Thu, 11 Jul 2013) | 15 lines
Changed paths:
   M /trunk/cmake/build_projects/gtk_transform.py

Update the initial script so that it

(1) finds all valid direct and indirect dependencies of the
starting_package specified on the command-line by the user according
to a command integer also given on the command line (1 bit ON ==> follow
hard dependencies (jhbuild "dependencies"), 2 bit ON ==> follows soft
dependencies (jhbuild "suggests"), 4 bit ON
==> follow "would be nice" run-time dependencies (jhbuild "after")).

(2) Dump to stdout all relevant build configuration information for the
starting package and all valid dependencies that are found.

This should be the final form of this script or close to it.


------------------------------------------------------------------------
r12415 | airwin | 2013-07-11 12:59:37 -0700 (Thu, 11 Jul 2013) | 14 lines
Changed paths:
   A /trunk/cmake/build_projects/configure_bp.cmake

Initial commit of a file with CMake logic to parse a file created by
gtk_transform.py (see README for how to use gtk_transform.py). 
Currently, that parsing simply outputs the parsed results in the same
form as the input file so that, e.g.,

cmake -DFILENAME:FILEPATH=pango_packages.data -P \
configure_bp.cmake 2>| diff pango_packages.data -

shows no differences indicating the parsing is working.

ToDo: Use these correctly parsed results to configure corresponding
bp.cmake files for each package that is found by gtk_transform.py.


------------------------------------------------------------------------
r12414 | airwin | 2013-07-10 09:20:21 -0700 (Wed, 10 Jul 2013) | 5 lines
Changed paths:
   M /trunk/drivers/CMakeLists.txt
   M /trunk/examples/lua/CMakeLists.txt

Make treatment of the dll directory consistent with the rest of the
build-system logic.  In other words, only use dll for the
WIN32_AND_NOT_CYGWIN case.


------------------------------------------------------------------------
r12413 | airwin | 2013-07-10 08:58:05 -0700 (Wed, 10 Jul 2013) | 2 lines
Changed paths:
   M /trunk/CMakeLists.txt

Replace WIN32 with an unambiguous name for that variable.

------------------------------------------------------------------------
r12412 | airwin | 2013-07-09 21:32:13 -0700 (Tue, 09 Jul 2013) | 3 lines
Changed paths:
   M /trunk/examples/plplot_configure.cmake_installed_examples.in

Propagate WIN32_AND_NOT_CYGWIN and WIN32_OR_CYGWIN to the installed
examples build system.

------------------------------------------------------------------------
r12411 | airwin | 2013-07-09 14:32:02 -0700 (Tue, 09 Jul 2013) | 9 lines
Changed paths:
   M /trunk/bindings/f77/CMakeLists.txt
   M /trunk/bindings/f95/CMakeLists.txt
   M /trunk/bindings/python/CMakeLists.txt
   M /trunk/bindings/qt_gui/pyqt4/CMakeLists.txt
   M /trunk/cmake/modules/FindGD.cmake
   M /trunk/cmake/modules/cairo.cmake
   M /trunk/cmake/modules/drivers.cmake
   M /trunk/cmake/modules/fortran.cmake
   M /trunk/cmake/modules/freetype.cmake
   M /trunk/cmake/modules/pdf.cmake
   M /trunk/cmake/modules/plplot.cmake
   M /trunk/cmake/modules/wingcc.cmake
   M /trunk/drivers/CMakeLists.txt
   M /trunk/examples/lua/CMakeLists.txt
   M /trunk/lib/qsastime/CMakeLists.txt

Change all instances of WIN32 to WIN32_OR_CYGWIN to be consistent with
modern CMake which does not set WIN32 to be ON for the Cygwin
platform.

Untested since I have no access to a Cygwin platform.  But the
build system now has a chance to work for that case so Cygwin
platform testing is now encouraged.


------------------------------------------------------------------------
r12410 | airwin | 2013-07-09 14:02:31 -0700 (Tue, 09 Jul 2013) | 13 lines
Changed paths:
   M /trunk/CMakeLists.txt
   M /trunk/bindings/ada/CMakeLists.txt
   M /trunk/bindings/f77/CMakeLists.txt
   M /trunk/bindings/f95/CMakeLists.txt
   M /trunk/cmake/modules/FindGD.cmake
   M /trunk/examples/python/CMakeLists.txt

Replace WIN32 AND NOT CYGWIN logic everywhere in CMake logic with the
variable WIN32_AND_NOT_CYGWIN.

Force our build system to use the modern usage which does not set
WIN32 on CYGWIN platforms.  Because of this change,
WIN32_AND_NOT_CYGWIN is defined to be the same as ${WIN32}, but keep
the WIN32_AND_NOT_CYGWIN name of the variable just to be clear.

Note the Cygwin platform has no chance to work until a further change
to replace WIN32 everywhere with WIN32_OR_CYGWIN is completed.  That
change should be coming soon.


------------------------------------------------------------------------
r12409 | airwin | 2013-07-09 12:27:35 -0700 (Tue, 09 Jul 2013) | 18 lines
Changed paths:
   M /trunk/CMakeLists.txt
   M /trunk/bindings/ada/CMakeLists.txt
   M /trunk/bindings/c++/CMakeLists.txt
   M /trunk/bindings/d/CMakeLists.txt
   M /trunk/bindings/f77/CMakeLists.txt
   D /trunk/bindings/f77/configurable.f.cmake
   A /trunk/bindings/f77/configurable.f.in (from /trunk/bindings/f77/configurable.f.cmake:12408)
   M /trunk/bindings/f95/CMakeLists.txt
   M /trunk/bindings/gnome2/lib/CMakeLists.txt
   M /trunk/bindings/ocaml/CMakeLists.txt
   M /trunk/bindings/qt_gui/CMakeLists.txt
   M /trunk/bindings/tcl/CMakeLists.txt
   M /trunk/bindings/wxwidgets/CMakeLists.txt
   D /trunk/config.h.cmake
   A /trunk/config.h.in (from /trunk/config.h.cmake:12408)
   M /trunk/examples/f77/CMakeLists.txt
   D /trunk/examples/f77/plf77demos.inc.cmake
   A /trunk/examples/f77/plf77demos.inc.in (from /trunk/examples/f77/plf77demos.inc.cmake:12408)
   M /trunk/examples/f95/CMakeLists.txt
   D /trunk/examples/f95/plf95demos.inc.cmake
   A /trunk/examples/f95/plf95demos.inc.in (from /trunk/examples/f95/plf95demos.inc.cmake:12408)
   M /trunk/examples/python/CMakeLists.txt
   D /trunk/examples/python/plplot_python_start.py.cmake
   A /trunk/examples/python/plplot_python_start.py.in (from /trunk/examples/python/plplot_python_start.py.cmake:12408)
   D /trunk/pkgcfg/plplot-template.pc.cmake
   A /trunk/pkgcfg/plplot-template.pc.in (from /trunk/pkgcfg/plplot-template.pc.cmake:12408)
   M /trunk/plplot_test/CMakeLists.txt
   D /trunk/plplot_test/plplot-test.sh.cmake
   A /trunk/plplot_test/plplot-test.sh.in (from /trunk/plplot_test/plplot-test.sh.cmake:12408)
   M /trunk/src/CMakeLists.txt

Convert from *.cmake form to *.in form for all files configured by
CMake.  From now on that means the *.cmake form is reserved for
files that contain CMake logic.

This change should remove the last historical traces of autotools from
our project.  Historically we could not use the *.in form for certain
files configured by CMake because those files already existed at that
time as autotools configurable files.  But the autotools form of
configurable *.in files were removed some time ago so that allows the
chance to use that form of name now for all CMake-configurable files
now.

Tested by: Alan W. Irwin <airwin@users.sourceforge.net> using

scripts/comprehensive_test.sh --do_test_interactive no



------------------------------------------------------------------------
r12408 | airwin | 2013-07-09 09:28:26 -0700 (Tue, 09 Jul 2013) | 2 lines
Changed paths:
   M /trunk/include/CMakeLists.txt
   D /trunk/include/plConfig.h.cmake
   A /trunk/include/plConfig.h.in (from /trunk/include/plConfig.h.cmake:12396)
   D /trunk/include/plDevs.h.cmake
   A /trunk/include/plDevs.h.in (from /trunk/include/plDevs.h.cmake:12396)

Move from *.cmake form to *.in form for configurable files.

------------------------------------------------------------------------
r12407 | airwin | 2013-07-08 23:03:41 -0700 (Mon, 08 Jul 2013) | 15 lines
Changed paths:
   A /trunk/cmake/build_projects/gtk_transform.py

Initial commit of script to parse jhbuild xml file produced by
gtk_xml_recursive_process.py (which combines included chain of jhbuild
xml files into one file).

Currently the principal function of the script, parse_jhbuild only
has the logic tested where if_dependencies is True (i.e., where dependencies
are being recursively followed), and that test on real jhbuild data showed
a circular dependency which lead to infinite depths in the recursion.

So some method of detecting circular dependencies and erroring out
must be implemented, and the logic for the alternative straight
printout of values without following the dependencies must be extended
a bit as well.


------------------------------------------------------------------------
r12406 | airwin | 2013-07-07 13:03:03 -0700 (Sun, 07 Jul 2013) | 22 lines
Changed paths:
   M /trunk/cmake/build_projects/gtk_xml_recursive_process.py

The overview is the stdout from this script will be used as input for
another python script (still being designed) to transform the single
complete xml file into build_projects configuration files.

This should be the final version of this script for gtk-3.4.1, but it
is likely changes will have to be made for other versions of gtk
modules (when we move to those) since some exact syntax assumptions
are made that are correct for 3.4.1 jhbuild module files, but might
not be correct for other versions.  

Tested by: Alan W. Irwin <airwin@users.sourceforge.net> by running

./gtk_xml_recursive_process.py /home/software/pango_stack/jhbuild/modulesets/3.4.1/gnome-apps-3.4.1.modules

This command followed all the includes.  That is, all *.modules files
in that directory were included in the output to stdout as measured by
some spot checking and "wc -l" line count results that jibed with the
total line count for *.modules files in that directory (if you account
for three dropped include lines and two head lines and one tail line
that are dropped from the included files).


------------------------------------------------------------------------
r12405 | airwin | 2013-07-07 11:00:07 -0700 (Sun, 07 Jul 2013) | 11 lines
Changed paths:
   A /trunk/cmake/build_projects/gtk_xml_recursive_process.py

Initial commit of python script to follow includes in gtk jhbuild
xml module files to generate an equivalent single module file.

At this stage, the script does not follow includes so simply copies
the file specified as an argument to the script to stdout.

Tested by: Alan W. Irwin <airwin@users.sourceforge.net> using

./gtk_xml_recursive_process.py README |diff - README


------------------------------------------------------------------------
r12404 | arjenmarkus | 2013-07-07 05:59:52 -0700 (Sun, 07 Jul 2013) | 2 lines
Changed paths:
   M /trunk/drivers/wingcc.c

Use the SetClassLongPtr() function in stead of SetClassLong() to make the code
useable for both 32-bits and 64-bits versions.
------------------------------------------------------------------------
r12403 | airwin | 2013-07-01 17:04:52 -0700 (Mon, 01 Jul 2013) | 24 lines
Changed paths:
   M /trunk/cmake/build_projects/CMakeLists.txt
   M /trunk/cmake/build_projects/README
   A /trunk/cmake/build_projects/cmake
   A /trunk/cmake/build_projects/cmake/bp.cmake

Implement a BUILD_THE_BUILDTOOLS option.

When this variable is set to ON with -DBUILD_THE_BUILDTOOLS=ON, this
puts build_projects in a special mode to build and install only a
small list of buildtools.  Only cmake is on that list of buildtools
for now that are built with this option.  cmake is built with the
bootstrap method to cut the dependence on the binary version of cmake
that is used to configure build_projects in the
-DBUILD_THE_BUILDTOOLS=ON case.

The idea is once the buildtools list of packages is built with this
special option, then you can put those buildtools on the PATH and use
them from then on in normal builds of build_packages to reduce the
reliance on downloaded binaries for all results.

Tested by: Alan W. Irwin <airwin@users.sourceforge.net> using the
build_all target for the "Unix Makefiles" generator on Linux and the
"MSYS Makefiles" generator on (the Wine version of) Windows.  Note
these were just successful build tests, and the resulting
cmake-2.8.11.1 binary in each case has not been tested (yet) by using
it for builds of other software.  But all subsequent tests will be
using these bootstrapped versions.


------------------------------------------------------------------------
r12402 | airwin | 2013-07-01 13:14:47 -0700 (Mon, 01 Jul 2013) | 4 lines
Changed paths:
   A /trunk/cmake/build_projects/README

Document how to use the build_projects project to build software on
Linux and Windows platforms.  The Linux instructions should also
work on Mac OS X, but that platform hasn't been tested yet.

------------------------------------------------------------------------
r12401 | airwin | 2013-06-30 21:22:35 -0700 (Sun, 30 Jun 2013) | 3 lines
Changed paths:
   M /trunk/cmake/modules/Findhpdf.cmake
   M /trunk/drivers/pdf.c

libharu #include file location changed from directory where hpdf.h was
found to the directory where hpdf/hpdf.h was found.

------------------------------------------------------------------------
r12400 | airwin | 2013-06-30 21:20:44 -0700 (Sun, 30 Jun 2013) | 2 lines
Changed paths:
   M /trunk/cmake/modules/pdf.cmake

Make CMake logic consistent with improved visibility logic for libharu.

------------------------------------------------------------------------
r12399 | airwin | 2013-06-30 21:15:56 -0700 (Sun, 30 Jun 2013) | 2 lines
Changed paths:
   M /trunk/cmake/build_projects/CMakeLists.txt
   M /trunk/cmake/build_projects/plplot/bp.cmake

Implement plplot build.

------------------------------------------------------------------------
r12398 | airwin | 2013-06-30 21:14:16 -0700 (Sun, 30 Jun 2013) | 11 lines
Changed paths:
   M /trunk/cmake/build_projects/libharu/CMakeLists.txt
   M /trunk/cmake/build_projects/libharu/demo/CMakeLists.txt
   M /trunk/cmake/build_projects/libharu/include/hpdf.h
   M /trunk/cmake/build_projects/libharu/src/CMakeLists.txt

Make libharu and its demos build properly for MinGW compiler.

The visibility macros and corresponding CMake logic were completely
reorganized and rationalized and another fix (HPDF_FontDef and
HPDF_U3D typedefs implemented) done to make build work with MinGW
compiler.

Tested by: Alan W. Irwin <airwin@users.sourceforge.net> using
the build_libharu target for both "Unix Makefiles" on Linux and
"MinGW Makefiles" on Wine version of Windows.  

------------------------------------------------------------------------
r12397 | airwin | 2013-06-30 20:59:28 -0700 (Sun, 30 Jun 2013) | 4 lines
Changed paths:
   M /trunk/examples/CMakeLists.txt

Execute custom_test_script and command_script with ${SH_EXECUTABLE} so
that "MinGW Makefiles" can run these scripts without issues.


------------------------------------------------------------------------
r12396 | airwin | 2013-06-28 13:46:53 -0700 (Fri, 28 Jun 2013) | 6 lines
Changed paths:
   M /trunk/cmake/modules/language_support/cmake/CMakeTestDCompiler.cmake

Drop the find_library part of the previous commit.  That turned out to
be required only because of a system installation screwup I had which
has since been fixed.

But retain the whitespace changes of the previous commit.

------------------------------------------------------------------------
r12395 | airwin | 2013-06-28 13:21:53 -0700 (Fri, 28 Jun 2013) | 4 lines
Changed paths:
   M /trunk/cmake/modules/language_support/cmake/CMakeTestDCompiler.cmake

Use find_library to help find gphobos2 library.

Also take care of whitespace issues.

------------------------------------------------------------------------
r12394 | arjenmarkus | 2013-06-28 02:59:51 -0700 (Fri, 28 Jun 2013) | 5 lines
Changed paths:
   M /trunk/CMakeLists.txt
   M /trunk/cmake/build_projects/shapelib/CMakeLists.txt
   M /trunk/drivers/CMakeLists.txt

Treat Cygwin in the same way as Windows wrt the generation of the DLLs, that is, put them in the subdirectory "dll", so that the path needs to be extended by that directory only.
The previous method (relying on rpath) does not seem to work for Cygwin.

Note: this does not solve the problem that under Cygwin a path "c:/tcl/include" is returned, even while these header files are available under "/usr/include". Therefore the build is not completely smooth yet.

------------------------------------------------------------------------
r12393 | andrewross | 2013-06-27 12:49:07 -0700 (Thu, 27 Jun 2013) | 5 lines
Changed paths:
   M /trunk/bindings/d/plplot.d
   M /trunk/cmake/modules/d.cmake
   M /trunk/cmake/modules/language_support/cmake/CMakeDInformation.cmake
   M /trunk/cmake/modules/language_support/cmake/CMakeTestDCompiler.cmake
   M /trunk/cmake/modules/language_support/cmake/Platform/Linux-gdc.cmake
   M /trunk/examples/d/x02d.d
   M /trunk/examples/d/x04d.d
   M /trunk/examples/d/x06d.d
   M /trunk/examples/d/x07d.d
   M /trunk/examples/d/x08d.d
   M /trunk/examples/d/x11d.d
   M /trunk/examples/d/x13d.d
   M /trunk/examples/d/x15d.d
   M /trunk/examples/d/x20d.d
   M /trunk/examples/d/x21d.d
   M /trunk/examples/d/x23d.d
   M /trunk/examples/d/x24d.d
   M /trunk/examples/d/x25d.d
   M /trunk/examples/d/x26d.d
   M /trunk/examples/d/x33d.d

Update D language bindings to D2. Fix some issues with the PLINT -> PLFLT line width changes.

Note: This breaks D1 language support and is only tested with gdc. I've re-enabled the D bindings to ensure this gets testing, but it will likely need further cmake work for other compilers / non-Linux platforms.


------------------------------------------------------------------------
r12392 | andrewross | 2013-06-27 12:47:10 -0700 (Thu, 27 Jun 2013) | 3 lines
Changed paths:
   M /trunk/drivers/wingcc.c

Style recent changes.


------------------------------------------------------------------------
r12391 | andrewross | 2013-06-27 01:02:46 -0700 (Thu, 27 Jun 2013) | 3 lines
Changed paths:
   M /trunk/debian/changelog
   A /trunk/debian/patches/java-pltr2-fix.diff
   M /trunk/debian/patches/series

Backport fix for java pltr2 crash to Debian packages. 


------------------------------------------------------------------------
r12390 | arjenmarkus | 2013-06-26 23:50:34 -0700 (Wed, 26 Jun 2013) | 3 lines
Changed paths:
   M /trunk/drivers/wingcc.c

Use an alternative header file for tchar.h, as that is not available in the
current version of Cygwin. This requires also defining the macro _T().

------------------------------------------------------------------------
r12389 | andrewross | 2013-06-26 14:34:49 -0700 (Wed, 26 Jun 2013) | 3 lines
Changed paths:
   M /trunk/debian/changelog
   M /trunk/debian/patches/fix-cmake-ada-support.diff
   A /trunk/debian/patches/fix-cmake-d-support.diff
   M /trunk/debian/patches/series
   M /trunk/debian/rules

Update debian 5.9.9 packages so they compile on Debian unstable. 


------------------------------------------------------------------------
r12388 | airwin | 2013-06-25 23:03:55 -0700 (Tue, 25 Jun 2013) | 24 lines
Changed paths:
   M /trunk/cmake/build_projects/CMakeLists.txt

Attempted PLplot build ran into some errors for the "MinGW Makefiles"
generator for the libharu dependency of PLplot.  So temporarily drop wxwidgets (to save time)
and plplot (to avoid this error) and do full test of remaining 5
builds (for libqhull, libharu, ndiff, ligagg, and shapelib) for all
combinations of generators.  

Note, one of these tests was for "NMake
Makefiles JOM" for both C and C++ projects so I had to propagate
CMAKE_CXX_COMPILER (as well as the equivalent C and RC variables) for that case to work around the issues between
this generator and the MinGW suite of compilers.

All these tests were fine as measured by
grep -i warn build_all.out |grep -v "passing argument" |less
grep -i error build_all.out |grep -v "but argument is of type" |less

So this large number of tests should provide a good benchmark for when I reenable plplot again.

Tested by: Alan W. Irwin <airwin@users.sourceforge.net> using the
"build_all" target for the "MSYS Makefiles", "MinGW Makefiles", "NMake
Makefiles JOM" (with CMAKE_CXX_COMPILER. etc., workaround), and "Ninja" generators on a wine-git version near
wine-1.6.0-rc1, and for the "Unix Makefiles" and "Ninja" generators on
Linux.


------------------------------------------------------------------------
r12387 | airwin | 2013-06-25 12:28:34 -0700 (Tue, 25 Jun 2013) | 4 lines
Changed paths:
   M /trunk/cmake/modules/python.cmake

Deal properly with case where CMAKE_INSTALL_PREFIX is an empty string.
(This case is typically used to generate binary distribution tarballs.)


------------------------------------------------------------------------
r12386 | airwin | 2013-06-25 11:49:38 -0700 (Tue, 25 Jun 2013) | 4 lines
Changed paths:
   M /trunk/examples/python/CMakeLists.txt

Remove specific install of plplot_py_demos.py from the build tree since that does not
work unless  BUILD_TEST is ON, and in any case this file is
installed already from the source tree as part of python_SCRIPTS.

------------------------------------------------------------------------
r12385 | airwin | 2013-06-21 12:18:13 -0700 (Fri, 21 Jun 2013) | 6 lines
Changed paths:
   M /trunk/cmake/build_projects/CMakeLists.txt

Propagate CMAKE_C_COMPILER and CMAKE_RC_COMPILER to aid workaround for
"NMake Makefiles JOM" generator which requires these variables to be
set for now for any non cl compiler, e.g., MinGW gcc.

Some logic cleanup

------------------------------------------------------------------------
r12384 | airwin | 2013-06-21 12:04:38 -0700 (Fri, 21 Jun 2013) | 7 lines
Changed paths:
   M /trunk/cmake/build_projects/wxwidgets/bp.cmake

Switch to slow but reliable non-parallel builds because parallel
builds for wxwidgets have proved to be unreliable both historically
and recently (presumably due to some parallel build race conditions
for wxwidgets that intermittently produce bad results depending on who
wins the race).


------------------------------------------------------------------------
r12383 | airwin | 2013-06-12 20:13:53 -0700 (Wed, 12 Jun 2013) | 2 lines
Changed paths:
   M /trunk/cmake/build_projects/libagg/bp.cmake
   M /trunk/cmake/build_projects/libharu/bp.cmake
   M /trunk/cmake/build_projects/libqhull/bp.cmake
   M /trunk/cmake/build_projects/ndiff/bp.cmake
   M /trunk/cmake/build_projects/plplot/bp.cmake
   M /trunk/cmake/build_projects/shapelib/bp.cmake
   M /trunk/cmake/build_projects/wxwidgets/bp.cmake

Protect against configuring a build twice in one CMake call,

------------------------------------------------------------------------
r12382 | airwin | 2013-06-12 19:53:11 -0700 (Wed, 12 Jun 2013) | 6 lines
Changed paths:
   M /trunk/cmake/build_projects/CMakeLists.txt
   A /trunk/cmake/build_projects/wxwidgets
   A /trunk/cmake/build_projects/wxwidgets/bp.cmake

Add wxwidgets build configuration.

Tested by: Alan W. Irwin <airwin@users.sourceforge.net> using the
build_wxwidgets target for the "Ninja" CMake generator both for
Linux and Wine (git version near 1.6_rc1).

------------------------------------------------------------------------
r12381 | andrewross | 2013-06-12 13:55:04 -0700 (Wed, 12 Jun 2013) | 3 lines
Changed paths:
   M /trunk/bindings/f95/scstubs.c
   M /trunk/bindings/lua/plplotluac.i

Style recent changes.


------------------------------------------------------------------------
r12380 | andrewross | 2013-06-12 13:53:18 -0700 (Wed, 12 Jun 2013) | 3 lines
Changed paths:
   M /trunk/bindings/f95/plplot_parameters.h
   M /trunk/bindings/f95/plstubs.h
   M /trunk/bindings/f95/scstubs.c
   M /trunk/bindings/f95/sfstubsf95.f90
   M /trunk/examples/f95/x16f.f90
   M /trunk/examples/f95/x33f.f90

Update f95 bindings to fix plcolorbar, plscmap1_range, plgcmap1_range. Update example 16 and 33 in line with C versions.


------------------------------------------------------------------------
r12379 | airwin | 2013-06-12 12:27:26 -0700 (Wed, 12 Jun 2013) | 7 lines
Changed paths:
   M /trunk/cmake/build_projects/CMakeLists.txt
   A /trunk/cmake/build_projects/libagg/bp.cmake (from /trunk/cmake/build_projects/libagg/ep.cmake:12378)
   D /trunk/cmake/build_projects/libagg/ep.cmake
   A /trunk/cmake/build_projects/libharu/bp.cmake (from /trunk/cmake/build_projects/libharu/ep.cmake:12378)
   D /trunk/cmake/build_projects/libharu/ep.cmake
   A /trunk/cmake/build_projects/libqhull/bp.cmake (from /trunk/cmake/build_projects/libqhull/ep.cmake:12378)
   D /trunk/cmake/build_projects/libqhull/ep.cmake
   A /trunk/cmake/build_projects/ndiff/bp.cmake (from /trunk/cmake/build_projects/ndiff/ep.cmake:12378)
   D /trunk/cmake/build_projects/ndiff/ep.cmake
   A /trunk/cmake/build_projects/plplot/bp.cmake (from /trunk/cmake/build_projects/plplot/ep.cmake:12378)
   D /trunk/cmake/build_projects/plplot/ep.cmake
   A /trunk/cmake/build_projects/shapelib/bp.cmake (from /trunk/cmake/build_projects/shapelib/ep.cmake:12378)
   D /trunk/cmake/build_projects/shapelib/ep.cmake

Move all ep.cmake files and references to those files to bp.cmake to
be consistent with the build_projects name of the project (rather than
the ExternalProject_Add CMake function used to implement the project).

Tested by: Alan W. Irwin <airwin@users.sourceforge.net> using the
build_all target for the "Ninja" generator on Linux.

------------------------------------------------------------------------
r12378 | airwin | 2013-06-12 12:09:48 -0700 (Wed, 12 Jun 2013) | 18 lines
Changed paths:
   M /trunk/cmake/build_projects/CMakeLists.txt
   M /trunk/cmake/build_projects/libagg/ep.cmake
   M /trunk/cmake/build_projects/libharu/ep.cmake
   M /trunk/cmake/build_projects/libqhull/ep.cmake
   M /trunk/cmake/build_projects/ndiff/ep.cmake
   M /trunk/cmake/build_projects/plplot/ep.cmake
   M /trunk/cmake/build_projects/shapelib/ep.cmake

Use the APPEND signature of add_custom_command for custom steps in
updating the software for each of the build configurations. This
change greatly simplifies the CMake logic and satisfies the stringent
dependency checks done by the CMake "Ninja" generator.

Use the env command for all configuration, build, test, and install
steps.

Reorganize the CMake logic for the overall project including a build_all
target to build all configured projects.

Tested by: Alan W. Irwin <airwin@users.sourceforge.net> using the
build_all target for "Unix Makefiles" and "Ninja" generators on Linux and
the "MSYS Makefiles", "MinGW Makefiles", and "Ninja" generators on the
Wine version of Windows.



------------------------------------------------------------------------
r12377 | airwin | 2013-06-12 11:51:28 -0700 (Wed, 12 Jun 2013) | 13 lines
Changed paths:
   M /trunk/cmake/build_projects/libqhull/src/CMakeLists.txt

Use cache variable to set BUILD_SHARED_LIBS rather than ordinary
variable.

Change from old logic (which forced static library build for
most Windows cases) to forced static library build only
for the combination of Windows and ninja generator.  This
is only a temporary measure to work around a ninja generator bug
on Windows for the combination of shared libraries and using
the same name kernel ("qhull" in this case) for an executable
and shared library.

Reorganize some of the CMake logic.

------------------------------------------------------------------------
r12376 | andrewross | 2013-06-07 14:34:02 -0700 (Fri, 07 Jun 2013) | 3 lines
Changed paths:
   M /trunk/bindings/lua/plplotluac.i

Add missing plgcmap1_range function.


------------------------------------------------------------------------
r12375 | airwin | 2013-06-07 11:46:54 -0700 (Fri, 07 Jun 2013) | 3 lines
Changed paths:
   M /trunk/cmake/build_projects/libagg/ep.cmake
   M /trunk/cmake/build_projects/libharu/ep.cmake
   M /trunk/cmake/build_projects/libqhull/ep.cmake
   M /trunk/cmake/build_projects/ndiff/ep.cmake
   M /trunk/cmake/build_projects/shapelib/ep.cmake

Replace software package name by ${BP_PACKAGE} wherever possible to
make ep.cmake files more abstracted/generic.

------------------------------------------------------------------------
r12374 | andrewross | 2013-06-07 09:03:35 -0700 (Fri, 07 Jun 2013) | 3 lines
Changed paths:
   M /trunk/bindings/lua/plplotluac.i
   M /trunk/bindings/swig-support/plplotcapi.i
   M /trunk/examples/lua/x16.lua
   M /trunk/examples/lua/x33.lua

Update lua bindings to implement latest colorbar API and update examples accordingly.


------------------------------------------------------------------------
r12373 | andrewross | 2013-06-06 14:44:55 -0700 (Thu, 06 Jun 2013) | 3 lines
Changed paths:
   M /trunk/src/plbox.c

Style recent changes.


------------------------------------------------------------------------
r12372 | andrewross | 2013-06-06 14:44:33 -0700 (Thu, 06 Jun 2013) | 3 lines
Changed paths:
   M /trunk/bindings/c++/plstream.cc
   M /trunk/bindings/java/PLStream.java
   M /trunk/bindings/java/plplotjavac.i
   M /trunk/bindings/octave/plplot_octave.h.in
   M /trunk/bindings/octave/plplot_octave.i
   M /trunk/bindings/python/plplot_widgetmodule.c
   M /trunk/bindings/python/plplotcmodule.i
   M /trunk/bindings/swig-support/plplotcapi.i
   M /trunk/examples/c++/x15.cc
   M /trunk/examples/c++/x16.cc
   M /trunk/examples/c++/x33.cc
   M /trunk/examples/java/x16.java
   M /trunk/examples/java/x33.java

Style recent changes.


------------------------------------------------------------------------
r12371 | andrewross | 2013-06-06 14:32:48 -0700 (Thu, 06 Jun 2013) | 3 lines
Changed paths:
   M /trunk/src/plbox.c

Commit patch from Steve Schwartz to fix several bugs in placement of exponential labels.


------------------------------------------------------------------------
r12370 | airwin | 2013-06-06 13:05:05 -0700 (Thu, 06 Jun 2013) | 8 lines
Changed paths:
   M /trunk/cmake/build_projects/CMakeLists.txt
   M /trunk/cmake/build_projects/ExternalProject.cmake
   M /trunk/cmake/build_projects/libagg/ep.cmake
   M /trunk/cmake/build_projects/libharu/ep.cmake
   M /trunk/cmake/build_projects/libqhull/ep.cmake
   M /trunk/cmake/build_projects/ndiff/ep.cmake
   M /trunk/cmake/build_projects/plplot/ep.cmake
   M /trunk/cmake/build_projects/shapelib/ep.cmake

Make builds more platform independent.  As a result of these changes,
"MinGW Makefiles" now works as well as "MSYS Makefiles" for
build_projects.

Tested by: Alan W. Irwin <airwin@users.sourceforge.net> for the "Unix
Makefiles" default generator on Linux, and the "MinGW Makefiles" and
"MSYS Makefiles" generators on the Wine version of Windows.

------------------------------------------------------------------------
r12369 | airwin | 2013-06-06 08:09:05 -0700 (Thu, 06 Jun 2013) | 3 lines
Changed paths:
   M /trunk/cmake/build_projects/CMakeLists.txt
   M /trunk/cmake/build_projects/libagg/ep.cmake
   M /trunk/cmake/build_projects/libharu/ep.cmake
   M /trunk/cmake/build_projects/libqhull/ep.cmake
   M /trunk/cmake/build_projects/ndiff/ep.cmake
   M /trunk/cmake/build_projects/shapelib/ep.cmake

Preliminary work to make build_projects work with the "MinGW
Makefiles" generator.

------------------------------------------------------------------------
r12368 | andrewross | 2013-06-04 23:54:51 -0700 (Tue, 04 Jun 2013) | 4 lines
Changed paths:
   M /trunk/src/plbox.c


Apply fix from Steve Schwartz for mis-alignment of the major axes and grid with time axis ("d" option).


------------------------------------------------------------------------
r12367 | airwin | 2013-06-04 18:52:14 -0700 (Tue, 04 Jun 2013) | 21 lines
Changed paths:
   M /trunk/cmake/build_projects/CMakeLists.txt
   M /trunk/cmake/build_projects/libagg/ep.cmake
   M /trunk/cmake/build_projects/libharu/ep.cmake
   M /trunk/cmake/build_projects/libqhull/ep.cmake
   M /trunk/cmake/build_projects/ndiff/ep.cmake
   A /trunk/cmake/build_projects/plplot
   A /trunk/cmake/build_projects/plplot/ep.cmake
   M /trunk/cmake/build_projects/shapelib/ep.cmake

Replaced all temporary downloads with actual downloads since most of
these build subprojects are thoroughly debugged.  During the test
of this change discovered that the download of the libqhull-2010.1 snapshot
was actually a different snapshot (~4 months later) than the download
I had collected before with this same filename.  So I had to change
the associated MD5sum accordingly.  Furthermore, the latest "2010.1"
version of libqhull continues to build without issues.

Add faux PLplot build which for now just takes care of PLplot build
dependencies for the "Build Projects" project without actually
building PLplot

Tested by: Alan W. Irwin <airwin@users.sourceforge.net> for both Linux
and MinGW/MSYS/Wine platforms using the build_plplot target.

N.B. from the qhull notes, the gcc option -f-no-strict-aliasing must
be used for qset.c for 2010.1 This only matters if you use -O2, -O3, or
-Os. I haven't decided whether to bother with this or try to use the
latest libqhull instead where this restriction has been removed.


------------------------------------------------------------------------
r12366 | airwin | 2013-06-04 16:40:49 -0700 (Tue, 04 Jun 2013) | 7 lines
Changed paths:
   M /trunk/cmake/build_projects/CMakeLists.txt
   A /trunk/cmake/build_projects/libagg/ep.cmake

Add ExternalProject build configuration of libagg to "Build
Projects" project.

Tested by: Alan W. Irwin <airwin@users.sourceforge.net> for both Linux
and MinGW/MSYS/Wine platforms using the build_libagg target.


------------------------------------------------------------------------
r12365 | airwin | 2013-06-04 16:37:22 -0700 (Tue, 04 Jun 2013) | 3 lines
Changed paths:
   M /trunk/cmake/build_projects/libagg/CMakeLists.txt

Make this into a complete top-level CMakeList.txt file for build libagg.
Add in copyright notice.

------------------------------------------------------------------------
r12364 | airwin | 2013-06-04 16:16:06 -0700 (Tue, 04 Jun 2013) | 2 lines
Changed paths:
   M /trunk/cmake/build_projects/libqhull/README.libqhull

Update standalone build instructions.

------------------------------------------------------------------------
r12363 | airwin | 2013-06-04 14:52:20 -0700 (Tue, 04 Jun 2013) | 2 lines
Changed paths:
   M /trunk/cmake/build_projects/libharu/README.libharu

Update description of build system + fixes for libharu.

------------------------------------------------------------------------
r12362 | airwin | 2013-06-04 14:51:31 -0700 (Tue, 04 Jun 2013) | 7 lines
Changed paths:
   M /trunk/cmake/build_projects/CMakeLists.txt
   A /trunk/cmake/build_projects/libharu/ep.cmake

Add ExternalProject build configuration of libharu to "Build
Projects" project.

Tested by: Alan W. Irwin <airwin@users.sourceforge.net> for both Linux
and MinGW/MSYS/Wine platforms using the build_libharu target.


------------------------------------------------------------------------
r12361 | airwin | 2013-06-04 14:47:37 -0700 (Tue, 04 Jun 2013) | 3 lines
Changed paths:
   A /trunk/cmake/build_projects/libharu/include_hpdf_config.h.patch

Libharu-2.1.0 fix of a build bug for the case where zlib headers are
missing.

------------------------------------------------------------------------
r12360 | airwin | 2013-06-04 14:45:51 -0700 (Tue, 04 Jun 2013) | 2 lines
Changed paths:
   M /trunk/cmake/build_projects/libharu/CMakeLists.txt
   M /trunk/cmake/build_projects/libharu/demo/CMakeLists.txt

Implement proper linking to the math library.

------------------------------------------------------------------------
r12359 | airwin | 2013-06-04 14:44:35 -0700 (Tue, 04 Jun 2013) | 2 lines
Changed paths:
   M /trunk/cmake/build_projects/libharu/include/hpdf_config.h.cmake

Make file end with linefeed.

------------------------------------------------------------------------
r12358 | airwin | 2013-06-04 14:43:12 -0700 (Tue, 04 Jun 2013) | 7 lines
Changed paths:
   M /trunk/cmake/build_projects/libharu/include/hpdf_config.h.cmake

Important (in the case where the zlib or png headers are missing) fix
for misspelling of macro names.

Implement standard preprocessor logic 
to avoid including these macros more than once.


------------------------------------------------------------------------
r12357 | airwin | 2013-06-03 09:18:24 -0700 (Mon, 03 Jun 2013) | 7 lines
Changed paths:
   M /trunk/cmake/build_projects/CMakeLists.txt
   A /trunk/cmake/build_projects/libqhull/ep.cmake

Add ExternalProject build configuration of libqhull to "Build Projects" project.

Tested by: Alan W. Irwin <airwin@users.sourceforge.net> for both Linux
and MinGW/MSYS/Wine platforms using build_libqhull, build_shapelib,
and build_ndiff targets.


------------------------------------------------------------------------
r12356 | airwin | 2013-06-03 09:10:54 -0700 (Mon, 03 Jun 2013) | 2 lines
Changed paths:
   M /trunk/cmake/build_projects/libqhull/README.libqhull

Tweak instructions.

------------------------------------------------------------------------
r12355 | airwin | 2013-06-03 09:06:31 -0700 (Mon, 03 Jun 2013) | 4 lines
Changed paths:
   M /trunk/cmake/build_projects/libqhull/src/libqhull.h

Fix Windows-only macro line-continuation bug that was discovered by
recent "Build projects" Wine testing.


------------------------------------------------------------------------
r12354 | airwin | 2013-06-03 07:27:05 -0700 (Mon, 03 Jun 2013) | 11 lines
Changed paths:
   M /trunk/cmake/build_projects/CMakeLists.txt
   M /trunk/cmake/build_projects/ndiff/ep.cmake
   M /trunk/cmake/build_projects/shapelib/ep.cmake

Many small tweaks (most stylistic such as implementing an overall
cmake command that propagates the install prefix and generator to all
the different CMake-based project builds or establishing the general
way to handle the PATH environment variable which is to modify then
restore to the original form for each separate project).

Tested by: Alan W. Irwin <airwin@users.sourceforge.net>.  Both
shapelib and ndiff configure, build, test, and install cleanly for
MinGW/MSYS/Wine.


------------------------------------------------------------------------
r12353 | andrewross | 2013-06-02 13:07:07 -0700 (Sun, 02 Jun 2013) | 3 lines
Changed paths:
   M /trunk/bindings/octave/plplot_octave.h.in
   M /trunk/bindings/octave/plplot_octave.i
   M /trunk/bindings/swig-support/plplotcapi.i
   M /trunk/examples/octave/x16c.m
   M /trunk/examples/octave/x33c.m

Update octave bindings and examples 16 and 33 to use the latest plcolorbar API.


------------------------------------------------------------------------
r12352 | airwin | 2013-06-02 12:56:22 -0700 (Sun, 02 Jun 2013) | 16 lines
Changed paths:
   A /trunk/cmake/build_projects/download_check.cmake

Initial version of "build projects" project which configures a build
of shapelib with no issues on either Linux or MinGW/MSYS/Wine and
which also
includes an initial version of the build configuration for ndiff which
needs to be updated to be consistent with the style used for shapelib.

These files currently configured to refer to local tarballs or zip
files on my system to avoid exessive downloads while debugging these
configurations, but these should be changed to the download versions
as soon as these configurations mature a bit to the point where others
will want to use them.

Forgot to svn add and commit this essential file for this initial
version.


------------------------------------------------------------------------
r12351 | airwin | 2013-06-02 01:48:42 -0700 (Sun, 02 Jun 2013) | 12 lines
Changed paths:
   A /trunk/cmake/build_projects/CMakeLists.txt
   A /trunk/cmake/build_projects/ndiff/ep.cmake
   A /trunk/cmake/build_projects/shapelib/ep.cmake

Initial version of "build projects" project which configures a build
of shapelib with no issues on either Linux or MinGW/MSYS/Wine and which also
includes an initial version of the build configuration for ndiff which
needs to be updated to be consistent with the style used for shapelib.

These files currently configured to refer to local tarballs or zip
files on my system to avoid exessive downloads while debugging these
configurations, but these should be changed to the download versions
as soon as these configurations mature a bit to the point where others
will want to use them.


------------------------------------------------------------------------
r12350 | airwin | 2013-06-02 01:40:45 -0700 (Sun, 02 Jun 2013) | 13 lines
Changed paths:
   A /trunk/cmake/build_projects/ExternalProject.cmake

This is the ExternalProject.cmake file from CMake2.8.10.2 with all
instances of cmake -E touch changed to touch.  This is a stopgap
workaround to CMake bug http://www.cmake.org/Bug/view.php?id=14020
where cmake uses a doubly deprecated method of updating the
modification times of files to the nearest truncated second.
This one-second errors in the modification times for timestamp
files used for ExternalProject can wreak havoc with make decisions
about updating files, and replacing cmake -E touch with touch
in ExternalProject.cmake fixes this issue.  But this file
should be deleted and the CMake version of ExternalProject.cmake
used just as soon as there is a bug fix for CMake bug 14020
which propagates to a release.

------------------------------------------------------------------------
r12349 | airwin | 2013-06-02 01:23:41 -0700 (Sun, 02 Jun 2013) | 5 lines
Changed paths:
   A /trunk/cmake/build_projects (from /trunk/cmake/external:12348)
   D /trunk/cmake/external

Rename cmake/external to cmake/build_projects in anticipation that this
area will be used for the "build projects" project as discussed recently on
list.


------------------------------------------------------------------------
r12348 | andrewross | 2013-05-22 15:46:35 -0700 (Wed, 22 May 2013) | 5 lines
Changed paths:
   M /trunk/bindings/java/PLStream.java
   M /trunk/bindings/java/plplotjavac.i
   M /trunk/examples/java/x16.java
   M /trunk/examples/java/x33.java

Update java bindings to support plcolorbar. 

Update example 16 and 33 consistent with the C versions.


------------------------------------------------------------------------
r12347 | andrewross | 2013-05-22 15:44:41 -0700 (Wed, 22 May 2013) | 5 lines
Changed paths:
   M /trunk/bindings/python/plplotcmodule.i
   M /trunk/bindings/swig-support/plplotcapi.i
   M /trunk/examples/python/xw16.py
   M /trunk/examples/python/xw33.py

Update python bindings to support plcolorbar.

Update example 16 and 33 consistent with the C versions to use this.


------------------------------------------------------------------------
r12346 | andrewross | 2013-05-22 15:41:41 -0700 (Wed, 22 May 2013) | 3 lines
Changed paths:
   M /trunk/examples/c/x16c.c

Change constant to make it clear contour width is a PLFLT.


------------------------------------------------------------------------
r12345 | andrewross | 2013-05-22 15:40:57 -0700 (Wed, 22 May 2013) | 3 lines
Changed paths:
   M /trunk/examples/c/x33c.c

Enable colorbar tests in example 33 by default.


------------------------------------------------------------------------
r12344 | andrewross | 2013-05-22 15:39:26 -0700 (Wed, 22 May 2013) | 7 lines
Changed paths:
   M /trunk/bindings/c++/plstream.cc
   M /trunk/bindings/c++/plstream.h
   M /trunk/examples/c++/x33.cc

Update arguments to plcolorbar in C++ bindings.

Add in plscmap1_range / plgcmap1_range support for C++.

Update C++ version of example 33 to mirror the C version.


------------------------------------------------------------------------
r12343 | andrewross | 2013-05-22 15:35:01 -0700 (Wed, 22 May 2013) | 3 lines
Changed paths:
   M /trunk/include/plplot.h
   M /trunk/src/pllegend.c

Update plcolorbar arrays to use the const modifier consistent with other API functions.


------------------------------------------------------------------------
r12342 | airwin | 2013-05-22 12:04:49 -0700 (Wed, 22 May 2013) | 2 lines
Changed paths:
   M /trunk/cmake/external/shapelib/CMakeLists.txt

Improve output messages for external shapelib CMake-based build system.

------------------------------------------------------------------------
r12341 | andrewross | 2013-05-10 15:21:33 -0700 (Fri, 10 May 2013) | 3 lines
Changed paths:
   M /trunk/README.release

Update release notes with details on the dropping of python Numeric support and on changes to allow non-integer line widths.


------------------------------------------------------------------------
r12340 | andrewross | 2013-05-10 15:12:04 -0700 (Fri, 10 May 2013) | 5 lines
Changed paths:
   M /trunk/bindings/python/CMakeLists.txt
   A /trunk/bindings/python/plplot.py (from /trunk/bindings/python/plplot.py.numpy:12335)
   D /trunk/bindings/python/plplot.py.Numeric
   D /trunk/bindings/python/plplot.py.numpy
   M /trunk/bindings/python/plplot_widgetmodule.c
   M /trunk/bindings/python/plplotcmodule.i
   M /trunk/cmake/modules/gcw.cmake
   M /trunk/cmake/modules/python.cmake
   M /trunk/examples/python/CMakeLists.txt
   A /trunk/examples/python/plplot_py_demos.py (from /trunk/examples/python/plplot_py_demos.py.numpy:12335)
   D /trunk/examples/python/plplot_py_demos.py.numeric
   D /trunk/examples/python/plplot_py_demos.py.numpy
   M /trunk/examples/python/xw01.py
   M /trunk/examples/python/xw09.py
   M /trunk/examples/python/xw14.py
   M /trunk/examples/python/xw20.py

Remove the long deprecated support for the python Numeric package. The python bindings now require numpy. 

Update bindings to remove deprecated numpy syntax and hence remove compile warnings.


------------------------------------------------------------------------
r12339 | andrewross | 2013-05-10 13:32:28 -0700 (Fri, 10 May 2013) | 3 lines
Changed paths:
   M /trunk/cmake/modules/ada.cmake

Re-enable ada bindings now plshade / pllegend updates have been made.


------------------------------------------------------------------------
r12338 | andrewross | 2013-05-10 13:29:46 -0700 (Fri, 10 May 2013) | 3 lines
Changed paths:
   M /trunk/bindings/c++/plstream.cc
   M /trunk/bindings/c++/plstream.h
   M /trunk/examples/c++/x15.cc
   M /trunk/examples/c++/x16.cc
   M /trunk/examples/c++/x21.cc

Fix up C++ bindings so the line width arguments in the various plshade* functions are PLFLT not PLINT.


------------------------------------------------------------------------
r12337 | andrewross | 2013-05-10 13:16:29 -0700 (Fri, 10 May 2013) | 3 lines
Changed paths:
   M /trunk/bindings/ada/plplot.adb
   M /trunk/bindings/ada/plplot.ads
   M /trunk/bindings/ada/plplot_thin.ads
   M /trunk/bindings/ada/plplot_traditional.adb
   M /trunk/bindings/ada/plplot_traditional.ads
   M /trunk/examples/ada/x04a.adb
   M /trunk/examples/ada/x15a.adb
   M /trunk/examples/ada/x16a.adb
   M /trunk/examples/ada/x21a.adb
   M /trunk/examples/ada/x26a.adb
   M /trunk/examples/ada/x33a.adb
   M /trunk/examples/ada/xthick04a.adb
   M /trunk/examples/ada/xthick15a.adb
   M /trunk/examples/ada/xthick16a.adb
   M /trunk/examples/ada/xthick21a.adb
   M /trunk/examples/ada/xthick26a.adb
   M /trunk/examples/ada/xthick33a.adb

Update Ada bindings to change line width arguments from Integer to Long_Float in pllegend and plshade.


------------------------------------------------------------------------
r12336 | andrewross | 2013-05-10 12:01:13 -0700 (Fri, 10 May 2013) | 3 lines
Changed paths:
   M /trunk/bindings/c++/plstream.cc
   M /trunk/bindings/c++/plstream.h
   M /trunk/cmake/modules/c++.cmake
   M /trunk/examples/c++/x04.cc
   M /trunk/examples/c++/x26.cc
   M /trunk/examples/c++/x33.cc

Update C++ bindings for changes to pllegend line width arguments from PLINT to PLFLT.


------------------------------------------------------------------------
r12335 | airwin | 2013-05-04 10:18:54 -0700 (Sat, 04 May 2013) | 4 lines
Changed paths:
   M /trunk/bindings/qt_gui/pyqt4/plplot_pyqt4.sip

Change use of %Module directive to form documented at
http://pyqt.sourceforge.net/Docs/sip4/directives.html#directive-%25Module
to get rid of deprecation warning message.

------------------------------------------------------------------------
r12334 | airwin | 2013-05-04 09:43:33 -0700 (Sat, 04 May 2013) | 19 lines
Changed paths:
   M /trunk/bindings/gnome2/lib/gcw-lib.c
   M /trunk/bindings/wxwidgets/wxPLplotstream.cpp
   M /trunk/bindings/wxwidgets/wxPLplotstream.h.in
   M /trunk/cmake/modules/freetype.cmake
   M /trunk/cmake/modules/summary.cmake
   M /trunk/config.h.cmake
   M /trunk/doc/docbook/src/advanced.xml
   M /trunk/drivers/gcw.c
   M /trunk/drivers/gd.c
   M /trunk/drivers/wingcc.c
   M /trunk/drivers/wxwidgets.cpp
   M /trunk/drivers/wxwidgets.h
   M /trunk/drivers/wxwidgets_agg.cpp
   M /trunk/drivers/wxwidgets_dc.cpp
   M /trunk/drivers/wxwidgets_gc.cpp
   M /trunk/include/plfreetype.h
   M /trunk/include/plplotP.h
   M /trunk/src/plfreetype.c

Solve name clash with HAVE_FREETYPE defined in octave headers by
renaming the PLplot version PL_HAVE_FREETYPE.  This change should
be complete because it was done using a combination of find on
the whole source tree and sed, i.e., using the command

for FILE in $(find -type f |grep -v .svn |xargs grep -l HAVE_FREETYPE); do 
  echo $FILE
  sed -e "s?HAVE_FREETYPE?PL_HAVE_FREETYPE?g" <$FILE >| /tmp/test_software
  \mv /tmp/test_software $FILE
done

One tab was changed afterwards by hand in the output for
cmake/modules/summary.cmake, but otherwise visual inspection
of these changes showed no issues with this find/sed approach
to implement this wholesale change.

Tested by: Alan W. Irwin <airwin@users.sourceforge.net> using the
test_interactive target.

------------------------------------------------------------------------
r12333 | airwin | 2013-05-04 09:35:59 -0700 (Sat, 04 May 2013) | 2 lines
Changed paths:
   M /trunk/examples/java/x16.java
   M /trunk/examples/java/x26.java

Style previous commit.

------------------------------------------------------------------------
r12332 | airwin | 2013-05-04 09:16:57 -0700 (Sat, 04 May 2013) | 12 lines
Changed paths:
   M /trunk/bindings/wxwidgets/CMakeLists.txt

This fix corrects a "make install" build bug (cannot find the
libplplotcxx library required by libplplotwxwidgets) for the current
unusual case when the C++ bindings are disabled by default.  The fix
is to disable the libplplotwxwidgets build when the C++ bindings are
not enabled.

I thought it was unusual that libplplotwxwidgets depended on
libplplotcxx rather than libplplot, but I double-checked the code and
it includes plstream.h so that dependence (as indicated all along by
the target_link_libraries command) is correct.


------------------------------------------------------------------------
r12331 | airwin | 2013-05-02 19:41:21 -0700 (Thu, 02 May 2013) | 5 lines
Changed paths:
   M /trunk/cmake/modules/lua.cmake
   M /trunk/examples/lua/x04.lua
   M /trunk/examples/lua/x15.lua
   M /trunk/examples/lua/x16.lua
   M /trunk/examples/lua/x21.lua
   M /trunk/examples/lua/x26.lua
   M /trunk/examples/lua/x33.lua

Adjust Lua bindings and examples for backwards-incompatible
C API change from PLINT to PLFLT type for line-width related
arguments of plshade* and pllegend.


------------------------------------------------------------------------
r12330 | airwin | 2013-05-02 19:02:05 -0700 (Thu, 02 May 2013) | 5 lines
Changed paths:
   M /trunk/cmake/modules/octave.cmake
   M /trunk/examples/octave/x04c.m
   M /trunk/examples/octave/x15c.m
   M /trunk/examples/octave/x16c.m
   M /trunk/examples/octave/x21c.m
   M /trunk/examples/octave/x26c.m
   M /trunk/examples/octave/x33c.m

Adjust Octave bindings and examples for backwards-incompatible
C API change from PLINT to PLFLT type for line-width related
arguments of plshade* and pllegend.


------------------------------------------------------------------------
r12329 | airwin | 2013-05-02 15:44:50 -0700 (Thu, 02 May 2013) | 5 lines
Changed paths:
   M /trunk/bindings/java/PLStream.java
   M /trunk/cmake/modules/java.cmake
   M /trunk/examples/java/x04.java
   M /trunk/examples/java/x15.java
   M /trunk/examples/java/x16.java
   M /trunk/examples/java/x21.java
   M /trunk/examples/java/x26.java
   M /trunk/examples/java/x33.java

Adjust java bindings and examples for backwards-incompatible
C API change from PLINT to PLFLT type for line-width related
arguments of plshade* and pllegend.


------------------------------------------------------------------------
r12328 | airwin | 2013-05-02 14:56:16 -0700 (Thu, 02 May 2013) | 5 lines
Changed paths:
   M /trunk/bindings/swig-support/swig_documentation.i

Regenerate swig documentation using the results of the
check_swig_documentation target which regenerates that documentation
based on the latest version of the api.xml DocBook documentation.


------------------------------------------------------------------------
r12327 | airwin | 2013-05-02 14:50:40 -0700 (Thu, 02 May 2013) | 3 lines
Changed paths:
   M /trunk/doc/docbook/src/api.xml

Minor update of plshade* documentation changing all width parameters
from PLINT to PLFLT in accordance with recent code change.

------------------------------------------------------------------------
r12326 | airwin | 2013-05-02 12:23:21 -0700 (Thu, 02 May 2013) | 9 lines
Changed paths:
   M /trunk/doc/docbook/src/api.xml

Substantial update of pllegend argument documentation to be consistent
with order/type of pllegend arguments in code base.  This update
corrected the order of the opt and position arguments, the type of the
width arguments which was recently changed to PLFLT, the documentation
of box_line_widths which was completely wrong (taken from another
argument) before, and the redacted form (which was substantially
outdated before).


------------------------------------------------------------------------
r12325 | airwin | 2013-05-02 10:52:35 -0700 (Thu, 02 May 2013) | 2 lines
Changed paths:
   M /trunk/bindings/tcl/tclAPI.c

Style previous change.

------------------------------------------------------------------------
r12324 | airwin | 2013-05-02 10:51:13 -0700 (Thu, 02 May 2013) | 4 lines
Changed paths:
   M /trunk/examples/c/x21c.c

C examples are the paradigm for the examples implemented for other
languages so change the plshades call in example 21 to use
the correct type for the width arguments.

------------------------------------------------------------------------
r12323 | airwin | 2013-05-02 10:41:54 -0700 (Thu, 02 May 2013) | 10 lines
Changed paths:
   M /trunk/bindings/python/plplot.py.numpy
   M /trunk/bindings/swig-support/plplotcapi.i
   M /trunk/cmake/modules/python.cmake
   M /trunk/examples/python/xw04.py
   M /trunk/examples/python/xw15.py
   M /trunk/examples/python/xw16.py
   M /trunk/examples/python/xw21.py
   M /trunk/examples/python/xw26.py
   M /trunk/examples/python/xw33.py

Adjust python/numpy bindings and examples for backwards-incompatible
C API change from PLINT to PLFLT type for line-width related
arguments of plshade* and pllegend.

N.B. Few modern Linux distros support Numeric any more because Numeric
development was stopped in favour of numpy in 2005.  Therefore, I did
not update the python/Numeric variant of our bindings here because
that change would have been impossible for me to test.


------------------------------------------------------------------------
r12322 | arjenmarkus | 2013-05-02 03:25:42 -0700 (Thu, 02 May 2013) | 2 lines
Changed paths:
   M /trunk/bindings/tcl/plapi.tpl
   M /trunk/bindings/tcl/tclAPI.c
   M /trunk/cmake/modules/tcl-related.cmake
   M /trunk/examples/tcl/x04.tcl
   M /trunk/examples/tcl/x15.tcl
   M /trunk/examples/tcl/x16.tcl
   M /trunk/examples/tcl/x21.tcl
   M /trunk/examples/tcl/x26.tcl
   M /trunk/examples/tcl/x33.tcl

Propagate the changes in the API to Tcl and Tcl-related bindings. Enabling
these bindings by default.
------------------------------------------------------------------------
r12321 | arjenmarkus | 2013-05-01 18:24:58 -0700 (Wed, 01 May 2013) | 2 lines
Changed paths:
   M /trunk/cmake/modules/fortran.cmake

Restore the default enabling for Fortran as the changes in the API have been
propagated.
------------------------------------------------------------------------
r12320 | arjenmarkus | 2013-05-01 18:20:31 -0700 (Wed, 01 May 2013) | 3 lines
Changed paths:
   M /trunk/bindings/f95/sccont.c
   M /trunk/bindings/f95/scstubs.c
   M /trunk/bindings/f95/sfstubs.f90
   M /trunk/bindings/f95/sfstubsf95.f90
   M /trunk/examples/f95/x04f.f90
   M /trunk/examples/f95/x15f.f90
   M /trunk/examples/f95/x16af.f90
   M /trunk/examples/f95/x16f.f90
   M /trunk/examples/f95/x21f.f90
   M /trunk/examples/f95/x26f.f90
   M /trunk/examples/f95/x33f.f90

Propagate the API changes to pllegend and plshade(s) to the Fortran bindings.
The examples that are affected produce the same PostScript files as their
C equivalents - excepting x16 because of the colour bars.
------------------------------------------------------------------------
r12319 | airwin | 2013-05-01 14:51:24 -0700 (Wed, 01 May 2013) | 5 lines
Changed paths:
   M /trunk/examples/c/x04c.c
   M /trunk/examples/c/x15c.c
   M /trunk/examples/c/x16c.c
   M /trunk/examples/c/x26c.c
   M /trunk/examples/c/x33c.c

C examples are a paradigm for the examples associated with other
languages so convert all line_width types and values to PLFLT's to
follow what has been done recently for the plshades*, pllegend, and
(still experimental) plcolorbar API.

------------------------------------------------------------------------
r12318 | airwin | 2013-05-01 14:44:17 -0700 (Wed, 01 May 2013) | 2 lines
Changed paths:
   M /trunk/src/pllegend.c

Fix pllegend issue when non-integral line width values are specified.

------------------------------------------------------------------------
r12317 | airwin | 2013-05-01 12:54:31 -0700 (Wed, 01 May 2013) | 2 lines
Changed paths:
   M /trunk/bindings/ocaml/plplot_impl.c

Style previous changes.

------------------------------------------------------------------------
r12316 | hezekiahcarty | 2013-05-01 02:54:34 -0700 (Wed, 01 May 2013) | 1 line
Changed paths:
   M /trunk/bindings/ocaml/plplot.ml
   M /trunk/bindings/ocaml/plplot.mli

Use a polymorphic variant when specifying axis types as well (OCaml)
------------------------------------------------------------------------
r12315 | hezekiahcarty | 2013-05-01 02:37:59 -0700 (Wed, 01 May 2013) | 3 lines
Changed paths:
   M /trunk/bindings/ocaml/plplot.ml
   M /trunk/bindings/ocaml/plplot.mli
   M /trunk/examples/ocaml/xplot01.ml

Use polymorphic variants for externally accessible options in the OCaml API

This should clean up the API a bit for OCaml users.
------------------------------------------------------------------------
r12314 | airwin | 2013-04-30 21:14:20 -0700 (Tue, 30 Apr 2013) | 16 lines
Changed paths:
   M /trunk/cmake/modules/ada.cmake
   M /trunk/cmake/modules/c++.cmake
   M /trunk/cmake/modules/d.cmake
   M /trunk/cmake/modules/fortran.cmake
   M /trunk/cmake/modules/java.cmake
   M /trunk/cmake/modules/lua.cmake
   M /trunk/cmake/modules/octave.cmake
   M /trunk/cmake/modules/pdl.cmake
   M /trunk/cmake/modules/python.cmake
   M /trunk/cmake/modules/tcl-related.cmake

Disable all bindings but ocaml by default to eliminate build breakage
caused by recent C API breakage when the user chooses the default
bindings.

To enable these bindings again by default for their language of
choice, the interested developer should propagate the recent integer
==> double line width changes in the C API for pl*shade*, pllegend,
and plcolorbar to their bindings of choice, make the appropriate
changes in examples 4, 16, 26, and 33 to use the changed API, and test
the result (at least by running the test_noninteractive target) with
the language specifically enabled, e.g., with the -DENABLE_python=ON
option.  If that testing works, then the final step is to enable the
language by default again, and commit your changes.



------------------------------------------------------------------------
r12313 | hezekiahcarty | 2013-04-30 18:12:18 -0700 (Tue, 30 Apr 2013) | 4 lines
Changed paths:
   M /trunk/bindings/ocaml/plplot.ml
   M /trunk/bindings/ocaml/plplot.mli
   M /trunk/bindings/ocaml/plplot_core.idl
   M /trunk/bindings/ocaml/plplot_h
   M /trunk/bindings/ocaml/plplot_impl.c
   M /trunk/examples/ocaml/x04.ml
   M /trunk/examples/ocaml/x15.ml
   M /trunk/examples/ocaml/x16.ml
   M /trunk/examples/ocaml/x21.ml
   M /trunk/examples/ocaml/x26.ml
   M /trunk/examples/ocaml/x33.ml

Propagate floating point line width API changes to the OCaml bindings

Clean output comparison vs C on my system except for the colorbar
additions to example 16 which have not been added to the OCaml version yet.
------------------------------------------------------------------------
r12312 | hezekiahcarty | 2013-04-30 18:11:41 -0700 (Tue, 30 Apr 2013) | 7 lines
Changed paths:
   M /trunk/examples/c/x04c.c
   M /trunk/examples/c/x26c.c
   M /trunk/examples/c/x33c.c
   M /trunk/include/plplot.h
   M /trunk/include/plplotP.h
   M /trunk/src/plbox.c
   M /trunk/src/pllegend.c
   M /trunk/src/plot3d.c
   M /trunk/src/plshade.c

Propagate line width changes through C API

This should cover pllegend, plcolorbar and the plshade functions in the C
API.  Affected examples (4, 26, 33) have been updated as well.

These changes still need to be propagated to the full suite of language
bindings.
------------------------------------------------------------------------
r12311 | airwin | 2013-04-29 21:52:56 -0700 (Mon, 29 Apr 2013) | 4 lines
Changed paths:
   M /trunk/drivers/cairo.c

Follow suggestion from Hǎiliàng Wang <hwang.dev@gmail.com> to use the
user-specified line width for fills rather than the hard-coded width
value of 1.0 that was used previously.

------------------------------------------------------------------------
r12310 | hezekiahcarty | 2013-04-28 10:37:01 -0700 (Sun, 28 Apr 2013) | 3 lines
Changed paths:
   M /trunk/bindings/ocaml/CMakeLists.txt
   M /trunk/cmake/modules/ocaml.cmake

Add support for camlidl (and therefore OCaml) installed via opam

This requires findlib which most OCaml users should have.
------------------------------------------------------------------------
r12309 | airwin | 2013-04-26 15:43:53 -0700 (Fri, 26 Apr 2013) | 28 lines
Changed paths:
   M /trunk/src/CMakeLists.txt

This fix puts the location (in -L, -l form) of the C++ library
associated with the C++ compiler in the list of library options
contained in the plplotd.pc file configured and installed by our build
system for the case where BUILD_SHARED_LIBS is not true.  For that
unique case alone, the plplotd library turns into a static C++ library
because of the C++ device driver code that is compiled into that
library, and the traditional (i.e., using "make" and pkg-config) build
of the installed examples fails without this fix to the configured
plplotd.pc file.

There are some caveats for this logic.

* The find_library CMake logic assumes the name of the library is
  "stdc++". That is certainly the correct name on Linux.  Other names
  could be added if some other kinds of systems have a different name
  for that library.

* The find_library logic uses PATHS which are determined by parsing
  the results of c++ --verbose --version.  That parsing should only work
  for the extremely specific --verbose --version output of the GCC C++
  compiler, but that is a pretty important case, and I am glad to get
  the traditional build of the installed examples to work again for
  that compiler for the static PLplot library case.

Others should feel free to generalize this logic to different
names for the C++ library and other C++ compilers.


------------------------------------------------------------------------
r12308 | arjenmarkus | 2013-04-26 03:02:06 -0700 (Fri, 26 Apr 2013) | 1 line
Changed paths:
   M /trunk/bindings/tk/plserver.c

Use an explicit cast to solve the const-ness mismatch in the call to Tcl_SetResult.
------------------------------------------------------------------------
r12307 | airwin | 2013-04-24 14:24:15 -0700 (Wed, 24 Apr 2013) | 2 lines
Changed paths:
   M /trunk/examples/ada/Makefile.examples.in

Fix typo (no xthick01) introduced in last commit.

------------------------------------------------------------------------
r12306 | airwin | 2013-04-24 13:36:28 -0700 (Wed, 24 Apr 2013) | 3 lines
Changed paths:
   M /trunk/examples/ada/Makefile.examples.in
   M /trunk/examples/c++/Makefile.examples.in
   M /trunk/examples/d/Makefile.examples.in
   M /trunk/examples/f77/Makefile.examples.in
   M /trunk/examples/java/Makefile.examples.in
   M /trunk/examples/ocaml/Makefile.examples.in

Add required build of example x00 for the traditional build-tree tests
for several different bindings.

------------------------------------------------------------------------
r12305 | airwin | 2013-04-24 13:13:55 -0700 (Wed, 24 Apr 2013) | 3 lines
Changed paths:
   M /trunk/examples/plplot_configure.cmake_installed_examples.in

Pass USE_RPATH to build system for installed examples since that
variable is required in order to do the OCaml examples build.

------------------------------------------------------------------------
r12304 | airwin | 2013-04-10 11:55:10 -0700 (Wed, 10 Apr 2013) | 3 lines
Changed paths:
   M /trunk/bindings/wxwidgets/CMakeLists.txt

Pay attention to the wxwidgets compile flags when compiling the
wxwidgets bindings.

------------------------------------------------------------------------
r12303 | jbauck | 2013-04-02 23:56:03 -0700 (Tue, 02 Apr 2013) | 1 line
Changed paths:
   M /trunk/bindings/ada/plplot.adb
   M /trunk/bindings/ada/plplot_traditional.adb

Add checks for compatible lengths in the x, y, and z arrays in Simple_Mesh_3D and Simple_Surface_3D. If they are found to be not compatible, a warning is issued but execution continues even though the plot will probably be nonsense.
------------------------------------------------------------------------
r12302 | airwin | 2013-03-28 17:05:43 -0700 (Thu, 28 Mar 2013) | 10 lines
Changed paths:
   M /trunk/src/plbox.c

AWI commit of patch from Mark de Wever <m.de.wever@datawell.nl>
to check plsc->label_func for NULL where appropriate.  I also
added a one-line comment change.

Tested by: Alan W. Irwin <airwin@users.sourceforge.net>.  This was a
light test demonstrating the PLplot library and example 19 continued
to build without issues, and by demonstrating that running example 19
with the ps device under valgrind provided valgrind-clean results.


------------------------------------------------------------------------
r12301 | jbauck | 2013-03-19 23:24:58 -0700 (Tue, 19 Mar 2013) | 1 line
Changed paths:
   M /trunk/bindings/ada/plplot.adb
   M /trunk/bindings/ada/plplot.ads
   M /trunk/bindings/ada/plplot_traditional.adb
   M /trunk/bindings/ada/plplot_traditional.ads

Add Quick_Plot functions for plotting several y-data arrays without requiring an x array; x is determined from the indices of the first y array.
------------------------------------------------------------------------
r12300 | jbauck | 2013-03-19 17:49:49 -0700 (Tue, 19 Mar 2013) | 1 line
Changed paths:
   M /trunk/bindings/ada/plplot.ads
   M /trunk/bindings/ada/plplot_traditional.adb
   M /trunk/bindings/ada/plplot_traditional.ads
   M /trunk/examples/ada/x01a.adb
   M /trunk/examples/ada/x02a.adb
   M /trunk/examples/ada/xthick01a.adb
   M /trunk/examples/ada/xthick02a.adb

Convert line width types that were Integer to Long_Float (second attempt to commit all the changed files).
------------------------------------------------------------------------
r12299 | jbauck | 2013-03-19 17:33:32 -0700 (Tue, 19 Mar 2013) | 1 line
Changed paths:
   M /trunk/bindings/ada/plplot.adb

Convert line width types that were Integer to Long_Float.
------------------------------------------------------------------------
r12298 | hezekiahcarty | 2013-03-14 20:14:39 -0700 (Thu, 14 Mar 2013) | 4 lines
Changed paths:
   M /trunk/bindings/ocaml/plplot.ml
   M /trunk/bindings/ocaml/plplot.mli
   M /trunk/bindings/ocaml/plplot_core.idl
   M /trunk/bindings/ocaml/plplot_h
   M /trunk/bindings/ocaml/plplot_h.inc
   M /trunk/bindings/ocaml/plplot_impl.c
   M /trunk/bindings/ocaml/touchup.ml
   M /trunk/examples/ocaml/x01.ml
   M /trunk/examples/ocaml/x02.ml
   M /trunk/examples/ocaml/xplot01.ml

Bring OCaml bindings mostly up to date

Example 16 still needs to be updated to match it's C counterpart.

------------------------------------------------------------------------
r12297 | airwin | 2013-03-14 13:45:30 -0700 (Thu, 14 Mar 2013) | 12 lines
Changed paths:
   M /trunk/scripts/compare_svn_repos

Implement logic (needed for the FreeEOS repo comparisons) to detect
broken symlinks and exclude them from the diff checks.

Replace pushd/popd logic by the appropriate cd commands
to quiet output from this script.

Other minor logic tweaks.

Tested by: Alan W. Irwin <airwin@users.sourceforge.net> for
pre-Allura and Allura svn repo comparisons for 5 different projects.


------------------------------------------------------------------------
r12296 | airwin | 2013-03-13 20:00:43 -0700 (Wed, 13 Mar 2013) | 11 lines
Changed paths:
   A /trunk/scripts/compare_svn_repos

Initial commit of a useful bash script to do detailed comparisons of
results from two different file:// svn repos.

This script has already confirmed identical latest results, identical
log files, and identical results for a substantial sample of
historical revisions for the pre_Allura and Allura versions of the
lasi (libLASi) repos.  It will also be used for a number of other
projects culminating in checking the PLplot svn repos once they
are converted to Allura.


------------------------------------------------------------------------
r12295 | airwin | 2013-03-12 19:24:09 -0700 (Tue, 12 Mar 2013) | 7 lines
Changed paths:
   M /trunk/cmake/modules/plplot.cmake

Implement experimental STATIC_RUNTIME option to allow users of
Microsoft C and C++ compilers to specify a static runtime.  MinGW is
specifically excluded because that set of compilers apparently does
not support a static runtime according to
http://lists-archives.com/mingw-users/00126-mingw-msvc-md-mt-ml.html.


------------------------------------------------------------------------
r12294 | airwin | 2013-03-04 08:29:16 -0800 (Mon, 04 Mar 2013) | 4 lines
Changed paths:
   M /trunk/drivers/test-drv-info.c

Change all returns to exits.  As expected this has no effect
since return and exit should give the same results for main routines.
But, nevertheless, using exit is a bit clearer as to intent.

------------------------------------------------------------------------
r12293 | airwin | 2013-02-26 11:25:33 -0800 (Tue, 26 Feb 2013) | 9 lines
Changed paths:
   M /trunk/bindings/qt_gui/plqt.cpp

Drop processing mouse release and mouse move events, i.e., only
process mouse press events. This fixed a qt device driver bug where
clicking the right mouse key was processed twice (once with mouse
press and once with mouse release) which lead to anomalous behaviour
for multi-paged plots where instead of moving to the next page, it
would move to the next and then immediately to the next (or exit if
run out of pages).


------------------------------------------------------------------------
r12292 | airwin | 2013-02-16 10:48:18 -0800 (Sat, 16 Feb 2013) | 11 lines
Changed paths:
   M /trunk/drivers/svg.c

AWI commit of patch from Joseph Wang <joequant@gmail.com> followed by
styling.  Move transform and clipping information into the text
element itself.  This makes the resulting files more compact.
For plots with a lot of text (e.g., symbol plots) this can
save up to a factor of two in the resulting size.

Tested by: Alan W. Irwin <airwin@users.sourceforge.net> using the
test_c_svg target (which showed no obvious errors) and visually
comparing results between the old svg code and the current code.


------------------------------------------------------------------------
r12291 | airwin | 2013-01-30 02:38:41 -0800 (Wed, 30 Jan 2013) | 9 lines
Changed paths:
   M /trunk/drivers/svg.c

Fix bug in svg device driver introduced by recent floating-point
width change.

-width has no effect on this device driver (for unknown reasons) so
I tested this svg change using a call to plwidth(0.2) after plot initialization, and
that gave good thin-line results.



------------------------------------------------------------------------
r12290 | airwin | 2013-01-30 00:25:49 -0800 (Wed, 30 Jan 2013) | 5 lines
Changed paths:
   M /trunk/include/plplot.h
   M /trunk/src/pldeprecated.c

Implement plwid in pldeprecated.c.  This gives backwards compatibility
(at least for one release cycle) for plwid calls from users, but only
if they specify -DPL_DEPRECATED=ON.


------------------------------------------------------------------------
r12289 | airwin | 2013-01-30 00:05:39 -0800 (Wed, 30 Jan 2013) | 11 lines
Changed paths:
   M /trunk/bindings/qt_gui/plqt.cpp
   M /trunk/drivers/qt.cpp
   M /trunk/include/qt.h

Move to floating point pen width for qt devices.  This appears to work
now since calling plwidth(0.01); in example 1 yields extremely thin line results
for a number of different qt devices.

During the course of the testing I found a qt device driver issue
which is the -width option (even -width 100.) appears to have no
effect on line width except to make it fixed at unity. I could not
figure out the cause of this issue.  (Which is why I did my testing by
calling plwidth explicitly from example 1).


------------------------------------------------------------------------
r12288 | airwin | 2013-01-29 20:40:35 -0800 (Tue, 29 Jan 2013) | 13 lines
Changed paths:
   M /trunk/bindings/ada/plplot.adb
   M /trunk/bindings/ada/plplot.ads
   M /trunk/bindings/ada/plplot_thin.ads
   M /trunk/bindings/ada/plplot_traditional.adb
   M /trunk/bindings/ada/plplot_traditional.ads
   M /trunk/bindings/c++/plstream.cc
   M /trunk/bindings/c++/plstream.h
   M /trunk/bindings/d/plplot.d
   M /trunk/bindings/f77/plstubs.h
   M /trunk/bindings/f77/scstubs.c
   M /trunk/bindings/f95/plstubs.h
   M /trunk/bindings/f95/scstubs.c
   M /trunk/bindings/f95/sfstubsf95.f90
   M /trunk/bindings/gnome2/lib/plplotcanvas.c
   M /trunk/bindings/java/PLStream.java
   M /trunk/bindings/lua/plplotluac.i
   M /trunk/bindings/ocaml/plplot.ml
   M /trunk/bindings/ocaml/plplot.mli
   M /trunk/bindings/ocaml/plplot_core.idl
   M /trunk/bindings/ocaml/plplot_h
   M /trunk/bindings/ocaml/plplot_h.inc
   M /trunk/bindings/ocaml/plplot_impl.c
   M /trunk/bindings/octave/etc/plplot.doc
   M /trunk/bindings/octave/plplot_octave.h.in
   M /trunk/bindings/swig-support/plplotcapi.i
   M /trunk/bindings/tcl/plapi.tpl
   M /trunk/bindings/tk/PLWin.itk
   M /trunk/bindings/tk/plr.c
   M /trunk/doc/docbook/src/advanced.xml
   M /trunk/doc/docbook/src/api.xml
   M /trunk/doc/docbook/src/plplotdoc.xml.in
   M /trunk/drivers/cairo.c
   M /trunk/examples/ada/x01a.adb
   M /trunk/examples/ada/x02a.adb
   M /trunk/examples/c/x01c.c
   M /trunk/examples/c/x02c.c
   M /trunk/examples/c++/qt_PlotWindow.cpp
   M /trunk/examples/c++/wxPLplotDemo.cpp
   M /trunk/examples/c++/x01.cc
   M /trunk/examples/c++/x02.cc
   M /trunk/examples/d/x01d.d
   M /trunk/examples/d/x02d.d
   M /trunk/examples/f77/x01f.fm4
   M /trunk/examples/f77/x02f.fm4
   M /trunk/examples/f95/x01f.f90
   M /trunk/examples/f95/x02f.f90
   M /trunk/examples/java/x01.java
   M /trunk/examples/java/x02.java
   M /trunk/examples/lua/x01.lua
   M /trunk/examples/lua/x02.lua
   M /trunk/examples/ocaml/x01.ml
   M /trunk/examples/ocaml/x02.ml
   M /trunk/examples/octave/x01c.m
   M /trunk/examples/octave/x02c.m
   M /trunk/examples/perl/x01.pl
   M /trunk/examples/perl/x02.pl
   M /trunk/examples/python/plplot_logo.py
   M /trunk/examples/python/pyqt4_example.py
   M /trunk/examples/python/x02.py
   M /trunk/examples/python/xw01.py
   M /trunk/examples/python/xw02.py
   M /trunk/examples/tcl/x01.tcl
   M /trunk/examples/tcl/x02.tcl
   M /trunk/include/plplot.h
   M /trunk/include/plstrm.h
   M /trunk/src/plargs.c
   M /trunk/src/plcore.c
   M /trunk/src/pllegend.c
   M /trunk/src/plot3d.c
   M /trunk/src/plshade.c
   M /trunk/sys/win-tk/tclgen.c
   M /trunk/sys/win-tk/tclgen.h
   M /trunk/sys/win-tk/tclgen_s.h
   M /trunk/utils/plrender.c

Replace plwid everywhere by plwidth, and store pen width
arguments as PLFLT's everywhere (that I can find them).

These changes allow width parameters < 1. to
work for cairo devices, e.g.,

examples/c/x03c.c  -dev xcairo -width 0.3

gives extremely thin line results.

Further discussion on list of what else there is to do.


------------------------------------------------------------------------
r12287 | airwin | 2013-01-29 17:06:02 -0800 (Tue, 29 Jan 2013) | 4 lines
Changed paths:
   M /trunk/bindings/octave/plplot_octave_def
   M /trunk/bindings/swig-support/swig_documentation.i

Consistency updates created by copying generated files for the
check_plplot_octave_def and check_swig_documentation targets back to
the source tree.

------------------------------------------------------------------------
r12286 | airwin | 2013-01-29 15:36:01 -0800 (Tue, 29 Jan 2013) | 2 lines
Changed paths:
   M /trunk/bindings/tk/tkMain.c
   M /trunk/drivers/cairo.c
   M /trunk/src/plshade.c

Whitespace style changes for previous commits.

------------------------------------------------------------------------
r12285 | arjenmarkus | 2013-01-29 00:37:25 -0800 (Tue, 29 Jan 2013) | 3 lines
Changed paths:
   M /trunk/bindings/tk/tkMain.c

Almost trivial change to get rid of the last direct use of interp->result.

Note: not tested because of lack of access to a Linux platform
------------------------------------------------------------------------
r12284 | airwin | 2013-01-07 21:26:34 -0800 (Mon, 07 Jan 2013) | 13 lines
Changed paths:
   M /trunk/doc/CMakeLists.txt
   M /trunk/doc/docbook/src/CMakeLists.txt

Insert \$ENV{DESTDIR} appropriately (with the "$" escaped because you
want the environment variable DESTDIR to be read at install time
rather than cmake time) for all install(CODE ... signatures usage.

This change should let "make DESTDIR=<whatever> install" work
correctly at install time whenever the doxygen documentation and the
docbook documentation are being installed.

Only the doxygen install change has been tested, but the
corresponding change to the docbook install should also work
since the same CMake rules should apply.


------------------------------------------------------------------------
r12283 | airwin | 2012-12-23 12:09:07 -0800 (Sun, 23 Dec 2012) | 2 lines
Changed paths:
   M /trunk/CMakeLists.txt
   M /trunk/examples/CMakeLists.txt

Use more modern idiom to determine CMake version for output.

------------------------------------------------------------------------
r12282 | hbabcock | 2012-12-19 09:11:01 -0800 (Wed, 19 Dec 2012) | 1 line
Changed paths:
   M /trunk/drivers/cairo.c

Attempt to fix family issues for the cairo family devices (epscairo, pngcairo, svgcairo).
------------------------------------------------------------------------
r12281 | andrewross | 2012-11-23 13:27:51 -0800 (Fri, 23 Nov 2012) | 3 lines
Changed paths:
   M /trunk/bindings/c++/plstream.cc
   M /trunk/bindings/octave/plplot_octave.i
   M /trunk/drivers/wxwidgets.cpp
   M /trunk/examples/c/x33c.c
   M /trunk/examples/c++/x16.cc
   M /trunk/src/pllegend.c
   M /trunk/src/plmap.c

Format recent code changes using scripts/style_source.sh.


------------------------------------------------------------------------
r12280 | andrewross | 2012-11-23 13:25:40 -0800 (Fri, 23 Nov 2012) | 3 lines
Changed paths:
   M /trunk/src/plshade.c

Properly block out points which are set to NaN when using plshade. Thanks to Phil Rosenberg for this suggestion.


------------------------------------------------------------------------
r12279 | andrewross | 2012-11-23 01:58:38 -0800 (Fri, 23 Nov 2012) | 3 lines
Changed paths:
   M /trunk/drivers/cairo.c

Fix a memory leak in the cairo driver's handling of text.


------------------------------------------------------------------------
r12278 | andrewross | 2012-11-19 14:07:42 -0800 (Mon, 19 Nov 2012) | 3 lines
Changed paths:
   M /trunk/drivers/qt.cpp

Fix bug which caused a seg fault if the svgqt driver was used without the -fam option. 


------------------------------------------------------------------------
r12277 | airwin | 2012-11-18 16:02:13 -0800 (Sun, 18 Nov 2012) | 2 lines
Changed paths:
   M /trunk/cmake/modules/plplot_functions.cmake
   M /trunk/examples/CMakeLists.txt
   M /trunk/plplot_test/plplot-test.sh.cmake

Build-system fixups for new epscairo device.

------------------------------------------------------------------------
r12276 | hbabcock | 2012-11-18 12:31:09 -0800 (Sun, 18 Nov 2012) | 1 line
Changed paths:
   M /trunk/drivers/cairo.c
   M /trunk/drivers/cairo.driver_info.in

Change the numbering of the various cairo drivers so that the EPS driver is listed next to the PS driver.
------------------------------------------------------------------------
r12275 | hbabcock | 2012-11-17 14:49:34 -0800 (Sat, 17 Nov 2012) | 1 line
Changed paths:
   M /trunk/cmake/modules/cairo.cmake
   M /trunk/cmake/modules/drivers-init.cmake
   M /trunk/drivers/README.drivers
   M /trunk/drivers/cairo.c
   M /trunk/drivers/cairo.driver_info.in
   M /trunk/examples/plplot_configure.cmake_installed_examples.in
   M /trunk/include/drivers.h
   M /trunk/include/plDevs.h.cmake
   M /trunk/include/plcore.h
   M /trunk/plplot_test/plplot-test.sh.cmake

Add a EPS driver to the Cairo family. On by default since this seemed pretty straight-forward.. Fix a typo in the README.drivers file.
------------------------------------------------------------------------
r12274 | airwin | 2012-11-17 09:34:42 -0800 (Sat, 17 Nov 2012) | 7 lines
Changed paths:
   M /trunk/README.Release_Manager_Cookbook

The actual name of the command (and Debian package name) is "xmlto"
not "xml-to".  Also add some explanation of why the xmlto package
must be installed in order to generate the website.

Slightly update the apache configuration steps.


------------------------------------------------------------------------
r12273 | andrewross | 2012-11-16 13:29:14 -0800 (Fri, 16 Nov 2012) | 3 lines
Changed paths:
   M /trunk/drivers/wxwidgets_dc.cpp

Add alpha values for wxDC since a few derivatives of this do actually support transparency.


------------------------------------------------------------------------
r12272 | andrewross | 2012-11-16 13:06:29 -0800 (Fri, 16 Nov 2012) | 3 lines
Changed paths:
   M /trunk/drivers/wxwidgets.cpp

Fix up setting physical coordinates in wxwidget drivers so it uses the actual window sizes. 


------------------------------------------------------------------------
r12271 | andrewross | 2012-11-16 12:09:59 -0800 (Fri, 16 Nov 2012) | 3 lines
Changed paths:
   M /trunk/doc/docbook/src/api.xml

Add note to plpstyl documentation that setting a fill style of 0 gives a solid fill. Also the default for plfill is solid fill. 


------------------------------------------------------------------------
r12270 | airwin | 2012-11-02 12:13:45 -0700 (Fri, 02 Nov 2012) | 5 lines
Changed paths:
   M /trunk/cmake/modules/shapelib.cmake
   M /trunk/src/CMakeLists.txt

Use correct RPATH configuration for shapelib.  This allows the Unix run-time
loader to find versions of shapelib that are installed in a
non-standard location.


------------------------------------------------------------------------
r12269 | airwin | 2012-11-02 12:10:52 -0700 (Fri, 02 Nov 2012) | 2 lines
Changed paths:
   M /trunk/cmake/modules/FindShapelib.cmake

Determine SHAPELIB_LIBRARY_DIRS.

------------------------------------------------------------------------
r12268 | airwin | 2012-11-02 11:55:27 -0700 (Fri, 02 Nov 2012) | 10 lines
Changed paths:
   M /trunk/cmake/modules/FindQHULL.cmake

Remove 

set(QHULL_LIBRARY_DIR "")

statement.  Clearing that variable makes no sense to me since the one
that is actually set right after is spelled differently
("QHULL_LIBRARY_DIRS" rather than "QHULL_LIBRARY_DIR") and does not
need to be cleared beforehand in any case.


------------------------------------------------------------------------
r12267 | andrewross | 2012-11-02 05:18:44 -0700 (Fri, 02 Nov 2012) | 3 lines
Changed paths:
   M /trunk/bindings/octave/plplot_octave.i

Fix warnings with octave bindings from API changes in octave 3.4 upwards.


------------------------------------------------------------------------
r12266 | andrewross | 2012-11-02 03:00:45 -0700 (Fri, 02 Nov 2012) | 3 lines
Changed paths:
   M /trunk/bindings/octave/PLplot/figure.m
   M /trunk/bindings/octave/PLplot/support/__pl_matstr.m
   M /trunk/bindings/octave/PLplot/toggle_plplot_use.m
   M /trunk/bindings/octave/octaverc.in

Fix up some octave warnings with the octave bindings.


------------------------------------------------------------------------
r12265 | airwin | 2012-11-01 03:07:10 -0700 (Thu, 01 Nov 2012) | 19 lines
Changed paths:
   M /trunk/cmake/external/ndiff/CMakeLists.txt

Modify the ndiff test script that is created by CMake to include extra
filtering in the Windows case to get rid of cr part of line endings and remove
redundant zeros from exponents to make results more comparable to the
Unix test files.

Test results on MinGW/MSYS/Wine failed in 12 or the 26 cases so instead
of using cmp -s for the tests I used diff to see what those
differences were from the Unix files.  In all cases, the results
were due to minor differences of floating-point noise in results from
ndiff on this platform and on Linux.  In virtually all cases when
the floating-point noise was different between the two platforms, the
Wine platform's noise was slightly larger.  

My working hypothesis to explain those results is that Wine is being
slighty sloppy in how well it retains floating-point precision in
calculations compared to Linux.  A similar test on Microsoft Windows
might confirm or deny that hypothesis.


------------------------------------------------------------------------
r12264 | airwin | 2012-10-31 12:59:49 -0700 (Wed, 31 Oct 2012) | 16 lines
Changed paths:
   M /trunk/cmake/external/ndiff/CMakeLists.txt
   M /trunk/cmake/external/ndiff/README.ndiff
   M /trunk/cmake/external/ndiff/config.h.cmake

Implement a test system for ndiff.  All tests that were implemented
for the old build system are available for the new build system as well.
These tests consist of capturing stderr and stdout from
ndiff for 26 different sets of options and files being differenced.
Those stderr and stdout data are then compared (using cmp) with the equivalent
data that was calculated in 2000 with ndiff back then.

I have run this test system with HAVE_DOUBLE 0 and HAVE_GMP 0 and got
perfect results.  Such is not the case (as expected) for HAVE_DOUBLE 1
since on Intel hardware the long double type corresponds to 80-bit floating-point
rather than 128-bit floating-point.  gcc does have options to
provide 128-bit floating point, but ndiff.c code changes would be
required to take advantage of that possibility.  For example, I
think you would need to use the __float128 type which is a gcc extension.


------------------------------------------------------------------------
r12263 | airwin | 2012-10-30 22:34:05 -0700 (Tue, 30 Oct 2012) | 2 lines
Changed paths:
   M /trunk/cmake/external/ndiff/README.ndiff

Update the current status of the new build system for ndiff.

------------------------------------------------------------------------
r12262 | airwin | 2012-10-30 22:33:36 -0700 (Tue, 30 Oct 2012) | 2 lines
Changed paths:
   M /trunk/cmake/external/ndiff/CMakeLists.txt

Tweak commentary and style.

------------------------------------------------------------------------
r12261 | airwin | 2012-10-30 16:58:32 -0700 (Tue, 30 Oct 2012) | 2 lines
Changed paths:
   A /trunk/cmake/external/shapelib
   A /trunk/cmake/external/shapelib/CMakeLists.txt
   A /trunk/cmake/external/shapelib/README

Implement a complete build system for shapelib

------------------------------------------------------------------------
r12260 | airwin | 2012-10-29 18:31:18 -0700 (Mon, 29 Oct 2012) | 5 lines
Changed paths:
   M /trunk/cmake/modules/language_support/cmake/CMakeDetermineAdaCompiler.cmake
   M /trunk/cmake/modules/language_support/cmake/CMakeDetermineDCompiler.cmake
   M /trunk/cmake/modules/language_support/cmake/CMakeTestDCompiler.cmake
   M /trunk/cmake/modules/language_support.cmake
   M /trunk/cmake/modules/plplot.cmake

Adjust to backwards-incompatible change in CMake language support
infrastructure that is introduced as of CMake-2.8.10.  Result
works for CMake-2.8.10-rc3 as well as previous CMake versions.


------------------------------------------------------------------------
r12258 | airwin | 2012-10-27 02:24:58 -0700 (Sat, 27 Oct 2012) | 6 lines
Changed paths:
   M /trunk/cmake/modules/ada.cmake

Change regex for helping to find gnat version to accommodate ".exe"
(or not) after "gcc" in string.

This change continues to work on Linux, and makes Ada work properly on
Wine.

------------------------------------------------------------------------
r12257 | airwin | 2012-10-26 22:34:13 -0700 (Fri, 26 Oct 2012) | 2 lines
Changed paths:
   M /trunk/src/plmap.c

Tweak wording.

------------------------------------------------------------------------
r12256 | andrewross | 2012-10-25 10:36:06 -0700 (Thu, 25 Oct 2012) | 3 lines
Changed paths:
   M /trunk/bindings/c++/plstream.cc
   M /trunk/bindings/c++/plstream.h
   M /trunk/examples/c/x33c.c
   M /trunk/examples/c++/x16.cc

Fix up C example 33 and the C++ bindings and example 16 following changes to colorbar API.


------------------------------------------------------------------------
r12255 | hezekiahcarty | 2012-10-24 18:35:24 -0700 (Wed, 24 Oct 2012) | 10 lines
Changed paths:
   M /trunk/src/pllegend.c

More plcolorbar fixes

- Properly initialize and propagate bounding box values throughout
  plcolorbar
- Only calculate the bounding box contributions of colorbar caps once
- Make sure plvpor is called before each draw_* + calculate_limits call

This should bring plcolorbar back to a state where it renders properly for
basic and complex uses.

------------------------------------------------------------------------
r12254 | hezekiahcarty | 2012-10-24 18:33:29 -0700 (Wed, 24 Oct 2012) | 2 lines
Changed paths:
   M /trunk/examples/c/x16c.c
   M /trunk/include/plplot.h
   M /trunk/src/pllegend.c

Support per-axis tickmark spacing in colorbars

------------------------------------------------------------------------
r12253 | andrewross | 2012-10-24 14:51:13 -0700 (Wed, 24 Oct 2012) | 4 lines
Changed paths:
   M /trunk/README.release


Update release notes to discuss new shapefile support and deprecation of the old binary format for map files used by plmap.


------------------------------------------------------------------------
r12252 | andrewross | 2012-10-24 14:19:59 -0700 (Wed, 24 Oct 2012) | 3 lines
Changed paths:
   M /trunk/src/plmap.c

Only compile in support for the old plplot map file format is PL_DEPRECATED is set.


------------------------------------------------------------------------
r12251 | andrewross | 2012-10-24 07:51:30 -0700 (Wed, 24 Oct 2012) | 3 lines
Changed paths:
   M /trunk/cmake/external/ndiff/CMakeLists.txt

Update ndiff cmake support to link in gmp if available and to install the binary and man page.


------------------------------------------------------------------------
r12250 | airwin | 2012-10-22 15:59:48 -0700 (Mon, 22 Oct 2012) | 2 lines
Changed paths:
   A /trunk/cmake/external/ndiff
   A /trunk/cmake/external/ndiff/CMakeLists.txt
   A /trunk/cmake/external/ndiff/README.ndiff
   A /trunk/cmake/external/ndiff/config.h.cmake

Implement a rudimentary but quite useful CMake-based build system for ndiff.

------------------------------------------------------------------------
r12249 | andrewross | 2012-10-22 14:08:52 -0700 (Mon, 22 Oct 2012) | 5 lines
Changed paths:
   M /trunk/bindings/c++/plstream.cc
   M /trunk/bindings/c++/plstream.h
   M /trunk/examples/c/x16c.c
   M /trunk/examples/c++/x16.cc

Enable colorbar support by default for example 16.

Enable colorbar support in C++ and update C++ example 16 accordingly.


------------------------------------------------------------------------
r12248 | andrewross | 2012-10-22 14:07:18 -0700 (Mon, 22 Oct 2012) | 3 lines
Changed paths:
   M /trunk/data/CMakeLists.txt

Install README for shapefiles describing license and source.


------------------------------------------------------------------------
r12247 | andrewross | 2012-10-22 14:05:46 -0700 (Mon, 22 Oct 2012) | 3 lines
Changed paths:
   M /trunk/src/plmap.c

Style last commit.


------------------------------------------------------------------------
r12246 | andrewross | 2012-10-22 12:43:39 -0700 (Mon, 22 Oct 2012) | 3 lines
Changed paths:
   A /trunk/data/README.shapefiles

Add README file which acknowledges the source of the shapefile map data and the fact that it is in the public domain.


------------------------------------------------------------------------
r12245 | andrewross | 2012-10-22 12:36:07 -0700 (Mon, 22 Oct 2012) | 7 lines
Changed paths:
   M /trunk/cmake/modules/FindShapelib.cmake
   M /trunk/data/CMakeLists.txt
   A /trunk/data/cglobe.shp
   A /trunk/data/cglobe.shx
   A /trunk/data/globe.shp
   A /trunk/data/globe.shx
   A /trunk/data/usa.shp
   A /trunk/data/usa.shx
   A /trunk/data/usaglobe.shp
   A /trunk/data/usaglobe.shx
   M /trunk/src/plmap.c

Patch from Phil Rosenberg to include shapefile support for plmap if shapelib is detected. 

Add in shapefile map equivalents of the old plplot maps. Data from www.naturalearthdata.com. 

Further cmake tweaks by ANR.


------------------------------------------------------------------------
r12244 | andrewross | 2012-10-11 14:53:07 -0700 (Thu, 11 Oct 2012) | 3 lines
Changed paths:
   M /trunk/src/CMakeLists.txt

Updates to plplot cmake support shapelib.


------------------------------------------------------------------------
r12243 | andrewross | 2012-10-10 15:17:10 -0700 (Wed, 10 Oct 2012) | 3 lines
Changed paths:
   M /trunk/drivers/wxwidgets.cpp
   M /trunk/drivers/wxwidgets.h
   M /trunk/drivers/wxwidgets_dc.cpp
   M /trunk/drivers/wxwidgets_gc.cpp
   M /trunk/src/plfreetype.c

Commit on behalf of Phil Rosenberg. Fixes to the wxwidgets driver to properly support newline characters in strings. 


------------------------------------------------------------------------
r12242 | andrewross | 2012-10-05 14:31:41 -0700 (Fri, 05 Oct 2012) | 3 lines
Changed paths:
   M /trunk/drivers/wingcc.c
   M /trunk/examples/c/x16c.c
   M /trunk/examples/c/x33c.c
   M /trunk/src/plctrl.c
   M /trunk/src/pllegend.c

Style recent code updates.


------------------------------------------------------------------------
r12241 | airwin | 2012-10-05 10:41:00 -0700 (Fri, 05 Oct 2012) | 2 lines
Changed paths:
   M /trunk/config.h.cmake

Propagate HAVE_SHAPELIB CMake variable to a C macro with the same name.

------------------------------------------------------------------------
r12240 | andrewross | 2012-10-04 15:10:12 -0700 (Thu, 04 Oct 2012) | 4 lines
Changed paths:
   M /trunk/examples/java/x00.java
   M /trunk/examples/java/x01.java
   M /trunk/examples/java/x02.java
   M /trunk/examples/java/x03.java
   M /trunk/examples/java/x04.java
   M /trunk/examples/java/x05.java
   M /trunk/examples/java/x06.java
   M /trunk/examples/java/x07.java
   M /trunk/examples/java/x08.java
   M /trunk/examples/java/x09.java
   M /trunk/examples/java/x10.java
   M /trunk/examples/java/x11.java
   M /trunk/examples/java/x12.java
   M /trunk/examples/java/x13.java
   M /trunk/examples/java/x14.java
   M /trunk/examples/java/x15.java
   M /trunk/examples/java/x16.java
   M /trunk/examples/java/x17.java
   M /trunk/examples/java/x18.java
   M /trunk/examples/java/x19.java
   M /trunk/examples/java/x20.java
   M /trunk/examples/java/x21.java
   M /trunk/examples/java/x22.java
   M /trunk/examples/java/x23.java
   M /trunk/examples/java/x24.java
   M /trunk/examples/java/x25.java
   M /trunk/examples/java/x26.java
   M /trunk/examples/java/x27.java
   M /trunk/examples/java/x28.java
   M /trunk/examples/java/x29.java
   M /trunk/examples/java/x30.java
   M /trunk/examples/java/x31.java
   M /trunk/examples/java/x33.java


Fix up a whole load of warnings in the java examples generated with gcj-4.7. Mostly these relate to unnecessary casts and to the incorrect access of static data in interfaeces.


------------------------------------------------------------------------
r12239 | andrewross | 2012-10-04 06:29:35 -0700 (Thu, 04 Oct 2012) | 4 lines
Changed paths:
   M /trunk/examples/java/x03.java
   M /trunk/examples/java/x11.java
   M /trunk/examples/java/x26.java


Fix a number of warnings with gcj compiler.


------------------------------------------------------------------------
r12238 | airwin | 2012-10-03 14:16:31 -0700 (Wed, 03 Oct 2012) | 8 lines
Changed paths:
   M /trunk/examples/java/CMakeLists.txt
   M /trunk/examples/java/Makefile.examples.in

Use correct order for javac command line (with filename last) which
solves all the encoding issues.  Leave the encoding name as UTF-8
because that is what is recommended as the most general name for utf-8
encodings on the gcj man page.  However, experimentally gcj recognizes
the utf8 or utf-8 names as well so that name could be changed to
either of those if java tool chains that do not use gcj require it.


------------------------------------------------------------------------
r12237 | airwin | 2012-10-03 11:42:03 -0700 (Wed, 03 Oct 2012) | 8 lines
Changed paths:
   M /trunk/examples/java/CMakeLists.txt
   M /trunk/examples/java/Makefile.examples.in

Change encoding option into a form recognized by gcj.

This works for my particular gcj tool chain, but if the strict
encoding option form demanded by gcj doesn't work for other tool
chains we will have to do some sort of tool-chain test to deal
properly with this issue.


------------------------------------------------------------------------
r12236 | andrewross | 2012-10-03 08:03:40 -0700 (Wed, 03 Oct 2012) | 3 lines
Changed paths:
   M /trunk/examples/java/CMakeLists.txt
   M /trunk/examples/java/Makefile.examples.in

Set java encoding to utf-8.


------------------------------------------------------------------------
r12235 | hezekiahcarty | 2012-10-03 06:22:14 -0700 (Wed, 03 Oct 2012) | 4 lines
Changed paths:
   M /trunk/examples/c/x16c.c
   M /trunk/examples/c/x33c.c
   M /trunk/include/plplot.h
   M /trunk/src/pllegend.c

Add support for multiple labels and axes to plcolorbar

C examples 16 and 33 have been updated to match the API changes.

------------------------------------------------------------------------
r12234 | andrewross | 2012-10-03 06:08:38 -0700 (Wed, 03 Oct 2012) | 3 lines
Changed paths:
   A /trunk/cmake/modules/FindShapelib.cmake
   M /trunk/cmake/modules/plplot.cmake
   A /trunk/cmake/modules/shapelib.cmake
   M /trunk/cmake/modules/summary.cmake

Add in cmake support for shapelib library to read in shapefiles.


------------------------------------------------------------------------
r12233 | airwin | 2012-10-02 13:13:08 -0700 (Tue, 02 Oct 2012) | 6 lines
Changed paths:
   M /trunk/cmake/modules/drivers-init.cmake

Only warn about using a deprecated device if the DEFAULT value was set
by DRIVERS_DEVICE.  This removes confusing WARNING messages that occur
if you are using other means to set defaults such as
-DDEFAULT_NO_DEVICES=ON.


------------------------------------------------------------------------
r12232 | airwin | 2012-10-02 09:08:29 -0700 (Tue, 02 Oct 2012) | 8 lines
Changed paths:
   M /trunk/cmake/modules/docbook.cmake
   M /trunk/cmake/modules/octave.cmake
   M /trunk/cmake/modules/plplot.cmake

Put the checks for XML::Parser and XML::DOM in a more central location
where they are guaranteed to happen (if perl is available).  This means
these perl modules can be used for, e.g., parsing swig documentation
regardless of whether octave and/or docbook have been enabled or not.
A further advantage of this new location for the checks
is these checks are not independently repeated
for the octave and docbook cases.

------------------------------------------------------------------------
r12228 | andrewross | 2012-09-03 07:31:55 -0700 (Mon, 03 Sep 2012) | 4 lines
Changed paths:
   M /trunk/drivers/wingcc.c


Commit patch from Phil Rosenberg so wingcc works with unicode.


------------------------------------------------------------------------
r12227 | arjenmarkus | 2012-08-27 11:52:02 -0700 (Mon, 27 Aug 2012) | 1 line
Changed paths:
   M /trunk/bindings/tcl/tclMatrix.c

Provide some online help with the matrix subcommand "help". Only for the predefined subcommands. This will mainly be useful with interactive usage.
------------------------------------------------------------------------
r12226 | airwin | 2012-08-23 13:18:41 -0700 (Thu, 23 Aug 2012) | 3 lines
Changed paths:
   M /trunk/examples/tk/CMakeLists.txt
   M /trunk/examples/tk/tkdemos.tcl

Add examples 0 and 33 to the examples that are executed by the
"test_tk_standard_examples" target.

------------------------------------------------------------------------
r12225 | airwin | 2012-08-23 13:11:45 -0700 (Thu, 23 Aug 2012) | 3 lines
Changed paths:
   M /trunk/examples/tcl/tcldemos.tcl

Add "0" and "33" to the Tcl commands that are configured so that
the target "test_tcl_standard_examples" works correctly.

------------------------------------------------------------------------
r12224 | airwin | 2012-08-23 11:46:12 -0700 (Thu, 23 Aug 2012) | 3 lines
Changed paths:
   M /trunk/examples/tk/README.tkdemos

Update directions for running runAllDemos.tcl under wish from
the PLplot build tree.

------------------------------------------------------------------------
r12223 | airwin | 2012-08-23 11:44:52 -0700 (Thu, 23 Aug 2012) | 5 lines
Changed paths:
   M /trunk/bindings/tk-x-plat/pkgIndex.tcl.in

Drop the /.libs subdirectory (left over from autotools days!) from
the location where the tkwin dll should be looked for.  This change is
required in order for "package require Plplotter" to work correctly
under the Tk wish enviroment in the PLplot build tree.

------------------------------------------------------------------------
r12222 | airwin | 2012-08-23 11:40:38 -0700 (Thu, 23 Aug 2012) | 7 lines
Changed paths:
   M /trunk/bindings/tk-x-plat/Plplotter_Init.c

Make the Plplotter_Init symbol visible in the tkwin dll. This is
necessary for the "package require Plplotter" command to work
correctly in the Tk wish environment for the case where symbols are
hidden by default for the tkwin dll (on Unix with the gcc
-fvisibility=hidden option or on Windows).


------------------------------------------------------------------------
r12221 | andrewross | 2012-08-21 04:45:29 -0700 (Tue, 21 Aug 2012) | 3 lines
Changed paths:
   M /trunk/cmake/modules/qt.cmake
   M /trunk/drivers/CMakeLists.txt

Tweak qt driver to include QT_LIBRARIES in qt_LINK_FLAGS as is done for all other drivers.


------------------------------------------------------------------------
r12220 | andrewross | 2012-08-21 04:44:32 -0700 (Tue, 21 Aug 2012) | 3 lines
Changed paths:
   M /trunk/cmake/modules/tk.cmake

Add X11_LIBRARIES to the link flags for tkwin driver since it explicitly uses functions from the X11 library.


------------------------------------------------------------------------
r12219 | andrewross | 2012-08-21 01:23:50 -0700 (Tue, 21 Aug 2012) | 3 lines
Changed paths:
   M /trunk/bindings/tcl/CMakeLists.txt

Explicitly link libplplottcltkd against X11 libraries as these are required.


------------------------------------------------------------------------
r12218 | andrewross | 2012-08-20 14:06:40 -0700 (Mon, 20 Aug 2012) | 4 lines
Changed paths:
   M /trunk/bindings/qt_gui/CMakeLists.txt

Another, more conservative, attempt to fix the issues with qt linkage on Mac OS-X.



------------------------------------------------------------------------
r12217 | andrewross | 2012-08-18 13:48:12 -0700 (Sat, 18 Aug 2012) | 3 lines
Changed paths:
   M /trunk/bindings/qt_gui/CMakeLists.txt

Second attempt at fixing Qt driver linking issue on Mac OS-X.


------------------------------------------------------------------------
r12216 | andrewross | 2012-08-16 04:10:09 -0700 (Thu, 16 Aug 2012) | 3 lines
Changed paths:
   M /trunk/bindings/qt_gui/CMakeLists.txt

Programs linking in libplplotqtd also need to explicitly link in QtCore.


------------------------------------------------------------------------
r12215 | jbauck | 2012-08-15 03:17:55 -0700 (Wed, 15 Aug 2012) | 1 line
Changed paths:
   M /trunk/doc/docbook/src/ada.xml

Change Ada doc to reflect a recent minor change in the Ada binding API related to HLS access to cmap1. 
------------------------------------------------------------------------
r12214 | andrewross | 2012-08-14 15:33:21 -0700 (Tue, 14 Aug 2012) | 3 lines
Changed paths:
   M /trunk/doc/docbook/src/api.xml

Update docbook documentation for plscmap1l[a] to change rev to alt_hue_path and better describe what this actually does.


------------------------------------------------------------------------
r12213 | andrewross | 2012-08-14 00:03:04 -0700 (Tue, 14 Aug 2012) | 3 lines
Changed paths:
   M /trunk/examples/c/x29c.c

Actually fix off by one error this time.


------------------------------------------------------------------------
r12212 | airwin | 2012-08-13 16:17:31 -0700 (Mon, 13 Aug 2012) | 4 lines
Changed paths:
   M /trunk/bindings/ada/plplot.adb
   M /trunk/bindings/ada/plplot.ads
   M /trunk/bindings/ada/plplot_thin.ads
   M /trunk/bindings/ada/plplot_traditional.adb
   M /trunk/bindings/ada/plplot_traditional.ads
   M /trunk/bindings/c++/plstream.cc
   M /trunk/bindings/c++/plstream.h
   M /trunk/bindings/d/plplot.d
   M /trunk/bindings/f77/scstubs.c
   M /trunk/bindings/f95/scstubs.c
   M /trunk/bindings/f95/sfstubsf95.f90
   M /trunk/bindings/gnome2/lib/plplotcanvas.c
   M /trunk/bindings/java/PLStream.java
   M /trunk/bindings/ocaml/plplot.ml
   M /trunk/bindings/ocaml/plplot.mli
   M /trunk/bindings/ocaml/plplot_h
   M /trunk/bindings/ocaml/plplot_h.inc
   M /trunk/bindings/ocaml/touchup.ml
   M /trunk/bindings/octave/plplot_octave.h.in
   M /trunk/bindings/python/plplot.py.Numeric
   M /trunk/bindings/python/plplot.py.numpy
   M /trunk/bindings/tcl/plapi.tpl
   M /trunk/examples/ada/x08a.adb
   M /trunk/examples/ada/x11a.adb
   M /trunk/examples/ada/x12a.adb
   M /trunk/examples/ada/x15a.adb
   M /trunk/examples/ada/x20a.adb
   M /trunk/examples/ada/x21a.adb
   M /trunk/examples/ada/x30a.adb
   M /trunk/examples/ada/xthick08a.adb
   M /trunk/examples/ada/xthick11a.adb
   M /trunk/examples/ada/xthick12a.adb
   M /trunk/examples/ada/xthick15a.adb
   M /trunk/examples/ada/xthick20a.adb
   M /trunk/examples/ada/xthick21a.adb
   M /trunk/examples/ada/xthick30a.adb
   M /trunk/include/plplot.h
   M /trunk/include/plplotcanvas.h
   M /trunk/src/plctrl.c
   M /trunk/sys/win-tk/tclgen.c

rev ==> alt_hue_path changes for our core C library and bindings.
This actually constitutes a minor API change to the Ada bindings so
do the necessary change to the Ada examples as well.

------------------------------------------------------------------------
r12211 | andrewross | 2012-08-13 15:21:57 -0700 (Mon, 13 Aug 2012) | 3 lines
Changed paths:
   A /trunk/debian/patches/fix-boolean-operators.diff
   A /trunk/debian/patches/proper-path-handling.diff
   A /trunk/debian/patches/replace-deprecated-split.diff

Add in Debian patches which were missed from previous commits.


------------------------------------------------------------------------
r12210 | andrewross | 2012-08-13 15:14:23 -0700 (Mon, 13 Aug 2012) | 4 lines
Changed paths:
   M /trunk/bindings/tk/plframe.c
   M /trunk/bindings/tk/plr.c
   M /trunk/bindings/tk-x-plat/plplotter.c
   M /trunk/drivers/wxwidgets.h
   M /trunk/examples/c/x29c.c


Clean up formatting using uncrustify.


------------------------------------------------------------------------
r12209 | andrewross | 2012-08-13 14:29:59 -0700 (Mon, 13 Aug 2012) | 3 lines
Changed paths:
   M /trunk/examples/c/x29c.c
   M /trunk/examples/c++/x29.cc

Fix off-by-one error calculating maximum size for strncat. Fixes warning when building with hardening flags on Debian.


------------------------------------------------------------------------
r12208 | andrewross | 2012-08-13 14:25:25 -0700 (Mon, 13 Aug 2012) | 3 lines
Changed paths:
   M /trunk/debian/rules

Fix incorrect bracket in last commit.


------------------------------------------------------------------------
r12207 | airwin | 2012-08-13 14:02:37 -0700 (Mon, 13 Aug 2012) | 3 lines
Changed paths:
   M /trunk/bindings/ada/plplot_thin.ads
   M /trunk/bindings/d/plplot.d
   M /trunk/bindings/octave/plplot_octave.h.in
   M /trunk/bindings/tk/plframe.c
   M /trunk/bindings/tk/plr.c
   M /trunk/bindings/tk-x-plat/plplotter.c
   M /trunk/drivers/tk.c
   M /trunk/include/plplot.h
   M /trunk/src/plctrl.c

rev ==> alt_hue_path in the PLControlPt struct and its examplar,
plsc->cmap1cp[n].

------------------------------------------------------------------------
r12206 | andrewross | 2012-08-13 13:27:59 -0700 (Mon, 13 Aug 2012) | 4 lines
Changed paths:
   M /trunk/debian/changelog
   M /trunk/debian/rules


More minor tweaks to Debian packages to enable hardening options.


------------------------------------------------------------------------
r12205 | airwin | 2012-08-10 09:48:23 -0700 (Fri, 10 Aug 2012) | 2 lines
Changed paths:
   M /trunk/examples/ada/xthick00a.adb

Squelch warning message about incorrect procedure name.

------------------------------------------------------------------------
r12204 | andrewross | 2012-08-08 05:07:50 -0700 (Wed, 08 Aug 2012) | 3 lines
Changed paths:
   M /trunk/debian/changelog
   M /trunk/debian/control
   M /trunk/debian/control.in
   M /trunk/debian/rules

Update debian build dependencies to remove superfluous dependency on quilt.


------------------------------------------------------------------------
r12203 | andrewross | 2012-08-08 04:50:31 -0700 (Wed, 08 Aug 2012) | 3 lines
Changed paths:
   M /trunk/debian/changelog

Update Debian changelog entry to include additional bug closure.


------------------------------------------------------------------------
r12202 | andrewross | 2012-07-19 16:38:25 -0700 (Thu, 19 Jul 2012) | 3 lines
Changed paths:
   M /trunk/drivers/wxwidgets.h

Committed on behalf of Phil Rosenberg to fix bug with wxWidgets initialisation on Windows.


------------------------------------------------------------------------
r12201 | andrewross | 2012-07-19 16:26:46 -0700 (Thu, 19 Jul 2012) | 3 lines
Changed paths:
   M /trunk/debian/changelog
   A /trunk/debian/patches/fix-cmake-ada-support.diff
   A /trunk/debian/patches/fix-lua-includes.diff
   M /trunk/debian/patches/series

Fix a couple of bug in Debian due to new versions of other packages.


------------------------------------------------------------------------
r12200 | andrewross | 2012-07-19 16:10:47 -0700 (Thu, 19 Jul 2012) | 4 lines
Changed paths:
   M /trunk/cmake/modules/language_support/cmake/CMakeAdaInformation.cmake

Fix cmake Ada support so it works correctly with cmake 2.8.9 release candidate 1. 
CMake support for position independent code has been altered and these changes reflect this.


------------------------------------------------------------------------
r12199 | airwin | 2012-07-07 11:37:38 -0700 (Sat, 07 Jul 2012) | 10 lines
Changed paths:
   M /trunk/drivers/wxwidgets.h

Calculate wxwidget macros in more logical order (inches first) such
that the resulting macros involving inches coordinates are exact integers.

Change the VSCALE macro from 32 to 40 so the maximum coordinate in the
call to plP_setphy is changed from 32*800 = 25600 to 40*800 = 32000.
This improves the wxwidgets resolution by a small but significant
amount without exceeding the maximum valid value for the plP_setphy
call which is 32767.


------------------------------------------------------------------------
r12198 | airwin | 2012-07-06 13:59:43 -0700 (Fri, 06 Jul 2012) | 6 lines
Changed paths:
   M /trunk/src/plfreetype.c

AWI for phil rosenberg.  Allow Windows users to use the
PLPLOT_FREETYPE_FONT_DIR environment variable (just like users
on Unix platforms do now) at run time to specify
the directory where plfreetype looks for font files.


------------------------------------------------------------------------
r12197 | airwin | 2012-07-06 13:54:41 -0700 (Fri, 06 Jul 2012) | 2 lines
Changed paths:
   M /trunk/drivers/wxwidgets.cpp
   M /trunk/drivers/wxwidgets_agg.cpp
   M /trunk/examples/c++/x00.cc
   M /trunk/examples/d/x21d.d
   M /trunk/examples/java/x00.java
   M /trunk/examples/java/x21.java

Style previous commits.

------------------------------------------------------------------------
r12196 | andrewross | 2012-07-04 13:33:40 -0700 (Wed, 04 Jul 2012) | 3 lines
Changed paths:
   M /trunk/src/plfreetype.c

Patch from Phil Rosenberg to fix freetype font handling if there is no unicode character map, as is the case with the Windows Symbol font.


------------------------------------------------------------------------
r12195 | andrewross | 2012-07-04 13:27:19 -0700 (Wed, 04 Jul 2012) | 3 lines
Changed paths:
   M /trunk/doc/docbook/src/advanced.xml
   M /trunk/doc/docbook/src/api-compat.xml
   M /trunk/doc/docbook/src/deploying.xml

Fix some dated mentions of ./configure in the documentation and update details on setting freetype fonts. 


------------------------------------------------------------------------
r12194 | airwin | 2012-05-07 18:37:27 -0700 (Mon, 07 May 2012) | 6 lines
Changed paths:
   M /trunk/drivers/wxwidgets_dc.cpp
   M /trunk/drivers/wxwidgets_gc.cpp

AWI for Phil Rosenberg.  Fix a small bug whereby the styles (italic,
bold etc) and weights weren't being applied correctly by wxWidgets in
the _gc and _dc files. An & was used instead of a | when combining
style and weight flags.


------------------------------------------------------------------------
r12193 | airwin | 2012-05-01 10:27:14 -0700 (Tue, 01 May 2012) | 6 lines
Changed paths:
   M /trunk/cmake/modules/wxwidgets.cmake

wxwidgets.so contains symbols that must be resolved by the agg
libraries and freetype library.  So revert back to revision 12065
because Orion's overlinking fixup patch was too aggressive at removing
linking information in this case.


------------------------------------------------------------------------
r12192 | airwin | 2012-04-26 16:34:20 -0700 (Thu, 26 Apr 2012) | 6 lines
Changed paths:
   M /trunk/examples/python/test_linebreak.py

Change spacings so that qt devices do not slop over the edge.

Put utf8 first so that we have a chance to see how a line feed followed
by right-to-left script such as Arabic or Hebrew is implemented.


------------------------------------------------------------------------
r12191 | airwin | 2012-04-26 16:22:53 -0700 (Thu, 26 Apr 2012) | 4 lines
Changed paths:
   M /trunk/examples/python/CMakeLists.txt
   A /trunk/examples/python/test_linebreak.py

Add simple test example that demonstrates what happens for line breaks
mixed in with unicode text.


------------------------------------------------------------------------
r12190 | airwin | 2012-04-20 16:12:46 -0700 (Fri, 20 Apr 2012) | 8 lines
Changed paths:
   M /trunk/examples/ocaml/x00.ml

Change from terminating "let" lines using a semicolon to "in".  This
change (found by experimentation with no true knowledge of OCaml
syntax) is required for the "00" example to work for my ocaml
environment (version 3.11.2-2 from Debian stable).

This change needs testing on other ocaml platforms.


------------------------------------------------------------------------
r12189 | andrewross | 2012-04-11 04:24:48 -0700 (Wed, 11 Apr 2012) | 5 lines
Changed paths:
   M /trunk/cmake/modules/ada.cmake


Minor tweak to ada logic for cases where the Ada compiler is gcc not gnatgcc.



------------------------------------------------------------------------
r12188 | andrewross | 2012-04-11 01:41:56 -0700 (Wed, 11 Apr 2012) | 4 lines
Changed paths:
   M /trunk/drivers/wxwidgets.cpp


Fix argument to strncat specifying max number of characters to copy. Thanks to Atri for this fix. 


------------------------------------------------------------------------
r12187 | andrewross | 2012-04-05 14:02:02 -0700 (Thu, 05 Apr 2012) | 3 lines
Changed paths:
   M /trunk/debian/changelog
   M /trunk/debian/rules

Disable ada support for armhf platform since gnat is not available on that architecture.


------------------------------------------------------------------------
r12186 | andrewross | 2012-04-05 13:53:50 -0700 (Thu, 05 Apr 2012) | 3 lines
Changed paths:
   M /trunk/debian/changelog
   M /trunk/debian/rules

New debian package version to fix build error for binary-arch target.


------------------------------------------------------------------------
r12185 | andrewross | 2012-04-02 08:49:42 -0700 (Mon, 02 Apr 2012) | 3 lines
Changed paths:
   M /trunk/debian/changelog
   M /trunk/debian/control
   M /trunk/debian/control.in
   M /trunk/debian/octave-plplot.files
   M /trunk/debian/patches/series
   M /trunk/debian/rules

Commit (slightly modified) patch from Rafael Laboissiere to compile Debian packages with the new octave 3.6.1 packages.


------------------------------------------------------------------------
r12184 | andrewross | 2012-02-28 03:48:16 -0800 (Tue, 28 Feb 2012) | 3 lines
Changed paths:
   M /trunk/debian/patches/02_unset-python-path.diff
   M /trunk/debian/patches/08_nn_link_libm.diff

Update Debian patches.


------------------------------------------------------------------------
r12183 | andrewross | 2012-02-28 03:36:40 -0800 (Tue, 28 Feb 2012) | 3 lines
Changed paths:
   M /trunk/lib/nn/CMakeLists.txt

Fix previous commit to explicitly link libcsironn to the maths library as code uses hypot function. 


------------------------------------------------------------------------
r12182 | andrewross | 2012-02-27 13:39:06 -0800 (Mon, 27 Feb 2012) | 3 lines
Changed paths:
   M /trunk/debian/changelog
   M /trunk/debian/control
   M /trunk/debian/control.in
   A /trunk/debian/patches/08_nn_link_libm.diff
   M /trunk/debian/patches/series
   M /trunk/debian/rules

Number of changes to debian packages, principally to clean up debian/rules and to fix some dpkg-shlibdeps, lintian and buildd check warnings. Ensures -fvisibilty=hidden flag is now applied.


------------------------------------------------------------------------
r12181 | andrewross | 2012-02-26 14:31:05 -0800 (Sun, 26 Feb 2012) | 3 lines
Changed paths:
   M /trunk/debian/changelog
   M /trunk/debian/control.in

Remove reference to ada-compiler in libplplot-ada0-dev dependencies as per new Debian Ada policy. Fixes lintian warnings.


------------------------------------------------------------------------
r12180 | andrewross | 2012-02-26 13:49:58 -0800 (Sun, 26 Feb 2012) | 3 lines
Changed paths:
   M /trunk/debian/changelog
   M /trunk/debian/control.in

Fix broken suggested package for Debian libplplot11 package.
 

------------------------------------------------------------------------
r12179 | andrewross | 2012-02-24 15:24:50 -0800 (Fri, 24 Feb 2012) | 3 lines
Changed paths:
   M /trunk/examples/c++/x00.cc
   M /trunk/examples/d/x00d.d
   M /trunk/examples/java/x00.java
   M /trunk/examples/lua/x00.lua
   M /trunk/examples/ocaml/x00.ml
   M /trunk/examples/octave/x00c.m
   M /trunk/examples/python/x00
   M /trunk/examples/python/xw00.py

Fix properties for new files.


------------------------------------------------------------------------
r12178 | andrewross | 2012-02-24 15:15:19 -0800 (Fri, 24 Feb 2012) | 3 lines
Changed paths:
   M /trunk/examples/c++/x00.cc
   M /trunk/examples/d/x00d.d
   M /trunk/examples/java/x00.java
   A /trunk/examples/lua/x00.lua
   M /trunk/examples/ocaml/x00.ml
   M /trunk/examples/octave/x00c.m
   M /trunk/examples/python/x00

Fix up Id tags and copyright in example 00.


------------------------------------------------------------------------
r12177 | andrewross | 2012-02-24 15:07:11 -0800 (Fri, 24 Feb 2012) | 3 lines
Changed paths:
   M /trunk/examples/ada/CMakeLists.txt
   M /trunk/examples/c++/CMakeLists.txt
   A /trunk/examples/c++/x00.cc
   M /trunk/examples/d/CMakeLists.txt
   A /trunk/examples/d/x00d.d
   M /trunk/examples/java/CMakeLists.txt
   A /trunk/examples/java/x00.java
   M /trunk/examples/lua/CMakeLists.txt
   M /trunk/examples/ocaml/CMakeLists.txt
   A /trunk/examples/ocaml/x00.ml
   M /trunk/examples/octave/CMakeLists.txt
   A /trunk/examples/octave/x00c.m
   M /trunk/examples/python/CMakeLists.txt
   A /trunk/examples/python/x00
   A /trunk/examples/python/xw00.py
   M /trunk/examples/tcl/x00
   M /trunk/plplot_test/test_ada.sh.in
   M /trunk/plplot_test/test_cxx.sh.in
   M /trunk/plplot_test/test_d.sh.in
   M /trunk/plplot_test/test_java.sh.in
   M /trunk/plplot_test/test_lua.sh.in
   M /trunk/plplot_test/test_ocaml.sh.in
   M /trunk/plplot_test/test_octave.sh.in
   M /trunk/plplot_test/test_python.sh.in

Implement the new trivial example 00 in the remaining languages and include it in the standard tests. This produces clean results on my Ubuntu 64-bit system.


------------------------------------------------------------------------
r12176 | andrewross | 2012-02-24 12:33:39 -0800 (Fri, 24 Feb 2012) | 3 lines
Changed paths:
   M /trunk/examples/c/x22c.c
   M /trunk/examples/c++/README.c++demos
   M /trunk/examples/c++/x01.cc
   M /trunk/examples/c++/x03.cc
   M /trunk/examples/c++/x05.cc
   M /trunk/examples/c++/x06.cc
   M /trunk/examples/c++/x07.cc
   M /trunk/examples/c++/x08.cc
   M /trunk/examples/c++/x09.cc
   M /trunk/examples/c++/x10.cc
   M /trunk/examples/c++/x11.cc
   M /trunk/examples/c++/x12.cc
   M /trunk/examples/c++/x13.cc
   M /trunk/examples/c++/x14.cc
   M /trunk/examples/c++/x15.cc
   M /trunk/examples/c++/x16.cc
   M /trunk/examples/c++/x17.cc
   M /trunk/examples/c++/x19.cc
   M /trunk/examples/c++/x20.cc
   M /trunk/examples/c++/x21.cc
   M /trunk/examples/c++/x22.cc
   M /trunk/examples/java/x17.java
   M /trunk/examples/ocaml/x22.ml

Clean up the last few of my email address in the examples.


------------------------------------------------------------------------
r12175 | andrewross | 2012-02-23 11:41:00 -0800 (Thu, 23 Feb 2012) | 3 lines
Changed paths:
   M /trunk/debian/changelog
   M /trunk/debian/control.in

Update Debian standards version for Debian packages.


------------------------------------------------------------------------
r12174 | airwin | 2012-02-19 10:33:33 -0800 (Sun, 19 Feb 2012) | 5 lines
Changed paths:
   M /trunk/examples/f95/Makefile.examples.in
   M /trunk/examples/tcl/standard_examples.in
   M /trunk/examples/tk/standard_examples.in
   M /trunk/plplot_test/test_f95.sh.in
   M /trunk/plplot_test/test_tcl.sh.in

Update list of Fortran 95 examples to be built for traditional (make
+ pkg-config) build system for installed examples.

Update lists of Tcl, Tk, and Fortran 95 examples to be tested.

------------------------------------------------------------------------
r12173 | airwin | 2012-02-19 10:30:56 -0800 (Sun, 19 Feb 2012) | 2 lines
Changed paths:
   M /trunk/examples/f95/CMakeLists.txt
   M /trunk/examples/tcl/CMakeLists.txt

Update copyright.

------------------------------------------------------------------------
r12172 | airwin | 2012-02-19 10:18:19 -0800 (Sun, 19 Feb 2012) | 2 lines
Changed paths:
   M /trunk/examples/f95/x00f.f90
   M /trunk/examples/tcl/x00
   M /trunk/examples/tcl/x00.tcl

Add correct properties for recently added files.

------------------------------------------------------------------------
r12171 | arjenmarkus | 2012-02-19 03:36:16 -0800 (Sun, 19 Feb 2012) | 9 lines
Changed paths:
   M /trunk/bindings/f95/plplotf95_ifort.def

Add the constants that are defined via DATA statements to the list of exported symbols.
This is required by the MS VC/C++ - Intel Fortran combination, but not by gcc/gfortran.
Without these extra exports you get unresolved external symbols.

Note: the use of the hexadecimal numbers prevents us from using parameters. According to 
the Fortran 90/95 standards, you can not use such numbers for parameters. This has been
relaxed for Fortran 2003, so we may want to revisit this issue in the near future 
(both gfortran 4.6 and later and Intel Fortran 11.1 and later support such numbers in
the parameter statement.) 
------------------------------------------------------------------------
r12170 | arjenmarkus | 2012-02-19 03:31:08 -0800 (Sun, 19 Feb 2012) | 1 line
Changed paths:
   M /trunk/lib/csa/csa.c

Change the local declaration of "square* s" - the original was not accepted by MS VC/C++.
------------------------------------------------------------------------
r12169 | arjenmarkus | 2012-02-19 02:37:10 -0800 (Sun, 19 Feb 2012) | 1 line
Changed paths:
   M /trunk/examples/f95/CMakeLists.txt
   A /trunk/examples/f95/x00f.f90
   M /trunk/examples/tcl/CMakeLists.txt
   A /trunk/examples/tcl/x00
   A /trunk/examples/tcl/x00.tcl

Add example x00 for both Fortran 95 and Tcl
------------------------------------------------------------------------
r12168 | airwin | 2012-02-17 14:39:16 -0800 (Fri, 17 Feb 2012) | 8 lines
Changed paths:
   A /trunk/cmake/modules/FindLua.cmake
   M /trunk/cmake/modules/lua.cmake

Modernize Lua build system support so that lua-5.x should work in
general.

These changes give good results for the test_diff_psc target in the
build tree and CMake-based installed example tree for lua-5.1.  They
still need to be tested for lua-5.2 (and 5.0 if anybody still has access
to that).

------------------------------------------------------------------------
r12167 | airwin | 2012-02-16 12:24:20 -0800 (Thu, 16 Feb 2012) | 4 lines
Changed paths:
   M /trunk/examples/lua/x02.lua
   M /trunk/examples/lua/x04.lua
   M /trunk/examples/lua/x08.lua
   M /trunk/examples/lua/x11.lua
   M /trunk/examples/lua/x13.lua
   M /trunk/examples/lua/x17.lua
   M /trunk/examples/lua/x21.lua
   M /trunk/examples/lua/x23.lua
   M /trunk/examples/lua/x26.lua
   M /trunk/examples/lua/x27.lua
   M /trunk/examples/lua/x30.lua
   M /trunk/examples/lua/x33.lua

math.mod is only available in compatibility mode for in Lua-5.1 and does
not exist for Lua-5.2 so replace all instances of math.mod with the %
operator.  This change passed test_diff_psc for Lua-5.1.

------------------------------------------------------------------------
r12166 | airwin | 2012-02-14 23:37:17 -0800 (Tue, 14 Feb 2012) | 10 lines
Changed paths:
   M /trunk/src/pllegend.c

Improve handling of plcolorbar case where none of
PL_COLORBAR_LABEL_(RIGHT|TOP|LEFT|BOTTOM) bits are specified for opt.
In this case, the user wants no label on the colorbar so return
immediately from draw_label.

This fixes an uninitialized opt_label revealed by valgrind for

examples/c/x16c -colorbar -dev psc


------------------------------------------------------------------------
r12165 | airwin | 2012-02-10 14:03:53 -0800 (Fri, 10 Feb 2012) | 10 lines
Changed paths:
   M /trunk/cmake/modules/plplot.cmake

Use NON_TRANSITIVE linking by default for the shared libraries case for
all non-windows systems.

The reason for this change is it appears that this option (which
prevents overlinking) works well on Linux.

I have assumed that is also the case on Mac OS X, and _not_ the
case on Windows systems, but those assumptions need testing.


------------------------------------------------------------------------
r12164 | andrewross | 2012-02-01 02:11:21 -0800 (Wed, 01 Feb 2012) | 3 lines
Changed paths:
   M /trunk/examples/f95/x28f.f90

When plotting single characters need to append PL_END_OF_STRING to ensure spaces get plotted correctly. I now get a clean result for make test_diff_psc.


------------------------------------------------------------------------
r12163 | arjenmarkus | 2012-01-31 21:43:09 -0800 (Tue, 31 Jan 2012) | 7 lines
Changed paths:
   M /trunk/bindings/f95/sfstubsf95.f90
   M /trunk/examples/f95/x20f.f90

Introduce a new parameter "PL_END_OF_STRING" that indicates the precise end of a string, so that
in Fortran you can have proper significant trailing blanks.

This affected example x20f (and it also appeared to affect example x28f, but for some mysterious reason 
the difference with the C example has disappeared)

Note: this parameter needs to be documented still.
------------------------------------------------------------------------
r12162 | arjenmarkus | 2012-01-31 21:26:07 -0800 (Tue, 31 Jan 2012) | 1 line
Changed paths:
   M /trunk/examples/f95/x09f.f90

Correct mistake in assignmentts to xg1 and yg1 (different array dimensions for left- and right-hand sides - see SF bug tracker)
------------------------------------------------------------------------
r12161 | andrewross | 2012-01-28 11:27:06 -0800 (Sat, 28 Jan 2012) | 3 lines
Changed paths:
   M /trunk/plplot_test/test_octave.sh.in
   M /trunk/plplot_test/test_octave_interactive.sh.in

Change split -> strsplit in octave test scripts as required for octave 3.6.


------------------------------------------------------------------------
r12160 | airwin | 2012-01-27 14:29:16 -0800 (Fri, 27 Jan 2012) | 18 lines
Changed paths:
   M /trunk/bindings/f77/CMakeLists.txt
   M /trunk/bindings/f95/CMakeLists.txt
   M /trunk/bindings/f95/configurable.f90
   M /trunk/cmake/modules/TestF77CmdLine.cmake
   M /trunk/examples/f77/CMakeLists.txt
   M /trunk/examples/f95/CMakeLists.txt
   M /trunk/examples/plplot_configure.cmake_installed_examples.in

Replace the iargc and getarg GNU extensions in
bindings/f95/configurable.f90 with the Fortran 2003 standard library
routines, command_argument_count and get_command_argument.

Arjen's tests show this change means it is no longer necessary to
build configurable.f90 in a separate static library on windows
platforms.  Therefore, remove all STATIC_OPTS logic from the build
system that made that separate static build possible. This means,
configurable.f90 is now completely equivalent to other source for the
plplotf95 library on all platforms now.  (Since it is not configured,
it is also time to change its name, but I will leave that to Arjen.)

This change has been tested with the test_diff_psc target on Linux
with good results (except for examples 20 and 28 because of on-going
blank issues and the missing example 00).  That target should also be tested
on Windows to make sure all is well with that platform for Fortran 95.


------------------------------------------------------------------------
r12159 | airwin | 2012-01-27 14:17:33 -0800 (Fri, 27 Jan 2012) | 4 lines
Changed paths:
   M /trunk/bindings/f95/strutil.f90

Revert previous change since that caused a run-time error for example
14, and because Arjen and Andrew have come to consensus on a better
solution to the current example 20 and 28 differences for examples/f95.

------------------------------------------------------------------------
r12158 | andrewross | 2012-01-25 14:52:52 -0800 (Wed, 25 Jan 2012) | 3 lines
Changed paths:
   M /trunk/doc/docbook/src/api.xml

Update example references in documentation following recent changes to example 21.


------------------------------------------------------------------------
r12157 | andrewross | 2012-01-25 04:37:39 -0800 (Wed, 25 Jan 2012) | 3 lines
Changed paths:
   M /trunk/examples/ada/x21a.adb
   M /trunk/examples/ada/xthick21a.adb

Update ada versions of example 21 to follow the new form. This should complete the changes, with the exception of fortran 77 which I don't propose to update any more.


------------------------------------------------------------------------
r12156 | andrewross | 2012-01-25 03:41:48 -0800 (Wed, 25 Jan 2012) | 3 lines
Changed paths:
   M /trunk/examples/ocaml/x21.ml

Tweak ocaml version of example 21 to produce identical results to C version.


------------------------------------------------------------------------
r12155 | andrewross | 2012-01-25 03:41:23 -0800 (Wed, 25 Jan 2012) | 3 lines
Changed paths:
   M /trunk/examples/lua/x21.lua

Update lua version of example 21.


------------------------------------------------------------------------
r12154 | andrewross | 2012-01-25 01:29:48 -0800 (Wed, 25 Jan 2012) | 3 lines
Changed paths:
   M /trunk/examples/d/x21d.d

Update D example 21 following changes to C version.


------------------------------------------------------------------------
r12153 | andrewross | 2012-01-25 01:28:46 -0800 (Wed, 25 Jan 2012) | 3 lines
Changed paths:
   M /trunk/drivers/wxwidgets_agg.cpp

Fix compiler warning with explicit casting.


------------------------------------------------------------------------
r12152 | airwin | 2012-01-24 10:58:55 -0800 (Tue, 24 Jan 2012) | 3 lines
Changed paths:
   M /trunk/bindings/f95/strutil.f90

Fix recent regression that no longer preserved trailing blanks in Fortran
strings.

------------------------------------------------------------------------
r12151 | andrewross | 2012-01-24 07:28:48 -0800 (Tue, 24 Jan 2012) | 3 lines
Changed paths:
   M /trunk/examples/java/x21.java
   M /trunk/examples/python/xw21.py

Update python and java versions of example 21 following recent changes to C version.


------------------------------------------------------------------------
r12150 | andrewross | 2012-01-24 03:31:12 -0800 (Tue, 24 Jan 2012) | 3 lines
Changed paths:
   M /trunk/bindings/f95/strutil.f90

Fix error in f95 string handling functions. Argument order was wrong for call to achar, which resulted in strings not being translated from C to fortran properly.


------------------------------------------------------------------------
r12149 | arjenmarkus | 2012-01-23 21:39:57 -0800 (Mon, 23 Jan 2012) | 1 line
Changed paths:
   M /trunk/examples/f95/x17f.f90
   M /trunk/examples/f95/x18f.f90

Restyled two small examples
------------------------------------------------------------------------
r12148 | arjenmarkus | 2012-01-23 12:42:50 -0800 (Mon, 23 Jan 2012) | 1 line
Changed paths:
   M /trunk/examples/tcl/x21.tcl

Propagate the recent changes in example 21 to the Tcl version
------------------------------------------------------------------------
r12147 | airwin | 2012-01-21 16:39:02 -0800 (Sat, 21 Jan 2012) | 8 lines
Changed paths:
   M /trunk/drivers/wxwidgets_agg.cpp
   M /trunk/drivers/wxwidgets_dc.cpp
   M /trunk/drivers/wxwidgets_gc.cpp
   M /trunk/src/plfreetype.c

Apply slightly modified patch by Phil Rosenberg to replace references
to cmap0 (except for background which is a special case which must use
cmap0) by curcolor.  This change allows plcol1 (which also sets
curcolor just like plcol0) to affect the text colors in the first page
of example 21 for the wxwidgets devices just like happens for all
other devices.


------------------------------------------------------------------------
r12146 | airwin | 2012-01-21 16:21:26 -0800 (Sat, 21 Jan 2012) | 2 lines
Changed paths:
   M /trunk/bindings/d/plplot.d
   M /trunk/bindings/java/plplotjavac.i
   M /trunk/drivers/psttf.cc
   M /trunk/include/plplot.h

Style previously committed changes.

------------------------------------------------------------------------
r12145 | andrewross | 2012-01-21 13:58:15 -0800 (Sat, 21 Jan 2012) | 3 lines
Changed paths:
   M /trunk/cmake/modules/octave.cmake

Update minimum octave version to 3.2.0 for cmake check.


------------------------------------------------------------------------
r12144 | andrewross | 2012-01-21 13:56:43 -0800 (Sat, 21 Jan 2012) | 5 lines
Changed paths:
   M /trunk/bindings/octave/PLplot/figure.m
   M /trunk/bindings/octave/PLplot/toggle_plplot_use.m

Update minimum octave version to 3.2 and replace use of split (now obsolete) with strsplit.

This will probably just fail on versions of octave less than 3.2 since strsplit was not available on earlier version. Could do with a more portable way of checking version.


------------------------------------------------------------------------
r12143 | andrewross | 2012-01-21 13:52:54 -0800 (Sat, 21 Jan 2012) | 3 lines
Changed paths:
   M /trunk/examples/c/x21c.c
   M /trunk/examples/c++/x21.cc
   M /trunk/examples/f95/x21f.f90
   M /trunk/examples/octave/x21c.m

Update example 21. Remove extraneous call to cmap1_init in C version. Update C++, f95 and octave versions following the changes to the C version.


------------------------------------------------------------------------
r12142 | hezekiahcarty | 2012-01-21 10:50:23 -0800 (Sat, 21 Jan 2012) | 5 lines
Changed paths:
   M /trunk/examples/ocaml/x21.ml

Update OCaml example 21 to match recent C example changes

- Points are now colored according to the Z-value of the point

- plstring is used to draw points rather than plpoin
------------------------------------------------------------------------
r12141 | airwin | 2012-01-20 21:25:57 -0800 (Fri, 20 Jan 2012) | 6 lines
Changed paths:
   M /trunk/examples/c/x21c.c

Move from 141 to 727 as the correct Hershey escape to use to represent
the multiplication sign for the default plfontld( 1 ) (i.e., the
"extended" Hershey fonts).  This fixes the previous issue with Hershey
drivers such as -dev xwin and -dev tk and still gives good results for
modern unicode font drivers such as svg, cairo, and qt.

------------------------------------------------------------------------
r12140 | airwin | 2012-01-20 21:11:21 -0800 (Fri, 20 Jan 2012) | 2 lines
Changed paths:
   M /trunk/examples/python/test_circle.py

Add plstring to the list of ways to render an asterisk.

------------------------------------------------------------------------
r12139 | airwin | 2012-01-20 17:10:10 -0800 (Fri, 20 Jan 2012) | 10 lines
Changed paths:
   M /trunk/examples/c/x21c.c

Use a different color map 1 so that the black band in the middle of
the default color map 1 range is eliminated.

Drop page one of this example which is largely redundant (now that
this cmap1 change has been done) with the second page that was just
introduced.

Use plstring rather than plpoin to draw the "X" symbol at each point.


------------------------------------------------------------------------
r12138 | airwin | 2012-01-20 12:53:44 -0800 (Fri, 20 Jan 2012) | 2 lines
Changed paths:
   M /trunk/examples/c++/README.qt_example

Update the description of how you build and run the special qt example.

------------------------------------------------------------------------
r12137 | airwin | 2012-01-20 12:07:52 -0800 (Fri, 20 Jan 2012) | 4 lines
Changed paths:
   M /trunk/doc/docbook/src/advanced.xml

Clarify the introduction to color to make it clear both
plcol0 and plcol1 set the current color which is used for all
subsequent plotting actions.

------------------------------------------------------------------------
r12136 | andrewross | 2012-01-20 02:34:19 -0800 (Fri, 20 Jan 2012) | 3 lines
Changed paths:
   M /trunk/drivers/psttf.cc

Fix bug in psttf driver. No idea why this hasn't bitten us before. Maybe my version of ghostscript is just more picky than it used to be.


------------------------------------------------------------------------
r12135 | andrewross | 2012-01-20 01:17:30 -0800 (Fri, 20 Jan 2012) | 3 lines
Changed paths:
   M /trunk/examples/c/x21c.c

Modify example 21 to demonstrate setting the colour of a plotted point using the cmap1 palette.


------------------------------------------------------------------------
r12134 | airwin | 2012-01-17 11:20:11 -0800 (Tue, 17 Jan 2012) | 4 lines
Changed paths:
   M /trunk/README.release
   M /trunk/cmake/modules/fortran.cmake

Speed up the deprecation/removal of the f77 bindings and examples as
discussed on list.


------------------------------------------------------------------------
r12133 | airwin | 2012-01-16 10:39:42 -0800 (Mon, 16 Jan 2012) | 15 lines
Changed paths:
   M /trunk/doc/docbook/src/api.xml

We definitely don't want a type since this is Python syntax.
Furthermore, now that I have investigated a bit further, I think the
literal tags should surround the whole Python assignment statement. 
The result validates, but I haven't looked at the actual generated
documentation yet.  

As far as I know, this is our first attempt to deal in the redacted
form with the assignment statements that some languages (such as
Python, Perl, and Octave) use to handle C output arguments.  So this
needs further review as we gain experience with those languages for
the PLplot functions that have output arguments (plgriddata, plgdev,
plgfnam, plgdev for the arrays, and many more functions that output
single-variable arguments.)


------------------------------------------------------------------------
r12132 | andrewross | 2012-01-16 04:27:40 -0800 (Mon, 16 Jan 2012) | 3 lines
Changed paths:
   M /trunk/bindings/d/plplot.d

Update plstransform in D bindings consistent with other functions (old version worked on some versions of gdc, but created warnings on newer versions).


------------------------------------------------------------------------
r12131 | andrewross | 2012-01-16 03:35:11 -0800 (Mon, 16 Jan 2012) | 3 lines
Changed paths:
   M /trunk/doc/docbook/src/api.xml

Fix missing tag introduced in recent changes to plgriddata documentation. Alan - please check this is what you meant.


------------------------------------------------------------------------
r12130 | airwin | 2012-01-14 15:47:11 -0800 (Sat, 14 Jan 2012) | 11 lines
Changed paths:
   M /trunk/README.release
   M /trunk/bindings/python/plplotcmodule.i
   M /trunk/doc/docbook/src/api.xml
   M /trunk/examples/python/xw21.py

Change invocation of the Python version of plgriddata.

# old version (which overwrites preexisting zg in place):
zg = reshape(zeros(xp*yp),(xp,yp))
plgriddata(x, y, z, xg, yg, zg, alg, opt[alg-1])

# new version (which uses a properly returned newly created NumPy array
# as per the normal Python expectations):
zg = plgriddata(x, y, z, xg, yg, alg, opt[alg-1])


------------------------------------------------------------------------
r12129 | airwin | 2012-01-14 15:19:10 -0800 (Sat, 14 Jan 2012) | 2 lines
Changed paths:
   M /trunk/examples/c/x11c.c
   M /trunk/examples/tk/xtk01.c

Style previous commits.

------------------------------------------------------------------------
r12128 | airwin | 2012-01-14 15:17:53 -0800 (Sat, 14 Jan 2012) | 2 lines
Changed paths:
   M /trunk/bindings/tk/plframe.c
   M /trunk/bindings/tk/plserver.c
   M /trunk/drivers/cairo.c
   M /trunk/drivers/psttf.cc
   M /trunk/drivers/test-drv-info.c
   M /trunk/examples/c++/x15.cc
   M /trunk/src/plcore.c
   M /trunk/src/pllegend.c
   M /trunk/src/plstdio.c
   M /trunk/utils/pltek.c

Style previous commits.

------------------------------------------------------------------------
r12127 | airwin | 2012-01-12 18:06:02 -0800 (Thu, 12 Jan 2012) | 18 lines
Changed paths:
   M /trunk/scripts/style_source.sh

For the --apply option change the shell script logic to do the
following steps:

1. List all files (and diffs all files if the --diff option is used as
well) that will be changed.

2. Ask whether you want to apply those changes.  If no, immediate exit.
If yes, proceed with the further steps.

3. Apply the changes.

4. List all files (and diffs all files if the --diff option is used as
well) that required further styling after the current style changes
were made.  Normally, this step does not list anything, but it does
warn you when further runs of the script are required on those rare
occasions where uncrustify has to be applied iteratively.


------------------------------------------------------------------------
r12126 | airwin | 2012-01-11 15:07:23 -0800 (Wed, 11 Jan 2012) | 5 lines
Changed paths:
   M /trunk/scripts/style_source.sh

Make the --apply option safer by listing all files (and diffs as well
if the --diff option is used) that will be affected before asking the
question of whether to apply the changes.


------------------------------------------------------------------------
r12125 | arjenmarkus | 2012-01-10 21:31:09 -0800 (Tue, 10 Jan 2012) | 1 line
Changed paths:
   M /trunk/examples/f95/x12f.f90
   M /trunk/examples/f95/x13f.f90
   M /trunk/examples/f95/x25f.f90

Reformat some of the smaller examples in accordance with the "new" style
------------------------------------------------------------------------
r12124 | arjenmarkus | 2012-01-07 03:55:17 -0800 (Sat, 07 Jan 2012) | 1 line
Changed paths:
   M /trunk/examples/f95/x09f.f90
   M /trunk/examples/f95/x10f.f90
   M /trunk/examples/f95/x11f.f90

Three more Fortran 95 examples adapted to the new style 
------------------------------------------------------------------------
r12123 | andrewross | 2012-01-05 05:59:36 -0800 (Thu, 05 Jan 2012) | 9 lines
Changed paths:
   M /trunk/cmake/modules/pkg-config.cmake
   M /trunk/debian/rules
   M /trunk/doc/docbook/src/deploying.xml
   M /trunk/examples/c/Makefile.examples.in
   M /trunk/examples/c++/Makefile.examples.in
   M /trunk/examples/d/Makefile.examples.in
   M /trunk/examples/f77/Makefile.examples.in
   M /trunk/examples/f95/Makefile.examples.in
   M /trunk/examples/ocaml/Makefile.examples.in
   M /trunk/examples/tk/Makefile.examples.in

Simplify the Makefile.examples support by removing all mentions of 
plplot-config since it no longer exists.

Also remove pkg_config_true and pkg_config_false logic since this 
serves no useful purpose now. Without pkg-config the Makefiles
won't work anyway. There is always the cmake alternative build
system.


------------------------------------------------------------------------
r12122 | andrewross | 2012-01-05 05:00:11 -0800 (Thu, 05 Jan 2012) | 3 lines
Changed paths:
   M /trunk/cmake/modules/FindLTDL.cmake
   M /trunk/cmake/modules/tcl-related.cmake
   M /trunk/cmake/modules/wxwidgets.cmake
   M /trunk/examples/tk/Makefile.examples.in

Commit patch from Orion to fix a few more unnecessary linkage errors.


------------------------------------------------------------------------
r12121 | andrewross | 2012-01-05 03:58:24 -0800 (Thu, 05 Jan 2012) | 3 lines
Changed paths:
   M /trunk/bindings/java/plplotjavac.i

Potential fix for java crashes with pltr2 to avoid referencing variables that are out of scope.


------------------------------------------------------------------------
r12120 | andrewross | 2012-01-05 03:51:21 -0800 (Thu, 05 Jan 2012) | 3 lines
Changed paths:
   M /trunk/cmake/modules/ada.cmake

Remove debugging message about gnat version.


------------------------------------------------------------------------
r12119 | andrewross | 2012-01-04 15:00:18 -0800 (Wed, 04 Jan 2012) | 3 lines
Changed paths:
   M /trunk/cmake/modules/ada.cmake

Test out a method of determining the gnat version from the CMAKE_Ada_COMPILER variable to ensure we look for the right version of libgnat.


------------------------------------------------------------------------
r12118 | airwin | 2012-01-04 11:15:52 -0800 (Wed, 04 Jan 2012) | 8 lines
Changed paths:
   M /trunk/examples/ocaml/CMakeLists.txt

Fix for the last ocaml rpath commit.  Apply USE_RPATH logic just to
the install tree and always use rpath (regardless of USE_RPATH) in the
build tree.  This is consistent with how we build the rest of our
libraries and examples.

Like the last commit, subject to further testing by Orion.


------------------------------------------------------------------------
r12117 | airwin | 2012-01-04 10:02:33 -0800 (Wed, 04 Jan 2012) | 2 lines
Changed paths:
   M /trunk/examples/ocaml/CMakeLists.txt

For ocaml examples only use rpath link command if USE_RPATH is ON.

------------------------------------------------------------------------
r12116 | andrewross | 2012-01-04 07:45:07 -0800 (Wed, 04 Jan 2012) | 3 lines
Changed paths:
   M /trunk/scripts/CMakeLists.txt

Fix error in scripts/CMakeLists.txt when PLD_plmeta is enabled.


------------------------------------------------------------------------
r12115 | andrewross | 2012-01-04 07:44:03 -0800 (Wed, 04 Jan 2012) | 3 lines
Changed paths:
   M /trunk/cmake/modules/drivers-init.cmake

Add cmake warning if a device is enabled which has been disabled by default either because it is deprecated or is buggy.


------------------------------------------------------------------------
r12114 | andrewross | 2012-01-04 06:11:00 -0800 (Wed, 04 Jan 2012) | 3 lines
Changed paths:
   M /trunk/debian/changelog
   M /trunk/debian/control
   M /trunk/debian/rules

Fix up new debian package release.


------------------------------------------------------------------------
r12113 | andrewross | 2012-01-03 08:17:28 -0800 (Tue, 03 Jan 2012) | 3 lines
Changed paths:
   M /trunk/debian/changelog
   M /trunk/debian/control.in
   M /trunk/debian/rules

For D compiler version 1 for Debian packages as plplot doesn't work with v2 (the new default).


------------------------------------------------------------------------
r12112 | andrewross | 2012-01-03 04:01:41 -0800 (Tue, 03 Jan 2012) | 3 lines
Changed paths:
   M /trunk/cmake/modules/plplot.cmake

Ensure PL_DEPRECATED is initialised to OFF by default.


------------------------------------------------------------------------
r12111 | andrewross | 2012-01-03 02:20:31 -0800 (Tue, 03 Jan 2012) | 3 lines
Changed paths:
   M /trunk/include/plplot.h

Comment out the macros for Alloc2dGrid, Free2dGrid and MinMax2dGrid since these are only for backward compatibility and haven't been actively used for a long time. They interfere with the C++ bindings since the C++ plstream class uses the function names without the pl prefix and these names get mangled by the macros.


------------------------------------------------------------------------
r12110 | airwin | 2011-12-14 16:42:41 -0800 (Wed, 14 Dec 2011) | 5 lines
Changed paths:
   M /trunk/bindings/qt_gui/plqt.cpp

Apply patch suggested by Alexandre Becoulet to replace qtwidgets
hard-coded background by the PLplot background.  This makes the results
of resizing the window look much nicer.


------------------------------------------------------------------------
r12109 | andrewross | 2011-12-08 15:48:32 -0800 (Thu, 08 Dec 2011) | 3 lines
Changed paths:
   M /trunk/utils/pltek.c

Fix up warnings with signed / unsigned int casting and comparison.


------------------------------------------------------------------------
r12108 | andrewross | 2011-12-08 15:31:06 -0800 (Thu, 08 Dec 2011) | 3 lines
Changed paths:
   M /trunk/bindings/python/plplot_widgetmodule.c

Mark function argument as unused.


------------------------------------------------------------------------
r12107 | andrewross | 2011-12-08 15:14:36 -0800 (Thu, 08 Dec 2011) | 3 lines
Changed paths:
   M /trunk/bindings/f95/configurable.f90
   M /trunk/bindings/f95/sfstubs.f90
   M /trunk/bindings/f95/sfstubsf95.f90
   M /trunk/bindings/f95/strutil.f90

Remove unused argument for string conversion routine.


------------------------------------------------------------------------
r12106 | andrewross | 2011-12-08 14:57:11 -0800 (Thu, 08 Dec 2011) | 3 lines
Changed paths:
   M /trunk/src/pllegend.c

Comment out code which set but never used variables. I've not deleted it as this is still a work in progress and the code might be required at a later stage.


------------------------------------------------------------------------
r12105 | andrewross | 2011-12-08 12:56:36 -0800 (Thu, 08 Dec 2011) | 3 lines
Changed paths:
   M /trunk/bindings/qt_gui/plqt.cpp

Remove unused variable.


------------------------------------------------------------------------
r12104 | andrewross | 2011-12-08 12:53:37 -0800 (Thu, 08 Dec 2011) | 3 lines
Changed paths:
   M /trunk/drivers/tk.c

tk driver doesn't really need plxwd.h including (only X11/keysym.h) and not including it avoids warnings about unused variables.


------------------------------------------------------------------------
r12103 | andrewross | 2011-12-08 12:52:22 -0800 (Thu, 08 Dec 2011) | 3 lines
Changed paths:
   M /trunk/drivers/psttf.cc

Remove unused variable.


------------------------------------------------------------------------
r12102 | andrewross | 2011-12-08 12:24:51 -0800 (Thu, 08 Dec 2011) | 3 lines
Changed paths:
   M /trunk/examples/c++/x15.cc

Remove some excess crud from C++ example 15. This code was unused and I assume a result of cutting and pasting when the example was originally written.


------------------------------------------------------------------------
r12101 | andrewross | 2011-12-08 12:14:42 -0800 (Thu, 08 Dec 2011) | 3 lines
Changed paths:
   M /trunk/src/plstdio.c

Fix extra warning introduced by previous removal of set but not used variable. Also fix typos in comments.


------------------------------------------------------------------------
r12100 | andrewross | 2011-12-08 11:46:11 -0800 (Thu, 08 Dec 2011) | 3 lines
Changed paths:
   M /trunk/README.release

Fix typo error - cmake uses CXXFLAGS not CCFLAGS


------------------------------------------------------------------------
r12099 | arjenmarkus | 2011-12-07 21:49:54 -0800 (Wed, 07 Dec 2011) | 2 lines
Changed paths:
   M /trunk/bindings/f95/configurable.f90
   M /trunk/bindings/f95/sfstubsf95.f90
   M /trunk/bindings/f95/strutil.f90

Reformatted the code, introduced more Fortran 95 intrinsics (notably trim())
to simplify the code.
------------------------------------------------------------------------
r12098 | arjenmarkus | 2011-12-07 21:48:19 -0800 (Wed, 07 Dec 2011) | 1 line
Changed paths:
   M /trunk/examples/f95/x07f.f90
   M /trunk/examples/f95/x08f.f90

More Fortran 95 features introduced. Reformatted in accordance with the other examples.
------------------------------------------------------------------------
r12097 | arjenmarkus | 2011-12-07 00:56:34 -0800 (Wed, 07 Dec 2011) | 2 lines
Changed paths:
   M /trunk/examples/f95/x05f.f90
   M /trunk/examples/f95/x06f.f90

Adjusting the formatting of two more examples. Use the auxiliary arange()
function in x06f.f90. 
------------------------------------------------------------------------
r12096 | andrewross | 2011-12-03 13:11:14 -0800 (Sat, 03 Dec 2011) | 3 lines
Changed paths:
   M /trunk/include/plcore.h

Variable only used for the dynamic drivers case, so move it into the #ifdef block. Avoids variable defined but unused warning.


------------------------------------------------------------------------
r12095 | andrewross | 2011-12-03 00:56:15 -0800 (Sat, 03 Dec 2011) | 3 lines
Changed paths:
   M /trunk/bindings/c++/plstream.cc
   M /trunk/bindings/f77/sc3d.c
   M /trunk/bindings/f77/sccont.c
   M /trunk/bindings/f77/scstubs.c
   M /trunk/bindings/f95/sc3d.c
   M /trunk/bindings/f95/sccont.c
   M /trunk/bindings/f95/scstubs.c
   M /trunk/drivers/cairo.c
   M /trunk/examples/c/x08c.c
   M /trunk/examples/c/x09c.c
   M /trunk/examples/c/x11c.c
   M /trunk/examples/c/x14c.c
   M /trunk/examples/c/x16c.c
   M /trunk/examples/c/x20c.c
   M /trunk/examples/c/x21c.c
   M /trunk/examples/c/x22c.c
   M /trunk/examples/c/x28c.c
   M /trunk/examples/c/x33c.c
   M /trunk/examples/tk/xtk01.c
   M /trunk/include/plplot.h
   M /trunk/include/plplotP.h
   M /trunk/src/pdfutils.c
   M /trunk/src/plcont.c
   M /trunk/src/plgradient.c
   M /trunk/src/plimage.c
   M /trunk/src/pllegend.c
   M /trunk/src/plot3d.c
   M /trunk/src/plshade.c
   M /trunk/src/plvect.c

Large changes to functions taking 2-d arrays to convert from (const PLFLT **) to (const PLFLT * const *) . Use of const PLFLT ** is not really safe (generates gcc warnings) as it only ensure the data is unchanged, not the arrays of pointers. It is therefore trivial to change the array contents by changing the pointers. This is not generally what is intended. 


------------------------------------------------------------------------
r12094 | andrewross | 2011-12-03 00:35:52 -0800 (Sat, 03 Dec 2011) | 3 lines
Changed paths:
   M /trunk/examples/f95/x01f.f90
   M /trunk/examples/f95/x02f.f90
   M /trunk/examples/f95/x03f.f90

Fix up some compiler warnings (unused variables and type conversions) for f95 examples.


------------------------------------------------------------------------
r12093 | andrewross | 2011-12-03 00:33:04 -0800 (Sat, 03 Dec 2011) | 3 lines
Changed paths:
   M /trunk/bindings/tcl/tclAPI.c
   M /trunk/bindings/tcl/tclMain.c
   M /trunk/bindings/tk/plserver.c
   M /trunk/utils/parity_bit_check.c
   M /trunk/utils/pltcl.c
   M /trunk/utils/pltek.c

Fix up some compiler warnings.


------------------------------------------------------------------------
r12092 | andrewross | 2011-12-02 05:31:01 -0800 (Fri, 02 Dec 2011) | 3 lines
Changed paths:
   M /trunk/drivers/cairo.c
   M /trunk/drivers/svg.c
   M /trunk/src/plstdio.c

Remove some more unused variables.


------------------------------------------------------------------------
r12091 | andrewross | 2011-12-02 05:21:14 -0800 (Fri, 02 Dec 2011) | 3 lines
Changed paths:
   M /trunk/examples/f95/x04f.f90
   M /trunk/examples/f95/x13f.f90

Fix up two minor compiler warnings in fortran 95 examples


------------------------------------------------------------------------
r12090 | andrewross | 2011-12-02 05:19:39 -0800 (Fri, 02 Dec 2011) | 3 lines
Changed paths:
   M /trunk/src/plargs.c

Whoops. Accidental deletion of comment in previous commit.


------------------------------------------------------------------------
r12089 | andrewross | 2011-12-02 05:14:05 -0800 (Fri, 02 Dec 2011) | 3 lines
Changed paths:
   M /trunk/src/plargs.c
   M /trunk/src/plcore.c
   M /trunk/src/plgradient.c
   M /trunk/src/plstdio.c

Fix up a number of unused variables picked up by compiler warnings. In one case this fixed a bug (# at beginning of rgb value passed as argument to the -bg option was not properly ignored. 


------------------------------------------------------------------------
r12088 | andrewross | 2011-12-02 02:31:07 -0800 (Fri, 02 Dec 2011) | 3 lines
Changed paths:
   M /trunk/drivers/ps.c
   M /trunk/drivers/psttf.cc
   M /trunk/drivers/wxwidgets.cpp

Remove unneeded (char *) casts from driver strings.


------------------------------------------------------------------------
r12087 | andrewross | 2011-12-02 02:12:46 -0800 (Fri, 02 Dec 2011) | 3 lines
Changed paths:
   M /trunk/src/plcore.c

Fix spelling mistake in comment.


------------------------------------------------------------------------
r12086 | andrewross | 2011-12-01 15:39:56 -0800 (Thu, 01 Dec 2011) | 3 lines
Changed paths:
   M /trunk/bindings/tcl/tclMain.c

Function definition is not needed as the function is already defined in the headers. Fixes compiler warning.


------------------------------------------------------------------------
r12085 | andrewross | 2011-12-01 15:38:31 -0800 (Thu, 01 Dec 2011) | 3 lines
Changed paths:
   M /trunk/include/disptab.h

Reinstate const property for dispatch table strings. Fixes compiler warnings.


------------------------------------------------------------------------
r12084 | andrewross | 2011-12-01 12:27:18 -0800 (Thu, 01 Dec 2011) | 3 lines
Changed paths:
   M /trunk/bindings/tk/plframe.c
   M /trunk/bindings/tk/plserver.c
   M /trunk/bindings/tk/tkMain.c
   M /trunk/bindings/tk/tkshell.c
   M /trunk/bindings/tk-x-plat/plplotter.c
   M /trunk/drivers/tk.c

Remove remaining direct access to Tcl interp->result.


------------------------------------------------------------------------
r12083 | andrewross | 2011-12-01 12:26:02 -0800 (Thu, 01 Dec 2011) | 3 lines
Changed paths:
   M /trunk/debian/control.in

Update short package description for Debian libplplot-ada0-dev package.


------------------------------------------------------------------------
r12082 | andrewross | 2011-12-01 03:56:18 -0800 (Thu, 01 Dec 2011) | 3 lines
Changed paths:
   M /trunk/bindings/octave/PLplot/struct_contains.m
   M /trunk/drivers/test-drv-info.c

Fix a couple more old addresses for FSF.


------------------------------------------------------------------------
r12081 | andrewross | 2011-12-01 03:52:28 -0800 (Thu, 01 Dec 2011) | 3 lines
Changed paths:
   M /trunk/bindings/tk-x-plat/plplotter.c
   M /trunk/doc/docbook/src/intro.xml
   M /trunk/drivers/plmeta.c
   M /trunk/drivers/plplotcanvas-hacktext.c
   M /trunk/include/plplotcanvas-hacktext.h

Fix up old address for FSF in the license section of individual source files.


------------------------------------------------------------------------
r12080 | andrewross | 2011-12-01 01:43:55 -0800 (Thu, 01 Dec 2011) | 3 lines
Changed paths:
   M /trunk/COPYING.LIB

Update the LGPL license to correct the FSF address. This version is take from the definitive Debian LGPL-2 version. 


------------------------------------------------------------------------
r12079 | andrewross | 2011-12-01 01:39:23 -0800 (Thu, 01 Dec 2011) | 3 lines
Changed paths:
   M /trunk/debian/changelog

Debian packages need rebuilding to fix gnat dependency problems.


------------------------------------------------------------------------
r12078 | andrewross | 2011-11-30 14:09:07 -0800 (Wed, 30 Nov 2011) | 3 lines
Changed paths:
   M /trunk/bindings/tcl/tclMatrix.c
   M /trunk/bindings/tcl/tclMatrix.h

The char * cmd argument passed to Tcl_MatrixInstallXtns is not modified, so mark it as const. Fixes some compiler warnings.


------------------------------------------------------------------------
r12077 | andrewross | 2011-11-30 14:04:42 -0800 (Wed, 30 Nov 2011) | 3 lines
Changed paths:
   M /trunk/examples/tk/xtk02.c
   M /trunk/examples/tk/xtk04.c

The Tcl interp->result string should not be set directly, but via Tcl_SetResult. Direct access is deprecated and is a potential source of memory leaks / string errors. This still needs fixing up in the tk bindings as well.


------------------------------------------------------------------------
r12076 | andrewross | 2011-11-30 06:22:37 -0800 (Wed, 30 Nov 2011) | 3 lines
Changed paths:
   M /trunk/lib/nn/CMakeLists.txt

Link csironn with -lm since csironn uses hypot which is in the maths library.


------------------------------------------------------------------------
r12075 | andrewross | 2011-11-30 06:22:00 -0800 (Wed, 30 Nov 2011) | 3 lines
Changed paths:
   M /trunk/bindings/wxwidgets/CMakeLists.txt

Explicitly link wxwidget bindings against plplotd since it uses several C API functions


------------------------------------------------------------------------
r12074 | andrewross | 2011-11-30 03:40:11 -0800 (Wed, 30 Nov 2011) | 3 lines
Changed paths:
   M /trunk/bindings/ada/CMakeLists.txt
   M /trunk/bindings/d/CMakeLists.txt
   M /trunk/bindings/tcl/CMakeLists.txt
   M /trunk/bindings/wxwidgets/CMakeLists.txt
   M /trunk/examples/c++/Makefile.examples.in

Fix up pkg-config link options for NON_TRANSITIVE=ON case so examples work in the install tree with the Makefile build system.


------------------------------------------------------------------------
r12073 | andrewross | 2011-11-30 03:11:23 -0800 (Wed, 30 Nov 2011) | 3 lines
Changed paths:
   M /trunk/examples/plplot_configure.cmake_installed_examples.in

Fix install-tree cmake build of tk examples for case with NON_TRANSITIVE=ON.


------------------------------------------------------------------------
r12072 | andrewross | 2011-11-30 02:36:26 -0800 (Wed, 30 Nov 2011) | 3 lines
Changed paths:
   M /trunk/bindings/tk/CMakeLists.txt
   M /trunk/examples/tk/CMakeLists.txt
   M /trunk/utils/CMakeLists.txt

Ensure tcl / tck / itcl libraries are explicitly linked in as required so the NON_TRANSITIVE=ON case works correctly.


------------------------------------------------------------------------
r12071 | airwin | 2011-11-29 18:02:32 -0800 (Tue, 29 Nov 2011) | 16 lines
Changed paths:
   M /trunk/examples/f95/CMakeLists.txt
   M /trunk/examples/f95/Makefile.examples.in

Update build system so that the plf95demolib library works properly in
the build tree, the installed examples built and tested with our
CMake-based build system and the installed examples built and tested
with the traditional Makefile + pkg-config approach.

For now I have chosen the approach of installing the library and module in
the standard places, but it might be better to install those
in $prefix/share/plplot5.?.?/examples/f95 since they are designed to
be completely specific with regard to our Fortran 95 examples.

I have also chosen to link to the new plf95demolib library outside the
pkg-config system for our traditional build of the installed f95
examples by configuring the Makefile appropriately.



------------------------------------------------------------------------
r12070 | airwin | 2011-11-29 16:45:32 -0800 (Tue, 29 Nov 2011) | 3 lines
Changed paths:
   M /trunk/README.release

Replace iso 85591 name with its utf8 equivalent to make this a pure
utf8 file.

------------------------------------------------------------------------
r12069 | airwin | 2011-11-29 14:47:37 -0800 (Tue, 29 Nov 2011) | 15 lines
Changed paths:
   M /trunk/CMakeLists.txt
   D /trunk/cmake/modules/language_support/cmake-2.6
   M /trunk/cmake/modules/language_support.cmake
   M /trunk/examples/CMakeLists.txt
   M /trunk/plplot_test/CMakeLists.txt

Remove CMake-2.6 logic from our build system(s) since the minimum
version of CMake we allow is 2.8.2 for Linux and 2.8.6 for all other
platforms.  These changes are intrusive, but they have been
successfully tested with the four tests (test_noninteractive for the three
different trees and ctest for the shared build case) given by 

scripts/comprehensive_test.sh --do_test_interactive no \
--do_nondynamic no --do_static no

The remaining 17 tests (test_interactive for the three different trees
for the shared library case and all 7 tests for both the nondynamic
and static build cases) should be orthogonal to the above changes so
the four tests above should have adequate coverage of these changes.


------------------------------------------------------------------------
r12068 | airwin | 2011-11-29 13:03:33 -0800 (Tue, 29 Nov 2011) | 11 lines
Changed paths:
   M /trunk/examples/CMakeLists.txt
   M /trunk/examples/d/CMakeLists.txt
   M /trunk/examples/d/Makefile.examples.in

Untested change to the build system to only use the --static
pkg-config option for the traditional installed examples build when
the experimental option FORCE_EXTERNAL_STATIC in ON.

The D case is no longer treated as a special case because
FORCE_EXTERNAL_STATIC is ON only when the PLplot internal
libraries are built statically (BUILD_SHARED_LIBS OFF) so that
distinctions between plplotdmd_SHARED ON or OFF no longer matter
for the D case.


------------------------------------------------------------------------
r12067 | airwin | 2011-11-28 22:33:04 -0800 (Mon, 28 Nov 2011) | 11 lines
Changed paths:
   D /trunk/cmake/modules/FindPkgConfig.cmake
   D /trunk/cmake/modules/FindwxWidgets.cmake
   M /trunk/examples/CMakeLists.txt

Use CMake versions of FindwxWidgets.cmake and FindPkgConfig.cmake
rather than our own.  Our own versions were imported into our build
some time ago to allow us to use even older versions of CMake that
didn't have them, but that is no longer necessary now that our minimum
CMake version is 2.8.2 for Linux and 2.8.6 for all other platforms.
Furthermore, the CMake-2.8.x native versions of these two find modules
are more up-to-date and better maintained than our own versions in all
respects.  Finally, the CMake-2.8.x native versions of these files
pass all comprehensive testing.


------------------------------------------------------------------------
r12066 | airwin | 2011-11-28 18:29:30 -0800 (Mon, 28 Nov 2011) | 12 lines
Changed paths:
   M /trunk/cmake/modules/plplot.cmake

Provide NON_TRANSITIVE ON option only for the case of shared libraries.

For the internal static library case, transitive linking is used
regardless by CMake so the only effect of NON_TRANSITIVE ON for this
case would be non-transitive linking for pkg-config used by the
traditional build and test of the installed examples.  Such linking
can introduce inconsistencies with the linking and software library
detection of the core PLplot build.  So avoid that potential
inconsistency by simply not allowing NON_TRANSITIVE ON for the
static internal library build for PLplot.


------------------------------------------------------------------------
r12065 | airwin | 2011-11-28 14:37:50 -0800 (Mon, 28 Nov 2011) | 3 lines
Changed paths:
   M /trunk/cmake/modules/wxwidgets.cmake

Be more careful of the case (e.g., FORCE_EXTERNAL_STATIC ON) when
wxwidgets libraries are not found.

------------------------------------------------------------------------
r12064 | airwin | 2011-11-28 12:09:14 -0800 (Mon, 28 Nov 2011) | 2 lines
Changed paths:
   M /trunk/cmake/modules/cairo.cmake

Indentation fixups.

------------------------------------------------------------------------
r12063 | airwin | 2011-11-28 12:07:21 -0800 (Mon, 28 Nov 2011) | 5 lines
Changed paths:
   M /trunk/cmake/modules/pkg-config.cmake

Use ${_prefix}_VERSION} rather than ${_xprefix}_VERSION} in
pkg_check_pkgconfig macro because the latter is not defined.  This
fixes a FORCE_EXTERNAL_STATIC bug.


------------------------------------------------------------------------
r12062 | airwin | 2011-11-28 12:03:20 -0800 (Mon, 28 Nov 2011) | 2 lines
Changed paths:
   M /trunk/drivers/ps.c
   M /trunk/drivers/wxwidgets.cpp

More "const char *" fixups to quiet compiler warnings.

------------------------------------------------------------------------
r12061 | arjenmarkus | 2011-11-28 02:01:16 -0800 (Mon, 28 Nov 2011) | 5 lines
Changed paths:
   M /trunk/examples/f95/CMakeLists.txt
   M /trunk/examples/f95/plf95demolib.f90
   M /trunk/examples/f95/x01f.f90
   M /trunk/examples/f95/x02f.f90
   M /trunk/examples/f95/x03f.f90
   M /trunk/examples/f95/x04f.f90

First few examples adapted to use more Fortran 95 features. 
Also changed the indentation to 4 spaces (as that is also used
in the examples for C and other languages).
Correction in the demo library - one element too many in the
constructed array.
------------------------------------------------------------------------
r12060 | andrewross | 2011-11-27 12:48:57 -0800 (Sun, 27 Nov 2011) | 3 lines
Changed paths:
   M /trunk/examples/c++/CMakeLists.txt

The C++ wxPLplotDemo example needs explicitly linking with the wx libraries in the NON_TRANSITIVE=ON case.


------------------------------------------------------------------------
r12059 | andrewross | 2011-11-27 12:13:52 -0800 (Sun, 27 Nov 2011) | 3 lines
Changed paths:
   M /trunk/examples/ada/CMakeLists.txt

Explicitly link plplot core library with ada examples to fix link error with NON_TRANSITIVE=ON.


------------------------------------------------------------------------
r12058 | airwin | 2011-11-27 11:26:44 -0800 (Sun, 27 Nov 2011) | 7 lines
Changed paths:
   M /trunk/cmake/modules/FindAGG.cmake

Make AGG find_package module completely depend on pkg_config rather
than searching both the pkg-config location and system locations for
the AGG library.  In particular, if the link flags variable returned
by pkg_check_pkgconfig is CMake logically false, then gracefully exit
with AGG_FOUND OFF.


------------------------------------------------------------------------
r12057 | airwin | 2011-11-27 11:18:29 -0800 (Sun, 27 Nov 2011) | 12 lines
Changed paths:
   M /trunk/cmake/modules/pkg-config.cmake

Modify cmake_link_flags module to signal success/failure with the
CMake logical truth of the link flags variable that is returned rather
than using "message(FATAL_ERROR ..." to stop all cmake processing on
failure.

Modify pkg_check_pkgconfig macro to honor FORCE_EXTERNAL_STATIC
variable.  If that variable is true, then the static versions of all
variables are used and checked, e.g., with a call to cmake_link_flags.
Also, signal the success/failure of pkg_check_pkgconfig with the CMake
logical truth of the link flags variable that is returned.


------------------------------------------------------------------------
r12056 | airwin | 2011-11-27 11:11:24 -0800 (Sun, 27 Nov 2011) | 2 lines
Changed paths:
   M /trunk/cmake/modules/plplot.cmake

More reliable setting and unsetting of FORCE_EXTERNAL_STATIC.

------------------------------------------------------------------------
r12055 | airwin | 2011-11-26 13:44:58 -0800 (Sat, 26 Nov 2011) | 14 lines
Changed paths:
   M /trunk/cmake/modules/plplot.cmake

PC_REQUIRES_TAG always set locally so drop setting a default global value
for that variable/

Improve commentary concerning the NON_TRANSITIVE option.

Implement the FORCE_EXTERNAL_STATIC option for the (internal) static
library case (NOT BUILD_SHARED_LIBS) to force CMake to find and use
only external libraries with a *.a suffix (i.e., static libraries).
This suffix trick only works with UNIX so FORCE_EXTERNAL_STATIC is
ignored in all other cases. The option is experimental.  In fact, it
still does not completely work at this time because of pkg-config
complications. Therefore, its default value is OFF.


------------------------------------------------------------------------
r12054 | airwin | 2011-11-26 13:33:35 -0800 (Sat, 26 Nov 2011) | 26 lines
Changed paths:
   M /trunk/bindings/qt_gui/CMakeLists.txt
   M /trunk/bindings/wxwidgets/CMakeLists.txt

Implement NON_TRANSITIVE case for the wxwidgets and qt_gui bindings.  
This commit should complete my NON_TRANSITIVE work.

scripts/comprehensive_test.sh showed no errors with the

--cmake_added_options -DNON_TRANSITIVE=ON --do_shared yes
--do_nondynamic yes --do_static no

options.  The most recent Linux distributions such as Fedora
and Debian unstable have stricter linkers than my Debian stable
platform, and there is more work to do on those systems before
the above test will pass.

That leaves the "--do_static yes" case where I encountered some
pkg-config trouble in the traditional installed examples build because
the --static option for pkg-config has the side effect that only
static external libraries are looked for, and one of those was missing
on my system. This bad result was due to inconsistency between the
forced static libraries used by pkg-config when the --static option is
used and the shared libraries that CMake tends to look for and use.

That issue can be solved on Unix by configuring our CMake-based build
system to only look for and use static external libraries.  But
implementing that idea will take some substantial additional effort.


------------------------------------------------------------------------
r12053 | airwin | 2011-11-26 12:51:54 -0800 (Sat, 26 Nov 2011) | 3 lines
Changed paths:
   M /trunk/examples/CMakeLists.txt
   M /trunk/examples/ada/Makefile.examples.in
   M /trunk/examples/c/Makefile.examples.in
   M /trunk/examples/c++/Makefile.examples.in
   M /trunk/examples/f77/Makefile.examples.in
   M /trunk/examples/f95/Makefile.examples.in
   M /trunk/examples/tk/Makefile.examples.in

Use the --static pkg-config option for the traditional build and test of
the installed examples under certain circumstances.

------------------------------------------------------------------------
r12052 | airwin | 2011-11-26 12:34:45 -0800 (Sat, 26 Nov 2011) | 9 lines
Changed paths:
   M /trunk/scripts/comprehensive_test.sh

By default use -j8 parallel build option rather than -j4.  It doesn't
seem to slow anything down to have all those tasks contending for my
two processors (and I think that would also pertain to the single
processor case), and there may be an advantage because if some process
is waiting for i/o, others can use the cpu(s).  In any case, with -j8,
the "top" application shows %wa almost always at 0 per cent, i.e., the
cpu's are kept busy with no pauses waiting for i/o to finish.  That is
the ideal result.

------------------------------------------------------------------------
r12051 | airwin | 2011-11-25 23:23:37 -0800 (Fri, 25 Nov 2011) | 3 lines
Changed paths:
   M /trunk/drivers/psttf.cc

Use explicit casts to quiet "const char *" build errors for the
ENABLE_DYNDRIVERS OFF case.  

------------------------------------------------------------------------
r12050 | airwin | 2011-11-25 22:46:51 -0800 (Fri, 25 Nov 2011) | 2 lines
Changed paths:
   M /trunk/examples/tk/xtk02.c
   M /trunk/examples/tk/xtk04.c
   M /trunk/src/plargs.c
   M /trunk/src/plctrl.c

Style previously committed changes.

------------------------------------------------------------------------
r12049 | airwin | 2011-11-25 18:49:31 -0800 (Fri, 25 Nov 2011) | 4 lines
Changed paths:
   M /trunk/bindings/d/CMakeLists.txt

Drop setting PC_STATIC_OPTION_D in this bindings/d subdirectory since
it is not used here.  It is set and also used in the examples/d
subdirectory.

------------------------------------------------------------------------
r12048 | airwin | 2011-11-25 18:42:16 -0800 (Fri, 25 Nov 2011) | 5 lines
Changed paths:
   M /trunk/bindings/ocaml/CMakeLists.txt

OCaml building is complicated so stick with what has worked before
(including setting of PC_REQUIRES_TAG to the transitive linking
value for the pkg-config case) and ignore the NON_TRANSITIVE option
altogether.

------------------------------------------------------------------------
r12047 | airwin | 2011-11-25 18:20:29 -0800 (Fri, 25 Nov 2011) | 2 lines
Changed paths:
   M /trunk/bindings/d/CMakeLists.txt

Fix typo in comment.

------------------------------------------------------------------------
r12046 | andrewross | 2011-11-25 01:26:34 -0800 (Fri, 25 Nov 2011) | 6 lines
Changed paths:
   M /trunk/examples/f77/CMakeLists.txt
   M /trunk/examples/f95/CMakeLists.txt

For f77 / f95 examples with NON_TRANSITIVE=ON then need to explicitly link against 
the C part of the fortran bindings as much of the API is in this library. This 
ensures that the examples build on the latest Fedora / Debian systems with a 
stricter linker.


------------------------------------------------------------------------
r12045 | airwin | 2011-11-24 17:43:13 -0800 (Thu, 24 Nov 2011) | 17 lines
Changed paths:
   M /trunk/bindings/tcl/CMakeLists.txt

Implement NON_TRANSITIVE case for the tclmatrixd and plplottcltkd
libraries.  When obvious false positives are discounted, ldd -u showed
good results for those libraries in the build tree and for the Tk
examples written in C (i.e., xtk01) in both the build tree and the
traditional installed examples tree.

Build and run tests (using the test_diff_psc and test_interactive
targets in the build tree and the compare and test_interactive targets
in the traditional installed examples tree) produced results without
obvious errors on Debian stable.  However, the latest Linux
distributions such as Fedora or Debian unstable have a linker that
enforces linking rules much more stringently than Debian stable so
additional tests (and likely some fixes) are required before
-DNON_TRANSITIVE=ON will work correctly for the tclmatrixd and
plplottcltkd libraries on those platforms.


------------------------------------------------------------------------
r12044 | airwin | 2011-11-24 17:23:11 -0800 (Thu, 24 Nov 2011) | 4 lines
Changed paths:
   M /trunk/plplot_test/plplot-test-interactive.sh.in

Fix bug where an attempt to run special interactive C++ examples could
happen when C++ was not configured.


------------------------------------------------------------------------
r12043 | airwin | 2011-11-24 17:20:57 -0800 (Thu, 24 Nov 2011) | 4 lines
Changed paths:
   M /trunk/bindings/d/CMakeLists.txt

Oops.  Previous commit forgot the "remove" part of moving
the plplotdmd_SHARED option to a global location.


------------------------------------------------------------------------
r12042 | airwin | 2011-11-24 15:41:32 -0800 (Thu, 24 Nov 2011) | 27 lines
Changed paths:
   M /trunk/bindings/d/CMakeLists.txt
   M /trunk/cmake/modules/d.cmake
   M /trunk/examples/d/CMakeLists.txt
   M /trunk/examples/d/Makefile.examples.in

Confirmed that the experimental plplotdmd_SHARED option (which builds the
libplplotdmdd library for the D bindings as shared) does not work
for Debian stable.  The reason is the linker includes a static D library
that is not built with the -fPIC flag so cannot be linked to a shared
version of libplplotdmdd.

Set the plplotdmd_SHARED option globally.

Configure the traditional Makefile for the installed examples to use
the pkg-config --static flag when appropriate (e.g., for the default
plplotdmd_SHARED OFF case).

In anticipation that plplotdmd_SHARED will work some day, implement
non-transitive linking of libplplotdmd.  However, this is a no-op for
the current default plplotdmd_SHARED OFF case where libplplotdmd is
built statically so the build-tree and traditional installed examples
tree D examples have many unused direct dependencies as a result.

These changes have been built and run-time tested for the build tree
and traditional installed examples tree.

The only way to test whether these changes suppress unnecessary
linking is (i) find a platform where -Dplplotdmd_SHARED=ON works, and
(ii) on that platform try -DNON_TRANSITIVE=ON for both the build
tree and the traditional installed examples tree.


------------------------------------------------------------------------
r12041 | airwin | 2011-11-24 13:33:53 -0800 (Thu, 24 Nov 2011) | 14 lines
Changed paths:
   M /trunk/bindings/ada/CMakeLists.txt

Implement NON_TRANSITIVE case for the Ada bindings.  When obvious
false positives were discounted, ldd -u showed perfect results for the
Ada examples in both the build tree and "traditional" installed
examples tree (that was built and tested with make and pkg-config).

Build and run tests in the build tree and traditional installed
examples tree produced results without obvious errors on Debian
stable.  However, the latest Linux distributions such as Fedora or
Debian unstable have a linker that enforces linking rules much more
stringently than Debian stable so additional tests (and likely some
fixes) are required before -DNON_TRANSITIVE=ON will work for Ada
on those platforms.


------------------------------------------------------------------------
r12040 | airwin | 2011-11-24 13:17:46 -0800 (Thu, 24 Nov 2011) | 5 lines
Changed paths:
   M /trunk/plplot_test/test_diff.sh.in

Add standard example 00 to the comparisons as a signal that this
(extremely simple) example should be propagated from C to all other
languages.


------------------------------------------------------------------------
r12039 | airwin | 2011-11-24 13:04:09 -0800 (Thu, 24 Nov 2011) | 18 lines
Changed paths:
   M /trunk/bindings/f77/CMakeLists.txt
   M /trunk/bindings/f95/CMakeLists.txt

Implement NON_TRANSITIVE case for the fortran bindings.  When obvious
false positives were discounted, ldd -u showed perfect results for the
Fortran examples in the build tree, but slightly imperfect results in
the traditional installed examples tree because we have failed to
configure a separate *.pc file for the plplotf77c and plplotf95c
libraries, and lumped that information instead into the *.pc files
associated with the plplotf77 and plotf95 libraries.  I will leave it
to someone else to fix that.

Build and run tests in the build tree and traditional installed
examples tree produced results without obvious errors on Debian
stable.  However, the latest Linux distributions such as Fedora or
Debian unstable have a linker that enforces linking rules much more
stringently than Debian stable so additional tests (and likely some
fixes) are required before -DNON_TRANSITIVE=ON will work for fortran
on those platforms.


------------------------------------------------------------------------
r12038 | andrewross | 2011-11-24 12:09:56 -0800 (Thu, 24 Nov 2011) | 3 lines
Changed paths:
   M /trunk/debian/changelog
   M /trunk/debian/control.in

Update dependencies for Debian packages so cmake is required for -dev package.


------------------------------------------------------------------------
r12037 | andrewross | 2011-11-24 12:09:15 -0800 (Thu, 24 Nov 2011) | 3 lines
Changed paths:
   M /trunk/examples/c++/x17.cc
   M /trunk/examples/c++/x20.cc
   M /trunk/examples/c++/x21.cc
   M /trunk/examples/c++/x30.cc

Fix a couple of minor issues in the C++ examples where the C API was used rather than the C++ wrapper class.


------------------------------------------------------------------------
r12036 | airwin | 2011-11-24 11:20:27 -0800 (Thu, 24 Nov 2011) | 10 lines
Changed paths:
   M /trunk/lib/csa/CMakeLists.txt
   M /trunk/lib/nn/CMakeLists.txt
   M /trunk/lib/qsastime/CMakeLists.txt
   M /trunk/src/CMakeLists.txt

Expand non-transitive linking to libplplot, libcsironn, libcsirocsa,
and libqsastime.

The pkg-config results for libplplot are still unsatisfactory because
the libcsironn, libcsirocsa, and libqsastime compile and link data are
lumped in with plplotd.pc rather than having that data stored properly
in a separate *.pc file for each of libcsironn, libcsirocsa, and
libqsastime.


------------------------------------------------------------------------
r12035 | airwin | 2011-11-24 10:33:08 -0800 (Thu, 24 Nov 2011) | 2 lines
Changed paths:
   M /trunk/bindings/c++/CMakeLists.txt

Simplify NON_TRANSITIVE commentary.

------------------------------------------------------------------------
r12034 | airwin | 2011-11-24 10:26:02 -0800 (Thu, 24 Nov 2011) | 5 lines
Changed paths:
   M /trunk/bindings/c++/CMakeLists.txt

Tweak CMake logic so that PC_REQUIRES_TAG is set locally in all cases
rather than relying on the existing default value of PC_REQUIRES_TAG
which may disappear in the future.


------------------------------------------------------------------------
r12033 | airwin | 2011-11-23 22:27:31 -0800 (Wed, 23 Nov 2011) | 8 lines
Changed paths:
   M /trunk/bindings/c++/CMakeLists.txt
   M /trunk/cmake/modules/plplot.cmake
   M /trunk/pkgcfg/plplot-template.pc.cmake

Implement NON_TRANSITIVE option for just the C++ bindings case.  The
result (for cmake option -DNON_TRANSITIVE=ON) is the C++ examples
build and run without issues for the build tree, traditional installed
examples tree (built and tested with Makefile+pkg-config), and
installed examples tree (built and tested with CMake-based build
system).


------------------------------------------------------------------------
r12032 | airwin | 2011-11-17 23:41:00 -0800 (Thu, 17 Nov 2011) | 9 lines
Changed paths:
   M /trunk/README.release

Tweak wording concerning the announcement of the Windows
MinGW/gfortran compiler issue.  Most of these tweaks concern
qualifying all references to gfortran that appear in this announcement
with the "MinGW/" prefix. The point of this qualification is this
problem is limited to Windows.  Therefore, we don't want to concern
users of gfortran on Linux or Mac OS X by using the unqualified
gfortran term anywhere in this particular announcement.


------------------------------------------------------------------------
r12031 | arjenmarkus | 2011-11-17 05:34:50 -0800 (Thu, 17 Nov 2011) | 1 line
Changed paths:
   M /trunk/README.release

Revised remark on possible link problems
------------------------------------------------------------------------
r12030 | arjenmarkus | 2011-11-17 00:27:31 -0800 (Thu, 17 Nov 2011) | 2 lines
Changed paths:
   M /trunk/README.release

Add note on the use of the gfortran option -Wl,--allow-multiple-define to solve
link problems with some distributions of that compiler.
------------------------------------------------------------------------
r12029 | airwin | 2011-11-15 09:31:39 -0800 (Tue, 15 Nov 2011) | 6 lines
Changed paths:
   D /trunk/cmake/modules/language_support/cmake-2.8/Platform/Cygwin-GNU-Fortran.cmake
   D /trunk/cmake/modules/language_support/cmake-2.8/Platform/Windows-GNU-Fortran.cmake
   D /trunk/cmake/modules/language_support/cmake-2.8/Platform/Windows-df.cmake
   D /trunk/cmake/modules/language_support/cmake-2.8/Platform/Windows-f90.cmake

Remove CMake-2.6.x-style Fortran 95 language support files that were
used as a temporary CMake-2.8.x workaround for issues with a bad
gfortran compiler.



------------------------------------------------------------------------
r12028 | arjenmarkus | 2011-11-15 00:45:15 -0800 (Tue, 15 Nov 2011) | 7 lines
Changed paths:
   D /trunk/cmake/modules/language_support/cmake-2.8/CMakeFortranInformation.cmake

Remove the platform-dependent language support files:
I introduced them to solve a problem with the gfortran 4.6.2 compiler, but 
this was due to the _specific_ distribution of that compiler, not to the 
_version_.

Should the problem of multiple defines occur again, the solution is to  
add the option -WL,--allow-multiple-define
------------------------------------------------------------------------
r12027 | hbabcock | 2011-11-10 10:27:50 -0800 (Thu, 10 Nov 2011) | 1 line
Changed paths:
   M /trunk/src/plargs.c

Add (incomplete) doxygen documentation.
------------------------------------------------------------------------
r12026 | airwin | 2011-11-10 09:42:41 -0800 (Thu, 10 Nov 2011) | 2 lines
Changed paths:
   M /trunk/cmake/modules/language_support/cmake-2.8/CMakeFortranInformation.cmake
   M /trunk/cmake/modules/language_support/cmake-2.8/Platform/Cygwin-GNU-Fortran.cmake
   M /trunk/cmake/modules/language_support/cmake-2.8/Platform/Windows-GNU-Fortran.cmake
   M /trunk/cmake/modules/language_support/cmake-2.8/Platform/Windows-df.cmake
   M /trunk/cmake/modules/language_support/cmake-2.8/Platform/Windows-f90.cmake

Use "native" line endings.

------------------------------------------------------------------------
r12025 | arjenmarkus | 2011-11-09 05:08:51 -0800 (Wed, 09 Nov 2011) | 2 lines
Changed paths:
   A /trunk/cmake/modules/language_support/cmake-2.8/CMakeFortranInformation.cmake
   A /trunk/cmake/modules/language_support/cmake-2.8/Platform/Cygwin-GNU-Fortran.cmake
   A /trunk/cmake/modules/language_support/cmake-2.8/Platform/Windows-GNU-Fortran.cmake
   A /trunk/cmake/modules/language_support/cmake-2.8/Platform/Windows-df.cmake
   A /trunk/cmake/modules/language_support/cmake-2.8/Platform/Windows-f90.cmake

Add the platform-dependent language support files for CMake 2.8 just we have for the
now deprecated CMake 2.6 version. 
------------------------------------------------------------------------
r12024 | hbabcock | 2011-11-03 13:10:21 -0700 (Thu, 03 Nov 2011) | 1 line
Changed paths:
   M /trunk/src/plaffine.c
   M /trunk/src/plarc.c

Add doxygen documentation.
------------------------------------------------------------------------
r12023 | arjenmarkus | 2011-11-02 00:45:58 -0700 (Wed, 02 Nov 2011) | 7 lines
Changed paths:
   A /trunk/examples/f95/plf95demolib.f90
   A /trunk/examples/f95/test_plf95demolib.f90

Added first version of a library of auxiliary routines for use in the 
examples. This first version only contains arange(), modelled after the
Numpy prcoedure by the same name.

Note that the examples do not use them yet - some issues with compiling
and linking have to be solved before I can actually commit the revised 
examples. 
------------------------------------------------------------------------
r12022 | arjenmarkus | 2011-11-02 00:43:25 -0700 (Wed, 02 Nov 2011) | 2 lines
Changed paths:
   M /trunk/src/plstdio.c

Variable flags is used even if the system does have an unlink() function. Therefore
removed the preprocessor statements surrounding the declaration.
------------------------------------------------------------------------
r12021 | jbauck | 2011-11-01 01:35:52 -0700 (Tue, 01 Nov 2011) | 1 line
Changed paths:
   M /trunk/bindings/ada/plplot.ads
   M /trunk/bindings/ada/plplot_traditional.ads
   M /trunk/examples/ada/x00_easy_a.adb
   M /trunk/examples/ada/x00a.adb
   A /trunk/examples/ada/xthick00a.adb (from /trunk/examples/ada/x00thicka.adb:12019)

Small tweaks. Finish unbotching file name.
------------------------------------------------------------------------
r12020 | jbauck | 2011-11-01 01:22:29 -0700 (Tue, 01 Nov 2011) | 1 line
Changed paths:
   D /trunk/examples/ada/x00thicka.adb

Fix botched file name on xthick00a.adb.
------------------------------------------------------------------------
r12019 | jbauck | 2011-10-31 20:53:01 -0700 (Mon, 31 Oct 2011) | 1 line
Changed paths:
   A /trunk/examples/ada/x00_easy_a.adb
   A /trunk/examples/ada/x00a.adb
   A /trunk/examples/ada/x00thicka.adb

Added Ada examples 00.
------------------------------------------------------------------------
r12018 | andrewross | 2011-10-31 08:33:42 -0700 (Mon, 31 Oct 2011) | 3 lines
Changed paths:
   M /trunk/scripts/CMakeLists.txt

Ensure mktclIndex is installed (into examples/tcl) since it is needed to build the tcl and tk examples using the cmake system.


------------------------------------------------------------------------
r12017 | andrewross | 2011-10-31 05:42:36 -0700 (Mon, 31 Oct 2011) | 3 lines
Changed paths:
   M /trunk/examples/plplot_configure.cmake_installed_examples.in
   M /trunk/examples/tcl/CMakeLists.txt

Fixes so that installed tcl and tk examples work using the cmake build system with a separate binary directory, even if the original plplot source and binary trees are no longer present.


------------------------------------------------------------------------
r12016 | andrewross | 2011-10-31 04:28:37 -0700 (Mon, 31 Oct 2011) | 5 lines
Changed paths:
   M /trunk/examples/plplot_configure.cmake_installed_examples.in

Small fix to ensure cmake support for building the ocaml examples works in the install tree. 

examples/ocaml/CMakeFiles.txt relies on BUILD_SHARED_LIBS being set in order to add the right linker options in the install tree. Without this building the examples in the install tree will fail once the plplot build directory has been deleted. 


------------------------------------------------------------------------
r12015 | hbabcock | 2011-10-28 12:07:41 -0700 (Fri, 28 Oct 2011) | 1 line
Changed paths:
   M /trunk/src/ltdl_win32.c
   M /trunk/src/mt19937ar.c
   M /trunk/src/pdfutils.c

Doxygen documentation for ltdl_win32.c, mt19937ar.c and pdfutils.c
------------------------------------------------------------------------
r12014 | andrewross | 2011-10-28 12:02:53 -0700 (Fri, 28 Oct 2011) | 3 lines
Changed paths:
   M /trunk/examples/tk/xtk01.c
   M /trunk/examples/tk/xtk02.c
   M /trunk/examples/tk/xtk04.c

Update tk examples to fix a few compiler warnings.


------------------------------------------------------------------------
r12013 | airwin | 2011-10-28 11:07:43 -0700 (Fri, 28 Oct 2011) | 9 lines
Changed paths:
   M /trunk/bindings/tcl/global_defines.sed

Change this sed script so the check_tcl_parameters target file result
follows our C code style guidelines concerning "{" being on its own
line, and dropping certain pure whitespace lines.

After this change, the check_tcl_parameters target generates a result
that is in agreement with the existing styled version of
bindings/tcl/plplot_parameters.h.


------------------------------------------------------------------------
r12012 | andrewross | 2011-10-28 06:39:06 -0700 (Fri, 28 Oct 2011) | 3 lines
Changed paths:
   M /trunk/README.developers

Update README.developers to remove obsolete information on autotools and to include some new guidelines on coding style. This could be expanded and serve as a useful reference for developers.


------------------------------------------------------------------------
r12011 | hbabcock | 2011-10-28 06:19:30 -0700 (Fri, 28 Oct 2011) | 1 line
Changed paths:
   M /trunk/src/plctrl.c

Add doxygen style documentation for all the functions in plctrl.c
------------------------------------------------------------------------
r12010 | andrewross | 2011-10-28 06:17:07 -0700 (Fri, 28 Oct 2011) | 3 lines
Changed paths:
   M /trunk/lib/nn/delaunay.c
   M /trunk/lib/qsastime/qsastimeP.h.in

Fix up a couple more compiler warnings.


------------------------------------------------------------------------
r12009 | andrewross | 2011-10-28 06:06:27 -0700 (Fri, 28 Oct 2011) | 3 lines
Changed paths:
   M /trunk/bindings/f95/sccont.c
   M /trunk/bindings/tcl/tclAPI.c
   M /trunk/bindings/tk/plserver.c
   M /trunk/bindings/tk/tkMain.c
   M /trunk/bindings/tk-x-plat/plplotter.c
   M /trunk/drivers/wxwidgets.cpp
   M /trunk/drivers/wxwidgets_app.cpp
   M /trunk/src/plshade.c

Style previous changes.


------------------------------------------------------------------------
r12008 | andrewross | 2011-10-28 05:50:46 -0700 (Fri, 28 Oct 2011) | 5 lines
Changed paths:
   M /trunk/bindings/f95/sccont.c
   M /trunk/bindings/f95/scstubs.c
   M /trunk/bindings/tcl/tclAPI.c
   M /trunk/bindings/tcl/tclMain.c
   M /trunk/bindings/tcl/tclMatrix.c
   M /trunk/bindings/tcl/tclcmd.tpl
   M /trunk/bindings/tk/plframe.c
   M /trunk/bindings/tk/plr.c
   M /trunk/bindings/tk/plserver.c
   M /trunk/bindings/tk/tkMain.c
   M /trunk/bindings/tk-x-plat/plplotter.c
   M /trunk/drivers/cairo.c
   M /trunk/drivers/mem.c
   M /trunk/drivers/null.c
   M /trunk/drivers/svg.c
   M /trunk/drivers/test-drv-info.c
   M /trunk/drivers/tk.c
   M /trunk/drivers/xwin.c
   M /trunk/examples/c/extXdrawable_demo.c
   M /trunk/examples/c/x09c.c
   M /trunk/examples/c/x14c.c
   M /trunk/examples/c/x15c.c
   M /trunk/examples/c/x16c.c
   M /trunk/examples/c/x19c.c
   M /trunk/examples/c/x29c.c
   M /trunk/examples/c++/x09.cc
   M /trunk/examples/c++/x14.cc
   M /trunk/examples/c++/x16.cc
   M /trunk/examples/c++/x19.cc
   M /trunk/include/plplot.h
   M /trunk/include/plplotP.h
   M /trunk/src/pdfutils.c
   M /trunk/src/plargs.c
   M /trunk/src/plbox.c
   M /trunk/src/plbuf.c
   M /trunk/src/plcont.c
   M /trunk/src/plcore.c
   M /trunk/src/plcvt.c
   M /trunk/src/plfill.c
   M /trunk/src/plmap.c
   M /trunk/src/plot3d.c
   M /trunk/src/plshade.c

Change UNUSED macro to PL_UNUSED and move to plplot.h to allow use with examples.

Fix up some futher unused parameter warnings.


------------------------------------------------------------------------
r12007 | andrewross | 2011-10-28 05:02:58 -0700 (Fri, 28 Oct 2011) | 3 lines
Changed paths:
   M /trunk/bindings/f95/sccont.c
   M /trunk/bindings/f95/scstubs.c
   M /trunk/bindings/tcl/pltclgen.tcl
   M /trunk/bindings/tcl/tclAPI.c
   M /trunk/bindings/tcl/tclMain.c
   M /trunk/bindings/tcl/tclMatrix.c
   M /trunk/bindings/tcl/tclcmd.tpl
   M /trunk/bindings/tk/plframe.c
   M /trunk/bindings/tk/plr.c
   M /trunk/bindings/tk/plserver.c
   M /trunk/bindings/tk/plserver.h
   M /trunk/bindings/tk/tkMain.c
   M /trunk/drivers/cairo.c
   M /trunk/drivers/mem.c
   M /trunk/drivers/null.c
   M /trunk/drivers/ps.c
   M /trunk/drivers/psttf.cc
   M /trunk/drivers/svg.c
   M /trunk/drivers/test-drv-info.c
   M /trunk/drivers/tk.c
   M /trunk/drivers/wxwidgets.cpp
   M /trunk/drivers/wxwidgets_app.cpp
   M /trunk/drivers/wxwidgets_dc.cpp
   M /trunk/drivers/xwin.c

Fix a batch more compiler warnings, mostly due to unused parameters. These are now marked with the USED macros if the parameters are never used, or cast to void if their use is conditional through C preprocessor defines.


------------------------------------------------------------------------
r12006 | andrewross | 2011-10-27 16:19:42 -0700 (Thu, 27 Oct 2011) | 3 lines
Changed paths:
   M /trunk/src/pdfutils.c
   M /trunk/src/plbox.c
   M /trunk/src/plbuf.c
   M /trunk/src/plcont.c
   M /trunk/src/plcore.c
   M /trunk/src/plcvt.c
   M /trunk/src/plfill.c
   M /trunk/src/plfreetype.c
   M /trunk/src/plmap.c
   M /trunk/src/plot3d.c
   M /trunk/src/plshade.c

Either remove or marked with the UNUSED macro function parameters which are not used.


------------------------------------------------------------------------
r12005 | andrewross | 2011-10-27 16:18:26 -0700 (Thu, 27 Oct 2011) | 3 lines
Changed paths:
   M /trunk/debian/patches/series

Comment out unused Debian patch.


------------------------------------------------------------------------
r12004 | andrewross | 2011-10-27 13:47:11 -0700 (Thu, 27 Oct 2011) | 3 lines
Changed paths:
   M /trunk/debian/control
   M /trunk/debian/control.in

Tinker with wording of the Debian package descriptions.


------------------------------------------------------------------------
r12003 | andrewross | 2011-10-27 13:34:11 -0700 (Thu, 27 Oct 2011) | 3 lines
Changed paths:
   M /trunk/debian
   M /trunk/debian/NEWS
   A /trunk/debian/README.Debian (from /branches/v5_9_8_debian/debian/README.Debian:12002)
   M /trunk/debian/changelog
   A /trunk/debian/control (from /branches/v5_9_8_debian/debian/control:12002)
   M /trunk/debian/control.in
   M /trunk/debian/copyright
   D /trunk/debian/libplplot-ada.files
   A /trunk/debian/libplplot-ada0-dev.files (from /branches/v5_9_8_debian/debian/libplplot-ada0-dev.files:12002)
   A /trunk/debian/libplplot-ada0.files (from /branches/v5_9_8_debian/debian/libplplot-ada0.files:12002)
   A /trunk/debian/libplplot-c++10.files (from /branches/v5_9_8_debian/debian/libplplot-c++10.files:12002)
   D /trunk/debian/libplplot-c++9.files
   D /trunk/debian/libplplot-c++9c2.files
   A /trunk/debian/libplplot-d.files (from /branches/v5_9_8_debian/debian/libplplot-d.files:12002)
   M /trunk/debian/libplplot-dev.files
   M /trunk/debian/libplplot-fortran9.files
   A /trunk/debian/libplplot-java.files (from /branches/v5_9_8_debian/debian/libplplot-java.files:12002)
   A /trunk/debian/libplplot-lua.files (from /branches/v5_9_8_debian/debian/libplplot-lua.files:12002)
   A /trunk/debian/libplplot-ocaml.files (from /branches/v5_9_8_debian/debian/libplplot-ocaml.files:12002)
   A /trunk/debian/libplplot11.files (from /branches/v5_9_8_debian/debian/libplplot11.files:12002)
   D /trunk/debian/libplplot9-java.files
   D /trunk/debian/libplplot9.README.Debian
   D /trunk/debian/libplplot9.files
   A /trunk/debian/libqsastime-dev.files (from /branches/v5_9_8_debian/debian/libqsastime-dev.files:12002)
   A /trunk/debian/libqsastime0.files (from /branches/v5_9_8_debian/debian/libqsastime0.files:12002)
   M /trunk/debian/octave-plplot.files
   D /trunk/debian/plplot-bin.files
   M /trunk/debian/plplot-tcl-dev.files
   A /trunk/debian/plplot-tcl-dev.lintian-overrides (from /branches/v5_9_8_debian/debian/plplot-tcl-dev.lintian-overrides:12002)
   A /trunk/debian/plplot11-driver-cairo.files (from /branches/v5_9_8_debian/debian/plplot11-driver-cairo.files:12002)
   A /trunk/debian/plplot11-driver-gd.files (from /branches/v5_9_8_debian/debian/plplot11-driver-gd.files:12002)
   A /trunk/debian/plplot11-driver-qt.files (from /branches/v5_9_8_debian/debian/plplot11-driver-qt.files:12002)
   A /trunk/debian/plplot11-driver-wxwidgets.files (from /branches/v5_9_8_debian/debian/plplot11-driver-wxwidgets.files:12002)
   A /trunk/debian/plplot11-driver-xwin.files (from /branches/v5_9_8_debian/debian/plplot11-driver-xwin.files:12002)
   D /trunk/debian/plplot9-driver-cairo.files
   D /trunk/debian/plplot9-driver-gd.files
   D /trunk/debian/plplot9-driver-wxwidgets.files
   D /trunk/debian/plplot9-driver-xwin.files
   D /trunk/debian/pycompat
   A /trunk/debian/python-plplot-qt.files (from /branches/v5_9_8_debian/debian/python-plplot-qt.files:12002)
   M /trunk/debian/python-plplot.files
   M /trunk/debian/rules
   A /trunk/debian/source (from /branches/v5_9_8_debian/debian/source:12002)
   R /trunk/debian/source/format (from /branches/v5_9_8_debian/debian/source/format:12002)

Merge debian/ from 5.9.8 Debian branch and update for 5.9.9.


------------------------------------------------------------------------
r12002 | airwin | 2011-10-26 22:26:59 -0700 (Wed, 26 Oct 2011) | 2 lines
Changed paths:
   M /trunk/bindings/tk/plr.c
   M /trunk/include/plplotP.h
   M /trunk/src/plargs.c

Style previous changes.

------------------------------------------------------------------------
r12001 | airwin | 2011-10-26 22:26:31 -0700 (Wed, 26 Oct 2011) | 4 lines
Changed paths:
   M /trunk/examples/c/CMakeLists.txt
   M /trunk/examples/c/Makefile.examples.in
   A /trunk/examples/c/x00c.c
   M /trunk/plplot_test/test_c.sh.in

Implement standard example 00, an extremely simple PLplot demo of a 2D
line plot.


------------------------------------------------------------------------
r12000 | airwin | 2011-10-26 15:36:55 -0700 (Wed, 26 Oct 2011) | 10 lines
Changed paths:
   M /trunk/CMakeLists.txt

Bump minimum version of CMake to 2.8.2 for Linux and 2.8.6 for
all other platforms as discussed on the plplot-devel mailing list.

I have just confirmed that CMake-2.8.6 gives good results on Linux
(using the ctest test), but that also needs to be tested on our other
platforms.  As soon as that platform testing is complete, I plan to
remove the CMake-2.6.x logic and files that are currently part of our
build system.


------------------------------------------------------------------------
r11999 | andrewross | 2011-10-21 05:37:41 -0700 (Fri, 21 Oct 2011) | 3 lines
Changed paths:
   M /trunk/OLD-README.release
   M /trunk/README.release

Fix error in URL for reference to information on the use of const in C.


------------------------------------------------------------------------
r11998 | andrewross | 2011-10-21 05:34:16 -0700 (Fri, 21 Oct 2011) | 3 lines
Changed paths:
   M /trunk/include/disptab.h
   M /trunk/include/pldebug.h
   M /trunk/src/pdfutils.c
   M /trunk/src/plshade.c

Fix a few more warnings.


------------------------------------------------------------------------
r11997 | andrewross | 2011-10-21 05:03:34 -0700 (Fri, 21 Oct 2011) | 3 lines
Changed paths:
   M /trunk/README.release

Add comments on standards compliance and code cleanup to release notes.


------------------------------------------------------------------------
r11996 | andrewross | 2011-10-21 03:02:09 -0700 (Fri, 21 Oct 2011) | 3 lines
Changed paths:
   M /trunk/include/plplotP.h
   M /trunk/src/plargs.c

Implement UNUSED() macro in plplotP.h to mark unused parameters as such. Use this to remove all warnings from src/plargs.c as this is one of the worst offenders. I would welcome feedback before propogating this further.


------------------------------------------------------------------------
r11995 | andrewross | 2011-10-21 03:00:26 -0700 (Fri, 21 Oct 2011) | 3 lines
Changed paths:
   M /trunk/bindings/tk/plr.c
   M /trunk/drivers/qt.cpp
   M /trunk/drivers/wxwidgets_gc.cpp

Yet more code cleaning to remove compiler warnings.


------------------------------------------------------------------------
r11994 | andrewross | 2011-10-21 00:00:50 -0700 (Fri, 21 Oct 2011) | 8 lines
Changed paths:
   M /trunk/bindings/qt_gui/plqt.cpp
   M /trunk/bindings/tk-x-plat/plplotter.c
   M /trunk/config.h.cmake
   M /trunk/drivers/cairo.c
   M /trunk/drivers/wxwidgets.cpp
   M /trunk/drivers/wxwidgets.h
   M /trunk/drivers/wxwidgets_app.cpp
   M /trunk/drivers/xwin.c
   M /trunk/include/plConfig.h.cmake
   M /trunk/include/qt.h

Another round of code warning fixed. This includes 
- commenting out unused function parameters in C++ (it's allowed in C++)
- move static function prototypes from shared headers to the files where they are actually defined.
- fixing the issues with plplotP.h needed config.h
- more casting fixes and other minor tweaks
- extra braces for clarity in nested if / else statements to avoid ambiguity.


------------------------------------------------------------------------
r11993 | airwin | 2011-10-20 16:40:07 -0700 (Thu, 20 Oct 2011) | 3 lines
Changed paths:
   M /trunk/examples/c/x19c.c
   M /trunk/examples/c/x20c.c

Style previous changes


------------------------------------------------------------------------
r11992 | andrewross | 2011-10-20 15:54:16 -0700 (Thu, 20 Oct 2011) | 3 lines
Changed paths:
   M /trunk/examples/c/x19c.c
   M /trunk/examples/c/x20c.c
   M /trunk/examples/c/x27c.c
   M /trunk/examples/c++/x27.cc

Few more fixed warnings for C examples.


------------------------------------------------------------------------
r11991 | andrewross | 2011-10-20 15:02:21 -0700 (Thu, 20 Oct 2011) | 3 lines
Changed paths:
   M /trunk/drivers/tk.c
   M /trunk/examples/c/extXdrawable_demo.c
   M /trunk/include/plplot.h
   M /trunk/include/plstrm.h
   M /trunk/src/pdfutils.c
   M /trunk/src/plargs.c
   M /trunk/src/plbox.c
   M /trunk/src/plbuf.c
   M /trunk/src/plcore.c
   M /trunk/src/plot3d.c

Yet more code tidying to fix compiler warnings.


------------------------------------------------------------------------
r11990 | andrewross | 2011-10-20 12:38:39 -0700 (Thu, 20 Oct 2011) | 3 lines
Changed paths:
   M /trunk/src/plargs.c

Rename optarg to opt_arg to avoid name clash with system global variable.


------------------------------------------------------------------------
r11989 | andrewross | 2011-10-20 07:12:19 -0700 (Thu, 20 Oct 2011) | 3 lines
Changed paths:
   M /trunk/drivers/tk.c

Fix some more const char * warnings.


------------------------------------------------------------------------
r11988 | andrewross | 2011-10-20 07:11:41 -0700 (Thu, 20 Oct 2011) | 3 lines
Changed paths:
   M /trunk/src/plot3d.c

Remove redefinitions of variables which shadow existing variables.


------------------------------------------------------------------------
r11987 | andrewross | 2011-10-20 05:49:06 -0700 (Thu, 20 Oct 2011) | 3 lines
Changed paths:
   M /trunk/drivers/tk.c

Add back explicit casts to fix compiler warnings for standard gcc flags.


------------------------------------------------------------------------
r11986 | andrewross | 2011-10-20 01:55:17 -0700 (Thu, 20 Oct 2011) | 3 lines
Changed paths:
   M /trunk/src/plot3d.c

Avoid using variable declaration in loop statements as this is a C99 feature, and generates errors with the standard gcc command line flags. 


------------------------------------------------------------------------
r11985 | airwin | 2011-10-19 21:35:53 -0700 (Wed, 19 Oct 2011) | 3 lines
Changed paths:
   M /trunk/fonts/plhershey-unicode-gen.c

Style previous changes.  This appears to be a leftover alignment issue
from previous styling iterations.

------------------------------------------------------------------------
r11984 | andrewross | 2011-10-19 16:26:23 -0700 (Wed, 19 Oct 2011) | 3 lines
Changed paths:
   M /trunk/examples/f95/x02f.f90
   M /trunk/examples/f95/x03f.f90
   M /trunk/examples/f95/x06f.f90
   M /trunk/examples/f95/x07f.f90
   M /trunk/examples/f95/x08f.f90
   M /trunk/examples/f95/x09f.f90
   M /trunk/examples/f95/x11f.f90
   M /trunk/examples/f95/x12f.f90
   M /trunk/examples/f95/x13f.f90
   M /trunk/examples/f95/x14f.f90
   M /trunk/examples/f95/x15f.f90
   M /trunk/examples/f95/x16af.f90
   M /trunk/examples/f95/x16f.f90
   M /trunk/examples/f95/x17f.f90
   M /trunk/examples/f95/x18f.f90
   M /trunk/examples/f95/x19f.f90
   M /trunk/examples/f95/x20f.f90
   M /trunk/examples/f95/x21f.f90
   M /trunk/examples/f95/x23f.f90
   M /trunk/examples/f95/x24f.f90
   M /trunk/examples/f95/x26f.f90
   M /trunk/examples/f95/x31f.f90

Update fortran 95 examples style to remove obsolete syntax and make use of some f95 features. Fixes compiler warnings.


------------------------------------------------------------------------
r11983 | andrewross | 2011-10-19 15:46:13 -0700 (Wed, 19 Oct 2011) | 3 lines
Changed paths:
   M /trunk/bindings/ocaml/CMakeLists.txt
   M /trunk/bindings/ocaml/plcairo/CMakeLists.txt

Ocaml bindings compile .c files with $(OCAMLC) and so don't use the usual cmake compile flags. Need to pass the correct options to ensure that the HAVE_CONFIG_H is set. This is needed for plplotP.h to be correctly processed. Fixes compiler warning.


------------------------------------------------------------------------
r11982 | andrewross | 2011-10-19 15:44:46 -0700 (Wed, 19 Oct 2011) | 3 lines
Changed paths:
   M /trunk/fonts/plhershey-unicode-gen.c

Make Unicode an unsigned int since it is an unsigned hex value. Fixes compiler warning.


------------------------------------------------------------------------
r11981 | andrewross | 2011-10-19 13:26:54 -0700 (Wed, 19 Oct 2011) | 3 lines
Changed paths:
   M /trunk/drivers/test-drv-info.c

Add missing function prototype.


------------------------------------------------------------------------
r11980 | andrewross | 2011-10-19 12:46:14 -0700 (Wed, 19 Oct 2011) | 3 lines
Changed paths:
   M /trunk/bindings/f95/sc3d.c
   M /trunk/bindings/f95/sccont.c
   M /trunk/bindings/f95/scstubs.c

Style code following recent f95 bindings updates.


------------------------------------------------------------------------
r11979 | andrewross | 2011-10-19 12:25:26 -0700 (Wed, 19 Oct 2011) | 3 lines
Changed paths:
   M /trunk/bindings/c++/plstream.cc

Comment out temporarily ununsed parameter values in C++ class. This is allowed in C++ and once the colorbar API is fixed these will be used anyway.


------------------------------------------------------------------------
r11978 | andrewross | 2011-10-19 12:21:21 -0700 (Wed, 19 Oct 2011) | 3 lines
Changed paths:
   M /trunk/src/CMakeLists.txt

Only compile src/pldeprecated.c if PL_DEPRECATED is defined. This avoids a warning about an empty translation unit which breaches the ISO C standard.


------------------------------------------------------------------------
r11977 | andrewross | 2011-10-19 07:43:26 -0700 (Wed, 19 Oct 2011) | 3 lines
Changed paths:
   M /trunk/bindings/f95/configurable.f90
   M /trunk/bindings/f95/global_defines.sed
   M /trunk/bindings/f95/plplot_parameters.h
   M /trunk/bindings/f95/sc3d.c
   M /trunk/bindings/f95/sccont.c
   M /trunk/bindings/f95/scstubs.c
   M /trunk/bindings/f95/sfstubs.f90
   D /trunk/bindings/f95/sfstubs.h
   M /trunk/bindings/f95/sfstubsf95.f90
   M /trunk/bindings/f95/strutil.f90
   M /trunk/examples/f95/plf95demos.inc.cmake
   M /trunk/examples/f95/x03f.f90
   M /trunk/examples/f95/x11f.f90
   M /trunk/examples/f95/x14f.f90
   M /trunk/examples/f95/x17f.f90
   M /trunk/examples/f95/x18f.f90
   M /trunk/examples/f95/x19f.f90
   M /trunk/examples/f95/x20f.f90
   M /trunk/examples/f95/x21f.f90
   M /trunk/examples/f95/x22f.f90
   M /trunk/examples/f95/x23f.f90
   M /trunk/examples/f95/x29f.f90
   M /trunk/examples/f95/x30f.f90
   M /trunk/examples/f95/x31f.f90

Clean up f95 bindings to get rid of compiler warnings and make them more standards compliant.


------------------------------------------------------------------------
r11976 | andrewross | 2011-10-19 04:08:56 -0700 (Wed, 19 Oct 2011) | 3 lines
Changed paths:
   M /trunk/drivers/tk.c

Change from using vfork to using fork. There is a slight performance overhead involved in this, but it is much more standard. vfork was never a well established standard and the Linux man page strongly discourages its use.


------------------------------------------------------------------------
r11975 | andrewross | 2011-10-19 04:05:10 -0700 (Wed, 19 Oct 2011) | 3 lines
Changed paths:
   M /trunk/bindings/tcl/tclAPI.c
   M /trunk/bindings/tcl/tclMatrix.c
   M /trunk/bindings/tk/plframe.c
   M /trunk/bindings/tk/plr.c
   M /trunk/bindings/tk/plserver.c
   M /trunk/bindings/tk/pltkd.h
   M /trunk/bindings/tk/tcpip.c
   M /trunk/bindings/tk/tcpip.h
   M /trunk/bindings/tk/tkMain.c
   M /trunk/drivers/cairo.c
   M /trunk/drivers/ps.c
   M /trunk/drivers/tk.c
   M /trunk/drivers/tkwin.c
   M /trunk/drivers/xwin.c
   M /trunk/examples/c++/x29.cc
   M /trunk/examples/tk/xtk01.c
   M /trunk/examples/tk/xtk02.c
   M /trunk/examples/tk/xtk04.c
   M /trunk/include/pdf.h
   M /trunk/include/plplot.h
   M /trunk/include/plxwd.h
   M /trunk/lib/csa/csa.c
   M /trunk/lib/nn/delaunay.c
   M /trunk/lib/nn/hash.c
   M /trunk/lib/nn/istack.c
   M /trunk/lib/nn/lpi.c
   M /trunk/lib/nn/nnai.c
   M /trunk/lib/nn/nncommon.c
   M /trunk/lib/nn/nnpi.c
   M /trunk/src/pdfutils.c
   M /trunk/src/plctrl.c

Another big round of code changes to fix compiler warnings.


------------------------------------------------------------------------
r11974 | arjenmarkus | 2011-10-19 00:04:09 -0700 (Wed, 19 Oct 2011) | 1 line
Changed paths:
   M /trunk/README.release

Added announcement about the change in status for the FORTRAN 77 bindings.
------------------------------------------------------------------------
r11973 | andrewross | 2011-10-17 14:16:39 -0700 (Mon, 17 Oct 2011) | 10 lines
Changed paths:
   M /trunk/cmake/modules/plplot.cmake
   M /trunk/config.h.cmake
   M /trunk/drivers/ps.c
   M /trunk/drivers/psttf.cc
   M /trunk/drivers/svg.c
   M /trunk/drivers/xfig.c
   M /trunk/include/pdf.h
   M /trunk/include/plcore.h
   M /trunk/include/plfci-type1.h
   M /trunk/include/plfreetype.h
   M /trunk/include/plplotP.h
   M /trunk/include/plstrm.h
   M /trunk/src/mt19937ar.c
   M /trunk/src/pdfutils.c
   M /trunk/src/plarc.c
   M /trunk/src/plargs.c
   M /trunk/src/plbox.c
   M /trunk/src/plbuf.c
   M /trunk/src/plcont.c
   M /trunk/src/plcore.c
   M /trunk/src/plctrl.c
   M /trunk/src/plcvt.c
   M /trunk/src/pldeprecated.c
   M /trunk/src/plf2ops.c
   M /trunk/src/plfill.c
   M /trunk/src/plfreetype.c
   M /trunk/src/plgradient.c
   M /trunk/src/plgridd.c
   M /trunk/src/plimage.c
   M /trunk/src/pllegend.c
   M /trunk/src/plline.c
   M /trunk/src/plmap.c
   M /trunk/src/plot3d.c
   M /trunk/src/plpage.c
   M /trunk/src/plsdef.c
   M /trunk/src/plshade.c
   M /trunk/src/plstdio.c
   M /trunk/src/plstripc.c
   M /trunk/src/plsym.c
   M /trunk/src/plvect.c
   M /trunk/src/plvpor.c

Another big round of changes to fix gcc warnings / ensure standards conformance.

Changes include 
- explicit casting between types
- removing or commenting out unused variables / functions
- correct using of "const" modifier
- replacing use of finite with isfinite where available (this is in C99, but not supported by MSVC so still need complicated set of macros to check)
- rename local variables which shadow other global or local variables / symbols


------------------------------------------------------------------------
r11972 | andrewross | 2011-10-17 13:22:53 -0700 (Mon, 17 Oct 2011) | 3 lines
Changed paths:
   M /trunk/cmake/modules/plplot.cmake

Fix bug where cmake check on availability of unlink actually checks for mkstemp!


------------------------------------------------------------------------
r11971 | andrewross | 2011-10-14 02:28:58 -0700 (Fri, 14 Oct 2011) | 3 lines
Changed paths:
   M /trunk/lib/qsastime/deltaT-gen.c
   M /trunk/lib/qsastime/deltaT_test.c
   M /trunk/lib/qsastime/dspline.c
   A /trunk/lib/qsastime/dspline.h
   M /trunk/lib/qsastime/dsplint.c
   A /trunk/lib/qsastime/dsplint.h
   M /trunk/lib/qsastime/qsastime.c
   M /trunk/lib/qsastime/tai-utc-gen.c

More fixed compiler warnings for qsastime. This library is now clean. 


------------------------------------------------------------------------
r11970 | airwin | 2011-10-14 01:30:19 -0700 (Fri, 14 Oct 2011) | 3 lines
Changed paths:
   M /trunk/drivers/svg.c
   M /trunk/examples/c/x11c.c
   M /trunk/examples/c/x14c.c
   M /trunk/examples/c/x16c.c
   M /trunk/examples/c/x19c.c
   M /trunk/examples/c/x21c.c
   M /trunk/examples/c/x22c.c
   M /trunk/examples/c/x23c.c
   M /trunk/examples/c/x26c.c
   M /trunk/examples/c/x27c.c
   M /trunk/examples/c/x28c.c
   M /trunk/examples/c/x29c.c
   M /trunk/examples/c/x33c.c
   M /trunk/examples/c/x34c.c
   M /trunk/examples/c++/x19.cc
   M /trunk/examples/c++/x27.cc
   M /trunk/examples/c++/x29.cc
   M /trunk/include/ltdl_win32.h
   M /trunk/include/plplotP.h
   M /trunk/lib/csa/csa.c
   M /trunk/lib/csa/csa.h
   M /trunk/lib/nn/nnai.c
   M /trunk/lib/nn/nnpi.c
   M /trunk/lib/qsastime/deltaT-gen.c
   M /trunk/lib/qsastime/qsastime.c
   M /trunk/src/ltdl_win32.c
   M /trunk/src/pdfutils.c
   M /trunk/src/plctrl.c
   M /trunk/src/plfill.c
   M /trunk/src/pllegend.c

Style previous changes.  ctest shows no obvious issues with these
changes (and Andrew's previous compiler warning fix changes).

------------------------------------------------------------------------
r11969 | andrewross | 2011-10-14 01:03:51 -0700 (Fri, 14 Oct 2011) | 3 lines
Changed paths:
   M /trunk/drivers/ps.c
   M /trunk/drivers/svg.c
   M /trunk/drivers/tkwin.c

A few minor fixes for gcc warnings in some of the drivers.


------------------------------------------------------------------------
r11968 | andrewross | 2011-10-14 00:12:16 -0700 (Fri, 14 Oct 2011) | 3 lines
Changed paths:
   M /trunk/examples/c/extXdrawable_demo.c
   M /trunk/examples/c/x02c.c
   M /trunk/examples/c/x08c.c
   M /trunk/examples/c/x09c.c
   M /trunk/examples/c/x11c.c
   M /trunk/examples/c/x13c.c
   M /trunk/examples/c/x14c.c
   M /trunk/examples/c/x15c.c
   M /trunk/examples/c/x16c.c
   M /trunk/examples/c/x19c.c
   M /trunk/examples/c/x20c.c
   M /trunk/examples/c/x21c.c
   M /trunk/examples/c/x22c.c
   M /trunk/examples/c/x23c.c
   M /trunk/examples/c/x24c.c
   M /trunk/examples/c/x26c.c
   M /trunk/examples/c/x27c.c
   M /trunk/examples/c/x28c.c
   M /trunk/examples/c/x29c.c
   M /trunk/examples/c/x33c.c
   M /trunk/examples/c/x34c.c
   M /trunk/examples/c++/x09.cc
   M /trunk/examples/c++/x19.cc
   M /trunk/examples/c++/x27.cc
   M /trunk/examples/c++/x29.cc

Fix a number of compiler warnings for the C / C++ examples.


------------------------------------------------------------------------
r11967 | andrewross | 2011-10-14 00:11:18 -0700 (Fri, 14 Oct 2011) | 3 lines
Changed paths:
   M /trunk/bindings/c++/plstream.h
   M /trunk/bindings/tcl/tclAPI.c
   M /trunk/bindings/tk/plserver.c

Fix some -std=99 -pedantic warnings related to incomplete prototypes and missing const attributes.


------------------------------------------------------------------------
r11966 | andrewross | 2011-10-14 00:10:05 -0700 (Fri, 14 Oct 2011) | 9 lines
Changed paths:
   M /trunk/include/plfci-truetype.h
   M /trunk/include/plplot.h
   M /trunk/include/plplotP.h
   M /trunk/src/pdfutils.c
   M /trunk/src/plarc.c
   M /trunk/src/plargs.c
   M /trunk/src/plctrl.c
   M /trunk/src/plfill.c
   M /trunk/src/plgridd.c
   M /trunk/src/plimage.c
   M /trunk/src/pllegend.c
   M /trunk/src/plot3d.c


Number of cleanups to fix warnings with gcc -std=c99 -pedantic flags.

Primarily includes
- fixing missing / incomplete prototypes
- avoiding local variables shadowing global variables
- adding missing const attribute to char *


------------------------------------------------------------------------
r11965 | andrewross | 2011-10-14 00:07:52 -0700 (Fri, 14 Oct 2011) | 8 lines
Changed paths:
   M /trunk/lib/csa/csa.c
   M /trunk/lib/csa/csa.h
   M /trunk/lib/csa/version.h
   M /trunk/lib/nn/delaunay.c
   M /trunk/lib/nn/hash.c
   M /trunk/lib/nn/istack.h
   M /trunk/lib/nn/nn.h
   M /trunk/lib/nn/nnai.c
   M /trunk/lib/nn/nncommon.c
   M /trunk/lib/nn/nnpi.c
   M /trunk/lib/nn/version.h
   M /trunk/lib/qsastime/deltaT-gen.c
   M /trunk/lib/qsastime/qsastime.c
   M /trunk/lib/qsastime/tai-utc-gen.c

Fix a number of warnings when compiling with -std=c99 -pedantic. 

These mostly include
- missing / incomplete function prototype
- local variables shadowing global variable / types.
- missing const attribute for char *


------------------------------------------------------------------------
r11964 | airwin | 2011-10-13 22:04:02 -0700 (Thu, 13 Oct 2011) | 2 lines
Changed paths:
   M /trunk/plplot_test/test_f77.sh.in
   M /trunk/plplot_test/test_f95.sh.in

Sort out some issues with running the special 16a Fortran examples.

------------------------------------------------------------------------
r11963 | airwin | 2011-10-13 21:30:59 -0700 (Thu, 13 Oct 2011) | 14 lines
Changed paths:
   M /trunk/scripts/comprehensive_test.sh

Completely reorganize the script.

Now exits immediately if there is a detected error condition rather
than using a bunch of Boolean logic with appropriate massive
indentation to implement the various exits.

Now more care is used with the order of the commands executed and what
is cleaned to reduce the high-water mark of disk usage as much as
possible.  These changes mean, e.g., the interactive tests will
require rebuilds of things that were cleaned previously, but that is a
relatively small sacrifice in cpu time to keep the high-water mark
(currently ~3-4GB) smaller than the alternative without these changes.


------------------------------------------------------------------------
r11962 | airwin | 2011-10-13 21:15:41 -0700 (Thu, 13 Oct 2011) | 5 lines
Changed paths:
   M /trunk/examples/CMakeLists.txt
   M /trunk/examples/plplot_configure.cmake_installed_examples.in

Make plplot_functions module available to the CMake-based build system
for the installed examples.  This allows proper handling of OUTPUT
attributes of custom commands for that build system.


------------------------------------------------------------------------
r11961 | airwin | 2011-10-13 21:10:36 -0700 (Thu, 13 Oct 2011) | 9 lines
Changed paths:
   M /trunk/examples/Makefile.examples.in

Be more discriminating in what is removed by the clean target for the
traditional build system.

*.txt ==> *_*.txt

The point of this change is to avoid removing the top-level
CMakeLists.txt file which was not a good thing!


------------------------------------------------------------------------
r11960 | airwin | 2011-10-13 19:26:07 -0700 (Thu, 13 Oct 2011) | 3 lines
Changed paths:
   M /trunk/cmake/modules/plplot.cmake
   A /trunk/cmake/modules/plplot_functions.cmake

Split off useful functions used by PLplot configuration into their
own module file.

------------------------------------------------------------------------
r11959 | airwin | 2011-10-13 17:14:28 -0700 (Thu, 13 Oct 2011) | 2 lines
Changed paths:
   M /trunk/plplot_test/CMakeLists.txt

Add clean_ctest_plot_files custom target to do what its name implies.

------------------------------------------------------------------------
r11958 | airwin | 2011-10-13 14:45:47 -0700 (Thu, 13 Oct 2011) | 16 lines
Changed paths:
   M /trunk/cmake/modules/plplot.cmake
   M /trunk/examples/CMakeLists.txt

Implement the list_example_files function to generate lists of files
created by plplot-test.sh.

Use that function to create complete OUTPUT files for the custom
commands used for non-interactive testing.  This change automatically
assures "make clean" will remove essentially all plot file output
generated by the test_noninteractive target.  This should greatly
reduce the disk space requirements of scripts/comprehensive_test.sh
when the (default) --do_clean_as_you_go option is used for that
script.

ToDo: implement a custom target to use this same function to
remove all ctest file output to reduce the disk requirements
of scripts/comprehensive_test.sh some more.


------------------------------------------------------------------------
r11957 | hbabcock | 2011-10-12 18:35:53 -0700 (Wed, 12 Oct 2011) | 1 line
Changed paths:
   M /trunk/OLD-README.release
   M /trunk/README.release

Update README files for the next release.
------------------------------------------------------------------------
Source: README.release, updated 2013-10-01