Commit Graph

1025 Commits

Author SHA1 Message Date
rdb 9410418840 pnmimagetypes: Changes to support compilation with OpenEXR 3.0.1 2021-05-11 11:38:40 +02:00
rdb 7be4b7c3bb device: Support evdev gamepads on FreeBSD 2021-04-05 17:14:30 +02:00
rdb 94806801e3 Add p3headlessgl render plug-in on Linux using EGL as fallback for GLX
Fixes #1086
2021-03-23 15:04:20 +01:00
rdb 2531f09024 makepanda: Don't enable X11 on Android 2021-03-21 14:55:46 +01:00
rdb 57f7d04231 makepanda: Don't set HAVE_GLX in dtool_config.h
It's only used for disambiguation in pandagl.cxx, we don't need to expose this, and it should be possible to build pandagl.cxx without GLX
2021-02-24 17:34:56 +01:00
rdb d4830f40f0 makepanda: Fix strftime error using SOURCE_DATE_EPOCH on Windows
Seems to occur when using Python 2.7
2021-02-24 15:51:45 +01:00
rdb f84111a693 makepanda: Don't disable Cg/FMODEx on macOS without arch flags
Fixes #1119
2021-02-24 09:46:53 +01:00
rdb 28615c6a9e interval: Support awaiting CInterval from coroutines
This is a partial implementation of #909 - it is somewhat inefficient (not suspending the task using a future) and does not implement cancellation.  A more complete implementation may follow in 1.11.0.
2021-02-07 12:40:58 +01:00
rdb 54638bfc10 dtoolutil: Allow overriding PandaSystem::get_build_date()
This is useful to create bit-for-bit reproducible builds.  In the buildbots, we set it to the timestamp of the latest commit.
2021-01-18 16:41:22 +01:00
rdb 8924b77da4 egldisplay: Backport changes for creating headless EGL contexts
Backport of fbc4947455 and 9f1289b492

See #557
2021-01-17 16:46:57 +01:00
rdb 6690b2d86e makepanda: Fix build error when flex is absent 2021-01-02 19:29:56 +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 c77593f3f0 egg: add pickle support to most EggData classes 2021-01-01 17:06:23 +01:00
rdb 8852c835fc collide: Support pickling for CollisionTraverser, HandlerEvent+Queue
Fixes #1090
2020-12-31 16:57:34 +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 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 9544911127 makepanda: fix error building with --universal flag
[skip ci]
2020-12-18 12:54:35 +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 951c182c0e makepanda: Preparatory changes for Big Sur / arm64 builds 2020-11-30 19:46:20 +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 5443f62068 makepanda: Add missing YY_NO_UNISTD_H to built Flex sources
Closes #1028
2020-10-02 12:15:26 +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 cada6c2c7b Revert "makepanda: Add pyenv support"
This reverts commit eef55f19d8.
2020-06-14 11:07:24 +02:00
Mitchell Stokes eef55f19d8 makepanda: Add pyenv support
Only tested on Linux with Clang

