1
0
Fork 0
Commit graph

144 commits

Author SHA1 Message Date
James Turner
7e9930e871 Move fnt code from PLIB into 3rdparty
This enables us to fix TXF loading to use UTF8 paths, required for
handling non-ASCII paths on Windows.
2020-03-13 12:21:56 +00:00
James Turner
d0c12149c3 Fixes to translation updating: use correct path. 2020-03-10 17:29:33 +00:00
James Turner
ecb48062ef Add CMake target to update Launcher translations
Invoke ‘make ts’ (or equivalent for your build system) to update the
.XLF files for the launcher.
2020-03-10 17:25:03 +00: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
Scott Giese
634ca9c31f typo 2019-12-15 11:40:00 -06:00
Julian Smith
f3d1135320 Various fixes for building on OpenBSD. 2019-09-04 10:55:43 +01:00
James Turner
309aaa794f Flite always compiled now. 2019-06-03 16:51:08 +01:00
James Turner
db8985fc76 Fix a typo on Windows 2019-05-27 17:47:24 +01:00
James Turner
7738f33306 Adjust FindDBus to use imported targets
This is necessary on macOS where DBus is typically installed using
Homebrew, and hence we need additional linker flags to find the
library. Using the PkgConfig::DBUS imported target handles all this
transparently, but then we need to define an imported target for
Windows to work.
2019-05-27 11:37:35 +01:00
Lars Toenning
5a662d97fd Fix broken libevent/dbus cmake module 2019-05-17 10:19:38 +02:00
Florent Rougon
63f6d0b5bf Convert obsolete uses of get_filename_component(<var> <FileName> PATH)
In the context of get_filename_component(), PATH is a legacy alias for
DIRECTORY. Replace it with DIRECTORY, which is recommended[1] for
CMake versions > 2.8.11.

[1] https://cmake.org/cmake/help/latest/command/get_filename_component.html
2019-04-25 19:11:01 +02:00
Florent Rougon
b2d6acdd4d CMake changes related to FGDATA_SRC_DIR and TRANSLATIONS_SRC_DIR
- When FGDATA_SRC_DIR isn't explicitly set by the user, set it to
  ${PROJECT_SOURCE_DIR}/../fgdata if this is a directory.

- When TRANSLATIONS_SRC_DIR isn't explicitly set by the user, look for
  translations in ${FGDATA_SRC_DIR}/Translations instead of
  ${PROJECT_SOURCE_DIR}/../fgdata/Translations (i.e., honor the setting
  of FGDATA_SRC_DIR for the sake of translation lookup).

This fixes the problem explained in [1] and [2].

[1] https://sourceforge.net/p/flightgear/mailman/message/36645499/
[2] b2274fbbed/
2019-04-25 19:11:01 +02:00
Lars Toenning
85acefab95 Swift: initial support 2019-04-11 11:36:22 +01:00
James Turner
2b1913e118 Add Russian to list of Qt translations to sync 2018-10-12 11:37:08 +01:00
James Turner
ca8b84dae0 Make translations detection more robust
Thanks to Scott Giese for the suggestion, check for a full valid
path inside the Translation setup, in case FGData exists but is not
populated.
2018-09-22 18:24:23 +01:00
Stuart Buchanan
c5840b1039 Fix translations variable where no translations data 2018-09-01 16:22:08 +01:00
James Turner
c537bbcfe7 Translations: detect missing lrelease explicitly.
This gives a clearer message and behaviour when Qt is installed but
the translation tools have been omitted.
2018-09-01 14:59:24 +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
2329654e3b Disabling translations is tricky. 2018-08-28 17:12:31 +01:00
James Turner
eaa2ed5cbb Launcher translations enabled
Translations are build into the executable at compile time, providing
FGData is available during the build.
2018-08-27 13:20:23 +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
Scott Giese
402a71100e Enabled locating plib via the naming convention used by vcpkg 2018-08-06 22:14:53 -05:00
Scott Giese
78882621e9 Support Visual Studio 2017 2018-06-22 22:40:37 -05:00
Ganael Laplanche
b9b393a355 Use all linker flags from pkgconf, including library path 2018-06-12 12:10:31 +02:00
Erik Hofman
d043a20d3f Better AeonWave detection 2018-06-05 09:40:29 +02: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
102fe04e91 Import PLIB JS code into FlightGear
- will permit bug-fixing which cannot occur for
  official PLIB.
2018-05-03 00:02:09 +01:00
James Turner
cf5e2b39f1 Handle CMake policy 0071 correctly 2018-05-01 12:35:55 +01:00
James Turner
bb0ba31fe0 Fix MSVC fgrcc execution 2018-04-16 15:24:14 +01: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
8b438cb97e TestSuite: Initial support for a FlightGear test suite based on CppUnit.
This includes the basic CMake infrastructure for building and executing the test
suite.  Four test categories have been added - unit, system/functional, GUI, and
simgear unit tests.  The test suite is run by typing 'make test_suite'.

All of the fgfs sources are included in the new run_test_suite executable,
excluding the bootstrap routine and its main() function.  The test suite
currently consists of a single dummy unit test for the NasalSys subsystem, and a
single demonstration simgear/props unit test.
2018-03-23 17:26:04 +01:00
Erik Hofman
5f828894df Update to AeonWave version 3.0+ 2017-10-31 10:53:34 +01:00
Erik Hofman
c9b01b1d69 Enable SSE and SSE2 by default 2016-12-16 10:50:24 +01:00
James Turner
9aaff777d9 Support CrashRpt 1403 2016-12-09 14:39:25 +00:00
James Turner
5d7b65477f Simplify MSVC detection to match SimGear. 2016-11-15 00:07:32 +01:00
James Turner
e2f7585d9c Use a Cmake imported target for SimGear 2016-10-30 22:15:54 +00:00
Erik Hofman
a0b4f20cfe Fix the header location 2016-08-06 11:27:22 +02:00
Erik Hofman
9d13473d11 Check for the proper header file 2016-08-04 18:43:10 +02:00
Erik Hofman
ce9c78940b Add support for AeonWave 2016-08-04 18:43:10 +02:00
Erik Hofman
9ec4d7749f Add support for AeonWave 2016-08-04 18:43:10 +02:00
James Turner
a0b7abf7ff Remove FGAdmin 2016-06-15 22:31:47 +01:00
James Turner
3d80a107b5 Tweaks for VS 15 / boost detection 2016-06-09 10:33:30 +01:00
James Turner
043355b5a7 Curl is required for SimGear now. 2016-05-07 10:23:02 +01:00
James Turner
2328f7fbdb Handle libCurl linkage when enabled in SimGear
Detect if SimGear was built with Curl support,
and if so, find and link against libCurl
2015-11-26 23:40:14 +00:00
James Turner
3e64e276d7 Remove OldGNUInstallDirs helper
- we require CMake 2.8.11 now
2015-11-13 22:13:44 +00:00