Hi Jerry:

On 2012-08-29 02:30-0700 Jerry wrote:

>
> I ran a fuller test than I normally do (test_noninteractive in this case), 
> just to make sure that this is still true. At one point this appears in the 
> output:
>
> 14: tcl
> 14:   Missing examples            :
> 14:   Differing postscript output :
> 14:   Missing stdout              :
> 14:   Differing stdout            :
>
> which I think confirms that the Tcl stuff is still working.

Yes.  And see further comments below about this good noninteractive result.

>>
>> Those directions in examples/tcl/README.tcldemos are also followed in
>> the configured version of examples/tcl/standard_examples.in in the
>> build tree, which in turn is run by the test_tcl_standard_examples
>> target that is available if you use the -DBUILD_TEST=ON option.  To
>> see what is actually run by that target look in
>> examples/CMakeLists.txt where you will find the line
>>
>> COMMAND ${CMAKE_CURRENT_BINARY_DIR}/tcl/standard_examples -dev xwin -np
>>
>> where, of course, ${CMAKE_CURRENT_BINARY_DIR} refers to the examples
>> subdirectory of the build tree and the -np option stands for "no pause"
>> (so you don't have to keep hammering the return key to get through the
>> examples).
>>
>> @Jerry: I think that test_tcl_standard_examples target should just
>> work for you if -dev xwin works and if you have Tcl set up properly on
>> your system.
>
> Not sure what this means. Is test_tcl_standard_examples a subset of 
> test_noninteractive?

To use more precise language CMake allows you to set up a dependency system 
between
targets using the add_dependencies command.  This means if target A
depends on target B, running target A _forces target B to be run first_.

The specific answer to your question is that the test_interactive
target (as opposed to the test_noninteractive target you mentioned)
depends on test_tcl_standard_examples.

I think it is important for all PLplot developers to understand how
the dependencies between test targets have been implement in
examples/CMakeLists.txt so please look at that file to confirm the
statements I make below.

In that file we have

add_dependencies(test_interactive ${interactive_targets_LIST})

where interactive_targets_LIST is a list of targets.  Earlier in
that file we have

list(APPEND interactive_targets_LIST ${test_tcl_standard_examples})

So this means test_interactive depends on test_tcl_standard_examples.
The test_interactive target also depends on many other interactive targets as
you can see by looking for all instances of interactive_targets_LIST
in examples/CMakeLists.txt.

So if you want to execute a very specific test for how well tcl
executes interactively with -dev xwin, run the
test_tcl_standard_examples target.  If you want that test run and also
a lot of other interactive tests, then run the test_interactive
target. The more general targets like test_interactive are best for
comprehensive testing that everything interactive works properly, but
in this case when we are trying to debug an issue, the more specific
test you can run, the better.  So please run
test_tcl_standard_examples and report the results.

While I am on this subject of dependencies in our test system, notice
that examples/CMakeLists.txt also has the following commands
(collected here but originally spread through the file in different
order)

add_dependencies(test_noninteractive ${noninteractive_targets_LIST})
set(noninteractive_targets_LIST test_diff_psc)
add_dependencies(test_diff_psc ${diff_targets_LIST})
list(APPEND diff_targets_LIST test_${language}_psc)

One of those languages (in the loop) is tcl.  So test_noninteractive
depends on test_diff which depends on test_tcl_psc (and many other
test_${language}_psc targets in that loop).  Note that test_diff is
actually the target that produced the good noninteractive results for
tcl you demonstrated above.  That target runs every language with -dev
psc and compares non-C results with the corresponding C results. The
test_tcl_psc target is much simpler.  It simply runs the tcl language
results for -dev psc, but test_diff obviously won't work unless
test_tcl_psc is run first to generate the required PostScript files
for Tcl which is why we have set up test_diff_psc to depend on
test_tcl_psc (and, in general, test_${language}_psc for
all languages in the loop) in the above chain of dependencies.

At this point I have no idea why the above automated way of running
pltcl for -dev psc works, and your attempt to run pltcl by hand does
not work.  You would have to look at what test_tcl_psc actually does
which is to look at the COMMAND associated with the custom command
that is run by that custom target.  It is easy to show that COMMAND
runs the plplot-test.sh shell script which sets everything up and
which in turn runs the test_tcl.sh shell script which runs pltcl.

In any case because of the good noninteractive Tcl results you are
getting with -dev psc as demonstrated by the test_tcl_psc and
test_diff_psc targets results you show above, I expect you will also
get good interactive results using the test_tcl_standard_examples
target (for -dev xwin).  But please confirm that.

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); the Time
Ephemerides project (timeephem.sf.net); PLplot scientific plotting
software package (plplot.sf.net); 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
__________________________

------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
Plplot-devel mailing list
Plplot-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/plplot-devel

Reply via email to