Commit Graph

1061 Commits (master)

Author SHA1 Message Date
elsid 953a4c5550
Add a binary to generate navmesh from content files
Load content files based on the engine config files. Generate navmesh per cell
for all cells and store into SQLite database.
2 years ago
Bret Curtis 9336626927 use OPENMW_RESOURCES_ROOT instead 2 years ago
Bret Curtis a9bf53d4ed modified builtin_scripts to be macOS aware; simplified things as the SHADER and MYGUI dir were just pointing to the OpenMW_BINARY_DIR anyway, so removing the code duplication 2 years ago
Petr Mikheev d3df3efaf1 Precompile sol.hpp in order to reduce compilation time. 2 years ago
Brian Kelley ee41b94a73 Enable compilation on apple silicon 3 years ago
wareya db04dee29d Force MSVC to build in utf-8 mode 3 years ago
Bret Curtis fa5581942e
Update CMakeLists.txt 3 years ago
Bret Curtis 1a51c6eb5d
Update CMakeLists.txt 3 years ago
Bret Curtis cd358ce1f9
Update CMakeLists.txt 3 years ago
Bret Curtis 62b59a3c00
Update CMakeLists.txt 3 years ago
Bret Curtis e65af0bf06
Silence all opengl deprecation warnings for MacOS
We know...
3 years ago
elsid 2bace703d5
Add dependency to SQLite3
This will be required by navmeshtool.
3 years ago
Evil Eye a1825980c4 Define OpenMW specific C++ flags 3 years ago
Evil Eye d680aa26e9 Disallow switch fallthrough 3 years ago
elsid b9825afb8a
Fix build with system static OpenSceneGraph
* Add dependency to libraries required by OSG but missing when linking with OSG
  system library.
* Use find_package for already defined dependencies.
3 years ago
pi03k e4eeb9cce9 Remove 'no relevant classes' moc warning 3 years ago
elsid 1b1deeb59b
Fail CI build when not allowed warnings are present
Put -Wno-error after -Wall to make it work properly for clang.
3 years ago
elsid e9b8933b2f
Do no link binaries with Qt where it's not used
Define components_qt static library with all qt dependent components that also
depends on other components. Link only cs, wizard and launcher with qt
dependent components.
3 years ago
Bret Curtis 08a9abc46f get openmw building with LuaJIT on macos 3 years ago
Petr Mikheev 4db5fa351d Add sol3.2.2/sol/sol.hpp to extern instead of downloading during building 3 years ago
Petr Mikheev 9e168fd9cc Add Lua/LuaJit and sol3 to openmw 3 years ago
AnyOldName3 d38126ef1c Pack default CS config
*Technically* it was already being loaded as if it were packed, but it
made no difference because it's supposed to be empty.
3 years ago
Bret Curtis 36bb966ca1 Getting the ball rolling for 0.48 3 years ago
psi29a dd197765c8 cmake check to enforce that if someone uses OSG 3.6, that it is at least 3.6.5 3 years ago
psi29a e9fbd76e9b Merge branch 'windows_tests' into 'master'
Support running tests and benchmarks for windows

See merge request OpenMW/openmw!839
3 years ago
psi29a 4bc7012104 Merge branch 'pack-default-settings' into 'master'
Pack default settings

Closes #5925

See merge request OpenMW/openmw!822
3 years ago
AnyOldName3 081650a2e5 Integrate Base64 library with build 3 years ago
psi29a b583c2300c Merge branch 'maybe-fix#5551' into 'master'
Fix #5551

Closes #5551

