162 Commits
Author SHA1 Message Date
Oliver Hamlet 84c0cca534 Implement support for OpenMW
Most of the complexity is handled by libloadorder, but it's worth noting that:

- The game path is OpenMW's install path, not Morrowind's
- OpenMW doesn't force master-flagged plugins to load before others
- OpenMW doesn't provide a way to record the load order of inactive plugins
- .omwgame and .omwaddon plugins are equivalent to .esm and .esp respectively, while .omwscripts plugins have a completely different format with none of the metadata that libloot uses.
- OpenMW effectively relies on additional data paths to load Morrowind's (and mods') files, and the last directory listed that contains a given filename is used to load a file with that filename, with the main data path effectively being the first listed.
- I've disabled support for ghosted plugins for OpenMW because it makes the multi-path stuff more confusing and may not provide any benefit.
2025-02-01 21:36:03 +00:00
Oliver Hamlet 553a189b9a Replace mention of BOOST_ROOT 2025-01-26 16:16:02 +00:00
Oliver Hamlet f91ec79284 Mention Starfield in the readme 2024-10-05 16:49:31 +01:00
Oliver Hamlet 7fcdacbe0c Install docs dependencies in a virtual env 2024-08-09 19:14:52 +01:00
Oliver Hamlet c652fcafe1 Add config option to skip installing docs
To save having to install and run Sphinx if you don't need the docs.
2024-04-28 15:18:02 +01:00
Oliver Hamlet e70d0baf5f Add URL variables for Rust dependencies 2024-04-28 15:17:28 +01:00
Oliver Hamlet 9c17322340 Make the CMake config for tests optional
Managed using the new LIBLOOT_BUILD_TESTS config option, which defaults to ON.

Also manage the Google Test and testing-plugins dependencies using FetchContent, as it integrates more neatly with FindPackage.

This means that if you're not interested in the tests, you don't need to build them or download and build Google Test or download the testing plugins.
2024-04-28 15:17:12 +01:00
Oliver Hamlet e5f4bf041f Update Sphinx to fix build failures
One of Sphinx's default extensions now requires a newer version of Sphinx than what was used.
2024-04-25 08:27:28 +01:00
Oliver Hamlet e7a554ede1 Stop uploading snapshots to artifactory
JFrog will deactivate the free account that LOOT's Artifactory is owned
by on 2023-07-02, at which point it'll no longer be possible to upload
artifacts there.
2023-06-05 18:00:22 +01:00
Oliver Hamlet 2df6ae43f6 Update instructions on how to build the docs 2022-02-23 16:46:06 +00:00
Oliver Hamlet d28c036fd5 Add ability to run clang-tidy during the build
This does nothing when using MSVC, but does work on the Makefile-based
Linux builds.

This isn't enabled by default because it makes builds take 2-3x as long.

This includes some C++ Core Guidelines checks that don't produce any
warnings. There are a few clang warnings emitted though.
2022-02-07 00:15:57 +00:00
Oliver Hamlet bd242e847b Update how to build docs
Fix requirements.txt path and add how to build using Docker.
2022-02-06 18:31:43 +00:00
Oliver Hamlet 4dd1b44650 Remove the MSVC_STATIC_RUNTIME build option
It is never changed from its default, so there's no point having it.
2021-11-20 02:32:40 +00:00
Oliver Hamlet 52302245e7 Remove references to Bintray
JFrog are shutting it down tomorrow.
2021-04-30 21:59:42 +01:00
Oliver Hamlet 17b037af57 Migrate Linux CI to GitHub Actions
This is in preparation for publishing build artifacts to GitHub Actions,
as Bintray will shut down in May.
2021-02-06 14:58:56 +00:00
Oliver Hamlet 5c2dd2167d Migrate Windows CI to GitHub Actions
AppVeyor is breaking my builds because I can't create any more artifacts
because I've hit the limit, but there's no way to have it not store
artifacts or to manually delete artifacts...

This also updates Boost from 1.67.0 to 1.69.0 due to differences between
the AppVeyor and GitHub Actions build environments.
2020-08-14 23:39:59 +01:00
Oliver Hamlet 52be94bb57 Get rid of the dev branch
Its existence hasn't added anything in several years, and I keep
forgetting to merge it into master after releases.
2019-06-16 11:45:33 +01:00
Oliver Hamlet 80d9f8be43 Add support for Morrowind
Sorting doesn't work as for other games, because esplugin can't tell if
a plugin contains override records, so returns 0 for their count, so no
overlap edges get added.
2019-04-24 21:35:17 +01:00
Oliver Hamlet 0f2e36ce26 Update Linux build instructions
Travis CI have migrated away from running builds in Docker containers,
and no longer link to their old Docker image, so describe the
prerequisites and assumptions as accurately as possible.
2019-02-11 21:48:50 +00:00
Oliver Hamlet 9ead05bf1f Update repository links to account for loot-api -> libloot rename 2018-12-08 21:39:53 +00:00
Oliver Hamlet 5bb20daa82 Rename "LOOT API" to "libloot"
To avoid confusion when talking about the library vs. its API. The GitHub
repository has not yet been renamed, so all references to it are
unchanged.
2018-11-17 18:43:07 +00:00
Oliver Hamlet 5dceba1788 Rename WrinklyNinja to Ortham in GitHub links
Also fix the AppVeyor CI link.
2018-11-07 17:07:55 +00:00
Oliver HamletandGitHub 843a55b1d2 Update Bintray link in readme 2018-08-06 19:59:46 +01:00
Oliver Hamlet ec946b5d0f Update version number and changelog for 0.12.4 2018-02-17 11:15:40 +00:00
Oliver Hamlet cf67649049 Remove all GUI files and references to the GUI
As the NodeJS dependency no longer exists, the archive script has
been replaced with a CPack implementation, and the
set_version_number script turned into a Python script.
2017-02-10 23:11:13 +00:00