Sam Edwards
0aa599feeb
CMake: Take away the HAVE_TINYDISPLAY option
...
This is at least until we can support building it, so that
other components in Panda don't assume TINYDISPLAY is present.
2020-01-07 13:16:51 -07:00
Sam Edwards
b00d7b23bc
CMake: Use CMAKE_FIND_PACKAGE_PREFER_CONFIG
to control find_package
override
2019-12-31 06:48:06 -07:00
Sam Edwards
74e9c610d3
CMake: Don't assume <PackageName>_FOUND will always be caps
...
This is more consistent with the new find_package() behavior,
especially when CONFIG mode is involved.
2019-12-31 06:47:34 -07:00
rdb
b78b7be326
Merge branch 'release/1.10.x'
2019-12-30 01:50:54 +01:00
rdb
ac85b05400
py_compat: fix _PyObject_CallNoArg in Python 3.5
2019-12-25 16:32:19 +01:00
Sam Edwards
cdc16291dd
CMake: SKIP_COMPOSITING
-> SKIP_UNITY_BUILD_INCLUSION
...
The latter is what CMake (3.16+) itself uses; we should start using
CMake's own unity build capabilities if available.
2019-12-24 17:20:43 -07:00
Sam Edwards
10760d5f7a
CMake: Properly redetect Python if WANT_PYTHON_VERSION changes
2019-12-24 16:16:31 -07:00
pmp-p
8615e25a12
interrogate: use fully qualified module name in PyModule_Create
...
This is helpful when static linking and explicitly initializing the modules.
Closes #308
2019-12-11 16:49:42 +01:00
rdb
9565d99fab
Merge branch 'release/1.10.x'
2019-12-08 15:18:51 +01:00
rdb
97a19c278b
parser-inc: define __SIZE_TYPE__ and __PTRDIFF_TYPE__
...
This fixes an Interrogate parse error in termux when /usr/include gets added as -S argument
2019-12-08 10:28:50 +01:00
Sam Edwards
e474350a48
CMake: Add a "Coverage" configuration, when using GCC/Clang
2019-12-05 10:35:25 -07:00
Sam Edwards
6bde9423df
CMake: Don't pass GNU-like -f options to clang-cl
2019-12-05 10:34:47 -07:00
Sam Edwards
5c98b793a2
CMake: Make sure C++11 is marked as the required standard
2019-12-05 10:34:47 -07:00
Sam Edwards
cfedd71093
CMake: Disable searching macOS frameworks when using THIRDPARTY_DIRECTORY
2019-12-05 10:34:47 -07:00
Leandro Benedet Garcia
71dfc51f8a
general: Changed macros and definitions for the engine to compile with MinGW ( #793 )
2019-12-02 09:21:01 -07:00
Leandro Benedet Garcia
ae33d62978
general: Update EXPCL declarations to be MinGW-friendly ( #792 )
2019-11-27 11:25:24 -07:00
Sam Edwards
4556059c90
CMake: Use find_program to detect host tools when cross-compiling
...
In the future, we should also try to do find_package(Panda3D) to use
the host tools even if Panda3D isn't in a system path.
2019-11-13 15:30:26 -07:00
Sam Edwards
f377bdfb29
CMake: Copy thirdparty/**/*.dll to bin/ directory
2019-11-13 15:30:23 -07:00
Sam Edwards
ae59bd031f
CMake: Fix typo
2019-11-11 20:16:00 -07:00
Sam Edwards
0b342d0f9f
CMake: Don't use PythonInterp/PythonLibs when FindPython available
2019-11-11 00:48:14 -07:00
Sam Edwards
1c866dff78
CMake: Don't override Python_ROOT
2019-11-11 00:48:11 -07:00
rdb
1b863ead55
cppparser: fix finding types in explicitly specialized template class
2019-11-09 20:26:33 +01:00
Sam Edwards
9b7bcf2564
Merge branch 'master' into cmake
2019-11-07 21:21:04 -07:00
rdb
d2bd4181e0
interrogate: set tp_base to DTOOL_SUPER_BASE and tp_basicsize to 0
...
The tp_basicsize field, as well as a few others, seem to be inherited from whatever is set in tp_base. In absence of a tp_base, Python will set it to PyBaseObject_Type, which is not at all correct for Panda types.
2019-11-06 10:49:53 +01:00
Sam Edwards
856754a3de
general: Don't abuse PyErr_Restore
...
The intended purpose of this function is to restore an exception
that has already been raised and saved with PyErr_Fetch. It should
not be used to raise new exceptions nor should it be used to clear
the current exception.
The especially egregious example is
`PyErr_Restore(exc_type, nullptr, nullptr);`
as the null value may not be handled correctly.
2019-11-05 18:44:20 -07:00
Sam Edwards
0e0b2186c7
CMake: Add #line directives to interrogate_preamble_python_native
2019-11-04 16:43:12 -07:00
Sam Edwards
cf59d3d983
CMake: Remove p3dtoolconfig from build
...
It's just p3prc now, so instead we install some symlinks
2019-11-04 14:02:06 -07:00
Sam Edwards
5b4ea0e277
CMake: Proper Standard compiler flags for MSVC
2019-11-04 13:41:20 -07:00
rdb
a72be90f17
Merge branch 'release/1.10.x'
2019-10-29 23:13:22 +01:00
rdb
4098f55d70
dtoolutil: record stdlib (libc++ vs libstdc++) in PandaSystem
...
This is particularly relevant on macOS, for finding out which stdlib Panda was compiled with.
2019-10-25 10:21:30 +02:00
Sam Edwards
12c16eb9ff
Merge branch 'master' into cmake
2019-10-15 23:43:25 -06:00
Sam Edwards
9ecaa0056b
CMake: Break out p3interrogatedb as a first-class library
2019-10-15 23:27:03 -06:00
rdb
247f3c415a
Merge branch 'release/1.10.x'
2019-10-08 19:50:48 +02:00
rdb
c6990b9f9b
prc: fix possible stack overflow in StreamReader
...
Fixes #754
2019-10-08 19:44:23 +02:00
rdb
3c9591cfbf
interrogate: envelop function calls in parentheses
...
This reduces the risk of calling a preprocessor macro instead of a method.
2019-10-08 19:43:34 +02:00
rdb
fb5440bd07
cppparser: hack fix for method defs in parentheses
2019-10-08 19:43:34 +02:00
rdb
657af0edb5
cppparser: don't expand function-style macro if not followed by (
2019-10-07 18:38:21 +02:00
Sam Edwards
5961cc2ee0
Merge branch 'master' into cmake
2019-10-05 15:00:49 -06:00
Sam Edwards
aadcb179d6
CMake: Change default build type to Standard
2019-09-21 02:45:46 -06:00
Sam Edwards
9bb59b03b9
CMake: Add several essential flags
...
See GH #717 for relevant discussion
2019-09-19 22:33:11 -06:00
Sam Edwards
bd1605907e
CMake: Rename 'Distribution' config to 'Standard'
...
This is the configuration shipped to Python developers
in the form of the public SDK.
2019-09-19 22:18:28 -06:00
Sam Edwards
8429f50d3a
CMake: Use -fno-rtti on most build configurations
2019-09-19 04:44:46 -06:00
rdb
5242b6a8b4
interrogate: remove apparently-unused definition
2019-09-16 21:22:16 +02:00
rdb
9d14117ad3
Merge branch 'release/1.10.x'
2019-09-16 21:20:20 +02:00
rdb
343c808fc4
dtoolbase: fix repeated calls to TypeRegistry::ptr() in register_type
2019-09-16 21:09:15 +02:00
rdb
f4926bff20
Fix a variety of ABI compatibility issues
...
We need third-party extensions that link with the Panda3D libraries to continue to work when shipping them with the optimized libraries that deploy-ng uses. To do this, we need the optimized build not to omit symbols that these extensions might depend on.
2019-09-16 03:33:09 +02:00
rdb
5a23821ac1
notify: work around GCC 4.7 compilation issue with constexpr
...
This can be reverted on master if we can verify that it does work with GCC 4.8.
2019-09-16 03:27:22 +02:00
rdb
d7681b23d3
notify: fix ABI incompatibility with NDEBUG on Windows
...
On MSVC (not with GCC/clang), adding `static` changes the mangled symbol name, so we shouldn't add that when building with NDEBUG. On GCC/clang, it doesn't, but adding `const` does, and C++11 rules make `constexpr` methods implicitly `const`, so I've removed the `constexpr` variants from NotifyCategoryProxy for now. Hopefully the compiler is still smart enough to compile out any references when compiling with NDEBUG.
2019-09-15 20:24:58 +02:00
Mitchell Stokes
660249a5cc
Remove p3d/AppRunner/plugin system
...
Co-authored-by: rdb <git@rdb.name>
Closes #734
2019-09-10 16:49:57 +02:00
rdb
2c42cfcc1a
Merge branch 'release/1.10.x'
2019-09-10 16:34:11 +02:00