1
0
Fork 0
Commit graph

268 commits

Author SHA1 Message Date
James Turner
47ff3e9f67 Improve CMake strucutre 2020-08-23 11:31:37 +01:00
James Turner
5820619575 Move ENABLE_ASAN check to global scope
Allows ASan with GCC.
2020-08-23 11:30:21 +01:00
James Turner
d7504d8f65 Enable ASan for Clang 2020-08-17 10:21:26 +01:00
Julian Smith
d0aaf240f6 renamed version -> flightgear-version to avoid breaking clang++.
clang++ headers end up including <version>, which picked up this file instead
of the system one, breaking builds.
2020-07-04 09:02:51 +01:00
James Turner
94f98294de Workaround Fedora Qt packaging bug
Use a manual include file, instead of the official method, to check
if the Qt5 private headers are installed or not.
2020-06-24 16:36:45 +01:00
James Turner
8a35be7798 Flip the C++17 switch, experimentally. 2020-06-22 20:40:29 +01:00
James Turner
425a2f4fe3 C++ version fixes for C++17 support 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
306cc83744 Raise versions of CMake/Qt/Compiler/macOS
Let’s see what breaks :)
2020-06-18 12:58:09 +01:00
James Turner
9326c88f9b Move Qt root path variable to top-level CMakeList 2020-06-10 17:59:09 +01:00
James Turner
32ff21c1df UI: support OSG multi-threading modes, partially
Requires private header, so might need an additional package installed
on some Unixes.
2020-06-08 22:44:52 +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
af00b5e304 Set CMake OpenGL VND policy 2020-06-05 13:33:27 +01:00
James Turner
f3db10d43b Fix missing guard in SIMD compiler flag setting 2020-05-28 10:47:29 +01:00
James Turner
bb6174bd44 Fix compilation with Boost >= 1.73 2020-05-28 10:47:10 +01:00
James Turner
cd2011b61e Change how SIMD compile flags are set 2020-05-26 13:06:35 +01:00
James Turner
0b845b9c9f Kill setting compiler flags for Debug
Use the Cmake default values for this
2020-05-24 14:32:59 +01:00
James Turner
54f660764e Tests: change how we find+load data files
Avoid encoding test-data as strings, since this exceeds MSVC limits
on string literals, and tests don’t need to be relocatable anyway,
so we can just hard-code the source location into config.h
2020-05-24 14:14:35 +01:00
James Turner
1b86267dbe Clang: Adjust RelWithDebInfo flags 2020-05-13 00:08:19 +01:00
James Turner
620a02bad3 Make sentry APi key customisable 2020-05-12 12:01:59 +01:00
James Turner
45eb7eaff4 Clang disable global setting of CFLAGS / CXXFLAGS
This was intended to only affect Debug builds, but when using a multi-
config generator (XCode, Visual Studio etc) it affects all builds.

