3303 Commits

Author SHA1 Message Date
rdb
05b3fe2170 dtoolbase: Use patomic<size_t> for memory usage counters 2022-12-03 22:42:03 +01:00
rdb
82522a7bef dtoolbase: Fix compile error in patomic.I with HAVE_THREADS=UNDEF 2022-12-03 21:53:02 +01:00
rdb
0421ee31b3 Merge branch 'release/1.10.x' 2022-12-01 12:59:27 +01:00
rdb
20459118e2 dtoolutil: Add XDG_STATE_HOME on Linux 2022-12-01 12:56:45 +01:00
rdb
a5610f217e Merge branch 'release/1.10.x' into incoming 2022-11-29 20:58:51 +01:00
rdb
5aad1d8404 interrogate: Change error message to mention interrogate
This makes it more obvious that the error is coming from interrogate when encountering a parse error in a build log
2022-11-29 20:14:33 +01:00
rdb
50cfdebd9c pstats: Integrate Python profiler with PStats
Enabled with `pstats-python-profiler 1`, requires recent version of PStats server.

Currently, it is limited to the main thread only.  Support for other threads may be added at a later date.
2022-11-29 16:00:09 +01:00
rdb
e09f78b987 interrogate: Do not consider make() with explicit kwargs for coercion
Unless this parameter has a default value
2022-11-07 18:05:34 +01:00
rdb
68111b2c42 Merge branch 'release/1.10.x' 2022-11-07 18:05:03 +01:00
rdb
11746457ff interrogate: Fix invalid syntax for make() coerce ctor with kwargs
[skip ci]
2022-11-07 18:03:41 +01:00
rdb
a1105f0f96 dxml: Remove TinyXML bindings
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
2022-11-03 13:45:22 +01:00
rdb
316b0009ae Merge branch 'release/1.10.x' 2022-10-31 23:10:39 +01:00
rdb
d8a537b59b dtoolbase: Add comment clarifying assertion in DeletedBufferChain
[skip ci]
2022-10-31 19:26:59 +01:00
rdb
9768cbb6c2 Merge branch 'release/1.10.x' 2022-10-25 16:44:24 +02:00
rdb
9a53a3bf31 cppparser: Fix an instance of pvector being used instead of std::vector
Also see #539 (but doesn't fully resolve this case because DSearchPath also uses pvector)

[skip ci]
2022-10-24 13:43:29 +02:00
rdb
bf65624298 dtoolbase: Make MemoryHook constant-initialized
init_memory_hook() is no longer required, eliminating static initialization order issues

This required moving the DeletedBufferChain map elsewhere, which now also has a const-initialized array for relatively small allocations.

Also, deletedChain.T has been renamed to deletedChain.I

