automake
[Top][All Lists]
Advanced

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

Re: config.guess and freedom (was: 1.8 and mkdir_p)


From: Harlan Stenn
Subject: Re: config.guess and freedom (was: 1.8 and mkdir_p)
Date: Tue, 13 Jan 2004 13:31:02 -0800

I bet you have never tried to deploy this in the real world in an
environment with a useful number of heterogeneous OS installations running
at different OS rev levels.

In my experience this simply doesn't scale.  Especially if it gets used in
somebody's shell RC files.

Your approach still "special cases" linux distributions, and is still
limited to detecting libc versions.  There are a lot of other places this
can be be useful, and requiring separate tests for what is generally
determinable by using the OS name and version (distribution name for linux)
has been a far faster and simpler way to go in my experience.

H
--
> Harlan Stenn wrote:
> 
> > If the releases are all that similar, why not use:
> >
> >  i686-GnuLinux-*
> >
> > as your test, and provide the "popular" distributions in the 3rd field?
> 
> This is a little more reasonable, since it allows to check for Linux with
> a single test. But the fundamental problem remains: your proposal still makes
> it hard to fork a new distribution.
> 
> > for specifying
> > what OS partition to mount for automounters, just to name one example.
> 
> An autoconf test should do it: Test for /afs, /auto and similar.
> 
> > Different OS versions often have different libc versions (for example), so
> > while it may be easy to run a SunOS5 binary on later versions of the OS, it
> > may not be possible to run a SunOS9 binary on earlier versions of the OS.
> 
> This too is best made with an autoconf test. Find attached an autoconf
> test for glibc >= 2.1. You can adapt it to test for any glibc version.
> 
> Bruno
> 
> 
> =======================================================================
> # glibc21.m4 serial 2 (fileutils-4.1.3, gettext-0.10.40)
> dnl Copyright (C) 2000-2002 Free Software Foundation, Inc.
> dnl This file is free software, distributed under the terms of the GNU
> dnl General Public License.  As a special exception to the GNU General
> dnl Public License, this file may be distributed as part of a program
> dnl that contains a configuration script generated by Autoconf, under
> dnl the same distribution terms as the rest of that program.
> 
> # Test for the GNU C Library, version 2.1 or newer.
> # From Bruno Haible.
> 
> AC_DEFUN([jm_GLIBC21],
>   [
>     AC_CACHE_CHECK(whether we are using the GNU C Library 2.1 or newer,
>       ac_cv_gnu_library_2_1,
>       [AC_EGREP_CPP([Lucky GNU user],
>       [
> #include <features.h>
> #ifdef __GNU_LIBRARY__
>  #if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 1) || (__GLIBC__ > 2)
>   Lucky GNU user
>  #endif
> #endif
>       ],
>       ac_cv_gnu_library_2_1=yes,
>       ac_cv_gnu_library_2_1=no)
>       ]
>     )
>     AC_SUBST(GLIBC21)
>     GLIBC21="$ac_cv_gnu_library_2_1"
>   ]
> )
> 




reply via email to

[Prev in Thread] Current Thread [Next in Thread]