Commit Graph

127 Commits (69c4a68187d15719cb4e0277e35b2b30ba5b0f3f)

Author SHA1 Message Date
AnyOldName3 387b63909b Remove vestigial Boost libraries
Boost::zlib is basically part of Boost::iostreams, and depending on how you configure Boost, it can either be a separate library or get embedded into iostreams.
With the third-party-but-linked-on-Boost's-website package we've been using for years, it's a separate library.
Before https://gitlab.com/OpenMW/openmw/-/merge_requests/4307, we needed to explicitly link with it as CMake wasn't handling transitive dependencies for us.
With vcpkg, it's embedded, and doesn't have its own CMake config, so we couldn't explicitly link with it even if we wanted to.

Now CMake *is* handling transitive dependencies for us, we don't even need to think about this library.
It's all automatic.

Boost::locale, on the other hand, used to be something we used directly (I think for doing UTF-16/UTF-8 conversions when dealing with Windows paths).
However, it isn't anymore, and we just didn't purge it from our CMake when we should have.
It can go.
4 months ago
AnyOldName3 26be98966f Modernise Boost CMake stuff
Resolves https://gitlab.com/OpenMW/openmw/-/issues/8100

Also removes some old crud.
Hopefully the old crud is all:
* Handled automatically by CMake now we're using the modern approach.
* A hack-fix for a problem caused by not using the modern approach.
* Massively outdated so no longer necessary.

If it turns out this makes CI fail, I'll tweak things as necessary.

Changes that might not be wanted include:
* Getting rid of our BOOST_STATIC CMake option. In cases where the CMake config doesn't make the one correct choice from the build environment (i.e. because there's a choice) the CMake config exposes the option already.
  However, we were forcing this on for Windows, so that might matter.
  It seems to default to static on my machine even though I thought I read something suggesting otherwise, so we'll see how things go with that.
  If we eventually put CMake in charge of installing dependency DLLs this will be a moot point as we won't need to care.
* Bumping the minimum version of Boost to 1.70.0, as that's the first with working CMake config.
  It's from 2019, so plausibly there are distros too scared to use a library from five years ago as it can't legally drink in the US (although it could in limited quantities with parental supervision in the UK, as long as it's just something inconsequential like a single sip of beer).
4 months ago
elsid 5859fd464c
Add option to disable precompiled headers
To be able to use ccache.

Also fix compilation errors appeared due to absence of precompiled
headers.
10 months ago
Andrei Kortunov 225e834b88 Fix some Coverity Scan complaints 11 months ago
Andrei Kortunov b3a981e0fc Simplify strings construction 1 year ago
Andrei Kortunov d3d7a663c6 Move some objects instead of copying 1 year ago
AnyOldName3 34fcfb63cf Eliminate redundant version checks 1 year ago
Evil Eye 9728024978 Replace compare with more idiomatic methods 2 years ago
jvoisin c752c8950f Merge branch 'use_std_locale' into 'master'
make use of std::wstring_convert to replace boost::locale::conv::utf_to_utf

See merge request OpenMW/openmw!2969
2 years ago
psi29a 130fd387ea make use of std::wstring_convert to replace boost::locale::conv::utf_to_utf 2 years ago
Bret Curtis 0db31207dc remove remaining boost::filesystem cruft 2 years ago
elsid 1857d8a68c
Use target_compile_options to add --coverage 2 years ago
elsid cc066efa11
Fix identation in CMakeLists.txt 2 years ago
elsid 843753da14
Remove unused includes 2 years ago
Project579 5cf2a958eb Make conversions between std::chrono time_point and string safer by not using "localtime" directly. 2 years ago
clang-format-bot ddb0522bbf
Apply clang-format to code base 2 years ago
elsid 6ae15f08e0
Avoid chained operator() calls to prevent formatting issues 2 years ago
Project579 c226b35f1f Fix some remaining encoding errors due to std::filesystem transition. 2 years ago
Project579 796911e67d iniimporter: Work around some old MSVC compiler bugs. 2 years ago
Project579 14a786bab0 iniimporter: Don't convert paths to "std::string". 2 years ago
Project579 4e428dee12 Update some settings that accept paths by "std::string" to accept them as "std::filesystem::path" instead. 2 years ago
Project579 a13709c510 Replace implicit convertions from std::filesystem::path to std::string with correctly converting functions. 2 years ago
Project579 e5c417c968 Make sure all paths are passed as std::filesystem::path instead of std::string where possible. 2 years ago
Project579 35fe214588 Updated components/misc/timeconvert.hpp to fix the Android build. 2 years ago
Project579 cd229a965b Fixed windows build and updated tests to reflect changes of escape character from "&" to "\" 2 years ago
Project579 4bb07282c9 Replace all remaining occurrences of boost::filesystem with std::filesystem. 2 years ago
Andrei Kortunov 43f552f48f Allow users to decide if they need to import bitmap fonts 2 years ago
elsid f99ed6f1db
Split components/misc/stringops.hpp into multiple headers
Replace all ciEqual overloads with one having std::string_view as argument.
2 years ago
elsid 7e6c13630a Use target_precompile_headers for the most expensive headers 3 years ago
elsid fbbf871067
Avoid extra copy for Utf8Encoder::getUtf8 result 3 years ago
Bret Curtis 74e7cfc023 remove unused includes: part1
remove unused imports: part2

revert one tidy we will keep for c++20
3 years ago
Bret Curtis d1fb854521 move most of the files from esm to esm3, keep common code in esm; this is make space for a future with esm4
esm typo

esm typo
3 years ago
Thunderforge ded7bd92e6 Using auto keyword in most apps
Detected by clang-tidy's modernize-use-auto
4 years ago
Andrei Kortunov f9d42ed396 Fix MSVC's C4267 warnings 4 years ago
Thunderforge 339d347aea Fixing performance-faster-string-find issues
This addresses the Clang Tidy check [performance-faster-string-find](https://clang.llvm.org/extra/clang-tidy/checks/performance-faster-string-find.html).
4 years ago
Alexei Dobrohotov 53f91a3aa5
Merge pull request #3018 from akortunov/emplace
Use emplace_back instead of push_back
4 years ago
Bret Curtis 4032b754e4 set minimal boost version; remove #ifdef boost version checks 4 years ago
Andrei Kortunov 065ed5138e Use emplace_back instead of push_back 4 years ago
Capostrophic 7814bd1b76 Support eight possible blood types (feature #4958) 6 years ago
Andrei Kortunov 4ee15ddcb9 Fix many Coverity Scan warnings 6 years ago
Andrei Kortunov 27a5da59ba Fix MSVC warnings C4456 7 years ago
tri4ng1e 7e03dd0f12
Read data paths from `data-local` section too 7 years ago
tri4ng1e 3b86f73ae7
Replace MwIniImporter::numberToString with std::to_string 7 years ago
tri4ng1e 9126e844bf
Use data paths from config (bug #4412) 7 years ago
tri4ng1e 103a07b744
Less cryptic abbreviations 7 years ago
tri4ng1e 905cde10db
Smart-sorting in iniimporter (time + dependency) 7 years ago
AnyOldName3 8c74f16247 Restore trailing new lines to shrink PR 7 years ago
AnyOldName3 5ce34f1cbf Move new behaviour into macro to reduce code duplication 7 years ago
AnyOldName3 3c0ec0d6d0 If CMake supports it, sets the debugger working directory for Visual Studio 7 years ago
Bret Curtis c781d1f8ed purge unnecessary imports
add fstream back

add fstream back

add fstream back

add fstream back

add fstream back

add fstream back

add fstream back
8 years ago