Commit Graph

236 Commits

Author SHA1 Message Date
rdb 7026854cc2 Fixes to get the C binding generator to work 2015-07-05 16:07:08 +02:00
rdb 2515ea5dff Merge branch 'release/1.9.x' 2015-06-13 13:37:33 +02:00
rdb 48208b0f27 Support #pragma once in interrogate 2015-06-13 13:33:11 +02:00
rdb 11ed8a4d8d Use dynamic type lookup for interrogate to eliminate inter-module dependencies
It is now no longer necessary to link to core.pyd
Also includes a slight coercion optimization for trivial types
2015-06-06 19:36:40 +02:00
rdb f42c6645d5 Update prebuilt bison files for people who build without bison 2015-06-03 19:54:01 +02:00
rdb cc62e731b7 Fix compilation with ppremake 2015-06-01 00:21:32 +02:00
Sam Edwards 8b876843d4 Merge branch 'master' into cmake 2015-05-02 11:33:52 -07:00
rdb d430e611bb size_t params of methods in template classes did not support 64-bit values on 64-bit systems 2015-04-14 15:47:35 +02:00
rdb 8e76328b3b Fix Bullet support (Broken float division in default args in interrogate) 2015-04-09 13:08:17 +02:00
Sam Edwards 64120cd7d8 general: Add missing includes and forward-declarations. 2015-03-28 19:27:48 +01:00
Sam Edwards 41d8e26549 general: Add missing includes and forward-declarations. 2015-03-28 11:16:40 -07:00
Sam Edwards a0f704b67a CMake: Update CMakeLists for recent upstream changes. 2015-03-28 11:16:19 -07:00
Sam Edwards 69c22868e1 Merge branch 'master' into cmake 2015-03-28 10:23:28 -07:00
rdb 38d02fadf9 Fix various interrogate issues with parsing PhysX headers 2015-03-23 19:27:29 +01:00
rdb 9513046e59 Various substantial changes to Interrogate:
* Allow arbitrary selection of optional keyword arguments in some cases
* Reduce code bloat of generated bindings
* Work around awkward resolution of set_shader_input overloads
* Document the code a bit better
* Make coercion a bit cleaner for reference counted types
* A few optimization tweaks
* Use generic errors in NDEBUG build to reduce size of string pool
2015-02-15 13:48:13 +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 b2f73d0877 Merge branch 'master' into interrogate-overhaul 2015-02-08 12:11:19 +01:00
rdb 33249c5f43 Make pregenerated bison files up-to-date (for people without bison) 2015-02-07 17:40:31 +01:00
rdb ecf627b315 Fix a bug substituting some enums
(Still a bug: some enums in templated classes don't get instanced properly)
2015-01-05 17:04:38 +01:00
rdb 5e905d4463 Fix various parser bugs, improve error reporting
(to show the included file chain -vv is now needed)
2015-01-04 20:30:24 +01:00
rdb 34761a0b9b Merge branch 'master' into interrogate-overhaul
Conflicts:
	dtool/src/cppparser/cppBison.yxx
2015-01-03 16:52:44 +01:00
rdb 368e1ca644 Support noexcept and rvalue references in C++ parser 2015-01-02 14:57:33 +01:00
rdb 202008c470 Support digraphs and alternate operator names in CPPParser 2015-01-02 14:55:06 +01:00
rdb 6db5d0dc11 Huge cppparser and interrogate overhaul, bringing:
* Better support for typedefs
* Same code should compile for both 32-bit and 64-bit
* C++11 typed enum support
* Synthesize __setitem__ when operator [] returns reference
* Rewrite coerce system to have better performance
* Change semantics of __getattr__ and __setattr__ to match
  Python's, add __getattribute__, __delattr__ and __delitem__
* Improve performance of slot functions a bit more
* Reduce memory overhead of type system
* Some support for wrapping arrays of numeric types
* C++11 character type support in cppparser
* Chars are handled as strings of length 1
* Template functions for CreatePyInstance that use runtime type map
* More functions from dtool as extension functions
* Code cleanup
2014-12-30 16:43:52 +01:00
rdb b3fd8b94ad Interrogate should be able to parse any constexpr as enum value, including one that references a different enum value 2014-12-03 21:51:58 +01:00
rdb a65b477734 Commit patches by cfsworks:
cxx: Fix missing includes masked by composite builds.
misc: Fix typos in comments.
config: Fix missing config forward-declarations.
direct: Adjust Python imports to panda3d.* instead of pandac.*.
display: Split graphicsWindow out into an extension.
framework: Use if/elif/elif/endif instead of ifdef/elif/elif/endif.
ode: Remove erroneous INLINE declarations.
interval: Fix missing import.
2014-10-19 22:41:47 +00:00
Sam Edwards 442f58986d include: Fix a couple more missing includes... 2014-10-18 16:53:17 -07:00
Sam Edwards eaeff00901 dtool: Undo a few changes to dtoolbase that aren't strictly necessary, to better parallel upstream. 2014-10-18 16:53:13 -07:00
Sam Edwards a85d1f4cc2 Merge remote-tracking branch 'upstream/master' into cmake 2014-10-18 15:13:30 -07:00
rdb 31a71c990d Fix issues with OS X 10.9 compilation, fix issues uncovered by clang 2014-10-12 18:45:37 +00:00
Sam Edwards de8eb894b7 CMake: Update CMakeLists files to match recent changes to Sources.pp files. 2014-09-22 21:40:53 -07:00
Sam Edwards 57fb97053b Merge branch 'master' into cmake 2014-09-22 21:13:05 -07:00
rdb db7a6561f2 When finding comment for an enum, don't accidentally pick up a same-line comment of an enum value on the preceding line 2014-09-21 13:22:52 +00:00
rdb d9c529a5d0 Update prebuild cppBison files 2014-09-20 11:54:04 +00:00
rdb a6229f1fac Support for comments in enums. Improve comment handling in C++ parser. Improve doxygen reference. Update interrogate interface. (Addendum to interrogatedb v2.3.) 2014-09-19 23:34:11 +00:00
rdb c178aba639 Add property support to interrogate (using MAKE_PROPERTY or using published members) 2014-09-19 15:23:52 +00:00
rdb 30d8cc29b3 Rewrite handling of stringify and token-paste operators to work better. Add support for variadic macros. 2014-09-19 15:14:11 +00:00
rdb 5437a3e5a9 Allow const variables with initializers to be used in expressions (like enum definitions). Also fix compiler warning. 2014-09-14 22:02:16 +00:00
Sam Edwards 5e77793b0f CMake: Add some install(...) directives. 2014-02-04 22:43:23 -07:00
kestred 9ee6e59795 Change %pure_parser to %pure-parser in cppBison.yxx (%pure_parser is very very deprecated) 2014-01-19 00:45:02 -07:00
rdb 7ea0d099e9 More progress on Config.cmake, fix bison, add BUILD_DTOOL/BUILD_PANDA to toggle trees. 2013-12-16 20:33:20 +01:00
rdb 57c9b1ae64 Add composite_sources, add bison macro, emulate CMAKE_CURRENT_DIR_IN_INTERFACE in pre-2.8.11 2013-12-16 17:21:11 +01:00
rdb a8cde9f6f1 Use a custom target for bison as the built-in one is ill-equipped for our purposes. Also, add pandabase. 2013-12-13 16:35:16 +01:00
rdb abec123074 Merge branch 'master' of ssh://github.com/kestred/panda3d into cmake 2013-12-13 14:19:28 +01:00
kestred d1572173d3 CMake: Configure: Add XYZZY_LIBRARY(IES) variable declarations for Find packages. Other cleanup and reorginizaion. 2013-12-12 12:30:42 -07:00
Sam Edwards e9518eab5c CMake: Build dtool/cppparser without requiring HAVE_INTERROGATE; fix its use of paths. 2013-11-29 02:59:46 -07:00
Sam Edwards 163cbe4ea2 Massively clean up CMakeLists files by removing use of ${CMAKE_CURRENT_LIST_DIR}; this is handled by add_subdirectory instead. 2013-11-29 02:19:55 -07:00
Sam Edwards 111b1f0548 Add p3cppparser building to the CMake build system. 2013-11-28 23:36:22 -07:00
rdb 5b1ea47fee add F_operator flag 2013-11-18 18:37:27 +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 9294ea77f7 interrogate supports wchar_t * and L"foo" 2011-11-29 23:25:23 +00:00
David Rose cebecba2fc add interrogate -noangles 2011-11-06 18:02:17 +00:00
David Rose 633e697d54 allow typename keyword in lieu of class, in template declarations 2011-11-04 16:58:39 +00:00
David Rose eacd4cfefb missing include 2011-10-11 01:37:25 +00:00
David Rose 134e9a9e92 dual names for interrogate 2011-10-11 00:45:51 +00:00
rdb c740c43f4c Update prebuilt bison files 2011-01-02 15:17:22 +00:00
rdb beb90c565f Add functionality allowing extension functions to interrogate 2011-01-02 15:14:02 +00:00
David Rose d3d778734d add '^' to const expressions 2010-05-06 22:50:31 +00:00
David Rose 882b544805 fix forcetype for template instantiations 2010-02-28 03:29:03 +00:00
David Rose 8f96a87460 pstrtod 2009-06-14 16:10:09 +00:00
David Rose 0bc22b6034 prebuild-bison 2009-01-20 20:02:50 +00:00
David Rose a6f4fb2377 operator bool () -> __nonzero__() 2009-01-20 03:17:44 +00:00
David Rose 58e0537e3c wide interrogate improvements: sequence protocol, MAKE_SEQ, __setitem__, and parameter coercion 2008-11-07 21:12:42 +00:00
David Rose 964c76f2e0 pandaFileStream 2008-09-09 00:06:47 +00:00
David Rose fb9c56432a we are now using the modified BSD license 2008-05-28 18:37:20 +00:00
David Rose 07e5322800 simple fix to token-pasting problem 2008-05-09 18:48:20 +00:00
David Rose 611a10f796 try again to satisfy compilers 2008-01-17 01:22:57 +00:00
David Rose 651513d595 use reinterpret_cast for 64-bit architecture 2007-09-13 19:25:09 +00:00
David Rose bc488bb495 allow (and ignore) args to #endif 2007-08-16 17:19:12 +00:00
David Rose 8392266935 BEGIN_PUBLISH .. END_PUBLISH applies to methods too 2007-07-13 21:22:22 +00:00
Josh Yelon 1e7c8513c3 Interrogate include-path alterations 2007-06-27 23:57:19 +00:00
David Rose ecad9e186e fix issues with parser-inc and new interrogate search rules 2007-06-22 15:21:44 +00:00
Josh Yelon 7dc0da379b Corrected include-file search-path 2007-06-21 23:46:25 +00:00
David Rose a51d4712cf prebuild-bison 2007-04-21 01:45:13 +00:00
David Rose 346928ece7 support BLOCKING keyword 2007-04-18 21:51:36 +00:00
David Rose 55225290b8 add MemoryBase to fix malloc issues, especially on OSX 2006-11-17 02:13:10 +00:00
David Rose a3cc24dd6f dos2unix 2006-09-01 18:52:52 +00:00
Roger Hughston 859fc08886 small memory leak with multiple #defines... 2006-05-12 23:48:02 +00:00
David Rose 03c35a63ff CHAR -> CHAR_TOK (avoid conflict with Windows SDK) 2006-04-06 17:51:24 +00:00
David Rose eaf21c7e2b fix unary - in interrogate 2006-01-21 00:49:17 +00:00
David Rose 572a146c24 untabify 2006-01-13 18:38:07 +00:00
David Rose 237d193cac fix malloc issues on Linux 2005-09-30 19:49:25 +00:00
Josh Yelon 9729541f63 Added macrocomposites 2005-09-27 22:05:52 +00:00
David Rose a16bce7a37 prebuild-bison 2005-07-13 17:10:56 +00:00
David Rose 01c82da5df interrogate supports wstring 2005-07-13 15:37:56 +00:00
David Rose 7eab63d1e6 remove indent.cxx 2005-07-06 17:40:25 +00:00
David Rose be6d48df86 move TypedObject etc. stuff to dtool 2005-07-06 17:29:46 +00:00
Dave Schuyler 0dd3363dd1 formatting 2005-04-25 23:39:51 +00:00
David Rose c4fb3aa93a bison 1.875c now requires parens within the macro args 2005-01-28 17:15:40 +00:00
David Rose 77f6853877 fix problem parsing quoted commas in a manifest parameter 2004-12-09 23:21:40 +00:00
David Rose 3e548e3663 new interrogate, minor config changes 2004-10-28 18:33:45 +00:00
Dave Schuyler ebf10096a5 *** empty log message *** 2004-09-28 02:02:12 +00:00
David Rose 843c0331ae update license, change remaining local #includes to use quotation marks 2004-02-13 19:27:33 +00:00
Dave Schuyler 36cf062b96 using app includes 2004-02-07 05:33:07 +00:00
David Rose e3b7aa48f9 properly detect need to upcast in single-inheritance cases 2004-01-05 23:40:54 +00:00
Dave Schuyler f24d405030 changed include to use quotes 2003-10-28 05:15:48 +00:00
David Rose baa5e959a5 allow os-specific filenames on interrogate command line 2003-07-21 16:55:58 +00:00
Dave Schuyler 1f236ab391 changed include scope for clarity. 2003-05-06 04:39:29 +00:00
David Rose 324280b3f2 update prebuilt 2003-02-25 02:33:58 +00:00
David Rose 3496d7fedc be more forgiving with || and && in #if expressions 2003-01-21 19:29:31 +00:00
David Rose 78897e2563 build on Irix 2003-01-20 15:52:42 +00:00
David Rose 302eeb67fc update comment 2003-01-20 15:07:07 +00:00
David Rose 7b4ffc05f9 rename struct for consistency 2003-01-20 15:00:59 +00:00
David Rose df88308629 fix for bison greater than 1.35 2003-01-19 18:59:18 +00:00
David Rose ae0bf15799 fix for recent versions of bison 2003-01-15 19:30:56 +00:00
David Rose d231aa4421 support arbitrary parens around formal parameters 2002-09-27 22:30:50 +00:00
Joe Shochet bb33020f89 interrogate should look in /usr/include 2002-09-26 21:42:22 +00:00
David Rose 3868e3e94d eliminate DIRECTORY_IF_* and TARGET_IF_* for BUILD_DIRECTORY and BUILD_TARGET 2002-05-29 16:46:58 +00:00
David Rose 621ad03421 define prebuild-bison 2002-05-24 19:30:16 +00:00
David Rose bf8e7a911f remove incorrect doubled semicolon 2002-05-15 23:42:57 +00:00
cxgeorge 8ec48ecbda add missing ;'s 2002-05-15 21:32:42 +00:00
David Rose 68aa6f0e52 interrogate changes to support freetype 2002-02-09 21:55:41 +00:00
David Rose c781776e41 show include tree with indentation 2001-12-11 02:23:02 +00:00
David Rose f5bfcc42b9 output filename reading when -v is given 2001-12-11 01:26:02 +00:00
cxgeorge 8f30e44234 fix trim_blanks bug 2001-10-31 00:36:51 +00:00
David Rose 861c762e7d first wave of new ffi/interrogate 2001-10-02 22:25:32 +00:00
David Rose ae2466fb2f eliminate compiler warnings 2001-08-04 20:58:12 +00:00
cxgeorge aa7b719c85 *** empty log message *** 2001-08-03 22:03:08 +00:00
cxgeorge 44b1d41291 fix capitalization prob 2001-08-03 21:58:07 +00:00
David Rose 61c08e254e allow removing interrogate from the build process 2001-06-11 16:04:44 +00:00
David Rose 3ceb686cd7 fix LightTransition 2001-06-07 17:51:07 +00:00
David Rose 8cdabd4a69 correct case insensitive filename 2001-06-07 00:12:44 +00:00
cxgeorge 10111fa173 use combined srcs 2001-06-06 21:51:50 +00:00
David Rose 56f8e165df tabs to spaces 2001-06-05 22:23:04 +00:00
David Rose 6e6c8c01a6 fix #include on first line 2001-06-05 21:33:29 +00:00
David Rose 2f4e207edb Update copyright header 2001-05-25 21:27:38 +00:00
David Rose fcb24f02ef remove tab characters 2001-05-25 15:56:49 +00:00
David Rose 54b6ff6a5c *** empty log message *** 2001-05-16 17:48:17 +00:00
David Rose 0fe9f783e0 *** empty log message *** 2001-04-30 15:12:13 +00:00
David Rose 46289f6612 *** empty log message *** 2001-04-26 02:16:10 +00:00
David Rose ee8f10684d *** empty log message *** 2001-03-08 21:04:54 +00:00
David Rose 2ede38216f *** empty log message *** 2000-11-21 00:24:31 +00:00
David Rose 887741751c *** empty log message *** 2000-11-07 18:49:29 +00:00
David Rose fd4f9a170c *** empty log message *** 2000-11-07 18:12:15 +00:00
David Rose 6695399fea *** empty log message *** 2000-10-17 22:26:55 +00:00
David Rose 7a78284129 Initial revision 2000-10-04 00:15:23 +00:00