1
0
Fork 0
Commit graph

189 commits

Author SHA1 Message Date
James Turner
016e1c89bc CMake: avoid invoking Git in Dev builds
Avoid running FindGit and git process on every build, when in Developer
mode: this feature is only useful for CI builds, and remove it makes
the edit-and-debug cycle slightly faster. This means buildId.h contains
dummy values when FG_BUILD_TYPE=Dev
2023-01-09 15:07:03 +00:00
James Turner
dc467ebdfa Cmake Improve Finder for CppUnit
Define an imported target for the system CppUnit, so we can
correctly pass includes locations to FgfsTestSuite
2023-01-08 19:36:44 +00:00
James Hogan
595c8a2fcb
CMake: Fallback to built-in osgXR library
Fall back to using the new built-in osgXR library in 3rdparty/ if no
system library is provided and OpenXR is available.
2022-01-13 18:01:00 +00:00
James Hogan
31956f1f33
CMake: Handle osgXR includes implicitly
Recent CMake versions automatically add the include paths when
flightgear is linked against the osgXR::osgXR target, and code in
SetupFGFSLibraries.cmake handles older CMake versions. Therefore drop
the osgXR special handling in SetupFGFSIncludes.cmake and handle old
versions in SetupFGFSLibraries.cmake as done for the other libraries.
2022-01-13 18:00:44 +00:00
James Turner
eb82084c53 Remove custom FindOpenAL.cmake
Adjust IAXClient OpenAL backend so we can use the standard CMake
finder for OpenAL (or OpenAL-soft).
2021-12-25 13:40:26 +00:00
James Hogan
dcdda1044a
VR: Find the osgXR library
Allow the osgXR[1] library to be found and linked against. We'll use
this to implement VR in FlightGear.

[1] https://github.com/amalon/osgXR
2021-09-02 22:29:09 +01:00
James Turner
5ef5ff1b37 Fix an issue where libEvent is not available
Ensure compilation with DBus but without libEvent still works
2021-07-31 19:21:18 +01:00
James Turner
9fc45e598f Remove Qt includes from fgfsObjects build
Sink all Qt classes into the specific libraries, so the main objects
don’t need the includes available.
2021-03-09 21:54:47 +00:00
James Turner
6e42c8fc57 Restore compatibility with CMake < 3.12 2021-03-09 12:02:57 +00:00
James Turner
c92c41a50f Switch test_suite build to use an OBJECT library
Remove use of BUILDING_TESTSUITE from headers. Where possible, move
test APIs to their own file in the test_suite dir (testApis.cxx). For
some others, add them to a special list of ‘sources which depend on
the build mode’. This will hopefully go away with some further
refactoring.
2021-03-08 16:59:15 +00:00
James Turner
33e205f123 Switch to using OBJECT library for main build
Allows sharing object files between the fgfs and test_suite targets, in
a follow-up commit.
2021-03-08 16:59:14 +00:00
James Turner
57d6058c57 CMake: remove .cmake extensions
These seem to break include()’s regular path searching, which is odd.
2021-01-10 13:33:37 +00:00
James Turner
c51379db8c CMake: add upstream FindLibLZMA.cmake
Required since older CMake versions of this don't define an imported target
2021-01-10 11:57:00 +00:00
James Turner
55fc3d99ae Launcher: fix selection of English language
Due to the file naming, we would not pick English (even if it was
the first UI language), if the active region was not US.

Ticket-Id: https://sourceforge.net/p/flightgear/codetickets/2406/
2020-11-12 09:30:36 +00:00
legoboyvdlp R
6512783996 SetupSwiftLibraries.cmake requires a global variable libEvent_target. However, while the PKGConfig variant of FindLibEvent.cmake did set this, the Win32 variant did not; therefore CMake would always fail to find libEvent, disabling Swift. Therefore I set this property, restoring proper compilation of Swift on Windows systems. 2020-10-29 21:29:13 +00:00
James Turner
992bb81c0f Remove debug output from this file. 2020-10-23 15:40:33 +01:00
James Turner
329d3cdd13 PLIB includes fix from Florent 2020-09-29 12:30:34 +01:00
James Turner
22bad9db33 Fix for CMake/system libSGM issue: consistent path
Our copy of libGSM, and a system-wide version have different include
suffixes, so adjust the FindGsm.cmake so that the returned include-path
is consistent with our internal version.

See discussion in:https://sourceforge.net/p/flightgear/codetickets/2368/
2020-09-03 19:18:57 +01:00
James Turner
740193a378 CMake: different fix for ALIAS issues with 3.10
ALIAS is not really functional in 3.10, so use a variable to approximate
the same behaviour. Not elegant but it seems to work.
2020-08-27 22:33:08 +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
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
Erik Hofman
c6182af080 Consistent naming 2020-08-24 11:00:05 +02:00
Erik Hofman
49b13372f4 Merge branch 'next' of ssh://git.code.sf.net/p/flightgear/flightgear into next 2020-08-24 08:17:13 +02:00
James Turner
a82a13b70c Cmake: fix compat with CMake 3.10
Thankfully StackOverflow had an evil solution to this missing feature
in 3.10.
2020-08-23 22:25:03 +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
Erik Hofman
be1764a995 XMerge branch 'next' of ssh://git.code.sf.net/p/flightgear/flightgear into next 2020-08-23 19:22:47 +02:00
Erik Hofman
00c32f5408 Display that AeonWave is being found, even when cached 2020-08-23 19:22:25 +02:00
James Turner
fef50310bf Cmake: fix some issues Scott spotted. 2020-08-23 18:15:07 +01:00
James Turner
87a7221051 Linux Cmake fixes 2020-08-23 11:31:37 +01:00
James Turner
f7dc02d009 Fix Swift build with CMake 2020-08-23 11:31:37 +01:00
James Turner
e4e2b34a4c FGCom OpenAL CMake fixes
Ensure we detect OpenAL the way IAXClient expects, and set it up as
a dependency of IAXClient, not FGCom.
2020-08-23 11:31:37 +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
eb55f25997 Newer FindGit 2020-08-23 11:31:37 +01:00
James Turner
47ff3e9f67 Improve CMake strucutre 2020-08-23 11:31:37 +01:00
James Turner
22ed65bbb8 Cmake: FindCURL with imported target support 2020-06-25 09:39:26 +01:00
Lars Toenning
b280905b8c Fix CMake 5.17+ FPHSA warning
Starting with CMake 5.17 FindPackageHandleStandardArgs is detecting package name mismatches. Also capitalization is checked. 
See: ee4673c1ae
2020-06-16 12:09:39 +01:00
James Turner
37936496a4 CMake translations: don’t break no-translation builds
Move all the relevant pieces inside the do_translate guard, so we
don’t break compilation when translation is disabled.
2020-05-13 23:35:53 +01:00
James Turner
3dc3d4399a Cmake: detect required translations automatically
This avoids needs to manually keep this file in sync with the actual
available translation dirs.
2020-05-13 15:01:50 +01:00
James Turner
05d455debc Fix build issue when a translation file is missing
Only try to build XLF files we actually found in the source dir.
2020-05-12 13:36:28 +01:00
James Turner
b52d41b0c3 Allow region/local specifications of translations 2020-05-08 14:54:53 +01:00
James Turner
fe3a27450f Fix DBus detection for Cmake < 3.6
From Saikrishan Arcot
2020-04-27 14:21:47 +01:00
James Turner
faee5dbabf Code changes for crash reporting with Sentry. 2020-04-17 17:55:34 +01:00
James Turner
a46a73459f Launcher: add Catalan, Slovak to languages 2020-04-16 11:14:14 +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
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