Commit graph

326 commits

Author SHA1 Message Date
Rhody Lugo 714e02c0f6 disable caching for targets using helper functions 2017-11-28 16:14:24 -04:00
Rhody Lugo 388249c386 use the same cache for all branches for appveyor 2017-11-28 03:23:51 -04:00
Rhody Lugo f09bbfa372 change matrix and enable caching for Android, iOS and macOS (cross-compile) 2017-11-13 15:13:46 -04:00
Rhody Lugo fd10b1cf4c unified headers fix 2017-11-09 09:47:28 -04:00
Rhody Lugo c0647681d8 add support for Android NDK unified headers 2017-11-06 07:52:47 -04:00
Matthias Hoelzl fb236045de Make build scripts Scons 3.0/Python3 compatible
- Cherry picked #10662 and fixed merge conflicts.
- Manualy merged the change from #11904.
- Did not merge #12236 since I'm not sure whether the issue
  affects Godot 2.1 and I don't have VS2013 to test.
- Did not merge #11843 since it doesn't seem relevant (the
  code is only needed for creating DONORS.md, etc.).
- Did not merge #10727 and #11752 since they seem to be
  already included in #11742.
- The Windows and Linux builds have been tested with Scons 3.0
  using Python 3.
- OSX and iOS should hopefully work but are not tested since
  I don't have a Mac.
- Builds using SCons 2.5 and Python 2 should not be impacted.
2017-10-24 06:41:32 +02:00
Pedro J. Estébanez f50e5dc594 Fix Android build error with SCons 3.0
Not sure why this happens without having upgraded Python itself, but is needed now.

Not needed for _master_ because there we have b6e1e47e3a that does this and more.

This commit does not address upgrading to Python 3.0. It just makes building for Android work again after upgrading SCons while keeping Python 2.7.
2017-10-14 20:53:00 +02:00
Rémi Verschelde fd8a71397d Merge pull request #11796 from RameshRavone/back_event
Handling BackPress event [Android]
2017-10-12 20:12:00 +02:00
Ramesh Ravone 77332861c2
flatDir support [Android] 2017-10-05 09:22:37 +05:30
Ramesh Ravone 2ba23c8ae7
Handling BackPress event [Android] 2017-10-03 11:33:37 +05:30
volzhs 24f2864e78 Fix TrustManager for Android 2017-09-21 06:23:40 +09:00
Pedro J. Estébanez d6d1c55505 Fix pre-Lollipop (21) Android debug
Namely, automatically pick debug over Wi-Fi for devices with an older release and debug over USB otherwise.

A message is printed both in editor output window and console (uppercase here) to let the user know about what mechanism is being used and why.

Fixes #10458.
2017-08-30 20:35:42 +02:00
Pedro J. Estébanez 8d49cdcfeb Fix parsing of Android API level
And renaming the `Device.release` field to `api_level` for correctness.
2017-08-30 20:12:35 +02:00
Rémi Verschelde 891f6c9b63 Merge pull request #10530 from RandomShaper/remove-old-android-setting-2.1
Sanitize Android debug (2.1)
2017-08-29 00:10:31 +02:00
Rémi Verschelde 9d598833d2 Use HTTPS URL for Godot's website in the headers 2017-08-27 14:11:45 +02:00
Pedro J. Estébanez e42d62ae73 Fix Android remote debug not hitting breakpoints
A change in `Main`'s API is needed. Please read the comment in the diff for an explanation.
2017-08-22 17:25:28 +02:00
Pedro J. Estébanez 723e8482c0 Make Android debug over USB the only option
'Remote debug over ADB' is removed as that will be always the case.

Closes #10458.
2017-08-22 17:10:59 +02:00
Marcelo Fernandez 647c4ae5bf Add closest_power_of_2 func and implement mix_rate/latency on OS X 2017-08-18 12:10:21 -03:00
Rémi Verschelde e87b6d4c63 Merge pull request #9978 from ISylvox/update-gradle-android-for-2.1
[2.1] Update Gradle-Android buildtool
2017-08-04 09:45:21 +02:00
Pedro J. Estébanez 7459c43750 Remove ANDROID define
Fixes GDNative build error on Android.

It's also discouraged by Google to rely on it. In case someone needs to check, use ``__ANDROID__`` instead, provided by the very same compiler.

