This allows users of scons to pick the correct version of python.
Previously we had issues with some build systems not picking the right
python3 version when adding additional python modules to the build
environment. A famous example of this is mongodb where additional python
modules are required to run the scons build.
This is change doesn't introduce rebuilds (to the best of my knowledge)
as it only adds a passthru argument and changes how we pass the python
version around.
Unfortunately the tarball was modified for the official release and
"nix-store -r --check $(nix-instantiate -A scons.src)" did not catch
this (not sure why ATM).
Thanks @pbogdan for noticing this :)
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.
"This release should be used instead of 3.0.1. This release fixes
several issues." - http://scons.org/scons-301-is-available.html
More than 90% of the 346 rebuilds succeed without any problems (I've
tested it against aeff3080d0). As far as I
can tell most of the problematic packages either failed before the
upgrade or for a reason that is unrelated to this SCons update. But it
is possible that this'll cause a few regressions, I'll try to watch out
for build failures on Hydra.
The attribute sconsPackages.scons_3_0_0 is still available in case this
breaks anything.
"SCons release 3.0.0 now available from the download page at
SourceForge. This release should be used instead of 2.5.1. This release
fixes several issues. TThis will be the first release to support Python
versions earlier than 2.7 as well as 3.5+."
"NOTE: This is a major release. You should expect that some targets may
rebuild when upgrading. Significant changes in some python action
signatures. Also switching between PY 2.7 and PY 3.5, 3.6 will cause
rebuilds."
* pkgs: refactor needless quoting of homepage meta attribute
A lot of packages are needlessly quoting the homepage meta attribute
(about 1400, 22%), this commit refactors all of those instances.
* pkgs: Fixing some links that were wrongfully unquoted in the previous
commit
* Fixed some instances
- The flag "--mandir" has no effect with setup.py. Instead, "--install-data"
must be used.
- Don't generate wrappers for trivial symlink aliases in bin.
- Prefer symlinks over hard-links.
- The dependencies of this expression don't need to be propagated.
svn path=/nixpkgs/trunk/; revision=25021