From: Alan W. I. <Ala...@gm...> - 2019-09-15 22:35:20
|
On 2019-09-15 09:48-0000 榎本 剛 wrote: > Alan, > > The test was a success. Hi Takeshi: I am now taking this discussion back to the plplot-devel mailing list. Thanks for all your work in obtaining this good D language support test result for the test_d project for your Darwin dmd (MacPorts) platform. I made one additional (untested) change to Darwin-dmd.cmake for the reasons discussed in the commit message for plplot-5.15.0-34-g6b47c717e. Please update your local git repository to the latest master branch version (so you have access to that commit and there will be no need to patch PLplot). I would appreciate you testing that result for the test_d project (to make sure my further one-line change I committed beyond what you have tested already did not screw anything up) and also (if that test is a success) the plplot project itself. The rest of this post concerns that further comprehensing testing of the plplot project. That is done by changing directory to the top-level directory of the PLplot source tree (so NOT cmake/test_d) and running scripts/comprehensive_test.sh --help to get a sense of what is available for that much more sophisticated comprehensive testing script than you ran for the test_d case. Now the thing to remember about this script is it really is comprehensive by default. So usually you constrain it to avoid doing tests that are currently not relevant to some topic such as D language support for the plplot project. So please look in the PLplot git log for commit f7d9bec368f3 where I demonstrate how to limit that comprehensive test to just the D binding and examples, the svg device, and (by default since these components are always part of testing) the core C library and the C examples. Of course, for that test I did a lot of special things relevant to my own platform such as testing blanks in source-, build-, and install-tree pathnames. So you don't want to repeat exactly what I did. So instead, here is my best (informed by what you did for test_d) guess concerning how you would modify that plplot comprehensive test invocation for your own needs: # Important cd <top-level directory of PLplot source tree> # Important, set DC environment variable to select D compiler and # options for that compiler and set PATH environment variable to # access a CMake version >= 3.15.20190829-g3ec986c that has (on your # platform) the essential CMake master branch fix needed so that D # language support works for dmd. Also drop the interactive # component of comprehensive testing since that is not relevant # to D. env DC="/opt/local/bin/dmd -v" PATH=/usr/local/cmake/bin:$PATH scripts/comprehensive_test.sh --cmake_added_options "-DDEFAULT_NO_BINDINGS=ON -DENABLE_d=ON -DDEFAULT_NO_DEVICES=ON -DPLD_svg=ON" --build_command "make -j18" --ctest_command "ctest -j18" --do_test_interactive no) Note that script run will be noticeably longer (but likely not too bad because of all the above constraints limiting the test) compared to the test_d script run because this script does much more than happens for test_d (for example running all the PLplot C and D examples and comparing those results for 15 different combinations of 2 test_noninteractive tests + 2 ctests + 1 traditional test (for 5 tests in all) for our 3 different major configurations. As with test_d, regardless of whether that script run is a success or not, please collect the report tarball (which by default will be stored in a different prefix area than in the test_d case) and send it to me for further analysis. Good luck with this (PLplot) constrained comprehensive test which when it is a success will demonstrate improved D language support for both the upstream version of PLplot that I have been helping to maintain and ultimately the MacPorts port of PLplot that you have been maintaining. Alan __________________________ Alan W. Irwin 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.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 __________________________ |