25379 Commits

Author SHA1 Message Date
rdb
b610a6492e dist: Don't set sys.platform to "android" on Android
Let's just do what upstream does, so that there are no surprises.
2022-03-12 18:19:51 +01:00
rdb
e02a9989fb android: Changes to add compatibility with pyjnius/plyer 2022-03-12 18:18:15 +01:00
rdb
83038146b3 makepanda: Fix dependency problem in threaded mode
This seems to happen when TargetAdd calls are specified out-of-order
2022-03-12 16:56:02 +01:00
rdb
bb68abdd59 makepanda: Ignore system imports when scanning .java files 2022-03-12 16:55:37 +01:00
rdb
5c03cd59fb dist: Add special support for hidden imports of plyer module 2022-03-12 16:52:12 +01:00
rdb
218f2af7fb dist: Support .* imports inside wheels
No longer try to import modules directly (we can do this if we really have to, but then we have to load it from the proper location) since we don't want to grab the system version of the package which may not be present or may be a different version.  Support discovering .* imports inside .whl files that are on sys.path.
2022-03-12 16:50:05 +01:00
rdb
98d70147bd pipeline: Fix Thread::bind_thread() assertion on Android 2022-03-12 16:48:46 +01:00
rdb
3d31f117e0 express: Fix compilation error with GCC 2022-03-09 16:23:37 +01:00
rdb
5475084717 build: Enable -fno-semantic-interposition for GCC
This matches the more optimized clang behavior for -fPIC
2022-03-09 16:23:37 +01:00
rdb
3456769703 gobj: Fix crash in PythonTexturePoolFilter 2022-03-09 16:23:37 +01:00
rdb
c62d2319e0 CMake: Add --exclude-libs flags to static thirdparty libraries
Matching makepanda, this avoids symbol conflicts and may have optimization benefits.

