Updates the godot-cpp submodule to a version which supports universal macOS
builds.
- We now need to include the standard string in terminal.cpp.
- Clean-up .gitmodules while we're at it.
- Renamed LICENSE -> LICENSE.md as it contains markdown, and added
contact address.
- Adds THIRDPARTY_NOTICES.txt and THIRDPARTY_NOTICES_nopty.txt which
bundles licenses of all third-party components for versions of
GodotXterm compiled with and without PTY node support.
- Adds misc/gen_3rdparty_licenses.sh file to generate the above
mentioned text files.
- Seperated node_pty and tmux licenses.
- Updated libuv submodule to use version that contains additional license
information.
- Updated README to reflect these changes.
Uses fork of node-pty native code for forking pseudoterminals.
Uses libuv pipe handle to communicate with the child process.
- Paves the way for cross-platform (Linux, macOS and Windows) support.
- Renames Pseudoterminal to PTY (which is much easier to type and spell :D).
- Better performance than the old Pseudoterminal node. Especially when
streaming large amounts of data such as running the `yes` command.
- Allows setting custom file, args, initial window size, cwd, env vars
(including important ones such as TERM and COLORTERM) and uid/gid
on Linux and macOS.
- Returns process exit code and terminating signal.
Makes libtsm a static library rather than dynamic so that it doesn't
have to be installed as a system library on the user's operating system.
Also updates SConstruct to work on more operating systems other than
just NixOS. Adds a number of docker files for building the library on
various distributions (NixOS, Arch Linux, Ubuntu).
Uses a fork of godot-cpp with an updated godot_headers submodule that
includes godotengine/godot_headers#76. We should go back to tracking
https://github.com/godotengine/godot-cpp once the submodule has
been updated in that repo.
Former-commit-id: d8c8b5b272