kiwix / kiwix/java-libkiwix

Reorganise the gradle build script

Open
#31 0 comments 0 reactions 1 assignee View on GitHub

@MohitMaliFtechiz is already working on this.

Since Mar 22, 2023.

Dominant language
Java
Stars
9
Forks
8
PR merge metrics
No merged PRs in 30d

Description

With PR #27 merged we have now working build system and test.

However, the internal structure of the gradle build system is not perfect. For now we have :

  • target generateHeaderFilesFromJavaWrapper which generate the headers from the java class definition
  • target build which build the jni wrapper. It use the generated header but it doesn't have a dependency to generateHeaderFilesFromJavaWrapper.
  • target createCodeCoverageReport which create the test "binary", run it and then generate the code coverage report. But it create the test binary by recompiling the source of the jni wrapper inside itself.

It would be better to have:

  • target generateHeaders which generate the headers from the java class definition
  • target build which build the jni wrapper. As it needs the generated header, it depends of generateHeaders wrapper.
  • target buildTest which build the test binary. As it need to use the created jni wrapper (as if it was a simple user of the wrapper), it depends of build target.
  • target test which run the test binary. It depends of buildTest target.
  • target createCodeCoverageReport which depends of test target.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.