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
Our support was stuck on an ancient version that has not been available for a while. If we were to continue support it should be done around the new PhysX 5.0 API, not 2.8.4.
This back-end has been deprecated by Apple for a while, and has not been used in Panda. As we will no longer be supporting 32-bit macs going forward, and the Carbon windowing API is not available for 64-bit mac, there's no point in keeping it.
This allows exporting (a stub function that forwards to) a
function that returns a value - it's particularly useful in
the graphics plugins for the "get_pipe_type_foo()" functions.
This also frees up CMake from needing to use any of the source
files in the metalibs/*/ directories.
By "flatten" I mean that component libraries aren't referenced by
genex anymore; instead, their include directories and libraries
are copied out of their interfaces and into the interface of
the metalib.
This prepares for exporting our targets, by making sure that the
component libraries don't have to be installed for CMake to be
able to export metalibs.
Instead of wrapping the whole subdirectory's CMakeLists in
a gigantic if block, we use if(NOT HAVE_FOO) + return()
This is tidier since it keeps the indentation generally consistent
across all CMakeLists files.
This changes the target_link_libraries() declarations so they only
go directly to a component library if it's in the same metalib.
If it's outside of the metalib, the correct thing to do is link against
the metalib. CMake takes care of the transitive linking for us, so
there isn't actually any big change here.
This is designed to sanity-check the buildsystem, ensuring that the
expected BUILDING_ macros are defined at the expected time. It
also helps catch cases where the wrong BUILDING_/EXPCL_ macros
are used.