1
0
Fork 0
Commit graph

236 commits

Author SHA1 Message Date
James Turner
09fe744de0 Test helper CMake macro.
Also build the test code first, so tests can reside in source tree as
well as the test tree.

Finally, build local Sqlite with -fpic to give consistent linkage when
using either built-in or system sqlite.
2017-03-26 12:15:29 +01:00
James Turner
9e122eaf81 Partial testing framework.
Compile a useful subset of FG as a shared library, and add two basic
uses of this to exercise some Flightplan / RoutePath / navaid
functions.

The test framework can/will be expanded incrementally from here, this
is just a starting point.
2017-03-25 15:35:26 +00:00
James Turner
3653508412 Build- and run-time concept of developer mode.
Make a single Cmake value to expose the build type to code, and use
this to default a run-time ‘developer-mode’ property, which can be
over-ridden from the command line.

Use this to drive the different warning levels. Policies subject to
review, especially whether nightly builds should default to 
developer mode or not.
2017-02-27 23:37:59 +00:00
Bertrand Coconnier
b7ec790426 Flags are carried over from SimGear, no need to specify them again. 2017-02-26 16:40:59 +01:00
Peter Sadrozinski
ec4b9f8542 Alternative terrain engine based on pagedLOD
- remove TileMgr from sub systems - add to btg terrain engine
2017-02-26 10:17:15 -05:00
James Turner
17fe0460a9 Previews displayed in the launcher. 2017-02-25 21:47:58 +00:00
Bertrand Coconnier
227087b3a8 Automatic detection of the ENABLE_SIMD setting for SG:
* Scrapped the previous code
* Instead use the symbol value imported from SG via the "CONFIG" mode of CMake find_package()
2017-02-07 00:04:56 +01:00
Bertrand Coconnier
93a8ab99ff Fix to manage the case where SimGear include files are obtained via CMAKE_PREFIX_PATH 2017-02-05 10:27:30 +01:00
Bertrand Coconnier
044715ba05 CMake commands TRY_COMPILE and TRY_RUN are ignoring the instructions from INCLUDE_DIRECTORIES so the include directory has to specified ad hoc. 2017-02-04 22:53:22 +01:00
Bertrand Coconnier
80b8a298e1 Fix for when SimGear headers are not installed system wide (as is the case for Jenkins) 2017-02-04 21:53:18 +01:00
Bertrand Coconnier
4ab0b71fa8 The flag ENABLE_SIMD is now automatically carried over from SimGear. Mixed configurations between FG & SG could crash FG so this should not be allowed. 2017-02-04 20:21:19 +01:00
James Turner
80e45f6d9b Different solution for FGQCanvas install
Move the install line back inside the subdir, but pull in the extra
config file so the install-bindir is defined.
2017-02-04 08:25:41 +01:00
Erik Hofman
e31d6b083e Pick a default build type if none is specified 2017-01-26 14:48:35 +01:00
James Turner
15dbe1069d Bump the minimum Qt version for Remote-canvas.
QByteArrayList needs 5.4, not 5.3

Also flip the default to off of building the remote-canvas, to avoid
people getting caught out.
2017-01-24 10:34:56 +00:00
Erik Hofman
40b6ca14e8 Move SIMD flags to CMAKE_CXX_FLAGS_RELEASE and fix a typo in the process 2017-01-20 14:56:50 +01:00
Erik Hofman
2408a3a28a Do not rely on SSE3, this is just a slight drawback 2017-01-06 15:10:34 +01:00
James Turner
4a3ee6a74a Relax base-package and SimGear version checks.
As discussed on the devel list, only require the major+minor versions
of FG+SG+data to match by default. If we encounter a situation on
a release branch where stronger checks are needed, it’s easy to
restore.
2017-01-05 11:09:41 +00:00
Florent Rougon
ea827f5677 Revert commits e1b65590, 0b1c3568 and 72886289
Commit e1b65590cb was:

  Add the top-level options.xml and Translations directory moved out of
  FGData

Commit 0b1c356837 was:

  Make the FG installation prefix available to C++ code via config.h

Commit 7288628919 was:

  Load --help output and translated strings from
  $FG_INSTALL_PREFIX/share/flightgear

