[ 
https://issues.apache.org/jira/browse/PROTON-194?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Philip Harvey updated PROTON-194:
---------------------------------

    Description: 
The catalyst for this work was the need to conveniently build and test the JNI 
bindings created in PROTON-192.  However, there are a number of other 
requirements for our build system that are worth reiterating.

Each of the following things should be easy to do in a small number of steps 
(ideally in one step).

- Starting from a fresh checkout out the base proton directory:
  - Build proton-c, including the language bindings
  - Build proton-j
  - Run the system tests against:
    - proton-c via its Python binding
    - proton-c via the JNI binding
    - proton-j

After making a local code change to any part of Proton it should also be easy 
to re-run each of the system test configurations listed above.

- Create an SVN tag and use it to:
  - Release the proton-c tarball
  - Publish the proton-j maven artefacts

I'm not sure how fixed the aforementioned requirements for independent 
checkouts are.  Maybe we could relax the  requirement by stating that you would 
also need to check out an accompanying top-level "api" module.

All the usual software engineering rules apply, e.g.
  - Don't Repeat Yourself
  - Adhere to the Principle of Least Surprise

  was:
The catalyst for this work was the need to conveniently build and test the JNI 
bindings created in PROTON-192.  However, there are a number of other 
requirements for our build system that are worth reiterating.

Each of the following things should be easy to do in a small number of steps 
(ideally in one step).

- Starting from a fresh checkout out the base proton directory:
  - Build proton-c, including the language bindings
  - Build proton-j
  - Run the system tests against:
    - proton-c via its Python binding
    - proton-c via the JNI binding
    - proton-j

After making a local code change to any part of Proton it should also be easy 
to re-run each of the system test configurations listed above.

- Create an SVN tag and use it to:
  - Release the proton-c tarball
  - Publish the proton-j maven artefacts

I'm not sure how fixed the aforementioned requirements for independent 
checkouts are.  Maybe we could relax the  requirement by stating that you would 
also need to check out an accompanying top-level "api" module.

    
> Change proton's build systems to support allow for the creation of a Java 
> binding for proton-c.
> -----------------------------------------------------------------------------------------------
>
>                 Key: PROTON-194
>                 URL: https://issues.apache.org/jira/browse/PROTON-194
>             Project: Qpid Proton
>          Issue Type: Improvement
>          Components: proton-c, proton-j
>            Reporter: Keith Wall
>
> The catalyst for this work was the need to conveniently build and test the 
> JNI bindings created in PROTON-192.  However, there are a number of other 
> requirements for our build system that are worth reiterating.
> Each of the following things should be easy to do in a small number of steps 
> (ideally in one step).
> - Starting from a fresh checkout out the base proton directory:
>   - Build proton-c, including the language bindings
>   - Build proton-j
>   - Run the system tests against:
>     - proton-c via its Python binding
>     - proton-c via the JNI binding
>     - proton-j
> After making a local code change to any part of Proton it should also be easy 
> to re-run each of the system test configurations listed above.
> - Create an SVN tag and use it to:
>   - Release the proton-c tarball
>   - Publish the proton-j maven artefacts
> I'm not sure how fixed the aforementioned requirements for independent 
> checkouts are.  Maybe we could relax the  requirement by stating that you 
> would also need to check out an accompanying top-level "api" module.
> All the usual software engineering rules apply, e.g.
>   - Don't Repeat Yourself
>   - Adhere to the Principle of Least Surprise

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to