Disabling for now until we figure out a better way to do this.
2020-05-10 19:42:35 +01:00
James Turner
fe16551cf6 Better RelWithDebInfo flags for CL.exe 2020-05-08 14:32:40 +01:00
James Turner
fe56b8272b Windows: ensure RelWithDebInfo is fast
Default CMake RelWithDebInfo pessimizes inlining
2020-05-07 14:13:10 +01:00
James Turner
faee5dbabf Code changes for crash reporting with Sentry. 2020-04-17 17:55:34 +01:00
James Turner
9957d02687 Cmake: detect various packages quietly
For packages which are optional, check for them quietly, to avoid lots
of noise in our CMake output.
2020-04-09 14:00:19 +01:00
James Turner
92e6cccfdc Tweak DBus detection, especially for macOS
Avoid the need to set PKG_CONFIG_PATH externally, use the internal
CMake behaviour where CMAKE_PREFIX_PATH is added. Unfortunately, we
do still need to manually add CMAKE_INSTALL_PREFIX, which is not
auto-added.
2020-04-08 16:54:20 +01:00
James Turner
2500534b1e Build changes for new crash-reporting system. 2020-04-07 09:38:13 +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
gallaert
4b60bc7a5b CMake fails to detect OpenRTI include files. 2020-04-01 20:59:39 +01:00
James Turner
96be636240 Fixing up HID event input on Mac/Windows
Removing old macOS separate input - the HID version is better in
every way.
2020-04-01 15:29:58 +01:00
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
19eaaf04ee Remove some redundant CMake output 2020-03-13 09:51:21 +00:00
James Turner
22de9d30b5 Make the test_suite happier under MSBuild/VS
Use the  CMake target as the command to invoke, so various things
get set automatically, and set the MSVCIDE_RUN_PATH so DLLs
are found correctly.
2019-09-26 13:00:23 +01:00
Edward d'Auvergne
0bb968543b TestSuite: Renamed the run_test_suite binary to fgfs_test_suite.
This is on James' suggestion.  The 'fgfs_test_suite' or 'fgfs_test_suite.exe'
binary file name is significantly more obvious as to its purpose.
2019-09-25 14:59:11 +02:00
Edward d'Auvergne
3d13c16973 TestSuite: CMake fix for variables missing from the parent scope.
The test suite CMake target variables have been shifted back into
test_suite/CMakeLists.txt.  These are now correctly constructed and placed into
the parent scope where the test_suite target now resides.
2019-09-25 10:38:19 +02:00
Edward d'Auvergne
f6efeb3f34 Test Suite: Workaround for aberrant MS Windows CMake behaviour.
The add_custom_target() CMake function for the test_suite target has been
shifted from test_suite/CMakeLists.txt to the top level CMakeLists.txt file.
The variable setting CMake code required for this has also been shifted.  This
allows for the same build command 'cmake --build .  --target test_suite' to work
on all operating systems.
2019-09-17 21:50:52 +02: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
84c5ea976b Try to make UDev detection quieter 2019-05-28 09:14:49 -07:00
James Turner
396d9e4c3b Soften the HID dependency, so we can build
without HID if the necessary 3rdparty libs are not found.
2019-05-28 17:09:58 +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
James Turner
59ec70dfea Default Swift to ON, adjust checks
Default Swift to on, and disable it if we fail to find DBus or
libEvent.
2019-05-24 11:57:01 +01:00
Lars Toenning
5a662d97fd Fix broken libevent/dbus cmake module 2019-05-17 10:19:38 +02:00
James Turner
9d71d09072 Enable HID-input on Windows 2019-04-27 18:54:13 +01: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
Florent Rougon
b405bd47d0 Use the system CppUnit only when -DSYSTEM_CPPUNIT=ON is passed to CMake
According to the discussion around [1], using the system CppUnit library
is rarely useful but likely to cause problems (due to possible
incompatibilities between versions); that is, unless people doing so
really know what they are doing. For this reason, this commit changes
the CMake config logic as follows: the system CppUnit library is now
only used when explicitly asked for with -DSYSTEM_CPPUNIT=ON on the
CMake command line.

[1] https://sourceforge.net/p/flightgear/mailman/message/36636483/
2019-04-11 22:14:53 +02:00
Lars Toenning
85acefab95 Swift: initial support 2019-04-11 11:36:22 +01:00
Fernando García Liñán
e042364dd0 Compositor framework initial commit. 2019-02-04 18:03:38 +01:00
Erik Hofman
073e8927b9 Split up SIMD support in ENABLE_SIMD which enables sse2 support for the compiler and ENABLE_SIMD_CODE which enables the hand crafted SIMD math functions which defaults to OFF now since compilers have catched up on generating optimized vectorized SIMD code. 2019-01-15 10:37:37 +01:00
James Turner
aa6c4c758a Mac: set CMake deployment target the right way
Necessary for building with the Mojavae 10.14 SDK. This also meant
bumping the min version to OS-X 10.9
2018-10-01 22:28:08 +01:00