<!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-17 at 14:13 -0400, Trevor Woerner wrote:<BR>
<BLOCKQUOTE TYPE=CITE>
    <BR>
    <TT><FONT COLOR="#1a1a1a">Pull out the repository (i.e. git) functionality from the build script.</FONT></TT><BR>
    <TT><FONT COLOR="#1a1a1a">Provide a separate script for running arbitrary commands in each of the</FONT></TT><BR>
    <TT><FONT COLOR="#1a1a1a">modules which are built.</FONT></TT><BR>
</BLOCKQUOTE>
<BR>
I like the idea, but not how it is implemented. Guess what, we use to have 2 scripts, one to do clone/pull and build.sh without git operations. Do you know why the git functionality has been merged into build.sh? Because each script contained it's own list of modules which is a pain to maintain.<BR>
<BR>
You intuitively bridged the gap by writing the module set to a build.modules file to feed build.sh. That's one step forward compared to what we had. The downer is that the user would now have 3 files to worry about and how they relate to each other. Each script having its own set of options to memorize. You need to write instructions and so on.<BR>
<BR>
Consider future extensibility, what if you want to use sed to make global changes to a larger set of modules, or run lint-like script to report possible Makefile issues. <BR>
<BR>
I came close to making a suggestion, as I have been thinking about this for a while. The angle I was contemplating is to isolate the module list in file (data only) and have as many scripts as required to provide as many features as desired. All directed from build.sh with one easy to use interface. The module list can be generated in the case of first time use.<BR>
<BR>
I think jhbuild uses this concept of module set. In build.sh, having just one module list does not suit all purposes. There could be a list for those who only want to build the server and its dependencies.<BR>
<BR>
This is a bigger project than it looks, but we are at that point where build.sh can hardly be improved without significant rework if we want to keep its ease of use.<BR>
<BR>
If you add pluggable module list and a unified user interface to what you did, it would complete the picture.<BR>
<BR>
Gaetan
</BODY>
</HTML>