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.
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.
- 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
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.
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
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
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.
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.