Sam Edwards
7f8d7366dc
CMake: Update for upstream Interrogate changes
...
- "igateruntime" is no longer a thing
- interrogate_module embeds a preamble; we have to provide it
- WindowProperties now has an extension
2018-11-12 19:16:28 -07:00
Sam Edwards
1ae736f881
CMake: Detect and build support for Assimp
2018-11-12 15:49:08 -07:00
Sam Edwards
6b26889e7e
Merge branch 'master' into cmake
2018-11-12 15:41:42 -07:00
rdb
074c5187b0
Adopt new WindowProperties(size=(x, y), ...) short-hand
...
This is intended as replacement for WindowProperties.size(x, y), which is deprecated since it conflicts with the `size` property. See #444 .
2018-11-12 17:53:53 +01:00
rdb
598664ab80
interrogate: disambiguate case where static method shadows a property
...
While it becomes possible to do this now, it should not become standard practice, and we should deprecate cases where we already do it by renaming either the static method or the property.
Fixes #444
2018-11-12 16:31:54 +01:00
Sam Edwards
a9dfd8352e
general: Distinguish local/system includes
...
This changes includes so that local includes are consistently
#include "localFile.h"
while system and third-party includes are consistently
#include <systemFile.h>
This commit mostly converts the former to the latter; the two
exceptions are in android_main.cxx and fmodAudioSound.h, where
the reverse was necessary.
2018-11-10 18:00:10 -07:00
Sam Edwards
c3f9fdf778
CMake: Organize Package.cmake a bit better
2018-11-09 17:46:03 -07:00
rdb
0581e414a4
parser-inc: remove patchlevel.h include from Python.h
2018-11-09 11:40:11 +01:00
rdb
5ba09ec5a0
interrogate: fix compile error when building with LINK_ALL_STATIC
...
Fixes #442
2018-11-09 11:38:41 +01:00
Sam Edwards
1a80b69fb1
CMake: Clean out a few old TODOs and comments
2018-11-09 01:57:40 -07:00
Sam Edwards
2b1554a44c
CMake: Rename "config_package" function to "package_status"
...
The latter name is more consistent with what it does:
indicates the status/purpose/options of the package to
the user.
2018-11-08 21:15:00 -07:00
Sam Edwards
d43767c617
CMake: Find OpenEXR, support it in pnmimagetypes
2018-11-07 19:56:01 -07:00
rdb
b8ed9b1275
Remove pystub dependency from interrogate and friends
2018-11-06 21:49:17 +01:00
rdb
6e8cb98861
dtoolbase: fix compile errors with --no-python
2018-11-06 20:32:37 +01:00
rdb
49b72fb198
Move Python support code from libp3interrogatedb to generated module
...
This prevents libp3interrogatedb from having a dependency on the Python library.
See #387
2018-11-06 19:24:37 +01:00
rdb
e6f870ece6
Remove Python type tables from interrogatedb
2018-11-05 22:14:25 +01:00
rdb
b13c4fb8d1
pystub: add a few more calls
2018-11-05 22:14:20 +01:00
Sam Edwards
e604d71fbc
CMake: Don't build p3dconfig anymore
...
dconfig.cxx was recently deleted.
p3dconfig is now just an interface library, since it still
contains a header which we'd like on the search path of
libraries that use it.
2018-11-03 23:46:34 -06:00
Sam Edwards
a6877a6def
Merge branch 'master' into cmake
2018-11-03 22:55:13 -06:00
Sam Edwards
0b91b3eeb3
vrpn: Add VRPN headers to parser-inc, remove CPPPARSER workarounds
2018-11-03 22:51:32 -06:00
Sam Edwards
9222bc6d31
CMake: Detect OpenCV/ARToolKit, build p3vision
...
For now, p3vision is only built if either OpenCV or
ARToolKit is available. It does contain some generic
webcam access code, so it might be worth building it
when that's available.
2018-11-03 22:51:14 -06:00
Sam Edwards
15a78c55bc
CMake: Detect and use HarfBuzz when available
2018-11-02 23:37:26 -06:00
rdb
5ac3cf3fc6
Eliminate C++ DConfig; replace it with a Python compatibility shim
2018-11-02 23:27:07 +01:00
Sam Edwards
62f7aabe91
Merge branch 'master' into cmake
2018-11-01 22:33:04 -06:00
Sam Edwards
5b973ed837
CMake: Add DirectX 9 support
2018-11-01 22:33:01 -06:00
Sam Edwards
7c42b75ac8
CMake: Update FindCg to discover cgD3D9
...
This also means renaming "CGDX9" to "CGD3D9" for consistency
with what Nvidia calls it.
2018-11-01 16:31:57 -06:00
rdb
ad3b145951
interrogate: generated property getter should copy in some cases
...
This is to fix eg. public ButtonHandle members from being returned as const reference, which means they won't outlive the struct they are accessed on, a recipe for obscure crashes.
The is_trivial() criterium for this to apply is admittedly really arbitrary; I haven't really figured out what the right criterium should be, but it's better than hardcoding ButtonHandle.
2018-10-29 16:08:29 -06:00
rdb
2ed4cd7ce6
cppparser: fix CPPStructType::is_trivial() for eg. ButtonHandle
2018-10-29 16:08:29 -06:00
Sam Edwards
58c065d970
Merge branch 'master' into cmake
2018-10-28 05:11:14 -06:00
Sam Edwards
11a75eab99
CMake: Build OpenGL ES (1&2) display modules
...
Also reorganizes Package.cmake a little, getting more of the
package discovery logic under the PackageConfig.cmake system.
2018-10-22 01:58:24 -06:00
Sam Edwards
a585dcf9ad
CMake: Streamline THREADS configuration
...
In particular this uses Threads::Threads (when available)
to let CMake figure out how to link against pthread/etc.
2018-10-19 17:39:36 -06:00
Sam Edwards
8dd46eb736
CMake: Redo ODE find module
...
This defines an ODE::ODE target; it also automatically selects
the correct `dIDESINGLE`/`dIDEDOUBLE` compile-time definition.
2018-10-18 19:27:47 -06:00
loblao
e67d2a16c1
Dtool_PyModuleInitHelper: Fix segfault
2018-10-18 12:14:20 -03:00
Younguk Kim
d6efceb1ed
dtoolbase: fix NOMINMAX macro redefinition warning
2018-10-17 20:47:20 +09:00
rdb
90cc8fe385
Fix building with SIMPLE_THREADS=1
2018-10-16 22:15:36 +02:00
rdb
82e2c39172
dtoolutil: fix tautological comparison compile warning
2018-10-16 16:32:57 +02:00
Sam Edwards
c6dee72b06
CMake: Make sure Xkb+Xutil are available for X11
...
This fixes a compile error on some macOS systems.
2018-10-15 16:18:26 -06:00
rdb
51f5124048
dtoolutil: consistently use char32_t for Unicode code points
...
Unlike wchar_t, char32_t is guaranteed to be able to hold a UTF-32 character.
2018-10-15 22:23:45 +02:00
rdb
ebfb3702ac
prc: work around macOS compiler error when making optimized build
2018-10-15 22:21:45 +02:00
rdb
d7f19b73e0
dtoolutil: minor fix to TextEncoder::append_text
2018-10-15 13:27:36 +02:00
Sam Edwards
629ada63db
CMake: Turn OFF HAVE_CARBON by default
2018-10-14 17:30:40 -06:00
Sam Edwards
b3f1b7d40b
Merge branch 'cmake' of https://github.com/treamology/panda3d into cmake
...
# Conflicts:
# .travis.yml
# direct/src/showbase/CMakeLists.txt
# dtool/dtool_config.h.in
# dtool/src/prc/CMakeLists.txt
# panda/src/cocoadisplay/CMakeLists.txt
# panda/src/express/CMakeLists.txt
# panda/src/osxdisplay/CMakeLists.txt
2018-10-14 02:26:56 -06:00
Sam Edwards
c26109e8cc
CMake: Add textEncoder_ext.{cxx,h} to build
2018-10-13 16:15:40 -06:00
Sam Edwards
ea1b50a522
Merge branch 'master' into cmake
2018-10-13 16:15:35 -06:00
Sam Edwards
602ea6ebf4
general: Fix a couple more compiler warnings
...
- express: Fix a warning when compiling for debug
- dtoolutil: Give TextEncoder a virtual destructor
2018-10-13 16:14:34 -06:00
Sam Edwards
23a55f30eb
CMake: Make sure Python version is always correctly reported
2018-10-13 15:23:10 -06:00
Sam Edwards
da9bb2aaa2
CMake: Fix PYTHON_INCLUDE_DIRS variable when using CMake 3.12+'s FindPython
2018-10-13 15:07:09 -06:00
Sam Edwards
90d3b29767
CMake: Sort direct/dtool/panda/pandatool subdirectories
...
This forces us to make sure the inter-target dependencies work
in an order-independent way.
2018-10-10 20:16:32 -06:00
rdb
29b577971f
dtoolutil: improve Unicode encoding/decoding, support non-BMP chars
...
- Support encoding and decoding four-byte UTF-8 sequences
- E_unicode supports surrogate pairs, renamed to E_utf16be for clarity
- char32_t should be used for storing a Unicode code point
2018-10-08 22:33:54 +02:00
rdb
9061fd9416
dtoolutil: fix TextEncoder methods for Python 3
...
The no-arguments get_text() and set_text() will now return Unicode strings in Python 3, but passing in an encoding will make them return/take bytes objects.
In Python 2, they all take regular strings, but Unicode is also accepted by the no-argument get_text() and set_text().
In the future we probably want to remove most of this interface for Python users, to whom all this is unnecessary since it duplicates functionality already in the standard library.
2018-10-08 22:14:51 +02:00