Just following up to my own message here, I went ahead and tried out the
directories thing in my own source tree, and it works like a charm. I'm going
to do some more hacking on the lmtp/sorting/sieve patch set and get version a9
up onto the SourceForge project this weekend, or maybe Monday afternoon.

Oh, Ilja, I noticed that you changed the return type of db_copymsg() again. I
gave you a polite time about it, then later a hard time about it... so now
I'll spare no mercy! db_copymsg() really really must give back the id number
of the new message that it has created! I patched it to add the fourth arg:

int db_copymsg(u64_t msg_idnr, u64_t mailbox_to,
               u64_t user_idnr, u64_t *newmsg_idnr);

Lemme know if that works right, or if I have to fiddle with physmessage or
something crazy like that... I'm not sure yet if I understand how to use the
physmessage layer. Uh, actually, I'm just ignoring it and pretending that the
higher level functions like db_insert_message() take care of physmessage for
me. Is that the case or do I need to rewrite to support physmessage directly?

Aaron


"Aaron Stone" <[EMAIL PROTECTED]> said:

> 
> Hey,
> 
> So Ilja and I had been thinking a bit about adding a directory for some of
> the Sieve code. Well, Ilja suggesting to do that and me disagreeing ;-)
> 
> Right, that was before I was done with the conditional compilation. For my
> testing purposes, I had not yet set up the Makefile.am to allow a build
> without the sorting and Sieve stuff built in. I'm working on that now, and
> realizing that it would probably be a good idea to get the sorting code 
> into a directory because:
> 
> a) as written, you can do sorting with Sieve or with an as-yet-unwritten,
> but maybe-in-the-future Regex sorting handler (one actually was written,
> and so I included support for having something like it, though better
> abstracted behind a generic sorting layer). So it might make some
> organizational sense.
> 
> b) Automake doesn't like conditional source dependencies. If that's what
> you need, then the conditional parts should be in a directory and a
> convenience library used. So it might actually be a necessity. 
> 
> I'm kinda throwing it out there in case anyone else has any better
> suggestions, otherwise what I'm going to suggest is the following:
> 
> - Sources for timsieved and sievecmd should remain in the top level with
> the other executable and program sources.
> 
> - Sources for the sorting layer should be moved into a directory named
> sort or sorting. I think sort is a better name for brevity.
> 
> - Do some renaming for consistency:
> 
> dbmail/sort.h (was sorting.h)
> dbmail/sort/sort.c (main interface to sorting layer)
> dbmail/sort/sortsieve.* (Sieve backend of sorting layer)
> 
> The result of all this should be that sort looks a lot like auth :-)
> 
> Aaron
> 
-- 

Reply via email to