802dcb4b4c
RELEASE 3.1.1: - Remove obsoleted references to DeciderNeedsNode which could cause crash when using --debug=explain - Add Fix and test for crash in 3.1.0 when using Decider('MD5-timestamp') and --debug=explain - Added -fmerge-all-constants to flags that get included in both CCFLAGS and LINKFLAGS. - Fix issue 3415 - Update remaining usages of EnvironmentError to SConsEnvironmentError this patch fixes issues introduced in 3.1.0 where any of the following would cause SCons to error and exit: - CacheDir not write-able - JSON encoding errors for CacheDir config - JSON decoding errors for CacheDir config RELEASE 3.1.0: - Code to supply correct version-specifier argument to vswhere for VS version selection. - Enhanced --debug=explain output. Now the separate components of the dependency list are split up as follows: scons: rebuilding `file3' because: the dependency order changed: ->Sources Old:xxx New:zzz Old:yyy New:yyy Old:zzz New:xxx ->Depends ->Implicit Old:/usr/bin/python New:/usr/bin/python - Fix Issue 3350 - SCons Exception EnvironmentError is conflicting with Python's EnvironmentError. - Fix spurious rebuilds on second build for cases where builder has > 1 target and the source file is generated. This was causing the > 1th target to not have it's implicit list cleared when the source file was actually built, leaving an implicit list similar to follows for 2nd and higher target ['/usr/bin/python', 'xxx', 'yyy', 'zzz'] This was getting persisted to SConsign and on rebuild it would be corrected to be similar to this ['zzz', 'yyy', 'xxx', '/usr/bin/python'] Which would trigger a rebuild because the order changed. The fix involved added logic to mark all shared targets as peers and then ensure they're implicit list is all cleared together. - Fix Issue 3349 - SCons Exception EnvironmentError is conflicting with Python's EnvironmentError. Renamed to SConsEnvironmentError - Fix Issue 3350 - mslink failing when too many objects. This is resolved by adding TEMPFILEARGJOIN variable which specifies what character to join all the argements output into the tempfile. The default remains a space when mslink, msvc, or mslib tools are loaded they change the TEMPFILEARGJOIN to be a line separator (\r\n on win32) - Fix performance degradation for MD5-timestamp decider. NOTE: This changes the Decider() function arguments. From: def my_decider(dependency, target, prev_ni): To: def my_decider(dependency, target, prev_ni, repo_node): Where repo_node is the repository (or other) node to use to check if the node is out of date instead of dependency. - Additional fix to issue 3135 - Also handle 'pure' and 'elemental' type bound procedures - Fix issue 3135 - Handle Fortran submodules and type bound procedures - Upgraded and improved Visual Studio solution/project generation code using the MSVSProject builder. - Added support for Visual Studio 2017 and 2019. - Added support for the following per-variant parameters to the builder: - cpppaths: Provides per-variant include paths. - cppdefines: Provides per-variant preprocessor definitions. - Fix handling of Visual Studio Compilers to properly reject any unknown HOST_PLATFORM or TARGET_PLATFORM - Added support for Visual Studio 2019 toolset. - Update cache debug output to include cache hit rate. - No longer unintentionally hide exceptions in Action.py - Allow builders and pseudo-builders to inherit from OverrideEnvironments - Add logic to derive correct version argument to vswhere - Enable LaTeX scanner to find more than one include per line - scons-time takes more care closing files and uses safer mkdtemp to avoid possible races on multi-job runs. - Use importlib to dynamically load tool and platform modules instead of imp module - sconsign: default to .sconsign.dblite if no filename is specified. Be more informative in case of unsupported pickle protocol (py2 only). - Fix issue 3336 - on Windows, paths were being added to PATH even if tools were not found in those paths. - More fixes for newer Java versions (since 9): handle new jdk directory naming (jdk-X.Y instead of jdkX.Y) on Windows; handle two-digit major version. Docstrings improved. - Fixups for pylint: exception types, redefined functions, globals, etc. Some old code removed to resolve issues (hashlib is always present on modern Pythons; no longer need the code for 2.5-and-earlier optparse). cmp is not a builtin function in Py3, drop one (unused) use; replace one. Fix another instance of renaming to SConsEnvironmentError. Trailing whitespace. Consistently use not is/in (if not x is y -> if x is not y). - Add a PY3-only function for setting up the cachedir that should be less prone to races. Add a hack to the PY2 version (from Issue 3351) to be less prone to a race in the check for old-style cache. - Fix coding error in docbook tool only exercised when using python lxml - Recognize two additional GNU compiler header directory options in ParseFlags: -iquote and -idirafter. - Fix more re patterns that contain \ but not specified as raw strings (affects scanners for D, LaTeX, swig) |
||
---|---|---|
.. | ||
patches | ||
buildlink3.mk | ||
DESCR | ||
distinfo | ||
Makefile | ||
PLIST |