See merge request OpenMW/openmw!802
3 years ago
Andrei Kortunov 963e1b8b3f Fix MSVC's C4244 warnings 3 years ago
Andrei Kortunov f9d42ed396 Fix MSVC's C4267 warnings 3 years ago
elsid 4d7e5245a3
Support benchmarks for windows
Don't run the binary because gitlab can't execute it successfully due to
unknown reason.
3 years ago
AnyOldName3 0d737a3501 Create defaults.bin at configure time 3 years ago
Bret Curtis 4f5d697e2b Do not fail when unable to detect the FFMPEG version, like windows. 3 years ago
Gleb Mazovetskiy e3a6cb1695 Remove OsIdentity.cmake
Removes the OsIdentity.cmake file and uses a cross-compilation friendly
and OS-independent method of detecting system double-precision bullet
instead.
3 years ago
psi29a 7f7041656d Merge branch 'enforce_double_bullet' into 'master'
Remove support for single-precision Bullet, fail during configuration instead of during linking (#5980)

See merge request OpenMW/openmw!806
3 years ago
fredzio 6fd04cb8f6 Remove support for single-precision Bullet, fail during configuration instead of during linking. 3 years ago
AnyOldName3 1626762d5c Maybe fix #5551
If we were doing this properly, we'd migrate to
https://cmake.org/cmake/help/latest/module/InstallRequiredSystemLibraries.html
but this should hopefully remove a blocker for 0.47
3 years ago
Chris Djali f0cef87cd8
Merge pull request #3069 from akortunov/msvc_warnings
Rework warnings settings
3 years ago
psi29a 16bb3919d1 Merge branch 'navmesh_cache_simplification' into 'master'
Simplify navmesh cache

See merge request OpenMW/openmw!691
3 years ago
Andrei Kortunov 8aa76ff540 Use W4 instead of Wall for MSVC 3 years ago
Andrei Kortunov f2f2c3d873 Disable -Wsuggest-override again since we have no control over code from FetchContent 3 years ago
Andrei Kortunov 1b1c786d0c Do not suppress fixed MyGUI warnings 3 years ago
Andrei Kortunov f308dde254 Clean up MSVC warnings 3 years ago
elsid b9a40bc5fc
Add NavMeshTilesCache benchmarks 3 years ago
Gleb Mazovetskiy 493659d4f9 MSVC: extern/ tweaks to make it build
Not everything is supported but it does build with the following CMakeSettings.json
variables and dependencies from vcpkg:

      "variables": [
        { "name": "OPENMW_USE_SYSTEM_BULLET", "value": "False", "type": "BOOL" },
        { "name": "OPENMW_USE_SYSTEM_MYGUI", "value": "False", "type": "BOOL" },
        { "name": "OPENMW_USE_SYSTEM_OSG", "value": "False", "type": "BOOL" },
        { "name": "BULLET_STATIC", "value": "True", "type": "BOOL" },
        { "name": "OSG_STATIC", "value": "False", "type": "BOOL" },
        { "name": "MYGUI_STATIC", "value": "False", "type": "BOOL" }
      ],

What works: it builds

What does not work: Not all DLLs are copied into the output directory with this set up
(SDL2, MyGUI, Bullet, OSG, are not copied).
3 years ago
Gleb Mazovetskiy f460ab2152 MSVC: Fix build with vcpkg's boost
boost-zlib is not present (nor needed) in vcpkg version of boost
There, it is part of boost-iostreams instead.

This was previously reported in:
https://gitlab.com/OpenMW/openmw/-/merge_requests/213#note_348625016
3 years ago
AnyOldName3 450b971bb0 Merge branch 'gl4es-patch' into 'master'
gl4es: Delay feature detection until a context exists

See merge request OpenMW/openmw!626
3 years ago
Bret Curtis c4064fca0c include feedback and add DebugUtils and Detour 3 years ago
Bret Curtis 28cb14289a initial attempt at FindRecastNavigation.cmake 3 years ago
Gleb Mazovetskiy 044e784072 gl4es: Delay feature detection until a context exists
gl4es feature detection does not work reliably with EGL.

If a context already exists, gl4es can instead reliably detect
the underlying GLES features from the context itself.

This requires gl4es to be configured with:

    -DNOEGL=ON -DNO_LOADER=ON -DNO_INIT_CONSTRUCTOR=ON

This also requires gl4es to have this fix: https://github.com/ptitSeb/gl4es/pull/271
3 years ago
psi29a 96b5581930 Merge branch 'fetchcontent-recast-navigation' into 'master'
Move recastnavigation to FetchContent

Closes #5793

See merge request OpenMW/openmw!614
3 years ago
Gleb Mazovetskiy e265d0bc2b Fix OSGPlugins_LIB_DIR on the MacOS build
Moves auto-detection of OSGPlugins_LIB_DIR into FindOSGPlugins.cmake.

This should hopefully fix the error in the MacOS build.
3 years ago
Gleb Mazovetskiy 1c9245bd58 Move recastnavigation to FetchContent 3 years ago
psi29a 5c0214142b Merge branch 'static-build' into 'master'
Optional local source builds of OSG, MyGUI, Bullet

See merge request OpenMW/openmw!547
3 years ago
AnyOldName3 c97980a0f6 Don't force linker to work with doubly-defined symbols 3 years ago
Gleb Mazovetskiy 3d334dae75 Fix MYGUI/OSG_STATIC and BUILD_SHARED_LIBS 3 years ago
Gleb Mazovetskiy daf080ff19 cmake: Move MYGUI/OSG_STATIC default to top-level
Makes it clear that the USE_SYSTEM variables affect the defaults of
STATIC variables.
3 years ago
Gleb Mazovetskiy 26814b2386 CMakeLists.txt: Restore policies as we unbumped cmake version 3 years ago
Gleb Mazovetskiy 98564b0aae cmake: move cmake_minimum_required bump to extern/CMakeLists.txt 3 years ago
Gleb Mazovetskiy a06f598442 cmake: Move USED_OSG_(COMPONENTS|PLUGINS) before add_subdirectory(extern) 3 years ago
Gleb Mazovetskiy 8737453498 cmake: Compiler-specific whole-archive macro 3 years ago
Gleb Mazovetskiy 93fe84aea8 cmake: Move USED_OSG_(COMPONENTS|PLUGINS) from extern to top-level 3 years ago
Gleb Mazovetskiy 99ba45a308 Optional static builds of OSG, MyGUI, Bullet 3 years ago
Gleb Mazovetskiy 24d8412c0c cmake: Fix missing OPENGL_INCLUDE_DIR
OPENGL_INCLUDE_DIR wasn't being included.
It is usually just /usr/include but if it was custom the build failed.
3 years ago
wareya 18ef32ca82 values for this higher than sGroundOffset cause jittering on some surface; use safe-seeming value slightly less than sGroundOffset 3 years ago
Mads Buvik Sandvei 637c76f438 Update CMakeLists.txt 3 years ago
Mads Buvik Sandvei a2a462f416 Update CMakeLists.txt to disable MSVC warning 4866 3 years ago
Nelsson Huotari 6e77ad1f6a OSG-Collada animation support 4 years ago
Bret Curtis 4032b754e4 set minimal boost version; remove #ifdef boost version checks 4 years ago
Bret Curtis 449e7ce86f C++17; make it count 4 years ago
Bret Curtis 82431b752d removed unnessary bits that cmake should be doing for us; replace Misc::gcd with std::gcd 4 years ago
psi29a c62546fb12 make it count 4 years ago
psi29a c86094e4db Bump to C++17 4 years ago
Bret Curtis 7954dccb44 lz4 prep work; get linux and windows ready 4 years ago
psi29a b222872446 Android build on gitlab 4 years ago
Bret Curtis 8050882baf
Merge pull request #3015 from akortunov/overrides
Mark overrided methods as overrides
4 years ago
Andrei Kortunov 8ca3c3b123 Mark overrided methods by override keyword 4 years ago
Chris Djali 590635906b
Fix MSVC 2017
Resolves the regression introduced with Async Physics
4 years ago
tess 38e567a7e4 match opening and closing if args 4 years ago
tessa 02861fa8e3 fix cmake warning 4 years ago
AnyOldName3 683cf8cad5 Remove incorrect spaces from filename 4 years ago
fredzio e2a603f6e8 Remove blank space 4 years ago
fredzio ae38b3d9b2 Put the install logic in one place for all platforms 4 years ago
AnyOldName3 be5fd6fd03 Exclude directories correctly
We don't need `/*` as we don't want the directory itself, not just its
contents. We also need to list possible other directories explicitly as
there's currently no way to skip directories without matches.

It would be much nicer if CMake was tracking the DLLs we needed for us.
4 years ago
AnyOldName3 8dd820ba48 Exclude deps 4 years ago
AnyOldName3 d0ddf488db Install PDBs when appropriate 4 years ago
AnyOldName3 db0f7c607f Make Windows install target slightly less breakable 4 years ago
fredzio 87290cf6d1 Add support for multi configurations generators on unix
Since version 3.17 cmake supports the Ninja Multi-Config
No change for Xcode, VS and Ninja "single config"
4 years ago
AnyOldName3 643db61dfb Make warnings more informative. 4 years ago
AnyOldName3 1dcea961c6 Only enable LTO for release
This is how it was for the original implementation
4 years ago
Eli2 257a6b4629 Use cmake method to enable interprocedural optimizations 4 years ago
AnyOldName3 9d083ae8de Merge branch 'small_fixes' into 'master'
move project/cmake to top; set OpenGL_GL_PREFERENCE to LEGACY since we use GL2...

See merge request OpenMW/openmw!266
4 years ago
Bret Curtis b0c4336577 update DejaVuFontLicense entry 4 years ago
Bret Curtis e40b309d83 move project/cmake to top; set OpenGL_GL_PREFERENCE to LEGACY since we use GL2 and GLNVD is for GL3 and up (https://github.com/openscenegraph/OpenSceneGraph/issues/639); set our RTD to point to stable and not master, stable follows our latest stable release 4 years ago
Bret Curtis f47d2bb8af make sure we use case-sensative BULLET_ prefix 4 years ago
Bret Curtis 16ca9e2fbd put back INSTALL platforms 4 years ago
Bret Curtis 61a5c6125d #5480: Drop Qt4 support and require Qt 5.12 or later. 4 years ago
laikh d6e4fbe085 Fix mingw Windows build 4 years ago
Andrei Kortunov add42830d9 Add a flag to use double-precision functions from Bullet 4 years ago
elsid fa861f5d8e
Revert remove of platforms install 4 years ago
elsid e095f6b306
Remove install for not existing file 4 years ago
elsid 99cd99bc3b
Remove unused BUILD_MYGUI_PLUGIN option 4 years ago
Frederic Chardon 513ac8986d Add link to opencs documentation on readthedocs, available through
context menu.
The documentation opens in default browser.

There are 3 contexts:
- global: opens the OpenMW CS User Manual main page
- when a record is selected: opens the "Tables" page
- when the filter field is selected: opens the "Record Filters" page

There is also a link to the OpenCS tutorial in the help menu.
4 years ago
Bret Curtis 613189d7d9 bump to 0.47 for new dev cycle 4 years ago
Bret Curtis b243ee6f74
Merge pull request #2744 from OpenMW/debian_appstream
add launchable type
4 years ago
Roman Siromakha 3bd2c114a7
Merge pull request #2741 from akortunov/warnfix
Fix C5204 warnings by adding default virtual destructors
4 years ago
Hristos N. Triantafillou da7032caff
Two more that I missed 4 years ago
Hristos N. Triantafillou e6a6411b95
These files aren't in the repo anymore 4 years ago
Andrei Kortunov e63325ebff Support for camera rotation via gyroscope on Android (feature #5311) 4 years ago
Bret Curtis deac2abc0f add launchable type; rename files to be conform to freedesktop.org and debian standards 4 years ago
Andrei Kortunov fe75308fdb Disable warning C5204 which come from Boost library 4 years ago
Andrei Kortunov 05a8702b6e Fix Boost 1.70+ detection 5 years ago
capostrophic 1f3740225b Purge unnecessary recast stuff 5 years ago
Grigory 28e54c25ee Add -DMYGUI_DONT_REPLACE_NULLPTR 5 years ago
Andrei Kortunov 9059971a69 Increase required MyGUI version to 3.2.2 5 years ago
Bret Curtis df9a8cf957 bump from 11 to 14 5 years ago
Nikolay Kasyanov 6363cc8839 Relax CMake version requirements on macOS 5 years ago
Bret Curtis bf144fb356
Merge pull request #2238 from Capostrophic/freetype
Include osgdb_freetype in builds with statically linked OSG
5 years ago
Capostrophic 7a07984e2c Include osgdb_freetype in builds with statically linked OSG 5 years ago
elsid a979d24bf3
Mark OpenSceneGraph include directories as system
To avoid warnings spam when use custom build.
5 years ago
AnyOldName3 8482236a82 Merge remote-tracking branch 'upstream/master' into osgshadow-test-vdsm 5 years ago
Capostrophic c9df63ffd1 Replace BSAOpt hash calculation with a custom function 5 years ago
Azdul a3bcd95546 Merge branch 'cc9cii' of https://github.com/cc9cii/openmw into tes4_bsa 5 years ago
Azdul b30d2bab57 Zlib only for Win32 5 years ago
Azdul 25650e65bf Read any BSA file - detection based on version in BSA header 5 years ago
Nikolay Kasyanov 2306d904c7 [macOS] Fail CMake when trying to use CMake 3.13 for macOS packaging 5 years ago
Nikolay Kasyanov c3a2a2d73f Do not package Recastnavigation headers and static libs 5 years ago
AnyOldName3 e2515f6db7 Merge branch 'master' into osgshadow-test-vdsm 5 years ago
Chris Djali 066b74eb43
Merge pull request #2078 from AnyOldName3/cmake-13.1-osg-lib-fix
Adapt to CMake 3.13's new meaning of OSGDB_LIBRARY
5 years ago
Bret Curtis 44a408635a wrap git command in gitfound 5 years ago
Bret Curtis 76d380e852 if unable to run git at this moment, use empty string 5 years ago
AnyOldName3 dcbca4b90b Use if(EXISTS ${OSGDB_LIB} AND NOT IS_DIRECTORY ${OSGDB_LIB}) 6 years ago
AnyOldName3 9067731a96 Adapt to CMake 3.13's new meaning of OSGDB_LIBRARY (i.e. that it can now be a list) while allowing for the possibility that the found libraries may be in different directories when debug and optimised versions exist. 6 years ago
Bret Curtis b8b1a52216 add commit date; revert boost as we are not breaking anything yet 6 years ago
Bret Curtis 6596c400f3 indentation 6 years ago
Bret Curtis fc10adb608 makes openmw.appdata.xml a template that accepts @OPENMW_VERSION@ so we do not have to update it all the time; fix deprecated warning for boost header; un-ignore openmw.appdata.xml 6 years ago
AnyOldName3 642002b302 Merge remote-tracking branch 'upstream/master' into osgshadow-test-vdsm 6 years ago
Bret Curtis caad388c26 bump our versions to 0.46, keep this commit in mind when trying to automate this into one place 6 years ago
Bret Curtis 25e4156940 enable niftest by default, coverity branch covers everything but openmw now due to timeouts; we run coverity manually for openmw for now; re-order options to be readable and logical sequence 6 years ago
Andrei Kortunov f88d5e808c Rewrite media decoder to use FFMpeg 3.2+ API (task #4686) 6 years ago
AnyOldName3 b178e1868a Merge remote-tracking branch 'upstream/master' into osgshadow-test-vdsm 6 years ago
AnyOldName3 719c9f0766 Remove compile definition which inadvertently broke other compile definitons 6 years ago
AnyOldName3 a5afae71e6 Remove unwanted compile definition. 6 years ago
AnyOldName3 a6d3210a9c Include missing Windows header before calling Windows-specific functions 6 years ago
AnyOldName3 d0c254bc7e Merge remote-tracking branch 'upstream/master' into osgshadow-test-vdsm 6 years ago
elsid 4c82470933 Do not build recastnavigation tests 6 years ago
elsid bc59a3c455 Build recastnavigation static libraries 6 years ago
elsid 792a0585c0 Add recastnavigation as subdirectory 6 years ago
AnyOldName3 0124be5713 Merge upstream/master 6 years ago
cc9cii 6ec6b9bc2a OpenMW Integration.
Read the ESM/ESP records but do nothing with them for the moment.
6 years ago