On 12/30/2013 01:08 PM, Alan W. Irwin wrote: > On 2013-12-29 20:39-0700 Orion Poplawski wrote: > >> On 12/29/2013 08:25 PM, Orion Poplawski wrote: >>> On 12/29/2013 01:34 PM, Alan W. Irwin wrote: >>>> Please let me know if my latest PLplot change from config.h to >>>> plplot_config.h (revision 12914) solves this issue. Of course, if it >>>> doesn't solve it, the change was worth doing anyway. And if it does >>>> solve it, I hope your bug report still convinces the Octave developers >>>> to move back to using the quoted form of #include for config.h (or >>>> better yet change the name to octave_config.h). After all, there are >>>> likely quite a few software projects still left out there that do use >>>> the config.h name (at least internally in their build tree as PLplot >>>> did up to now). >>>> >>>> Alan >>> >>> >>> Alan - That does indeed get us further - but now we seem to be into the >>> meat of the API changes in octave: >>> >>> /usr/bin/cmake -E cmake_progress_report >>> /builddir/build/BUILD/plplot-5.9.11/fedora/CMakeFiles 19 >>> [ 13%] Building CXX object >>> bindings/octave/CMakeFiles/plplot_octave.dir/plplot_octaveOCTAVE_wrap.cxx.o >>> cd /builddir/build/BUILD/plplot-5.9.11/fedora/bindings/octave && >>> /usr/bin/c++ -DHAVE_CONFIG_H -Dplplot_octave_EXPORTS -O2 -g -pipe >>> -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions >>> -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches >>> -m32 -march=i686 -mtune=atom -fasynchronous-unwind-tables -fPIC >>> -I/builddir/build/BUILD/plplot-5.9.11/include >>> -I/builddir/build/BUILD/plplot-5.9.11/lib/qsastime >>> -I/builddir/build/BUILD/plplot-5.9.11/fedora >>> -I/builddir/build/BUILD/plplot-5.9.11/fedora/include >>> -I/builddir/build/BUILD/plplot-5.9.11/fedora/bindings/octave >>> -I/usr/include/octave-3.8.0 -I/usr/include/octave-3.8.0/octave >>> -I/builddir/build/BUILD/plplot-5.9.11/bindings/swig-support -o >>> CMakeFiles/plplot_octave.dir/plplot_octaveOCTAVE_wrap.cxx.o -c >>> /builddir/build/BUILD/plplot-5.9.11/fedora/bindings/octave/plplot_octaveOCTAVE_wrap.cxx >>> >>> /builddir/build/BUILD/plplot-5.9.11/fedora/bindings/octave/plplot_octaveOCTAVE_wrap.cxx:1507:36: >>> >>> warning: 'Octave_map' is deprecated (declared at >>> /usr/include/octave-3.8.0/octave/oct-map.h:484) [-Wdeprecated-declarations] >>> virtual Octave_map map_value() const { >>> ^ >>> /builddir/build/BUILD/plplot-5.9.11/fedora/bindings/octave/plplot_octaveOCTAVE_wrap.cxx:1507:24: >>> >>> error: invalid covariant return type for 'virtual Octave_map >>> octave_swig_type::map_value() const' >>> virtual Octave_map map_value() const { >>> ^ >> >> So much/most of this may be a swig issue. I filed >> https://sourceforge.net/p/swig/bugs/1353/ for it. > > Looking further, I think this issue is very likely an Octave one. For > example, the above virtual command occurs in the following context > in my version of the generated > /bindings/octave/plplot_octaveOCTAVE_wrap.cxx > > #if OCTAVE_API_VERSION_NUMBER >= 40 > virtual octave_map map_value() const { > return octave_map(); > } > #else > virtual Octave_map map_value() const { > return Octave_map(); > } > #endif > > As you appear to be already aware, this is C++ code generated by swig and not > by any of our > typemaps in bindings/octave/plplot_octaveOCTAVE_wrap.cxx so your first > reaction that it is a swig issue is understandable. But note above > that the capitalized version which causes the issue above, i.e., > > virtual Octave_map map_value() const { > > is meant to be used only for very old octave versions. For example, > I get the following result on my system: > > irwin@raven> find /usr/include/octave-* -type f |xargs grep \ > OCTAVE_API_VERSION_NUMBER > > /usr/include/octave-3.6.2/octave/version.h:#define OCTAVE_API_VERSION_NUMBER > 48 > > Please try the same command on Fedora. I am pretty sure you will find > that the issue is that octave-3.8.0 has failed to define > OCTAVE_API_VERSION_NUMBER at all (or else used an incorrect low number) > which would be a serious octave-3.8.0 bug. > > Alan
Ah, you hit the nail on the head - they dropped OCTAVE_API_VERSION_NUMBER completely. I've sent an email to the octave developers asking why. -- Orion Poplawski Technical Manager 303-415-9701 x222 NWRA, Boulder/CoRA Office FAX: 303-415-9702 3380 Mitchell Lane or...@nwra.com Boulder, CO 80301 http://www.nwra.com ------------------------------------------------------------------------------ Rapidly troubleshoot problems before they affect your business. Most IT organizations don't have a clear picture of how application performance affects their revenue. With AppDynamics, you get 100% visibility into your Java,.NET, & PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro! http://pubads.g.doubleclick.net/gampad/clk?id=84349831&iu=/4140/ostg.clktrk _______________________________________________ Plplot-devel mailing list Plplot-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/plplot-devel