22613 Commits

Author SHA1 Message Date
Sam Edwards
9f55b9e77e CMake: Don't Interrogate with deprecated -longlong on Windows 2018-09-07 00:33:52 -06:00
Sam Edwards
e501d20927 CMake: Don't compile Interrogate runtime code into interrogatedb
This should obviate the need for pystub as well.

Note that it's currently a little bit hacky; the source will
have to be moved to make the CMake dependencies work better.
2018-09-06 23:57:53 -06:00
Sam Edwards
27ac068908 CMake: Clean up p3express's strange dependencies on dtool 2018-09-05 22:22:00 -06:00
Sam Edwards
0c889db928 CMake: Don't conflict with find_package internal variables 2018-09-05 19:19:36 -06:00
rdb
1a94e65b17 tests: fix mutex test on win32 where mutexes are always reentrant 2018-09-04 23:01:41 +02:00
rdb
11ecd3af87 putil: make ButtonHandle::none() constexpr 2018-09-04 12:58:48 +02:00
rdb
809f9b04f6 Fix problems with spinlock mutex/cvar implementation
This reimplements the spinlock on top of std::atomic_flag, which is guaranteed to be lockless.  It also inserts the PAUSE (REP NOP) instruction which is strongly recommended to be placed in busy-wait loops by Intel.

This also includes a recursive spinlock implementation.

