Commit graph

647 commits

Author SHA1 Message Date
Meredith L. Patterson
73eabc7bf9 SWIG bindings build, compile, and appear to work for python. Will port over tests next. 2013-11-23 13:33:23 -06:00
Meredith L. Patterson
0e4253d0ef invoke swig with relative path instead, -I../../ 2013-11-23 13:33:23 -06:00
Meredith L. Patterson
8f427b5a6d fixed nested unions 2013-11-23 13:33:23 -06:00
Meredith L. Patterson
49f22e2aff Import combinator and allocator APIs into SWIG. Next is glue. Need to fix unions in HParsedToken and HCaseResult. 2013-11-23 13:33:23 -06:00
Meredith L. Patterson
75453d8b2f Finished writing unit tests. Fixed a few small bugs in hammer.py. Further issues:
* "in_" and "not_in" should coerce their results to strings (i.e., chr(result))
 * TestLeftrec: success case 2 fails
 * TestChRange: success case segfaults
 * TestWhitespaceEnd: success case segfaults
 * TestAction: success case segfaults with "corrupted double-linked list"
 * TestButNotRange: segfaults, probably because of whatever's wrong with ch_range
 * TestXor: segfaults; failure case craps out with "malloc(): smallbin double linked list corrupted"
2013-11-23 13:33:23 -06:00
Dan Hirsch
1841c9d77e Added a few tests 2013-11-23 13:33:23 -06:00
Dan Hirsch
a31f2d31a4 Added auto-construction, tidied h_ch a bit 2013-11-23 13:33:23 -06:00
Dan Hirsch
9d43244c2e Working python bindings 2013-11-23 13:33:23 -06:00
Dan Hirsch
28bee303f9 Add CFFI python bindings 2013-11-23 13:33:23 -06:00
Dan Hirsch
de6f6115a8 We declared some functions that were never implemented. Implement them. 2013-11-23 13:33:23 -06:00
Meredith L. Patterson
a17d189d9d Merge pull request #62 from thequux/add-callback-userdata
Add void* userdata to callbacks
2013-11-23 11:14:41 -08:00
Dan Hirsch
890c6383a7 Added documentation for H_{A,V,VA,AV}DRULE 2013-11-23 13:09:39 -06:00
Dan Hirsch
69e84bcbb0 Added a void* user_data pointer to HPredicate 2013-11-23 13:01:55 -06:00
Dan Hirsch
e487d5435c Added a void* user_data pointer to HAction 2013-11-23 12:53:11 -06:00
Meredith L. Patterson
bba60f5db9 Merge pull request #60 from thequux/allow-in-place-build
Allow in-place build via scons --in-place
2013-11-23 10:35:36 -08:00
Meredith L. Patterson
d2cb13ab86 Merge pull request #61 from thequux/install_name-is-darwin-only
Make install_name darwin-only
2013-11-23 10:35:04 -08:00
Dan Hirsch
c6b4beefcb Make install_name darwin-only 2013-11-23 12:28:34 -06:00
Dan Hirsch
2cead893fc Allow in-place build via scons --in-place 2013-11-22 19:44:30 -06:00
TQ Hirsch
1ec64f4938 Merge pull request #58 from jrozner/master
Changes for doing a proper system install and Go bindings
2013-11-21 22:12:17 -08:00
Joe Rozner
bb02aa18e7 Add warning message
Specify warning for internal only headers that are now installed for use
by extensions.
2013-11-21 22:09:25 -08:00
Joe Rozner
4b258c98e0 Merge branch 'master' of github.com:UpstandingHackers/hammer 2013-11-21 22:05:50 -08:00
Meredith L. Patterson
e193bd1e57 Merge pull request #57 from thequux/reduce-irc-spam
Reduce IRC spam
2013-11-21 21:33:09 -08:00
Joe Rozner
d0906e69e6 Fix for linux
This actually is only for OS X. On linux ldconfig must be run after
installing in order to update the library cache. Need to look into how
to get scons to do this for the user.
2013-11-21 12:50:03 -08:00
Joe Rozner
1d80058c85 Properly name the lib
Set the proper path for the shared library so that anything linking
against it will be able to find the library.
2013-11-21 12:37:36 -08:00
Joe Rozner
76034ae4d7 Install internal headers for Go bindings
Go, and likely other language bindings will, need access to create
new combinators. This functionality is currently located
src/parsers/parser_internal.h. Install this header to the system with
dependent headers until a better solution can be found.
2013-11-21 12:02:18 -08:00
Dan Hirsch
a98272b8c0 Reduce IRC spam 2013-11-20 15:37:24 -06:00
TQ Hirsch
87c380f82c Merge pull request #56 from jrozner/master
Clean up pyc
2013-11-20 13:27:47 -08:00
Joe Rozner
f1a5844523 Ignore pyc files 2013-11-20 13:26:00 -08:00
Joe Rozner
dbe0785e2c Remove pyc file 2013-11-20 13:25:09 -08:00
TQ Hirsch
d1394ea558 Merge pull request #55 from jrozner/master
Generate pkg-config for Hammer
2013-11-20 13:16:25 -08:00
Joe Rozner
f220524b5a Generate pkg-config for Hammer
Create a pkg-config file and install it to $prefix/lib/pkgconfig
2013-11-20 13:04:07 -08:00
Meredith L. Patterson
76b445ddb1 Merge pull request #52 from thequux/token-registry
Added token type registry. Closes #45; see also #54
2013-11-19 20:29:12 -08:00
TQ Hirsch
4e035751c9 Merge pull request #53 from abiggerhammer/static-analysis
Static analysis
2013-11-19 20:22:26 -08:00
Meredith L. Patterson
91221ac256 tweak SConstruct so that 'scan-build scons' works 2013-11-19 22:09:38 -06:00
Meredith L. Patterson
b4e28ac021 Fixed a potential segfault; hand-initialized HParsers in h_choice and
h_sequence need PB_MIN set.