Fixes #539
2022-10-24 13:26:03 +02:00
rdb
7f707de384 interrogate: rename operator [] = to operator []= 2022-10-24 13:24:30 +02:00
rdb
a28b641bf3 interrogatedb: Indicate whether types/function wrappers are deprecated 2022-10-24 13:24:20 +02:00
rdb
dd262c6715 cppparser: Properly record C++11 attributes 2022-10-24 13:23:05 +02:00
rdb
dd662a6eaa cppparser: Fix syntax error with C++11 attributes in declarators 2022-10-23 17:01:02 +02:00
rdb
ee1db0630a pipeline: _mm_pause alternative on non-x86 Windows 2022-10-23 14:21:39 +02:00
rdb
cee1de7338 general: Get rid of some coerce constructors where they make no sense 2022-10-20 21:00:05 +02:00
rdb
61ff260ee3 Merge branch 'release/1.10.x' 2022-10-20 20:59:45 +02:00
rdb
bb8b08a690 interrogatedb: Add interrogate_wrapper_is_extension() function 2022-10-20 10:09:45 +02:00
rdb
25d11b3b17 interrogatedb: Add more query functions for seq/map elements 2022-10-19 16:04:37 +02:00
rdb
834be5c7a0 interrogate: Fix some badly formatted code 2022-10-10 15:10:53 +02:00
rdb
e6036b5209 interrogatedb: More queries for function wrappers:
- `interrogate_wrapper_function(wrapper)`
- `interrogate_wrapper_is_copy_constructor(wrapper)`
- `interrogate_wrapper_is_coerce_constructor(wrapper)`
2022-10-10 15:09:28 +02:00
rdb
6e14591a8b CMake: Don't link to mimalloc if it is not enabled 2022-10-05 13:57:41 +02:00
rdb
27e54ffd75 Merge branch 'release/1.10.x' 2022-10-03 18:38:47 +02:00
DJs3000
f6fac95a78 Added e2k support (MCST Elbrus 2000) (#1367)
Closes #1367
2022-10-03 18:29:41 +02:00
Paul m. p. P
590531a0b2 py_panda: Fix compilation issue with Python 3.11
(Cherry-picked from 833ad89ebad58395d0af0b7ec08538e5e4308265)
2022-09-01 19:18:46 +02:00
rdb
d239f48a43 Merge branch 'release/1.10.x' 2022-08-31 12:51:46 +02:00
WMOkiishi
813490b2c7 interrogatedb: Add functions to interrogate_interface.h:
- `interrogate_function_is_unary_op`
- `interrogate_function_is_operator_typecast`
- `interrogate_type_is_array`
- `interrogate_type_array_size`

Closes #1362
2022-08-31 11:56:10 +02:00
rdb
cf04a04e32 Merge branch 'release/1.10.x' 2022-07-24 21:43:09 +02:00
rdb
cb400b5e17 interrogatedb: Add functions to obtain getters of make-seqs 2022-07-24 21:37:44 +02:00
rdb
ecf4d19e83 Merge branch 'release/1.10.x' 2022-05-10 16:12:36 +02:00
rdb
3d55945535 interrogatedb: Add new functions to interrogate_interface.h:
- `interrogate_function_is_constructor()`
- `interrogate_function_is_destructor()`
- `interrogate_wrapper_parameter_is_optional()`
- `interrogate_wrapper_parameter_is_scoped_enum()`
- `interrogate_wrapper_parameter_is_final()`

Only `interrogate_wrapper_parameter_is_optional()` requires a rebuild of the database with the new changes.
2022-05-10 15:58:34 +02:00
rdb
6ab6acfbaf interrogate: Do not write wrappers taking rvalue reference to interrogatedb
These are not actually exported by the Python binding generator anyway
2022-05-10 15:58:34 +02:00
rdb
42a19860d5 Fix errors when compiling headers with MinGW 2022-05-10 15:58:33 +02:00
rdb
fbea0056f5 general: Allow compiling Panda headers on Windows without NOMINMAX 2022-05-10 15:58:33 +02:00
rdb
5475084717 build: Enable -fno-semantic-interposition for GCC
This matches the more optimized clang behavior for -fPIC
2022-03-09 16:23:37 +01:00
rdb
c62d2319e0 CMake: Add --exclude-libs flags to static thirdparty libraries
Matching makepanda, this avoids symbol conflicts and may have optimization benefits.

This is a temporary hack until CMake 3.24 is released, which offers a cleaner way of doing this.
2022-03-09 16:23:37 +01:00
rdb
6ea1e8d65c CMake: Update OpenEXR package handling to use new targets 2022-03-09 16:23:37 +01:00
rdb
264747d213 CMake: Drop support for CMake versions below 3.13
We are already using target_link_options, and while it's possible to keep supporting older versions, it doesn't sound worth it.  I can revert this out if someone gives me a really good reason to.
2022-03-09 16:23:37 +01:00
rdb
e716dba8d4 CMake: Update FindLibSquish.cmake, support looking in thirdparty dir 2022-03-09 16:23:37 +01:00
rdb
59f422c056 CMake: Support thirdparty packages on systems other than Windows/macOS 2022-03-09 16:23:37 +01:00
rdb
657a8f890c interrogate: Squelch weird "Manifests" output from interrogate_module 2022-03-09 16:23:37 +01:00
rdb
dae147ec0c Merge branch 'release/1.10.x' 2022-03-02 10:51:23 +01:00
rdb
46c1b887ea Fix heap alignment with SSE2 on 32-bit Windows by inheriting MemoryBase
Fixes #510
2022-03-02 09:57:44 +01:00
rdb
370b635534 dtoolbase: Fix missing __stdcall when compiling for 32-bit Windows 2022-03-02 09:57:24 +01:00