Re: [PATCHES] Ant configuration

From: Peter Eisentraut <peter_e(at)gmx(dot)net>
To: Dave Cramer <Dave(at)micro-automation(dot)net>
Cc: <pgsql-jdbc(at)postgresql(dot)org>
Subject: Re: [PATCHES] Ant configuration
Date: 2001-10-20 09:28:01
Message-ID: Pine.LNX.4.30.0110191839300.640-100000@peter.localdomain
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-jdbc pgsql-patches

Dave Cramer writes:

> The one issue I have with a non ant based build system is that it makes
> it difficult to build the driver on a windows machine.

That is a valid concern that we're going to have to think about
before we move to another method.

> What problems does ant present?

* Ant needs to be installed. Of course this is not that much of a
problem because you can simply install it. However, in automated build
environments this might not be so easy, so people are just going to opt to
leave out the JDBC driver.

* Ant doesn't provide an exit status; you have to watch the build to see
if it works. This is unacceptable.

* Ant is buggy. We've had numerous reports of people having trouble
with it for no apparent reason. I can also confirm from my own experience
that numerous things don't seem to work the way they should work.

* In numerous attempts I have failed to convince Ant to place the built
files in a tree different from the source tree. This really makes it a
pain to build for multiple architectures (in Java, architecture =
different jdk).

* Ant doesn't support gcj last I checked. This is a real tragedy because
gcj is the only free(tm) Java compiler available that seems to have a real
future. Ant doesn't support Kaffe very well, btw.

* The Ant language is not nearly as powerful as the stuff you can do in
Makefiles.

* Ant is, well, different. I have personally spent a lot of effort to
make all parts of PostgreSQL build the same way. Every new language has
to reinvent configuration and build management: Perl MakeMaker -- total
junk, Python distutils -- no thanks, Tcl -- well, at least they had the
right idea. Ant -- one more thing to go wrong. Currently, everything you
want to switch and change about the build of PostgreSQL you communicate to
the configure script. How do you change the Java compiler? Good question
-- not even the Ant manual can answer that because it depends on your
particular distribution.

The problem is that Ant is a completely new and different tool that we
have to deal with, but it doesn't actually solve a problem that hasn't
been solved already.

--
Peter Eisentraut peter_e(at)gmx(dot)net http://funkturm.homeip.net/~peter

In response to

Responses

Browse pgsql-jdbc by date

  From Date Subject
Next Message Peter Eisentraut 2001-10-20 11:45:57 Re: Whatever ... JDBC build patch
Previous Message Gunnar Rønning 2001-10-20 02:23:59 Re: [PATCHES] Ant configuration

Browse pgsql-patches by date

  From Date Subject
Next Message Gunnar Rønning 2001-10-20 12:05:28 Re: [PATCHES] Ant configuration
Previous Message Bruce Momjian 2001-10-19 15:00:08 Re: Patch to fix memory leak in fetch in Python interface.