<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 TRANSITIONAL//EN">
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=UTF-8">
<META NAME="GENERATOR" CONTENT="GtkHTML/3.26.0">
</HEAD>
<BODY>
On Fri, 2010-09-24 at 15:20 -0400, Trevor Woerner wrote:
<BLOCKQUOTE TYPE=CITE>
<PRE>
On Fri, Sep 24, 2010 at 3:00 PM, Gaetan Nadon <<A HREF="mailto:memsize@videotron.ca">memsize@videotron.ca</A>> wrote:
> On Fri, 2010-09-24 at 00:15 -0400, Trevor Woerner wrote:
> Removal of existing options should be discussed separately.
> Providing a generic way of performing tasks (the --cmd) does not mean
> making it harder to perform common tasks.
I'm not trying to make it harder to perform the common tasks, it just
cleans up the code considerably.
</PRE>
</BLOCKQUOTE>
I was warning about making user interface changes based on internal code issues.<BR>
Users look at the options to find out capabilities. They may not know which one is a git<BR>
command and which one is a make command. We must make it easy for new contributors.<BR>
This does not imply that what we have today is the best.<BR>
<BR>
<BLOCKQUOTE TYPE=CITE>
<PRE>
Before I started looking into the build script, if the user specified
the "--clean" option the script would (for every repository) perform:
1. configure
2. make
3. make clean
4. make install (which essentially performs a "make" again followed by
an install)
Also, if the user specified the "-d" and the "--clean" options the script would:
1. configure
2. make
3. make clean
4. make distcheck
5. make install
I think it's crazy that the script chooses the order in which the
commands get run.
</PRE>
</BLOCKQUOTE>
Now we are talking about behavior changes which needed a change in user interface.<BR>
It's not code cleanup here, it's function change.<BR>
<BR>
I had not realized the impact of the code change. I suggest you make this function<BR>
in a separate patch.<BR>
<BR>
I have some comments/information on that topic, but I will postpone.<BR>
<BR>
<BLOCKQUOTE TYPE=CITE>
<PRE>
> Not everyone knows automake in details, much less functions like "dist" and
> "distcheck".
If a user doesn't know enough to know what "make distcheck" is, then
there's no way having a "-d : run make distcheck in addition to
others" option is going to make it any clearer to them :-)
Leaving that code and those options in is almost pointless, it would
be less work to just add the couple more make targets which are
missing rather than implementing a generic infrastructure to run any
arbitrary make command. If a user doesn't know what they're doing
chances are they want "make install", which is the default. If they
know enough to know they want to run "make distcheck" they would know
enough to be able to supply it on the commandline. Having a "-d"
option so the script will:
1. configure
2. make
3. make distcheck
4. make install
is not efficient.
</PRE>
</BLOCKQUOTE>
<BR>
The removal of options, whether it's one or more is not related to "Perform arbitrary git<BR>
or make commands" implies the *addition* of a new feature. It may open opportunities<BR>
for further improvements/removal which need to be discussed.<BR>
<BR>
After writing all this, I realize I was expecting a new feature while the rest remained the same.<BR>
That explains why my comments probably did not make much sense to you.<BR>
<BR>
I suggest you add the new feature, and only the new feature. Once reviewed and in place,<BR>
it would be easier to suggest additional improvements/removal.<BR>
<BR>
<BR>
</BODY>
</HTML>