Zed A. Shaw
440be444ea
|
4 months ago | |
---|---|---|
patches | 4 months ago | |
scripts | 4 months ago | |
tests | 4 months ago | |
.gitignore | 4 months ago | |
.vimrc_proj | 4 months ago | |
LICENSE | 4 months ago | |
README.md | 4 months ago | |
dbc.hpp | 4 months ago | |
efsw.wrap | 4 months ago | |
escape_turings_tarpit.cpp | 4 months ago | |
ftx_thread_test.cpp | 4 months ago | |
ftxtest.cpp | 4 months ago | |
game_engine.cpp | 4 months ago | |
game_engine.hpp | 4 months ago | |
libgit2.wrap | 4 months ago | |
meson.build | 4 months ago | |
regtest.cpp | 4 months ago | |
xmake.lua | 4 months ago |
README.md
A game I'm working. It's a weird one.
Right now I've got a command that watches your files for changes, and runs a build command. It's entirely overengineered for this purpose, but it has what I'll need later. To build it do this:
./scripts/reset_build.ps1
meson compile -C builddir
If you get a bad compile because of libgit2's src/util/process.h
then do this:
cp patches/process.h subprojects/libgit2/src/util/
meson compile -C builddir
I don't know why it fails at this, and only on Windows but I've talked to them repeatedly and it's mostly "works for me" responses. I also can't figure out how Meson exactly applies patches. I've generated every possible patch I can and Meson just can't apply them.
Once it's running, we have even more annoying BS to deal with, and that's because Meson doesn't
actually statically compile efsw or libgit2. Even though I said --default-librart=static --prefer-static
in the setup it just ignores that and makes DLLs. The "fix" for this asinine stupidity is this:
meson devenv -C builddir
cd ..
cp builddir/watchgit .
./watchgit . "meson compile -C builddir
Do all that garbage and yay, this little program runs. Finally.
Future Changes
- If I can't figure out why libgit2 has compilation errors in
src/util/process.h
then I may just rip it out and just shell out togit
directly. - Ultimately I can jsut use efsw to watch the directory for all changes, but I wanted to only focus on what's in git. Oh well.
- I also have to find out why efsw and libgit2 refuse to compile statically. Once I do that I can static compile
watchgit
and then work on the next part of the game.