Build dependencies
Every build of a recipe by boulder will create an entirely new root, with only the absolute minimum support dependencies in place.
In order to build most software, you will need to add to the builddeps key in stone.yml. Luckily, our tooling supports more than
one kind of dep.
Note that AerynOS packages are also capable of storing providers that make the following kinds of dependencies work.
$name - standard deps
Simply listing a name will create a dependency on that package name. This is discouraged as automatically resolved providers offer a far more resilient system.
builddeps: - some-packagebinary() - Standard binaries
Got a hard requirement for an executable in /usr/bin, such as grep ?
builddeps: - binary(grep)sysbinary() - System binaries
Need an executable only found in /usr/sbin ?
builddeps: - sysbinary(mount)pkgconfig() - PkgConfig / pkgconf
Trivially map package names to standard pkgconfig names (.pc files):
builddeps: - pkgconfig(ncurses) - pkgconfig(zlib)pkgconfig32() - 32-bit PkgConf
Much like pkgconfig - specifically designed for .pc files installed to /usr/lib32/pkgconfig in 32-bit builds:
builddeps: - pkgconfig32(x11)cmake() - CMake modules
Work with many C++/CMake builds much more easily by using the CMake module names
builddeps: - cmake(Qt5OpenGL)