Commit Graph

1511 Commits

Author SHA1 Message Date
rdb e8f8604c08 makepanda: Remove hack preventing models from being built in parallel 2020-12-29 18:47:39 +01:00
rdb 1db3bb4ee6 dmodels: Delete dmodels tree, merge into models folder instead
Also eliminates need for flt2egg at build time

Fixes #1075
2020-12-29 18:40:49 +01:00
Daniel 74a4648965 mayaprogs: Completely refactor the maya2egg server
The maya2egg_server utility is no longer a separate utility. To run the maya2egg_server (now Maya conversion server), use `maya2egg -server` or `egg2maya -server`.

Two new utilities have been added: `maya2egg_client` and `egg2maya_client`. Both of them are Maya version independent, and do not rely on any Maya libraries. However, they're only built with SDKs that already come with the Maya binaries, as the server makes its own assumptions about the current working directory (the client and the server are expected to be on the same machine.)

A new feature has been added to ProgramBase: an `exit_on_complete` flag, which allows you to parse the command line without exiting the program upon a failure or a help command.

In addition to this, a getopt bug has been fixed in ProgramBase: It is now possible to clear the state of the Panda implementation of getopt, making it possible once again to parse command line arguments twice in a row.

Closes #1025
2020-12-29 16:16:36 +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 4a62cc13be makewheel: Set --force-rpath when calling patchelf
This is necessary to avoid the creation of a DT_RUNPATH instead of DT_RPATH.  DT_RUNPATH does not have the desired behaviour.
2020-12-24 13:22:00 +01:00
rdb 5c98c6fb71 makepanda: accept arm64 as alias for aarch64 when building for Android 2020-12-24 13:21:35 +01:00
rdb 131ae98bfd Merge branch 'release/1.10.x' 2020-12-22 16:45:24 +01:00
rdb 8f9ca34eec makepackage: Don't write Sample Programs to start menu in Win 8/10
The start menu in newer versions of Windows doesn't show any hierarchy, making this utterly unreadable and useless.
2020-12-22 16:21:55 +01:00
rdb 78e23c018c makepackage: Update links to manual in Windows installer for Sphinx 2020-12-22 16:10:08 +01:00
rdb 401d7d0f92 makepackage: Fix error in installer.nsi 2020-12-22 16:09:51 +01:00
rdb 880c59eb19 makepackage: Don't install Python 3.9/3.10 buildings on Vista/Win7
These versions of Python require Windows 8.1.
2020-12-22 12:41:28 +01:00
rdb 8f43048c4f makepackage: Support installing Python 3.10 bindings in Windows installer 2020-12-22 12:37:06 +01:00
rdb f4fa444013 Merge branch 'release/1.10.x' 2020-12-22 00:37:50 +01:00
rdb eea0abe488 makepackage: Only copy Frameworks dir if present and not empty
This directory may now be vestigial as of the previous commit.

[skip ci]
2020-12-21 22:16:36 +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 fa04d77b57 makepanda: Replace use of deleted GetThirdpartyLibDir function
This caused a build error due to a faulty auto-merge.
2020-12-20 01:11:46 +01:00
rdb dee8df9427 Merge branch 'release/1.10.x' 2020-12-20 01:02:08 +01:00
rdb c4376b4f41 makepanda: Disable Maya builds for ARM64 on macOS 2020-12-20 00:32:20 +01:00
rdb 2d65738a18 makepanda: Respect lib-10.6 dir when copying dylibs/running install_name_tool
In the 1.10.8 thirdparty packages, OpenCV is split into a lib folder and a lib-10.6 folder, so we should use the proper dylibs to still be able to target 10.6
2020-12-19 14:10:51 +01:00
rdb 1a5fd04499 pzip: use Python zlib module to perform pzip step
This is more useful when cross-compiling, not requiring a functional pzip binary on the host.
2020-12-19 02:00:59 +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 9544911127 makepanda: fix error building with --universal flag
[skip ci]
2020-12-18 12:54:35 +01:00
rdb ce5379a0ad makepanda: Bring back --universal flag for Universal 2 2020-12-18 12:29:04 +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 10ef9b3456 makepanda: recognize --osxtarget 11, --universal should add arm64 2020-12-15 12:32:40 +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
rdb c9aedc2b44 Merge branch 'release/1.10.x' 2020-11-28 22:26:04 +01:00
rdb aace94a521 makepanda: Fix version checks for macOS 11.0 Big Sur
Fixes #1056
2020-11-25 01:22:26 +01:00
Daniel c5017acb1d makepanda: Add fftw3 pkg-config name 2020-11-24 20:35:05 +01:00
Derzsi Dániel 862d06b7a8 workflow: Add Python 3.9 to GitHub CI workflow
Closes #1054
2020-11-23 10:58:23 +01:00
Daniel ac6a1a7874 collide: Expose CollisionPolygon's setup_points and verify_points to Python
Closes #1035
2020-11-22 22:01:07 +01:00
rdb 8486d286b7 Merge branch 'release/1.10.x' 2020-11-22 15:19:51 +01:00
rdb 5fe83f4286 makepanda: Don't fail building installer if models dir is empty 2020-11-21 14:19:22 +01:00
kamgha 71f4802630 makepanda: MSVC switch /Ox to /O2 for opt4
/O2 is more "aggressive" for speed optimization and recommended for release builds, /Ox can be useful for debugging.

Also remove flags implied by /O2

Closes #1016
2020-11-02 11:02:49 +01:00
rdb c788912070 Merge branch 'release/1.10.x' 2020-10-02 12:20:58 +02:00
Daniel 5443f62068 makepanda: Add missing YY_NO_UNISTD_H to built Flex sources
Closes #1028
2020-10-02 12:15:26 +02:00
rdb e879817ed5 makepanda: Remove support for Python 3.5 2020-10-02 12:05:59 +02:00
rdb 54b93116e8 Merge branch 'release/1.10.x' 2020-09-16 10:59:59 +02:00
rdb 7f11dc19cd makepanda: fix ABI flags not being stripped from PYTHONVERSION 2020-09-14 19:31:07 +02:00
rdb 7711757d3d makewheel: add Python DLL before adding panda3d modules
This should ensure that dependencies of Python (such as VCRUNTIME140.DLL) make it into the deploy_libs folder, rather than the panda3d folder.
2020-09-14 11:56:25 +02:00
rdb 921cbc6bae Merge commit 'e0d34131822a8852ff72dc9c5597f4dc6900719a' 2020-09-13 16:17:06 +02:00
kamgha 30d8c90f77 makepanda: MSVC fix generating non-SSE2 code for x86
Closes #1018
Fixes #1017
2020-09-13 15:17:02 +02:00
rdb 66ac3be604 Merge branch 'release/1.10.x' into master 2020-09-12 23:23:58 +02:00
rdb 54ffc534fb makepanda: Fix various issues building with Python 3.10 2020-09-12 22:49:46 +02:00
Mitchell Stokes d547225a55 Move speedtree code to contrib
SpeedTree support in Panda is unmaintained, so move it to contrib to better
reflect it's current status.

Closes #990
2020-09-01 08:57:57 +02:00
rdb f4cc2d7441 makepanda: Remove old makepanda.vcproj file
It is a maintenance burden to update, and makepanda can now produce VS projects, so this is no longer needed.
2020-08-17 10:31:34 +02:00