lmi
[Top][All Lists]
Advanced

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

Re: [lmi] An initial step toward using 'config.guess' more generally


From: Greg Chicares
Subject: Re: [lmi] An initial step toward using 'config.guess' more generally
Date: Wed, 25 Sep 2019 00:13:13 +0000
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.9.0

On 2019-09-23 18:06, Vadim Zeitlin wrote:
> On Mon, 23 Sep 2019 17:40:21 +0000 Greg Chicares <address@hidden> wrote:
[...]
> GC> On our redhat server, installing libtool places config.guess
> GC> in a different location that on my debian box. Everywhere
> GC>   /usr/share/libtool/build-aux/whatever
> GC> is mentioned in lmi's build system, redhat uses
> GC>   /usr/share/libtool/config/whatever
> GC> instead.
> 
>  Note that this is not the only possible location of this file, e.g.
> this thread[*] lists all of the following locations:
> 
>       /usr/lib/rpm/redhat/config.guess
>       /usr/share/libtool/config/config.guess
>       /usr/lib/rpm/config.guess
>       /usr/share/dejagnu/libexec/config.guess
>       /usr/share/automake-1.13/config.guess
> 
> So it looks like the closest equivalent to the Debian path would be
> 
>       /usr/share/libtool/config/config.guess
> 
> but it almost certainly doesn't matter which one do you use anyhow.

I did this manual replacement on the redhat server:

- /usr/share/libtool/build-aux/config.guess
+ /usr/share/libtool/config/config.guess

but my build logs show that I didn't succeed in replacing every
occurrence. A much more reliable workaround would be to copy or
link the file from its redhat location to its debian location;
I think I'll do that in future.

> GC> For now at least, I've just modified it by hand on the redhat box.
> 
>  I think the only better solution is to use "automake --add-missing" to
> actually copy the files that it uses to lmi directory. This could be done
> by running (the already existing, although not really necessary, because
> autoreconf does the same thing anyhow) autogen.sh script. The main drawback
> of doing it is that you need to have auto{conf,make} and libtool installed.
> But it's not really such an onerous requirement for any Linux system.

Well...I tried that, but I didn't much like the result--it
wrote other files that I don't want--so I deleted them and
committed it...on a branch, because I wasn't happy with
this approach in general. Here's why:

/opt/lmi/src/lmi[0]$grep -rl 'build-aux.*config.guess' * |wc -l
11

Some of those occurrences are in scripts that would usually
be run in the lmi source directory, but not all. Replacing
  /usr/share/libtool/build-aux/config.guess
with a hardcoded
  /opt/lmi/src/lmi/config.guess
just makes it harder to make '/opt/lmi/' reconfigurable.

(And when I committed that on a branch, I saw a surprising
file mode:

  [odd/guess_config 3475525a] Import 'config.guess'
   2 files changed, 89 insertions(+), 75 deletions(-)
   create mode 120000 config.guess

so what I committed was actually:

  /opt/lmi/src/lmi[0]$ls -l config.guess
  lrwxrwxrwx 1 greg greg 37 Sep 24 13:35 config.guess -> 
/usr/share/automake-1.16/config.guess

and I'll be interested to examine that after I push it, to
see exactly what's in the git repository--I guess it'll be
a dangling symlink on a system that doesn't have
  /usr/share/automake-1.16/config.guess
Yes--there it is:

  https://git.savannah.nongnu.org/cgit/lmi.git/commit/?h=odd/guess_config
diff --git a/config.guess b/config.guess
new file mode 120000
index 0000000..7c53173
--- /dev/null
+++ b/config.guess
@@ -0,0 +1 @@
+/usr/share/automake-1.16/config.guess
\ No newline at end of file

so I'm really glad it's just a throwaway branch.

> [*] 
> https://lists.fedoraproject.org/archives/list/address@hidden/thread/FLPQOSAGBR73HLE36TNF25IALH6VDQWE/

Fascinating. I kind of understand the POV that every project
should be completely autotoolized, and then no problem exists.
But OTOH we used to use a combination of parsing `uname`
output and testing the GNU triplet, yet it's not satisfactory
to get the same information in different ways, so I replaced
'uname' with 'config.guess' almost everywhere.

The problem is that
  $ uname
works probably everywhere, but
  $ config.guess
doesn't. I had hoped that
  $ /debian/path/to/config.guess
would work on any system that has autotools installed, but
such is not the case.

I'm tempted to install the latest gnu.org version (using the
'wget' command here:
  https://www.gnu.org/software/gettext/manual/html_node/config_002eguess.html
, which fetches a newer version than `automake --add-missing`
gave) into /etc/opt/lmi/ , but that doesn't seem to be worth
the bother.



reply via email to

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