Automatic Release Builder
a2ba405d8e
Sentry: log SimGear exception throws
2020-10-29 14:44:27 +00:00
Automatic Release Builder
db4e71955e
Sentry: track compositor on/off
2020-10-29 14:42:24 +00:00
James Turner
dfcae619cf
Crude startup logging.
...
To diagnose startup hang, will revert once we have fix the issue.
2020-10-29 13:44:59 +00:00
James Turner
423c754009
Reposition: tolerate more scenarios in ATC_mgr
...
When starting at an airport, but not at parking or a runway, create
an empty AIFlightPlan, and ensure the AIManager code doesn’t choke on
empty FPs.
Add a unit-test which simulates the C172 tutorial reposition logic,
which is a little gnarly.
2020-10-27 18:32:18 +00:00
Erik Hofman
ef8dc106ce
Explicitly set the daylight-saving time flag to zero since we specify in GMT
2020-10-22 12:02:28 +02:00
Erik Hofman
23252df726
Move tide calculations from FGLight into it's own subsystem
2020-10-19 14:28:56 +02:00
James Turner
497636c3dc
Fix for Linux build
2020-10-15 16:17:30 +01:00
James Turner
5329c4024b
Sentry experiment: record warnings/alerts
...
This means that when a crash/exception occurs, we can see the preceding
warnings and alerts. Not sure if this will really help, so giving it
a test.
2020-09-18 10:34:40 +01:00
James Turner
d56e3857b6
Fix sentry setting of dist
...
Was missing header and string conversion, oops.
2020-09-18 10:14:23 +01:00
James Turner
aea0a1a12a
Sentry: set dist (build) data
2020-09-17 21:45:39 +01:00
James Turner
3a69e20248
Reduce the default log-level for the launcher.
2020-09-14 11:05:46 +01:00
James Turner
cae06a79b7
Attempt to fix crash-on-exit seen for Windows
...
Can’t reproduce this crash but it’s happening for some users on Windows,
so this should either fix it, or make the problem more obvious. Let’s
see.
https://sentry.io/organizations/flightgear/issues/1890563449
2020-09-14 11:05:46 +01:00
James Turner
395a3e70e9
Logging: use new MANDATORY_INFO level.
...
Requires corresponding SG commit.
2020-09-08 10:59:29 +01:00
Erik Hofman
bdc66d5535
Rename our own version of pu.h to FlightGear_pu.h per James advice. Remove inclusion of pu.h where it isn't requirted.
2020-09-03 12:56:01 +02:00
Erik Hofman
0451816a82
Add our own version of pu.h and use it to prevent bug #2362 on all systems. This can be done since pu.h is to be considered in code freeze forever anyhow.
2020-09-01 10:12:42 +02:00
Scott Giese
7b914bc5fb
Removed unreachable code
2020-08-29 11:20:40 -05:00
James Turner
66f938be8e
Sentry: fix naming clash.
2020-08-26 15:29:55 +01:00
James Turner
a882b75c9b
Sentry: fix fatal-error event type.
2020-08-26 13:57:44 +01:00
James Turner
5dbab6e90e
CMake: overhaul how we find 3rd-party files
...
Handle the standard windows-3rd-party setup (used by fgmeta) with no
extra options, and also handle the slightly odd setup we use on Jenkins.
Try to tolerate all permutations of setting MSVC_3RDPARTY_ROOT to
different places in the hierarchy.
We no longer try to guess Boost_INCLUDEDIR by looking at parent dirs of
MSVC_3RDPARTY_ROOT, since this seemed kind of bad to me. Let’s try
it and see.
2020-08-26 13:57:24 +01:00
Automatic Release Builder
9d775cdfe7
Fix duplicate init of Sentry on reset
2020-08-26 09:52:16 +01:00
Automatic Release Builder
73b4c3839d
Sentry: more breadcrumbs
2020-08-26 09:52:09 +01:00
Automatic Release Builder
d9b7435dab
Sentry logging of exceptions, fatal errors
2020-08-26 09:52:02 +01:00
Automatic Release Builder
bade1ec4c6
Attempt to fix ref-ptr crash on exit
...
Fixing Sentry issue FLIGHTGEAR-9
2020-08-26 09:51:55 +01:00
James Turner
cf424e4344
Rename buildId header file
...
Avoid the very common name ‘build.h’ in favour of something clearer
and FlightGear specific.
2020-08-24 15:05:16 +01:00
James Turner
178d1beb80
Cmake: Remove version.h machinery
...
Merge this file into config.h, this means we can save an include path
everywhere.
2020-08-24 15:04:24 +01:00
James Turner
95fd692af1
CMake: move install() rule for compatability
...
Older CMake versions can’t install(TARGET…) from a different directory.
2020-08-23 21:50:36 +01:00
James Turner
218df89b29
Embedded resources: better cmake command
...
Use add_custom_command and an intermediate OBJECT library to avoid
rerunning fgrcc unless the XML input file has actually changed.
2020-08-23 11:31:37 +01:00
James Turner
47ff3e9f67
Improve CMake strucutre
2020-08-23 11:31:37 +01:00
Scott Giese
dc1519bfe8
REVIEW: Memory Leak - screensaver_control
...
2,056 bytes in 1 blocks are still reachable
352 bytes in 1 blocks are indirectly lost
320 bytes in 1 blocks are still reachable
2020-08-22 22:59:33 -05:00
Scott Giese
f21eb3a484
REVIEW: Memory Leak - Options ctor
...
15,768 bytes in 219 blocks are still reachable
2020-08-22 17:23:55 -05:00
Automatic Release Builder
bbce95b5ea
Updates for sentry.io 0.4.0 API
2020-08-18 16:51:27 +01:00
Automatic Release Builder
439c5bf4f4
Adjust how we enable/disable Sentry.io
...
This allows for crash-reporting in the launcher,
but still disabling via default.xml or the command line.
2020-08-18 16:51:21 +01:00
James Turner
09067eecda
Protocols: additional Hz rate validation
...
Patch by Huntley Palmer, to warn when passing Hz=0 for the protocol
args, which does not work so well.
2020-08-17 12:15:40 +01:00
James Turner
86f6b94300
Use new thread-safe particles manager.
...
Requires corresponding SG commit
2020-08-17 10:00:42 +01:00
James Turner
06e6883396
Call new simgear clearSharedTreeGeometry
...
Should remove the Final Effect (TM) and fix one source of memory
corruption on reset.
2020-08-14 16:47:02 +01:00
James Turner
977bfb06bf
Reset: ensure mobile tacan drop its AI references
...
Add a slightly ugly hook, to force mobile nav records to drop their
refs into the property tree on reset.
2020-08-12 16:37:52 +01:00
James Turner
c913b752fc
Improve reset main-loop interaction.
...
Actually remove our main-loop properties, and clear them from the
EventHandler, so we don’t report them as leaked properties.
2020-08-11 18:44:29 +01:00
Hans Kunkell
4743ede3b3
generates io channel names and adds to property tree
2020-08-10 10:49:09 +01:00
Hans Kunkell
2992e1b100
implements reinit of IO channels
2020-08-10 10:27:51 +01:00
James Turner
379748fc6b
Remove obsolete terraSync code
2020-08-03 17:57:59 +01:00
Florent Rougon
3300ac543e
Print missing --data path in the "fatal message box"
...
As suggested by Slawek Mikula:
https://sourceforge.net/p/flightgear/codetickets/2164/#c397
2020-07-28 10:25:25 +02:00
Florent Rougon
f105e8dfb2
Improve locale handling
...
- fgfs --language=fr-FR now works as expected for the launcher (also with
--language=fr_FR as before): the value added by option --language to
the _languages member of FGLocale is normalized in "underscore" style
(e.g., fr_FR).
- Add-on translations must now use a hyphen in their property node names
in addon-metadata.xml (talking about children of <localized>): i.e.,
use for instance <fr-FR> there, not <fr_FR>. An exception
(addons::errors::error_loading_metadata_file) is thrown if one of
these nodes has a name containing an underscore.
2020-07-14 12:23:23 +01:00
James Turner
54264e6591
Add —disable-gui option
...
Prevents showing a GUI message box if the user wants to run from the
console.
As requested here:
https://sourceforge.net/p/flightgear/codetickets/2306/
2020-07-14 12:05:53 +01:00
Florent Rougon
37aba7dbd4
Remove unused code and fix typos
2020-07-11 13:22:33 +02:00
James Turner
0bb9600795
Add-ons localization support
...
Add-on meta-data can be localized now, in the same manner as aircraft
metadata.
2020-07-09 18:14:56 +01:00
James Turner
73c15c4d5c
Improve a method name, as suggested by Florent
2020-07-03 12:34:37 +01:00
James Turner
9e00715079
Allow cmd line & add-ons to supply FGData extensions
...
Allow add-ons to define an FGData subdir, and support multiple —data=
command line arguments, to avoid the need to modify FG_ROOT (which might
be read-only). Allow additional data paths to be either higher or lower
priority than FG_ROOT, so that add-ons cannot replace files in FG_ROOT.
2020-07-03 12:29:21 +01:00
James Turner
de89d72593
Keep more old log files
...
Suggested on the tracker, keep log files around longer. Currently we
keep the previous ten files.
Note we still don’t log for secondary running copies, since this would
violate the ‘only one copy can write to FGHome’ principle.
https://sourceforge.net/p/flightgear/codetickets/2243/
2020-06-26 10:13:13 +01:00
James Turner
05e40bfde3
Log-to-file level can be raised to debug/bulk
...
Fixes ticket:
https://sourceforge.net/p/flightgear/codetickets/2100/
2020-06-25 11:01:52 +01:00
James Turner
ee6f4388ee
Change how fatalMessageBoxThenExit works
...
This avoids crashing when using Qt : we cannot call exit() safely since
QGuiApplication won’t shut down correctly. Instead throw a special
marker object and catch this in boostrap.
For an instance of this, see:
https://sourceforge.net/p/flightgear/codetickets/2070/
2020-06-24 15:48:02 +01:00
James Turner
3883b19556
Remove use of unary_function, binary_function
...
Preparing for switch to C++17
2020-06-22 10:25:51 +01:00
James Turner
bd666f952e
Raise minimum OSG version to 3.4.1
2020-06-18 17:39:48 +01:00
James Turner
112d1028bf
I18N: fix behaviour when defaultLocale == current
2020-06-18 12:57:30 +01:00
Julian Smith
a4457d995b
src/Main/options.cxx: fix gcc initialisation warnings and minor reformat.
2020-06-17 22:46:42 +01:00
James Turner
dbec99abc9
Translate weather scenarios names+descriptions
...
Allow weather scenarios to be translated, and display this in the
launcher.
2020-06-17 16:15:01 +01:00
James Turner
00d34b67e1
Fix translation of migration-notification dialog.
...
Was being shown before locale was selected, so always using default
translation. Fixed by deferring the dialog, and also added an assert
for debug builds, if trying to access translated string too early.
2020-06-17 10:57:34 +01:00
James Turner
9326c88f9b
Move Qt root path variable to top-level CMakeList
2020-06-10 17:59:09 +01:00
Julian Smith
4de00657c9
Multiplayer replay: added properties showing memory usage info.
2020-06-05 21:21:14 +01:00
James Turner
a9e5a27e55
UI handling tweaks
...
- add class to handle top-level windows
- remove requirement to use custom graphics-window
- order alongside PUI UI
2020-06-05 17:54:27 +01:00
James Turner
023fbe35ea
Tweaks to avoid a crash when asking for FGData path
...
exit(-1) early in startup seems to cause QApplication to be cleaned
up in a weird way
2020-06-04 17:43:27 +01:00
James Turner
26b0148747
Preserve developer-mode on reset
...
Thanks to Henning for pointing out problem.
2020-06-01 11:15:45 +01:00
James Turner
13bb1adf54
Better fix for orientation nodes init
...
(Avoid the chance that we overwrite a value set earlier)
2020-05-31 12:24:36 +01:00
James Turner
c0d347859f
Ensure various properties have a value on start.
...
Ensure /orientation/heading-magnetic-deg, etc have a type of double
immediately. Showed up as a bug in the SenecaII, since the property
is created but has NIL value until the first update() call.
2020-05-31 12:18:07 +01:00
James Turner
0423524b82
Fix crash on first-run on macOS
2020-05-25 14:13:21 +01:00
Lars Toenning
265d721bab
[swift] Transfer connection settings to defaults.xml
...
Related to commit d0cb2f on fgdata
2020-05-24 14:15:27 +01:00
Lars Toenning
f3edffd42b
Exit on startup if defaults.xml is corrupted
2020-05-21 22:49:57 +01:00
James Turner
63fe5237c6
Improve interaction of —parkpos and repositioning
...
Re-work how position-init and ATC-manager work together to do
parking assignment and fallback (when the parking is unavailable).
Improve the logic for the reposition case, and teach ATC-manager about
reposition explicitly.
When the parking is unavailable, explicitly fall back to best-runway
selection in finalizePosition.
Add many additional position-init tests, to cover all of this.
2020-05-19 18:00:34 +01:00
James Turner
620a02bad3
Make sentry APi key customisable
2020-05-12 12:01:59 +01:00
James Turner
6b41eb69eb
Lock-file dialog: allow quit-ing, make translated
...
Add translation macros for the text of the lock-file warning dialog,
and update the default text after some discussion on the devel list.
Also allow quiting the app, as an alternative option.
2020-05-07 16:49:50 +01:00
James Turner
a01f3442c6
Fix non-Qt build.
...
Thanks Huntley for the catch.
2020-05-04 21:29:23 +01:00
James Turner
ddc7baada2
Improve UI around read-only mode / lock-files
...
See ticket:
https://sourceforge.net/p/flightgear/codetickets/2133/
Give the user a chance to intervene, if we select read-only mode.
Offer a button to clear the lock file if it’s stale, and start in
read-write mode.
This is still evolving, but want to get some feedback on it.
2020-05-03 18:02:20 +01:00
James Turner
d2a04cecf7
Fix string category for locale
2020-04-30 16:22:59 +01:00
James Turner
4a485adcf3
Fix crash on —show-aircraft
...
Change how we return, so QApplication doesn’t explode. exit() is not
a happy thing for QApplication.
Ticket:
https://sourceforge.net/p/flightgear/codetickets/2139/
2020-04-29 14:55:37 +01:00
James Turner
de0826294c
Aircraft-loading: resolve symlinked dirs earlier.
...
This is to ensure we pass a realpath when validating Nasal / dialogs,
to fix: https://sourceforge.net/p/flightgear/codetickets/2057/
2020-04-29 12:33:25 +01:00
James Turner
954385ce0d
Improve log message when fgfs_lock.pid exists
...
Part of addressing:
https://sourceforge.net/p/flightgear/codetickets/2133/
Still need to decide about a better GUI dialog for this.
2020-04-29 11:44:21 +01:00
James Turner
489e6abb2a
Allow translation of ‘autosave migration’ dialog.
...
Thanks to Slawek Mikula for the suggestion, this can now be
translated.
2020-04-29 11:44:13 +01:00
James Turner
b69055ffca
Fix normalization of heading-mag-deg
2020-04-27 14:21:47 +01:00
James Turner
fdd509a080
Logging for Nasal errors, disabled for now.
...
Code to log Nasal, as well as C++, errors. But need a way to reduce
the false-positive rate, so disabled for now.
2020-04-20 11:03:35 +01:00
Stuart Buchanan
682293c0d0
Fix for C++11 using simgear::strutils::lowercase
2020-04-18 22:00:04 +01:00
James Turner
d96d903c0b
Sentry: fix conversion of Build-ID to string
2020-04-18 18:13:37 +01:00
Stuart Buchanan
52a6245b49
Add --carrier-position command line argument
...
Takes special values "FLOLS" and "abeam" to set up
aligned for final approach or at the 180 for the carrier flight
deck. Or alternatively a catapult or parking position.
2020-04-17 20:25:18 +01:00
James Turner
faee5dbabf
Code changes for crash reporting with Sentry.
2020-04-17 17:55:34 +01:00
James Turner
a24301f746
UI for enabling crash-reporting in the launcher
2020-04-16 22:33:37 +01:00
James Turner
e1d00509c7
Enable sentry linkage (for Jenkins)
...
Note this require a sentry-native build with this commit applied:
0c631f6ec7
2020-04-14 11:15:40 +01:00
Erik Hofman
2fd0877824
Only load the video settings when the autosave file is not found. This requires the properties in the video settings configuration file to have the archive attribute set but it solves the problem of loading the autosave file twice (and too late in the process)
2020-04-13 17:03:37 +02:00
Stuart Buchanan
6ab7c08aa5
Fix --heading for --ndb position option.
...
Previously setting an offset for an NDB start position
resuled in any --heading setting being ignored. This fixes it.
2020-04-12 21:45:20 +01:00
James Turner
4571769ee7
Quiet some log messages
2020-04-10 19:12:10 +01:00
James Turner
0a6fe33bc3
Add support for compatible-fg-version in -set.xml
...
This is to evaluate if this is a good idea, not sure if we actually
want to commit to this approach yet.
2020-04-10 10:40:32 +01:00
James Turner
9304bcc9af
Change some warnings to developer mode.
2020-04-10 10:40:32 +01:00
James Turner
b1395a86ba
Add —disable-hold-short option for MP
...
Allow explicit disabling of the hold-short behaviour when it causes
problems.
2020-04-10 10:40:32 +01:00
Richard Harrison
b8f28d54c6
Carrier init:
...
As well as "FLOLS" in the runway allow it in the parkpos; probably we should rename this to "position" rather than "parkpos"
2020-04-10 00:06:00 +02:00
James Turner
f5b04684cf
Disable linking to sentry for now, due to a bug
...
Discovered na upstream issue in sentry-native’s exported CMake targets,
at least on macOS. Disabling until I hear back from them.
2020-04-08 16:07:31 +01:00
James Turner
2500534b1e
Build changes for new crash-reporting system.
2020-04-07 09:38:13 +01:00
Stuart Buchanan
00fd5fbaec
Carrier "abeam" position support
...
Support for --carrier-abeam option, which places the aircraft
at the end of a downwind opposite the FLOLS.
Add launcher support for above.
Add carrier display for launcher showing position relative to
carrier.
2020-04-05 23:13:32 +01:00
Stuart Buchanan
6b17604ba8
Carrier launcher: Allow setting altitude
2020-04-03 20:37:37 +01:00
James Turner
968fbd82e0
Fix typo breaking mag-compass and others
2020-04-03 09:57:13 +01:00
James Turner
f24b886ce4
Launcher: fix favourites loading
...
Also fix some warnings, closer to no output from the launcher.
2020-04-02 16:13:12 +01:00
gallaert
1ce36af298
- When HLA is enabled in Simgear, HLA is also enabled in Flightgear
...
making the build between Simgear and Flightgear consistent.
- Fix an issue with lib/lib64 path between CentOS/RedHat distributions
and Debian derived distributions.
- Fix a compilation issue with HLA in the Flightgear code.
2020-04-01 21:02:24 +01:00
James Turner
005ddf7c98
Optimisation: avoid property name lookups
2020-04-01 16:20:29 +01:00
James Turner
8ddf4d6699
Fix reset-data-path dialog logic
...
Use correct root path key in QSettings, everywhere
Use the direct Win32 API until Qt wrapper is fixed.
2020-03-26 17:35:01 +00:00
Fernando García Liñán
6f676ee85b
Compositor: Added $FG_ROOT/Compositor/Effects as a resource provider.
2020-03-24 19:44:05 +01:00
James Turner
5f0c10d94d
Fix incorrect write() return code handling
2020-03-20 22:24:44 +00:00
James Turner
162ba266d0
Fix a warning
2020-03-20 11:40:47 -07:00
James Turner
26b527f151
Fix Linux compilation
2020-03-20 11:40:32 -07:00
James Turner
177fc565da
Launcher: initial carrier support
...
Allow selecting carriers from scenarios, and starting at either a
parking position, or a distance offset from the FLOLS (effectively
a crude ‘on-final’)
Extend the —carrier startup option to accept a runway ident of FLOLS,
in conjunction with the existing —offset-distance argument.
2020-03-20 15:51:47 +00:00
James Turner
f903cdfa50
Linux/macOS: use flock() to implement exclusive launch.
...
Previous implementation wasn’t correct, use a better one now. In the
case of a non-clean exit we will leave a stale .pid file in FG_HOME,
but we clear stale files on the next launch.
2020-03-20 12:08:35 +00:00
James Turner
d52f1b5d47
Improve in-sim launcher behaviour
...
Restrict the UI to the pieces which make sense.
2020-03-17 10:00:17 +00:00
James Turner
8edcaa4853
Merge /u/ltoenning/flightgear_sim/ branch fix/2146 into next
...
https://sourceforge.net/p/flightgear/flightgear/merge-requests/190/
2020-03-13 13:53:30 +00:00
Lars Toenning
2c9d64dcc6
Fix broken sound mute function
...
Fixes #2146
2020-03-13 11:13:30 +01:00
James Turner
e492ddd5a0
Event more local8Bit -> UTF8 fixes
2020-03-13 09:53:49 +00:00
James Turner
27410761f3
Lots of UTF8 path correctness fixes
2020-03-12 14:23:44 +00:00
James Turner
5b41f374c6
L10N fixes: handle UTF8 paths in more places.
...
Still not complete, but now we set the command line args to be UTF-8 on
Windows, we can strip out more of the ‘local 8-bit’ places (which
screw up, generally).
2020-03-12 10:51:49 +00:00
Julian Smith
ab7e7ec7b4
src/Main/globals.cxx: don't load /ai/models/ from autosave.xml file.
...
This cleans things up if earlier 'next' build as added spurious property items
to autosave.
2020-03-11 21:49:15 +00:00
James Turner
a405d0508b
Fix a dumb allocation bug on Windows
2020-03-09 16:28:22 +00:00
Bertrand Coconnier
973bf32074
[JSBSim] Added the ability to log properties in a CSV file.
2020-01-25 16:05:30 +01:00
Scott Giese
a9365cd34e
Embedded Resources: Fix for Ninja 1.9
...
Refactor to break circular references.
New custom target generates the resource files.
FGFS and Test_Suite targets declare a dependency to the generated files.
2019-12-26 01:26:44 -06:00
James Turner
be628b36b7
Allow add/remove of IO channels at runtime
...
Commands:
add-io-channel
remove-io-channel
2019-12-19 00:00:41 +00:00
Edward d'Auvergne
4105b70f74
Options: Only set the logging priority if the command line option is supplied.
...
This prevents the changing of the logstream priority as set by the test suite
permanently to "alert" during the execution of tests. Setting a default value
of SG_ALERT is not required as this is the simgear logstream default anyway.
2019-11-08 13:59:17 +01:00
Edward d'Auvergne
0f0361efb8
Options::setupRoot: Removal of the logic that fg_root is currently not set.
...
This allows the test suite to preset fg_root using its own bootstrapping logic.
2019-11-08 13:59:16 +01:00
Julian Smith
88644185b3
src/Main/metar_main.cxx: added -s option to decode explicit METAR string without contacting server.
2019-10-31 22:53:41 +00:00
Julian Smith
4b1cfbc5ed
src/Main/metar_main.cxx: use SGMetar::getDescription().
2019-10-31 22:49:09 +00:00
Julian Smith
335547160c
src/Main/fg_init.cxx: use /sim/log-file-line to control output of file:line in logs.
...
We call sglog().setFileLine() in response to changes to /sim/log-file-line.
2019-09-04 10:55:43 +01:00
Julian Smith
f3d1135320
Various fixes for building on OpenBSD.
2019-09-04 10:55:43 +01:00
Scott Giese
1ede51f3f6
Improved OSG Version detection.
2019-08-26 17:45:16 -05:00
Edward d'Auvergne
34a6cb3c74
SGSubsystem classes: Registration of all subsystems.
2019-07-01 14:51:32 +02:00
Edward d'Auvergne
d259c70560
SGSubsystem classes: Addition of staticSubsystemClassId() to all subsystems.
2019-07-01 14:51:32 +02:00
Edward d'Auvergne
332c240b38
SGSubsystemGroup: Removal of the subsystem group naming.
...
This is a partial reversion of 5253215065
, the
changes of which are incompatible with the subsystem class IDs.
2019-07-01 14:27:30 +02:00
Edward d'Auvergne
fb5c36fc82
SGSubsystem classes: Renaming of the subsystem ID variables and functions.
2019-07-01 14:27:30 +02:00
Edward d'Auvergne
7a6e63ddb9
SGSubsystem classes: Subsystem and subsystem group API declaration standardisation.
...
This is a cleanup commit.
2019-07-01 14:27:30 +02:00
Edward d'Auvergne
60a2444766
SGSubsystem classes: Whitespace standardisation of the declarations.
...
This is a clean up commit prior to the subsystem API standardisation to simplify
the diffs. It includes all SGSubsystem and SGSubsystemGroup derived classes.
2019-07-01 14:27:28 +02:00
Scott Giese
47e3e7baed
[Emesary] Fix compile on Linux.
2019-06-14 21:45:11 -05:00
Richard Harrison
6ebc91d3f7
Added mainloop frame notifications
...
Using Emesary Global Transmitter the following events are notified
* Frame Begin
* Frame End
* Mainloop started
* Mainloop stopped
This integrates with the background threaded Nasal Garbage collection (simgear:nasal/cppbind/NasalEmesaryInterface.hxx) and is also controlled by the properties as follows
* /sim/nasal-gc-threaded (true) - use background threaded GC
* /sim/nasal-gc-threaded-wait (false) - at the start of the frame wait for the previous GC thread to complete.
I initially thought that the wait at the start of the frame would be necessary; however in 100 or so hours of flight without the await for completion at the start of frame no threading problems (or any other problems) were shown; so nasal-gc-threaded-wait is defaulted to false which gives a slight boost in performance.
So what this does is to it removes the GC pause of 10-20ms every 4 seconds (test using the F-15). This change doesn't really give much extra performance per frame because normally GC is only performed when needed.
2019-06-11 14:38:38 +02:00
James Turner
d8b6fbfef0
macOS / DBus : avoid abort on startup
...
Don’t do the fgOSDisableScreensave DBus stuff on macOS - there is no
global DBus daemon configured by default.
2019-05-27 16:05:19 +01:00
James Turner
88a78dd314
Remove last hard-coded default airport ID
...
Neither Torsten nor I can recall why we continued to hard-code this,
so make it dynamic for now. When we remember why we hard-code it,
we can add a BigComment from future-James to future-future-James about
why not to do this again :)
2019-05-27 11:42:53 +01:00
Fernando García Liñán
fa4ef2ab52
Added a property to indicate compositor support
2019-05-20 23:44:16 +02:00
James Turner
bac5d6c713
Windows: read Unicode command line
...
One more step in full Unicode support.
2019-04-27 18:54:13 +01:00
Dan Wickstrom
1948304157
Fix problem where AI planes are placed on top of user aircraft when user either selects a specific spot or user selects parking to be an available spot.
2019-04-25 11:39:41 +01:00
James Turner
4e8e69b4f8
Migrate invert-mouse-wheel setting from pre 2019.x
...
Flip the sense of this property, since the interpretation in SG is
also flipped now.
2019-04-11 20:40:17 +01:00
Lars Toenning
85acefab95
Swift: initial support
2019-04-11 11:36:22 +01:00
James Turner
64eaf6fe03
Fix for route-path when leg 0 is not a runway
...
Avoid doing turn-computation for the first waypoint, even if it’s not
a runway. Add a unit-test to cover this case.
Reported by Josh Davidson
2019-03-26 22:50:46 +01:00
James Turner
7c2a5e9e99
FlightGear support for queued commands
...
This enables queued commands to be processed once per main event loop.
At present this is done after subsystem updates.
2019-03-24 17:59:23 +00:00
Richard Harrison
a95daa2a5a
add command line options to enable and disable DDS Texture cache.
2019-03-01 19:06:42 +01:00
Richard Harrison
8e35b7efc7
OSG 3.4.0 compilation fixes.
2019-02-20 19:12:02 +01:00
Fernando García Liñán
bec41e7e17
Compositor: FG now gracefully quits if no valid Compositor has been found. Added a command line option (--compositor) to choose the default Compositor.
2019-02-20 03:09:17 +01:00
James Turner
c2fb01ccb7
Partial revert of METAR fix, now SimGear is fixed.
...
This reverts commit 2fdc24c109
.
2019-02-17 19:03:19 +00:00
Richard Harrison
5253215065
Improvements to performance monitoring.
...
* Ensure that subsystems are named.
* Nasal timers are named appropriately
2019-02-10 18:07:07 +01:00
Scott Giese
2fdc24c109
METAR fix
2019-02-07 01:26:05 -06:00
James Turner
dee1998979
Less Boost.
2019-02-06 17:36:36 +00:00
Scott Giese
7fd7c599a2
Fix missing header file for strutils
2019-02-04 23:49:02 -06:00
James Turner
a9a49bc2e6
Unboosting files
...
Use simgear::strutils replacements in places, C++11 features in others
2019-02-04 15:20:22 +00:00
James Turner
49c4dc5213
Scenarios from FG_HOME, aircraft and add-ons
...
Enhancements suggested by Nikolai Verner-Christensen - support loading
scenarios from {FG_HOME}/Scenarios, {aircraft-dir}/Scenarios and
{add-on}/Scenarios.
Additionally, allow passing the path to a scenario file to
—ai-scenario, eg —ai-scenario=/home/jmt/FGFS/my-test-scenario.xml
When a scenario defines a carrier, and —carrier is used to request a
carrier start, we now auto-load the corresponding scenario, to give
a nicer user experience.
2019-02-03 12:12:00 +00:00
Richard Harrison
6e2443d268
Change to print exception type (inherited exceptions)
2019-01-20 23:26:58 +01:00
James Turner
845e7c6bef
Improved ‘is MP enabled’ check for pos-init
...
This fixes the MP detection check when selecting MP on the command-line
2019-01-08 23:20:51 +00:00
James Turner
b0dc850df1
Fix type of some numerical constants
...
Patch by Ron Haertel
2019-01-06 14:30:58 +00:00
James Turner
9339fd2375
Add some /sim/presets properties to setDefaults
...
Ensure these properties are always defined, but with default values,
to simplify usage.
2018-12-04 09:50:48 +01:00
James Turner
1e104bbdfe
Version the FG-root setting
...
This ensures fresh installs will see an empty value, and hence
default to the shipped version.
2018-11-25 14:06:51 +00:00
Richard Harrison
1e636ce4cf
Support for DDS Texture Cache
...
- pass texture cache control properties to simgear
- /sim/rendering/texture-cache/cache-enabled
- /sim/rendering/texture-cache/compress-transparent
- /sim/rendering/texture-cache/compress-solid
- /sim/rendering/texture-cache/compress
- support --texture-cache-dir command line option
- set max reported supported texture size during splashscreen.
2018-11-24 20:21:46 +01:00
James Turner
3b3c99777d
Reduce level of a log message
2018-11-07 09:39:54 +01:00
James Turner
49c3fc064a
XLIFF: Fix loading of indexed strings
2018-10-13 21:22:18 +01:00
James Turner
2313f482a3
Add missing C-string include for strcmp
2018-10-13 09:07:32 +01:00
James Turner
dbb99ee550
XLIFF: fix null approved-attr handling
2018-10-13 08:42:05 +01:00
James Turner
53de09d151
Fix dumb commit for XLIFF approved-attr handling
2018-10-13 00:20:38 +01:00
James Turner
adea824bd3
XLIFF parser ignores un-approved translations
...
As suggested by Florent, ensure we respect the XLIFF ‘approved’
attribute, so we can track translations which don’t work yet due to
PLIB limitations.
2018-10-12 22:24:33 +01:00
James Turner
f819750287
Launcher respects --language arg if set
2018-10-12 11:37:39 +01:00
Erik Hofman
43c201d9d0
Fix an almost certain buffer overflow
2018-10-10 09:24:02 +02:00
James Turner
a66f0243bf
Use GetUserPreferredUILangauges on Windows
...
This should accurately reflect the user's language preferences in the control
panel, unlike the previous method.
2018-09-28 12:09:24 +01:00
James Turner
098c489ae0
Make —parking-id an alias for —parkpos
2018-09-20 10:26:48 +01:00
James Turner
110aec6039
Tiny code cleanups while doing other changes
2018-09-18 17:34:23 +01:00
James Turner
72e1737aa6
Reset: wipe the Effect UniformCache
2018-09-13 23:52:52 +02:00
James Turner
72239c9a52
Code cleanups while checking reposition performance
...
Some C++11 fixes and give FDMShell, Reply a subsystem-name
2018-09-09 13:42:51 +01:00
James Turner
525cfadfa3
Reset: persist USERARCHIVE settings
...
Save user-setting properties to disk before beginning a reset, so
they are restored correctly.
2018-09-01 19:21:47 +01:00
James Turner
40d5d918ba
Allow local acft to override packaged acft
...
When an explicit aircraft-dir is set, check this location before
checking installed packages. This allows setting —aircraft and
-aircraft-dir to correctly take precedence over a package.
2018-08-30 15:23:45 +01:00
James Turner
41687767b9
Translations looked up correctly
...
Tweak both the launcher and main locale lookups, to tolerate the
different region suffixes encountered in reality.
2018-08-28 23:34:44 +01:00
James Turner
f4b98cf204
Fix CMake dependencies for translations
...
When only building the fgfs target (which IDEs tend to do), we didn’t
update the translations. Add an explicit dependency to remedy this.
2018-08-28 12:04:56 +01:00
James Turner
3f5a0a47ad
Improved build.h generation (each build)
...
Use a custom_target to recursively invoke Cmake at build time; this
ensures the build ID and Git revision are always up to date.
2018-08-19 16:06:16 +01:00
James Turner
09918a6862
Fix Nasal duplicate init
...
Also ensure Nasal reset is handled correctly (requires corresponding
SimGear commit)
2018-08-19 12:34:27 +01:00
James Turner
f5117109fe
Load translations from XLIFF format
...
When an <xliff> entry is present inside a locale specification,
this takes precedence over the legacy translations.
2018-08-12 11:18:50 -07:00
James Turner
d534a5ba36
Move build-ID variables to their own header
...
This is to reduce rebuilding by changing version.h needlessly, since
only a few places use the build ID info.
2018-08-12 11:18:50 -07:00
James Turner
696c95d612
Fix passing —-config files via the launcher
...
Curt found this, allow using --config from the launcher additional
settings box.
2018-08-10 12:51:51 +01:00
Edward d'Auvergne
feb854946e
TestSuite: Complete removal of FG_TESTLIB.
2018-07-26 15:52:07 +02:00
Edward d'Auvergne
4699939275
Globals: Initial support for a runtime headless mode.
2018-07-26 15:52:06 +02:00
Edward d'Auvergne
b0c5a5481d
TestSuite: Migration of the autosaveMigration tests into the CppUnit infrastructure.
2018-07-26 15:52:06 +02:00
James Turner
72d5f1efa0
Basic support for structured authors data
2018-07-25 13:58:48 +01:00
James Turner
c684701b7f
Fix 'restart the app' functionality on Windows
...
The read-only lock in fghome was tripping things up. Explicitly
release the lock in the restart-the-app situation.
2018-07-02 23:13:36 +01:00
James Turner
ea5608b769
Use simgear formatting of lat/lon values
...
The code was basically moved into Simgear, this is just closing the
circle.
2018-06-27 11:27:12 +01:00
James Turner
82f23e556e
Improve MSVC project generation
...
- set startup project to fgfs
- guess a value for PATH based on the build config
2018-06-16 13:03:23 +01:00
James Turner
7c9b1b391f
Guard against SGPath::document()s returning null
...
Underlying bug is fixed in SimGear, but let's also guard against a failure here,
by falling back to FG_HOME on Windows.
For discussion see:
https://sourceforge.net/p/flightgear/codetickets/2019/
2018-06-15 11:11:05 +01:00
Erik Hofman
2edf1443d3
Detect AeonWave and if it is installed use it, otherwise fall back to OpenAL. Also let get_available_devices() use C++ strings instead of const char*
2018-06-02 14:06:36 +02:00
James Turner
a5aa6fb61b
Cleanup the resource manager when deleting globals
2018-05-28 22:43:05 +02:00
Edward d'Auvergne
c8729be38f
Init: Minor log formatting fixes.
2018-05-23 12:19:23 +02:00
Edward d'Auvergne
667cd86656
fgValidatePath: Typo fix allowing the animated jetways to save files again.
...
The typo was introduced in 7e607b8403
from July
2016. The result was a series of alert messages such as:
savexml: writing to 'Path "/flightgear/home/.fgfs/runtime-jetways/0.xml"' denied
(unauthorized directory - authorization no longer follows symlinks)
2018-04-13 09:08:07 +02:00
Edward d'Auvergne
3b79530b06
CMake: Split the target links and includes into separate CMake modules.
2018-04-05 21:06:02 +02:00
Edward d'Auvergne
6a730b5820
CMake: The main sources/headers have been shifted into FG_{SOURCES,HEADERS}.
...
This allows the sources and headers in src/Main/ to be used by other targets.
They are grouped into the new "Main" flightgear component via the macro in the
FlightGearComponent CMake module. The bootstrap.cxx file with its main function
has been separated out into a separate variable MAIN_SOURCE for use by the fgfs
binary.
All these files have therefore been removed from the test_suite CMakeLists.txt
file, as they are added via FG_SOURCES and FG_HEADERS. The MSVC grouping code
also does not need to deal with the now deleted separate SOURCE and HEADER
variables for these files.
2018-04-05 21:06:02 +02:00
Edward d'Auvergne
e88017eba3
CMake: Shifted the Mac bundle commands into its own CMake module.
2018-04-05 21:06:02 +02:00
Edward d'Auvergne
93c4aab885
CMake: Shifted the MSVC grouping code into its own CMake module.
...
This is for simplifying the main src/Main/CMakeLists.txt file and allowing the
code to be shared with the test suite.
2018-04-05 21:05:54 +02:00
Edward d'Auvergne
f8e57f921d
CMake: Shifted the FlightGear embedded resources code into its own CMake module.
...
This is for simplifying the main src/Main/CMakeLists.txt file and allowing the
code to be shared with the test suite.
The generated source and header files have also been removed from the main
source list and placed in the CMake module as the global variables
EMBEDDED_RESOURCE_SOURCES and EMBEDDED_RESOURCE_HEADERS.
2018-04-05 21:05:30 +02:00
Edward d'Auvergne
bd3a3db50b
CMake: Shifted the target setup code into its own CMake module.
...
This is for simplifying the main src/Main/CMakeLists.txt file and allowing the
code to be shared with the test suite.
2018-04-05 21:05:16 +02:00
Edward d'Auvergne
0f96032487
TestSuite: Shift of the globals unit test helper functions into the test suite.
...
The setting of the SG log levels and developer mode has been removed as this
clashes with the output control set by the test suite main() function.
2018-03-23 17:26:05 +01:00
Edward d'Auvergne
7616f1ec3e
TestSuite: Migration of the posinit unit tests.
2018-03-23 17:26:05 +01:00
Edward d'Auvergne
941c5dc8f2
Main: Formatting standardization for the src/Main/CMakeLists.txt file.
...
This includes spacing, tab to space replacements, and alphabetical ordering.
2018-03-23 17:26:04 +01:00