(cherry picked from commit 6ea233434a)
2017-07-30 21:34:59 +02:00
ISylvox f7e4190b19 update gradle-android buildtool for 2.1 2017-07-30 12:08:36 +07:00
Pedro J. Estébanez aea12b56bc Fix Android debug/run
Same as _master_'s 0ae3336a329b1fd14b66bb26707c2461b66e5aa8; namely:
- Prefix all __adb__ commands with device specification to avoid errors when multiple devices connected.
- Include Android release in device data collection.
- Force system user:.
    - Ability to enable/disable.
    - Apply only if OS release >= 17 (when multiuser was introduced.
    - Fix argument passing.
- Rename local variable `port` to `dbg_port` to better match its partner `fs_port`.
- Fix typo in error message.

But adds:
- Get the debug port from the editor settings, where it lives now.

Fixes #8581.
2017-07-27 18:11:23 +02:00
Poommetee Ketson 4a0dc529ce BuildSystem: generated files have .gen.ext 2017-06-25 20:31:56 +07:00
Pedro J. Estébanez 499ef55cbc Improve/harmonize mobile builds 2017-05-27 23:26:47 +02:00
Rémi Verschelde d432ad1e17 Improve documentation of thirdparty code snippets
(cherry picked from commit c8aea60324)
2017-05-26 23:53:14 +02:00
Ramesh Ravone 22c174bb71 Android: avoiding duplicates in build.gradle
(cherry picked from commit f8309f86c2)
2017-05-26 18:08:59 +02:00
Ramesh Ravone 9028a75452 Android: Support to change minSdkVersion (#8313)
(cherry picked from commit 93b417fe17)
2017-05-26 18:08:26 +02:00
volzhs c6ebb6a40c Fix android build regression by 69c4c4a 2017-05-26 20:42:36 +09:00
volzhs d4ef6216d3 Fix android payment logical error
getting sku detail runs only if mod != 0 which means querying 20*n will not get sku details.
referenced from https://github.com/googlesamples/android-play-billing/blob/master/TrivialDrive/app/src/main/java/com/example/android/trivialdrivesample/util/IabHelper.java#L1029-L1062
2017-05-19 12:11:59 +09:00
Pedro J. Estébanez deda04faff Upgrade Android build tools to the latest 2017-05-16 00:54:54 +02:00
Fabio Alessandrelli aa167fa04b Rename debug/debug_port to network/debug_port.
Expose it in editor settings.
2017-05-12 20:01:53 +02:00
Rémi Verschelde 353ed88a54 Merge pull request #8724 from volzhs/android-jni
Fix compile error when use "android_add_jni_dir"
2017-05-12 08:24:32 +02:00
volzhs 69c4c4a20c Fix compile error when use "android_add_jni_dir" 2017-05-12 15:07:41 +09:00
volzhs c7d3aac505 Update to latest gradle 2017-05-12 14:38:23 +09:00
volzhs a6c74136b5 Fix possible memory leak for Android
/godot_dev/platform/android/java/src/com/google/android/vending/expansion/downloader/impl/DownloaderService.java:575: Error: The WIFI_SERVICE must be looked up on the Application context or memory will leak on devices < Android N. Try changing  to .getApplicationContext()  [WifiManagerLeak]
            mWifiManager = (WifiManager) getSystemService(Context.WIFI_SERVICE);
                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

   Explanation for issues of type "WifiManagerLeak":
   On versions prior to Android N (24), initializing the WifiManager via
   Context#getSystemService can cause a memory leak if the context is not the
   application context. Change context.getSystemService(...) to
   context.getApplicationContext().getSystemService(...).

1 errors, 0 warnings
2017-05-12 14:38:15 +09:00
volzhs 7919ce782b Fix error or download again if use obb for Android 2017-04-26 03:43:38 +09:00
Rémi Verschelde 2491754de7 Style: Fix some badly formatted files 2017-04-08 01:42:41 +02:00
Rémi Verschelde e9b045d9e5 Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
Rémi Verschelde f71da5c8c5 Merge pull request #8273 from RandomShaper/fix-android-x86-2.1
Fix crash on Android-x86 (2.1)
2017-04-05 22:27:58 +02:00
Pedro J. Estébanez 212fca0c50 Fix crash on Android-x86 2017-04-05 22:16:04 +02:00
Ramesh Ravone 1c17e5b38d Update build.gradle.template
Updating project repository,
added jcenter() since Android Studio uses it by default.

https://www.jfrog.com/knowledge-base/why-should-i-use-jcenter-over-maven-central/
(cherry picked from commit 77c81a21d8)
2017-04-05 08:07:01 +02:00
Rémi Verschelde 31107daa1a SCons: Add option to toggle warnings (on by default)
All the warnings are factored out of the platform-specific files and moved to
SConstruct. Will have to check that it does not introduce regressions on some
platforms/compilers.
2017-03-25 09:24:29 +01:00
BastiaanOlij cc6810c030 Android gravity vector Godot 2.1 2017-03-21 22:45:24 +11:00
Ramesh Mani Maran f2f2369db8 android: adding classpath and gradle plugins
(cherry picked from commit 27c7d253aa)
2017-03-19 00:44:13 +01:00
denis e3e86567ba Update mouse position on touch and release events (Android)
(cherry picked from commit 55835167a4)
2017-03-19 00:42:58 +01:00
Rémi Verschelde f8db8a3faa Bring that Whole New World to the Old Continent too
Applies the clang-format style to the 2.1 branch as done for master in
5dbf1809c6.
2017-03-19 00:36:26 +01:00
Rémi Verschelde 1b0e2b0c39 Refactoring: rename tools/editor/ to editor/
The other subfolders of tools/ had already been moved to either
editor/, misc/ or thirdparty/, so the hiding the editor code that
deep was no longer meaningful.

(Manual redo of 49c065d29c)
2017-03-18 23:45:45 +01:00
Rémi Verschelde dbf0137576 Style: Fix statements ending with ';;'
(cherry picked from commit f44ee891be)
2017-03-18 21:14:33 +01:00
Ramesh Mani Maran 9b26e9c9ac support for multiple maven url
(cherry picked from commit aa7490ffd0)
2017-03-18 20:21:49 +01:00
Jerome67000 ab7faa1281 #7215 try to fix adb bad targeting user on device
(cherry picked from commit 8c19a6cb85)
2017-03-18 19:41:37 +01:00
volzhs c8edf071da Fix handling input for Android 2017-03-04 00:12:35 +09:00
Pedro J. Estébanez fec41c528c Fix resources for Android modules not being merged
Fixes #7421
2017-01-24 16:29:09 +01:00
Rémi Verschelde d8223ffa75 Welcome in 2017, dear changelog reader!
That year should bring the long-awaited OpenGL ES 3.0 compatible renderer
with state-of-the-art rendering techniques tuned to work as low as middle
end handheld devices - without compromising with the possibilities given
for higher end desktop games of course. Great times ahead for the Godot
community and the gamers that will play our games!

(cherry picked from commit c7bc44d5ad)
2017-01-12 19:15:30 +01:00
volzhs 2e74bdab35 Add alert window on Android
(cherry picked from commit 9a20068ab7)
2017-01-12 19:15:26 +01:00
Pedro J. Estébanez 19ce11b908 Update/fix Android build
Fix wrong path for 32-bit Windows, which fixes #7084
Exclude 32-bit Windows from multi-threaded linking because it's not supported by the NDK
Remove 32-bit Linux as there is no NDK variant for it
(cherry picked from commit 5a26459c06)
2016-11-15 08:44:53 +01:00
Pedro J. Estébanez 221346521c Make Android export quicker (especially on Windows)
(cherry picked from commit 56721e5d9d)
2016-11-15 08:35:15 +01:00
volzhs 3e127ce3fd Fix Directory.dir_exist/get_current_dir for 'res://' on Android
Fix #7014

(cherry picked from commit 8d454ed9a7)
2016-11-15 08:34:51 +01:00
Rémi Verschelde ce54b6ea8b scons: Reorder options for clarity
Also prefix all thirdparty-related toggles with `builtin`.

(cherry picked from commit cc95d4448c)
2016-11-03 08:41:10 +01:00
Pedro J. Estébanez f629b1fd3e Improve Android build (Clang + tidyness)
(cherry picked from commit b18ff942be)
2016-11-02 22:34:17 +01:00
Rémi Verschelde eaf803f71e style: Various other PEP8 fixes in Python files
Done with `autopep8 --select=E7`, fixes:

- E701 - Put colon-separated compound statement on separate lines.
- E702 - Put semicolon-separated compound statement on separate lines.
- E703 - Put semicolon-separated compound statement on separate lines.
- E711 - Fix comparison with None.
- E712 - Fix (trivial case of) comparison with boolean.
- E713 - Fix (trivial case of) non-membership check.
- E721 - Fix various deprecated code (via lib2to3).
2016-11-02 22:30:34 +01:00
Rémi Verschelde a7389217f8 style: Fix PEP8 blank lines issues in Python files
Done with `autopep8 --select=E3,W3`, fixes:

- E301 - Add missing blank line.
- E302 - Add missing 2 blank lines.
- E303 - Remove extra blank lines.
- E304 - Remove blank line following function decorator.
- E309 - Add missing blank line.
- W391 - Remove trailing blank lines.
2016-11-02 22:29:36 +01:00
Rémi Verschelde e259bf8bbb style: Fix PEP8 whitespace issues in Python files
Done with `autopep8 --select=E2,W2`, fixes:

- E201 - Remove extraneous whitespace.
- E202 - Remove extraneous whitespace.
- E203 - Remove extraneous whitespace.
- E211 - Remove extraneous whitespace.
- E221 - Fix extraneous whitespace around keywords.
- E222 - Fix extraneous whitespace around keywords.
- E223 - Fix extraneous whitespace around keywords.
- E224 - Remove extraneous whitespace around operator.
- E225 - Fix missing whitespace around operator.
- E226 - Fix missing whitespace around operator.
- E227 - Fix missing whitespace around operator.
- E228 - Fix missing whitespace around operator.
- E231 - Add missing whitespace.
- E231 - Fix various deprecated code (via lib2to3).
- E241 - Fix extraneous whitespace around keywords.
- E242 - Remove extraneous whitespace around operator.
- E251 - Remove whitespace around parameter '=' sign.
- E261 - Fix spacing after comment hash.
- E262 - Fix spacing after comment hash.
- E265 - Format block comments.
- E271 - Fix extraneous whitespace around keywords.
- E272 - Fix extraneous whitespace around keywords.
- E273 - Fix extraneous whitespace around keywords.
- E274 - Fix extraneous whitespace around keywords.
- W291 - Remove trailing whitespace.
- W293 - Remove trailing whitespace.
2016-11-02 22:28:28 +01:00
Rémi Verschelde 561c1f17a1 style: Start applying PEP8 to Python files, indentation issues
Done with `autopep8 --select=E1`, fixes:

- E101 - Reindent all lines.
- E112 - Fix under-indented comments.
- E113 - Fix over-indented comments.
- E115 - Fix under-indented comments.
- E116 - Fix over-indented comments.
- E121 - Fix a badly indented line.
- E122 - Fix a badly indented line.
- E123 - Fix a badly indented line.
- E124 - Fix a badly indented line.
- E125 - Fix indentation undistinguish from the next logical line.
- E126 - Fix a badly indented line.
- E127 - Fix a badly indented line.
- E128 - Fix a badly indented line.
- E129 - Fix a badly indented line.
2016-11-02 22:26:55 +01:00
Rémi Verschelde 5a49e45d21 SCsub: Add python shebang as a hint for syntax highlighting
Also switch existing shebangs to "better" /usr/bin/env python.

(cherry picked from commit fc8ccd5b8c)
2016-10-30 14:51:34 +01:00
Błażej Szczygieł 7143401e25 Theora: Don't compile unnecessary files, rename "x86_opt_*"
(cherry picked from commit 4ffa8f224d)
2016-10-30 14:51:34 +01:00
Rémi Verschelde f1bd2f6f56 zlib: Split thirdparty files, simplify scons option
(cherry picked from commit cbf52606f4)
2016-10-30 14:51:33 +01:00
Rémi Verschelde 995dcb610c ogg/vorbis/opus/speex: Make them modules and unbundle thirdparty libs
Took the opportunity to undo the Godot changed made to the
opus source. The opus module should eventually be built in its
own environment to avoid polluting others with too many include
dirs and defines.

TODO: Fix the platform/ stuff for opus.
(cherry picked from commit d9a291f641)

speex module was only added while cherry-picking, as speex is removed
in the master branch but we don't want to break compatibility in 2.1.x.
Unbundling wasn't done as the module uses the internal speex_free,
so it would require some more work.
2016-10-30 14:51:31 +01:00
Rémi Verschelde 846db09038 Drop nedmalloc which is apparently not used anymore
(cherry picked from commit f63bf12193)
2016-10-30 14:51:30 +01:00
Randy Tan Shaoxian c9d7f77c6f Fixed tiny error in detect.py causing compilation for Android to fail. 2016-10-20 21:17:21 +08:00
volzhs 00b0f3dfde Fix crash when using Directory.dir_exists(path) on Android
(cherry picked from commit 4a57821349)
2016-10-17 20:50:57 +02:00
Anthony Fieroni b4edaa892d Correct OS architecture detection
Signed-off-by: Anthony Fieroni <bvbfan@abv.bg>
(cherry picked from commit f87e32696d)
2016-10-17 20:48:05 +02:00
Pedro J. Estébanez 82dfaf7af6 Fix compile flags not getting to the Android build
(cherry picked from commit 7f51bb7b1c)
2016-10-09 17:34:36 +02:00
syskrank 4b2243f82e removed confusing "if(true)" statement with empty "else" block
(cherry picked from commit af4b0db1e4)
2016-10-09 17:22:36 +02:00
Pedro J. Estébanez 45a5769162 Fix manifest generation bug in Android export
(cherry picked from commit 2c9d98bb48)
2016-10-09 17:20:27 +02:00
Pedro J. Estébanez f90370886f Fix (potentially) Android libs packaging issue (#5645)
(cherry picked from commit e9065632c6)
2016-09-18 23:11:18 +02:00
Skyfrit c56ea7cf91 Android: Rename values-zh to values-zh-rCN (#6063)
(cherry picked from commit 4f6a21b0df)
2016-08-08 18:15:55 +02:00
Skyfrit 1913e4a040 Android: Add support for Traditional Chinese (HK) (#6061)
(cherry picked from commit 664b5b5137)
2016-08-08 18:15:49 +02:00
Skyfrit 2b35ba4815 Android: Add support for Traditional Chinese (TW) (#6061)
(cherry picked from commit 8ab4acd17f)
2016-08-08 18:15:43 +02:00
Juan Linietsky 9213400cd5 Merge pull request #5415 from volzhs/improve-android-payment
Improve android payment
2016-07-24 12:18:13 -03:00
Mario Schlack beaa56bff2 Minor code formatting in platform/android 2016-07-21 12:07:01 +02:00
Rémi Verschelde b1cca17053 Merge pull request #5835 from volzhs/issue-5831
Fix compile error if use android_stl=yes
2016-07-21 10:37:18 +02:00
volzhs 01e39ecec8 Fix compile error if use android_stl=yes 2016-07-21 17:31:46 +09:00
Rémi Verschelde 5274f2a126 Merge pull request #5819 from hurikhan/android_getScreenDPI
Implement get_screen_dpi() on Android
2016-07-21 09:09:49 +02:00
Mario Schlack 0717893772 Implement get_screen_dpi() on Android 2016-07-20 14:54:48 +02:00
Juan Linietsky 0988970c1f Fixed properly not save signals that already exist in their base scenes, closes #5656 2016-07-19 21:26:12 -03:00
volzhs 79cb91dc84 Add querying details of IAP items for android 2016-07-18 23:45:58 +09:00
volzhs f26f181ba9 Fix can't get all info if user purchases many items and not consumed 2016-07-18 23:45:58 +09:00
Jamil Halabi 370ae3512d Added gyroscope support to Godot and Android 2016-07-16 01:43:32 +08:00
sanikoyes 978cb0e884 Fix crash in FileAccessJAndroid::file_exists (does not free local ref) 2016-07-11 12:41:54 +08:00
Juan Linietsky d279d060e1 Merge pull request #5077 from RandomShaper/improve-android-build
Improve Android build
2016-07-10 13:57:17 -03:00
volzhs 40d3234304 Add android_add_default_config for config.py
usage : env.android_add_default_config("applicationId 'com.godot.game'")
2016-07-07 04:03:50 +09:00
volzhs b09dbaa78e Fix crash when null value through jni on android 2016-07-05 04:41:46 +09:00
Rémi Verschelde 9693f37fcc Merge pull request #5491 from volzhs/fix-jni-bool-string
Fix wrong return bool, string, string array data through jni
2016-07-03 19:11:04 +02:00
Juan Linietsky 1726bacf78 missnig ; 2016-07-02 16:04:00 -03:00
Juan Linietsky 973a12c5f2 Data dir returns a symlink in Android 6.0, which confuses DirAccess on android, this should fix it 2016-07-02 11:49:52 -03:00
volzhs aac0af043c Fix wrong return bool, string, string array data through jni 2016-06-30 01:23:55 +09:00
Pedro J. Estébanez e7b2626707 Make Android build smarter (SCons + Gradle)
Upgrade Gradle and Android plugin for Gradle
Disable all signing and zip-aligning for the export templates
Give correct names to generated APKs
Put .so files built by SCons right where Gradle has to pick them according to arch & build type
Downgrade NDK platform to 14 to match minSdkVersion
2016-06-27 10:49:15 +02:00
Rémi Verschelde 7d06d50e65 Merge pull request #5395 from vnen/android-sensors
Fix Android sensors polling rate on resume
2016-06-26 09:46:10 +02:00
Rémi Verschelde fad6b29a59 Merge pull request #5390 from volzhs/jni-stringarray
Fix string array parameter check with jni
2016-06-26 09:45:36 +02:00
Juan Linietsky 8dac3bf3b1 Added function to notify ScriptLanguage when a thread is created/freed, allows scripts to allocate a stack there via TLS 2016-06-25 10:41:23 -03:00