To Wadud and Arjen:

@Arjen:
Since you have been unable to answer my quick question in a timely
manner concerning adopting selected_int_kind(9) rather than 4 for
private_plint, private_plbool, and private_plunicode, I have decided
to just go ahead with that change (commit 3442bac).

On 2016-04-27 09:11-0000 Wadud Miah wrote:
[out of original order]
> Using INT32 does require a 2008 compiler and gfortran 4.5 and above
(https://gcc.gnu.org/wiki/GFortran/News#gfortran_4.5), so it makes
sense to use the intrinsic function selected_int_kind instead for now
until Fortran compilers provide the iso_fortran_env intrinsic module.

@Arjen and Wadud: I suspect the kind=4 logic we were using before only
worked by a historical accident that that particular kind value
corresponded for most Fortran compilers to the 4-byte integers we
desired for these private types.  So I am much more comfortable with
the present selected_int_kind(9) fix for that situation, but that fix
does need testing on more than just my (Debian jessie) platform.

> I'm more than happy to try out the latest release of PLplot, but I
am only using a very small subset of the library. I'm using it just
for 2D line graphs.  I can also build PLplot using the NAG compiler
which is one of the most standards conforming compilers available to
ensure PLplot is truly portable to different compilers.

@Wadud:

Your willingness to test our Fortran binding is much appreciated.

Here is the simple cookbook for doing that which internally tests
essentially all our Fortran API against the corresponding C API using
our standard sets of Fortran and C examples.

1. Select the desired C and Fortran compilers and options for those
compilers that you want to test by setting the CC and FC
environment variables, e.g.,

export CC='gcc -O3 -fvisibility=hidden -Wuninitialized'
export FC='gfortran -O3 -Wuninitialized -Wunused'

2. Clone the repository, e.g.,

git clone git://git.code.sf.net/p/plplot/plplot plplot.git

where I assume the name you are going to use for the top-level
directory of the working tree for the repository is "plplot.git".
(Select any name for that directory that you like so long as it doesn't
correspond to any current directory that you have.)  If you have
already cloned the repository, follow the directions in
plplot.git/README.developers for updating your local repository
to the latest master tip version at SourceForge.

3. Run the comprehensive Fortran test:

cd plplot.git
scripts/comprehensive_test.sh --cmake_added_options "-DDEFAULT_NO_DEVICES=ON 
-DPLD_ps=ON  -DDEFAULT_NO_BINDINGS=ON -DENABLE_f95=ON" --do_test_interactive no

4. Evaluate those results:

grep -i error ../comprehensive_test_disposeable/*/*/output_tree/*.out
grep -B1 -A3 "Missing examples" 
../comprehensive_test_disposeable/*/*/output_tree/*.out |less

That first grep command should only find

../comprehensive_test_disposeable/nondynamic/noninteractive/output_tree/traditional_clean.out:*_*.txt
 test.error \
../comprehensive_test_disposeable/shared/noninteractive/output_tree/traditional_clean.out:*_*.txt
 test.error \
../comprehensive_test_disposeable/static/noninteractive/output_tree/traditional_clean.out:*_*.txt
 test.error \

and the second grep command should find the 12 instances (for various
build configurations) of the summary of tests to compare PostScript results 
from our
Fortran examples with corresponding C results.  A perfect result for
such test summaries is

f95
   Missing examples            :
   Differing graphical output  :
   Missing stdout              :
   Differing stdout            :

which indicates in order that there are no missing Fortran examples,
the PostScript results for those examples are identical (except for
the date stamp) with the corresponding C results, and the stdout
exists from the Fortran results and is identical with the
corresponding C stdout result.

5. Send a complete summary of your test to me.  That summary is collected
by the script into the report tarball whose name is

../comprehensive_test_disposeable/comprehensive_test.tar.gz

That report tarball gets overwritten each time you run the script (say
for different Fortran compiler choices) so remember to rename it to
something else to preserve those report results if you are going to
run the script more than once.

If you look at the commit message
<https://sourceforge.net/p/plplot/plplot/ci/3442bac79bf5a5c63a79bcc45cf0de51420dd8a5/>
you will see in the Tested by: paragraphs I followed the above
directions for invoking the script and got perfect results from that. 
That script completed for me in only 7 minutes so running that script
with the same arguments should take a similar amount of time for your
case.

I then summarized my testing results at
<https://sourceforge.net/p/plplot/wiki/Testing_PLplot/#Fortran%20Testing%20Reports>.

@Arjen: Could you follow up with similar test results for the latest
git master tip for both your Cygwin and MinGW-w64/MSYS2 platforms?
That wiki table documents your previous (good) Cygwin Fortran result.
Previously you also sent me your good MinGW-w64/MSYS2 platform results
for Fortran, but I was holding off on posting that result to our wiki
because that report also revealed a MinGW-w64/MSYS2 installation
update issue that requires you to reinstall the MinGW-w64/MSYS2
platform to get access to the much more convenient/reliable updating
available for the latest version of that platform.

@Wadud: I would be very happy to post your comprehensive Fortran
testing results in the same place in our Wiki once you sent the report
tarball(s) to me that are generated by setting the CC and FC environment
variables and running the above script with exactly those arguments.

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
__________________________

------------------------------------------------------------------------------
Find and fix application performance issues faster with Applications Manager
Applications Manager provides deep performance insights into multiple tiers of
your business applications. It resolves application problems quickly and
reduces your MTTR. Get your free trial!
https://ad.doubleclick.net/ddm/clk/302982198;130105516;z
_______________________________________________
Plplot-devel mailing list
Plplot-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/plplot-devel

Reply via email to