[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: [RFC] GNU autoconf and dpkg-architecture



On Sat, Feb 09, 2002 at 08:01:52AM -0200, Henrique de Moraes Holschuh wrote:
> On Sat, 09 Feb 2002, Steve M. Robbins wrote:
> > >       Update config.sub and config.guess to the ones in latest sid's
> > >       autotools-dev, don't touch anything else.
> > 
> > Maybe it's just me, but this seems like the safest and easiest route.
> 
> I'd rather have this crap done right than done the "easiest" way. 
> Easiest is for wimps, lazy-butts and NMUs where one is not really sure of
> what one's doing.

Oh, okay: you have completely convinced me with your brilliant
and technical argument!  ;-)

You can call me a wimp if you like, but I prefer to see myself as
pragmatic.  People are very busy.  If Joe Developer gets a bug report
that his package cannot be built on the newest whiz-bang hardware
(used by 5 people worldwide), and he is presented with a large case
analysis that involves checking which version of autoconf was used to
create the configure script, and whether the package runs autoconf
during the build, he will be inclined to put it off until (much)
later.

On the other hand, if the first option is: "copy updated
config.{guess,sub} and re-upload", it will get done sooner.
Not only is this much easier, it is completely safe, barring
bugs in the config.guess script.


As I understand it, your recommendations involve specifying --host
unconditionally.  However, it is not at all clear that this is safe.
At one point
[http://lists.debian.org/debian-devel/2002/debian-devel-200202/msg00653.html]
you affirmed it was:

	Autoconf 2.52 states that it will compare --build and --host,
	and enter crosscompiling mode only if they differ.

but I couldn't find that in the autoconf documentation.  Moreover,
a recent message from Akim Demaille (the lead autoconf developer)
[http://sources.redhat.com/ml/autoconf/2002-02/msg00059.html]
indicated otherwise:

	- passing --host means you cross compile (whatever the relationship
	  between host and build)

If it is true that using --host is perilous, then when Joe Developer
gets into trouble with this, much frustration and "blame autoconf"
messages will ensue.  The packages will get fixed even more slowly.


> You will notice, however, that just updating config.sub/.guess fixes an RC
> bug (does not build on MIPS/MIPSEL) but does not fixes a normal bug (does
> not abide to policy 'should' rule).  

You are referring to 2.4.3/12.1?  

  2.4.3
  You should make sure that the configure utility detects the correct
  architecture specification string (refer to Architecture
  specification strings, Section 12.1 for details).

  12.1
  If a program needs to specify an architecture specification string
  in some place, the following format should be used: arch-os.

Notwithstanding the fact that 12.1 has been acknowledged to be an error
[http://lists.debian.org/debian-devel/2002/debian-devel-200202/msg00307.html],
it also says *if*.  Taking the least-change route of updating
config.{guess,sub} will not result in violation of any debian policy
for the large majority of packages that do NOT use canonical host for
anything.


> It is NOT as good a solution as the other ones.
> And it will require a new update to the package the next time config.guess
> breaks.

True, and it would be good to avoid this.  But we want to make sure
the cure is not worse than the disease.

-S

-- 
by Rocket to the Moon,
by Airplane to the Rocket,
by Taxi to the Airport,
by Frontdoor to the Taxi,
by throwing back the blanket and laying down the legs ...
- They Might Be Giants



Reply to: