[Buildroot] [PATCH v8 1/1] mosh: new package
Thomas Petazzoni
thomas.petazzoni at free-electrons.com
Sun Jul 26 17:35:17 UTC 2015
Christian,
On Sun, 26 Jul 2015 09:34:07 -0700, Christian Stewart wrote:
> Adding mosh, the mobile shell. Mosh uses ssh or dropbear as an initial transport to
> start mosh-server which uses UDP to communicate with the client.
> Supports a predictive model to enhance performance on weak connections
> and compensate for general lag. Also supports disconnections and
> reconnections seamlessly.
>
> Signed-off-by: Christian Stewart <christian at paral.in>
I applied, with some more changes:
[Thomas:
- Add missing dependency on host-pkgconf, as noticed by Yann
E. Morin.
- Indicate that openssh/dropbear is a runtime dependency.
- Pass some variables in the configure environment to tell that SSP
support is not available when it isn't. Otherwise, it misdetects
the SSP support as being available, causing a build failure.]
The last item clearly meant that the build was never tested with
uClibc, which is our default C library. Please do at least a test build
with uClibc before submitting new packages.
Also, one comment below.
> diff --git a/package/mosh/0001-remove-system-locale-calls.patch b/package/mosh/0001-remove-system-locale-calls.patch
> new file mode 100644
> index 0000000..114e6ed
> --- /dev/null
> +++ b/package/mosh/0001-remove-system-locale-calls.patch
> @@ -0,0 +1,46 @@
> +The locale command is not available on many systems. As this variable
> +is unused and appears to have been written with the intent of
> +displaying the locale settings to the user, it's not really necessary.
> +As this breaks Mosh on a lot of systems, it's best to remove the calls.
> +
> +Upstream status: refused, see: https://github.com/keithw/mosh/issues/650
I think upstream refused it, because the approach of your patch is not
acceptable upstream.
> +Signed-off-by: Christian Stewart <christian at paral.in>
> +---
> + src/frontend/mosh-server.cc | 4 +++-
> + src/frontend/stmclient.cc | 4 +++-
> + 2 files changed, 6 insertions(+), 2 deletions(-)
> +
> +diff --git a/src/frontend/mosh-server.cc b/src/frontend/mosh-server.cc
> +index 76ed2ed..0d2f222 100644
> +--- a/src/frontend/mosh-server.cc
> ++++ b/src/frontend/mosh-server.cc
> +@@ -313,7 +313,9 @@ int main( int argc, char *argv[] )
> + fprintf( stderr, "mosh-server needs a UTF-8 native locale to run.\n\n" );
> + fprintf( stderr, "Unfortunately, the local environment (%s) specifies\nthe character set \"%s\",\n\n", native_ctype.str().c_str(), native_charset.c_str() );
> + fprintf( stderr, "The client-supplied environment (%s) specifies\nthe character set \"%s\".\n\n", client_ctype.str().c_str(), client_charset.c_str() );
> +- int unused __attribute((unused)) = system( "locale" );
> ++
> ++ fprintf( stderr, "This is a buildroot system, 'locale' debug output has been removed." );
Here is what your patch should do instead:
if (locale command exists)
int unused __attribute((unused)) = system( "locale" );
else
fprintf( stderr, "locale command not found, cannot show related debug output." );
I'm pretty sure this is going to make your patch much more acceptable
upstream. Can you retry with something like that?
Thanks!
Thomas
--
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
More information about the buildroot
mailing list