For the reasons of these revertings, see the thread at
<https://sourceforge.net/p/flightgear/mailman/flightgear-devel/thread/CAHtsj_eFdxLoXXoNq%3D3OKNRmyR6-FowFL97TASdQJx8N05Lmig%40mail.gmail.com/#msg35580548>,
including <https://sourceforge.net/p/flightgear/mailman/message/35584363/>,
<https://sourceforge.net/p/flightgear/mailman/message/35584803/> and
<https://sourceforge.net/p/flightgear/mailman/message/35585421/> (appearing
out-of-thread according to the SF mailing list archive...).
2017-01-05 06:53:53 +01:00
Florent Rougon
e1b65590cb Add the top-level options.xml and Translations directory moved out of FGData
Copy them to ${CMAKE_INSTALL_PREFIX}/share/flightgear at installation time.
2016-12-29 11:33:19 +01:00
James Turner
106b62caa5 Make FGQCanvas a bit more optional. 2016-12-19 17:54:37 +00:00
Erik Hofman
7fe40ddb61 add SSE support for the C compiler (gcc and clang) 2016-12-18 09:40:46 +01:00
Erik Hofman
94ed70607b MSVC 2013+ for 64-bit automatically sets /arch:SSE2 and doesn't recognise te option 2016-12-17 10:51:01 +01:00
Erik Hofman
c9b01b1d69 Enable SSE and SSE2 by default 2016-12-16 10:50:24 +01:00
Durk Talsma
b0d707c3f4 Merge branch 'next' of ssh://git.code.sf.net/p/flightgear/flightgear into next 2016-11-20 12:54:56 +01:00
Durk Talsma
f7424271a7 Some prepratory work for FGTraffic 2020: Added utils/traffic, a sample C++ source/header file, and the necessary changes in the CMakefile system to allow automatic compilation. 2016-11-20 12:52:21 +01: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
James Turner
8e451a05f1 Use Cmake 3.0, and enable C++11 support. 2016-10-24 22:53:55 +02:00
James Turner
c4f584dadf Rewrite Mac Event-Input code 2016-09-28 21:16:24 -05:00
James Turner
656326e48f Kill off legacy Debian multiarch support
We require Cmake 2.8.11 now
2016-09-27 17:18:58 -05:00
James Turner
8f3a98d004 Optionally use fixed osgDB build for linking
This allows us to drop the /FORCE:MULTIPLE work-around.
2016-08-16 12:59:52 +01:00
Erik Hofman
34d8f64f4d AeonWave is off by default 2016-08-05 10:58:05 +02:00
Erik Hofman
9ec4d7749f Add support for AeonWave 2016-08-04 18:43:10 +02:00
Bertrand Coconnier
0a3756ea01 Added the dependency to Shlwapi for the Windows build (needed by SimGear). 2016-07-03 15:38:14 +02:00
James Turner
a0b7abf7ff Remove FGAdmin 2016-06-15 22:31:47 +01:00
James Turner
ff222b108e VS2015 tweaks 2016-06-09 16:19:34 +01:00
James Turner
e7c7c5b226 Fix dependency on ‘version’ file 2016-06-09 11:04:32 +01:00
James Turner
0da1fc574d VS2015 compatability fixes. 2016-06-01 22:58:03 +01:00
James Turner
3c5340d98d Merge /u/edauvergne/flightgear/ branch fdm_restoration into next
http://sourceforge.net/p/flightgear/flightgear/merge-requests/24/
2015-12-10 22:35:07 +00:00
James Turner
5bf59d58c4 On Mac, force the macon-min-version value
- Workaround for CMAKE_OSX_DEPLOYMENT_TARGET not behaving as it’s
  supposed to reliably.
2015-12-08 20:47:02 +00:00
Edward d'Auvergne
acea7c422b Reactivated the UIUC, LaRCsim, and special purpose FDMs.
As the FlightGear distribution ships aircraft based on these FDMs with each
release, the shipped FlightGear executables should therefore be able to handle
these aircraft.  For example the unique ornithopter can only be flown with the
UIUC FDM, hence it is available for download but will be non-functional for most
users.

This partly reverts commit e819a4aaa4 from Nov 1,
2011 which deactivated the compilation of these in the CMakeLists.txt file.

