[Israel.pm] Installer for a Perl and Web Meta Language based program.

Mikhael Goikhman migo at homemail.com
Wed Apr 14 15:26:27 PDT 2004


On 14 Apr 2004 22:41:17 +0300, Shlomi Fish wrote:
> 
> You probably misunderstood me. I said at the beginning that I am using 
> Autoconf+Automake now, and did not like it and then you recommended me to 
> using them, and also gave me an AC/AM 101 on how to do it. (which wasn't 
> necessary, because I already discovered it myself using trial and error and 
> reading the docs).

I know this. Just wanted to suggest that auto-tools are still the best
solution for your requirements.

> The problem with Autoconf and Automake is that it takes too damn long to 
> prepare the program for testing. I need to:
> 
> 1. Create a dist. (make distdir)
> 
> 2. cd there and invoke configure with a prefix set to a local directory
> 
> 3. "Compile" and install everything which is a recursive make.

You can't skip any of these steps regardless of the build system used if
you want to test that your released tarball is useful.

However you don't need to create releases often. To test the day-to-day
work you may arrange your source tree similarly to the install tree and
support running your program from both the source tree and the installed
directory. This way the testing is fast, you just need "make" and
probably minor tweaks in code. With non-large Perl/WML projects "make"
should take almost no time even if run from the top directory.

> Another factor is that some of my tests are written in bash and are very 
> comprehensive and so are kind of slow. But that can be fixed. Still, the 
> preparation time for the testing is noticable.
> 
> One option to fix it would be to generate my own custom Makefile.in which 
> would later be processed by ./configure to create Makefile. (and so ditch 
> automake). This solution works quite well for the Subversion people where 
> Greg Stein wrote a build system generator in Python. (I can do it with perl). 
> And I had positive experiences with the speed scalability of a centralized 
> makefile architecture. (there's also Peter Miller's "Recursive Make 
> Considered Harmful" article which I haven't read yet[1] ).

I don't know. If recursive make causes any problems then probably
division to directories was bad. Being able to work in subdirectories is
a very strong advantage of auto-tools with their separate Makefiles.

> Still, it would be quite a lot of work on my part, and I'll have to think how 
> I can resolve all the issues I put forth with it effectively. I'm hoping to 
> avoid that.

Many people write their own custom build systems, however they can't be
as universal as autoconf/automake, without spending the same number of
years on their development. And I don't completely satisfied with
auto-tools either. At least both automake tools and now autoconf tools
are mostly written in Perl. :)

Regards,
Mikhael.

-- 
perl -e 'print+chr(64+hex)for+split//,d9b815c07f9b8d1e'



More information about the Perl mailing list