On Fri, Jan 28, 2011 at 8:12 PM, Richard Hipp <[email protected]> wrote:

> Please read
> http://www.fossil-scm.org/fossil/doc/trunk/src/makeheaders.html which
> explains the motiation and operation of makeheaders.  Once you see how it
> works, the solution to the problems above will be trivial.
>

The problem i was seeing (before adding the special-case to makemake.tcl)
was that i have types declared like this in my header:

typedef struct foo foo;

and then defined opaquely. The makemake approach does something unusual with
those (see below).

i just tried:

./makeheaders -h src/cson_amalgamation.[ch]

and it generates things like:

#if !defined(WANDERINGHORSE_NET_CSON_H_INCLUDED)
#define WANDERINGHORSE_NET_CSON_H_INCLUDED 1
#endif
#if !defined(WANDERINGHORSE_NET_CSON_H_INCLUDED)
#include <stdio.h>
typedef struct cson_value cson_value;
#endif

so the type cson_value never gets declared, so timeline.c can't see it.

The special-case bits work just fine, so if you don't have a strong
preference i would prefer to go with that route.

PS: i will get the code license waiver sent off in the next couple of days,
assuming i have your okay to proceed with including this.

-- 
----- stephan beal
http://wanderinghorse.net/home/stephan/
_______________________________________________
fossil-users mailing list
[email protected]
http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users

Reply via email to