[
https://issues.apache.org/jira/browse/AVRO-151?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12766418#action_12766418
]
Matt Massie commented on AVRO-151:
----------------------------------
Patrick-
My current approach is to checkin the configure.in and Makefile.am files. In
build.xml, there is an uptodate target that checks for a configure script and
if it's not there runs `autoreconf -f -i`. In the near future, I plan to use
the 'distdir' target in autotools to create a C source directory for
distribution. This will ensure that consumers of Avro C code don't need to
have autotools installed to build it.
For pure autotools projects, a simple `make distcheck` runs unit tests for the
package and, if they pass, creates a tarball ready for distribution. I'll try
to mimic that behavior in Avro as much as possible although bolting an
autotools project to an ant project isn't optimal.
You can expect a new 'package-c' target in build.xml from me soon. Thanks for
the feedback and link.
-Matt
> Validating Avro schema parser in C
> ----------------------------------
>
> Key: AVRO-151
> URL: https://issues.apache.org/jira/browse/AVRO-151
> Project: Avro
> Issue Type: New Feature
> Components: c
> Reporter: Matt Massie
> Assignee: Matt Massie
>
> This Jira is for tracking commit r825593 "Added a validating Avro schema
> parser in C"
> This commit adds a schema parser which validates the schema while generating
> an intermediate tree of value objects for printing, reading, skipping and
> writing avro values. You'll notice that the C code is written in an
> object-oriented fashion with clear interfaces, data encapsulation, etc. My
> primary focus at this time is to make the core source as easy to understand
> and work on as possible to make it easier to add new developers moving
> forward. I plan to add a developers guide to src/c soon to help toward that
> end as well. I've separated the public API into avro.h and the private API
> into avro_private.h. You'll notice that currently there is no public API.
> Once the internals are built correctly (with better error reporting),
> sketching out the public API will be easier and can focus on usability and
> flexibility for consumers of Avro in C.
> I'm very near to having Avro file object containers working and you can see
> the code for that in the source (avro_file_container.c). It correctly parses
> the interop.avsc and reads the non-recursive elements. My only blocker for
> file containers now is support for reading recursive schemas (I'm currently
> using a decorator when I should have use a factory) and the fact that a few
> complex types don't have reading/writing support. I expect file object
> container support to be finished soon.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.