This is a temporary hack until CMake 3.24 is released, which offers a cleaner way of doing this.
2022-03-09 16:23:37 +01:00
rdb
6ea1e8d65c CMake: Update OpenEXR package handling to use new targets 2022-03-09 16:23:37 +01:00
rdb
e8f3565af2 CMake: Transfer target_link_options from component libs to metalibs 2022-03-09 16:23:37 +01:00
rdb
264747d213 CMake: Drop support for CMake versions below 3.13
We are already using target_link_options, and while it's possible to keep supporting older versions, it doesn't sound worth it.  I can revert this out if someone gives me a really good reason to.
2022-03-09 16:23:37 +01:00
rdb
e716dba8d4 CMake: Update FindLibSquish.cmake, support looking in thirdparty dir 2022-03-09 16:23:37 +01:00
rdb
59f422c056 CMake: Support thirdparty packages on systems other than Windows/macOS 2022-03-09 16:23:37 +01:00
rdb
683c54938c task: Don't capture SIGINT on Android
There's no point to doing that, and doing so restricts the ability to run Python in a separate thread
2022-03-09 16:23:37 +01:00
rdb
573df4b320 dist: Add more resource codes for AndroidManifest.xml values 2022-03-09 16:23:37 +01:00
rdb
37c48ea829 dist: Helpful error for invalid android_abis value 2022-03-09 16:23:37 +01:00
rdb
72f98ec30d gobj: Delete assignment operator of Geom* classes
They are unused and it would probably be a bad idea to try to use them.
2022-03-09 16:23:37 +01:00
rdb
6b9dea3e30 cleanup: Fix comparison between pointer and 0 (instead of nullptr) 2022-03-09 16:23:37 +01:00
rdb
657a8f890c interrogate: Squelch weird "Manifests" output from interrogate_module 2022-03-09 16:23:37 +01:00
rdb
8cdac14db3 collide: First pass at reducing memory overhead of CollisionBox
This is just the low-hanging fruit, there are a lot more gains to be realized.
2022-03-09 16:23:34 +01:00
rdb
21cfb8dba5 readme: Update instructions for building for Android
[skip ci]
2022-03-02 14:17:03 +01:00
rdb
dae147ec0c Merge branch 'release/1.10.x' 2022-03-02 10:51:23 +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
rdb
930e5da438 texture: Fix get_ram_image_as() with 3D and multiview textures
Fixes #1277
2022-03-02 10:42:45 +01:00
rdb
ad187b29f8 makepanda: Force choose correct extension suffix for Windows
Even when cross-compiling for 32-bit using a 64-bit copy of Python, and vice versa
2022-03-02 10:03:48 +01:00
rdb
2334f48e89 makepanda: Always use /BIGOBJ when compiling with Eigen
Anything from pgraph onward needs it due to the size of Eigen, but let's just always pass it so we don't constantly have to chase compiler errors
2022-03-02 09:58:00 +01:00
rdb
46c1b887ea Fix heap alignment with SSE2 on 32-bit Windows by inheriting MemoryBase
Fixes #510
2022-03-02 09:57:44 +01:00
rdb
370b635534 dtoolbase: Fix missing __stdcall when compiling for 32-bit Windows 2022-03-02 09:57:24 +01:00
rdb
3a120c4d68 CMake: Update warning flags to match makepanda (see f60c55f) 2022-03-02 09:45:22 +01:00
Disyer
ac50aa5dde mayaprogs: Switch connection manager variable names to snake case 2022-03-01 23:27:12 +02:00
Disyer
7da3395a8a mayaprogs: Resolve Maya conversion server memory leak by storing managers on the heap 2022-03-01 23:07:20 +02:00
rdb
aaa51df759 makepanda: Remove -undefined dynamic_lookup for OpenEXR on macOS 2022-03-01 16:10:23 +01:00
rdb
c917a9e1a1 distributed: PyDatagramIterator now retains reference to Datagram
Fixes #1262
2022-03-01 16:09:07 +01:00
rdb
f60c55f450 makepanda: Enable additional warning messages
Also error on missing return statement in non-void function, since this is pretty much always an error and can be dangerous if not caught
2022-03-01 16:09:07 +01:00
rdb
a0be50c769 general: Fix assorted compiler warnings 2022-03-01 16:09:07 +01:00
rdb
21377c8de5 Use secure versions of CRT getenv etc. when compiling with MSVC 2022-03-01 16:09:07 +01:00
rdb
dc05889be2 dtoolutil: Don't use $HOME in Filename::get_home_directory() on Windows
This variable isn't used on Windows systems
2022-03-01 16:09:07 +01:00
rdb
5cfd8db95c glxdisplay: Update panda_glxext.h 2022-03-01 16:09:07 +01:00
rdb
794968dcc5 makepanda: Fix error building Maya client programs on macOS 2022-03-01 16:09:07 +01:00
rdb
2f3561a48e makepanda: Update for building against newer OpenEXR on non-Windows 2022-03-01 16:08:59 +01:00
rdb
ac3aa64d33 express: Add docstring to DatagramIterator about Datagram lifetime
Related to #1262

[skip ci]
2022-03-01 15:14:01 +01:00
rdb
70415af210 dtoolutil: Set system malloc tag to mimalloc when enabled 2022-03-01 15:12:38 +01:00
rdb
583c9f1857 pipeline: Fix issues with calling convention on 32-bit Windows 2022-03-01 12:19:13 +01:00
rdb
cfc11ba430 dist: Fix issue when deploy_libs in .whl have inconsistent suffixes 2022-02-25 11:20:55 +01:00
rdb
7ccf38a948 pgraph: Remove obsolete PandaNodeChain class
Obsoleted by 6bc22d1822ab02b464057f76563de7230dd93cec
2022-02-24 14:13:11 +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
4df8c86590 tests: Add unit test for PandaNode prev_transform tracking mechanism 2022-02-24 11:43:44 +01:00