Commit Graph

1028 Commits

Author SHA1 Message Date
Sam Edwards 99fee1a64d CMake: Assign COMPONENT and EXPORT to all targets 2018-12-06 17:48:44 -07:00
Sam Edwards a6877a6def Merge branch 'master' into cmake 2018-11-03 22:55:13 -06:00
rdb 5ac3cf3fc6 Eliminate C++ DConfig; replace it with a Python compatibility shim 2018-11-02 23:27:07 +01:00
Sam Edwards f1c5352cc1 CMake: Remove redundant target_compile_definitions(WITHIN_PANDA)
This is no longer needed since they should now propagate from
dcparser automatically.
2018-10-13 15:07:09 -06:00
Sam Edwards 1520d712d4 CMake: Remove target_use_packages
Instead, let's use a PKG::PKGNAME interface library, which simplifies
the linking and also allows us to use imported libraries from
find_package in the future.
2018-09-21 10:17:05 -06:00
Sam Edwards 208ecd6708 Merge branch 'master' into cmake 2018-09-02 16:06:41 -06: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 b1d2111037 express: add Datagram add_blob and add_blob32, et al.
This is for writing Python 2/3 agnostic code for writing binary data to a datagram, and reading from it using DatagramIterator.
2018-08-19 16:01:39 +02:00
Sam Edwards 2ab77d9a27 Merge branch 'master' into cmake 2018-08-14 21:59:45 -06:00
Sam Edwards b2bfb31114 general: Remove `using std::*` from headers
Also remove most `using namespace std;` statements. The only one that remains is in py_panda.h.

Closes #350
Closes #335
2018-06-14 16:04:49 +02:00
Sam Edwards c4126942f6 Merge branch 'master' into cmake 2018-06-10 02:29:21 -06:00
Sam Edwards 7790f8429d general: Fully qualify header references into the std namespace
Closes #341
2018-06-07 10:35:12 +02:00
Sam Edwards 592a2e2d68 Merge branch 'master' into cmake 2018-06-06 13:18:12 -06:00
Sam Edwards e2b4353800 general: Replace NULL (and 0 as pointer) with C++11 nullptr
Exceptions to this replacement are:
- .c files
- Headers included by a .c file
- stb_image.h
- dr_flac.h
- Strings
- Comments
2018-06-03 16:35:13 -06:00
rdb 6b726fa697 general: fix various compiler warnings and issues exposed thereby 2018-05-30 11:09:35 +02:00
Sam Edwards 1fcb8a2748 CMake: Skip optional subdirectories in a cleaner way
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.
2018-04-20 02:26:47 -06:00
Sam Edwards 56a6e6a80a Merge remote-tracking branch 'origin/master' into cmake 2018-04-20 01:57:46 -06:00
Sam Edwards 4cec331722 CMake: Add support for building metalibs as metalibs 2018-04-18 14:42:56 -06:00
Sam Edwards 7590c37f0c CMake: Have Interrogate respect INTERFACE_COMPILE_DEFINITIONS
This commit isn't technically quite right, since Interrogate should
use the definitions from COMPILE_DEFINITIONS but the module should
be built with INTERFACE_COMPILE_DEFINITIONS, but whatever. That can
be changed if it becomes a nuisance later on.

The rationale here is it's consistent with how CMake treats these
two properties.
2018-04-18 12:23:18 -06:00
Sam Edwards d642ca4fa0 CMake: Change linkages to go through metalibs
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.
2018-04-15 01:10:21 -06:00
rdb e9ae7dcc40 Use vector_uchar instead of string for binary network/file data
This distinction allows us to better support Python 3, since it will raise exceptions when trying to put arbitrary binary data in a str object.

