Commit Graph

1010 Commits (c7a3f43915d8c8cf39ffa54309a0a6ab5e7ad3b4)

Author SHA1 Message Date
Bret Curtis 9336626927 use OPENMW_RESOURCES_ROOT instead 3 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 3 years ago
Petr Mikheev d3df3efaf1 Precompile sol.hpp in order to reduce compilation time. 3 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 4 years ago
Petr Mikheev 4db5fa351d Add sol3.2.2/sol/sol.hpp to extern instead of downloading during building 4 years ago
Petr Mikheev 9e168fd9cc Add Lua/LuaJit and sol3 to openmw 4 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.
4 years ago
Bret Curtis 36bb966ca1 Getting the ball rolling for 0.48 4 years ago
psi29a dd197765c8 cmake check to enforce that if someone uses OSG 3.6, that it is at least 3.6.5 4 years ago
psi29a e9fbd76e9b Merge branch 'windows_tests' into 'master'
Support running tests and benchmarks for windows

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

Closes #5925

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

Closes #5551

See merge request OpenMW/openmw!802
4 years ago
Andrei Kortunov 963e1b8b3f Fix MSVC's C4244 warnings 4 years ago
Andrei Kortunov f9d42ed396 Fix MSVC's C4267 warnings 4 years ago
elsid 4d7e5245a3
Support benchmarks for windows
Don't run the binary because gitlab can't execute it successfully due to
unknown reason.
4 years ago
AnyOldName3 0d737a3501 Create defaults.bin at configure time 4 years ago
Bret Curtis 4f5d697e2b Do not fail when unable to detect the FFMPEG version, like windows. 4 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.
4 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
4 years ago
fredzio 6fd04cb8f6 Remove support for single-precision Bullet, fail during configuration instead of during linking. 4 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
4 years ago
Chris Djali f0cef87cd8
Merge pull request #3069 from akortunov/msvc_warnings
Rework warnings settings
4 years ago
psi29a 16bb3919d1 Merge branch 'navmesh_cache_simplification' into 'master'
Simplify navmesh cache

See merge request OpenMW/openmw!691
4 years ago
Andrei Kortunov 8aa76ff540 Use W4 instead of Wall for MSVC 4 years ago
Andrei Kortunov f2f2c3d873 Disable -Wsuggest-override again since we have no control over code from FetchContent 4 years ago
Andrei Kortunov 1b1c786d0c Do not suppress fixed MyGUI warnings 4 years ago
Andrei Kortunov f308dde254 Clean up MSVC warnings 4 years ago
elsid b9a40bc5fc
Add NavMeshTilesCache benchmarks 4 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).
4 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
4 years ago
AnyOldName3 450b971bb0 Merge branch 'gl4es-patch' into 'master'
gl4es: Delay feature detection until a context exists

See merge request OpenMW/openmw!626
4 years ago
Bret Curtis c4064fca0c include feedback and add DebugUtils and Detour 4 years ago
Bret Curtis 28cb14289a initial attempt at FindRecastNavigation.cmake 4 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
4 years ago
psi29a 96b5581930 Merge branch 'fetchcontent-recast-navigation' into 'master'
Move recastnavigation to FetchContent

Closes #5793

See merge request OpenMW/openmw!614
4 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.
4 years ago
Gleb Mazovetskiy 1c9245bd58 Move recastnavigation to FetchContent 4 years ago
psi29a 5c0214142b Merge branch 'static-build' into 'master'
Optional local source builds of OSG, MyGUI, Bullet

See merge request OpenMW/openmw!547
4 years ago
AnyOldName3 c97980a0f6 Don't force linker to work with doubly-defined symbols 4 years ago
Gleb Mazovetskiy 3d334dae75 Fix MYGUI/OSG_STATIC and BUILD_SHARED_LIBS 4 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.
4 years ago
Gleb Mazovetskiy 26814b2386 CMakeLists.txt: Restore policies as we unbumped cmake version 4 years ago
Gleb Mazovetskiy 98564b0aae cmake: move cmake_minimum_required bump to extern/CMakeLists.txt 4 years ago
Gleb Mazovetskiy a06f598442 cmake: Move USED_OSG_(COMPONENTS|PLUGINS) before add_subdirectory(extern) 4 years ago
Gleb Mazovetskiy 8737453498 cmake: Compiler-specific whole-archive macro 4 years ago
Gleb Mazovetskiy 93fe84aea8 cmake: Move USED_OSG_(COMPONENTS|PLUGINS) from extern to top-level 4 years ago
Gleb Mazovetskiy 99ba45a308 Optional static builds of OSG, MyGUI, Bullet 4 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.
4 years ago
wareya 18ef32ca82 values for this higher than sGroundOffset cause jittering on some surface; use safe-seeming value slightly less than sGroundOffset 4 years ago
Mads Buvik Sandvei 637c76f438 Update CMakeLists.txt 4 years ago
Mads Buvik Sandvei a2a462f416 Update CMakeLists.txt to disable MSVC warning 4866 4 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 5 years ago
Bret Curtis f47d2bb8af make sure we use case-sensative BULLET_ prefix 5 years ago
Bret Curtis 16ca9e2fbd put back INSTALL platforms 5 years ago
Bret Curtis 61a5c6125d #5480: Drop Qt4 support and require Qt 5.12 or later. 5 years ago
laikh d6e4fbe085 Fix mingw Windows build 5 years ago
Andrei Kortunov add42830d9 Add a flag to use double-precision functions from Bullet 5 years ago
elsid fa861f5d8e
Revert remove of platforms install 5 years ago
elsid e095f6b306
Remove install for not existing file 5 years ago