I just merged PR, which brings REQUIRED_PACKAGES feature from userland-gate. This allows specifying and installing build time dependencies. It introduces following targets:
gmake REQUIRED_PACKAGES – this target will modify component Makefile, so it contains autogenerated REQUIRED_PACKAGES. REQUIRED_PACKAGES is not 100% and manual check has to be done in some cases. I was trying to compile openvpn, but didn’t have tun.h from driver/network/header-tun, so I had to add it manually, e.g.:
REQUIRED_PACKAGES += driver/network/header-tun
gmake component-environment-check – this target will output information about the workspace and check if required dependencies are installed. There is a shorter alias, gmake env-check, for user convenience.
gmake component-environment-prep – this target will install packages specified in REQUIRED_PACKAGES variable. Please, ensure that your user has a privilege to install packages. You should add either “Primary Administrator” or “Software Installation” profile to your account. There is a shorter alias, gmake env-prep, for user convenience.
gmake print-VAR – this is very handy and serves for printing Makefile variables.
If you want to know more about, you should read docs/makefile-targets.txt, which documents all supported Makefile targets.
I’d like to ask that new contributions have REQUIRED_PACKAGES added as I plan to develop other targets for building components in clean environment and rebuilding dependent components.