summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
...
| | * | | | | Fix default value logic for TEMPFILEARGJOINWilliam Deegan2019-04-221-1/+1
| | | | | | |
| | * | | | | Fix Issue #3350 - Update CHANGES.txt and RELEASE.txtWilliam Deegan2019-04-222-1/+6
| | | | | | |
| | * | | | | Merge remote-tracking branch 'origin/fix_3350_mslink_tempfile_join_char' ↵William Deegan2019-04-227-10/+75
| | |\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | into fix_3350_mslink_tempfile_join_char
| | | * | | | | Updated mslink, mslib, msvc, platform docs, and added unit testWilliam Deegan2019-04-227-6/+65
| | | | | | | |
| | | * | | | | PEP 8 fileWilliam Deegan2019-04-221-4/+10
| | | | | | | |
| | * | | | | | Merge branch 'master' of github.com:SCons/scons into ↵William Deegan2019-04-2226-232/+187
| | |\ \ \ \ \ \ | | | |/ / / / / | | |/| | / / / | | | | |/ / / | | | |/| | | fix_3350_mslink_tempfile_join_char
| | | * | | | Fixup some code triggering pylint errors.Mats Wichmann2019-04-2126-232/+187
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Assorted fixups: 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. TODO flagged some instances of doing a raise without argument but not inside a try block - this is not considered legal, since raise with no argument is for re-raising an exception, but I don't know exactly how to resolve this in these cases. Also flagged an instance of raising an int instead of an exception class. We can either leave these as markers or update the PR. Signed-off-by: Mats Wichmann <mats@linux.com>
| | * | | | | Issue #3350 - Add TEMPFILEARGJOINBYTE as a variable to be used to join each ↵William Deegan2019-04-204-1/+15
| | |/ / / / | | | | | | | | | | | | | | | | | | item placed into a TEMPFILE. Previously hardcoded as a bytearray space, now it is overridden by msvc and mslink tools
| | * | | | Issue #3350 - Refactor EnvironmentError to SConsEnvironmentError to avoid ↵William Deegan2019-04-188-17/+21
| | |/ / / | | | | | | | | | | | | | | | overriding python's native EnvironmentError
| * | | | [PR #3337] centralize definition of candidatesMats Wichmann2019-04-162-29/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A list of possible executable names are provided in several places in yacc and lex tools, make it a little cleaner by defining once, at the top. Signed-off-by: Mats Wichmann <mats@linux.com>
| * | | | [PR #3337] clean up lex and yacc toolsMats Wichmann2019-04-132-18/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Remove now unneeded code to save/restore the path, since the routine now does not modify the path. Signed-off-by: Mats Wichmann <mats@linux.com>
| * | | | [#3336] do not add not-found tool pathsMats Wichmann2019-04-133-12/+18
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When tool modules initialize, they check paths to decide if the underlying tool is actually present. The current checker adds any "default paths" the caller may have supplied (locations like mingw, cygwin, chocolatey install locations, etc.); if there is match from this list, any previous default paths are also kept. To avoid keeping these non-matching paths, restore the original PATH; the caller is responsible for adding to PATH if necessary. Docstring now says so. Note lex and yacc tool modules seem to expect the path-modifying behavior that's being gotten rid of - so they preseve the path first and restore it after. The change here won't break those, but makes the extra behavior unneeded - could remove it. Signed-off-by: Mats Wichmann <mats@linux.com>
| * | | Give sconsign a default filename.Mats Wichmann2019-04-052-39/+52
| | |/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | sconsign required filename(s) or directory name(s) to do anything, in their absence it just quits silently. Change so if filename argument omitted, use the same default as scons - .sconsign.dblite. print something in case of bad options. add an extra info line in case the sconsign cannot be read due to pickle protocol (when py2 used in a place where scons previously run with py3) Tweak the manpage a bit. Signed-off-by: Mats Wichmann <mats@linux.com>
* | | Fix sider complainWilliam Deegan2019-04-261-1/+1
| | |
* | | Move target_peers to slots from attributesWilliam Deegan2019-04-022-1/+9
| | |
* | | update changes.txtWilliam Deegan2019-04-021-3/+13
| | |
* | | Merge branch 'master' of github.com:SCons/scons into ↵William Deegan2019-04-0210-36/+31
|\ \ \ | |/ / | | | | | | fix_mongo_bug_33111_multiple_targets_via_emitter_spurious_rebuilds
| * | [PR #3331] resync with PR #3330Mats Wichmann2019-03-301-2/+1
| | | | | | | | | | | | | | | | | | | | | Manually make scons-time.py match master after it evolved independently in a different PR. Signed-off-by: Mats Wichmann <mats@linux.com>
| * | Add changelog for PR #3331Mats Wichmann2019-03-301-0/+2
| | | | | | | | | | | | Signed-off-by: Mats Wichmann <mats@linux.com>
| * | [PY 3.8] tempoary fix: move imp importMats Wichmann2019-03-301-1/+2
| | | | | | | | | | | | Signed-off-by: Mats Wichmann <mats@linux.com>
| * | [PY 3.8] fix some sider complaints in #3331Mats Wichmann2019-03-301-1/+0
| | | | | | | | | | | | | | | | | | One was "real": had failed to indent a with: block Signed-off-by: Mats Wichmann <mats@linux.com>
| * | [PY 3.8] roll back scons-time to use os.popenMats Wichmann2019-03-301-4/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | For PR #3331: the change in src/script/scons-time.py to use subprocess in log_execute caused failures on Windows platform. For now, go back to os.popen, but save the open descriptor so it can be closed (that was the original warning being addressed). Signed-off-by: Mats Wichmann <mats@linux.com>
| * | [WIP] [PY 3.8] fix more warningsMats Wichmann2019-03-308-35/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Several locations with simple usage of deprecated "imp" module changed to use "importlib". These match with work in #3159, but this is not a complete implementation of #3159. More regex patterns are changed to be raw strings. Some strings which did not seem appropriate to change to raw strings (e.g. contain embedded tabs, which Python should honor) had backslashes escaped to avoid accidental Python interpretation. Example: '\t<Import Project="$(VCTargetsPath)\\Microsoft.Cpp.targets" />\n' Python 3.8 was Warning \M was an unknown escape. More open().write(), open().read() style usage changed to use context managers so the file is closed. WIP part: even with Python 3.7, the tests which call sconsign.py fail; oddly they do not fail without the patch to compat.py. sconsign.py does an import using imp module (which is what generates the errors) so needs to be updated anyway. It does not quite fit the "simple usage" pattern - can't do a simple relative import since sconsign is normally located elsewhere in the tree than the main scons code body. With this version of the patch, 700 tests now pass with 3.8, and Warning messages reduced to 2800 (current master has 200 pass, 9000 warns) Signed-off-by: Mats Wichmann <mats@linux.com>
* | | Fix issue #2811 spurious rebuilds due to incorrect waiting_parents on nodes ↵William Deegan2019-04-021-0/+19
|/ / | | | | | | when builder has more than one target and source file generated
* | [PR #333] close files to avoid scons-time racesMats Wichmann2019-03-292-11/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | With runtest now honoring the -j 2 option given to it in CI setup on Windows, there were some problems where scons-time tests could try to remove a test directory while some files in it were still open (these locations were complained about by Python 3.8 also). Switch test framework to using mkdtemp also, and to not use tempfile.template (usage of that and mktemp are long deprecated) Signed-off-by: Mats Wichmann <mats@linux.com>
* | [PR #3330] try to eliminate race in scons-timeMats Wichmann2019-03-291-23/+3
| | | | | | | | | | | | | | | | | | | | runtest change to run requested number of jobs exposed a concurrency problem on Appveyor CI (Windows) builds - which seems to be due to scons-time using mktemp to create a temporary directory name, and then later creating the directory. In scons-time the timing window for this is a bit longer than usual. Try using mkdtemp instead. Signed-off-by: Mats Wichmann <mats@linux.com>
* | Reset to development post merge from release branchWilliam Deegan2019-03-273-33/+70
| |
* | Release file updates for Release 3.0.53.0.5William Deegan2019-03-263-71/+44
| |
* | Updates to CHANGES.txt for Release 3.0.5William Deegan2019-03-261-2/+3
| |
* | Fix Issue #3333 - Find vswhere under 32 bit windows installsWilliam Deegan2019-03-262-7/+16
| |
* | Add bugfix info to CHANGES.txtWilliam Deegan2019-03-181-0/+1
| |
* | Add support for MSSDK V10.0A fixes GH Issue #3329William Deegan2019-03-181-0/+10
| |
* | Merge branch 'master' into scons-symlinkWilliam Deegan2019-03-1243-606/+1063
|\ \
| * \ Merge pull request #3328 from bdbaddog/gh_issue_2799_mingw_respect_comstrWilliam Deegan2019-03-122-31/+34
| |\ \ | | | | | | | | Fix issue #2799 Get mingw tool to respect SHCCCOMSTR, SHLINKCOMSTR and LDMODULECOMSTR
| | * | [skip ci] Add info to CHANGES.txtWilliam Deegan2019-03-121-0/+1
| | | |
| | * | PEP8William Deegan2019-03-111-29/+30
| | | |
| | * | Fix issue #2799 - Get mingw tool to respect SHCCCOMSTR, SHLINKCOMSTR and ↵William Deegan2019-03-111-2/+3
| | | | | | | | | | | | | | | | LDMODULECOMSTR
| * | | Merge branch 'master' into scons-time-fixesWilliam Deegan2019-03-1018-56/+76
| |\ \ \
| | * \ \ Merge pull request #3327 from mwichmann/open-and-regex-cleanupsWilliam Deegan2019-03-1016-52/+70
| | |\ \ \ | | | |/ / | | |/| | Clean up some file opens, regex strings
| | | * | Clean up some file opens, regex stringsMats Wichmann2019-03-0716-52/+70
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Most recent Python (3.8 alpha) spews warnings aplenty about two subjects: unclosed files and strings which look like they have embedded escapes that Python does not recognize. The latter are usually regexes, and it provides a reminder that regular expressions should normally be specified as raw strings, so Python does not attempt to interpret them. Irritating is that even docstrings are flagged, it's not obvious what the right answer is for a docstring which contains, say, a Windows-style path with backslashes. This converts a bunch of opens that are not closed into context manager usage and regex patterns into raw strings. This eliminate about 4000 warnings spewed by Py3.8 (9200 remain). Signed-off-by: Mats Wichmann <mats@linux.com>
| | * | | Add the changelog entryMaciej Kumorek2019-03-071-1/+3
| | | | | | | | | | | | | | | Add the changelog entry about the addition of nologo to RCFLAGS in MSVC tool.
| | * | | Add /nologo flag to RCFLAGSMaciej Kumorek2019-03-071-1/+1
| | |/ /
| | * | [skip ci] reset to develop mode3.0.5a2William Deegan2019-03-052-2/+2
| | |/
| * | [PYPY] [PY 3.8] add context mgr use in scons-timeMats Wichmann2019-03-052-4/+13
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | To fix some test problems for pypy, which seem more prone to problems of lost data if files are written and not explicitly closed, add context managers on file opens in scons-time. Also quiets warnings which are emitted by the much noisier Python 3.8. Changes are to the scons-time script and to the framework. After visual inspection of outputs while debugging, switched the framework's created tools in the scons-time area to use os.linesep instead of explicit '\\n' strings, tools should operate in a native way. Signed-off-by: Mats Wichmann <mats@linux.com>
| * Merge pull request #3317 from ↵William Deegan2019-03-041-7/+51
| |\ | | | | | | | | | | | | bdbaddog/fix_win_md5_decider_malfunction_on_fresh_build MD5-Timestamp was causing build failures on windows only. (Mesa Project affected)
| | * Merge branch 'fix_win_md5_decider_malfunction_on_fresh_build' of ↵William Deegan2019-03-039-31/+159
| | |\ | | | | | | | | | | | | github.com:bdbaddog/scons into fix_win_md5_decider_malfunction_on_fresh_build
| | | * Added logic to shortcut comparing prev_ni if there is no dependency map from ↵William Deegan2019-03-031-4/+24
| | | | | | | | | | | | | | | | previous build. This should speed up md5-timestamp builds for clean builds. Also added debug logic to dump and check aagainst previous implementation at top of FS.PY MD5_TIMESTAMP_DEBUG flag. currently set to False
| | | * On windows first try with native file paths with \\ then swap path to ↵William Deegan2019-03-031-7/+26
| | | | | | | | | | | | | | | | normalized path string with / separators. On a fresh windows build the node string will have windows dirsep and not normalizd. This yielded broken builds for the Meta project'
| | * | Forgot to add current file csig when shortcutting calling changed_content(). ↵William Deegan2019-03-021-0/+5
| | | | | | | | | | | | | | | | Directly calling get_csig() when there is no previous build history
| | * | Added logic to shortcut comparing prev_ni if there is no dependency map from ↵William Deegan2019-03-011-4/+24
| | | | | | | | | | | | | | | | previous build. This should speed up md5-timestamp builds for clean builds. Also added debug logic to dump and check aagainst previous implementation at top of FS.PY MD5_TIMESTAMP_DEBUG flag. currently set to False