Remove bad automake dependency causing double execution.
Properly update the version in the non-Git case.
Git commands are now in a condition-expression, won't break build.
Test that we're in repo root (i.e., our own and not somebody else's).
Do `git describe --always` to handle shallow Git clones.
Signed-off-by: John Hood <cgull@glup.org>
This improves the completion, as suggested in
<https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=782169>,
and moves the completion from `/etc/bash_completion.d/mosh` to
`/usr/share/bash-completion/completions/mosh` as recommended by
lintian in its `package-install-into-obsolete-dir` check.
Closes#628.
Signed-off-by: John Hood <cgull@glup.org>
This broadens the OS X build support to include old and current OS
X/Xcode, and Homebrew/MacPorts.
Support pkgbuild/productbuild + metadata from Mosh-1.2.4-3 package
Search for protobufs in /{usr,opt}/local
Make build select pkgbuild if available, PackageMaker if not
Make PackageBuilder build work on OS X 10.5, XCode 3.1, Macports
Do version substitution
Use generic names for c/c++/cpp
Make build script arch-indepdendent
Changes install dir from /usr to /usr/local
Closes#633.
Signed-off-by: John Hood <cgull@glup.org>
Fixes warning: ‘Overlay::NotificationEngine::escape_key_string’ should
be initialized in the member initialization list.
Signed-off-by: Anders Kaseorg <andersk@mit.edu>
This commit is somewhat subtle; it informs Coverity that
Parser::Transition only holds an Action* temporarily, and should never
create/delete one. I believe runtime checkers should also understand
this OK.
Signed-off-by: John Hood <cgull@glup.org>
terminalfunctions.cc: set_if_available() was undeclared.
Fix printf() wint_t/wchar_t warnings.
mosh-server.cc: Fix warning for side effects inside typeid().
Signed-off-by: John Hood <cgull@glup.org>
This helps to catch inconsistent declarations in headers that weren’t
included, and local functions that are not marked static.
Signed-off-by: Anders Kaseorg <andersk@mit.edu>
This helps to catch unused functions like the former mosh_read_line,
allows the compiler to make better inlining decisions, and reduces the
binary size a bit.
Signed-off-by: Anders Kaseorg <andersk@mit.edu>
This function is buggy. feof(file) does not become true until after
we’ve tried to read past the last character; it should instead be
checking the getc return value for EOF (which is distinct from any
unsigned char). Really it should just be replaced by istream
&std::getline(istream &is, string &str). Fortunately, it’s unused so
we can just delete it.
Resolves a truncated stdio return value issue found by Coverity Scan
service.
Signed-off-by: Anders Kaseorg <andersk@mit.edu>
size_t is unsigned. Fixes two issues found by the Coverity Scan
service, one about the dead code and one about the std::string
exception being uncaught by mosh-server.
Signed-off-by: Anders Kaseorg <andersk@mit.edu>
This refactors out a very common pattern of formatting "%s: %s" with
e.function.c_str() and strerror( e.the_errno ) into just the what()
method of NetworkException. It's also a prerequisite for making cleaner
public API for any exceptions we throw, and allows us to more easily
get exceptions passed back to us to handle.
I do sympathize with the motivation for these trailing commas, but
they cause silly build failures with --enable-compile-warnings=error
(which is used at least by the Debian/Ubuntu package).
CXX parseraction.o
In file included from terminal.h:42:0,
from parseraction.cc:37:
terminalframebuffer.h:200:39: error: comma at end of enumerator list [-Werror=pedantic]
MOUSE_REPORTING_ANY_EVENT = 1003,
^
terminalframebuffer.h:210:34: error: comma at end of enumerator list [-Werror=pedantic]
MOUSE_ENCODING_URXVT = 1015,
^
cc1plus: all warnings being treated as errors
Makefile:354: recipe for target 'parseraction.o' failed
Signed-off-by: Anders Kaseorg <andersk@mit.edu>