142 Commits
Author SHA1 Message Date
Oliver Hamlet 918590e0f4 Rename the GNU license files to use SPDX IDs
The IDs used are those used by libloot. esplugin and libloadorder use GPL-3.0, a.k.a. GPL-3.0-only, but the license text is the same.
2025-05-11 16:09:03 +01:00
Oliver Hamlet 17892f54c4 Fix outdated version numbers 2025-05-11 16:09:02 +01:00
Oliver Hamlet 4b8c58c162 Add a script to automate generating license texts and notices for dependencies
The generated files are committed to avoid the risk of the generation
going wrong during a release build and it not getting noticed.
2025-05-11 16:09:02 +01:00
Oliver Hamlet 6df13bddea Fix crate licenses
libloot's C++ implementation is licensed under the GPL v3.0 or later, not v3.0 only, so carry the same into the Rust reimplementation and its dependent crates.
2025-05-11 16:08:51 +01:00
Oliver Hamlet a64256f372 Remove existing dependency copyright licenses
Most of them no longer apply, and I've got to come up with a different way of handling all the cargo dependencies.
2025-05-10 19:35:59 +01:00
Oliver Hamlet 98fdb130a6 Update the root and C++ readmes 2025-05-08 19:27:13 +01:00
Oliver Hamlet 7b870488c4 Copy docs from C++ libloot 2025-05-08 19:27:13 +01:00
Oliver Hamlet a4ff2ba4bb Fix some indentation in tests.cmake 2025-05-08 19:27:13 +01:00
Oliver Hamlet 0947b23f2b Fix missing CTest discovery of internals tests 2025-05-08 19:27:13 +01:00
Oliver Hamlet 4fbc075c71 Refactor conversion from Rust strings to C++ paths 2025-05-08 19:27:12 +01:00
Oliver Hamlet 299782705a Replace C++ internals tests
They didn't add any value. The new tests are taken from C++ libloot and test things that are still relevant for the wrapper.
2025-05-08 16:00:46 +01:00
Oliver Hamlet 531210afac Remove some outdated info from readme 2025-05-05 11:54:58 +01:00
Oliver Hamlet 9168e5e91e Remove commented-out include 2025-05-05 11:50:21 +01:00
Oliver Hamlet 43d0904a6b Don't use C++ regex for C++ NameMatches calls
To prevent inconsistencies between the C++ and Rust regex implementations. This does mean a boxed copy of the PluginMetadata object is made for each call, but fortunately LOOT doesn't actually make any calls to NameMatches().
2025-05-05 11:47:28 +01:00
Oliver Hamlet 1317eea055 Use Rust Filename comparisons for C++ Filename operators
To prevent inconsistencies between implementations. This means allocating new boxed Filenames for each comparison, but an extra string copy is avoided by making the C++ operators friends of the C++ class (which is ABI-safe).
2025-05-05 11:45:50 +01:00
Oliver Hamlet eabc7a5d85 Sync with libloot v0.26.1
Aside from adding GameType::oblivionRemastered and its usage, this is almost entirely about moving C++ files and tests around.
2025-05-02 17:56:49 +01:00
Oliver Hamlet 83d9420422 Rename cxx directory to cpp
Also update the crate name and references to it. This helps distinguish the C++ wrapper that's built using CXX from CXX itself.
2025-04-29 17:42:46 +01:00