Closes #943
2020-06-02 20:42:29 +02:00
rdb 54ff2a8dda makepanda: support --cggl-incdir and --cggl-libdir options
It's quite hacky right now, but that doesn't matter as we're switching to CMake anyway
2020-02-29 16:55:14 +01:00
rdb 8ff2064fe5 makepanda: auto-detect manylinux2010 and manylinux2014 platforms 2020-02-22 12:10:55 +01:00
rdb 59608c9079 makepanda: force flex step for dcParser to occur after bison step
This fixes an erratic build failure reported by the Travis GCC builder.
2020-02-10 13:48:38 +01:00
rdb 6f17a9e36a makepanda: disable plug-ins in Config.prc that weren't compiled
This also disables the plug-ins if we are building them statically.
2020-01-22 09:16:02 +01:00
rdb e5b7760b85 makepanda: do not pass -Wl,--exclude-libs on macOS for OpenSSL
Part two of fix for build regression introduced in e78ce78acf (see #851)
2020-01-21 15:29:12 +01:00
rdb 6b5c473b8e makepanda: do not pass -Wl,--exclude-libs on macOS
Fixes build regression introduced in e78ce78acf (see #851)
2020-01-21 15:21:16 +01:00
rdb e78ce78acf makepanda: don't export symbols of linked static libraries
This results in size savings for thirdparty libraries that are only used once, and a size increase for libraries used more than once (eg. OpenSSL).  More importantly, it prevents conflicts with other versions of the libraries loaded by other Python modules, such as the version of OpenSSL that the hmac module uses.

We need to be careful to only apply this for packages that are either used once, used in a plug-in module, or if we don't need to pass thirdparty library structures across Panda library boundaries.  For example, I haven't done this for Bullet, since the Bullet symbols need to be available through libpandabullet.so due to the fact that pandabullet contains calls to the Bullet libraries in the inline methods.

Fixes #851
2020-01-21 14:35:17 +01:00
rdb 8859ad8c1b makepanda: remove explicit OpenSSL link where it is unneeded
These were probably added before makepanda gained the ability to automatically add dependencies of static libraries when linking statically.

They don't really do any harm--the linker will probably optimize these out automatically--but it's cleaner not to add unused dependencies.
2020-01-21 14:07:36 +01:00
rdb ca89b7420a Update Python 2.7 EOL warnings to indicate that EOL date is reached
[skip ci]
2020-01-06 00:36:49 +01:00
rdb 2d11f36c9e makepanda: add docstring for panda3d.dtoolconfig module 2019-12-29 15:06:24 +01:00
rdb 530955b53e makepanda: add explicit link to libOpenMayaUI.dylib on macOS
This is needed when compiling without -undefined dynamic_lookup
2019-12-29 14:19:58 +01:00
rdb 4c3b6fcc03 makepanda: libIMFbase.dylib is no longer shipped with Maya 2020 on macOS 2019-12-28 21:27:51 -05:00
rdb 7aab057245 makepanda: change strange rpath argument for maya2egg on macOS
It doesn't seem like this setting is actually needed (because mayapath does the necessary set-up), but while it's set, we might as well set it to something more sensible.
2019-12-28 21:25:41 -05:00
rdb 8c82cf5800 makepanda: --universal should not enable i386 when targeting 10.15+
[skip ci]
2019-12-29 00:27:59 +01:00
rdb 0456fdcd92 makepanda: update CommandLineTools paths for newer XCode versions 2019-12-18 08:42:43 -05:00
rdb 4c62260291 makepanda: add -framework AudioUnit for OpenAL Soft (#678) 2019-12-18 08:41:58 -05:00
kamgha 6e36abf5ba makepanda: build against OpenEXR 2.4 (MSVC)
Fixes #799
Closes #800
2019-12-08 10:29:44 +01:00
rdb 1cfd297433 makepanda: specify freetype library after harfbuzz as well
This fixes static linking of harfbuzz and freetype, which have a circular dependency on each other.
2019-11-17 20:37:33 +01:00
rdb edbdf43f07 makepanda: PANDA_VERSION_STR should contain the full version number 2019-08-19 22:57:51 +02:00
rdb 2b0a2ea6df makepanda: allow passing in more than 3 digits in version number 2019-08-19 21:57:49 +02:00
rdb 262f8b7643 makepanda: look in correct location for VC 2017 dlls 2019-08-13 17:48:47 +02:00
rdb df8ccdb7ab Add support for Python 3.8 2019-08-13 17:48:32 +02:00
rdb cee000d1da makepanda: pick up AudioToolbox and CoreAudio frameworks on macOS
These seem to be needed to compile against OpenAL Soft.

Fixes #678
Fixes #679
2019-07-10 10:05:10 +02:00
Sam Edwards be247e1be9 makepanda: Remove config entry for defunct HAVE_SOFTIMAGE 2019-04-15 16:46:14 -06:00
rdb fa43591f7a makepanda: show warning when attempting to build with Python 2.7
See #602
2019-04-02 22:41:09 +02:00