The spinlock implementation is disabled by default, but can be enabled by adding the --override MUTEX_SPINLOCK=1 flag to makepanda.
2018-09-04 12:58:48 +02:00
rdb
171ba35f26 tests: add some simple smoke tests for Mutex and ReMutex 2018-09-04 12:58:48 +02:00
rdb
cf4f8b35b6 pgui: fix deadlock in PGScrollFrame/PGSliderBar 2018-09-04 12:58:37 +02:00
rdb
670047b4b0 dtoolbase: enable use of std::atomic_flag, also on macOS 2018-09-04 12:02:13 +02:00
rdb
217cecb77f pgui: remove some unnecessary reentrant locking in PGItem 2018-09-04 12:02:13 +02:00
Sam Edwards
1970751c8a CMake: Do something sensible with static Python modules
These *do* make sense and there are Panda3D users that use
this kind of configuration, so we should try to be accommodating.
2018-09-03 21:04:40 -06:00
Sam Edwards
77018c5383 CMake: Name Python targets more distinctively
Python targets are now prefixed with "panda3d." in
e.g. "panda3d.core"
2018-09-03 21:01:54 -06:00
Sam Edwards
601a82dafc travis: Hackfix for BUILD_METALIBS=OFF tests 2018-09-03 16:45:43 -06:00
Sam Edwards
e13a4d6539 pstatclient: Never pass nullptr to memcpy
Even though the only time this happened was when the size was 0,
it's still undefined to pass memcpy a nullptr.
2018-09-03 16:10:40 -06:00
Sam Edwards
23f46d8a84 CMake: Build p3bullet 2018-09-02 16:14:01 -06:00
Sam Edwards
e48b78bc50 CMake: Handle datagram_ext.h 2018-09-02 16:07:41 -06:00
Sam Edwards
208ecd6708 Merge branch 'master' into cmake 2018-09-02 16:06:41 -06:00
Sam Edwards
5f72e9c763 bullet: Fix misplaced INLINE getter 2018-09-02 16:04:33 -06:00
Sam Edwards
8c09477e37 bullet: Add missing includes and declarations for non-composite build 2018-09-02 16:04:25 -06:00
rdb
b168fa6a85 tests: fix erroneous test_texture_clear_unsigned_byte test 2018-09-02 21:04:40 +02:00
rdb
927016711f travis: use verbose flag to pytest 2018-09-02 20:59:40 +02:00
rdb
17bf50f1e8 audio: get_sound and uncache_sound should take Filename, not string 2018-09-02 20:55:58 +02:00
rdb
845ec7a990 cull: don't munge_points_to_quads if shader handles point size 2018-09-02 20:55:18 +02:00
rdb
b1f32e3f84 shader: reserve SL_SPIR_V ShaderLanguage value (as on vulkan branch) 2018-09-02 12:00:30 +02:00
rdb
eb62d7f223 tests: add unit tests for clearing and then peeking texture 2018-09-02 12:00:10 +02:00
rdb
9dec2aafb5 Fix static init ordering crashes in static build of pview
Fixes #381
2018-09-02 10:59:46 +02:00
rdb
3495537bf9 gobj: support clearing half-float textures
Fixes #374
2018-09-02 10:58:02 +02:00
rdb
c670cd45d9 gobj: handle infinity and NaN when peeking half float values 2018-09-02 10:56:20 +02:00
rdb
c4fe1ed883 gobj: slight refactor of Texture::do_get_clear_data() 2018-09-02 10:54:07 +02:00
Sam Edwards
fa1e1a2e63 CMake: Tidy up installation directory
Don't install "object-Configuration/" directories when
using metalibs, and also put .dll files in bin/ on Windows.
2018-09-01 11:07:55 -06:00
Sam Edwards
4695557a5d general: Don't require BUILDING_* for static builds 2018-08-31 23:54:32 -06:00
rdb
b1fc88027a dtoolbase: add missing DTOOL_PLATFORM for linux_aarch64 2018-08-26 14:04:48 +02:00
rdb
27dbad6fd9 leveleditor: add missing import 2018-08-26 14:04:19 +02:00
rdb
115f8df4d5 putil: work around GCC bug causing undefined reference in debug build 2018-08-26 14:03:44 +02:00
rdb
a90159271b tests: remove unused fixture from Datagram tests 2018-08-26 14:02:52 +02:00
rdb
c9372c3699 Fix a few GCC compile warnings 2018-08-26 14:02:33 +02:00
Sam Edwards
ab2ad99278 CMake: Don't use GREATER_EQUAL
It's not compatible with CMake 3.0.
2018-08-23 00:42:54 -06:00
rdb
5147674980 Add script to run test suite on a wheel in a virtualenv
[skip ci]
2018-08-20 17:00:40 +02:00
rdb
4f9a2aca85 tests: fix issues with temp files without correct case on Windows 2018-08-20 16:56:45 +02:00
Sam Edwards
76378c8990 CMake: Ask Python for preferred binary extension suffix 2018-08-19 23:10:20 -06:00
Sam Edwards
67e6c4299e CMake: Reorganize Python installation in direct/CMakeLists.txt 2018-08-19 17:04:29 -06:00
Sam Edwards
9c3841177b CMake: Move dtool_config.h to a configuration-specific dir 2018-08-19 15:39:42 -06:00
rdb
35fff81b6a makepanda: fix missing BUILDING_DIRECT_DCPARSER
[skip ci]
2018-08-19 21:06:47 +02:00
Mitchell Stokes
f663d215d5 Remove some unused variables 2018-08-19 16:55:07 +02:00
rdb
044d84c8fd mayaegg: fix various compilation warnings 2018-08-19 16:53:03 +02:00
rdb
91ae68f04b tests: attempt to fix egg2pg test failure on macOS 2018-08-19 16:49:54 +02:00
rdb
b4abea17d5 tests: add various matrix unit tests 2018-08-19 16:43:34 +02:00
rdb
371c34d13b linmath: allow constructing matrix from rows
This also enables using mat[n] wherever an LVecBase4 is accepted, as well as Mat4(*mat).
2018-08-19 16:42:36 +02:00
rdb
c4b657b5b2 interrogate: support implicit typecast operators in some cases
For example, this will let us pass a ConfigVariableFilename to anything that accepts a Filename, just like in C++.

Does not work if the return value if the typecast operator requires management.
2018-08-19 16:06:16 +02:00