Commit Graph

1794 Commits

Author SHA1 Message Date
rdb 60d7d9ec1e makepanda: Re-link executables with --static if dependency changed 2024-11-04 11:57:02 +01:00
rdb f4d9a67888 makepanda: Add missing static libs for Python 3.12 emscripten build 2024-11-03 23:57:04 +01:00
rdb 55fa0e9912 Merge branch 'release/1.10.x' 2024-10-31 13:13:00 +01:00
rdb a311ad876f test_wheel: Add --ignore option to ignore tests 2024-10-31 13:07:02 +01:00
rdb 5b6318e77f makepanda: Don't set macOS deployment target to 10.13 except when linking with Python
This prevents building for multiple Python versions in the same build

[skip ci]
2024-10-30 21:00:12 +01:00
rdb c2de5c306f makepanda: Don't link p3dcparse with pystub
pystub doesn't really define enough symbols to be useful with newer Python versions, and it seems that there are compile errors with python 3.13t on manylinux2014 due to conflicts with the Python library itself
2024-10-30 20:19:05 +01:00
rdb e2d9d3ef7c makepanda: Fix python DLL not being copied into wheel on 3.13t 2024-10-30 20:18:30 +01:00
rdb cfe3726aeb makepanda: Python 3.13 requires macOS 10.13 2024-10-30 18:40:52 +01:00
rdb 957c4b9bce Merge branch 'release/1.10.x' into master 2024-10-30 18:40:32 +01:00
rdb 6d54aee0c7 Remove runtime dependency on interrogatedb 2024-10-30 17:46:26 +01:00
rdb 5b80f19d01 Changes in preparation for Python 3.14 2024-10-30 14:13:44 +01:00
rdb 7560a1edd1 Merge branch 'release/1.10.x' 2024-10-30 13:42:21 +01:00
rdb df5f8d77da makepanda: Build fixes for Python 3.13t on Windows 2024-10-30 13:17:33 +01:00
rdb e238588118 makepanda: Fix wrong flag for excluding pythonXX_d.lib 2024-10-30 13:17:11 +01:00
rdb a8d0f61e56 makepanda: Run correct interpreter when running --tests with 3.13t 2024-10-29 23:12:50 +01:00
rdb b6e0088633 makepanda: Specify --upgrade when installing interrogate 2024-10-29 23:11:06 +01:00
rdb dbeab0b97b makepanda: Backport Python 3.13t build fixes 2024-10-29 19:20:27 +01:00
rdb 7b02aa7026 makewheel: Fix NameError on Windows build
[skip ci]
2024-10-29 17:32:27 +01:00
rdb e0a8f7d1b8 makepanda: Fix Windows wheel naming for 3.13t, it has no sys.abiflags
[skip ci]
2024-10-29 17:30:04 +01:00
rdb e9e9fb3584 makepanda: Fixes for wheel naming in 3.13t build
[skip ci]
2024-10-29 17:06:54 +01:00
rdb 1f6ed882ab makepanda: Use PythonT.framework when using free-threaded build 2024-10-29 16:37:28 +01:00
rdb 6885edc811 build: Update interrogate to 0.3.0 to support 3.13t build 2024-10-29 16:10:39 +01:00
rdb f50fef3744 Switch over to C++14, drop support for MSVC 2015
The main reason is that the current development version of Eigen requires C++14 to be enabled, so otherwise we can't compile with the latest Eigen.