Conflicts:
	src/bindings/python/SConscript
	src/bindings/python/hammer_tests.py
2013-11-19 21:58:24 -06:00
Dan Hirsch
4811f58374 Added token type registry. Closes #45 2013-11-19 21:14:39 -06:00
Meredith L. Patterson
b6098075c7 Merge pull request #50 from thequux/conditional-varargs-in-header
Add internal conditional to not use stdarg.h for SWIG use
2013-11-15 20:29:48 -08:00
Dan Hirsch
cfc633422c Add internal conditional to not use stdarg.h for SWIG use 2013-11-15 21:55:57 -06:00
Meredith L. Patterson
6e8542e21b Merge pull request #48 from pete-/master
Ditch longs and long longs in favor of stdint.h types, which has cascadi...
2013-11-15 12:23:05 -08:00
Peter Johnson
c8fc061ea6 Ditch longs and long longs in favor of stdint.h types, which has cascading
effects throughout, including use of inttypes.h/PRI[ud]64 because printf() is
still stuck in a long world, conversion of %lu to %zu for printing values of
type size_t, and changing/renaming the g_check_cmp* family of functions.
2013-11-15 00:12:57 -05:00
TQ Hirsch
f0a24ee4d0 Merge pull request #46 from jrozner/master
Fix SCons bugs
2013-11-08 17:40:19 -08:00
Joe Rozner
b111190596 Clean up ENV
Don't pass the entire environment to SCons. Only pass the PATH
2013-11-08 17:36:59 -08:00
Joe Rozner
fb015b4a98 Fix SCons bugs
Don't clober the Environment (and thus the ENV['PATH'] by redefining it
and don't link against lr by default. Only add it if uname is not Darwin
2013-11-08 16:30:08 -08:00
Meredith L. Patterson
035e0c0ba2 Merge pull request #43 from thequux/g-check-parse-ok
Changed parser test macros so that _parse_ok just checks whether the mat...
2013-11-01 10:40:49 -07:00
Dan Hirsch
71209dc97b Changed parser test macros so that _parse_ok just checks whether the match succeeded and _parse_match actually checks the resulting parse tree 2013-11-01 13:39:37 -04:00
Meredith L. Patterson
cd067aab74 Merge pull request #42 from thequux/standalone-test-suite
Made test-suite work on its own
2013-11-01 10:28:11 -07:00
Dan Hirsch
ce0829de33 Made test-suite work on its own 2013-11-01 12:39:01 -04:00
TQ Hirsch
274cbe38a9 Merge pull request #41 from thequux/install-target
Added install target
2013-10-31 11:42:12 -07:00
Meredith L. Patterson
eb44b804bd update usage instructions to assume system-wide install; this will change later, but is accurate now. 2013-10-29 17:48:29 -04:00
Meredith L. Patterson
46d6237790 Update README.md with install target instructions 2013-10-29 17:44:46 -04:00