Commit Graph

23890 Commits

Author SHA1 Message Date
Sam Edwards faced9aa49 CMake: Grab all CMAKE_CXX_FLAGS(_<CONFIG>) -Ddefines for Interrogate 2019-08-30 16:53:45 -06:00
Sam Edwards a42f1a49a4 CMake: Interrogate needs -DNDEBUG when -DNDEBUG is passed as a flag
Some buildsystems (Gentoo's Portage, to be specific) are very
roughshod about how they use CMake, and might bypass the
"configuration types" system altogether, passing their own release
flags instead. This change detects that and ensures that Interrogate
picks up the NDEBUG flag when it's specified manually.
2019-08-29 23:09:28 -06:00
Sam Edwards cde25670d6 CMake: Remove some uses of CFG_INTDIR
It's not install() friendly, so we use $<CONFIG> instead in
some cases. Unfortunately, $<CONFIG> isn't friendly with
add_custom_command's OUTPUT options while CMAKE_CFG_INTDIR
explicitly is, so we use a hybrid approach until CMake gets
its act together.
2019-08-28 17:12:01 -06:00
Sam Edwards 08b4793d9a travis: Also set WANT_PYTHON_VERSION on macOS 2019-08-25 23:42:31 -06:00
Sam Edwards e88f28e9c7 travis: Force CMake to use ccache 2019-08-25 21:00:23 -06:00
Sam Edwards 8588ddc3dc CMake: When building on MSVC, add /bigobj to compiler where necessary 2019-08-25 15:54:02 -06:00
Sam Edwards 855d217f35 CMake: Update for upstream changes
- Miles is gone; remove all references
- pystub is gone; remove all references
- dcparser uses Interrogate extensions properly; don't depend on Python
- stringStream* moved to express from downloader
2019-08-24 18:07:22 -06:00
Sam Edwards 19ed9f6b47 Merge branch 'master' into cmake 2019-08-24 18:07:12 -06:00
Sam Edwards 55cfc6c2b9 CMake: Pass _MSC_VER to Interrogate under MSVC 2019-08-24 18:07:07 -06:00
Sam Edwards abc941245e general: Fix missing includes (and one forward declaration) 2019-08-24 18:05:28 -06:00
Sam Edwards 9ec66e3e28 travis: Let's see what happens if we use ccache 2019-08-23 20:35:50 -06:00
Sam Edwards fc54251f61 CMake: Fix PandaModules.py not copying 2019-08-23 20:35:50 -06:00
Sam Edwards 60c1570db8 CMake: Add support for makepanda-style thirdparty directories 2019-08-23 16:09:13 -06:00
Sam Edwards afe7ffb964 CMake: Fix several modules' search behavior
This makes these modules behave better when encountering
the makepanda thirdparty/ directory.
2019-08-23 16:09:13 -06:00
rdb 5e7e64179b cleanup: fix a host of unprotected debug/spam messages 2019-08-23 18:58:57 +02:00
rdb 1ec7c5d20e Delete pystub, it is no longer needed or used for anything. 2019-08-23 18:58:53 +02:00
Sam Edwards 6c3013a29c dcparser: move Python-specific code to extension files
We can now build dcparser without linking to Python and dcparse.exe's dependency on pystub is removed.

Co-authored-by: rdb <git@rdb.name>
2019-08-23 18:58:19 +02:00
Sam Edwards 36df3bdf0b dcparser: Delete dcPython.h
py_panda.h has the same purpose; we also don't want
Python.h brought in from the headers (only from the
.cxx files) so that including the headers won't require
linkage against Python.
2019-08-23 13:15:36 +02:00
rdb 0e4597fb2e cppparser: fix finding types in explicitly specialized template class 2019-08-23 13:15:36 +02:00
rdb 8c40ff39d7 bullet: fix contact added callback behavior
The API seems to imply that the callback is per-world, when it is actually a global setting.  This fixes it to truly behave per-world.  This also fixes a crash on shutdown caused by the callback destructing when the Python interpreter is already shutting down.

Fixes #712
2019-08-23 12:18:47 +02:00
rdb 665d2fc56b Merge branch 'release/1.10.x' into incoming 2019-08-23 10:53:09 +02:00
rdb 806496d191 ffmpeg: proper fallback when compiling without libswscale
Compiling with libswscale isn't really optional if you want to play most video files, but if you know what you are doing and all your videos already have a supported pixel formats, it is now possible.

Fixes #711
2019-08-23 10:51:52 +02:00
Sam Edwards c62d5fbe35 CMake: Fix incorrect comment 2019-08-22 14:58:43 -06:00
Sam Edwards 6cb62d1d18 CMake: When zlib isn't available, run_pzip() should copy at build-time
This prevents copying to configurations that the user isn't going
to build, and also plays nice with multi-configuration generators
where the configuration isn't known until build-time.
2019-08-22 14:58:43 -06:00
Sam Edwards 9ca4f19b90 CMake: Make sure we define flags variables for Distribution
This fixes a CMake error with the MSVC generator, but it's also
generally good to have around.
2019-08-22 14:58:43 -06:00
Sam Edwards 896a8dbca5 CMake: Some more changes to p3pystub
- Don't build it at all on Win32 where it isn't needed
- Don't link it into interrogate_module (oops, missed that)
2019-08-22 14:58:43 -06:00
rdb 88f8071dfc tests: add unit tests for direct.showbase.Loader.Loader class 2019-08-22 10:45:36 +02:00
rdb 2575c01261 Loader: fix passing a tuple to loader.loadModel 2019-08-22 10:44:34 +02:00
rdb f0ba25e11d tests: work around Python 2.7 tempfile case bug on Windows 2019-08-20 14:40:15 +02:00
rdb 7d34526c33 tests: fix OS-specific filename issue on Windows with loader tests 2019-08-20 14:00:15 +02:00
rdb b23561d863 tests: add unit tests for Python loader file types 2019-08-20 13:23:11 +02:00
rdb f63b3a86b9 loader: add LoaderFileTypeRegistry.unregister_type() 2019-08-20 13:23:11 +02:00
rdb c2f49f4c4a loader: a few additional checks for Python loader plug-ins 2019-08-20 13:23:11 +02:00
rdb d5a576f3cb Bump version number on release/1.10.x branch to 1.10.5 2019-08-20 13:23:11 +02:00
rdb 64982f8b14 makepanda: makepackage/makewheel take default version from setup.cfg
dtool/PandaVersion.pp is obsolete and will be removed soon.
2019-08-20 13:23:11 +02:00
rdb 0265ee8ef8 readme: update version number in links to 1.10.4.1
(Though, it doesn't matter much for the thirdparty packages, as the contents are identical to 1.10.4)
2019-08-20 13:13:55 +02:00
Sam Edwards c16092fe8a CMake: Workaround for some export errors when doing a static build
This refuses to export/install the p3assimp/p3ptloader/p3txafile
libraries when building statically, because they depend on libraries
that are never installed, and static linkage would require all of the
dependencies to be available.

A more proper fix would involve installing these base libraries, but
only when doing a static build. I suspect nobody will ask for that,
so I haven't done it.
2019-08-19 18:50:53 -06:00
Sam Edwards b9e50da3ce CMake: p3distort is NOT a component; it's its own pandafx library 2019-08-19 18:50:53 -06:00
rdb 1e6be1b2ee Merge branch 'release/1.10.x' into incoming 2019-08-20 01:26:32 +02:00
rdb 1318fd80d7 tests: add unit test for track-gui-items setting in DirectGUI 2019-08-20 01:08:56 +02:00
rdb 062460cbe0 dgui: store guiItems on ShowBase class dict instead of module 2019-08-20 01:07:39 +02:00
rdb b19abf1480 doc: add release note for 1.10.4.1
[skip ci]
2019-08-19 23:35:35 +02:00
rdb edbdf43f07 makepanda: PANDA_VERSION_STR should contain the full version number 2019-08-19 22:57:51 +02:00
rdb 6364485b49 ffmpeg: fix an unprotected debug print 2019-08-19 21:58:08 +02:00
rdb 2b0a2ea6df makepanda: allow passing in more than 3 digits in version number 2019-08-19 21:57:49 +02:00
rdb d028bebb52 makepanda: change getversion.py to take version from setup.cfg
[skip ci]
2019-08-19 21:37:50 +02:00
rdb e69c412c2b Bump version to 1.10.4.1 2019-08-19 21:30:46 +02:00
rdb a0aa7de291 dgui: fix critical regression introduced by 43a5719 2019-08-19 21:26:35 +02:00
rdb 35efdaebdb mayapath: remove PANDA_INCOMPATIBLE_PYTHON var, no longer used 2019-08-18 22:35:11 +02:00
rdb a40228202b Merge branch 'release/1.10.x' 2019-08-18 22:34:23 +02:00