Commit Graph

413 Commits

Author SHA1 Message Date
rdb bb68abdd59 makepanda: Ignore system imports when scanning .java files 2022-03-12 16:55:37 +01:00
rdb 76fb49252c dist: Fix regression with data_dir NameError in build_apps
Fixes #1276

Also let's consistently use the term "assets" for all the application data (and not the gaming-specific term "game files") and use the term "data" for package data only
2022-03-02 10:45:57 +01:00
Disyer a08e42d015 makepanda: Create 7-zip debug symbol archives by default, if available
7-zip archives will only be created if 7-zip is available during the build phase. When 7-zip is unavailable, ZIP archives will be created as a fallback.

Benchmarks:

- Default ZIP compression: ~23.5 seconds, 162 MB
- 7-zip compression: ~7.5 seconds, 108 MB
- 7-zip compression, --lzma set: ~44 seconds, 88 MB
- 7-zip compression, solid archive: ~5 minutes, 83 MB (not implemented)

Closes #1261
2022-02-24 11:55:06 +01:00
rdb 25a468ba12 Merge branch 'release/1.10.x' 2022-02-07 19:31:04 +01:00
rdb 3c142a61ab makepanda: Properly detect keyboard interrupts on Windows 2022-02-07 11:10:32 +01:00
Disyer bc6502a8fe makepanda: Record cache timestamps as integers rather than floats
We don't need the extra precision, in fact it is detrimental to restoring build caches in a cross-platform way.

This commit will invalidate all current build caches.

