-
Notifications
You must be signed in to change notification settings - Fork 1.9k
SDL2/Gradle bootstrap with fixes #1071
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
Conversation
@tito Would you be able to check if this PR works for you? I'm not sure if I've missed something. |
The sdl2_gradle bootstrap now supports both ant and gradle, either via a command line parameter or by automatically detecting if gradle will work by checking if it is present and that the android-sdk build-tools are new enough. I intend to finally merge these changes back into the sdl2 bootstrap, so that the one bootstrap can take care of both build systems. |
I've now moved everything back to the sdl2 bootstrap, which supports both gradle and ant as available. I intend to merge it right after releasing, since it may break things and need a little time to fix any problems that come up. |
One of the changes fixed the license issue I think, because I don't experience it anymore. I got further with the build, but still couldn't build an app. I've never experienced this error, so I don't know what to look for. Also, I'm not sure, but think some recent changes also removed |
Interesting error, not sure what's going on there. https://stackoverflow.com/questions/43916513/gradle-build-exception-aapt-process-not-ready-to-receive-commands seems to indicate that it's something to do with gradle versions, which seems understandable but probably needs some research to fix properly. |
For me it has failed. I have downloaded pull request with: Update 1 |
@jb1123 Thanks, this is useful to know. |
@KeyWeeUsr Do you still get the error you posted at https://gist.github.com/KeyWeeUsr/95e60ebf4ab392abba9c559349a513ac ? |
c181b83
to
3c9b5ea
Compare
…e, check first the non signed version. gradle build use env, not args.keystore
The NDK build part is carried out elsewhere in p4a (as it was with ant)
Not sure we want these, as any abi could be targeted. If we do have abifilters, probably we'll need to pass the abi to the template file.
I think the changes in -I and -L paths were due to the gradle build file including the NDK build, whereas this should already be done now.
`ant debug` now works when run from the dist dir, if ant is available.
3c9b5ea
to
971ed44
Compare
I had no problems getting this working in an Ubuntu VM, so I'm inclined to merge it after doing some final tests. I won't be surprised if there are still issues, but at this point I think it's better to make people come across them in master since they won't get found otherwise. |
The webview bootstrap was initially made thinking in the old python2 recipe and due to the recent changes in python2 build system, it was broken. Also, it was using the ant's tool to build the apk and this was causing troubles while compiling with latest android ndk (kivy#1069)...so...here we move the apk build tool from ant to gradle (because is the same build system than the sdl2's bootstrap). This changes will allow us to grant python3's compatibility for webview's bootstrap in a near future. The gradle changes are based on previously work done by @inclement and @tito for sdl2 bootstrap while introducing gradle (kivy#1071).
The service_only bootstrap was broken since the update of python recipe, plus it was using the ant's tool to build the apk and this was causing troubles while compiling with latest android ndk (kivy#1069)...so...here we move the apk build tool from ant to gradle (the same build system than the other bootstrap: sdl2 and webview). This changes will allow us to grant python3's compatibility for service_only's bootstrap in a near future. Also with this update, some of the args disabled for this bootstrap has been enabled (e.g.: application's icon or the aar dependency). The presplash was leaved out from those additions but maybe it should be included as well. The gradle changes are based on previously work done by @inclement and @tito for sdl2 bootstrap while introducing gradle (kivy#1071) and on the recent changes applied to the webview's bootstrap.
This PR is an extended version of tito's #1042 , which did not work for me without the new changes.
The main changes are:
src/main/jniLibs
back tolibs
, and added this location explicitly to thebuild.gradle
. I couldn't get the libs to be loaded properly without this change (although it might also work to move all of them, not just the libpython, and again add the location explicitly tobuild.gradle
).build.gradle
file. This seemed to run the whole build a second time, and isn't necessary as p4a already does the ndk-build step as part of the SDL2 recipe. This also seemed to make some of the changes to Android.mk unnecessary.Can anyone test if this new version works for them?