If really needed, we can keep support for MSVC 2015 (please make your voice heard) but that would lock us out of a few features of C++14.
2024-10-19 13:16:36 +02:00
gabe ad97e88a54
Enable OpenAL-Soft extensions for non-framework builds and add config for disabling HRTF (#1620) 2024-10-17 21:34:32 +02:00
rdb ca25efc5f6 makepanda: Remove --memory-init-file flag on emscripten
[skip ci]
2024-10-12 09:57:18 +02:00
rdb beff684af3 Further thread safety changes for Python 3.13 free threading
See #1683
2024-09-19 20:43:06 +02:00
rdb 5106fc879f Changes for compatibility with Python 3.13
Includes some preliminary work to make free-threading safe, see also #1683
2024-09-19 16:01:10 +02:00
John Cote f2b421e005 Merge remote-tracking branch 'upstream/master'
Conflicts:
    makepanda/makepanda.py
2024-09-06 22:40:10 -04:00
rdb d3bb769a36 makepanda: Support overriding build of interrogate with env vars
[skip ci]
2024-08-13 12:28:02 +02:00
rdb 7f88f6de24 makepanda: Silently ignore --no-maya flags
[skip ci]
2024-08-13 11:24:58 +02:00
rdb ad4ecbcc16 makepanda: Remove Autodesk Maya plug-ins
These now live at https://github.com/panda3d/maya-egg

Fixes #1584
2024-08-13 11:06:31 +02:00
rdb fff9ea594c Split off 3ds Max exporter to a separate repository
It now lives at https://github.com/panda3d/max-egg-plugin

See #1584
2024-08-13 10:59:33 +02:00
rdb 712300c9f1 Fix prebuilt bison cxx files includes to work with CMake build
Change makepanda to generate without the .yxx extension so that the include name is generated properly
2024-08-13 00:01:35 +02:00
rdb ce4b79750c makepanda: Stop building interrogate
Instead, install it using pip.  If you don't like this, submit a PR or use CMake
2024-08-10 16:55:00 +02:00
rdb e776c819b8 makewheel: Exclude interrogate from panda3d wheel
This will be available separately as panda3d-interrogate wheel, built from https://github.com/panda3d/interrogate

Fixes #1074

[skip ci]
2024-08-10 13:00:53 +02:00
rdb ad57762e9f Merge branch 'release/1.10.x' 2024-08-07 22:34:08 +02:00
rdb b6ec48b27c Fix invalid metadata version 2.0 (should be 2.1) 2024-05-28 22:28:37 +02:00
Open Toontown 6d182ccb5e Merge remote-tracking branch 'upstream/master' 2024-03-30 19:09:37 -04:00
rdb 1213d95560 Merge branch 'release/1.10.x' 2024-03-28 01:17:52 +01:00
rdb d44f9ae3dc makepanda: Use new dist hooks location introduced by 1f41edd
Fixes #1624
2024-03-27 12:01:53 +01:00
rdb 92db1840f9 net: Prepare to split these classes out into panda3d.net module
See #1466 - these classes are still part of panda3d.core as of 1.11, but they should really be imported from panda3d.net (they can be imported from either place in 1.11).  A future release will remove them from panda3d.core entirely.
2024-03-02 13:41:23 +01:00
rdb 06b9e3af8b makepanda: Remove net.py(d) file if present
In anticipation of #1466

[skip ci]
2024-03-01 17:50:48 +01:00
rdb 66367ba5e3 makepackage: Unbreak RPM file generation with new pstats.desktop
Fixes #1618
2024-03-01 15:49:20 +01:00
rdb 84ed141b2a Squash merge webgl-port branch into master
Adds support for emscripten as a build target / platform, and adds a WebGL renderer back-end
2024-01-25 15:37:38 +01:00
rdb ecc1e30ef6 Merge branch 'release/1.10.x' 2024-01-23 16:56:38 +01:00
rdb 16afdd2bf9 Prepare installer.nsi for Python 3.13 2024-01-23 14:24:37 +01:00
rdb 9517ffb320 Merge branch 'release/1.10.x' 2024-01-08 21:10:17 +01:00
rdb 876512932a makepanda: Add _d suffix to .pyd files in debug mode on Windows
Fixes #1566
2024-01-08 14:13:51 +01:00
rdb 78f8e1eaa9 test_wheel: Update set of packages to install with pip
setuptools is required because test_imports imports direct.dist.commands

[skip ci]
2023-10-16 00:26:40 +02:00
rdb 277460061e Merge branch 'release/1.10.x' 2023-10-15 23:02:47 +02:00
rdb a0ea85d39e test_wheel: Put python DLL on system PATH for FreezeTool unit test 2023-10-15 14:28:38 +02:00
Open Toontown 00e452ede6 Merge remote-tracking branch 'upstream/master' 2023-10-14 18:06:35 -04:00
rdb 6f89b8e720 makepanda: Remove stray distutils import 2023-10-13 23:32:48 +02:00
rdb e01cb590de Merge branch 'release/1.10.x' 2023-10-13 23:24:48 +02:00
rdb 2a5228b05f Fix compatibility with Python 3.12 by removing use of imp module
Some modules (such as VFSImporter, and various modules in direct.p3d that depend on it) are still unavailable.
2023-10-13 13:21:34 +02:00
Mitchell Stokes 521cad206d makepanda: Stop using deprecated distutils (#1549)
Just duplicating locations.py from direct. It's a bit ugly, but
makepanda is getting phased out anyways.

Co-authored-by: rdb <git@rdb.name>
2023-10-13 10:13:28 +02:00
rdb 93a75d8fe2 Merge branch 'release/1.10.x' 2023-10-09 17:43:02 +02:00
rdb d5263b597b makepanda: Strip version suffixes when parsing setup.cfg metadata
Fixes #1539
2023-10-09 17:02:57 +02:00
rdb dcc96a60b1 makepanda: Make version parsing in CreatePandaVersionFiles more robust 2023-10-09 16:50:59 +02:00
Open Toontown c7ebf71634 Merge remote-tracking branch 'upstream/master' 2023-10-09 00:06:40 -04:00
rdb 71154492b9 pstats: Add macOS port
Closes #1531
2023-08-30 15:08:46 +02:00
rdb aa13953f2b makepanda: Fix error in plistlib.load invocation 2023-08-30 15:06:17 +02:00
rdb b22b970d10 makepanda: Require macOS SDK 10.12 or higher
This does not remove support for older macOS versions, they can still be targeted by newer SDKs (10.9 can still be targeted by the macOS 12 SDK)

I would like to require macOS 11 SDK, but we still need 10.13 for FMOD
2023-08-29 22:51:17 +02:00
rdb e6f4128c0b makepanda: Add macOS SDK versions 14.0, 13.3 2023-08-29 22:51:17 +02:00
rdb f80cd08993 Remove support for EOL Python versions 3.6 and 3.7 2023-08-04 14:20:59 +02:00
rdb f0a4e61fd9 Revert "general: Add headers explaining the renamed config_*.h"
This reverts commit 47f7d3f297.

These header files have been deprecated for years and can be safely removed now.
2023-07-26 20:02:49 +02:00
rdb c3e9f1738e Merge branch 'release/1.10.x' 2023-06-13 13:45:51 +02:00
rdb d4d4aefbce makepackage: Force creating .dmg as HFS+ for 10.9 compatibility
Fixes #1502

[skip ci]
2023-06-08 13:47:33 +02:00
Open Toontown 70d467c150 Merge remote-tracking branch 'upstream/master' 2023-03-26 16:05:30 -04:00
rdb a5fe1fa4bd tinydisplay: Add Cocoa-based backend
Adds support for tinydisplay rendering on macOS

Fixes #1285
2023-03-22 13:15:06 +01:00
rdb 545ede9d94 cocoa: Split out GL-specific code into new cocoagldisplay module
This makes it possible to create subclasses for tinydisplay and vulkandisplay without having to duplicate code
2023-03-21 23:16:36 +01:00
rdb f4dc4740a6 makepanda: Look for the macOS 13.1 SDK
[skip ci]
2023-01-19 15:43:06 +01:00
Open Toontown b350d18e9d Merge remote-tracking branch 'upstream/master' 2023-01-18 21:10:42 -05:00
rdb 3954d43292 makepanda: Create __panda section in deploy-stub on macOS 2023-01-13 13:39:10 +01:00
Open Toontown a4cc4546c9 Merge remote-tracking branch 'upstream/master' 2022-12-16 18:06:55 -05:00
rdb c82f95ad6b Merge branch 'release/1.10.x' 2022-12-06 20:02:35 +01:00
rdb 27d3aed2d3 makepanda: Fix detection issues with newer macOS/XCode versions 2022-12-06 17:30:26 +01:00
rdb 0a8e4e31f8 makepanda: Add handling for manylinux_2_28
Note that this version drops 32-bit intel support
2022-12-06 14:43:06 +01:00
rdb 40f4656165 installpanda: Enable start-up notifications for pview
See cf4fa526c94fc507db386a0da566f2a69aef6d41 for more information
2022-12-01 15:52:16 +01:00
rdb 098e303669 makepackage: Don't open a terminal when starting pview from .desktop 2022-12-01 15:52:16 +01:00
rdb b6dd2b8ec1 makepanda: Add file associations and shortcuts for pstats 2022-12-01 15:08:41 +01:00
rdb 7e8dfc58ce makepackage: Remove mention of .p3d files from installer.nsi 2022-12-01 13:46:02 +01:00
rdb 0421ee31b3 Merge branch 'release/1.10.x' 2022-12-01 12:59:27 +01:00
rdb f9ebca2bec makepanda: Fixes to pview.desktop
It accepts multiple files (not URLs), and it doesn't actually handle startup notification properly, so don't keep showing that spinner
2022-11-30 23:41:47 +01:00
rdb d5bfffb7fe makepanda: Remove old panda3d.desktop file
This belonged to the runtime, but was missed in #734
2022-11-30 13:53:36 +01:00
rdb a5610f217e Merge branch 'release/1.10.x' into incoming 2022-11-29 20:58:51 +01:00
rdb e5d36e2d01 makepackage: Add instructions for installing Python 3.12 bindings 2022-11-29 20:13:49 +01:00
rdb 50cfdebd9c pstats: Integrate Python profiler with PStats
Enabled with `pstats-python-profiler 1`, requires recent version of PStats server.

Currently, it is limited to the main thread only.  Support for other threads may be added at a later date.
2022-11-29 16:00:09 +01:00
rdb f54747c213 makepanda: Make error about Android architecture suggest solution 2022-11-29 14:23:32 +01:00
rdb 9bd66baa1c Merge branch 'release/1.10.x' 2022-11-21 19:02:50 +01:00
rdb 03d411c937 dist: Workaround to disable autodiscovery in setuptools>=61.0.0
See #1394 - creates a new finalize_distribution_options entry point that makes sure that either `py_modules` or `packages` is present, otherwise setuptools  will activate its new auto-discovery system, even for custom commands that don't need setuptools' discovery system.

However, this is not a great solution, because it applies when running all setuptools commands, not just build_apps.
2022-11-19 13:14:18 +01:00
rdb e961ea99ac Merge branch 'release/1.10.x' 2022-11-13 12:10:38 +01:00
rdb 84a69e1689 makepanda: Don't re-export harfbuzz symbols from libpanda.so
Shot in the dark at fixing #1391 (but this change is a good idea anyway)
2022-11-13 11:25:45 +01:00
rdb a1105f0f96 dxml: Remove TinyXML bindings
This isn't used anywhere in the Panda source anymore, and is considered out-of-scope for Panda.  Python users can use the XML parsing library that's shipped with the Python source (or any other one on PyPI), and C++ users can just pull TinyXML into their projects directly.

If there really is a strong call to bring this back, I'd rather do it as an external package.

Closes #1379
2022-11-03 13:45:22 +01:00
rdb c50a5b25b8 ptloader: Disable obj2egg from ptloader
It doesn't support materials and textures, so it's not really useful to have this registered with the loader by default, especially since we have much better support for .obj through Assimp

Fixes #738
2022-11-03 09:53:13 +01:00
rdb bf2bf37e67 makepanda: Always populate OSX_ARCHS when building for macOS 2022-10-31 23:12:44 +01:00
rdb 316b0009ae Merge branch 'release/1.10.x' 2022-10-31 23:10:39 +01:00
rdb 587f9f7bcd makepanda: Fix issues when building on arm64 without `--arch` flag
Logic in various places seems to assume `OSX_ARCHS` contains `arm64` in this case
2022-10-31 19:25:47 +01:00
rdb 61ff260ee3 Merge branch 'release/1.10.x' 2022-10-20 20:59:45 +02:00
rdb 77e3033c42 makepanda: Fix ExecutionEnvironment.args being empty on Linux 2022-10-19 15:45:40 +02:00