help-smalltalk
[Top][All Lists]
Advanced

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

Re: [Help-smalltalk] My "forks" of GNU projects to test Automake-NG


From: Stefano Lattarini
Subject: Re: [Help-smalltalk] My "forks" of GNU projects to test Automake-NG
Date: Sun, 19 Aug 2012 14:01:16 +0200

Hi Holger, thanks for the feedback.

On 08/19/2012 01:19 PM, Holger Hans Peter Freyther wrote:
> On Sat, Aug 18, 2012 at 03:48:28PM +0200, Stefano Lattarini wrote:
> 
> Dear Stefano,
> 
> do you have some bulletin points that automake-ng can do better than
> plain automake?
>
It depends what do you intend for "better".  Let me elaborate.

What is important to understand is that Automake-NG has a threefold aim:

 [1] it wants to improve user experience, by letting the user take more
     advantage of GNU make features (where possible);

 [2] it wants to itself take advantage of GNU make features and semantics
     to improve the robustness and speed of the generated Makefile, and
     to fix some long-standing limitations and bugs of Automake that are
     basically impossible to fix using only portable make constructs;
     an example of this is the "command-line length limits exceeded"
     problems possible in the 'dist' and 'check' targets; for reference
     see: <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=7868>

 [3] it wants to make the life of Automake's developers easier and more
     pleasant, by allowing them to freely use of all the available GNU
     make features and extensions -- which are far more powerful and
     flexible than the features available in portable make, and allows
     for clearer and simpler implementation (as well as testing) of
     Automake.

So, Automake-NG will be "better" for you as an user in the areas covered
by the [1] and [2] above, while it will just be better for "us" developers
in the other areas.

Also, keep in mind that Automake-NG is still an experimental project,
so it would be premature for GNU Smalltalk to switch to it right away
(even though the Smalltalk build system seems to already require GNU
make); the use of Automake-NG should be restricted to an experimental
branch, proceeding in parallel with the master branch, at least until
Automake-NG reaches its first stable release.

> All I found out is that it targets GNU make directly.
>
That is the most important difference at the moment.  For more background
and future plans/hopes, you might take a look at the README file in the
'ng/master' branch in the Automake official Git repository.

(Note to self: maybe it's time I write an "introduction" of sort in the
 Automake-NG manual to explain the purpose and aims of it, as well as
 the major differences between it and mainline Automake ...)

> And where do the incompabilities come from?
>
Some of them are necessary to enable the use of desired GNU make
features; some of them are part of the deliberate trend of moving
knowledge and processing from Automake runtime to GNU make runtime;
and some of them are due to API changes that, while simple and easy
to adapt to, are either backward-incompatible, or unable to work
with portable make -- thus being in both cases unfit to go into
mainline Automake.

Most of such incompatibilities should be listed and explained in
the NG-NEWS file in the 'ng/master' branch of the Automake official
Git repository.

> E.g. would most of your changes work with the normal automake?
>
Some yes, some no.  If you want, I can separate my patch into a
"preparatory cleanup" that still works with mainline Automake (and
can thus go in the master branch of the Smalltalk repo), and a
further patch on the top of that which ports the build system to
Automake-NG (that should go only into the experimental branch I
suggested above).

Thanks,
  Stefano



reply via email to

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