Original release failed because during development I implicitly relied on build/ directory to be populated with build scripts. In production this build directory was not populated. This is why I decided call the script to populate this directory on startup of build process with gorgeEx. This failed because it requires traversing to the directory above src which is a problem. Nimble installation works quite differently from copying the whole git repository. Only the src directory is copied to the destination package distribution. This way the build/ directory which was created above src was put into the directory where all Nim packages are.
This is why I moved build directory with mangled raylib sources into src directory and now it is distributed with the package. But it complains on incorrect paths when trying to compile from these sources.
Current solution:
Debug why path resolution fails and fix it
Investigate how to deal with skipFiles directive in .nimble file, it shouldn't exclude vital files but should exclude useless files
Clean up the code because I tried to fix the release with some quick hacks and failed
Improve CI process so it catches this kind of a bug
Divide build directory which is used during development and mangled raylib C sources used to build the library
It is a bit frustrating that nimble develop works so much differently from nimble install. I managed to make it work in development, in CI on 3 major platforms and still produced a broken library build.
Original release failed because during development I implicitly relied on
build/
directory to be populated with build scripts. In production this build directory was not populated. This is why I decided call the script to populate this directory on startup of build process withgorgeEx
. This failed because it requires traversing to the directory abovesrc
which is a problem. Nimble installation works quite differently from copying the whole git repository. Only thesrc
directory is copied to the destination package distribution. This way thebuild/
directory which was created abovesrc
was put into the directory where all Nim packages are.This is why I moved build directory with mangled raylib sources into
src
directory and now it is distributed with the package. But it complains on incorrect paths when trying to compile from these sources.Current solution:
skipFiles
directive in.nimble
file, it shouldn't exclude vital files but should exclude useless filesIt is a bit frustrating that
nimble develop
works so much differently fromnimble install
. I managed to make it work in development, in CI on 3 major platforms and still produced a broken library build.