[UBI] Remove autotools from ubi-utils

Frank Haverkamp haver at vnet.ibm.com
Mon Jun 19 08:27:26 EDT 2006


Hi Josh,

On Wed, 2006-06-14 at 23:02 -0500, Josh Boyer wrote:
> Hi,
> 
> Take a look at the 'haver' branch of my mtd-utils tree.  It contains
> the ubi-tools import that Frank did, and the start of removing the
> autotools crap from them.
> 
> http://git.infradead.org/?p=users/jwboyer/mtd-utils;a=shortlog;h=haver
> 
> Next step would be to finish the standalone Makefiles, then add a
> couple toplevel Makefiles so that the ubi tools get built with the
> rest of the mtd-utils.
> 
> If this isn't the direction that people want to go with this, that's
> fine.  But until someone comes up with something better, it's a start.
> 
> I'll be out of town for the next few days, so responses will be limited.
> 
> josh

I saw your patches and figured that we should discuss an overall
strategy, what we want to do in which fashion. When Oliver started the
change to automake he had in mind, that he needed to provide libraries
for our users. So he made libraries for everything. Some of the utils
share the same libs. Finally (if you look at the configuration) the idea
with the shared libs did not fully work out. I had to change some apps
to be statically linked to get properly working binaries (automake
produced bash scripts and a .bin/... directory which was not what I
wanted). Olli was not there anymore and I did not took the time to
investigate if this could have been solved differently.

Now since you proposed to remove automake stuff and I do not
know how to maintain it, I agree with you that we should replace it
by something easier looking and better maintainable.

When looking at it, I would assume that we should take care that the
following stuff is resulting from the build:

Tools:
* ubimkvol
* ubirmvol
* ubiwritevol - Artem liked the name ubiupdatevol better
* mkpfi
* ubimirror
* nand2bin
* mkpfi
* pfiflash
* pfi2bin
* ubigen
* unubi
* pddcustomize
* mkbootenv

Libraries (or linked into the apps?):
* libubi

I wonder where we put ECC and CRC, error printout logic? We can link the
object files to the applications, or put them in a library, whatever. I
think the code is very very small, so linking it into the apps has the
advantage that we would not have to tweak library paths which I consider
to be a big evil.

My opinion is that we probably want to push all src into one directory 
and the interface .h also in one. The non interface .hs we should put in
the src directory too. What the makefile is concerned about I would
prefer only one if possible, if we can somehow manage to be simple
enough. Or multiple small ones including some reasonable Rules.mk files.

Artem wanted to beautify libubi, but that is something different.

Let us discuss tomorrow how we want to continue.

Frank







More information about the linux-mtd mailing list