On Jul 22, 2013, at 17:30 , Marvin Humphrey <[email protected]> wrote:

> On Sun, Jul 21, 2013 at 12:32 PM, Nick Wellnhofer <[email protected]> wrote:
>> Besides, I already introduced platform-dependent code in cfish_parcel.h. But
>> we can put the platform-dependent parts in a separate header file like
>> cfish_platform.h.
> 
> OK, that works.

This is now implemented in branch 'charmonizer-decoupling'.

> A while back I made some changes to Charmonizer in anticipation
> of supporting custom prefixes (swapping out ConfWriter_append_conf in most of
> the probes for functions like ConfWriter_add_def).

Yes, custom Charmonizer prefixes would work, too.

> The issue is very similar to the issue of installing a config.h file generated
> by Autoconf.
> 
>    http://inaugust.com/post/68
>    https://issues.apache.org/jira/browse/THRIFT-705
>    http://www.gnu.org/software/autoconf-archive/ax_prefix_config_h.html

Exactly.

> For instance, we can simply remove endianness from all public headers.
> Endianness isn't needed by Clownfish, only Lucy -- in fact, the entire
> Clownfish::Util::NumberUtils module shouldn't really be part of Clownfish, as
> it's barely used outside of Lucy.  To solve the problem, we can move the
> endian macros into an optional Charmonizer probe, so that they are defined
> only in a Lucy-specific charmony.h file which does not get installed.

The endian helpers might be useful for other modules. I'd keep them in 
Clownfish.

Nick


Reply via email to