Commit Graph

100 Commits (spacecruft)

Author SHA1 Message Date
Hleb Valoshka 6ab7660e0c [cmake] Don't mix plain & keyword target_link_libraries()
Closes: #1357
2022-04-07 10:45:15 +03:00
Hleb Valoshka f4bd55991f Optimize meshes with meshoptimizer library if available 2022-03-07 16:59:47 +03:00
Andrew Tribick 7cf1aac419 [qt] Experimental Qt6 support
- Switch from legacy QGLWidget to QOpenGLWidget

- [win32] Use a frameless window 1 pixel larger than the monitor instead of a
  fullscreen window, in order to avoid issues showing context menus

- Fix a settings bug where window state on the fullscreen transition was not
  saved in the MainWindow group.
2022-01-15 18:13:28 +01:00
Andrew Tribick ea320060dc Only pass -fno-rtti and -fno-exceptions for C++ 2021-12-28 22:14:51 +01:00
Andrew Tribick e4ea8e0df4 Remove filesystem compatibility implementation
Keep <experimental/filesystem> support for now, so we still need to use a
compatibility header to alias the namespace.
2021-12-28 21:14:29 +01:00
Andrew Tribick e6a7b32fee Remove string_view compatibility headers 2021-12-28 21:14:29 +01:00
Andrew Tribick 279c721373 Require C++17, CMake 3.8 2021-12-28 21:14:29 +01:00
Andrew Tribick d541a3c9c6 Update Spice submodule 2021-12-28 20:05:05 +01:00
Andrew Tribick a5ea219b27 CMake fixes
- [msvc] Remove defaulted /W option to prevent override warnings from Spice
- Fix capitalization of Perl in find_package
- Replace deprecated qt5_use_modules in cmodview
2021-12-28 18:21:38 +01:00
Hleb Valoshka 28f47b0dd8 Remove content submodule
Closes: #1260
2021-12-28 15:18:14 +03:00
Andrew Tribick b94d084af3 Fix floating point from_chars implementation
- Do not assume a zero-byte terminator exists in the source
- Ignore exponent if format does not contain scientific
- Require exponent if format does not contain fixed
- Add support for hexfloat parsing
- Fail if a plus sign is present
- Add bitwise operations to chars_format
- Avoid use of unnamed namespace in header file
- Detect whether charconv is present and if floating point charconv is supported
2021-12-16 16:33:27 +01:00
Hleb Valoshka 498dc6083c [po] Remove po2, update po 2021-12-14 13:16:18 +03:00
Andrew Tribick aac69395bb Enforce minimum fmt version 6.1.0 to ensure float roundtrip 2021-11-21 14:39:49 +01:00
Andrew Tribick da5f621a19 Set up common binary IO functions 2021-11-10 19:14:19 +01:00
Hleb Valoshka d417525d67 [cmake] Allow C++ standard definition via command line 2021-10-23 12:15:01 +03:00
Hleb Valoshka 481f81c664 [cmake] Use FindFilesystem instead of own code 2021-10-23 12:15:01 +03:00
Hleb Valoshka 58d303478c [cmake] Set policy CMP0004 to NEW 2021-10-23 12:15:01 +03:00
Levin Li bf5689574d Make AVIF optional 2021-10-14 10:35:26 +08:00
Levin Li 7a91ba9311 Update build script 2021-10-14 10:35:26 +08:00
Hleb Valoshka 7b5adfffd3 [cmake] Remove workaround for static libintl
We need a more generic and simpler way to add additional dependencies
manually.
2021-06-24 17:59:04 +03:00
Hleb Valoshka d3cfa9f333 [cmake] Rename FindCspice to FindCSPICE 2021-06-24 17:59:04 +03:00
Hleb Valoshka 1c68ecdd8e [cmake] Update FindFFMPEG 2021-06-24 17:59:04 +03:00
Levin Li 5d1bcc2256 Remove make_unique compat 2021-06-13 15:50:22 +08:00
Levin Li fbc165c9d6 Drop C++11 and defaults to build with C++14 2021-06-13 15:50:22 +08:00
Hleb Valoshka 6e83aa9e04 Refactor movie capture to use FFMPEG only 2021-06-06 08:44:21 +03:00
Hleb Valoshka 8dab250f22 Use FFMpeg to capture video 2021-06-06 08:44:21 +03:00
Hleb Valoshka 5af65a58f3 [cmake] Remove cotire usage
* It doesn't work with cmake >= 3.12 and M$ VC++ (not a big issue)
* It doesn't work with extern "C" properly (blocks FFMPEG)
* It's unmaintained
2021-06-06 08:44:21 +03:00
Levin Li bf10d8d6e1 Make theora and gtk usable on Mac 2021-05-09 15:10:51 +08:00
Levin Li 499e115a70 Remove Eigen and fmt submodules 2021-05-03 21:01:55 +03:00
Hleb Valoshka c9d2b4ac79 [gtk] Allow Gtk3 usage 2021-04-18 10:41:21 +03:00
Hleb Valoshka 0e97ade98a [gtk] Add own implementation of EGL-capable window 2021-04-18 10:41:21 +03:00
Levin Li 4959ffbe6e Correctly set __cplusplus with /Zc:__cplusplus 2021-03-14 20:40:59 +08:00
Hleb Valoshka 757fda0e36 Disable more MSVC warnings 2021-03-08 14:08:36 +03:00
Hleb Valoshka 6b14925798 Produce release builds without exceptions and RTTI 2021-03-08 14:08:36 +03:00
Hleb Valoshka b714d109af Fix warnings shown by MinGW compiler 2021-03-03 20:18:32 +03:00
Hleb Valoshka 95c24446c1 Add a C++17 compatible string_view implementation
Actually there are some limitation caused by the fact that other classes
(e.g. std::string) don't know about string_view, so such limitation must
be handled manually.
2021-03-03 20:18:32 +03:00
Levin Li b8caa691f4 Use cmake define for filesystem include 2020-11-17 21:08:55 +08:00
Hleb Valoshka 9e956abe3d Remove support for legacy TXF fonts 2020-06-24 17:14:31 +03:00
Hleb Valoshka 4fd0562386 [win] promote warning C4316 to an error
...to prevent program abnormal termination if classes with members of
Eigen::* types are misaligned in memory
2020-06-22 08:24:10 +03:00
Levin Li 0e1983f48a Update CMakeLists.txt 2020-06-20 14:00:32 +08:00
Levin Li dbe84c16c4 Update CMakeLists.txt
On Mac with Xcode, CMAKE_CXX_COMPILER_ID is AppleClang
2020-06-20 14:00:32 +08:00
Hleb Valoshka f0110afdd8 [cmake] Add useful policies 2020-06-16 21:59:21 +03:00
Hleb Valoshka c588f80824 OpenGL ES 2.0 initial support 2020-06-15 19:27:46 +03:00
Hleb Valoshka 54da875bf8 [sdl] Initial implementation of a basic SDL interface 2020-05-12 18:26:27 +03:00
Hleb Valoshka c5e0697a6c [cmake] restore compatibility with older cmake 2020-05-05 16:51:57 +03:00
Hleb Valoshka ae27c1a1b0 Drop GLEW support 2020-05-05 16:51:57 +03:00
Hleb Valoshka 72bf923741 Better handle libintl dependencies 2020-04-13 09:38:48 +03:00
Levin Li c6a1b75dcf Update INSTALL.md, rules, CMakeLists.txt 2020-04-11 22:03:24 +08:00
Hleb Valoshka a325973907 Install data files from git submodule 2020-03-29 09:12:13 +03:00
Hleb Valoshka aa03364c90 [cmake] don't install data files 2020-03-29 09:12:13 +03:00