[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH] config.guess: Detect Android (as opposed to GNU/Linux)
From: |
Dmitry V. Levin |
Subject: |
Re: [PATCH] config.guess: Detect Android (as opposed to GNU/Linux) |
Date: |
Tue, 19 Sep 2023 10:11:33 +0300 |
On Thu, Aug 17, 2023 at 11:49:32AM +0200, Bruno Haible wrote:
> Hi,
>
> Here's a patch to recognize Android environments.
>
> Such environments are "apps" with POSIX-like tools. Today, the most frequently
> used one is Termux [1][2][3]; on devices with Android versions before 5.0
> one can use Terminal-IDE [4][5].
>
> config.sub already supports this environment:
>
> $ sh config.sub armv7l-linux-androideabi
> armv7l-unknown-linux-androideabi
>
> I've built many GNU packages in this environment, with the following recipe:
> CONFIG_SHELL=$PREFIX/bin/sh; export CONFIG_SHELL
> CC="clang -ferror-limit=0" CXX="clang++ -ferror-limit=0"; export CC CXX
> ./configure --host=armv7l-linux-androideabi --prefix=$HOME/local
>
> The Termux people have compiled or ported more than 1000 packages as well [6].
>
> But the requirement to pass the --host parameter each time is an annoyance.
> Without it, based only on the results of uname, config.guess guesses
>
> $ sh config.guess
> armv7l-unknown-linux-gnueabi
>
> and many configuration results are wrong (because Android has many functions
> in libc without declaring them in the .h files, depending on the so-called
> "Android API level"), leading to many compilation errors.
>
> With the attached patch, it produces
>
> $ sh config.guess
> armv7l-unknown-linux-androideabi
>
> The patch does not include an addition to the config.guess test suite, since
> the uname values are:
> $ uname -m
> armv7l
> $ uname -r
> 4.19.127
> $ uname -s
> Linux
> $ uname -v
> #1 SMP PREEMPT Tue Apr 4 16:54:58 IST 2023
> $ uname -p
> unknown
> which maps to armv7l-unknown-linux-gnueabi.
Applied, thanks.
--
ldv
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- Re: [PATCH] config.guess: Detect Android (as opposed to GNU/Linux),
Dmitry V. Levin <=