cho3 / cmake-ada Goto Github PK
View Code? Open in Web Editor NEWcmake language support for ada, fork of PLplot's cross-platform support code: http://plplot.sourceforge.net/
License: Other
cmake language support for ada, fork of PLplot's cross-platform support code: http://plplot.sourceforge.net/
License: Other
The purpose of this complete project is to provide a simple Ada test case consisting of an Ada executable calling a single routine in an Ada library which prints out the classic "hello, world" phrase. This complete project includes a CMake-based build system and files for Ada language support within CMake which will eventually become part of CMake itself. (1) Check documentation of comprehensive test of Ada language support on your platform as follows: scripts/comprehensive_test.sh --help This script is similar in concept but quite different (note its different location) than the corresponding script in ../../scripts/comprehensive_test.sh which comprehensively tests all of PLplot so do not confuse the two. (2) Actually do comprehensive test of Ada language support. Normally this is done as follows without any script options scripts/comprehensive_test.sh For our two principal build configurations (shared libraries and static libraries) this script (if executed without options) builds the test_noninteractive target (which builds the "hello" executable and all its prerequisites, runs that executable, and compares the output of that executable with the expected output) in the build tree and in the installed examples tree. You check for errors in the above comprehensive test using grep -i error ../../../comprehensive_test_ada_disposeable/*/*/output_tree/*.out and send me (Alan W. Irwin <[email protected]> the tarball of information that is collected by that script at ../../../comprehensive_test_ada_disposeable/comprehensive_test.tar.gz (3, optional) Debug result: If (2) shows any errors than you can optionally debug the result as follows: scripts/comprehensive_test.sh --do_trace yes This produces voluminous results and buried (deeply) in those is typically enough information to find out what is going wrong with the CMake Ada language support. These voluminous results are automatically included in the tarball report so please send that report to me (as well as the one created without the --do_trace yes option in step 2). (4, optional) Test with valgrind: Create an empty build tree, run cmake from there, create the hello executable and test that with valgrind. mkdir build_dir cd build_dir cmake -DBUILD_TEST=ON <path to top-level of test_ada source tree> >& cmake.out make hello >& hello.out valgrind src_executable/hello >& valgrind.out Look through the generated *.out files for any error conditions. (5, optional) Test whether run-time loader finds all the required libraries # Most Unix-like platforms (including MinGW-w64/MSYS2? and definitely Cygwin, but excluding Mac OS X) ldd -r src_executable/hello >& ldd.out # On Mac OS X otool -L src_executable/hello >& otool.out Look through the generated *.out files for any error conditions. N.B. on at least one platform (Cygwin) the -r option (which checks for any undefined symbols) is not implemented yet (as of 2015-11) so you will have to drop it for that special case until the Cygwin ldd -r option is implemented. In sum, this project provides a simple demonstration of how to use the CMake Ada language support with Ada libraries that are either static or shared. At the same time, this project tests the quality of CMake Ada support for various user's platforms. If any user is having trouble with CMake Ada language support, they should run at least step 2 and step 3 above.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.