NO-JIRA: some additional README improvements Closes #22
(cherry picked from commit c1a6de2347b006c2a30e53dd2490dd48a2989c5a) Project: http://git-wip-us.apache.org/repos/asf/qpid-proton/repo Commit: http://git-wip-us.apache.org/repos/asf/qpid-proton/commit/eed33579 Tree: http://git-wip-us.apache.org/repos/asf/qpid-proton/tree/eed33579 Diff: http://git-wip-us.apache.org/repos/asf/qpid-proton/diff/eed33579 Branch: refs/heads/0.9.x Commit: eed3357915c9d3423962d385ca31d80dc9a31fd7 Parents: 4c8e175 Author: Dominic Evans <[email protected]> Authored: Fri Apr 24 14:18:57 2015 +0100 Committer: Robert Gemmell <[email protected]> Committed: Mon Apr 27 15:12:49 2015 +0100 ---------------------------------------------------------------------- DEVELOPERS.md | 41 +++++++++++++++++++++-------------------- INSTALL.md | 4 ++-- 2 files changed, 23 insertions(+), 22 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/eed33579/DEVELOPERS.md ---------------------------------------------------------------------- diff --git a/DEVELOPERS.md b/DEVELOPERS.md index e8b1f3c..d455ff5 100644 --- a/DEVELOPERS.md +++ b/DEVELOPERS.md @@ -8,44 +8,45 @@ Development Environment ----------------------- Developers wishing to work across multiple languages should become -familiar with the cmake build system as this will build and run all +familiar with the CMake build system as this will build and run all available tests and code whereas the maven build system only run Java tests. -First you will need to set up your basic build environment with cmake and all -prequisites (see the instructions in INSTALL) so that you can build the full -codebase +First you will need to set up your basic build environment with CMake and all +prerequisites (see the instructions in INSTALL) so that you can build the full +code base. To setup shell variables for your development environment, you must source -the file config.sh from the cmake build directory. +the file config.sh from the CMake build directory. $ cd build $ source config.sh -This file sets the needed environment variables for all supported dynamic -languages (Python, Perl, Ruby, PHP) as well as for Java and for testing. +This file sets the necessary environment variables for Java, for all supported +dynamic languages (Python, Perl, Ruby, PHP) and for running the tests. Testing ------- -As a developer on proton, it is a good idea to build and test with the +As a developer on Proton, it is a good idea to build and test with the appropriate dependencies and settings in place so that the complete set of -language bindings and implementations are present. There is a common test suite -that runs against both the proton-c and proton-j implementations to help keep -them in sync with each other - this is the python test suite that lives -underneath the top level `tests/python` directory. These tests have been -integrated into the maven build via Jython (and are hence included in the -proton-java ctest). When you run the python test suite in Jython, the swig -generated cproton doesn't actually exist since it is a C module. Instead, you -get the cproton.py that resides in the java source tree underneath -`proton-j/src/main/resources`. This cproton.py and its dependent files serve as -a shim that adapts between the Java API and the C API. +language bindings and implementations are present. + +Note that there is a common test suite written in python which will run against +both the proton-c and proton-j implementations to help keep them in sync with +each other. This can be found under the top level `tests/python` directory. +This has been integrated into the maven build via Jython (and is hence included +in the proton-java ctest suite). When you run the python test suite in +Jython, the swig generated cproton doesn't actually exist since it is a C +module. Instead, you get the `cproton.py` that resides in the Java source tree +under `proton-j/src/main/resources`. This `cproton.py` and its dependent files +serve as a shim that adapts between the Java API and the C API. ### Running tests To test Proton you should use the CMake build. By default this will invoke the -maven tests as well, so the maven prerequisites are required in addition to the -cmake prerequisites. +maven tests as well, so the maven prerequisites will additionally be required. + To run the tests, cd into your build directory and use the following commands: # to run all the tests, summary mode http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/eed33579/INSTALL.md ---------------------------------------------------------------------- diff --git a/INSTALL.md b/INSTALL.md index 973a7bd..90d4c5a 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -1,7 +1,7 @@ Qpid Proton Install Information =============================== -Proton comes with two separate build systems. The CMake build system can buildS +Proton comes with two separate build systems. The CMake build system can builds the entire codebase, including proton-c, all proton-c language bindings, and the pure Java proton-j implementation. The maven build system can only build the Java portions of the code. @@ -154,7 +154,7 @@ PYTHON or RUBY, e.g.: Maven (All platforms) --------------------- -The following prerequesuites are required to do a full build. +The following prerequisites are required to do a full build. + Apache Maven 3.0 (or higher) (http://maven.apache.org/) --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