This also adds some convenience functions for efficiently initializing a Datagram or PTA_uchar from a vector_uchar.
2018-04-02 23:17:14 +02:00
Sam Edwards 449195a33d CMake: Define appropriate BUILDING_ symbols 2018-03-31 04:24:06 -06:00
Sam Edwards 25b13ad199 Merge branch 'master' into cmake 2018-03-31 04:23:49 -06:00
Tohka 0b1ad67e13 distributed: Fix DC file reading regression (#295) 2018-03-31 04:01:35 -06:00
Sam Edwards 9dd37e9dbc general: Add guards to ensure proper BUILDING_ macros defined
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.
2018-03-25 13:17:52 -06:00
Sam Edwards f231ba4cd7 directbase: Introduce BUILDING_ defines for each component
Ditto everything before, but for direct.
2018-03-25 13:17:52 -06:00
Michael Wass b10ee32752 direct: Fix some more NameErrors
Closes #274
2018-03-08 11:44:04 +01:00
Sam Edwards ac8417ffdf distributed: `type(x) == types.FooType` -> `inspect.isfoo(x)`
This is more compatible across Python 2 vs. 3.

[skip ci]
2018-03-04 15:28:39 -07:00
Sam Edwards df0c889092 distributed: Fix the import test (and syntax on Python 3) 2018-02-23 19:53:13 -07:00
Sam Edwards b72d1c198f distributed: Fix the import test (and syntax on Python 3) 2018-02-23 19:52:48 -07:00
Sam Edwards dfed8d2100 Merge branch 'master' into cmake 2018-02-23 17:49:32 -07:00
Sam Edwards f76b8a6ad8 distributed: Replace the OTP protocol format with Astron's
Again, all this does is affect the 4-years-disused OTP system, leaving
the CMU system entirely untouched.

This changes the packet formatting in several of distributed's helper
classes.
2018-02-23 16:45:50 -07:00
Sam Edwards 167c6dcafa distributed: Change the message numbers to match Astron's
I imagine very few Panda3D users depend on the message numbers having
particular values. The ones removed belonged to Disney's OTP system,
which hasn't been used by anybody in over 4 years.

At any rate, old code should continue to work, just at the cost of
compatibility between clients and servers running different P3D versions.
2018-02-23 16:35:50 -07:00
Sam Edwards 97368ec321 distributed: Make a few slight cleanliness changes
I brought all of these over from the Astron fork
2018-02-23 15:55:30 -07:00
Sam Edwards eda119dac4 Merge branch 'master' into cmake
# Conflicts:
#	.travis.yml
2018-02-04 17:12:51 -07:00
rdb 588d41ed7e Fix assorted compiler warnings 2017-12-24 15:12:58 +01:00
rdb dd2806c8bd Mark constructors 'explicit' for which coercion makes no sense 2017-11-06 19:47:38 +01:00
rdb d576c6b638 Improvements to generated API docs, especially in direct tree.
Also add an entry point for pfreeze.
2017-05-24 13:30:21 +02:00
AnythingTechPro 5050aae5c8 Code formatting cleanups in StagedObject
Closes #142
2017-03-30 19:49:30 +02:00
Sam Edwards 79f9ac402f Merge branch 'master' into cmake 2017-03-27 01:00:18 -06:00
Sam Edwards 4080e03d05 distributed: Remove use of exceptionLogged() decorator
This isn't available when __debug__==False either.
2017-03-27 01:00:00 -06:00
Sam Edwards f062c64e9a distributed: Fix broken reference to StackTrace when __debug__==False 2017-03-27 00:56:05 -06:00
Sam Edwards 6926fbfbe6 CMake: Push Python links back to where they're actually needed
This keeps the Panda3D core free of any Python-specific linkage
2017-03-08 01:44:27 -07:00
rdb 88dd3389ee cmake: install header files 2017-02-19 23:42:48 +01:00
Sam Edwards e3fcacb1f7 Merge branch 'master' into cmake 2016-11-30 19:21:50 -08:00
Tohka e9a43a21fa Remove PiratesMagicWordManager VR Studio code reference 2016-11-04 02:41:41 +07:00
rdb 1049088f11 Clean up some of the dtool_config.h variables 2016-10-24 22:10:46 +02:00
rdb 47388b0dbc Separate out CPython calls from core libs; eliminate need for pystub 2016-07-20 14:30:41 +02:00
Sam Edwards 0846a89677 general: Stop using several deprecated pandac.PandaModules imports. 2016-06-27 00:06:40 -07:00
Sam Edwards fffd105f96 Merge branch 'master' into cmake 2016-06-25 19:12:14 -07:00
rdb f068a8613b Fix a few unnecessary uses of exec/eval 2016-06-22 13:50:58 +02:00
Tohka 9a562d1a1c Remove useless "children" property of DistributedObjectBase
This property is not used and causes problems on the latest build.
2016-05-15 12:33:41 +03:00
rdb 18874fa151 Replace PN_int/uint types with stdint.h types, since all compilers we support have them.
Plus, we already had code that relied on them being available anyway.
2016-05-11 00:27:58 +02:00
rdb 881a55f679 Merge branch 'master' into cmake 2016-04-12 21:08:22 +02:00
rdb 23bf9ea5c7 The direct tree is now valid Python 2 *and* 3 2016-03-28 22:33:30 +02:00
rdb 54fa31ba17 StandardError -> Exception, other 2to3 changes, threaded 2to3 2016-03-25 17:13:09 +01:00
Sam Edwards 441371e8d9 Merge branch 'master' into cmake 2016-03-15 18:30:55 -07:00
tobspr 0fcfb8e372 New file headers, new comment style 2016-02-17 17:47:48 +01:00
rdb 5cd4342ed5 Merge branch 'master' into cmake 2016-02-05 17:16:15 +01:00
rdb 0a366e987f Merge branch 'release/1.9.x'
Conflicts:
	panda/src/glstuff/glGraphicsStateGuardian_src.cxx
	panda/src/putil/bamReader.h
2016-01-26 11:45:04 +01:00
rdb a55d915aea Add missing CDistributedSmoothNodeBase import 2016-01-26 11:17:57 +01:00
mfwass f8837999ed Cleanup trailing whitespace 2015-12-13 10:08:41 -05:00
rdb 32367fcbdc Fix various import issues in the direct tree 2015-12-06 22:36:05 +01:00
rdb 3c2f820ad8 Merge branch 'release/1.9.x'
Conflicts:
	direct/src/p3d/DeploymentTools.py
2015-11-24 13:39:36 +01:00
rdb 9348cf6b29 Prevent packp3d from including xml and panda3d modules in every .p3d 2015-11-24 13:35:18 +01:00
rdb c93e50ca05 Merge branch 'release/1.9.x'
Conflicts:
	.travis.yml
	dtool/src/cppparser/cppBison.cxx.prebuilt
	dtool/src/cppparser/cppBison.yxx
	makepanda/makepanda.py
2015-11-19 18:43:13 +01:00
rdb 378030e9b9 Remove unnecessary "pass" statements from DistributedCamera code 2015-11-19 15:38:57 +01:00
rdb 5b291a9b10 Merge branch 'master' into cmake 2015-11-09 19:21:12 +01:00
rdb db3ab953e4 Remove ppremake, genPyCode, and all hacks created to support them 2015-11-09 19:06:49 +01:00
Sam Edwards c902774cfd Merge branch 'master' into cmake 2015-11-07 20:06:59 -08:00
Michael Wass 1c2c60acba Removed a nonexistent import from GridChild
This import is nonexistent and has no calls to it. The purpose it serves right now is causing an ImportError :P.
2015-07-20 11:03:42 -04:00
Sam Edwards 5ee04074c2 Merge branch 'master' into cmake
# Conflicts:
#	direct/src/actor/Actor.py
2015-07-12 19:27:56 -07:00
rdb d9342043b0 Deprecate pandac.PandaModules and genPyCode, move extensions to panda3d/, clean up imports and deprecated behaviour 2015-06-28 13:55:31 +02:00
Sam Edwards 69c22868e1 Merge branch 'master' into cmake 2015-03-28 10:23:28 -07:00
rdb 3371df8403 Fix tp_compare, better __repr__/__str__ handling 2015-03-25 19:36:35 +01:00
Sam Edwards 6ee1170453 Merge branch 'master' into cmake
Conflicts:
	panda/src/display/pythonGraphicsWindowProc.cxx
	panda/src/putil/config_util.cxx
2015-02-11 09:53:13 -08:00
rdb aec80426a3 Remove (apparently unused) code that is problematic because it references symbols from the generated bindings 2015-02-08 19:48:42 +01:00
Sam Edwards 93af05d67a Merge branch 'master' into cmake 2014-04-23 21:14:26 -06:00
rdb 51dffd0f5a Commit patch by cfsworks to clean up use of exec() and eval() 2014-04-16 13:09:12 +00:00
Sam Edwards 5e77793b0f CMake: Add some install(...) directives. 2014-02-04 22:43:23 -07:00
Sam Edwards 89797d78d6 CMake: Work on direct; get dcparse, dcparser, deadrec, directbase, distributed to build+Interrogate. 2014-02-04 14:58:52 -07:00
rdb 88048bf3da Fix use of has_key and map() 2013-12-17 19:49:09 +00:00
rdb 3403c8748e Fix use of outdated exec and repr syntax 2013-12-17 18:05:45 +00:00
rdb 192d10b937 Experimental Python 3 support to the C++ code including interrogate. Also adds support for rich comparison in interrogate. 2013-02-16 19:22:26 +00:00
David Rose 622c047344 several USE_PACKAGES oopses 2011-12-12 22:53:39 +00:00
David Rose 33398d9713 set_repository() and set_clock_delta() should be instance methods, not static class methods 2011-12-09 19:38:29 +00:00
David Rose dfe16c64f6 rename all Panda-built libraries to begin with libp3 or libpanda 2011-12-06 02:39:21 +00:00
David Rose 501470169f stdfloat_double 2011-10-10 05:25:10 +00:00
Justin Butler e14d4e0120 adding to remove from attic 2011-09-09 21:30:05 +00:00
Justin Butler e2c78d4fc0 *** empty log message *** 2011-09-09 21:18:23 +00:00
David Rose ef0cb39c1d untabify 2011-06-29 22:18:54 +00:00
Ken Patel fa68ec6a52 GIB - improve logging esp in httpChannel to identify which channel is associated with each log message 2010-10-13 21:16:25 +00:00
Zachary Pavlov b069a57a56 prevent uberdog formatting freezes 2010-10-06 22:44:32 +00:00
Redmond Urbino 93a6c90dd9 use dg.dump_hex instead of describe_message to avoid segmentation fault 2010-08-07 03:49:09 +00:00
David Rose 7a72bce383 bool -> float 2010-06-17 17:32:51 +00:00
David Rose d0bd8dc046 impossible things happen sometimes? 2010-05-28 16:58:31 +00:00
Zachary Pavlov 1f4442d4bd prevent interest loss 2010-05-13 20:28:46 +00:00
Zachary Pavlov 2eae5dbcd3 prevent interest loss 2010-05-13 20:27:12 +00:00
Redmond Urbino 0b344e9a2b to give a warning in the log if a message takes too long to process 2010-05-07 05:29:59 +00:00