This change is going to be required when upgrading to Bazel 0.20.0,
because in the checkPhase we're not wrapping the Bazel binary yet to
set some necessary default arguments.
To make updating large attribute sets faster, the update scripts
are now run in parallel.
Please note the following changes in semantics:
- The string passed to updateScript needs to be a path to an executable file.
- The updateScript can also be a list: the tail elements will then be passed
to the head as command line arguments.
Things changed in the Ninja setup-hook:
- Respect installFlags
- Automatically add checkPhase (can be disabled with dontUseNinjaCheck
in the same way as dontUseNinjaBuild and dontUseNinjaInstall). Tests
are only run when "ninja test" exists.
- Error in build phase when build.ninja is missing. We don’t have a
way to fall back to other build methods, so it’s best to be very
clear when we aren’t able to build with ninja
- Set -l flag to 1 when enableParallelBuilding is disabled
Changes added in 4d1fd3775d break
automated updates by moving to a custom version scheme.
This switches back to upstream versioning, while maintaining version
schema convention of `builtins.parseDrvName`.
See issue #43717
xboxdrv doesn’t use scons for installing, but instead using a
makefile! Everything else is in scons so we have to keep that. I’ve
added a dontUseSconsInstall flag to the scons setup-hook to skip the
automatic overwrite of default “make install” call.
The scons build system is python-based and has a binary named scons. Unlike CMake, it cannot generate makefiles so we end up having to override the build, install, and check phases. I have added the setupHook to the scons package so that integration requires no unique steps - just putting scons in nativeBuildInputs should be enough. sconsFlags controls the flags specifically passed to scons while buildFlags, installFlags, and checkFlags should still be usable. Some packages use different names for the prefix flag. In those cases you will have to set "prefixKey" to something like "PREFIX=" as there are multiple names for the "prefix" used in scons.