Commit Graph

271 Commits (master)

Author SHA1 Message Date
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 5c3ae3d94c
Make loading and saving script record more robust
* Check the header presence before using it.
* Write the header based on the actual content.
6 months ago
Dave Corley 659874cb65 FEAT: Update land flag representation in ESMTool 7 months ago
elsid 044748725c
Add unit tests for saving and loading ESM3 Land 7 months ago
Evil Eye a4625ea784 Deduplicate dialogue filter parsing 9 months ago
psi29a e8038d353f Merge branch 'esmstuff' into 'master'
Use more decomposition, string_view, and implicit sizes in ESM code

See merge request OpenMW/openmw!3975
9 months ago
Mads Buvik Sandvei 320d8ef014 Spellcast related Lua API + spellcasting/activespell refactor 9 months ago
Evil Eye 5a0aed3a78 Use more decomposition, string_view, and implicit sizes in ESM code 9 months ago
psi29a 090e57b27c Merge branch 'esm3structs' into 'master'
Replace fixed size writeHNT calls with decomposition

See merge request OpenMW/openmw!3914
10 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
Evil Eye cef59e8928 Replace fixed size writeHNT calls with decomposition 10 months ago
Evil Eye 958f70736f Implement auto calculated potion values 10 months ago
Dave Corley b2b1c98396 fix(esmtool): Don't try to log a variable that doesn't exist 10 months ago
Evil Eye 75d0b6e355 Use decompose to handle AI packages and data 11 months ago
Andrei Kortunov 2575801ba2 Improve esmtool output 11 months ago
Andrei Kortunov 93e50cc7aa Improve format version in content selector 1 year ago
Evil Eye e63933efa6 Use NAM9 for stack count 1 year ago
Evil Eye 37415b0382 Don't use getExact to read structs 1 year ago
Evil Eye a9e6e63c4e Remove fixed size reads 1 year ago
Andrei Kortunov 6f68df9ac2 Avoid redundant copies 1 year ago
elsid 7a0d1a0868
Print uint8_t as unsigned 1 year ago
Evil Eye 514723a4e6 Use fixed size ints for Region and use an array for weather odds 1 year ago
Evil Eye b99f58613e Remove signed/unsigned conversions in pathgrid loading code and use meaningful member names 1 year ago
Alexei Kotov 8d655054f1 esmtool: Print human-readable ESM4 file format version 1 year ago
Evil Eye b59739a529 Replace more sized reads 1 year ago
Evil Eye e660a9ca16 Assign StringRefIds to attributes 1 year ago
elsid 95a39b3281
Use sized types for land records members 1 year ago
psi29a 16628a766f Merge branch 'fallout4' into 'master'
ESM4 Loader: initial Fallout 4 support

See merge request OpenMW/openmw!3347
1 year ago
elsid 0d4833febb
Fix esmtool dump format 1 year ago
Alexei Kotov 9ec68e864c Load ESM4 idle animations correctly for every game 1 year ago
Petr Mikheev 5d54ca6fdb Refactor components/esm4 1 year ago
elsid 798f3cc385
Support ESM4 record FullName, CellFlags, X, Y fields by esmtool 1 year ago
psi29a 9410eed9e5 Merge branch 'bump-cmake-version' into 'master'
Bump required CMake version to 3.16

See merge request OpenMW/openmw!3242
1 year ago
psi29a 03dbe1c9f3 Merge branch 'stringrefidskills' into 'master'
Assign StringRefIds to skills

See merge request OpenMW/openmw!3146
1 year ago
AnyOldName3 34fcfb63cf Eliminate redundant version checks 1 year ago
Alexei Kotov 7e1e43f9c6 Allow GMSTs with empty EDID 1 year ago
Evil Eye ac9378fa08 Replace Skill::mIndex with Skill::refIdToIndex 1 year ago
Evil Eye 73c2387708 Merge schools into skills 2 years ago
Evil Eye bac6777fae Reduce the number of magic numbers 2 years ago
Evil Eye 6b7e7acd16 Replace a number of incorrect index types 2 years ago
Evil Eye a5bb6c7d8d Use std::array in NPDTstruct52 2 years ago
Evil Eye dd83da5eba Use std::array in FADTstruct 2 years ago
Evil Eye 7be005c9a5 Use std::array in CLDTstruct 2 years ago
Evil Eye 8a474b9807 Use std::array in RADTstruct 2 years ago
Evil Eye 9214ffb50b Replace some empty constructors and destructors with default 2 years ago
elsid e537d1d0d4
Ignore missing localization string files by esmtool
Dawnguard.esm from Skyrim depends on files stored in Dawnguard.bsa which is not
processed by esmtool.
2 years ago
elsid 358b7ad3ec
Keep ESM4 localized strings in memory
Size of the files is in order of megabytes at max. Storing offset lookup table
to read from file on demand is less efficient than reading from memory for such
size.

Read and store offsets first. Sort them to read values sequentially. Memoize
last offset and value to avoid reading the same value twice. Use seek only when
current possition does not match offset. Optimize seek for short distance by
calling read instead.
2 years ago
elsid ee3956e4f2
Print FormId as hex by esmtool dump 2 years ago
Evil Eye 8d8207b734 Refactor pathgrid indices to use size_t instead of int 2 years ago
elsid 87ac85223a
Support loading ESM4 GMST records 2 years ago