I have now (revision 9997) completed an essential part of the implementation of the test_noninteractive target in the new CMake-based build system for the installed examples.
To try this out you must have CMake-2.6.4 installed on your system. (2.6.4 has some essential bug-fixes concerning transitive use of EXPORTS compared to 2.6.0 so I thought it simplest to require 2.6.4 rather than try to figure out some workarounds for 2.6.0.) By the time this new build system for the installed examples has been adopted by a substantial fraction of our users, we will probably be requiring 2.6.4 in any case for our principal build system. After "make install" from the build tree, cd to the top of the installed examples tree and mkdir ../build_dir cd ../build_dir cmake ../examples make -j4 test_noninteractive to do the equivalent of the portion of ctest that compares all enabled language test results against the corresponding C results (both PostScript and stdout). The -j4 option allows my GNU make to take advantage of my multiprocessor box to provide results much faster than cmake. YMMV for other build tools supported by CMake through the CMake generators system. Here are the results I got from the above make command: [...] [ 97%] Generating compare c++ Missing examples : Differing postscript output : Missing stdout : Differing stdout : f77 Missing examples : Differing postscript output : Missing stdout : Differing stdout : f95 Missing examples : Differing postscript output : Missing stdout : Differing stdout : java Missing examples : Differing postscript output : Missing stdout : Differing stdout : octave Missing examples : 19 Differing postscript output : Missing stdout : Differing stdout : python Missing examples : Differing postscript output : Missing stdout : Differing stdout : tcl Missing examples : Differing postscript output : 21 Missing stdout : Differing stdout : 21 perl Missing examples : Differing postscript output : Missing stdout : Differing stdout : 14 ada Missing examples : Differing postscript output : 17 Missing stdout : Differing stdout : adathick Missing examples : Differing postscript output : 17 Missing stdout : Differing stdout : ocaml Missing examples : Differing postscript output : Missing stdout : Differing stdout : lua Missing examples : Differing postscript output : Missing stdout : Differing stdout : d Missing examples : 01 02 09 14 14a 15 16 17 18 19 20 21 22 26 28 31 Differing postscript output : 03 12 13 30 Missing stdout : Differing stdout : make[3]: *** [compare] Error 1 make[2]: *** [CMakeFiles/test_noninteractive.dir/all] Error 2 make[1]: *** [CMakeFiles/test_noninteractive.dir/rule] Error 2 make: *** [test_noninteractive] Error 2 The error will disappear whenever we achieve clean comparisons. Alternatively, if that goal seems unrealistic, we could turn off the error return in test_diff.sh. The next steps are to finish the equivalent of the rest of ctest (generate results for all supported non-interactive devices), and to implement the test_interactive target that is currently only implemented with the traditional Makefile+pkg-config approach. Even without those add-ons this is already a very nice system for building and testing the installed examples (and indirectly all languages where PLplot has been implemented, see summary above) because the dependencies are handled much better than in the traditional Makefile+pkg-config approach. I request testing of this new method for building and testing the installed examples not only on Unix platforms, but also especially on Windows platforms where it should be possible to use some of the cmake generators available for Windows. Of course, I don't expect Windows to work right out of the box. But I do expect that whatever changes are required in the new build system for installed examples in the Windows case will be much smaller than those required for the build-tree since the organization of the install tree is much simpler (e.g., all libraries are in one location and similarly for the headers) than the build-tree, and essentially the exact same scripts are being run as in the build-tree case. Alan __________________________ Alan W. Irwin Astronomical research affiliation with Department of Physics and Astronomy, University of Victoria (astrowww.phys.uvic.ca). Programming affiliations with the FreeEOS equation-of-state implementation for stellar interiors (freeeos.sf.net); PLplot scientific plotting software package (plplot.org); the libLASi project (unifont.org/lasi); the Loads of Linux Links project (loll.sf.net); and the Linux Brochure Project (lbproject.sf.net). __________________________ Linux-powered Science __________________________ ------------------------------------------------------------------------------ Register Now for Creativity and Technology (CaT), June 3rd, NYC. CaT is a gathering of tech-side developers & brand creativity professionals. Meet the minds behind Google Creative Lab, Visual Complexity, Processing, & iPhoneDevCamp asthey present alongside digital heavyweights like Barbarian Group, R/GA, & Big Spaceship. http://www.creativitycat.com _______________________________________________ Plplot-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/plplot-devel
