63 Commits

Author SHA1 Message Date
87541d5789 modify Makefile to be more in-line with the GNU standard.
Mainly so the makefile is a bit less esoteric to use, debugging flags
must be specified manually.

changed:
- `$RM` for calling `rm`
- removed unused `$ISWIN`
- renamed `test` to `check`
- added `install` and `install-strip` recipes, which for now remain
empty
- added `-g` to `$CFLAGS`, since it helps debugging, and in case of
failures makes bug report less of a headache.

I decided to not modify it further so "specialised tools" don't need to
store files in the git repo, which seemed to complicate logic.
This is the same reason to why I chose to not adapt clean in a way to
introduce `mostlyclean`.
2025-10-20 15:19:24 +02:00
e623a352d2 fix: windows cache is not caching correctly. 2025-09-17 13:59:03 +02:00
66e3d0d06f revert previous, since the compilation has concluded 2025-09-17 12:55:33 +02:00
adfca88d3c push compilation of libraries on everything to get rid of turtle compilation speeds 2025-09-17 12:51:20 +02:00
e9c922d3cd revert forced usage of bash, instead opt for (more) explicit compiler selection. 2025-09-17 12:39:21 +02:00
2261209d8d win: increase cores, to hopefully not spend 20min on compilation. 2025-09-17 12:13:34 +02:00
a16f454396 drop macosx support; the fix introduced a new bug
We're now running into dynamic linker problems, so we shall disable
macosx support for now.
2025-09-17 11:32:40 +02:00
945a82e5f6 test-fix: windows compilation 2025-09-17 11:32:40 +02:00
88d39150dd test-fix: macosx compilation 2025-09-17 11:32:40 +02:00
b13739c782 do not bother with recompiling the libraries, if we got a cache hit. 2025-09-15 12:57:35 +02:00
5db42a2b15 disable windows from the CI.
yeah, fuck you too.
Windows has been... quite the pain to deal with, and I've reached the
limit of what I can be arsed to do to try and make it work.
2025-09-15 12:43:52 +02:00
2277b8ec77 use a more accurate hash for caching submodule objects. 2025-09-15 12:41:52 +02:00
fa26a3561d disable macosx for the time being, it is non-functional and I can't/won't test it anyway. 2025-09-15 12:34:30 +02:00
6c184a4d36 re-enable windows, and see what happens. 2025-09-15 12:17:37 +02:00
5f3bd40a47 potato time.
this is quite upsetting.
2025-09-15 12:04:41 +02:00
f20171c0d7 fix: using the linker for generating a .o file is a feature for only GNU ld.
Now utilising a process to generate a .c file using `xxd`, and compiling
those to object files.
2025-09-15 11:59:39 +02:00
ec36d8c475 add runner architecture to the action cache 2025-09-15 11:59:39 +02:00
0f6a2579b9 forcibly recompile the libs, so if deps get updated, this will be carried through.
This sacrifices a bit of workflow performance, but won't be too
significant. The heaviest step (cmake) is still circumvented
2025-09-15 11:14:40 +02:00
1ac4592503 Aparrently, the act docker container does not have cmake installed.
Adding this should not make a significant impact on workflow
performance.
2025-09-15 09:35:59 +02:00
4da02373a5 disable fail fast, so feedback is provided for all matrix combinations 2025-09-15 09:25:18 +02:00
c724ff0449 remove explicit definition for repository, since it messes with act
`act` allows to debug github workflows before sending them to the
server, allowing to test some behaviour, before pushing.
2025-09-15 09:20:07 +02:00
1169ca98b1 use threaded makefile for more efficiency. 2025-09-13 21:11:58 +02:00
8a1ed6e3c4 attempt without including windows 2025-09-13 21:04:29 +02:00
a7678c874c write a CI workflow for multiple OSes, that compile and test the code using the makefile. 2025-09-13 20:57:54 +02:00
545eecca37 remove CI, because I cannot be bothered.
I am not going to work on the continuous integration workflow for now.
It keeps failing and I just do not care about it right now.
2025-08-25 09:32:31 +02:00
999180cd74 drop windows support
I am done, I could not take it anymore.
Windows cross-compilation was driving me mad, I'll figure something else
out... probably. I just can't deal with this anymore right now.
It will be added back but I am so fucking tired of messing about with
vcpkg and all that crap.
2025-08-18 13:47:54 +02:00
08a8e261f0 remove usage of cross compilation because it's borked. (thanks microsoft!!) 2025-08-13 16:18:50 +02:00
c1471e92bd remove release.yaml, since it's out of date and will be replaced when/if I get to it. 2025-08-13 16:18:50 +02:00
ee27935aab add vcpkg.json, and modify ci.yaml to improve usage vcpkg
Now we utilise storing dependencies in `vcpkg.json`, we can use this to
more easily install the dependencies.
Furthermore, we moved cloning vcpkg to `checkout`, which creates clones
with `--depth=1` by default.
2025-08-13 16:00:51 +02:00
7ef32c06ea add libarchive to the dependencies.
library for handling archives, like gzip, xz, zstd, et cetera.
This'll be crucial later on.
2025-08-10 23:24:55 +02:00
1ea37b6e86 fix: there is no need to let the compilation continue if it fails.
it actually makes it less easy to locate errors.
2025-07-24 16:29:03 +02:00
6997e08b05 add copyright information and code cleanup 2025-06-15 14:29:28 +02:00
efcc02248f fix: github actions having too much trouble executing wine 2025-06-15 14:16:43 +02:00
846cf467a3 utilise the quick compilation using default flags in the workflow 2025-06-15 13:57:52 +02:00
c134963773 add windows testing 2025-06-15 13:57:52 +02:00
Quinn
1679349098 allow the workflow to continue on some errors, since they're non-fatal
Signed-off-by: Quinn <99677023+thepigeongenerator@users.noreply.github.com>
2025-06-15 13:57:52 +02:00
e6ffe785cd merge all seperate jobs into a single job, since this is more efficient. 2025-06-12 11:16:21 +02:00
09ee136177 tmpfix: revert change for using APT instead of the docker container, as it doesn't work yet.
I first need to figure out why vcpkg cannot find the GLFW package.
2025-06-11 17:59:08 +02:00
64f3ee457b set workflow vcpkg path to be within ${{github.workspace}} 2025-06-11 17:56:22 +02:00
83f929911e reorder arguments in CI workflow
it's more logical to have the DEBUG arument at the end, to be on-par
with `compile` job
2025-06-11 17:56:22 +02:00
c77f711982 remove dependency on custom docker container, since it seems to be rather slow
I hope to speed things up by using the native ubuntu-latest, but it
might be just as slow, if not slower. In which case I'll likely switch
back.
If it is faster, the dockerfile will be deleted in a subsequent commit.
2025-06-11 17:56:22 +02:00
18bb82fa11 improve vcpkg generation / caching 2025-06-09 23:20:50 +02:00
28a96a2cf6 compiling from scratch is faster than dealing with artifacts 2025-06-06 19:30:46 +02:00
de2e8a7ed8 store vcpkg in cache to reduce runtime performance hit 2025-06-06 19:24:25 +02:00
eb03b30a0d make container selection more consise 2025-06-02 12:41:01 +02:00
38afc94d4f optimise CI pipeline by removing vcpkg building from the dockerfile. 2025-06-02 12:41:01 +02:00
84a966b775 merge CI pipelines again, since the new thing didn't work well with artifacts. 2025-06-02 12:41:01 +02:00
54468cbad3 update CI to use the newer makefile system 2025-06-02 12:41:01 +02:00
Quinn
68ad3e3109 implement automated testing CI pipeline 2025-06-02 12:41:01 +02:00
Quinn
8b410a492a rename validate to ci/bin, and split up workflows
This is mainly to improve the clairity of the workflows, also allowing
them to be used for the different "badges", showing the state of each.
2025-06-02 12:41:00 +02:00