m4-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: src vs m4


From: Gary V. Vaughan
Subject: Re: src vs m4
Date: Tue, 4 Sep 2001 20:34:07 +0100
User-agent: Mutt/1.3.21i

On Tue, Sep 04, 2001 at 09:34:48AM +0200, address@hidden wrote:
> Gary, I don't always understand well the difference between
> src and m4.  My first idea was src is generic, and m4/ dedicated
> to m4 pure stuff.  But then, why is error in m4/?

m4/ is everything that might be needed by a module (which will link
with libm4), and consequently any libc allback functions that are
required by that code.

src/ is main, and support code that will never need to be exposed
through the module API.

m4module.h, actually, is a mess.  In time (post 1.5 probably) it would
be nice to remove from it functions which are merely there to support
my initial split of m4-1.4o into m4 (the binary), libm4.la (the module
support library) and m4.la (the basic m4 builtins).  I'm not sure how
much m4.la should be allowed to leverage its privilege (in comparison
to user modules) of being compiled in the source tree.  On the one
hand, if an m4 builtin cannot be implemented using the functions in
m4module.h, then there is a deficiency in the interface... but on the
other hand, it is important the the standard builtins are as efficient
as possible (without impacting maintainability).

> My real question is: I would like to add quotearg support some
> day, but where?
> 
> Another interpretation is `src/' is maain plus the libc replacement,
> then quotearg goes into m4, right?

I'm not sure what you mean by quotearg (though I can guess), but in
answer to your question:  Unless the code needs to be exposed through
m4module.h to implement builtins, it goes in src/, where modules will
not be able to access it.

Cheers,
        Gary.
-- 
  ())_. Gary V. Vaughan     gary@(oranda.demon.co.uk|gnu.org)
  ( '/  Research Scientist  http://www.oranda.demon.co.uk       ,_())____
  / )=  GNU Hacker          http://www.gnu.org/software/libtool  \'      `&
`(_~)_  Tech' Author        http://sources.redhat.com/autobook   =`---d__/



reply via email to

[Prev in Thread] Current Thread [Next in Thread]