No user expects, that editor name needs to be manually supplied, and
documentation is not clear about this either.
Add GNU-style double-dash long parameter. Unfortunately, --opt=value
style does not work with DOSBox non-standard parameter handling
implementation.
When user won't supply value for the parameter, following editors will
be tried in order:
- Program supplied via EDITOR environment variable
- nano
- vim
- vi
- notepad++.exe
- notepad.exe
Do not exit inside function, return error code instead.
Print error to stderr, and not stdout, to make life easier for users
invoking dosbox from within scripts.
Include double-dash GNU-style parameter: '--printconf'.
Setting up configuration file location is a dependency for:
$ dosbox -printconf
$ dosbox -editconf vim
$ dosbox -eraseconf
Wee need to have cache initialized before these parameters are handled.
v2 will:
- Checkout over SSH
- use Git's REST API, when git is version 2.18 or newer
- No longer detaches HEAD when checking out a branch
- Fetches one-commit deep by default
When building releases where we expect full history plus tags,
we explicitly get them with `git fetch --prune --unshallow`.
Shaders were previously saved as standard C++ string concatenations.
This commit converts them to the C++11 raw string syntax using a raw
string delimiter of `GLSL`.
This format is preferable as it will allow the shaders to be viewed and
edited directly, without having to make considerations for any escape
characters within the code.
Version in README file is purely informational.
Other strings are hardcoded to some platform-specific format and scheme,
where we can't use version derived from autoconf.
Change copyright strings to "dosbox-staging team" (we are not "DOSBox
Team"), change relevant copyright years (this meta has no real legal
meaning - unlike COPYING file and license inside source files, so use
only current year in there).
Two notable changes:
1. Eliminates the joystick setup from SDLmain, allowing
the mapper's QueryJoysticks() function to be the sole
setup and configuration point for both the SDL Joystick
subsystem and DOSBox's internal configuration of the
joysticks.
2. SDLmain's event loop previously perform some joystick-
specific timing and always called the Mapper's UpdateJoysticks
function; neither of which are needed if the user has disabled
joystick support or if joysticks aren't physically present.
This update now make this entire process conditional on both
of the latter (which is set by the Mapper's QueryJoysticks).
There's no reason to having a different name for .conf file on every
platform, it only makes things more difficult from user and developer
perspective.
Windows and macOS config files are left as they were, this change
affects mostly Linux users.
Users are not forced to migrate, but visible warning is being issued if
they aren't. Majority of users probably won't notice it, as the stable
release should generate newly named .conf file.
Ubuntu 16.04 would provide better distro compatibility, but we need SDL
in version 2.0.5 or newer to enable resizable window support on Linux.
Pretty soon Ubuntu 20.04 LTS will be released, so targetting previous
LTS release should be enough.
We need this option to make snapshot/nightly builds compatible with
older distros and runtimes (which might not provide libpng 1.6 by
default). Examples are: Ubuntu 16.04 LTS (and derived distros, such as
LTS Mint) or e.g. Steam Runtime.
Change X11 Window WM_CLASS to 'dosbox-staging' to avoid conflicts with
upstream DOSBox, which might be provided by package manager.
Update .desktop file to specify WMClass to be correlated with
dosbox-staging process (even if executable file conflicts with dosbox
upstream).
Update contrib/icons/Makefile to generate 'hicolor' directory structure.