dependabot[bot]
9a3b1f97a6
Bump actions/upload-artifact from 6 to 7
...
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact ) from 6 to 7.
- [Release notes](https://github.com/actions/upload-artifact/releases )
- [Commits](https://github.com/actions/upload-artifact/compare/v6...v7 )
---
updated-dependencies:
- dependency-name: actions/upload-artifact
dependency-version: '7'
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
2 weeks ago
dependabot[bot]
d510000029
Bump actions/cache from 4 to 5
...
Bumps [actions/cache](https://github.com/actions/cache ) from 4 to 5.
- [Release notes](https://github.com/actions/cache/releases )
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md )
- [Commits](https://github.com/actions/cache/compare/v4...v5 )
---
updated-dependencies:
- dependency-name: actions/cache
dependency-version: '5'
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
3 months ago
dependabot[bot]
7c47a28852
Bump actions/upload-artifact from 5 to 6
...
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact ) from 5 to 6.
- [Release notes](https://github.com/actions/upload-artifact/releases )
- [Commits](https://github.com/actions/upload-artifact/compare/v5...v6 )
---
updated-dependencies:
- dependency-name: actions/upload-artifact
dependency-version: '6'
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
3 months ago
dependabot[bot]
03f87bb0bc
Bump actions/checkout from 5 to 6
...
Bumps [actions/checkout](https://github.com/actions/checkout ) from 5 to 6.
- [Release notes](https://github.com/actions/checkout/releases )
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md )
- [Commits](https://github.com/actions/checkout/compare/v5...v6 )
---
updated-dependencies:
- dependency-name: actions/checkout
dependency-version: '6'
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
4 months ago
dependabot[bot]
0baa07490f
Bump actions/upload-artifact from 4 to 5
...
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact ) from 4 to 5.
- [Release notes](https://github.com/actions/upload-artifact/releases )
- [Commits](https://github.com/actions/upload-artifact/compare/v4...v5 )
---
updated-dependencies:
- dependency-name: actions/upload-artifact
dependency-version: '5'
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
5 months ago
dependabot[bot]
5ee16cf030
Bump actions/checkout from 4 to 5
...
Bumps [actions/checkout](https://github.com/actions/checkout ) from 4 to 5.
- [Release notes](https://github.com/actions/checkout/releases )
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md )
- [Commits](https://github.com/actions/checkout/compare/v4...v5 )
---
updated-dependencies:
- dependency-name: actions/checkout
dependency-version: '5'
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
7 months ago
Gleb Mazovetskiy
791fea477f
Bump CI to Ubuntu 22.04 and minimum CMake to 3.22
...
Ubuntu 20.04 is going EOL in May.
Ubuntu 22.04 CMake is 3.22.
Debian stable CMake is 3.25.
Debian oldstable (EOL in 2026) has CMake 3.25 in bullseye-backports.
1 year ago
staphen
420b569d49
Update cache version of Linux CI build scripts
1 year ago
Gleb Mazovetskiy
b8ab6d2faa
Migrate from SimpleIni to our own implementation
...
Our implementation has a more modern interface and only
supports the features that we care about.
It always outputs `\n` as newlines and does not output BOM.
The modern interface eliminates awkward `c_str()/data()` conversions.
This implementation preserves comments and the file order of sections
and keys. New keys are written in insertion order.
We now also support modifying and adding default comments,
which may be a useful thing to do for the especially tricky
ini options (this PR doesn't add any but adds the ability to do so).
Sadly, this increases the RG99 binary size by 24 KiB.
I'm guessing this is because the map implementation generates
quite a bit of code.
Note that while it might seem that using `std::string` for every key and
value would do a lot of allocations, most of these strings are
small and thus benefit from Small String Optimization (= no allocations).
1 year ago
Anders Jenbo
322c627f56
Statically link BZIP2 on Linux releases to address issue with Fedora ( #6939 )
2 years ago
Anders Jenbo
08bfb65f01
Statically link libsoidum Linux_x86_64.yml ( #6938 )
2 years ago
dependabot[bot]
d24bfccda6
Bump actions/cache from 3 to 4
...
Bumps [actions/cache](https://github.com/actions/cache ) from 3 to 4.
- [Release notes](https://github.com/actions/cache/releases )
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md )
- [Commits](https://github.com/actions/cache/compare/v3...v4 )
---
updated-dependencies:
- dependency-name: actions/cache
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
2 years ago
dependabot[bot]
6648f080ba
Bump actions/upload-artifact from 3 to 4
...
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact ) from 3 to 4.
- [Release notes](https://github.com/actions/upload-artifact/releases )
- [Commits](https://github.com/actions/upload-artifact/compare/v3...v4 )
---
updated-dependencies:
- dependency-name: actions/upload-artifact
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
2 years ago
dependabot[bot]
6c51496c61
Bump actions/checkout from 3 to 4
...
Bumps [actions/checkout](https://github.com/actions/checkout ) from 3 to 4.
- [Release notes](https://github.com/actions/checkout/releases )
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md )
- [Commits](https://github.com/actions/checkout/compare/v3...v4 )
---
updated-dependencies:
- dependency-name: actions/checkout
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
3 years ago
Gleb Mazovetskiy
49c5aea845
.github/workflows: Ignore changes in docs/ for CI
3 years ago
Gleb Mazovetskiy
9701101634
Switch to C++20
...
glibc compatibility remains the same.
We now use Clang 18 and static libc++ for the Aarch64 build.
Linux x86 and x86_64 builds now use GCC 13.
3 years ago
Gleb Mazovetskiy
b90ae7890a
Automate macOS x86_64 release
...
Also cleans up CPack files in other workflows after building (to avoid saving them to cache)
3 years ago
Gleb Mazovetskiy
8896a34a13
Overhaul version handling
...
Stop using git for the version tag.
The new process is as follows:
1. The `VERSION` file contains the version.
For release, it should contain "1.5.0".
Immediately after the release, it should be changed to "1.6.0-dev".
2. The build type is included in the version string unless it is
"Release". The commit hash is now included into the version string
whenever the `VERSION` file has a suffix (i.e. 1.5.0-dev rather than
just 1.5.0). The full version string for development builds now
looks like this: `1.5.0-dev-Debug-b102dccf8`.
This means we longer need git or `-DVERSION_NUM` to get a sensible version number.
The in-development versions are now always clearly indicated with the
`-dev` suffix no matter how DevilutionX was built.
3 years ago
Gleb Mazovetskiy
ae99697cfc
GitHub actions: Automate i386-linux-gnu release
...
Also updates aarch64 to be basically the same as the i386 one.
3 years ago
dependabot[bot]
9c771bf991
Bump actions/upload-artifact from 2 to 3
...
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact ) from 2 to 3.
- [Release notes](https://github.com/actions/upload-artifact/releases )
- [Commits](https://github.com/actions/upload-artifact/compare/v2...v3 )
---
updated-dependencies:
- dependency-name: actions/upload-artifact
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
3 years ago
dependabot[bot]
4c0ae89cfe
Bump actions/checkout from 2 to 3
...
Bumps [actions/checkout](https://github.com/actions/checkout ) from 2 to 3.
- [Release notes](https://github.com/actions/checkout/releases )
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md )
- [Commits](https://github.com/actions/checkout/compare/v2...v3 )
---
updated-dependencies:
- dependency-name: actions/checkout
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
3 years ago
Gleb Mazovetskiy
4d4c296bce
GitHub CI: Fix cache strategy
...
GitHub caches are immutable, so #5883 was wrong (caches were never
updated).
Goes back to the previous caching strategy but with a cleanup workflow
to delete caches for merged/closed PRs.
The cleanup code comes from the example in GitHub docs:
https://docs.github.com/en/actions/using-workflows/caching-dependencies-to-speed-up-workflows#force-deleting-cache-entries
3 years ago
Gleb Mazovetskiy
9a1056bd0c
GitHub CI: Remove git SHA from cache key
...
We're hitting the GitHub cache limit because we create a new cache for
every commit.
Reuse the same cache instead.
3 years ago
DakkJaniels
95c20c7ce9
ignore build workflows if only change is markdown
3 years ago
Gleb Mazovetskiy
83343a2d7e
Update Linux builds to more recent OS versions
3 years ago
Anders Jenbo
367223bb22
Cancel previous builds when PR is updated
3 years ago
Gleb Mazovetskiy
1791e1f71c
Replace AppVeyor with GitHub Actions
4 years ago
Gleb Mazovetskiy
ecf4efdf67
CMAKE_CXX_STANDARD: 17 -> 20
...
This allows us to use heterogenous `unordered_map` where available.
4 years ago
Gleb Mazovetskiy
d291159c66
Update libfmt from upstream
4 years ago
Oleksandr Kalko
d112f7155a
Use apt-get instead of apt in CI
4 years ago
staphen
9b32c8d541
Update libzt to the latest version
4 years ago
Gleb Mazovetskiy
076b0c0c05
Overhaul tests
...
1. Adds a `libdevilution_so` target when tests are enabled.
2. Each test file is now a separate binary target linked against `libdevilutionx_so` (can now run tests in parallel).
3. Tests are now defined in a separate `test/CMakeLists.txt` file.
4. Building the tests is now controlled by the standard `BUILD_TESTING` option (defined by CTest).
5. Tests are now built by default.
6. On CI, test errors are now reported.
Also:
* `.clang-format`: Enable SortIncludes in tests
* `path_test.cpp`: Fix -Wsign-compare
4 years ago
staphen
66beceba59
Remove NIGHTLY_BUILD and BINARY_RELEASE options
4 years ago
Gleb Mazovetskiy
4848632db2
CMake: Organize files
...
1. Platform and toolchain files are now all under `platforms/`, with a
single `CMake/platforms/${platform}.cmake` per platform.
2. Custom functions/macros are under `functions/`.
3. Finder modules are in `/finders`.
4 years ago
Gleb Mazovetskiy
5ccdbe52d4
GitHub workflow fixes
...
1. Adds act support. https://github.com/nektos/act
2. Fixes OpenDingux workflows
OpenDingux workflows tested with act:
act -W .github/workflows/retrofw_release.yml -j retrofw
4 years ago
Gleb Mazovetskiy
3d308983a8
Migrate to libmpq
...
libmpq is a much simpler alternative to StormLib for reading MPQ archives.
We use our own fork of libmpq: https://github.com/diasurgical/libmpq
Impact:
* DevilutionX is now a lot more portable. Unlike StormLib, libmpq only
needs platform-specific code for Windows.
* Locks around file access **removed** (instead we duplicate the file descriptor for streamed audio only).
* RAM usage is **300 KiB** lower than StormLib.
* Stripped release linux_x86_64 binary is **32 KiB** smaller.
* Amiga build now hangs instead of crashing.
4 years ago
frrsth
11dae845a9
remove ttf references
4 years ago
frrsth
779c17a688
remove ttf references
4 years ago
Anders Jenbo
6321ddb721
Generate devilutionx.mpq
5 years ago
staphen
60492ef954
Add proper graphics for gamepad
5 years ago
Anders Jenbo
c881e40c11
x86
5 years ago
Anders Jenbo
ceaad03905
Cache GitHub Action build folders
5 years ago
Anders Jenbo
d94dd1d746
Avoid multiple tasks per job
5 years ago
Trihedraf
7586239857
Skip duplicate actions.
5 years ago
Trihedraf
b4cf8a9aeb
update build environment commands
5 years ago
Trihedraf
1bf85a1f37
add Linux_x86, Linux_x86_64, Linux_SDL1 to GH Actions
5 years ago