Go Back   ZeroC Forums > Comments

Reply
 
LinkBack Thread Tools Rate Thread Display Modes
  #1 (permalink)  
Old 02-20-2003
dthomson dthomson is offline
Registered User
 
 
Join Date: Feb 2003
Location: Brisbane, Australia
Posts: 34
autoconf makes things difficult to build

Hi,

Just registering my "nay" vote for any use of autoconf.

Firstly, autoconf in particular and the GNU autotools in general, are a rats nest of macros and incompatible technologies. If it works for you as a user, it looks fine. If it doesn't, and the developer hasn't provide a working set of options for your case, you are basically hosed - unless you like debugging M4 macros, the bizarre automake notation, make rules, shell script and assorted sed fragments not just one at a time, but concurrently - as it is layer upon layer of macros generating other macros that generate other macros! I think it's passed beyond the point where any one person can possibly understand all of it, and the subtle implications of the effects of the different tools on one another.

On my last project we used automake, autoconf and libtool as the basis for the build system - and to a man the developers wanted to take it out and burn it. We spent days sometimes making it do the simplest things, or *not* do the strangest things. Of course, given the amount of effort it would take to go back, it just couldn't happen. So we had no choice but to struggle on with the auto* junk.

Also, the philosophy of autoconf is wrong IMO. Playing guessing games to determine what is available on the target system is dangerous. I'd much prefer specifying it correctly up front and knowing exactly what's going on.

For example, the FreeBSD project uses just plain Makefiles. There's a top level Makefile that contains definitions that is included by all the rest, and you just modify that to say where you expect things to be.

In conclusion, to build Ice, you just make sure those few variables in Make.rules are set the way you want, and then type "make" followed by "make install". I don't see how it could be any easier than that.

If the Ice team wants to change to GNU autotools, that's their decision, but I just built Ice against a non-supported version of xerces and openssl, and I'm pretty sure if I'd tried that in an autotools build system I would have failed and given up in disgust.

And it absolutely will not make it any easier to port to Solaris or anywhere else. More difficult, if anything, if it turns out the autoconf M4 macros are broken for that platform, as is a frequent occurence in my experience

Phew, that was a long rant! Just my .02c worth.

Regards,
Derek.
Reply With Quote
Reply



Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools
Display Modes Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is Off
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On

Similar Threads
Thread Thread Starter Forum Replies Last Post
IceGridGui doing weird network things (IPv6 related?) mefoster Bug Reports 3 11-08-2006 07:27 PM
Build issue with 3.1 ctennis Bug Reports 2 07-13-2006 07:57 AM
Unable to build demoj using supplied build.xml files vsonnathi Bug Reports 1 10-21-2004 12:34 PM
Pre-Build needs no spaces! Wayetender Bug Reports 6 08-17-2004 06:40 PM
autoconf makes things easy to build marlowa Comments 0 02-19-2003 05:24 PM


All times are GMT -4. The time now is 12:54 PM.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.0.0
(c) 2008 ZeroC, Inc.