Signed-off-by: Edward d'Auvergne <edward@nmr-relax.com>
2015-12-05 14:56:42 +01:00
James Turner
2314ccfe13 Developer-warnings
- make some existing warnings developer-mode only
- add a warning about legacy aircraft path usage
2015-11-13 22:13:44 +00:00
James Turner
3e64e276d7 Remove OldGNUInstallDirs helper
- we require CMake 2.8.11 now
2015-11-13 22:13:44 +00:00
James Turner
980a98b176 Silence more Clang (Xcode 7) warnings 2015-09-27 20:40:34 -05:00
James Turner
53b41d0284 Drop explicit SDK setting on Mac 2015-09-20 19:44:35 -05:00
James Turner
54de0e9206 RPATH handling for Mac. 2015-06-08 10:37:26 +01:00
James Turner
c98f8e4ac1 Explicit Mac SDK for the moment. 2015-04-11 21:58:55 +01:00
Rebecca N. Palmer
14405fe2e3 Fix compile with CMake 3.2.1, by Kevin Seroux
Explicitly link X11, as this no longer comes with OpenGL
2015-04-03 19:15:52 +01:00
James Turner
06a260822c Make 3.2.1 fix: make thread check platform specific. 2015-03-17 23:33:57 +00:00
James Turner
fe25c42408 Make flag Mac specific. 2015-03-17 23:27:25 +00:00
James Turner
a6b5ab7c74 Fix for Cmake 3.2.1 Mac SDK handling 2015-03-17 22:33:54 +00:00
Clément de l'Hamaide
ba386b314e Increase required CMake version
Qt5 require CMake 2.8.11 or later http://doc.qt.io/qt-5/cmake-manual.html
2015-03-14 18:09:19 +01:00
Clément de l'Hamaide
67d528a46c Show Qt paths in CMake 2015-03-12 09:45:00 +01:00
James Turner
a466dbce73 Very crude work on GUI base package selection.
- feedback on wording greatly appreciated.
- needed to make nightly builds usable without bundled data.
2015-03-08 00:42:05 +00:00
James Turner
f36c81c8cb Fix where we set OS-X deployment target. 2015-02-24 12:35:26 +00:00
James Turner
84b240b84c Adjust warning flags for Clang. 2015-02-12 16:24:27 +00:00
James Turner
211a4982c8 Force libc++ explicitly on Clang 2015-02-11 15:48:42 +00:00
James Turner
8c38cf5740 Better CMake policy detection
- thanks to Rebecca Palmer for suggesting this!
2015-02-10 17:12:01 +00:00
James Turner
891c8eaa9f Cmake policies conditional on Cmake version. 2015-02-09 16:42:58 +00:00
James Turner
b8c9cd454e Force 10.7 deployment version on Mac. 2015-02-09 15:11:28 +00:00
James Turner
7d9609116b - Make Qt check guarded by a CMake option
- Only init QApplication if showing the launcher.
2015-01-10 14:05:23 +00:00
James Turner
72e0ea9e40 Only set AUTOMOC for fglauncher target.
(Avoids pointless noise for all other targets)
2015-01-07 09:38:02 +00:00
James Turner
78e8f53312 In-app launcher for Mac, based on Qt5.
The old Mac launcher doesn’t work on Yosemite, add a tiny
Qt-based launcher inside the main process (no need to fork /
exec) which runs before the OSG window is created.

Will be merged for 3.4, hopefully with no impact on other
platforms.
2015-01-06 19:13:30 +00:00
James Turner
263bc56b4e FreeBSD fixes.
From:
http://svnweb.freebsd.org/ports/head/games/flightgear/files/
2014-11-13 15:15:52 +00:00
Thomas Geymayer
2520124e97 Update for OpenSceneGraph 3.3.2 API changes. 2014-08-09 19:13:39 +02:00
Thomas Geymayer
a948f68960 CMake: add UTF8-CPP to SimGear include directories. 2014-07-30 12:47:33 +02:00
Christian Schmitt
568dadc898 Only include IAX 3rdparty files if needed 2014-05-31 13:50:28 +02:00
Torsten Dreyer
8da690a2b7 set ENABLE_FLITE=On as default 2014-05-20 10:52:59 +02:00
Clément de l'Hamaide
6d6e45274f FGadmin: fix compilation, move CMake stuff to better place, remove old ./configure system 2014-04-30 20:34:05 +02:00
Torsten Dreyer
1c5c1b2cb1 Fix hts_engine cmake error 2014-04-30 09:26:58 +02:00
Torsten Dreyer
6ee2fcdd9e Allow using the system version of flite and the HTS engine
By default, if the system version exists and can be used,
then it will be used. Otherwise, the local version will be used

Original patch by  Saikrishna Arcot via
https://gitorious.org/fg/flightgear/merge_requests/1582
slightly modified
2014-04-28 21:33:48 +02:00
James Turner
7b2d710cd0 Add hts_engine 1.08 and flite_hts 1.05 code.
- Not compiled by default, nor hooked up to anything yet.
- Both libraries licensed under modified BSD license.
- Added top-level CMake file for both, to create a plain static
  library for each.