Cherry-picked from 2a904f3985 (see #1260)
2022-02-06 15:29:25 +01:00
Disyer 2a904f3985 makepanda: Record cache timestamps as integers rather than floats
We don't need the extra precision, in fact it is detrimental to restoring build caches in a cross-platform way.

This commit will invalidate all current build caches.
2022-02-05 23:16:59 +02:00
rdb 78b67988fb makepanda: Fix wrong installation path for Python SDK on Debian/Ubuntu
This partially reverts commit 2fcacd1bab.

Fixes #1230
2022-01-05 08:48:26 +01:00
rdb 1da5b4ceb7 makepanda: Fix LocateLibrary to also work on Windows 2022-01-01 18:54:31 +01:00
rdb b53895aa3d Merge branch 'release/1.10.x' 2022-01-01 18:18:46 +01:00
rdb ce0d020cfd makepanda: Add handling for Windows 11 SDK 2021-12-31 13:10:20 +01:00
rdb 2fcacd1bab makepanda: Replace references to deprecated distutils module
distutils is deprecated as of Python 3.10 (see PEP 632) and will be removed in Python 3.12.
2021-12-25 11:51:28 +01:00
rdb fc625eec11 Merge branch 'release/1.10.x' into incoming 2021-12-12 22:54:15 +01:00
rdb 2766bca974 makepanda: Add macOS 11.3 SDK 2021-12-12 22:47:07 +01:00
Daniel afadb556a2 maya: Add support for Maya 2022
Closes #1213
2021-12-12 22:20:21 +01:00
Daniel 6acb94f451 makepanda: Support Visual Studio 2022
Closes #1214
2021-12-12 22:18:47 +01:00
rdb c7cccd4791 makepanda: Fix compiling for older NDKs with armv7a 2021-12-08 14:46:42 +01:00
rdb 59ef701298 makepanda: Add back accidentally removed libc++_shared.so on Android 2021-12-07 23:03:37 +01:00
rdb 954bc75314 makepanda: Don't use SOABI from config vars when cross-compiling
[skip ci]
2021-12-06 22:34:01 +01:00
rdb d473c794d9 makepanda: Use llvm-strip on Android instead of strip 2021-12-06 22:29:30 +01:00
rdb 9230af94a3 makepanda: Replace dx with d8 for building Dalvik executable (Android)
Also, do it in makepanda instead of in makepackage
2021-12-06 22:28:42 +01:00
rdb d9e335e978 makepanda: Updates for Android compilation with latest NDK
[skip ci]
2021-12-05 17:13:04 +01:00
rdb a99a1ed991 makepanda: Android build fixes 2021-12-05 00:00:52 +01:00
rdb cdadd00e72 makepanda: Optimize WriteEmbeddedStringFile function
This function took ages with a debug build of Python
2021-12-04 21:57:55 +01:00
rdb 5de31c6293 Merge branch 'release/1.10.x' 2021-12-04 21:57:35 +01:00
rdb 420d1cee61 makepanda: Fix unclosed file handles 2021-12-04 20:43:07 +01:00
rdb 985ec3061c makepanda: Fix deprecated spelling for threading API
The new spelling is available since Python 2.6, so there is no chance of breakage here.
2021-12-04 20:37:14 +01:00
rdb b42fd4ee4f makepanda: Don't copy over old Python 2-only Pmw versions 2021-11-29 14:50:01 +01:00
rdb 78fb565f2b Merge branch 'release/1.10.x' 2021-11-28 16:14:18 +01:00
rdb 13db762a33 makepanda: Add missing version of Windows 10 SDK 2021-11-28 13:56:21 +01:00
rdb 0e36a99574 Merge branch 'release/1.10.x' 2021-03-22 15:45:45 +01:00
rdb 1654860f36 makepanda: Rename aarch64 thirdparty dir to arm64 for consistency 2021-03-21 15:50:00 +01:00
rdb fb9b334d58 Merge branch 'release/1.10.x' 2021-02-17 10:57:30 +01:00
rdb 059361c87c makepanda: Locate aarch64 thirdparty packages on Linux/FreeBSD
[skip ci]
2021-02-16 11:49:53 +01:00
rdb ce235c3e60 Merge branch 'release/1.10.x' 2021-01-02 19:59:33 +01:00
rdb 6690b2d86e makepanda: Fix build error when flex is absent 2021-01-02 19:29:56 +01:00
rdb fd2041d209 makepanda: Fix detecting flex version on macOS, more robust checking 2021-01-02 18:50:23 +01:00
rdb 748dd61615 makepanda: Require flex 2.5.9 for building egg lexer
Otherwise, fall back to prebuilt file instead
2021-01-02 12:55:34 +01:00
rdb 2b84bfc145 makepanda: Code formatting 2020-12-31 13:44:13 +01:00
rdb fff0a67189 makepanda: better support building with FMOD Ex on macOS for now
This means preferring the 10.13 SDK except when targeting arm64 (in which case FMOD Ex is disabled with a warning).
2020-12-28 18:52:02 +01:00
rdb a3010a43a5 Merge branch 'release/1.10.x' 2020-12-24 15:31:52 +01:00
rdb 5c98c6fb71 makepanda: accept arm64 as alias for aarch64 when building for Android 2020-12-24 13:21:35 +01:00
rdb f4fa444013 Merge branch 'release/1.10.x' 2020-12-22 00:37:50 +01:00
rdb 5cd6469fd8 makepanda: Don't make built/Frameworks directory unless needed
It is no longer needed if we don't ship Cg as a framework, see #1079

[skip ci]
2020-12-21 22:10:53 +01:00
rdb f5e7b0a439 makepanda: prefer more recent macOS SDKs over older ones
See Apple's recommendations:
https://developer.apple.com/library/archive/qa/qa1806/_index.html

We may still be limited to the 10.13 SDK to be able to build FMOD Ex.
2020-12-19 00:13:19 +01:00
rdb 8231bc12bf makepanda: remove --osxtarget option
We can target 10.9 (the minimum supported) even with the 11.1 SDK, so we should just check for whichever SDK is available, and always target 10.9 (or 11.0 when building for arm64 only, since arm64 requires 11.0 to begin with).

This also means that --universal will always add both x86_64 and arm64 to the build.
2020-12-18 13:11:35 +01:00
rdb a5ae292c3e Merge branch 'release/1.10.x' 2020-12-18 12:56:31 +01:00
rdb a18edf54b7 makepanda: Changes to support build for macOS 11.0 / arm64
Besides use of --universal with --osxtarget 11, it's now also possible to create a fat build with ARM64 by using --osxtarget 10.9 --arch x86_64 --arch arm64 (it will use the 11.x SDK but target 10.9)

FMOD Ex is also being disabled when building against the 10.14 SDK or higher, because the necessary libstdc++.6.0.9.dylib is no longer being shipped.  FMOD Ex, libRocket and Cg are all disabled on ARM64 (FMOD Ex and Cg don't have the binaries available, libRocket could theoretically be built but there's no point as there won't be an ARM64 build of Python 2.7, and besides, we've deprecated it anyway).

Fixes #1062
2020-12-17 13:00:22 +01:00
rdb ed397b3ab8 Merge branch 'release/1.10.x' 2020-12-09 17:59:37 +01:00
rdb 951c182c0e makepanda: Preparatory changes for Big Sur / arm64 builds 2020-11-30 19:46:20 +01:00