comp.lang.ada
 help / color / mirror / Atom feed
From: Tapio Kelloniemi <spam12@thack.org>
Subject: Re: GNAT and GNU build system
Date: Wed, 04 Aug 2004 20:29:20 GMT
Date: 2004-08-04T20:29:20+00:00	[thread overview]
Message-ID: <AGbQc.1105$I52.175@reader1.news.jippii.net> (raw)
In-Reply-To: cer1es$6dp$1@a1-hrz.uni-duisburg.de

Georg Bauhaus <sb463ba@l1-hrz.uni-duisburg.de> wrote:
>Mark H Johnson <mark_h_johnson@raytheon.com> wrote:
>: Just because autoconf / automake are popular with some free software
>: products does not make it a "defacto standard".
>
>Yea. In addition, the moment you have to deviate only slightly
>from what the automake users have thought of in advance, it becomes
>an automess. (BTDT many times, auto*/configure has a very low
>threshold for the arousal of anger in non-standard(!) environments.

Building some non-autoconfized projects with custom compiler flags 
almost requires a full rewrite of their huge Makefile suites.

>All the more when a bunch of dependences is unnecessary
>and only caused be a miminal-effort lazy automake setup.)
>
>GNAT, or IOW the Ada part of GCC, has a way of automatically knowing
>about Ada libraries, through the contents of ada_*_path files in the
>installation directories.

GCC itself has a specs file which contains default include directories 
and ld has /etc/ld.so.conf file on Unix.
If GNAT would use these, writing these extra files (and changing them 
whenever GCC is updated) is just more silly effort.

>In my view the automake phenomenon (a euphemism) works very similar
>to a selffulfilling prophecy. ("Just install GNU and a number of
>scripting languages on your system, the latest versions, please,
>and then run autoxyz, you can then compile the software. See how
>nice it works? Oh, there is no GNU on your system? Well... uhm,
>you can also have a prebuilt hassle-free binary...")

First, building software does not require these autotools to be 
installed, it is the whole point of them. Secondly configure and 
automake generated Makefiles only use the tools that are the most common 
(they don't even suppose that mkdir -p works correctly). When GNU 
programs are required are the situations were all other implementations 
are silly or just incompatible with each others in way that cannot be 
resolved easily. It is the responsib9ility of the package provider, not 
to generate dependicies to the scripting languages you mentioned. The 
ones which are sometimes needed are awk and Perl and sh of course.

>If a multitude of C libraries cannot be built without
>autotools, I don't see many reasons why this should be made
>true of Ada libraries as well.

I can't see why the aproach, "install this to /usr/ADALIBRARY and adjust 
your ada_*_paths and environment variables, or copy your files by hand 
and oops, the paths were hardwired", would be better than running 
configure.

>On a related issue, many (young?) programmers seem to think
>that #ifdef _THIS_HEADER_ is a good thing. OTOH, the UNIX gurus
>who have also made Plan 9 and related programs have avoided this
>style of programming.
>I think that working on removing #ifdefs from C files will
>do good to almost every C program. The same is true if you
>put some effort into a program that can be easily configured
>without autotools. The time needed will come back later, many
>times.

Perhaps, but learning a separate configuration method for each lib and 
app is a hell to a system administrator. Somebody might like a GUI 
configuration tool and developer will use weeks to get it working on 
every platform, but somebody would like to run a script and see their
system built.

-- 
Tapio



  parent reply	other threads:[~2004-08-04 20:29 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-08-03 19:36 GNAT and GNU build system Tapio Kelloniemi
2004-08-03 20:12 ` Jerome Hugues
2004-08-04  2:05 ` Lutz Donnerhacke
2004-08-04  7:49   ` Tapio Kelloniemi
2004-08-04 13:33     ` Mark H Johnson
2004-08-04 16:04       ` Georg Bauhaus
2004-08-04 19:21         ` Ludovic Brenta
2004-08-04 20:29         ` Tapio Kelloniemi [this message]
2004-08-05  2:15           ` Georg Bauhaus
2004-08-06 10:26             ` Stephen Leake
2004-08-06 15:36               ` Georg Bauhaus
2004-08-14  6:00                 ` Tapio Kelloniemi
2004-08-14 11:32                   ` Ludovic Brenta
2004-08-14 14:41                   ` Georg Bauhaus
2004-08-04 20:06       ` Tapio Kelloniemi
2004-08-04 20:34         ` Ludovic Brenta
2004-08-04 22:11           ` Stephen Leake
2004-08-05  8:50             ` Tapio Kelloniemi
2004-08-08 14:45               ` Ludovic Brenta
2004-08-10 16:18                 ` Nick Roberts
2004-08-12 13:56   ` Florian Weimer
2004-08-13 15:52     ` Lutz Donnerhacke
2004-08-04 22:06 ` Stephen Leake
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox