Commit Graph

218 Commits

Author SHA1 Message Date
Erik Hofman
1446f559cc Add -fPIC to make FlightGear's shared library linking for fgtestlib happy 2017-03-26 10:17:10 +02:00
Peter Sadrozinski
61525c555e Disable GDAL, and compiling new terrain engine by default 2017-02-26 09:46:29 -05:00
Peter Sadrozinski
dad30b0cc2 alternative terrain engine - SGMesh utilizing pagedLOD 2017-02-25 19:17:55 -05:00
Erik Hofman
edec5bbc01 There is still a segmenttion fault issue with the AVX code, disable it until this is sorted out 2017-01-26 14:46:36 +01:00
Erik Hofman
33feb9a416 Move SIMD flags to CMAKE_CXX_FLAGS_RELEASE and fix a typo in the process 2017-01-20 14:56:15 +01:00
Erik Hofman
fbc0986fd8 Do not rely on SSE3, this is just a slight drawback 2017-01-06 15:10:52 +01:00
Erik Hofman
892579456d add SSE support for the C compiler (gcc and clang) 2016-12-18 09:40:38 +01:00
Erik Hofman
4dde1d365c MSVC 2013+ for 64-bit automatically sets /arch:SSE2 and doesn't recognise te option 2016-12-17 10:50:19 +01:00
Erik Hofman
175eddd1fa Add the proper SSE options to Clang too 2016-12-16 11:05:03 +01:00
Erik Hofman
203db3d095 Enable SSE and SSE2 by default 2016-12-16 10:49:44 +01:00
James Turner
5ecc1ab6f2 Simplify timing code.
Assumes we have timegm on Unix, and use _mkgmtime on Windows.
This means we never need to use ftime() / timeb.h
2016-11-17 21:23:56 +01:00
James Turner
3009aadaa6 Simplify Boost auto-detection on MSVC. 2016-11-14 23:05:10 +01:00
James Turner
ee02750e95 Enforce VS2013/2015 requirement on Windows. 2016-11-13 14:57:39 +00:00
James Turner
f55007394e Make more includes target-specific. 2016-11-13 14:57:21 +00:00
James Turner
a09630bcca Cmake export fixes.
Should hopefully fix importing in FlightGear
2016-11-02 13:59:43 +00:00
James Turner
b44c70b3f4 Simplify isnan detection with C++11 library. 2016-10-30 22:49:38 +00:00
James Turner
51e7d95bf2 Require CMake 3.0, enable C++11
Let’s see what this breaks.
2016-10-24 22:52:51 +02:00
James Turner
202571386b Exported package fix.
https://sourceforge.net/p/flightgear/codetickets/1892/
2016-10-20 20:26:51 +01:00
Florent Rougon
11c6e5bf04 Require zlib 1.2.4 or compatible
Commit 8277857827 relies on zlib's
gzoffset() function (not just offset(): that was a typo in the commit
message, sorry). This function appeared in zlib 1.2.4 (which dates from
2010). Enforce this requirement with CMake.
2016-10-19 21:17:54 +02:00
James Turner
7b2507cb19 Config changes to warn on older tools.
Warn on to-be-deprecated versions of Cmake, Visual Studio and GCC
2016-09-28 17:20:51 -05:00
James Turner
2e19aaaff9 Remove multi-arch workaround in CMake
Since we now require 2.8.11, we can rely on this bug being fixed.
2016-09-27 20:43:03 -05:00
James Turner
6b82b78c7c Warn when OSG is not in UTF-8 mode.
This will become an error in the near future.
2016-08-15 22:38:00 +01:00
James Turner
8201301064 Improve Windows linkage.
When using a patched OSG, avoid /FORCE:MULTIPLE work-around.
2016-08-15 22:38:00 +01:00
James Turner
a31d1342d5 Simplify Aeonwave/OpenAL logic in Cmake slightly 2016-08-06 14:40:14 +01:00
Erik Hofman
f092f000fa AeonWave is off by default 2016-08-05 10:57:20 +02:00
Erik Hofman
f3c3b7ec1b Split include dirs 2016-07-29 12:35:20 +02:00
Erik Hofman
efe9648afa Activate AeonWave by setting USE_AEONWAVE to ON 2016-07-21 13:05:40 +02:00
Erik Hofman
d12cd4945e Get soundmgr_aeonwave in a compilig state 2016-07-21 13:05:40 +02:00
Bertrand Coconnier
5ab595b401 The Shlwapi library is now needed for the Windows build (required in simgear/misc/sg_dir.cxx which calls to PathIsDirectoryEmpty) 2016-07-03 14:36:22 +02:00
James Turner
516d76d41b VS215 tweaks, warning fixes 2016-06-09 20:38:01 +01:00
James Turner
c762dbe864 Fix dependency on ‘version’ file. 2016-06-09 11:03:35 +01:00
James Turner
8690e4617f CMake tweaks for MSVC detection 2016-06-03 12:19:21 +01:00
James Turner
729c9e3faa More VS2015 fixes 2016-06-01 22:36:36 +01:00
Erik Hofman
03f7f82856 Revert to the previous way of handling OpenAL. The reason was to find alext.h but that reason has gone by copying a small number of defines 2016-06-01 09:51:41 +02:00
Erik Hofman
d1a808c630 Find OpenAL the proper way 2016-05-30 10:50:22 +02:00
Erik Hofman
f65a970d2e Fix two OpenAL related compiler errors 2016-05-27 19:08:20 +02:00
Maciej Mrozowski
2b15b6b8ad Add SYSTEM_UDNS CMake option. Remove spurious EXPAT_LIBRARIES linking when using bundled expat. 2016-05-26 02:33:24 +02:00
Erik Hofman
857f7c9e61 Revert to c++98 2016-05-24 21:37:12 +02:00
Erik Hofman
03a8a2a3fb Switch to c++11 2016-05-24 10:42:01 +02:00
Alessandro Menti
fd124e91de CMakeLists.txt: explicitly set the standard to C++98
Set the C++ standard to C++98 to avoid GCC 6 compilation failures.
2016-05-23 23:16:35 +02:00
James Turner
616826ab69 Remove non-CURL HTTP option. 2016-05-07 10:11:40 +01:00
Torsten Dreyer
eac3402176 Enable DNS resolver code by default 2016-05-03 14:58:38 +02:00
Torsten Dreyer
ff5b09c97b Initial commit for a DNS service resolver
- import udns library
  (http://www.corpit.ru/mjt/udns.html)
- initial draft for a DNSClient (derived from HTTPClient)

Enable compile and test by adding -D ENABLE_DNS=Yes to cmake flags
2016-04-28 09:37:08 +02:00
James Turner
af0a51930e CMake: don’t export build to build tree
- only export targets to the install tree, since this is
  hopefully compatible with CMake 2.8
2016-02-02 18:33:20 +00:00
James Turner
ccb5d05eb4 Fix headless build for CMake export 2016-01-30 14:29:12 +00:00
James Turner
9d7402242a Work on CMake export of targets. 2016-01-29 23:15:07 +00:00
James Turner
20ea55bdbc Set macos-min-version for C files too
Should fix another 10.7 issues (Nasal code is .c)
2015-12-10 14:53:17 -06:00
James Turner
05d9d7cae8 On Mac, force setting macon-min-version
- the CMake option seems to be erratic, it works locally but not
  on the Jenkins machine for inexplicable reasons.
2015-12-08 20:42:43 +00:00
James Turner
81d668784a Fix spelling of Find(CURL) 2015-11-24 00:09:19 +00:00
James Turner
a57e969639 Optional use libCurl as the HTTP client.
Will permit HTTPS for packages in the future, disabled by default
for the moment.
2015-11-22 23:53:46 +00:00
James Turner
5c9ca9cbe2 EOL cleanups. 2015-11-22 22:36:54 +00:00
James Turner
5676f96fbf Require Cmake 2.8.11
- drop OldGNUInstallDirs work-around as a result
2015-11-22 22:34:31 +00:00
James Turner
70c5d60564 Drop explicit SDK setting on Mac 2015-09-20 19:30:04 -05:00
James Turner
9a9cd62957 Set RPATH on Mac 2015-06-07 15:57:01 +02:00
James Turner
686f095f1e Explicit Mac SDK for the moment. 2015-04-11 21:58:15 +01:00
James Turner
3c204e84f4 Fix missing include for Cmake 3.2.1 2015-03-17 23:32:57 +00:00
James Turner
7774b76ad2 Only detect threading library where needed
- avoids failure with newest CMake on Mac
2015-03-17 23:28:52 +00:00
James Turner
acd655b37b Make flag Mac-specific. 2015-03-17 23:26:20 +00:00
James Turner
1a09683351 Fix for Cmake 3.2.1 on Mac SDK handling 2015-03-17 22:31:05 +00:00
James Turner
1365a02aea Fix where we set OS-X deployment option. 2015-02-24 12:36:28 +00:00
James Turner
6323477a35 Tweak warning flags, for newer Clang.
No functionality changing, just less spam in the compile logs.
2015-02-12 16:21:15 +00:00
James Turner
1bf0b7222d Explicitly force libc++ on clang 2015-02-11 15:46:01 +00:00
James Turner
b2ac9982d4 Better CMake policy detection
- thanks to Rebecca Palmer for suggesting this!
2015-02-10 17:11:31 +00:00
James Turner
84cbfb2e98 Cmake policies conditional on Cmake version. 2015-02-09 16:42:40 +00:00
James Turner
7479cadbba Switch 10.7 on Mac and revert to using libc++
(Deployment on libstdc++ with the 10.9 SDK is just too painful)
2015-02-09 15:12:21 +00:00
James Turner
f711306085 Force SDK version / C++ library on Mac. 2015-02-08 13:46:09 +00:00
James Turner
1b7f310ea6 Merge FreeBSD patches.
Taken from:
http://svnweb.freebsd.org/ports/head/devel/simgear/files/
2014-11-11 22:29:24 +00:00
Thomas Geymayer
519326f751 Add simple keyboard event demo application. 2014-08-08 00:59:06 +02:00
Thomas Geymayer
7df39b9fc8 Fallback for old Boost (also with UTF8-CPP library). 2014-07-30 12:44:21 +02:00
Thomas Geymayer
02ac1a43c1 Add smart pointer tests (finally using Boost.Test) 2014-05-08 02:17:24 +02:00
James Turner
15d3c12139 Fixed for FreeBSD
(From Gerald Laplanche)
2014-04-03 13:42:11 +01:00
James Turner
b0cad59508 Raise required OSG version to 3.2.0 2014-02-19 10:58:39 -08:00
James Turner
8f6677974e Mac: fix static linkage
- Link against Cocoa, not CoreServices (for NSFileManager)
2014-01-28 12:39:28 +00:00
James Turner
c1b579ec5d Remove jpeg-factory.
(FlightGear can now do the same, without the helper class)
2014-01-27 09:19:11 +00:00
James Turner
d69ea5fda6 Kill off EMBEDDED_SIMGEAR 2013-10-17 16:09:39 +01:00
Stanislaw Halik
0186cbb7b7 cmake: prevent Boost barfing out too many warns 2013-10-03 21:49:38 +01:00
Stanislaw Halik
fa36e94c4b fix static build with recent GNU binutils
Signed-off-by: Stanislaw Halik <sthalik@misaki.pl>
2013-10-03 21:49:38 +01:00
James Turner
3e8732b230 Libsvn / APR dependency is removed.
Remove any use of libsubversion / API in Simgear, and always
compile the built-in SVN client code.
2013-09-23 18:05:37 +01:00
James Turner
d263334030 Attempting to fix import/export linkage on Windows.
Hopefully this tells the Expat headers not to do any clever
declspec(import) or export stuff, which we don't want since we only
use the symbols within SimGearCore, and don't export them.
2013-09-19 22:07:41 +01:00
James Turner
38fb9ea41e Intermediate static libs have issues.
Switch back to including the bundled expat sources directly in the
targets, since transitive linking of static libs is very awkward.
Makes static build happy again (let's see what else breaks)
2013-09-19 21:42:28 +01:00
James Turner
a922aaa68e Move bundled Expat to new home.
Renamed bundled Expat headers to avoid any
possibility of accidental including system headers when
using bundled Expat, or vice-versa. Should help with SVN
crashes reported by Thomas.
2013-09-19 20:12:32 +01:00
James Turner
e06f9e35b3 Tweak for 64-bit Linux linkage. 2013-09-04 08:45:06 +01:00
Thomas Geymayer
86e2de8d10 Fix #1139
Always set TEST_LIBS as applications/tools also need to link
them, even if tests are disabled. Also allow disabling building
of sg_pkgutil.
2013-06-12 23:56:04 +02:00
James Turner
b4526f926d Use CoreServices, not Cocoa, for FSFindFolder 2013-06-12 22:11:43 +02:00
Thomas Geymayer
6cec49ce7e Missing library for Apple 2013-06-11 18:04:06 +02:00
James Turner
6a2e2b704e Optionally, use internal code for SVN syncs. 2013-06-09 22:55:15 +01:00
Thomas Geymayer
fa64f7b6aa Work around MSVC linker bug with classes derived from i/ofstream 2013-04-27 23:44:32 +02:00
Thomas Geymayer
eaac3a64f8 Fix linker error for test 2013-04-26 23:48:25 +02:00
Thomas Geymayer
e08eda18d5 CMake: Create list of libs for testing only once 2013-03-15 23:21:38 +01:00
PlutoniumHeart
870fc2e53e Replacing strdup with _strdup in MSVC 2013-03-06 23:58:38 -07:00
James Turner
67efc1f68f Look for MSVC 3rdparty deps differently.
Check for the 3rdparty dir in the parent of build dir, not the parent of the source dir. For the recommended build layout, this is the same location, but for super-builds using fgmeta it's not (and the source tree should not be touched).

If this causes anyone issues, please let me know, since it's possible more flexibility is needed to set the path explicitly.
2013-03-03 16:06:51 +00:00
James Turner
dfebf60e68 Simplify CMakeLists now package code is enabled. 2013-03-03 16:01:06 +00:00
James Turner
439041c2f4 Enable package code by default. 2013-03-02 14:43:19 +00:00
James Turner
06b089ba13 Updated package-management code.
Use mini-unzip code to extract, since we don't need all the features of libArchive, and the deployment issues become simpler.
2013-02-28 18:31:28 +00:00
James Turner
a530712491 Initial work on package management.
Basic library infrastructure, catalog download/refresh, and package install,
uninstall and update. Disabled at cmake time by default, and not yet hooked
into FlightGear.
2013-02-20 16:17:22 +00:00
James Turner
d11db8a67a Prepare for optionally embedded SimGear. 2013-01-26 15:31:17 +01:00
James Turner
24d2431522 Work on making OpenAL a compile-time option.
ENABLE_SOUND=0 now works when configuring SimGear, and libSimGearScene can be linked without OpenAL. However, more testing of FlightGear in this mode is needed before it's officially supported!
2012-12-07 15:26:24 -05:00
ThorstenB
7d8fde82e6 Fixed incomplete copy&paste issue. 2012-12-01 11:07:10 +01:00
ThorstenB
99cf057906 #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:00:50 +01:00
Frederic Bouvier
59d3d66f91 Look for Boost 1.52.0 and OpenRTI under Windows 2012-12-01 10:59:58 +01:00