Thread: Ant installation (and other) issues!
Per-Olof Norén writes: > The Ant build system is making its way to be a "de facto" standard for building java applications as > it is built for the purpose. Make as been the standard for building any application for about 30 years. GNU-style configure has been the standard for configuration management for about 10 years. Windows NT and Visual Basic have been the standard for enterprise computing for 5 years. Thank you very much. ;-) -- Peter Eisentraut peter_e@gmx.net http://funkturm.homeip.net/~peter
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On 21-Oct-2001 Peter Eisentraut wrote: > Per-Olof Nor�n writes: >> The Ant build system is making its way to be a "de facto" standard for >> building java applications as it is built for the purpose. > > Make as been the standard for building any application for about 30 years. > GNU-style configure has been the standard for configuration management for > about 10 years. Windows NT and Visual Basic have been the standard for > enterprise computing for 5 years. Thank you very much. ;-) And I thought Java was the standard for enterprise computering long before Visual Basic. :-) [Corba? What's Corba? CICS anyone?] I guess standards are what I use, and everyone else is violating them. ;-) [Sorry, couldn't resist...] Virtually, Ned Wolpert <ned.wolpert@knowledgenet.com> D08C2F45: 28E7 56CB 58AC C622 5A51 3C42 8B2B 2739 D08C 2F45 -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.0.6 (GNU/Linux) Comment: For info see http://www.gnupg.org iD8DBQE71Hn1iysnOdCML0URAtdAAJ9Zikvs/jCqqG6IG1I9ltdBukiIlACeJRtz QHCZWyBV04b/F7KabTA0Htc= =S1Xx -----END PGP SIGNATURE-----
Per-Olof Norén wrote: > Hi all, > > I have been listening to the discussions about Ant and the build system. > > I think that the discussion is missing a point, which I will try to make > here :-) > > > > 1. Standard > > The Ant build system is making its way to be a "de facto" standard for > building java applications as > > it is built for the purpose. > This may be the heart of the problem. Some people see Ant as problematic because it isn't the standard build tool used for Postgres. Others see make as problematic because it isn't a standard for building java applications (although I know of as many java apps built with make as with Ant personally). But the jdbc driver for postgres is both a postgres component and in java. thanks, --Barry
> Per-Olof Nor?n writes: > > > The Ant build system is making its way to be a "de facto" standard for building java applications as > > it is built for the purpose. > > Make as been the standard for building any application for about 30 years. > GNU-style configure has been the standard for configuration management for > about 10 years. Windows NT and Visual Basic have been the standard for > enterprise computing for 5 years. Thank you very much. ;-) A more important point is that we are not a java-only codebase. If we were, I could see a stronger argument for Ant. As it is now, we have to weigh using a Java-standard Ant vs. a PostgreSQL/C-standard makefile solution. -- Bruce Momjian | http://candle.pha.pa.us pgman@candle.pha.pa.us | (610) 853-3000 + If your life is a hard drive, | 830 Blythe Avenue + Christ can be your backup. | Drexel Hill, Pennsylvania 19026
* Peter Eisentraut <peter_e@gmx.net> wrote: | | Per-Olof Norén writes: | | > The Ant build system is making its way to be a "de facto" standard for building java applications as | > it is built for the purpose. | | Make as been the standard for building any application for about 30 years. | GNU-style configure has been the standard for configuration management for | about 10 years. Windows NT and Visual Basic have been the standard for | enterprise computing for 5 years. Thank you very much. ;-) I can't your point or the joke, please enlighten me ;-) make is AFAIK the most common build program, but that doesn't mean that the tool is ideal everywhere. Progress is possible you know, evolutionary or revolutionary. GNU Make has been evolutionary, Ant is revolutionary. configure management is certainly a lot more than configure. I would argue that CVS is the most important configuration management tool, but the issue is of course broader. But anyway this off topic, what need to have is a build process that works nicely and I think including the ant binaries(around 500k) would be the best solution here. -- Gunnar Rønning - gunnar@polygnosis.com Senior Consultant, Polygnosis AS, http://www.polygnosis.com/
On Sat, Oct 20, 2001 at 03:54:12PM +0200, Per-Olof Norén wrote: > Hi all, > I have been listening to the discussions about Ant and the build system. > I think that the discussion is missing a point, which I will try to make here :-) [ points for using Ant ] I would describe current JDBC build topic in 4 points: * What the JDBC developers find themselves comfortable with when developing the driver. This seems to be Ant-based build process. * What the PostgreSQL core developers find themselves comfortable with. This means keeping the overall PostgreSQL build process complexity down and making the general './configure;make;make install' as smooth as possible. As the rest of the PostgreSQL uses make, it would be simpler for them to use make for Java too. * Special case: general UN*X system, Java but no Ant. How probable this is? User probably wants to compile all of PostgreSQL distribution. One solution is to include Ant .jars in PostgreSQL source. * Special case: non-Unix system, Unix tools are hard to use, Ant is easier. How probable this is? User is hacking only JDBC. I sent a patch earlier which solves the above problems by using both Ant and make to compile JDBC: when driver is compiled with rest of the PostgreSQL, the build is make-only, but it also makes Ant-only build possible by preparing ant.cfg file with configure variables. But this has new problem: now two build systems must be maintained. Whether this is acceptable depends on how complex they are and how often they must be modified. I tried to keep the make variant as simple as possible: no dependencies need to be tracked specially, only few special files are mentioned explicitly. On what direction to take the final word must be said by JDBC developers, as they are most affected by it. -- marko
Gunnar =?iso-8859-1?q?R=F8nning?= <gunnar@polygnosis.com> writes: > But anyway this off topic, what need to have is a build process that works > nicely and I think including the ant binaries(around 500k) would be the > best solution here. 500k of binaries? You just lost the argument. That's not an acceptable amount of overhead to add to the Postgres distribution. regards, tom lane
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On 22-Oct-2001 Bruce Momjian wrote: > A more important point is that we are not a java-only codebase. If we > were, I could see a stronger argument for Ant. As it is now, we have to > weigh using a Java-standard Ant vs. a PostgreSQL/C-standard makefile > solution. Yes, which goes back to my original question. Would someone want to build the JDBC driver without building the rest of postgresql? If this is the case, then we need to make sure that we provide the tools needed build the JDBC driver in this type of environment. If this is not the case, then it doesn't/shouldn't matter, since the build is directly linked to postgresql. Let me ask people this question: Do we support building of the JDBC driver externally to building postgresql? Or, do we 'ship' or otherwise make available the various JDBC driver in pre-build jar/binaries? Up to this point, people have basically been expected to get the latest JDBC driver from CVS and re-build it. If this is expected to continue, I recomend making the JDBC driver easy to build outside of the postgresql project. However, if the releases will start to contain all the fixes from 7.2 and beyond, then it doesn't matter to non-postgresql developers as much. (It may still matter, but its less of a big deal.) (Personally, I love Ant as a development tool. But the quality of Ant isn't the issue here, its ease of development. Multiple build-tools can create confusion. If 'from now on', we don't expect individuals to build the JDBC driver on their own, but use binaries, than simplfying the build procedure by only using make should be fine.) Virtually, Ned Wolpert <ned.wolpert@knowledgenet.com> D08C2F45: 28E7 56CB 58AC C622 5A51 3C42 8B2B 2739 D08C 2F45 -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.0.6 (GNU/Linux) Comment: For info see http://www.gnupg.org iD8DBQE71KimiysnOdCML0URAmjZAJ9n4FjIXYrdN8rCvciEOSwag8QJZACfZhwO OYeJZf/BynzKO18trG5y9yM= =sDRr -----END PGP SIGNATURE-----
> Gunnar =?iso-8859-1?q?R=F8nning?= <gunnar@polygnosis.com> writes: > > But anyway this off topic, what need to have is a build process that works > > nicely and I think including the ant binaries(around 500k) would be the > > best solution here. > > 500k of binaries? You just lost the argument. That's not an acceptable > amount of overhead to add to the Postgres distribution. It is actually the libraries: #$ l /u/ant/lib/ total 650 -rw-r--r-- 1 root wheel 151 Oct 9 23:16 README -rw-r--r-- 1 root wheel 416389 Oct 9 23:16 ant.jar -rw-r--r-- 1 root wheel 196399 Oct 9 23:16 crimson.jar -rw-r--r-- 1 root wheel 33323 Oct 9 23:16 jaxp.jar -- Bruce Momjian | http://candle.pha.pa.us pgman@candle.pha.pa.us | (610) 853-3000 + If your life is a hard drive, | 830 Blythe Avenue + Christ can be your backup. | Drexel Hill, Pennsylvania 19026
* Tom Lane <tgl@sss.pgh.pa.us> wrote: | | Gunnar =?iso-8859-1?q?R=F8nning?= <gunnar@polygnosis.com> writes: | > But anyway this off topic, what need to have is a build process that works | > nicely and I think including the ant binaries(around 500k) would be the | > best solution here. | | 500k of binaries? You just lost the argument. That's not an acceptable | amount of overhead to add to the Postgres distribution. Maybe another reason to look into less monolithic approaches. Both in terms of project distribution and release cycles, I still think a decoupling the JDBC interface from the main distribution is a good idea ;-) -- Gunnar Rønning - gunnar@polygnosis.com Senior Consultant, Polygnosis AS, http://www.polygnosis.com/
Seems like the debate has flared again. ----- Original Message ----- From: "Tom Lane" <tgl@sss.pgh.pa.us> To: "Gunnar Rønning" <gunnar@polygnosis.com> Cc: "Peter Eisentraut" <peter_e@gmx.net>; "Per-Olof Norén" <pelle@alma.nu>; <pgsql-jdbc@postgresql.org> Sent: Tuesday, October 23, 2001 1:22 AM Subject: Re: [JDBC] Ant installation (and other) issues! > Gunnar =?iso-8859-1?q?R=F8nning?= <gunnar@polygnosis.com> writes: > > But anyway this off topic, what need to have is a build process that works > > nicely and I think including the ant binaries(around 500k) would be the > > best solution here. > > 500k of binaries? You just lost the argument. That's not an acceptable > amount of overhead to add to the Postgres distribution. I don´t see why the size of ant will be a problem. Could you please explain to me?
Why is this such a big issue? Shipping the Ant binary would be like shipping the make binary, which seems silly to me. However, I would far prefer to use Ant to build the JDBC driver. So, is it not possible to simply maintain a Makefile.in, and a build.xml, and then people can specify --with-java-ant or --with-java-make on the configure command line? And if you specify --with-java without specifying a build tool, then it uses make. And the build.xml should be for the current production version of Ant, unless otherwise agreed by the developers for some or other good reason.
At the end of the day, there are some versions of make which just won't build Postgres, because of some or other proprietary stuff, or because they are buggy, or whatever. Same goes for Ant. If you want to use Ant, you either use the latest production release, or you're on your own.
What's the big deal? I'm sure there is at least one person in each 'camp' who is willing to maintain the Makefile.in or build.xml respectively. Isn't there?
MikeA
-----Original Message-----
From: Per-Olof Norén
To: Gunnar Rønning; Tom Lane
Cc: pgsql-jdbc@postgresql.org
Sent: 10-23-01 9:38 AM
Subject: Re: [JDBC] Ant installation (and other) issues!
Seems like the debate has flared again.
----- Original Message -----
From: "Tom Lane" <tgl@sss.pgh.pa.us>
To: "Gunnar Rønning" <gunnar@polygnosis.com>
Cc: "Peter Eisentraut" <peter_e@gmx.net>; "Per-Olof Norén"
<pelle@alma.nu>;
<pgsql-jdbc@postgresql.org>
Sent: Tuesday, October 23, 2001 1:22 AM
Subject: Re: [JDBC] Ant installation (and other) issues!
> Gunnar Rønning <gunnar@polygnosis.com> writes:
> > But anyway this off topic, what need to have is a build process that
works
> > nicely and I think including the ant binaries(around 500k) would be
the
> > best solution here.
>
> 500k of binaries? You just lost the argument. That's not an
acceptable
> amount of overhead to add to the Postgres distribution.
I don´t see why the size of ant will be a problem. Could you please
explain
to me?
---------------------------(end of broadcast)---------------------------
TIP 6: Have you searched our list archives?
http://archives.postgresql.org
This e-mail and any attachments are confidential and may also be privileged and/or copyright
material of Intec Telecom Systems PLC (or its affiliated companies). If you are not an
intended or authorised recipient of this e-mail or have received it in error, please delete
it immediately and notify the sender by e-mail. In such a case, reading, reproducing,
printing or further dissemination of this e-mail is strictly prohibited and may be unlawful.
Intec Telecom Systems PLC. does not represent or warrant that an attachment hereto is free
from computer viruses or other defects. The opinions expressed in this e-mail and any
attachments may be those of the author and are not necessarily those of Intec Telecom
Systems PLC.
This footnote also confirms that this email message has been swept by
MIMEsweeper for the presence of computer viruses.
On Mon, 22 Oct 2001 19:22:19 -0400, Tom Lane wrote: >500k of binaries? You just lost the argument. That's not an acceptable >amount of overhead to add to the Postgres distribution. Why? 500K can easily fit on a floppy, and that's technology from the 1980's. Regards, René Pijlman <rene@lab.applinet.nl>
Because many developers of postgres work over dialup modems at speeds of 32k. 500KB over a 32Kb line is a problem. Especially if you aren't even planning on using jdbc, you still pay the price when doing a CVS checkout. --Barry Rene Pijlman wrote: > On Mon, 22 Oct 2001 19:22:19 -0400, Tom Lane wrote: > >>500k of binaries? You just lost the argument. That's not an acceptable >>amount of overhead to add to the Postgres distribution. >> > > Why? 500K can easily fit on a floppy, and that's technology from > the 1980's. > > Regards, > René Pijlman <rene@lab.applinet.nl> > > ---------------------------(end of broadcast)--------------------------- > TIP 4: Don't 'kill -9' the postmaster > >