2014-03-10 09:32:43 +00:00
James Turner
230e157190 Raise required OSG version to 3.2.0 2014-02-19 11:00:14 -08:00
James Turner
1c286e4932 Remove some CMake search paths
As the comments says, none of these should be needed, or
they are added by CMake automatically.
2014-02-14 20:45:19 +00:00
Erik Hofman
9097f8aac3 Set JSBSim terrain handling code default to ON 2014-02-09 14:10:42 +01:00
Erik Hofman
73a519a95c Make the JSBSim terrain handling code compile time configurable by calling cmake -DJSBSIM_TERRAIN=1 2014-01-29 13:50:06 +01:00
James Turner
1a372d9366 Update image-server logic.
- no dependency on libJpeg or Simgear
- no duplicate rendering of the scene (uses a draw callback)
- supports other image types, eg PNG
- threaded so doesn't block the main loop ever
2014-01-27 09:08:34 +00:00
Clément de l'Hamaide
da05f403b1 Use GSM and Speex libraries from system if they are installed by Saikrishna Arcot 2014-01-23 17:46:49 +01:00
James Turner
590be3f8ff Initial integration of CrashRpt for Windows. 2014-01-18 14:51:19 +00:00
Rebecca Palmer
bf1fe65bc5 Disable screensaver: initial Linux-only implementation
Add a function fgOSDisableScreensaver() that attempts to disable the
screensaver (currently only succeeding on Linux), and call it on startup.

CMake option USE_DBUS (on by default), requires libdbus-1

Motivation: most screensavers do not monitor the joystick
https://bugs.launchpad.net/ubuntu/+source/flightgear/+bug/793599

Discussion: http://sourceforge.net/p/flightgear/mailman/message/31717061/
2013-12-15 21:18:22 +00:00
James Turner
4bb52e46df Kill of embedded-Simgear CMake mode.
This was a silly idea, CMake super-builds from fgmeta are the correct
approach to this going forward.
2013-09-28 14:17:53 +01:00
James Turner
97d89a0c47 Remove all references to libsvn from build. 2013-09-28 14:15:47 +01:00
Clément de l'Hamaide
bebc7235b3 Restore ENABLE_IAX 2013-09-27 20:24:42 +02:00
Clément de l'Hamaide
c022bb8d51 Move IAXClient library into 3rdparty directory
Remove ENABLE_IAX option
Add an improved FGCom standalone as part of FG in utils directory
2013-09-27 16:05:45 +02:00
James Turner
0206de2d2c Relocate Sqlite3 sources, upgrade to 3.8.0.2
Move sqlite source to a separate location, and build with
an intermediate library target. This permits us to set compile options
easier, including an important one, NDEBUG, which improves performance.

Sqlite 3.8.0.2 also includes an updated query planner which may improve
some queries, to be tested.
2013-09-26 09:52:41 +01:00
f-jjth
d03b44b662 FGCom integrated into FlightGear.
Disabled by default at build time.
2013-08-16 17:02:47 +01:00
hof
8c02a57ff8 Add libdl to FLTK_LIBRARIES when the system supports it. Required for libfltk1.3. 2013-07-18 08:50:22 +01:00
PlutoniumHeart
acf47d00d5 Replacing strdup with _strdup in MSVC 2013-03-07 00:00:47 -07:00
F-JJTH
9fb299b153 Display RTI status like it's done in Simgear 2013-02-18 09:18:39 +00:00
Thomas Geymayer
6c10f99573 Make compiling of all utils/tools optional 2013-02-12 17:38:46 +01:00
James Turner
ead3be2098 Boo, typo. 2013-01-26 14:44:03 +00:00
James Turner
53d9aa4963 Support optionally embedding simgear. 2013-01-26 15:32:18 +01:00
ThorstenB
0937d79075 Fixed incomplete copy&paste issue. 2012-12-01 11:06:50 +01:00
ThorstenB
3b6436bfb8 #946: some libraries not found on Ubuntu/Debian
Ubuntu/Debian introduced "multiarch" library directories, which is
unsupported by CMake <= 2.8.10. Add manual search paths as a workaround.
Currently it is only needed for libsvn, but it is needed for any lib
which is converted to the new directory standard.
2012-12-01 11:01:25 +01:00
Thomas Geymayer
82884ab3c6 Improve finding gperftools and disable profiling by default (even with gperftools installed) 2012-11-19 13:11:03 +01:00
Thomas Geymayer
779a9ae415 Really make profiling commands optional 2012-11-15 13:56:31 +01:00
Thomas Geymayer
fe1222a90d Optional profiling commands using gperftools 2012-11-15 11:55:37 +01:00
ThorstenB
d94dd2013a #893: add missing docs for cmake build option. Thanks to koubiwan.
SIMGEAR_SHARED actually worked for FG, but the option wasn't visible in
cmake-gui.
2012-10-04 20:57:35 +02:00
ThorstenB
293d6b3565 Fix compilation with enabled EVENT_INPUT
Need to move the definition to the toplevel cmake file, since sources
are no longer compiled on directory level (individual libs per dir).
2012-09-22 14:23:15 +02:00
ThorstenB
acb7fb8e95 Fix shared library build with sqlite
Dependency to threading lib is required (It is already provided for
static SimGear).
2012-09-22 14:23:14 +02:00