Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Convert the project to be based on Gradle #18

Draft
wants to merge 22 commits into
base: master
Choose a base branch
from

Conversation

ewpratten
Copy link

@ewpratten ewpratten commented Jan 3, 2021

This is the PR to go along with #17. This closes #17, closes #6, and closes #2

Currently work in progress

Project layout

The project is split into three main components:

  • :bindings
    • Contains the JavaCPP configuration to create and export JNI bindings for all platforms
  • :wrapper
    • Contains QOL improvements, wrapping :bindings. Currently: Jaylib.java
    • Is the actual "endpoint" the Gradle uses to create the library JARs
    • Exports jaylib-version.jar, jaylib-version-sources.jar, and jaylib-version-javadoc.jar
    • Generates a JavaDoc that combines both :wrapper and :bindings.
  • :examples
    • Example code. This depends on :wrapper

JavaDoc

I have set up GitHub CI to generate a javadoc and automatically push it to the gh_pages branch whenever a push is made to master. @electronstudio will have to tell GitHub to publish this branch in the repo settings.

@ewpratten
Copy link
Author

At this stage, running ./gradlew :examples:run on Linux will now launch the demo. Will begin work on the other platforms soon

@ewpratten
Copy link
Author

Jaylib will now work on whatever OS it is built on. Need to work on cross-compiling

@ewpratten
Copy link
Author

Im putting this on pause for a bit, as JavaCPP has some limitations I can't deal with. Will try to throw something together from scratch on my own, to see if I can find a workaround

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
1 participant